PR/PO Approval LOA (Limit of Authority)

For the release strategy setup based on my company procurement LOA (Limit of Authority), manager are allow to approve purchases up $10,000, Senior Manager up $100,000, CEO > 1 million etc.
This type of LOA should it be apply at Purchase Requisition or Purchase Order release strategy, what are the usual business practise for this LOA in PR or PO?

Hi,Eric
Did you create Characteristics for the LOA(table name:CEBAN,field name:GFWRT).Then add this Characteristics in class and assign the relevant class to release group.
In the release strategy , you could make the decision for release group  base on limit of amout for high level people in your company.
Dick Hua.

Similar Messages

  • AME problem for LOA

    Hi all,
    I create rule for LOA with approval-group chain of authority Action Type, when i test it in the Test Workbench it working fine, but when i create leave for the employee it use the seeded rule SSHR Rule for at most 10 approvers in Supervisor chain, i don't know why?? could please advise??
    please note that i use the following conditions in my rule :
    WORKFLOW_PROCESS_NAME in (HR_LOA_JSP_PRC)
    HR_IS_LEAVE_OF_ABSENCE_SS is True
    and i remove the HR_LOA_JSP_PRC vluse from the seeded condition for the WORKFLOW_PROCESS_NAME
    Regards

    Hi,
    Have you checked to make sure the menu function for Absence Management is using the HR_LOA_JSP_PRC Process? Looking at my local instance (12.1.3) by default it uses HR_GENERIC_APPROVAL_PRC.
    You can also see from the URL.
    i.e.
    OA.jsp?page=/oracle/apps/per/selfservice/absence/webui/AbsenceHomePagePG...&pAMETranType=SSHRMS&pAMEAppId=800&pProcessName=HR_GENERIC_APPROVAL_PRC&pItemType=HRSSA&pCalledFrom=HR_LOA_SS
    Hope that helps.

  • Problem in N-STEP Approval BADI

    Hi ,
    I'am new to Workflows,I need your guidance in finishing
    the Item_level Approval BADI.
    I'am working on N-Step Approval Badi(Item Level Implementation)
    I have pasted the code here.There will be Multiple levels(Max 15 Levels) of Approvals.
    When a new Shopping cart is created this BADI is not working.
    Can you please suggest me, am i missing  something in the code.?.I'am also new to ABAP but i hope i'am managing with it.
    Please Help me out.
    METHOD if_ex_bbp_wfl_approv_badi~get_remaing_approvers .
    Interface parameters:
    OBJECT_ID                  TYPE  CRMT_OBJECT_ID                "Import
    OBJECT_TYPE                TYPE  CRMT_SUBOBJECT_CATEGORY       "Import
    GUID                       TYPE  BBP_GUID_32                   "Import
    ACTUAL_APPROVAL_INDEX      TYPE  SWH_NUMC10                    "Import
    APPROVAL_HISTORY_TABLE     TYPE  BBP_WFL_APPROVAL_HISTORY_BADI "Import
    APPROVAL_TABLE             TYPE  BBPT_WFL_APPROVAL_TABLE_BADI  "Export
    NO_FURTHER_APPROVAL_NEEDED TYPE  BOOLEAN                       "Export
      INCLUDE <swfcntn01>.                  "Workflow
      DATA:
        ls_header                   TYPE bbp_pds_sc_header_d,
        lt_item                     TYPE TABLE OF bbp_pds_sc_item_d,
        ls_item                     TYPE bbp_pds_sc_item_d,
        lt_account                  TYPE TABLE OF bbp_pds_acc,
        ls_account                  TYPE bbp_pds_acc,
        lt_partner                  TYPE TABLE OF bbp_pds_partner,
        ls_partner                  TYPE bbp_pds_partner,
        lc_partner                  TYPE but000-partner,
        lt_result_tab               TYPE TABLE OF swhactor,
        ls_result_tab               TYPE swhactor,
        lc_cost_ctr                 TYPE bbp_pds_acc-cost_ctr,
        lv_co_code                  TYPE bbp_pds_sc_item_d-be_co_code,
        lt_prodcat                  TYPE TABLE OF zmwfprodcat,
        ls_prodcat                  TYPE zmwfprodcat,
    Inserted by Rakesh Palle for Assets DR # D0001055958
        lt_asset                    TYPE TABLE OF zmwfprodcat,
        lt_final                    TYPE TABLE OF zmwfprodcat,
        ls_asset                    TYPE zmwfprodcat,
        ls_final                    TYPE zmwfprodcat,
        lv_asset                    TYPE c,
    End of insertion DR # D0001055958
    Being D0001055958
        lt_order                    TYPE TABLE OF zmwfprodcat,
        ls_order                    TYPE zmwfprodcat,
        lv_order                    TYPE c,
    End D0001055958
        lt_sets                     TYPE TABLE OF zmwf_sets,
        ls_sets                     TYPE zmwf_sets,
        lt_roles                    TYPE TABLE OF str_agr2,
        ls_roles                    TYPE str_agr2,
        lt_users                    TYPE TABLE OF str_agrs,
        ls_users                    TYPE str_agrs,
        lc_persnumber               TYPE usr21-persnumber,
        ls_approver                 TYPE bbp_wfl_approval_table_badi,
        ls_approver_check           TYPE bbp_wfl_approval_table_badi,
        lv_guid                     TYPE crmd_orderadm_h-guid,
        lv_call_value1    TYPE bbp_wfl_app_property,
        ev_app_obj_guid   TYPE bbp_guid_32,
        lc_sobid                    TYPE req_name,
        lc_objid                    TYPE hrp1001-objid,
        lc_objid_s                  type hrp1001-objid,
       lt_appr_def       TYPE TABLE OF bbpt_wfl_lia_def,
       lt_approver       TYPE TABLE OF bbp_wfl_approval_table_badi,
        lc_slapprover               TYPE hrv1222a-low,
        li_limit                    TYPE bbp_limit,
        li_last_level               TYPE zmwfprodcat-appr_level,
        li_stepno                   TYPE i,
        lv_index                    type i,
        lc_stepno(3)                TYPE c,
        lc_first(1)                 TYPE c,
        lc_pass(1)                  TYPE c,
        li_last_setid               LIKE ls_prodcat-setid,
        c_cost_centre      TYPE bbp_wfl_app_criterion  VALUE 'COST_CTR',
        li_stop_amt                 LIKE ls_header-total_value,
        li_set_amt                  LIKE li_stop_amt,
        lt_cost_ctr                 type table of zitem_costctr,
        ls_cost_ctr                 type zitem_costctr,
       ls_approval_item  TYPE bbps_wfl_item_approval,
       lt_approval_items TYPE TABLE OF bbps_wfl_item_approval.
    Business objects type (local constants)
      CONSTANTS:
        c_shop          TYPE crmt_subobject_category VALUE 'BUS2121',
        c_aprover_value TYPE zmwf_setty VALUE 'AV',
        c_comp_value    TYPE zmwf_setty VALUE 'CD',
    **// Begin D0001055958
        c_ac_value      TYPE zmwf_setty VALUE 'AC',
        c_ad_value      TYPE zmwf_setty VALUE 'AD',
        c_oc_value      TYPE zmwf_setty VALUE 'OC',
        c_od_value      TYPE zmwf_setty VALUE 'OD',
    **// End D0001055958
        c_yes(1)        TYPE c VALUE 'X',
        c_no(1)         TYPE c VALUE ' ',
        c_requisitioner TYPE bbp_pds_partner-partner_fct VALUE '00000016'.
    **********begin of change D0001034557
      TYPES : BEGIN OF ty_swhactor,
                otype TYPE otype,
                objid TYPE actorid,
              END OF ty_swhactor.
      DATA : lt_user TYPE TABLE OF ty_swhactor,
             ls_user TYPE ty_swhactor,
             v_guid TYPE BBP_GUID_32.
    ***********end of change D0001034557
    ***********begin of change D0001043944
      DATA : lt_prodcat2  TYPE TABLE OF zmwfprodcat,
             new_approval_table TYPE BBPT_WFL_APPROVAL_TABLE_BADI,
             wa_new_approval_table TYPE BBP_WFL_APPROVAL_TABLE_BADI.
    ***********end of change D0001043944
    *****Change by suresh D0001110145
      data ws_set type zmwf_sets.
      data cd_flag.
    *****End of change by suresh D0001110145
      DEFINE set_approval_level.
        if lc_first = 'X' or
           ls_prodcat-appr_level gt li_last_level or
           ls_prodcat-setid ne li_last_setid.                  "D0001055958
          add 1 to li_stepno.
          clear lc_first.
        endif.
        ls_approver-approval_index = li_stepno.
      END-OF-DEFINITION.
      DEFINE set_approval_level_2.
        if lc_first = 'X' or
           ls_asset-appr_level gt li_last_level.
          add 1 to li_stepno.
          clear lc_first.
        endif.
        ls_approver-approval_index = li_stepno.
      END-OF-DEFINITION.
      DEFINE set_approval_description.
        write li_stepno to lc_stepno left-justified.
        concatenate 'Approval step #'
                    lc_stepno
                    into ls_approver-approval_description.
      END-OF-DEFINITION.
      CLEAR: lt_prodcat[], ls_approver.
      CLEAR: li_stepno.
      break-point.
    map input data to local data
    map char32 to raw16
      MOVE guid TO lv_guid.
      break-point.
      IF object_type = c_shop.
    get the details of the shopping cart
        CALL FUNCTION 'BBP_PD_SC_GETDETAIL'
          EXPORTING
            i_guid      = lv_guid
            i_object_id = object_id
          IMPORTING
            e_header    = ls_header
          TABLES
            e_item      = lt_item
            e_account   = lt_account
            e_partner   = lt_partner.
    Modification for Item-Level Approval-Start
        select * from zitem_costctr
        into table lt_cost_ctr.
        lv_index = actual_approval_index.
        if lv_index = 0.
           lv_index = 1.
        endif.
        LI_STOP_AMT = LS_HEADER-TOTAL_VALUE.
    Modification for Item-Level Approval-End
        LOOP AT lt_item INTO ls_item.
    Modification for Item-Level Approval-Start
        if actual_approval_index le lv_index.
          ls_approval_item-approval_item_guid = ls_item-guid.
          READ TABLE lt_account INTO ls_account
                 WITH KEY p_guid = ls_item-guid.
          if sy-subrc is initial.
            READ TABLE LT_COST_CTR INTO LS_COST_CTR
            WITH KEY COST_CENTER_NO = LS_ACCOUNT-COST_CTR.
            LV_CALL_VALUE1 = LS_ACCOUNT-COST_CTR.
            CALL FUNCTION 'BBP_WFL_DIN_APP_OBJ_GET'
              EXPORTING
                sc_guid           = ls_header-guid
                criterion1        = 'COST_CTR'
                value1            = lv_call_value1
                iv_item_value     = ls_item-value
                iv_add_value      = 'X'
              IMPORTING
                approval_obj_guid = ev_app_obj_guid
              TABLES
                item_app_obj      = item_approval_obj.
            ls_approval_item-approval_object_guid = ev_app_obj_guid.
            LS_APPROVAL_ITEM-APPROVAL_ITEM_GUID = LS_ITEM-GUID.
            APPEND ls_approval_item TO lt_approval_items.
         approval_table[]      = lt_approver[].
    Get the Object ID of user
           SELECT SINGLE objid
                  INTO lc_objid
                  FROM hrp1001
                  WHERE sobid = ls_cost_ctr-CC_MANAGER_ID
                    AND otype = 'CP'
                    AND plvar = '01'.
           IF sy-subrc NE 0.
             EXIT.
           ENDIF.
           SELECT SINGLE objid
                  INTO lc_objid_s
                  FROM hrp1001
                  WHERE sobid = lc_objid
                    AND otype = 'S'
                    AND plvar = '01'.
           IF sy-subrc NE 0.
             EXIT.
           ENDIF.
    Get the Approver's Limit
            CLEAR li_limit.
            lc_sobid = ls_cost_ctr-CC_MANAGER_ID.
            CALL FUNCTION 'BBP_BW_GET_APPR_LIMIT'
              EXPORTING
                i_userid     = lc_sobid
              IMPORTING
                e_appr_limit = li_limit.
            IF LI_LIMIT > LS_ITEM-VALUE. "LI_STOP_AMT.
              SELECT SINGLE persnumber
                     INTO lc_persnumber
                     FROM usr21
                     WHERE bname = lc_sobid.
              IF sy-subrc IS INITIAL.
                SELECT name_text
                       INTO ls_approver-name
                       FROM adrp
                       UP TO 1 ROWS
                       WHERE persnumber =  lc_persnumber
                         AND date_from  LE sy-datum
                         AND date_to    GE sy-datum.
                ENDSELECT.
              ENDIF.
              ADD 1 TO li_stepno.
              ls_approver-approval_index = li_stepno.
              ls_approver-approval_agent = lc_SOBID.
              set_approval_description.
              APPEND ls_approver TO approval_table.
              CLEAR ls_approver.
            ELSE.
              do.
    Get the Object ID of user
                CALL FUNCTION 'BBP_WFL_DIN_APP_OBJ_GET'
                  EXPORTING
                    sc_guid           = ls_header-guid
                    criterion1        = 'COST_CTR'
                    value1            = lv_call_value1
                    iv_item_value     = ls_item-value
                    iv_add_value      = 'X'
                  IMPORTING
                    approval_obj_guid = ev_app_obj_guid
                  TABLES
                    item_app_obj      = item_approval_obj.
                ls_approval_item-approval_object_guid = ev_app_obj_guid.
                LS_APPROVAL_ITEM-APPROVAL_ITEM_GUID = LS_ITEM-GUID.
                APPEND ls_approval_item TO lt_approval_items.
                CLEAR : LC_OBJID,LC_OBJID_S.
                SELECT SINGLE objid
                       INTO lc_objid
                       FROM hrp1001
                       WHERE sobid = ls_cost_ctr-CC_MANAGER_ID
                         AND otype = 'CP'
                         AND plvar = '01'.
                IF sy-subrc NE 0.
                  EXIT.
                ENDIF.
                SELECT SINGLE objid
                       INTO lc_objid_s
                       FROM hrp1001
                       WHERE sobid = lc_objid
                         AND otype = 'S'
                         AND plvar = '01'.
                IF sy-subrc NE 0.
                  EXIT.
                ENDIF.
    Get the SL Approver
                SELECT SINGLE low
                         INTO lc_slapprover
                         FROM hrv1222a
                         WHERE plvar  =  '01'
                           AND otype  =  'S'
                           AND objid  =  lc_objid_s
                           AND begda  LE sy-datum
                           AND endda  GE sy-datum
                           AND attrib =  'SLAPPROVER'.
                IF sy-subrc NE 0.
                  EXIT.
                ENDIF.
    Get the Approver's Limit
                CLEAR li_limit.
                lc_sobid = lc_slapprover+2.
                CALL FUNCTION 'BBP_BW_GET_APPR_LIMIT'
                  EXPORTING
                    i_userid     = lc_sobid
                  IMPORTING
                    e_appr_limit = li_limit.
                SUBTRACT '.01' FROM li_limit.  "D0001093425
                IF li_limit GT 0.
    Add the approver to the list
                  SELECT SINGLE persnumber
                         INTO lc_persnumber
                         FROM usr21
                         WHERE bname = lc_sobid.
                  IF sy-subrc IS INITIAL.
                    SELECT name_text
                           INTO ls_approver-name
                           FROM adrp
                           UP TO 1 ROWS
                           WHERE persnumber =  lc_persnumber
                             AND date_from  LE sy-datum
                             AND date_to    GE sy-datum.
                    ENDSELECT.
                  ENDIF.
                  ADD 1 TO li_stepno.
                  ls_approver-approval_index = li_stepno.
                  ls_approver-approval_agent = lc_slapprover.
                  set_approval_description.
                  APPEND ls_approver TO approval_table.
                  CLEAR ls_approver.
                ENDIF.
    If the limit is greater than the stop amount, exit - we are finished
                IF li_limit GE li_stop_amt.
                  EXIT.
                ENDIF.
              ENDDO.
             endif.
             endif.
          ENDIF.
        endloop.
        data : cc type BBP_STEP_DESCRIPTION value 'CoCentre_Approvers'.
        if actual_approval_index le lv_index.
        CALL FUNCTION 'BBP_WFL_DIN_FILL_APPROVER'
          EXPORTING
            iv_approval_index   = lv_index
            ic_step_description = cc
            iv_criterion1       = 'COST_CTR'
          TABLES
            it_approval_def     = lt_appr_def
            it_approval_object  = item_approval_obj
            et_approver         = lt_approver
            it_approval_items   = lt_approval_items.
        endif.
        item_approval_table[] = lt_approval_items[].
        approval_table[]      = lt_approver[].
      endif.
    Modification for Item-Level Approval-End
    Use the product category to link to the Product Category Approval
    table and use the corresponding approver(s) for the total shopping
    cart value.
         SELECT *
                INTO TABLE lt_prodcat
                FROM zmwfprodcat.
                WHERE catid    LIKE  ls_item-category_id.
         IF sy-subrc IS INITIAL.
    ****begin of change D0001034557
    ***//Buyer to be the first approver
           MOVE lv_guid TO v_guid.
           READ TABLE lt_account INTO ls_account
                        WITH KEY p_guid = ls_item-guid.
    ****Begin of change by suresh for adding codition for buyer determination
    ****for company codes 7000 and greater D0001110145
           clear cd_flag.
           select single * into ws_set
                           from ZMWF_SETS
                            where setid = 'FCD1'.
           if ( ls_item-be_co_code GE ws_set-val_low and
                ls_item-be_co_code LE ws_set-val_high ).
             cd_flag = 'X'.
           endif.
           IF ( ls_item-itm_type = 'LIMI' OR
            ls_item-product_type = '02' OR
              ls_account-acc_cat = 'AS' ) AND
              cd_flag is initial.
    *****end of changes by suresh D0001110145
    Begin of changes by Suresh-EBDK902401
    Added the Object Type and Object ID
             CALL FUNCTION 'BBP_PDH_WFL_GET_PURCHASER_LIST'
                  EXPORTING
                    IV_GUID                 =   v_guid
        IV_OBJECT_TYPE                      =  'BUS2121'
        IV_OBJECT_ID                        = OBJECT_ID
              IV_GET_FIRST_PURCH_FROM_GROUP     =  'X'
                  TABLES
                    ET_USER                       =  lt_user.
    ***End of changes by Suresh-EBDK902401
             LOOP AT lt_user INTO ls_user.
               LOOP AT lt_prodcat INTO ls_prodcat.
                 IF NOT ls_prodcat-bname IS INITIAL.
                   CONCATENATE 'US' ls_user-objid INTO
                                 ls_approver-approval_agent.
                   READ TABLE approval_table INTO ls_approver_check
                      WITH KEY approval_agent =
    *ls_approver-approval_agent
                   IF SY-SUBRC NE 0.
                     set_approval_level.
                     set_approval_description.
                     ls_approver-name = ls_approver-approval_agent.
                     APPEND ls_approver TO approval_table.
                     CLEAR ls_approver-name.
                   ENDIF.
                 ENDIF.
                 CLEAR ls_prodcat.
               ENDLOOP.
               CLEAR ls_user.
             ENDLOOP.
           ENDIF.
           CLEAR ls_account.
    ****end of change D0001034557
    ****begin of change D0001043944
    **//Special Approvers to be right after the buyer
           IF NOT ls_item-z_spl_approval IS INITIAL.
             SELECT *  INTO TABLE lt_prodcat2
                           FROM zmwfprodcat
                           WHERE setid = ls_item-z_spl_approval.
             SORT lt_prodcat2 BY catid appr_level.
             LOOP AT lt_prodcat2 INTO ls_prodcat.
               IF NOT ls_prodcat-bname IS INITIAL.
                 CONCATENATE 'US' ls_prodcat-bname INTO
                               ls_approver-approval_agent.
                 READ TABLE approval_table INTO ls_approver_check
                    WITH KEY approval_agent = ls_approver-approval_agent.
                 IF SY-SUBRC NE 0.
                   set_approval_level.
                   set_approval_description.
                   ls_approver-name = ls_approver-approval_agent.
                   APPEND ls_approver TO approval_table.
                   CLEAR ls_approver-name.
                   li_last_level = ls_prodcat-appr_level.
                   li_last_setid = ls_prodcat-setid.
                 ENDIF.
               ENDIF.
               CLEAR: ls_prodcat,ls_approver_check.
             ENDLOOP.
           ENDIF.
    ****end of change D0001043944
           LOOP AT lt_prodcat INTO ls_prodcat.
             IF NOT ls_item-category_id CP ls_prodcat-catid.
               DELETE TABLE lt_prodcat FROM ls_prodcat.
             ENDIF.
           ENDLOOP.
    Inserted by Rakesh Palle for Assets DR # D0001055958
           LOOP AT lt_prodcat INTO ls_asset WHERE setid = 'AS01'.
             APPEND ls_asset TO lt_asset.
           ENDLOOP.
    Begin D0001055958
           LOOP AT lt_prodcat INTO ls_order WHERE setid = 'OR01'.
             APPEND ls_order TO lt_order.
           ENDLOOP.
    End D0001055958
           DELETE lt_prodcat WHERE setid = 'AS01' OR setid = 'OR01'.
           "D0001055958
    End of insertion DR # D0001055958
           SORT lt_prodcat BY catid setid appr_level ASCENDING.
           lc_first = 'X'.
           SELECT *
                  INTO TABLE lt_sets
                  FROM zmwf_sets
                  FOR ALL ENTRIES IN lt_prodcat
                  WHERE setid = lt_prodcat-setid.
    SORT lt_prodcat BY catid setid appr_level ASCENDING.
          lc_first = 'X'.
           LOOP AT lt_prodcat INTO ls_prodcat.
    Check the set data
             IF NOT ls_prodcat-setid IS INITIAL.
               READ TABLE lt_account INTO ls_account
                    WITH KEY p_guid = ls_item-guid.
    ***// Changed by Rakesh Palle to get ACC_STR & COST OBJ
    ***// if cost ctr is initial DR # D0001055958
               IF ls_account-cost_ctr IS INITIAL.
                 IF ls_account-acc_str IS INITIAL.
                   CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
                     EXPORTING
                       input  = ls_account-cost_obj
                     IMPORTING
                       output = lc_cost_ctr.
                 ELSE.
                   CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
                     EXPORTING
                       input  = ls_account-acc_str
                     IMPORTING
                       output = lc_cost_ctr.
                 ENDIF.
               ELSE.
                 CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
                   EXPORTING
                     input  = ls_account-cost_ctr
                   IMPORTING
                     output = lc_cost_ctr.
               ENDIF.
    ***// End of insertion DR # D0001055958
    Check for valid Cost Center (set type = space)
               lc_pass = c_no.
               LOOP AT lt_sets INTO ls_sets
                    WHERE setid =  ls_prodcat-setid
                      AND setty =  space.
                 IF ls_sets-val_low = lc_cost_ctr OR
                    ( ls_sets-val_low  LE lc_cost_ctr AND
                      ls_sets-val_high GE lc_cost_ctr ).
                   lc_pass = c_yes.
                   EXIT.
                 ENDIF.
               ENDLOOP.
               IF sy-subrc IS INITIAL AND
                  lc_pass  = c_no.
                 CONTINUE.
               ENDIF.
    ***// Inserted by Rakesh Palle for Company code verification
    Check for valid Company Code (set type = CC)
               LOOP AT lt_sets INTO ls_sets
                    WHERE setid =  ls_prodcat-setid
                      AND setty =  c_comp_value.
                 IF ls_sets-val_low = ls_item-be_co_code OR
                    ( ls_sets-val_low  LE ls_item-be_co_code AND
                      ls_sets-val_high GE ls_item-be_co_code ).
                   lc_pass = c_yes.
                   EXIT.
                 ENDIF.
               ENDLOOP.
               IF sy-subrc IS INITIAL AND
                  lc_pass  = c_no.
                 CONTINUE.
               ENDIF.
    ***// End of Insertion for Company code verification
    ***// Inserted by Rakesh Palle for Asset Company code verification
      Check for valid Asset Company Code (set type = AD)
      DR # D0001055958
               IF lv_asset = 'X'.
                 LOOP AT lt_sets INTO ls_sets
                      WHERE setid = ls_prodcat-setid
                        AND setty = c_ad_value.
                   IF ls_sets-val_low = ls_item-be_co_code OR
                      ( ls_sets-val_low  LE ls_item-be_co_code AND
                        ls_sets-val_high GE ls_item-be_co_code ).
                     lc_pass = c_yes.
                     EXIT.
                   ENDIF.
                 ENDLOOP.
                 IF sy-subrc IS INITIAL AND
                    lc_pass  = c_no.
                   CONTINUE.
                 ENDIF.
    ***// End of Asset Company code verification
    ***// Check for valid Cost Center (set type = AC)
                 LOOP AT lt_sets INTO ls_sets
                      WHERE setid =  ls_prodcat-setid
                        AND setty =  c_ac_value.
                   IF ls_sets-val_low = lc_cost_ctr OR
                      ( ls_sets-val_low  LE lc_cost_ctr AND
                        ls_sets-val_high GE lc_cost_ctr ).
                     lc_pass = c_yes.
                     EXIT.
                   ENDIF.
                 ENDLOOP.
                 IF sy-subrc IS INITIAL AND
                    lc_pass  = c_no.
                   CONTINUE.
                 ENDIF.
               ENDIF.
    ***// End of Asset Cost Center
    ***// Inserted by Rakesh Palle for Order Company code verification
    Check for valid Order Company Code (set type = OD)
               IF lv_order = 'X'.
                 LOOP AT lt_sets INTO ls_sets
                      WHERE setid = ls_prodcat-setid
                        AND setty = c_od_value.
                   IF ls_sets-val_low = ls_item-be_co_code OR
                      ( ls_sets-val_low  LE ls_item-be_co_code AND
                        ls_sets-val_high GE ls_item-be_co_code ).
                     lc_pass = c_yes.
                     EXIT.
                   ENDIF.
                 ENDLOOP.
                 IF sy-subrc IS INITIAL AND
                    lc_pass  = c_no.
                   CONTINUE.
                 ENDIF.
    ***// End of Order Company code verification
    ***// Check for valid Order Cost Center (set type = OC)
                 LOOP AT lt_sets INTO ls_sets
                      WHERE setid =  ls_prodcat-setid
                        AND setty =  c_oc_value.
                   IF ls_sets-val_low = lc_cost_ctr OR
                      ( ls_sets-val_low  LE lc_cost_ctr AND
                        ls_sets-val_high GE lc_cost_ctr ).
                     lc_pass = c_yes.
                     EXIT.
                   ENDIF.
                 ENDLOOP.
                 IF sy-subrc IS INITIAL AND
                    lc_pass  = c_no.
                   CONTINUE.
                 ENDIF.
               ENDIF.
    ***// End of Order Cost Center
    ***// DR # D0001055958
    Check for SL Approver Value
               LOOP AT lt_sets INTO ls_sets
                    WHERE setid =  ls_prodcat-setid
                      AND setty =  c_aprover_value.
                 IF NOT ls_sets-val_low CN '1234567890 .'.
                   TRANSLATE ls_sets-val_low USING ', '.
                   CONDENSE ls_sets-val_low NO-GAPS.
                   li_set_amt = ls_sets-val_low.
                   IF ls_header-total_value LT li_set_amt AND
                      li_set_amt GT li_stop_amt.
                     li_stop_amt = li_set_amt.
                   ENDIF.
                 ENDIF.
               ENDLOOP.
             ENDIF.
             CHECK ls_prodcat-val_from LE ls_header-total_value
               AND ls_prodcat-val_to   GE ls_header-total_value.
    Begin D0001055958
             IF lc_pass  = c_no.
               CONTINUE.
             ENDIF.
    End   D0001055958
    Handle Approver Name - Explicit
             IF NOT ls_prodcat-bname IS INITIAL.
               CONCATENATE 'US' ls_prodcat-bname INTO
                           ls_approver-approval_agent.
               READ TABLE approval_table INTO ls_approver_check
                    WITH KEY approval_agent = ls_approver-approval_agent.
               IF sy-subrc NE 0.
                 set_approval_level.
                 set_approval_description.
                 ls_approver-name = ls_prodcat-name_text.
                 APPEND ls_approver TO approval_table.
                 CLEAR ls_approver-name.
                 li_last_level = ls_prodcat-appr_level.
                 li_last_setid = ls_prodcat-setid.          "D0001055958
               ENDIF.
             ENDIF.
    Handle Approver Names - Derive from Role
             IF NOT ls_prodcat-agr_name IS INITIAL.
               ls_roles-agr_name = ls_prodcat-agr_name.
               APPEND ls_roles TO lt_roles.
               CALL FUNCTION 'BBP_READ_USERS_OF_ROLES'
                 TABLES
                   roles              = lt_roles
                   users_of_roles     = lt_users
                 EXCEPTIONS
                   no_users_available = 1
                   OTHERS             = 2.
               IF sy-subrc IS INITIAL.
                 LOOP AT lt_users INTO ls_users.
                   SELECT SINGLE persnumber
                          INTO lc_persnumber
                          FROM usr21
                          WHERE bname = ls_users-uname.
                   IF sy-subrc IS INITIAL.
                     SELECT name_text
                            INTO ls_approver-name
                            FROM adrp
                            UP TO 1 ROWS
                            WHERE persnumber =  lc_persnumber
                              AND date_from  LE sy-datum
                              AND date_to    GE sy-datum.
                     ENDSELECT.
                   ENDIF.
                   CONCATENATE 'US' ls_users-uname INTO
                               ls_approver-approval_agent.
                   READ TABLE approval_table INTO ls_approver_check
                      WITH KEY approval_agent = ls_approver-approval_agent.
                   IF sy-subrc NE 0.
                     set_approval_level.
                     set_approval_description.
                     APPEND ls_approver TO approval_table.
                     CLEAR ls_approver-name.
                     li_last_level = ls_prodcat-appr_level.
                     li_last_setid = ls_prodcat-setid.       "D0001055958
                   ENDIF.
                 ENDLOOP.
               ENDIF.
               REFRESH: lt_roles, lt_users.
             ENDIF.
           ENDLOOP.
         ENDIF.
       ENDLOOP.
    Add the SL approvers
       CLEAR lc_sobid.
    Get the requisioner - in case the cart is created 'on behalf of'
       READ TABLE lt_partner INTO ls_partner
                  WITH KEY partner_fct = c_requisitioner.
       IF sy-subrc IS INITIAL.
         SELECT SINGLE partner INTO lc_partner
                FROM but000
                WHERE partner = ls_partner-partner_id.
         CALL FUNCTION 'RH_STRUC_GET'
           EXPORTING
             act_otype      = 'BP'
             act_objid      = lc_partner
             act_wegid      = 'BP_US'
           TABLES
             result_tab     = lt_result_tab
           EXCEPTIONS
             no_plvar_found = 1
             no_entry_found = 2
             OTHERS         = 3.
         READ TABLE lt_result_tab INTO ls_result_tab WITH KEY otype = 'US'.
         lc_sobid = ls_result_tab-objid.
       ENDIF.
    If the above code failed for any reason use the Created By user as the
    requisioner
       IF lc_sobid IS INITIAL.
         lc_sobid = ls_header-created_by.
       ENDIF.
    Set the stop amount to the total value of the cart
       IF li_stop_amt IS INITIAL.
         li_stop_amt = ls_header-total_value.
       ENDIF.
       DO.
    Get the Object ID of user
         SELECT SINGLE objid
                INTO lc_objid
                FROM hrp1001
                WHERE sobid = lc_sobid
                  AND otype = 'S'
                  AND plvar = '01'.
         IF sy-subrc NE 0.
           EXIT.
         ENDIF.
    Get the SL Approver
         SELECT SINGLE low
                  INTO lc_slapprover
                  FROM hrv1222a
                  WHERE plvar  =  '01'
                    AND otype  =  'S'
                    AND objid  =  lc_objid
                    AND begda  LE sy-datum
                    AND endda  GE sy-datum
                    AND attrib =  'SLAPPROVER'.
         IF sy-subrc NE 0.
           EXIT.
         ENDIF.
    **break-point.
    Get the Approver's Limit
         CLEAR li_limit.
         lc_sobid = lc_slapprover+2.
         CALL FUNCTION 'BBP_BW_GET_APPR_LIMIT'
           EXPORTING
             i_userid     = lc_sobid
           IMPORTING
             e_appr_limit = li_limit.
         SUBTRACT '.01' FROM li_limit.  "D0001093425
         IF li_limit GT 0.
    Add the approver to the list
           SELECT SINGLE persnumber
                  INTO lc_persnumber
                  FROM usr21
                  WHERE bname = lc_sobid.
           IF sy-subrc IS INITIAL.
             SELECT name_text
                    INTO ls_approver-name
                    FROM adrp
                    UP TO 1 ROWS
                    WHERE persnumber =  lc_persnumber
                      AND date_from  LE sy-datum
                      AND date_to    GE sy-datum.
             ENDSELECT.
           ENDIF.
           ADD 1 TO li_stepno.
           ls_approver-approval_index = li_stepno.
           ls_approver-approval_agent = lc_slapprover.
           set_approval_description.
           APPEND ls_approver TO approval_table.
           CLEAR ls_approver.
         ENDIF.
    If the limit is greater than the stop amount, exit - we are finished
         IF li_limit GE li_stop_amt.
           EXIT.
         ENDIF.
       ENDDO.
    ENDIF.
    Inserted by Rakesh Palle for Order
    DR # D0001055958
    IF lv_order = 'X'.
       lc_first = 'X'.
       LOOP AT lt_order INTO ls_order.
         CHECK ls_order-val_from LE ls_header-total_value
           AND ls_order-val_to   GE ls_header-total_value.
    Handle Approver Name - Explicit
         IF NOT ls_order-bname IS INITIAL.
           CONCATENATE 'US' ls_order-bname INTO
                       ls_approver-approval_agent.
           READ TABLE approval_table INTO ls_approver_check
                WITH KEY approval_agent = ls_approver-approval_agent.
           IF sy-subrc NE 0.
             set_approval_level_2.
             set_approval_description.
             ls_approver-name = ls_order-name_text.
             APPEND ls_approver TO approval_table.
             CLEAR ls_approver-name.
             li_last_level = ls_order-appr_level.
           ENDIF.
         ENDIF.
    Handle Approver Names - Derive from Role
         IF NOT ls_order-agr_name IS INITIAL.
           ls_roles-agr_name = ls_order-agr_name.
           APPEND ls_roles TO lt_roles.
           CALL FUNCTION 'BBP_READ_USERS_OF_ROLES'
             TABLES
               roles              = lt_roles
               users_of_roles     = lt_users
             EXCEPTIONS
               no_users_available = 1
               OTHERS             = 2.
           IF sy-subrc IS INITIAL.
             LOOP AT lt_users INTO ls_users.
               SELECT SINGLE persnumber
                      INTO lc_persnumber
                      FROM usr21
                      WHERE bname = ls_users-uname.
               IF sy-subrc IS INITIAL.
                 SELECT name_text
                        INTO ls_approver-name
                        FROM adrp
                        UP TO 1 ROWS
                        WHERE persnumber =  lc_persnumber
                          AND date_from  LE sy-datum
                          AND date_to    GE sy-datum.
                 ENDSELECT.
               ENDIF.
               CONCATENATE 'US' ls_users-uname INTO
                           ls_approver-approval_agent.
               READ TABLE approval_table INTO ls_approver_check

    hi,
    let me know the following things
    1) how many levels are working ? is the workitem send to the second approver (or) not?
    is the issue occuring with the first approver?
    2) are you using the index value correctly in your approval badi? please check out.
    Badi is called during each approval stage 
    3)  what is the value of approval_state in the workflow container ? 
    if the value is 5 --> it will go to the next approver.
    4) have you been able to debug --> the approval process --> this will enable you to find root cause of the issue.
    check out FM
    BBP_WFL_DIN_APPR_CONTAINER_SET --> this is the point where the approval update happens --> when the approver approves (or) rejects the cart.

  • Approval for cheque while payment

    hi
    I require the approval for cheque while payment to vendor.  guide me how to do that. before every check printing we need approval from the higher authority.
    Thanks

    hi all,
    i started this project again after so long break....,
    my steps to complete this task-
    i copied the program / report- sapf110o to z* and started building the whole scenario. and will try to assign the workflow as well which is related to miro , ws20000397(but still not sure).
    logic:
    only for invoice payment.
    only date as selection my program will show all the proposal on that date. in second screen vendor level approval is available and in third level detailed level approval is available.and in third screen you can cross check accounting document or display miro.
    it has three level approval, will update table and this will trigger workflow(while running f110) so need to do some enhancement on f110 as well to trigger workflow.
    thanks and reg,
    Ahmed,

  • Enhanced book for iPad, built on iBooks Author

    Hi all
    I am sorry if these are similar questions to ones asked before, but I wondered if things might be different since they were last asked.
    I have delivered an enhanced book built for iPad and it is currently in the review status, not in 51 stores. My questions (of which I have heard many myths about):
    1) As it's an enhanced book (created on iBooks Author), there are lots of videos, galleries etc which make the publication about 1 gig. I have heard that although there is a 2 gig limit, some authors have had responses from Apple saying that it should be kept to max 200mb and therefore rejected. True or false do you reckon?
    2) Mine is a travel guide about a specific area of Spain and it is all about solutions to the traveller. Therefore as well as lots of text, there is a Useful Links section that links to companies websites  such as car hire  - their logos are next to the URL's in my book. Do you think Apple will be ok with their logos visible and external web links? It is simple to remove it if necessary but in truth it is a resource for my readers.
    3) I have heard varying reports of 3 hours to 55 days for the review process to be complete. Does anybody know if it is longer for an enhanced book due to the complexitied of its build?
    4) I have heard reports that if it fails, Apple will tell you how to rectify it. Is this true and is it easy to resubmit?
    5) I have also heard reports of Apple simply rejecting without explanation. That would be so painful. I have spent 6 months and a lot of investment. I would be devestated. is this true?
    6) Any other advice? It has been in review for 3 days only so far. Any ideas on current wait time for enhanced books built for ipad, created on iBooks Author?
    It's an anxious time isn't it?!
    Thanks.

    1. Max size is 3 GB, but   take  into acount you want  updates at some stage and need to allow "space"
    2. URLs  are usually excepted IF they are not competitors of Apple iBooks Store - ie Amazon. Any logo is usually copyrighted by the  company.  Any potential copyright infringements  could be rejected by th review team.
    3. Time taken in Review depends how busy they are  without regard to your  content.
    4.  If your book fails the review,  you will be issued a ticket - A recent email advised changed to the ticketing procedures.
    Ticket Catalog Report
    The Catalog Reports module on iTunes Connect now contains a Ticket Catalog Report. The report contains details for all tickets that have been assigned to your iTunes Connect account.
    iBooks Store Formatting Guidelines Update
    The iBooks Store Formatting Guidelines include important information to help you avoid common errors when publishing on the iBooks Store. The new version of the guidelines includes updated information for copyrighted terms, supported languages, series metadata, What's New descriptions, book assets files, and more.
    Download the updated iBooks Store Formatting Guidelines from the Deliver Your Content module on iTunes Connect.
    5.  The review team will pass or fail your book,  fail is dealt with above. Pass... means its in the store. All you need to  do is keep checking status in iTC.
    6. is the same asnwer as 3.    You wait and Check in iTC to monitor if your book  is passed or ticketed.
    Other advice,  open iTC  >  Deliver your Content >  on the top right are a number of PDF, download and  read  study them. Below them is a video.. take time to  view the video and take notes.
    The above extracts are from an email  from iBooks, the links should still work, if not  they are basically to open your iTunes Connect - Deliver your content section.
    Last  bit of advice, check everything  at least twice before uploading to the store. Remember issues with copyright. Dont use anything just  because its online. Dont copy text or images from other  websites and give credits/links to any that are subject to Common Licence conditions... and finally.. be patient, time , tide and Apple move at their own speed.

  • Shopping cart approval substitution not working on 2 levels

    Hi,
    We have a few unique cases in approval substitution.
    We have approver A for whom a substitute is maintained  in HRUS_D2 table for period of 3 months as active substitute.
    so normally any shopping cart which has been created for approver A  sends a notification to approver B also.
    but recently what happened is approver C has been maintained an active substitute  in HRUS_D2 table  for approver B .
    so logically any SC created for Approver A should get sent to Approver C as Approver C is  substitute for Approver B who is substitute for approver A.
    What is happening is that Approver C does not get any notification of any shopping carts created for approver A approval. But if we login with approver B details the we can see the SC created and awaiting approval.
    Can somebody tell us why SC are not flowing to approver C for approval.
    Both are maintained as active approvers in HRUS_D2 table
    Thanks R.M.

    Hello
    This is not a bug. It is the fact that Approver A has only given
    approval authority to Approver B, but not to Approver C.
    In order for Approver C to have authority to approve Approver A's workitems
    he will have to be specifically authorized to do so, just as Approver B was.
    Best Regards
    SZD

  • Showing only Approved Metapedia Terms

    This question is two fold:
    1) Is there a way to only show approved metapedia terms?
    2) How have others managed their metapedia terms in a "multi-tier" environment (dev / qa / prod)? Do you promote your terms / changes through different environments or do you manage your terms in one environment?  What is SAPs suggested best practice here?
    I'm trying to achieve the scenario where metapedia users only see approved terms. Right now we are controlling this through drafting the terms in one environment and then exporting / importing them into another environment as approved.
    Thanks!!
    Tom

    This can be achieved by setting up appropriate user permissions. Note that for Metapedia there are predefined user groups - Metapedia User, Metapedia Author, Metapedia Approver and Metapedia Administrator.
    Among these groups Metapedia Users can only view approved terms. Metapedia Author, Approvers participate in the process of creating the draft definition, refining it and approving it. Once the term is approved, it is visible to Metapedia Users. Also if for some reason author starts revising an approved term - the changes made by the authors are not visible to Metapedia User until the revised term definition is approved.
    Given this context, you should be able to manage all Metapedia activities in the same environment. You do not need to have separate Dev and Prod environment for Metapedia scenarios.

  • Web service authority

    I have created a web service to be consumed by a program outside of SAP.
    I have had a userid created for this 3rd party company that they will use.
    I want to limit what that userid can execute to only that web service.
    I know that is possible - and the security people know how to do it as well.
    I am not a security person - so not sure how all of that works.
    The security people search for it by the name of the web service that I made up.
    They have a drop down and say search by WS and it will list the web services.
    The problem is - the web service isn't in the list.
    I have turned the function into a web service through SE80.
    I have activated the service through SOAMANAGER.
    I checked to make sure the service is active through SICF.
    I have even run the service just through a web browser - but still the security people cannot see it.
    The only way I have been able to make it show it is to create a C# program in Visual Studio and run the web service through C# into SAP.
    Once I do that - then the security people can see the web service and limit the authority.
    Has anyone else had this problem?
    Or am I doing something wrong with defining the web service and activating it?
    Thanks.
    Scott Overmeyer

    Hello,
    Once the Web Service is active in SICF hierarchy, you should be able to add it to the specific role using PFCG. You may use External Service option with Service type 'WS'.
    Thanks,
    Venu

  • Rejecting a Pending document Versus Rejecting an Approved document

    I have Enterprise Wiki site collection which contains a document library.I have set the following settings for the document library:-
    Require content approval for submitted items? >>> Set to Yes
    Who should see draft items in this document library? >>> Only users who can approve items (and the author of the item)
    Now I find that SP will implement these two misleading scenarios:-
    If user with "Approve" permission reject an Approved version, then users with Read permission will get this message when they try to read the document:-
    Sorry, this site hasn't been shared with you.
    While If user with "Approve" permission reject Pending version , then users with Read permission will be able to see the latest approved version of the document.
    So I have these two questions:-
    Why SP is implementing these two different scenarios?
    Is there a way to force my document library to always display the latest approved version of the document , when rejecting Approved or Pending versions?
    Thanks

    Content approval is for approve/reject minor version. If you always need to show last major version then turn off content approval, then viewer (read only) user will see last major version.
    I will suggest you to use publishing infrastructure rather than content approval.
    refer - Enable publishing features
    please "Propose as answer" if it help you, also Vote This As Helpful if like this post.
    no i can define Content Approval for major version, here is the screen for version settings inside my document library:-
    if i turn content approval off, then there will not be Pending documents , and if a user edit a document , then the document status is always be Approved ... However i want to have Pending status, and if a user Reject a document (either Approved or Pending)
    then to force the document library to always display the latest approved version.... currently if the user reject an Approved version users will receive the following message when they try to read the document "Sorry, this site hasn't been shared with
    you." ,,

  • Facing 'No Approver Found for Purchase Requisition' error when using AME

    Hello All,
    I am trying to test one simple rule in AME. Below are the the details of the rule.
    Rule name - VO Category = SUPPLIES.FACILITIES
    Item Class - Header
    Rule Type - List Creation
    Conditions
    1. ITEM_CATEGORY in (SUPPLIES.FACILITIES)
    Condition Type - Ordinary
    Attribute - ITEM_CATEGORY
    Data Type - String
    Item Class - Line Item
    String Value - SUPPLIES.FACILITIES
    2. TRANSACTION_SET_OF_BOOKS_ID is equal to 1
    Condition Type - Ordinary
    Attribute - TRANSACTION_SET_OF_BOOKS_ID
    Data Type - Number
    Item Class - Header
    Details
    TRANSACTION_SET_OF_BOOKS_ID is equal to 1
    Actions
    Action Type - approval-group chain of authority
    Rule Type - Chain of Authority
    Order No - 1
    Ordering Mode - Serial
    Voting Method - Serial
    Action - Require approval from Facilities Approver Group
    Approver Group Details
    Name - Facilities Approver Group
    Type - Static
    Voting Method - Order Number
    There are two member in this approver group
    Approver Type Approver Order Number
    HR People HR People: akshay7 1
    HR People HR People: akshay8 2
    Now when i create a requisition with akshay7 as preparer then following notification is displayed
    To akshay7
    Sent 21-May-2013 16:55:08
    ID 4681179
    Approval workflow database error occurs while approving Purchase Requisition 14315
    Contact your system administrator to identify the problem and to use SQL*Plus or Workflow Monitor to reactivate the approval workflow where it left off.
    Give your system administrator the following information:
    PL/SQL procedure: POR_AME_REQ_WF_PVT.GET_NEXT_APPROVERS
    Error: ORA-20001: The procedure getNextPosition could not find parent position for : HR Positions: 01.Jrbuyer
    Both the employees have one supervisor.
    How to reslove this error?
    Thanks in advance.

    Hi Everyone,
    The problem is solved now. The cause was that the test requisition that I was making was satisfying more than one rules and hence I end dated the remaining rules which solved the problem.
    Thanks!

  • Workflow for calendar event approval

    I've got the following scenario:
    A calender is set for data approval
    The reviewer has an alert set for postings
    A user posts an event
    the reviewer gets an alert pointing them to the calender event.  if they click on it
    the reviewer opens the event and has an approve/reject button
    does a notification go to the user telling them if it's been approve?
    Is it possible to set up a workflow to have things work this way?
    user posts an event
    an email with an approve/reject button goes directly to the reviewer (not a link to the calendar)
    the decision (approved/rejected) is sent back to the poster automatically upon hitting approve or reject
    Approved events appear on the calendar for everybody to see
    In the 2nd scenario, do you still need to have data approval set on the calendar - since you've using the workflow?
    Also, how would you set up an email that allows the reviewer to approve/reject to both approve/reject and submit to continue processing?
    Thanks for any help you can provide.
    ajw

    Hi Geek,
    According to your description, my understanding is that you want to use a workflow to achieve your goal.
    I recommend to use Start Approval Process action to meet your need.
    Here are the detailed steps:
    Set the “Require content approval for submitted items” to Yes in the calendar list and select “Only users who can approve items (and the author of the item)” under “Who should see draft items in this list”.
    Create a workflow associated with the calendar list and set the workflow to start when an item is created.
    Select Start Approval Process from Action, then click these users to set the approver(reviewer). Add a Set Workflow Variable action before the Start Approval Process step and change the settings to be: Set Variable: EnableContentApproval to Yes.
    Click Approval in the step Start Approval Process, click Change the behavior of a single task under Customization.
    Scroll down to the step When a Task Completes, add Send an Email action below the step If Current Task:Outcome equals Approved and step Else if Current Task:Outcome equals Rejected.
    Please refer to the picture below:
    After that, the approver(reviewer) will get the email and he/she can click Open Task button in the email to review and complete the task. When the approver approve/reject the task, the user will get an email and the rejected events cannot be viewed by the
    users who have no permission to see the draft items.
    Best regards.
    Thanks
    Victoria Xia
    TechNet Community Support

  • IRecruitment Create Vacancy Approval Notifications

    Hi,
    I have a client that wishes me to modify the content of the Approval Notification/Message sent to the approver. Is this possible and how to you do it?
    In the User Guide it mentions using Application Developer and changing the messages but it is very limited and does not allow me to change this particular message.
    I have looked at the workflow 'HRSS' but it uses the generic approvals workflow but I can't see how it generates the message. It mentions in the User Guide to use XML and business events but again gives very little detail.
    Can anyone provide more information on how to do this?
    Cheers

    I have edited one of the Rules created in Transaction Type: iRecruitment Vacancy Approval. Under the Actions Section, I have added the approver 2,3,4
    Action Type Action
    approval-group chain of authority Require approval from APPROVER 1
    approval-group chain of authority Require approval from APPROVER 2
    approval-group chain of authority Require approval from APPROVER 3
    approval-group chain of authority Require approval from APPROVER 4
    approval-group chain of authority Require approval from HEAD_OF_HR1
    approval-group chain of authority Require approval from HEAD_OF_HR2
    but due to this change the approval is going to be in the sequential direction, for example APPROVER 1, APPROVER 2,3,4 then HEAD OF HR1,2 instead we need who ever approve first then it goes to 2nd level and approved by one of the head of hr as I mentioned above. Kindly tell me this action type I am using for this is correct or should we need to create another action type or should we need to amend approver group SQL statement or any other way which we can acheive the desired goal. I am looking forward to listen you soon and thanks in advance for you support
    Edited by: user11969686 on Dec 11, 2009 6:26 AM

  • IRecruitment Create Vacancy Approval need to change

    Hi All,
    I need to change the approval style of Create Vacancy, currently it is configured as follows
    1. Approver 1 approves the vacancy
    2 . Approver 2 Finally approves the vacancy after approver 1.
    Now the change is the on level 1 we need to four approver who ever first approve the vacancy it goes to level 2 and on this level there would be two approvers whoever approves the vacancy no need for all in both level.
    kindly tell me how can I configure Rules , Attributes, Conditions , actions and approver groups in AME business Analyst Resp.
    Regards,

    I have edited one of the Rules created in Transaction Type: iRecruitment Vacancy Approval. Under the Actions Section, I have added the approver 2,3,4
    Action Type Action
    approval-group chain of authority Require approval from APPROVER 1
    approval-group chain of authority Require approval from APPROVER 2
    approval-group chain of authority Require approval from APPROVER 3
    approval-group chain of authority Require approval from APPROVER 4
    approval-group chain of authority Require approval from HEAD_OF_HR1
    approval-group chain of authority Require approval from HEAD_OF_HR2
    but due to this change the approval is going to be in the sequential direction, for example APPROVER 1, APPROVER 2,3,4 then HEAD OF HR1,2 instead we need who ever approve first then it goes to 2nd level and approved by one of the head of hr as I mentioned above. Kindly tell me this action type I am using for this is correct or should we need to create another action type or should we need to amend approver group SQL statement or any other way which we can acheive the desired goal. I am looking forward to listen you soon and thanks in advance for you support
    Edited by: user11969686 on Dec 11, 2009 6:26 AM

  • Legal Entity wise AP invoice approval workflow

    HI All,
    I m in the process of configuring AP Invoice approval workflow for multiple legal entities. Can someone pls instruct me how to set up different workflows for different legal entities.
    My requirement is as follows:
    Legal Entity A
    If User Test 1 create AP Invoice then his invoice should go to approver1
    Legal Entity B
    If User Test 2 create AP Invoice then his invoice should go to approver2
    I have done the set up for one legal entity and its working fine. I have used action type as " approval-group chain of authority" and used Approver type as HR People and assigned relevant approver to it. My problem is how can i segregate legal entity wise approvers. Because now both legal entities invoices are directing to same approver.
    Thanks .

    Hi,
    Using the Sysadmin responsibility, please submit "Workflow Background Process" with the below parameters and see if it helps:
    Process Deferred: Y
    Process Timeout: Y
    Please also see the following notes;
    How to Manually Process the Events from Workflow Queues When The Deferred Agent Listener Won't Start [ID 953103.1]
    Workflow Background Process Does Not Progress Shipped Lines: Stuck in Fulfill - Deferred [ID 804133.1]
    Hope this helps!
    Best Regards

  • Apple TV 2 will not play purchased videos from an authorized computer

    I have been trying all night to get purchased videos from an authorized computer play on my Apple TV 2. My computer is authorized and I have not reached my limit of authorized computers. I even went as far as to completly reset all the settings on my Apple TV; the music plays fine and it can list all my availible video content but as soon as I select a video of any kind it gives me the following error: Authorization is Required. You must authorize your computer with the account used to purchased the content. I am going crazy, I can access the same videos from my Home Sharing on my iPhone or from another computer using iTunes. I have tried deauthorizing the computer several times with no luck. Any suggestions?

    also could be your HDMI cable......
    from another thread.....so exactly what does your Apple TV say to you exactly, when it won't play the movies???
    "If this is for the new ATV2, then the cable you use to connect to your TV must be HDCP capable. Some are. Some aren't. I bought a cheap one that was not and it didn't work. I bought a slightly more expensive one that was HDCP compliant and all is fine now.
    From the ATV webpage:
    Compatible with high-definition TVs with HDMI and capable of 720p 60/50Hz (see note 2)
    Bottom of page.
    Note 2: Requires HDCP when playing protected content.
    https://discussions.apple.com/message/12577679#12577679

Maybe you are looking for

  • Error in RWB for EbXML Message

    Hello Experts, We are facing an issue with the Seeburger Adapter. When we trigger message TO THE sEEBURGER sYSTEM USING THE eBxml adapter, the message is successfully processed in PI 7.1 and shows a checkered flag. But on analyzing the related messag

  • Audio CD Spinning Noise

    Hi there, I recently purchased my father a mac mini to sit as a media centre under his LCD TV. All hooked up great and it all works very well... apart from audio CD's, they spin at a ridiculous speed meaning that when the sound is low all you can hea

  • Video chating with MS Messenger Live

    can it be done in iChat? (newbie) many thanks, S

  • Mountain Lion Unstable?

    I have had this new MacBook Pro with Mountain Lion pre-installed, for a week now, migrating from OS 10.4.11 and installing new software and updates to old.  I updated right away to 10.8.2. Strange things happen: - Windows and apps open mysteriously -

  • Mixed Signal Graph, Selected Cursors, and Cursor Position Problems

    I'm trying to work around an issue with a single multiplot cursor on a mixed-signal graph (doesn't work right, R&D bug report #100830) by grabbing the selected cursor x-position and updating that position across all four cursors, as seen below: Howev