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
-
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,
MahadevHi,
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,
HituWell, 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.
juanHello 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,
JaiHI 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
FranciscoDefinition 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
regdsHi,
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,
NRHi 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
-
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. 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
-
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