Reg: Can I code in standard implementation of a BADI "WCM_DECOUPLING"

Hi all,
I'm trying to use a  BADI (WCM_DECOUPLING) for transaction IW32. But when I tried to create an implementation for this BADI in SE19, it is throwing the following error "BADI definition WCM_DECOUPLING is only provided for SAP internal use".
Then I've checked the attributes of this BADI in se18, an option "within SAP" is checked.
I've checked the old threads also, but I couldn't find any help to use this BADI somehow.
MY QUESTION: later, I've found using transaction SE84 that this BADI is already implemented by standard SAP in the name
"WCM_DECOUPLING_IMPL" and activated. But, it's runtime behavior is shown as "EA-PLM is deactivated; implementation will not be called". Can I use this standard implementation to code my changes or validations.
Thanks,
Rajan U

Dear Shahin,
Thanks for your prompt reply.
I've adapted the same method (SE24) to find this BADI. I see other BADIs doesn't have the required parameters flowing in. That is the reason why I am trying to some how implement this BADI.
My requirement: After creating work order in Iw31, a list of people has to approve the work order by using permit (ech one will have the unique permit key). For this a pop window containing table control of permit keys listed in the order is provided.
I've to place a check/validation to ensure that these permits are approved in the same order as it has to be done.
for example: 1) Functional head 2) General manager 3) Managing director
I've also searched for user exits, but, on that is suitable for this req is not working.
Please suggest me a method to do this.
or
if I create ZBADI i.e. ZWCM_DECOUPLING, will this be called inside the standard program? will the exit handler call this?
Please give me your suggestion.
Thanks,
Rajan U
Edited by: Rajan Usman Basha on Jun 2, 2011 5:45 AM

Similar Messages

  • De-activate standard implementation for New BADI ES_FIN_EBPP_MAIL_PUT_DATA

    Hi All,
    I have a requirement where i need to deactivate the standard implementation for the New BADI 'ES_FIN_EBPP_MAIL_PUT_DATA'
    and activate my Z-Implementation. I have been able to activate the Z-implementation (i.e. by checking the checkbox Default implementation it allows me to activate the Z-implementation).
    Also, the BADI ES_FIN_EBPP_MAIL_PUT_DATA is a single use BADI, so technically multiple implementations should not be possible. bus somehow it has allowed me to activate my Z-Implementation along with the standard implementation being active.
    But the problem is although the Z-implementation is active, as the standard implementation is also active, the standard implementation overwrites the Z-implementation, therefore my code is never executed.
    Please advise on how to deactivate the standard implementation and implement the Z-Implementation.
    Thanks!

    cl_def_im_address_subscreen is only a sap default class that you can use for creating your own implementation. If you want to see the existing implementations, transaction SE18, enter Classic BAdI ADDRESS_SUBSCREEN and click menu enhancement implementation, overview. Check if the existing implementation corresponds to a custom implementation (then you can modify it), or to a sap or partner product (then you can't modify it, or you can use the enhancement framework to enhance it).

  • Can u change the Standard definition of the badi.

    Hi ,
    We have a Badi definition FAGL_COFI_ACDOC_MOD which is used for FI postings.
    Here in definition filter value is specified on MANDT field, which happens to be client specifc..
    Now my requirement is country specific...so i can change the existing badi definition and add up new filter value.
    I want to know the consequences of this change.
    Any help in this regard will be highly appreciated.
    Regards,
    Mahadev

    Hi,
    thanks for the replies,
    Now the requirement is cancelled,
    so no worries with business,
    but still i have a doubt whether we can do it...
    Thanks,
    Mahadev

  • How to Get Source Code of Standard ESS Component.

    Hi,
    I need to implement SAP Note 904107, in ESS ( Personal Info.) package.  However no tracks are maintained in NWDI for ESS.
    Please suggest me from where I can get Source Code for Standard SAP Web Dynpro component VcPerFamilyBEReview .
    I read in some blogs and its suggested to create Track in NWDI using ESS package which is deployed on server.  Please provide detail procedure, doc. and links for this.
    If any other approach is there to get sorce code please suggest.

    Hi,
    VcPerFamilyBEReview component is found in the DC sap.com/essbefam
    check these links to create track in NWDI
    [https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/e0b2b146-5776-2910-4a8f-9b3190eab060]
    [https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/7014086d-3fd9-2910-80bd-be3417810c6f]
    [https://www.sdn.sap.com/irj/sdn/wiki?path=/display/java/netweaver%2bdevelopment%2binfrastructure%2b(NWDI)]
    Regards,
    vv

  • PT_ABS_REQ - Deactivate Standard Implementation

    Hi All,
    I have  a requirement to restrict the employee from applying Privilege Leave in previous financial year through the ESS.
    For this I have implemented PT_ABS_REQ with a Z BADI - ZHR_PT_ABS_REQ.
    I have copied the existing class CL_PT_ARQ_REQ_EXIT code into my Z-class and added my logic to the required method.
    However, after activating and adding my BADI through PTARQ I am getting an error in ESS:
    RFC_SYSTEM_FAILURE.
    The problem is I am unable to deactivate the standard implemention, even though my Z-BADI is activated and getting called.
    In both PTARQ and SPRO, I see my Z-BADI asActive and Implemented. (I am unable to see the standard implementation here).
    Anyone can throw some light on this??
    Thanks.

    whenever you use the badi you need to ensure that you copied all the standard
    methods of the badi and enhanced which one you need
    Please check your coding.
    IF_EX_PT_ABS_REQ~CHECK_TIME_CONSTR_FOR_SUBTY to control the leave
    combination.ie for example
    Create  a custom implementation Z* method
    IF_EX_PT_ABS_REQ~CHECK_TIME_CONSTR_FOR_SUBTY to check the leave
    combinations..

  • How to uncomment code in Standard SAP Programs

    Hi Experts,
    how to uncomment entire code  of standard SAP programs  which is commented .
    Standard SAP Program is fully commented,i have to uncomment it ,to work it as normal.
    i saw that some lines * / * like  this are there in the commented code .
    what is the way to un comment this ?
    Thanks in advance,
    Regards,
    Hitu

    Well, if it is commented by your company - This doesnt ask for access key but if it is commented by SAP and you want to uncomment, you need access key.
    You can ask basis guys to get access key for the object. you need to provide the program name and other information.
    Other information: - go to the GOTO on application tool bar and select object direct entry.... you need to provide the full object key.
    To uncomment the code - select the lines and right click - uncomment . This can only be done in editable mode.

  • How to add a custom code to standard sap menu

    Hello guru,
    will you please explain me how to add a custom code to standard sap menu?
    thanks in advance.
    Best regards.
    juan

    Hello juan,
    with SE43N you can add custom transaction codes to the existing menues.
    see http://help.sap.com//saphelp_erp2004/helpdata//EN/00/783b377bfdcf61e10000009b38f936/frameset.htm
    regards
    johannes

  • Can we add the standard includes inside a function exit.

    Hi,
    Can we add the standard includes inside a function exit.
    I want to add 4 to 5 standard includes. If iam adding it it says report or program already exists.
    Can anyone tell me is it possible or we can modify the only the data which is coming to that function module .
    Please help me on this.
    Thanks,
    Rose.

    hi santhosh,
      The data needed for those includes are also exist in the funtion module exit. I want to add those includes and in one include just i want to add some 10 to 15 lines of code. Is it possible.
    If i include all those includes inside the function exit it says report or program name already exists. When i double clicked on the error it takes me to a line in 1 include which has function-pool statement.
    How can i eradicate this error.
    Can u please help me on this.

  • How to get code from standard built-in

    How to get code from standard built-in

    I would recomend to copy all includes you need into your program.
    But if it is not possible for some reason,
    PERFORM <formname> IN PROGRAM <progname>
    can help you.
    I hope it helps
    Vlado

  • Why can not catch the standard BACK event in ALV's USER_COMMAND event,

    Hi expert, why i can not catch the standard BACK event in ALV's USER_COMMAND event,
    Code:
    DATA G_CON_UC_FORM   TYPE SLIS_FORMNAME VALUE 'F_USER_COMMAND',
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          I_CALLBACK_PROGRAM      = SY-REPID
          I_CALLBACK_TOP_OF_PAGE  = G_CON_FORM
          I_CALLBACK_USER_COMMAND = G_CON_UC_FORM
          IT_FIELDCAT             = G_TAB_FIELDCAT
          IT_SORT                 = G_TAB_SORT_INF
          I_SAVE                  = G_CON_U
    *<<<Liang
        IT_EVENTS               = G_TAB_ALV_EVENTS
    *<<<Liang
        TABLES
          T_OUTTAB                = G_TAB_OUTPUT_DATA
        EXCEPTIONS
          PROGRAM_ERROR           = 1
          OTHERS                  = 2.
    *&      Form  F_USER_COMMAND
          ALV USER COMMAND processing
    FORM F_USER_COMMAND .
      IF SY-UCOMM = '&FO3'.
        LEAVE TO SCREEN 0.
      ENDIF.
    ENDFORM.                    " F_USER_COMMAND
    When I set breakpoint on this subrouting ,and try to click stardard  BACK or CANCEL button, the callback form do not run, but if double click one of line of alv report, the callback form works well,
    so why??

    hi
    good
    check this report and change your code accordingly.
    THESE LINES ARE FOR THE MAIN PROGRAM ***
    SAP V40B ***
    REPORT Z_PICK_LIST .
    TABLES: RESB.
    SELECTION-SCREEN BEGIN OF BLOCK BL1 WITH FRAME TITLE TEXT-BL1.
    SELECT-OPTIONS: S_WERKS FOR RESB-WERKS," Plant
                    S_AUFNR FOR RESB-AUFNR," Order number
                    S_BDTER FOR RESB-BDTER." Req. date
    SELECTION-SCREEN END OF BLOCK BL1.
    PARAMETERS: P_VARI LIKE DISVARIANT-VARIANT DEFAULT '/STANDARD'.
    DATA: BEGIN OF OUT OCCURS 10,
            AUFNR LIKE RESB-AUFNR,         " Order number
            MATNR LIKE RESB-MATNR,         " Material
            BDMNG LIKE RESB-BDMNG,         " Requirements in UM
            MEINS LIKE RESB-MEINS,         " Unit of Measure (UM)
            ERFMG LIKE RESB-ERFMG,         " Requirements in UE
            ERFME LIKE RESB-ERFME,         " Unit of Entry (UE)
            MAKTX LIKE MAKT-MAKTX,         " Mat. description
          END OF OUT.
    INCLUDE Z_ALV_VARIABLES.
    INITIALIZATION.
      REPNAME = SY-REPID.
      PERFORM INITIALIZE_FIELDCAT USING FIELDTAB[].
      PERFORM BUILD_EVENTTAB USING EVENTS[].
      PERFORM BUILD_COMMENT USING HEADING[].
      PERFORM INITIALIZE_VARIANT.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_VARI.
      PERFORM F4_FOR_VARIANT.
    AT SELECTION-SCREEN.
      PERFORM PAI_OF_SELECTION_SCREEN.
    START-OF-SELECTION.
      PERFORM GET_ORDERS.
      PERFORM GET_MATERIAL_DESCRIPTION.
    END-OF-SELECTION.
      PERFORM BUILD_LAYOUT USING LAYOUT.
      PERFORM BUILD_PRINT  USING PRINTS.
      PERFORM WRITE_USING_ALV.
          FORM INITIALIZE_FIELDCAT                               *
    -->  P_TAB                                                         *
    FORM INITIALIZE_FIELDCAT USING P_TAB TYPE SLIS_T_FIELDCAT_ALV.
      DATA: CAT TYPE SLIS_FIELDCAT_ALV.
      CLEAR CAT.
    ENDFORM.                               " INITIALIZE_FIELDCAT
    *&      Form  GET_ORDERS
          text
    FORM GET_ORDERS.
      SELECT AUFNR MATNR BDMNG MEINS ERFMG ERFME
             FROM RESB
             APPENDING TABLE OUT
             WHERE XLOEK EQ SPACE          " deletion indicator
             AND   XWAOK EQ 'X'            " goods movement indicator
             AND   WERKS IN S_WERKS        " plant
             AND   BDTER IN S_BDTER        " req. date
             AND   AUFNR IN S_AUFNR.       " pr. order
    ENDFORM.                               " GET_ORDERS
    *&      Form  GET_MATERIAL_DESCRIPTION
          text
    FORM GET_MATERIAL_DESCRIPTION.
      SORT OUT BY MATNR.
      LOOP AT OUT.
        SELECT SINGLE MAKTX
               INTO OUT-MAKTX
               FROM MAKT
               WHERE MATNR EQ OUT-MATNR
               AND   SPRAS EQ 'EN'.
        MODIFY OUT.
      ENDLOOP.
      SORT OUT BY AUFNR MATNR.
    ENDFORM.                               " GET_MATERIAL_DESCRIPTION
          FORM TOP_OF_PAGE                                              *
    FORM TOP_OF_PAGE.
      DATA: L_POS TYPE P.
    first line
      WRITE:/ TEXT-001.                    " Plant:
      IF S_WERKS-HIGH NE SPACE.
        WRITE: S_WERKS-LOW, TEXT-TO1, S_WERKS-HIGH.
      ELSEIF S_WERKS-LOW NE SPACE.
        LOOP AT S_WERKS.
          WRITE: S_WERKS-LOW.
        ENDLOOP.
      ELSEIF S_WERKS-LOW EQ SPACE.
        WRITE: TEXT-ALL.
      ENDIF.
      L_POS = ( SY-LINSZ DIV 2 ) - ( STRLEN( TEXT-TIT ) DIV 2 ).
      POSITION L_POS. WRITE: TEXT-TIT.
      L_POS = SY-LINSZ - 20.
      POSITION L_POS. WRITE: TEXT-011, SY-UNAME RIGHT-JUSTIFIED.  " User:
    second line
      WRITE:/ TEXT-002.                    " Order:
      IF S_AUFNR-HIGH NE SPACE.
        WRITE: S_AUFNR-LOW, TEXT-TO1, S_AUFNR-HIGH.
      ELSEIF S_AUFNR-LOW NE SPACE.
        LOOP AT S_AUFNR.
          WRITE: S_AUFNR-LOW.
        ENDLOOP.
      ELSEIF S_AUFNR-LOW EQ SPACE.
        WRITE: TEXT-ALL.
      ENDIF.
      L_POS = SY-LINSZ - 20.
      POSITION L_POS. WRITE: TEXT-012,SY-DATUM.      " Date:
    third line
      WRITE:/ TEXT-003.                    " Req. Date:
      IF S_BDTER-HIGH(1) NE '0'.
        WRITE: S_BDTER-LOW, TEXT-TO1, S_BDTER-HIGH.
      ELSEIF S_BDTER-LOW(1) NE '0'.
        LOOP AT S_BDTER.
          WRITE: S_BDTER-LOW.
        ENDLOOP.
      ELSEIF S_BDTER-LOW(1) EQ '0'.
        WRITE: TEXT-ALL.
      ENDIF.
      L_POS = SY-LINSZ - 20.
      POSITION L_POS. WRITE: TEXT-013, SY-PAGNO.   " Page:
    ENDFORM.                               " TOP_OF_PAGE
          FORM END_OF_LIST                                              *
    FORM END_OF_LIST.
      DATA: L_POS TYPE P.
      ULINE.
      WRITE:/ '|', TEXT-021.      " Delivered by:
      L_POS = SY-LINSZ DIV 2.
      POSITION L_POS. WRITE: '|', TEXT-031.            " Received by:
      L_POS = SY-LINSZ.
      POSITION L_POS. WRITE: '|'.
      WRITE:/ '|'.
      L_POS = SY-LINSZ DIV 2.
      POSITION L_POS. WRITE: '|'.
      L_POS = SY-LINSZ.
      POSITION L_POS. WRITE: '|'.
      ULINE.
      WRITE:/ '|', TEXT-012.      " Date:
      L_POS = SY-LINSZ DIV 2.
      POSITION L_POS. WRITE: '|', TEXT-012.            " Date:
      L_POS = SY-LINSZ.
      POSITION L_POS. WRITE: '|'.
      WRITE:/ '|'.
      L_POS = SY-LINSZ DIV 2.
      POSITION L_POS. WRITE: '|'.
      L_POS = SY-LINSZ.
      POSITION L_POS. WRITE: '|'.
      ULINE.
    ENDFORM.                               " END_OF_LIST
    *&      Form  WRITE_USING_ALV
          text
    FORM WRITE_USING_ALV.
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
           EXPORTING
                I_PROGRAM_NAME     = REPNAME
                I_INTERNAL_TABNAME = 'OUT'
                I_INCLNAME         = REPNAME
           CHANGING
                CT_FIELDCAT        = FIELDTAB.
      IF SY-SUBRC <> 0.
        WRITE: 'SY-SUBRC: ', SY-SUBRC, 'REUSE_ALV_FIELDCATALOG_MERGE'.
      ENDIF.
      CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
           EXPORTING
                I_CALLBACK_PROGRAM       = REPNAME
               i_callback_pf_status_set = 'PF_STATUS_SET'
               i_callback_user_command  = 'USER_COMMAND'
                I_STRUCTURE_NAME         = 'OUT'
                IS_LAYOUT                = LAYOUT
                IT_FIELDCAT              = FIELDTAB
                I_DEFAULT                = 'A'
                I_SAVE                   = G_SAVE
                IS_VARIANT               = G_VARIANT
                IT_EVENTS                = EVENTS[]
                IS_PRINT                 = PRINTS
           TABLES
                T_OUTTAB                 = OUT.
      IF SY-SUBRC <> 0.
        WRITE: 'SY-SUBRC: ', SY-SUBRC, 'REUSE_ALV_LIST_DISPLAY'.
      ENDIF.
    ENDFORM.                               " WRITE_USING_ALV
    THESE LINES ARE FOR THE INCLUDE ***
    ***INCLUDE Z_ALV_VARIABLES .
    TYPE-POOLS: SLIS.
    DATA: FIELDTAB TYPE SLIS_T_FIELDCAT_ALV,
          HEADING  TYPE SLIS_T_LISTHEADER,
          LAYOUT   TYPE SLIS_LAYOUT_ALV,
          EVENTS   TYPE SLIS_T_EVENT,
          REPNAME  LIKE SY-REPID,
          F2CODE   LIKE SY-UCOMM VALUE  '&ETA',
          PRINTS   TYPE SLIS_PRINT_ALV,
          TITLE(40) TYPE C,
          G_SAVE(1) TYPE C,
          G_EXIT(1) TYPE C,
          G_VARIANT LIKE DISVARIANT,
          GX_VARIANT LIKE DISVARIANT.
    CONSTANTS: FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE',
               FORMNAME_END_OF_PAGE TYPE SLIS_FORMNAME VALUE 'END_OF_PAGE',
               FORMNAME_END_OF_LIST TYPE SLIS_FORMNAME VALUE 'END_OF_LIST',
               FORMNAME_BEFORE_LINE TYPE SLIS_FORMNAME VALUE 'BEFORE_LINE',
               FORMNAME_AFTER_LINE TYPE SLIS_FORMNAME VALUE 'AFTER_LINE'.
          FORM MAIN_STATEMENTS                                          *
    THIS IS THE CODE THAT MUST BE INSERTED IN THE MAIN PROGRAM
    FORM MAIN_STATEMENTS.
    Declare the parameter P_VARI wherever you want it. If you don't
    want it, hide it with NO-DISPLAY, but it must exist.
    parameters: p_vari like disvariant-variant. " ALV Variant
    You have to add the following line after the data and parameter
    declaration:
    include z_alv_variables.
    Then, after the data/parameter declaration, add these lines:
    *initialization.
    repname = sy-repid.
    perform initialize_fieldcat using fieldtab[].
    perform build_eventtab using events[].
    perform build_comment using heading[].
    perform initialize_variant.
    If you are using the variable P_VARI (ALV Variant), also add this:
    *at selection-screen on value-request for p_vari.
    perform f4_for_variant.
    *at selection-screen.
    perform pai_of_selection_screen.
    After the "END-OF-SELECTION" statement, add these lines:
    perform build_layout using layout.
    perform build_print  using prints.
    perform write_using_alv.
    You also have to create the following forms: (you can find samples
    in this program)
    INITIALIZE_FIELDCAT
    USER_COMMAND     (only if you are creating a STATUS)
    WRITE_USING_ALV
    ENDFORM.
    *&      Form  INITIALIZE_FIELDCAT_SAMPLE
          THIS IS A SAMPLE, DO NOT USE THIS FORM IN YOUR PROGRAM
         -->P_FIELDTAB[]  text                                           *
    FORM INITIALIZE_FIELDCAT_SAMPLE USING P_TAB TYPE SLIS_T_FIELDCAT_ALV.
      DATA: CAT TYPE SLIS_FIELDCAT_ALV.
      CLEAR CAT.                           " Always clear before use
      CAT-TABNAME = 'I'.                   " Your internal table
      CAT-REF_TABNAME = 'ZCUSTMAS'.  " The data dictionary reference table
      CAT-FIELDNAME = 'KUNNR'.       " Name of your field in the itable.
      CAT-COL_POS   = 1.                   " Output position
      APPEND CAT TO P_TAB.
      CAT-FIELDNAME = 'NAME1'.             " Next field
      CAT-COL_POS   = 2.
      APPEND CAT TO P_TAB.
      CAT-FIELDNAME = 'STRAS'.             " and the next
      CAT-COL_POS   = 3.
      APPEND CAT TO P_TAB.
      CAT-FIELDNAME = 'LOEVM'.
      CAT-SELTEXT_S = 'Del'.         " You can always override the descrip-
      CAT-SELTEXT_M = 'Delivery'.          " tion (short, medium, large)
      CAT-SELTEXT_L = 'Delivery Num'.
      CAT-COL_POS   = 4.
      APPEND CAT TO P_TAB.
      CAT-FIELDNAME = 'FKIMG'.
      CAT-DO_SUM    = 'X'.                 " You want totals calculated.
      CAT-NO_OUT    = 'X'.                 " and hidden.
      APPEND CAT TO P_TAB.
    ENDFORM.                               " INITIALIZE_FIELDCAT
    *&      Form  BUILD_EVENTTAB
          THIS IS THE SAME FOR ALL THE PROGRAMS
         -->P_EVENTS[]  text                                             *
    FORM BUILD_EVENTTAB USING P_EVENTS TYPE SLIS_T_EVENT.
      DATA: LS_EVENT TYPE SLIS_ALV_EVENT.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
           EXPORTING
                I_LIST_TYPE = 0
           IMPORTING
                ET_EVENTS   = P_EVENTS.
      READ TABLE P_EVENTS WITH KEY NAME = SLIS_EV_TOP_OF_PAGE
                               INTO LS_EVENT.
      IF SY-SUBRC = 0.
        MOVE FORMNAME_TOP_OF_PAGE TO LS_EVENT-FORM.
        APPEND LS_EVENT TO P_EVENTS.
      ENDIF.
      CLEAR LS_EVENT.
      READ TABLE P_EVENTS WITH KEY NAME = SLIS_EV_END_OF_LIST
                               INTO LS_EVENT.
      IF SY-SUBRC = 0.
        MOVE FORMNAME_END_OF_LIST TO LS_EVENT-FORM.
        APPEND LS_EVENT TO P_EVENTS.
      ENDIF.
      CLEAR LS_EVENT.
      READ TABLE P_EVENTS WITH KEY NAME = SLIS_EV_BEFORE_LINE_OUTPUT
                               INTO LS_EVENT.
      IF SY-SUBRC = 0.
        MOVE FORMNAME_BEFORE_LINE TO LS_EVENT-FORM.
        APPEND LS_EVENT TO P_EVENTS.
      ENDIF.
      CLEAR LS_EVENT.
      READ TABLE P_EVENTS WITH KEY NAME = SLIS_EV_AFTER_LINE_OUTPUT
                               INTO LS_EVENT.
      IF SY-SUBRC = 0.
        MOVE FORMNAME_AFTER_LINE TO LS_EVENT-FORM.
        APPEND LS_EVENT TO P_EVENTS.
      ENDIF.
      CLEAR LS_EVENT.
      READ TABLE P_EVENTS WITH KEY NAME = SLIS_EV_END_OF_PAGE
                               INTO LS_EVENT.
      IF SY-SUBRC = 0.
        MOVE FORMNAME_END_OF_PAGE TO LS_EVENT-FORM.
        APPEND LS_EVENT TO P_EVENTS.
      ENDIF.
    ENDFORM.                               " BUILD_EVENTTAB
    *&      Form  BUILD_COMMENT
    NOT REALLY NEEDED, BUT I'LL LEAVE IT THERE, JUST IN CASE...
         -->P_HEADING[]  text                                            *
    FORM BUILD_COMMENT USING P_HEADING TYPE SLIS_T_LISTHEADER.
      DATA: HLINE TYPE SLIS_LISTHEADER,
            TEXT(60) TYPE C,
            SEP(20) TYPE C.
      CLEAR: HLINE, TEXT.
      HLINE-TYP  = 'H'.
    write: text-101 to text+23.
      HLINE-INFO = TEXT.
      APPEND HLINE TO P_HEADING.
    ENDFORM.                               " BUILD_COMMENT
    *&      Form  INITIALIZE_VARIANT
    VERY IMPORTANT WHEN YOU USE VARIANTS!!!
    FORM INITIALIZE_VARIANT.
      G_SAVE = 'A'.
      CLEAR G_VARIANT.
      G_VARIANT-REPORT = REPNAME.
      GX_VARIANT = G_VARIANT.
      CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
           EXPORTING
                I_SAVE     = G_SAVE
           CHANGING
                CS_VARIANT = GX_VARIANT
           EXCEPTIONS
                NOT_FOUND  = 2.
      IF SY-SUBRC = 0.
        P_VARI = GX_VARIANT-VARIANT.
      ENDIF.
    ENDFORM.                               " INITIALIZE_VARIANT
    *&      Form  PAI_OF_SELECTION_SCREEN
    ALSO FOR VARIANTS
    FORM PAI_OF_SELECTION_SCREEN.
      IF NOT P_VARI IS INITIAL.
        MOVE G_VARIANT TO GX_VARIANT.
        MOVE P_VARI TO GX_VARIANT-VARIANT.
        CALL FUNCTION 'REUSE_ALV_VARIANT_EXISTENCE'
             EXPORTING
                  I_SAVE     = G_SAVE
             CHANGING
                  CS_VARIANT = GX_VARIANT
             EXCEPTIONS
                  WRONG_INPUT   = 1
                  NOT_FOUND     = 2
                  PROGRAM_ERROR = 3.
        IF SY-SUBRC EQ 0.
          G_VARIANT = GX_VARIANT.
        ELSE.
          PERFORM INITIALIZE_VARIANT.
        ENDIF.
      ELSE.
        PERFORM INITIALIZE_VARIANT.
      ENDIF.
    ENDFORM.                               " PAI_OF_SELECTION_SCREEN
    *&      Form  F4_FOR_VARIANT
          text
    FORM F4_FOR_VARIANT.
      CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
           EXPORTING
                IS_VARIANT = G_VARIANT
                I_SAVE     = G_SAVE
           IMPORTING
                E_EXIT     = G_EXIT
                ES_VARIANT = GX_VARIANT
           EXCEPTIONS
                NOT_FOUND  = 2.
      IF SY-SUBRC = 2.
        MESSAGE ID SY-MSGID TYPE 'S'      NUMBER SY-MSGNO
                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ELSE.
        IF G_EXIT = SPACE.
          P_VARI = GX_VARIANT-VARIANT.
        ENDIF.
      ENDIF.
    ENDFORM.                               " F4_FOR_VARIANT
    *&      Form  BUILD_LAYOUT
    STANDARD LAYOUT
         -->P_LAYOUT  text                                               *
    FORM BUILD_LAYOUT USING P_LAYOUT TYPE SLIS_LAYOUT_ALV.
      P_LAYOUT-F2CODE       = F2CODE.
      P_LAYOUT-ZEBRA        = 'X'.
    p_layout-detail_popup = 'X'.
      P_LAYOUT-TOTALS_TEXT  = SPACE.
      P_LAYOUT-SUBTOTALS_TEXT = SPACE.
    ENDFORM.                               " BUILD_LAYOUT
          FORM BUILD_PRINT                                              *
    STANDARD PRINT OPTIONS                                             *
    -->  P_PRINT                                                       *
    FORM BUILD_PRINT USING P_PRINT TYPE SLIS_PRINT_ALV.
      P_PRINT-NO_PRINT_LISTINFOS = 'X'.
      P_PRINT-NO_PRINT_SELINFOS  = ' '.
    ENDFORM.                               " BUILD_PRINT
          FORM PF_STATUS_SET                                            *
    NAME YOUR STATUS ALV. IF YOU NEED IT..                             *
    FORM PF_STATUS_SET USING EXTAB TYPE SLIS_T_EXTAB.
      SET PF-STATUS 'ALV' EXCLUDING EXTAB.
    ENDFORM.                               " PF_STATUS_SET
          FORM USER_COMMAND_SAMPLE                                      *
    -->  UCOMM                                                         *
    -->  SELFIELD                                                      *
    FORM USER_COMMAND_SAMPLE USING UCOMM    LIKE SY-UCOMM
                               SELFIELD TYPE SLIS_SELFIELD.
      CASE UCOMM.
        WHEN 'MSXL'.                       " Export to Excel
         perform set_excel_export.
          CLEAR UCOMM.
        WHEN 'MM03'.
         set parameter id 'MAT' field selfield-value.
         call transaction 'MM03' and skip first screen.
          CLEAR UCOMM.
        WHEN 'BGR1'.
         perform fill_available.
         perform graph_available.
          CLEAR UCOMM.
        WHEN 'DOCU'.
         call function 'Z_HELP' exporting repname = repname.
      ENDCASE.
    ENDFORM.                               " USER_COMMAND
    *&      Form  WRITE_USING_ALV_SAMPLE
    *THIS IS A SAMPLE AND MUST BE WRITTEN DIRECTLY IN THE MAIN PROGRAM
    FORM WRITE_USING_ALV_SAMPLE.
    YOU CAN MERGE WITH A DATA DICTIONARY TABLE USING THIS:
    call function 'REUSE_ALV_FIELDCATALOG_MERGE'
          exporting
               i_program_name     = repname
               i_internal_tabname = 'I'
               i_inclname         = repname
          changing
               ct_fieldcat        = fieldtab.
    if sy-subrc <> 0.
       write: 'SY-SUBRC: ', sy-subrc, 'REUSE_ALV_FIELDCATALOG_MERGE'.
    endif.
    OR JUST DISPLAY IT USING THIS:
    call function 'REUSE_ALV_LIST_DISPLAY'
          exporting
               i_callback_program       = repname
               i_callback_pf_status_set = 'PF_STATUS_SET'
               i_callback_user_command  = 'USER_COMMAND'
               i_structure_name         = 'I'
               is_layout                = layout
               it_fieldcat              = fieldtab
               i_default                = 'A'
               i_save                   = g_save
               is_variant               = g_variant
               it_events                = events[]
               is_print                 = prints
          tables
               t_outtab                 = i.
    if sy-subrc <> 0.
       write: 'SY-SUBRC: ', sy-subrc, 'REUSE_ALV_LIST_DISPLAY'.
    endif.
    ENDFORM.                               " WRITE_USING_ALV
    thanks
    mrutyun^

  • Sourcing 7.0 Standard Implementation Estimate

    Hello,
    We are looking to implement following standard features of SAP Souring 7.0 (on premise) for one of our customers:
    - Strategic Sourcing
    - CLM
    We will use Global Text Search without Optimizer and Contract Generation. Based on what I have read I have made a high level plan as follows
    Plan
    Installation and Requirements - 2 weeks
    Configuration - 4 weeks
    Data Load, Customization, 1 Integration with SRM and 1 workflow - 4 weeks
    Testing  - 2 weeks
    Training - 2 weeks
    Resources
    PM - 1
    Sourcing and CLM Consultant - 2
    Basis - 1
    Data Load and Testing - 2
    PI for Integration - 1
    Beanshell JAVA - 1
    XPDL Workflow - 1
    If the experienced people who have done such implementation can validate the same, it will be of great help.
    Regards,
    Jai

    HI Jai
    Plan
    Installation - 4 weeks
    Configuration - 4 - 6 weeks
    Data Load, Customization, Integration with SRM and workflow  6 - 8 weeks
    Testing - 2 - 4 weeks
    Training - 2 weeks
    Total: 5 - 6 months approx
    Resources
    PM - 1
    Sourcing and CLM Consultant - 1
    Basis - 1
    Data Load and Testing - 1
    PI for Integration - 1
    Beanshell JAVA - 1
    XPDL Workflow - 1
    Above plan and resources would be fine for any standard implementation. Assuming its for E-Sourcing without CLM and Optimizer
    Regards
    ~Ankush Mittal

  • BADI TRIP_POST_FI - Standard Implementation

    Hello Experts,
    I am trying to use the BADI TRIP_POST_FI, this is related to interface IF_EX_TRIP_POST_FI.
    But the standard class CL_EX_TRIP_POST_FI  is already using this interface, and has imple-mentation for all methods.
    So, although I can create a new implementation using definition TRIP_POST_Fi it is never exe-cuted because the system is is using the standard implementation.
    What can I do in this case ?
    Thanks
    Francisco

    Definition TRIP_POST_FI had been modify, that´s why the exist never was called. 
    Thanks any way.

  • Can throw some inputs on Implementation.

    Hi Nagamohan,
    Can throw some inputs on
    Implementation Flow write from Scratch......Role of Functional Consultant SCM in Implementation Project write from scratch. what are all the documents he will referring through -- start from the day one.
    Suppose let us consider an Example:-
    I want to Implement Oracle E-Business suite for X - Company. X is into Auto Components.
    Head Office is Located in Delhi,
    Manufacturing Plants in Hosur(Bangalore) , Chennai , Indore and It contains respective warehouses for Manufacturing Plants.
    Can you please guide how to go about this.
    I will be handling implementation project ...Please treat this important & Urgent
    regds

    Hi,
    FORMS TRACKING module provides an efficient method of tracking the various concessional forms, which are to be submitted to the Central Sales Tax Authorities to avail reduction in Sales Tax. The module can be extended to track and monitor other forms like Transit forms, Road Permits and Octroi forms. The product provides extensive analytical reports to supplement form-wise, customer-wise and period-wise details.
    OptiSuite FORMS TRACKING module integrates with the Sales and Purchase modules of SAP R/3.
    Main features of this module are:
    1) Details of different concessional forms can be tracked in relation to the Sales Order, Purchase Order and Stock Transfer Order in an ERP system
    Form type and eligible customers are identified based on Tax code & Condition types
    2) Forms of any nature can be incorporated for tracking and monitoring purposes through Form Type customisation
    3) Periodic reminders to the customers to issue the pending concessional forms can be sent as e-mail.
    4) Facility to provide Annexure to the vendor along with the form (as the form may not have enough space to enter details).
    5) Facility to track the Octroi forms
    6) FI posting of financial transactions for payments made and payments received, directly from the OPTISUITE FROMS TRACKING module
    7) Tracking of Transit forms and Road Permits
    8) Provision to estimate the liability incurred due to non-receipt of concessional forms
    9) Aging analysis can be done on forms that are due from customers
    Centralized access to all Registers - eases auditing efforts
    REWARD POINTS IF HELPFUL
    Regads
    Sai

  • How to extract the code of standard webdynpro application

    Hi,
    We are on ECC5.0, ERP2004 ESS/MSS ,EP6
    Can someone tell me, How can we get the code of a standard webdynpro application into NWDS.
    ( I am familiar that, to modify the standard ESS applications, we need to use JDI.)
    is it compulsory that , unless and until i have JDI i can't see that code , no other way?
    Regards,
    NR

    Hi Sharadha,
    after installing the JDI, what are the steps that needs to be done to get the code of standard Webdynpro application, lets say <b>sap.com/essinfam</b>.
    Can u post some links where I can get the step-by-step process of calling a Standard Webdynpro ESS application into my NWDS?
    Regards,
    NR

  • Can't instantiate default ORB implementation ....

    I'm developing a J2EE application, and I have this ERROR :
    java.lang.ExceptionInInitializerError: org.omg.CORBA.INITIALIZE: can't instantiate default ORB implementation com.visigenic.vbroker.orb.ORB minor code: 0 completed: No
         at java.lang.Throwable.fillInStackTrace(Native Method)
         at java.lang.Throwable.fillInStackTrace(Compiled Code)
         at java.lang.Throwable.(Compiled Code)
         at java.lang.Exception.(Compiled Code)
         at java.lang.RuntimeException.(RuntimeException.java:47)
         at org.omg.CORBA.SystemException.(SystemException.java:49)
         at org.omg.CORBA.INITIALIZE.(INITIALIZE.java:73)
         at org.omg.CORBA.INITIALIZE.(INITIALIZE.java:47)
         at org.omg.CORBA.ORB.create_impl(ORB.java:305)
         at
         at com.bo.wibean.WIServerImpl.init(WIServerImpl.java:214)
         at com.bo.wibean.WIServerImpl.(WIServerImpl.java:142)
         at retry.jspService(_retry.java:51)
    I'm using the OC4J r2. Some boby can help me ?

    Laurent,
    When are you getting this error ? Is this error coming from Oc4J or are you getting this error from JDeveloper 9i ?
    regards
    Debu Panda
    Oracle

Maybe you are looking for

  • Report Server Configuration Issue

    Hi all  , We are trying to install Report Server 11gR2 ( 11.1.2.1.0) , Weblogic Server is 10.3.6.0 on Sun Solaris on Sparc (64-bit) version 11. Java used is JDK1.7_21 . We first installed Weblogic and did a software only install of Forms and Reports

  • JSP client not Working

    Hi all I have made a simple webservice which retrives some fileds of a remote pointbase database.i have published this webservice in the uddiexplorer and generated the wsdl file for this webservice. now i made the proxies need by the client from the

  • I have an iPhone 4 and the iOS 4.3.5 download keeps failing - error states its corrupted.

    I have an iPhone 4 and the iOS 4.3.5 download keeps failing.  It downloads then I get a message stating that the download was corrupted and couldn't be installed.  I've tried it with bitdefender switched off.  I've tried it with it in airplane mode. 

  • 4.0EA1 Entering date values in table editor

    Hello out there, I don't know if that has been reported already. So I'm doing it again. I have a table containing a date column and set my NLS_DATE_FORMAT to 'DD.MM.YYYY HH24:MI:SS'. In version 3.2, I could enter date values just by giving a date wit

  • Menu buttons off TV screen

    I have a 2 hour idvd project with scene selections. On the main menu the button that gets highlighted when choosing "Play Movie" or "Scene Selection" is moved off to the left of the screen, but only on the TV. It's so far to the left it doesn't even