Regarding sy-uzeit
My OutPut should be like 12:2900 = hh:mmss
i want : column to be inserted between hh and mm in sy-uzeit
can any solve this.
Hi Vijay,
You can use the following code to get the ouptut time in the format hh:mmss
write:/ sy-uzeit using edit mask '__:____'.
The number of underscore characters in the edit mask depend on the number of digits you want to be displayed.For your requirement you will have 2 underscores before the colon and 4 after the colon.
Reward points if helpfull.
Thanks,
Kashyap Ivaturi
Similar Messages
-
How can we assign system fields like sy-datum, sy-uzeit to the ztable field
hi experts,
i have created one ztable inthis one it has some fields like date changed , time changed... in this table when the user enters the data it automatically updates time and date... for this where i have to assign those fields and code pls....Hi Gopal,
Make use of the events in Table maintenance generator,
Generate a Table maintenance genrator and in TMG make use of the events
Link to create the events
http://www.goodpeople.co.in/jobseeker/JobDetailPage.aspx?postjobid=43001
select the table maintenance event maintenance dialog as 05
in the event between form and endform write the following code
field1 = sy-uname.
field2 = sy-uzeit
field3 = sy-datum.
regards
prasanth -
URGENT: - REGARDING ALV REPORT
hi,
i had made dis report in ALV and i want to display d heading format as follows:-
NAME:- TEST PROGRAM
date: - 21.05.2007
time:- 1:30:23 am
moreover i want to see the print perview of it but it is giving runtime error.
plz help me in solving dis problem and he or she will be definately rewarded..
*& Report ZMFTEST5
REPORT ZMFTEST5 no standard page heading LINE-SIZE 310.
TABLES : VBAK,ABAP,VBEP,VBKD,MARA,KNA1,MAKT.
*Varriable declaration.
TYPE-POOLS SLIS.
DATA : POS TYPE I.
DATA REPID LIKE SY-REPID.
DATA : F1 TYPE SLIS_T_FIELDCAT_ALV,
F2 TYPE SLIS_FIELDCAT_ALV,
L_LAYOUT TYPE SLIS_LAYOUT_ALV.
DATA L_POS TYPE I VALUE 1. "position of the column
DATA GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
DATA: GT_EVENTS TYPE SLIS_T_EVENT,
FS_EVENTCAT LIKE LINE OF GT_EVENTs.
DATA : T_HEADING TYPE slis_t_listheader.
INTERNAL TABLE FOR SALES ORDER *****************
DATA : BEGIN OF ITSO OCCURS 0,
VBELN LIKE VBAK-VBELN,
ERDAT LIKE VBAK-ERDAT,
BSTNK LIKE VBAK-BSTNK,
KUNNR LIKE VBAK-KUNNR,
MATNR LIKE VBAP-MATNR,
POSNR LIKE VBAP-POSNR,
WMENG LIKE VBEP-WMENG,
NTGEW LIKE MARA-NTGEW,
BRGEW LIKE MARA-BRGEW,
GEWEI LIKE MARA-GEWEI,
SPART LIKE VBAK-SPART,
BMENG LIKE VBEP-BMENG,
EDATU LIKE VBEP-EDATU,
BSTKD LIKE VBKD-BSTKD,
WERKS LIKE VBAP-WERKS,
MEINS LIKE MARA-MEINS,
KWMENG LIKE VBAP-KWMENG,
KLMENG LIKE VBAP-KLMENG,
BALQTY LIKE VBAP-KLMENG,
SOGWT LIKE MARA-BRGEW,
SONWT LIKE MARA-BRGEW,
SINWT LIKE MARA-BRGEW,
BALGWT LIKE MARA-BRGEW,
BALNWT LIKE MARA-BRGEW,
DISPNWT LIKE MARA-BRGEW,
PARTYNAME LIKE KNA1-NAME1,
ITEMDESC LIKE MAKT-MAKTX,
STATUS TYPE C,
END OF ITSO.
DATA:B_QTY TYPE P LENGTH 7 DECIMALS 3.
***********PARAMETERS***************
PARAMETERS : PLANT LIKE VBAP-WERKS OBLIGATORY.
*********SELECTION SCREEN OPTIONS*********
SELECT-OPTIONS : SO_ORD FOR VBAK-VBELN,
SO_PARTY FOR VBAK-KUNNR,
IT_M FOR MARA-MATNR,
DIV FOR VBAK-SPART,
SO_DATE FOR VBAK-ERDAT,
S_DATE FOR VBEP-EDATU.
START-OF-SELECTION.
SELECT DISTINCT A~VBELN A~ERDAT A~BSTNK A~KUNNR B~SPART B~MATNR B~POSNR B~WERKS B~KWMENG B~KBMENG C~NTGEW C~BRGEW C~GEWEI D~WMENG D~BMENG D~EDATU D~VBELN
FROM VBAK AS A INNER JOIN VBAP AS B ON B~VBELN = A~VBELN
INNER JOIN MARA AS C ON C~MATNR = B~MATNR
INNER JOIN VBEP AS D ON D~WMENG > 0 AND D~VBELN = A~VBELN AND D~POSNR = B~POSNR
INTO CORRESPONDING FIELDS OF TABLE ITSO
WHERE A~VBELN IN SO_ORD AND A~KUNNR IN SO_PARTY AND B~SPART IN DIV AND A~ERDAT IN SO_DATE AND D~EDATU IN S_DATE AND B~MATNR IN IT_M AND B~WERKS = PLANT.
IF SY-SUBRC <> 0.
MESSAGE E899(M3) WITH 'No records'.
ENDIF.
DATA : V_NETWT LIKE MARA-NTGEW,
V_GRWT LIKE MARA-NTGEW,
V_SOSTAT TYPE C.
LOOP AT ITSO.
if ITSO-bmeng = 0.
V_SOSTAT = 'A'.
ELSEIF ITSO-WMENG <> ITSO-BMENG.
V_SOSTAT = 'B'.
ELSE.
V_SOSTAT = 'C'.
ENDIF.
IF ITSO-GEWEI = 'G'.
V_NETWT = ITSO-NTGEW / 1000.
V_GRWT = ITSO-BRGEW / 1000.
ELSEIF ITSO-GEWEI = 'KG'.
V_NETWT = ITSO-NTGEW.
V_GRWT = ITSO-BRGEW.
ELSEIF ITSO-GEWEI = 'TO'.
V_NETWT = ITSO-NTGEW * 1000.
V_GRWT = ITSO-BRGEW * 1000.
ENDIF.
ITSO-STATUS = V_SOSTAT.
ITSO-SOGWT = V_GRWT * ITSO-WMENG / 1000.
ITSO-SONWT = V_NETWT * ITSO-WMENG / 1000.
ITSO-SINWT = V_GRWT * ITSO-BMENG / 1000.
ITSO-BALGWT = V_GRWT * ( ITSO-WMENG - ITSO-BMENG ) / 1000.
ITSO-BALNWT = V_NETWT * ( ITSO-WMENG - ITSO-BMENG ) / 1000.
ITSO-DISPNWT = V_NETWT * ITSO-BMENG / 1000.
ITSO-BALQTY = ITSO-WMENG - ITSO-BMENG.
SELECT SINGLE NAME1 FROM KNA1 INTO ITSO-PARTYNAME WHERE KUNNR = ITSO-KUNNR.
SELECT SINGLE MAKTX FROM MAKT INTO ITSO-ITEMDESC WHERE MATNR = ITSO-MATNR.
MODIFY ITSO.
ENDLOOP.
perform f_build_eventcat.
PERFORM LAYOUT using t_heading.
END-OF-SELECTION.
FORM LAYOUT using t_heading type slis_t_listheader.
data : t_event type slis_t_event.
PERFORM FCAT USING 'WERKS' 'ITSO' '' 'PLANT ' 'WERKS' 'VBAP' ''.
PERFORM FCAT USING 'VBELN' 'ITSO' '' 'SO NO. ' 'VBELN' 'VBAK' ''.
PERFORM FCAT USING 'ERDAT' 'ITSO' '' 'S.O.DATE' 'ERDAT' 'VBAK' ''.
PERFORM FCAT USING 'BSTNK' 'ITSO' '' 'P.O.N.O.' 'BSTNK' 'VBAK' ''.
PERFORM FCAT USING 'KUNNR' 'ITSO' '' 'PARTY ' 'KUNNR' 'VBAP' ''.
PERFORM FCAT USING 'PARTYNAME' 'ITSO' '' 'PARTY DESCRIPTION' 'PARTYNAME' '' ''.
PERFORM FCAT USING 'ITEMDESC' 'ITSO' '' 'MATERIAL DESCRIPTION' 'ITEMDESC' '' ''.
PERFORM FCAT USING 'MATNR' 'ITSO' '' 'MAT.NO. ' 'MATNR' 'MARA' ''.
PERFORM FCAT USING 'POSNR' 'ITSO' '' 'LINE.ITEM' 'POSNR' 'VBAP' ''.
PERFORM FCAT USING 'WMENG' 'ITSO' '' 'S.O.QTY' 'WMENG' 'VBEP' '' .
PERFORM FCAT USING 'EDATU' 'ITSO' '' 'SCH.DATE' 'EDATU' 'VBEP' ''.
PERFORM FCAT USING 'SONWT' 'ITSO' '' 'S.O.NWT ' 'P' '' ''.
PERFORM FCAT USING 'SOGWT' 'ITSO' '' 'S.O.GWT ' 'P' '' ''.
PERFORM FCAT USING 'SPART' 'ITSO' '' 'DIV ' 'SPART' 'VBAP' ''.
PERFORM FCAT USING 'BMENG' 'ITSO' '' 'DISP.QTY' 'BMENG' 'VBEP' ''.
PERFORM FCAT USING 'DISPNWT' 'ITSO' '' 'DISP.NT.WT ' 'P' '' ''.
PERFORM FCAT USING 'BALQTY' 'ITSO' '' 'BAL.QTY.' 'P' '' ''.
PERFORM FCAT USING 'BALNWT' 'ITSO' '' 'BAL.NT.WT ' 'P' '' ''.
PERFORM FCAT USING 'BALGWT' 'ITSO' '' 'BAL.GR.WT ' 'P' '' ''.
PERFORM FCAT USING 'STATUS' 'ITSO' '' 'STATUS' 'STATUS' '' ''.
refresh t_event.
*perform set_top_page_heading using t_heading t_event.
REPID = SY-REPID.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER =
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = REPID
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = ' '
I_CALLBACK
I_CALLBACK_HTML_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME =
I_BACKGROUND_ID = ' '
I_GRID_TITLE =
I_GRID_SETTINGS =
IS_LAYOUT =
IT_FIELDCAT = F1
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
IT_EVENTS = GT_EVENTS[]
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
IT_ALV_GRAPHICS =
IT_ADD_FIELDCAT =
IT_HYPERLINK =
I_HTML_HEIGHT_TOP =
I_HTML_HEIGHT_END =
IT_EXCEPT_QINFO =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = ITSO
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
ENDFORM. " LAYOUT
*& Form FCAT
FORM FCAT USING P_FIELD P_TABLE P_SUM P_TEXT P_RFIELD P_RTABLE P_DISP.
ADD 1 TO POS.
F2-COL_POS = POS.
F2-FIELDNAME = P_FIELD.
F2-TABNAME = P_TABLE.
F2-SELTEXT_L = P_TEXT.
F2-REF_FIELDNAME = P_RFIELD.
F2-REF_TABNAME = P_RTABLE.
F2-DO_SUM = P_SUM.
F2-NO_OUT = P_DISP.
APPEND F2 TO F1.
CLEAR F2.
ENDFORM. " FCAT
FORM F_BUILD_EVENTCAT .
CLEAR: GT_EVENTS. REFRESH: GT_EVENTS.
CLEAR: FS_EVENTCAT.
FS_EVENTCAT-NAME = 'TOP_OF_PAGE'.
FS_EVENTCAT-FORM = 'F_REPORT_HEADER_ALV'.
APPEND FS_EVENTCAT TO GT_EVENTS.
CLEAR: FS_EVENTCAT.
FS_EVENTCAT-NAME = 'END_OF_LIST'.
FS_EVENTCAT-FORM = 'F_WRITE_SUMMARY'.
APPEND FS_EVENTCAT TO GT_EVENTS.
ENDFORM.
*FORM F_REPORT_HEADER_ALV.
*CALL FUNCTION 'Z_HEAD_PRINT'
EXPORTING
WRITE: / TITLE1 = 'XYZ Limited'
TITLE2 = 'Sales Order Report'
TITLE3 = 'Created on '
COLOR = 'X'.
*ENDFORM.
FORM F_WRITE_SUMMARY .
write:/ 'Welcome to XYZ Limited'.
write:/ 'This is a test program to display Report in ALV Format'.
ENDFORM.
*& Form set_top_page_heading
text
-->P_T_HEADING text
*form set_top_page_heading using t_heading
t_events type slis_t_event.
*data: x_heading type slis_listheader,
x_event type line of slis_t_event.
Report title
clear t_heading[].
clear x_heading.
x_heading-typ = 'H'.
x_heading-info = ''(001).
append x_heading to t_heading.
t_heading-info = 'TEST'.
t_heading-typ = 'H'.
Program name
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'Program: '.
x_heading-info = sy-repid.
append x_heading to t_heading.
User who is running the report
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'User: '.
x_heading-info = sy-uname.
append x_heading to t_heading.
Date of execution
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'Date: '.
write sy-datum to x_heading-info.
append x_heading to t_heading.
Time of execution
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'Time: '.
write sy-uzeit to x_heading-info.
append x_heading to t_heading.
Top of page event
x_event-name = slis_ev_top_of_page.
x_event-form = 'TOP_OF_PAGE'.
append x_event to t_events.
*endform. " set_top_page_headingHi,
i had change ur code just copy this and try,i hope it will work.
REPORT ZMFTEST5 no standard page heading LINE-SIZE 310.
TABLES : VBAK,ABAP,VBEP,VBKD,MARA,KNA1,MAKT.
*Varriable declaration.
TYPE-POOLS SLIS.
DATA : POS TYPE I.
DATA REPID LIKE SY-REPID.
****************CHANGES**************
DATA : FDATE TYPE STRING,
FTIME TYPE STRING,
FNAME TYPE STRING.
****************CHANGES**************
DATA : F1 TYPE SLIS_T_FIELDCAT_ALV,
F2 TYPE SLIS_FIELDCAT_ALV,
L_LAYOUT TYPE SLIS_LAYOUT_ALV.
DATA L_POS TYPE I VALUE 1. "position of the column
DATA GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
DATA: GT_EVENTS TYPE SLIS_T_EVENT,
FS_EVENTCAT LIKE LINE OF GT_EVENTs.
DATA : T_HEADING TYPE slis_t_listheader.
INTERNAL TABLE FOR SALES ORDER *****************
DATA : BEGIN OF ITSO OCCURS 0,
VBELN LIKE VBAK-VBELN,
ERDAT LIKE VBAK-ERDAT,
BSTNK LIKE VBAK-BSTNK,
KUNNR LIKE VBAK-KUNNR,
MATNR LIKE VBAP-MATNR,
POSNR LIKE VBAP-POSNR,
WMENG LIKE VBEP-WMENG,
NTGEW LIKE MARA-NTGEW,
BRGEW LIKE MARA-BRGEW,
GEWEI LIKE MARA-GEWEI,
SPART LIKE VBAK-SPART,
BMENG LIKE VBEP-BMENG,
EDATU LIKE VBEP-EDATU,
BSTKD LIKE VBKD-BSTKD,
WERKS LIKE VBAP-WERKS,
MEINS LIKE MARA-MEINS,
KWMENG LIKE VBAP-KWMENG,
KLMENG LIKE VBAP-KLMENG,
BALQTY LIKE VBAP-KLMENG,
SOGWT LIKE MARA-BRGEW,
SONWT LIKE MARA-BRGEW,
SINWT LIKE MARA-BRGEW,
BALGWT LIKE MARA-BRGEW,
BALNWT LIKE MARA-BRGEW,
DISPNWT LIKE MARA-BRGEW,
PARTYNAME LIKE KNA1-NAME1,
ITEMDESC LIKE MAKT-MAKTX,
STATUS TYPE C,
END OF ITSO.
DATA:B_QTY TYPE P LENGTH 7 DECIMALS 3.
***********PARAMETERS***************
PARAMETERS : PLANT LIKE VBAP-WERKS OBLIGATORY.
*********SELECTION SCREEN OPTIONS*********
SELECT-OPTIONS : SO_ORD FOR VBAK-VBELN,
SO_PARTY FOR VBAK-KUNNR,
IT_M FOR MARA-MATNR,
DIV FOR VBAK-SPART,
SO_DATE FOR VBAK-ERDAT,
S_DATE FOR VBEP-EDATU.
START-OF-SELECTION.
SELECT DISTINCT A~VBELN A~ERDAT A~BSTNK A~KUNNR B~SPART B~MATNR B~POSNR B~WERKS B~KWMENG B~KBMENG C~NTGEW C~BRGEW C~GEWEI D~WMENG D~BMENG D~EDATU D~VBELN
FROM VBAK AS A INNER JOIN VBAP AS B ON B~VBELN = A~VBELN
INNER JOIN MARA AS C ON C~MATNR = B~MATNR
INNER JOIN VBEP AS D ON D~WMENG > 0 AND D~VBELN = A~VBELN AND D~POSNR = B~POSNR
INTO CORRESPONDING FIELDS OF TABLE ITSO
WHERE A~VBELN IN SO_ORD AND A~KUNNR IN SO_PARTY AND B~SPART IN DIV AND A~ERDAT IN SO_DATE AND D~EDATU IN S_DATE AND B~MATNR IN IT_M AND B~WERKS = PLANT.
IF SY-SUBRC <> 0.
MESSAGE E899(M3) WITH 'No records'.
ENDIF.
DATA : V_NETWT LIKE MARA-NTGEW,
V_GRWT LIKE MARA-NTGEW,
V_SOSTAT TYPE C.
LOOP AT ITSO.
if ITSO-bmeng = 0.
V_SOSTAT = 'A'.
ELSEIF ITSO-WMENG <> ITSO-BMENG.
V_SOSTAT = 'B'.
ELSE.
V_SOSTAT = 'C'.
ENDIF.
IF ITSO-GEWEI = 'G'.
V_NETWT = ITSO-NTGEW / 1000.
V_GRWT = ITSO-BRGEW / 1000.
ELSEIF ITSO-GEWEI = 'KG'.
V_NETWT = ITSO-NTGEW.
V_GRWT = ITSO-BRGEW.
ELSEIF ITSO-GEWEI = 'TO'.
V_NETWT = ITSO-NTGEW * 1000.
V_GRWT = ITSO-BRGEW * 1000.
ENDIF.
ITSO-STATUS = V_SOSTAT.
ITSO-SOGWT = V_GRWT * ITSO-WMENG / 1000.
ITSO-SONWT = V_NETWT * ITSO-WMENG / 1000.
ITSO-SINWT = V_GRWT * ITSO-BMENG / 1000.
ITSO-BALGWT = V_GRWT * ( ITSO-WMENG - ITSO-BMENG ) / 1000.
ITSO-BALNWT = V_NETWT * ( ITSO-WMENG - ITSO-BMENG ) / 1000.
ITSO-DISPNWT = V_NETWT * ITSO-BMENG / 1000.
ITSO-BALQTY = ITSO-WMENG - ITSO-BMENG.
SELECT SINGLE NAME1 FROM KNA1 INTO ITSO-PARTYNAME WHERE KUNNR = ITSO-KUNNR.
SELECT SINGLE MAKTX FROM MAKT INTO ITSO-ITEMDESC WHERE MATNR = ITSO-MATNR.
MODIFY ITSO.
ENDLOOP.
perform f_build_eventcat.
PERFORM LAYOUT using t_heading.
END-OF-SELECTION.
FORM LAYOUT using t_heading type slis_t_listheader.
data : t_event type slis_t_event.
PERFORM FCAT USING 'WERKS' 'ITSO' '' 'PLANT ' 'WERKS' 'VBAP' ''.
PERFORM FCAT USING 'VBELN' 'ITSO' '' 'SO NO. ' 'VBELN' 'VBAK' ''.
PERFORM FCAT USING 'ERDAT' 'ITSO' '' 'S.O.DATE' 'ERDAT' 'VBAK' ''.
PERFORM FCAT USING 'BSTNK' 'ITSO' '' 'P.O.N.O.' 'BSTNK' 'VBAK' ''.
PERFORM FCAT USING 'KUNNR' 'ITSO' '' 'PARTY ' 'KUNNR' 'VBAP' ''.
PERFORM FCAT USING 'PARTYNAME' 'ITSO' '' 'PARTY DESCRIPTION' 'PARTYNAME' '' ''.
PERFORM FCAT USING 'ITEMDESC' 'ITSO' '' 'MATERIAL DESCRIPTION' 'ITEMDESC' '' ''.
PERFORM FCAT USING 'MATNR' 'ITSO' '' 'MAT.NO. ' 'MATNR' 'MARA' ''.
PERFORM FCAT USING 'POSNR' 'ITSO' '' 'LINE.ITEM' 'POSNR' 'VBAP' ''.
PERFORM FCAT USING 'WMENG' 'ITSO' '' 'S.O.QTY' 'WMENG' 'VBEP' '' .
PERFORM FCAT USING 'EDATU' 'ITSO' '' 'SCH.DATE' 'EDATU' 'VBEP' ''.
PERFORM FCAT USING 'SONWT' 'ITSO' '' 'S.O.NWT ' 'P' '' ''.
PERFORM FCAT USING 'SOGWT' 'ITSO' '' 'S.O.GWT ' 'P' '' ''.
PERFORM FCAT USING 'SPART' 'ITSO' '' 'DIV ' 'SPART' 'VBAP' ''.
PERFORM FCAT USING 'BMENG' 'ITSO' '' 'DISP.QTY' 'BMENG' 'VBEP' ''.
PERFORM FCAT USING 'DISPNWT' 'ITSO' '' 'DISP.NT.WT ' 'P' '' ''.
PERFORM FCAT USING 'BALQTY' 'ITSO' '' 'BAL.QTY.' 'P' '' ''.
PERFORM FCAT USING 'BALNWT' 'ITSO' '' 'BAL.NT.WT ' 'P' '' ''.
PERFORM FCAT USING 'BALGWT' 'ITSO' '' 'BAL.GR.WT ' 'P' '' ''.
PERFORM FCAT USING 'STATUS' 'ITSO' '' 'STATUS' 'STATUS' '' ''.
refresh t_event.
*perform set_top_page_heading using t_heading t_event.
REPID = SY-REPID.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER =
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = REPID
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = ' '
I_CALLBACK
I_CALLBACK_HTML_TOP_OF_PAGE = 'TOP'
I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME =
I_BACKGROUND_ID = ' '
I_GRID_TITLE =
I_GRID_SETTINGS =
IS_LAYOUT =
IT_FIELDCAT = F1
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
IT_EVENTS = GT_EVENTS[]
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
IT_ALV_GRAPHICS =
IT_ADD_FIELDCAT =
IT_HYPERLINK =
I_HTML_HEIGHT_TOP =
I_HTML_HEIGHT_END =
IT_EXCEPT_QINFO =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = ITSO
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
ENDFORM. " LAYOUT
*& Form FCAT
FORM FCAT USING P_FIELD P_TABLE P_SUM P_TEXT P_RFIELD P_RTABLE P_DISP.
ADD 1 TO POS.
F2-COL_POS = POS.
F2-FIELDNAME = P_FIELD.
F2-TABNAME = P_TABLE.
F2-SELTEXT_L = P_TEXT.
F2-REF_FIELDNAME = P_RFIELD.
F2-REF_TABNAME = P_RTABLE.
F2-DO_SUM = P_SUM.
F2-NO_OUT = P_DISP.
APPEND F2 TO F1.
CLEAR F2.
ENDFORM. " FCAT
FORM F_BUILD_EVENTCAT .
CLEAR: GT_EVENTS. REFRESH: GT_EVENTS.
CLEAR: FS_EVENTCAT.
FS_EVENTCAT-NAME = 'TOP_OF_PAGE'.
FS_EVENTCAT-FORM = 'F_REPORT_HEADER_ALV'.
APPEND FS_EVENTCAT TO GT_EVENTS.
CLEAR: FS_EVENTCAT.
FS_EVENTCAT-NAME = 'END_OF_LIST'.
FS_EVENTCAT-FORM = 'F_WRITE_SUMMARY'.
APPEND FS_EVENTCAT TO GT_EVENTS.
ENDFORM.
*FORM F_REPORT_HEADER_ALV.
*CALL FUNCTION 'Z_HEAD_PRINT'
EXPORTING
WRITE: / TITLE1 = 'XYZ Limited'
TITLE2 = 'Sales Order Report'
TITLE3 = 'Created on '
COLOR = 'X'.
*ENDFORM.
FORM F_WRITE_SUMMARY .
write:/ 'Welcome to XYZ Limited'.
write:/ 'This is a test program to display Report in ALV Format'.
ENDFORM.
FORM TOP.
DATA: WT_HEADER TYPE SLIS_T_LISTHEADER,
WA_HEADER TYPE SLIS_LISTHEADER.
CONCATENATE 'DATE:-' SY-DATUM INTO FDATE.
CONCATENATE 'TIME:-' SY-UZEIT INTO FTIME.
FNAME = 'NAME:- TEST'.
WA_HEADER-TYP = HEADER.
WA_HEADER-INFO = FNAME.
APPEND WA_HEADER TO WT_HEADER.
CLEAR WA_HEADER.
WA_HEADER-TYP = HEADER.
WA_HEADER-INFO = FDATE.
APPEND WA_HEADER TO WT_HEADER.
CLEAR WA_HEADER.
WA_HEADER-TYP = HEADER.
WA_HEADER-INFO = FTIME.
APPEND WA_HEADER TO WT_HEADER.
CLEAR WA_HEADER.
ENDFORM.
*& Form set_top_page_heading
text
-->P_T_HEADING text
*form set_top_page_heading using t_heading
t_events type slis_t_event.
*data: x_heading type slis_listheader,
x_event type line of slis_t_event.
Report title
clear t_heading[].
clear x_heading.
x_heading-typ = 'H'.
x_heading-info = ''(001).
append x_heading to t_heading.
t_heading-info = 'TEST'.
t_heading-typ = 'H'.
Program name
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'Program: '.
x_heading-info = sy-repid.
append x_heading to t_heading.
User who is running the report
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'User: '.
x_heading-info = sy-uname.
append x_heading to t_heading.
Date of execution
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'Date: '.
write sy-datum to x_heading-info.
append x_heading to t_heading.
Time of execution
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'Time: '.
write sy-uzeit to x_heading-info.
append x_heading to t_heading.
Top of page event
x_event-name = slis_ev_top_of_page.
x_event-form = 'TOP_OF_PAGE'.
append x_event to t_events.
*endform. " set_top_page_heading
*please do reward points if helpful
Thanks and Regards,
S.N.Venkatesh -
Regarding putting trafic lights in alv report
Hi frnds,
I need to add Traffic lites to my program can any one help me how to do that.
Below i m providing my code.
<code>
*ztest_alv
*& Report ZSAMPLEALV3 *
REPORT ZSAMPLEALV3
MESSAGE-ID Z00.
TABLE DECLARATIONS
TABLES : EKKO. "Purchasing Document Header
CONSTANTS DECLARATIONS
CONSTANTS : C_EBELN(5) VALUE 'EBELN'.
DATA DECLARATIONS
DATA : V_FLAG, "For Select Status
V_DATA(50). "To Store Data
TYPE DECLARATIONS FOR ALV *
TYPE-POOLS : SLIS.
*Type Declarations for Field Catalog for Basic List
DATA : I_FLDCAT_HEAD TYPE SLIS_T_FIELDCAT_ALV,
WA_FLDCAT_HEAD TYPE SLIS_FIELDCAT_ALV.
*Type Declarations for Field Catalog for Secondary List
DATA : I_FLDCAT_ITEM TYPE SLIS_T_FIELDCAT_ALV,
WA_FLDCAT_ITEM TYPE SLIS_FIELDCAT_ALV.
*Type Declarations for Displaying Images on Basic Grid
DATA : I_COMMENT TYPE SLIS_T_LISTHEADER,
WA_COMMENT TYPE SLIS_LISTHEADER.
*Type Declarations for Displaying Images on Secondary Grid
DATA : I_COMMENT_SEC TYPE SLIS_T_LISTHEADER,
WA_COMMENT_SEC TYPE SLIS_LISTHEADER.
*Type Declarations for ALV Events for Basic Grid
DATA : I_EVENTS TYPE SLIS_T_EVENT,
WA_EVENT LIKE LINE OF I_EVENTS.
*Type Declarations for ALV Events for Secondary Grid
DATA : I_EVENTS_SEC TYPE SLIS_T_EVENT,
WA_EVENT_SEC LIKE LINE OF I_EVENTS.
*Type Declarations for Layout Design
DATA : WA_LAYOUT TYPE SLIS_LAYOUT_ALV.
*Type Declarations for Linking the fields
DATA : WA_KEYINFO TYPE SLIS_KEYINFO_ALV.
Type declarations for coloring field
DATA : wa_color type LVC_S_SCOL.
DATA: IT_COLOR TYPE TABLE OF LVC_S_SCOL.
INTERNAL TABLE DECLARATIONS
*--Internal Table for Basic List
DATA : BEGIN OF IT_FINAL_BAS OCCURS 0,
EBELN LIKE EKKO-EBELN, "Purchasing Document Number
BUKRS LIKE EKKO-BUKRS, "Company Code
AEDAT LIKE EKKO-AEDAT, "Date on which the record was created
EKORG LIKE EKKO-EKORG, "Purchasing Organization
EKGRP LIKE EKKO-EKGRP, "Purchasing group
COLOR(3) , "For applying color
END OF IT_FINAL_BAS.
*--Internal Table for Secondary List
DATA : BEGIN OF IT_FINAL_SEC OCCURS 0,
EBELN LIKE EKPO-EBELN, "Purchasing Document Number
MATNR LIKE EKPO-MATNR, "Material Number
TXZ01 LIKE EKPO-TXZ01, "Material Desc
WERKS LIKE EKPO-WERKS, "Plant
LGORT LIKE EKPO-LGORT, "Location
MATKL LIKE EKPO-MATKL, "Material Group
MENGE LIKE EKPO-MENGE, "Purchase order quantity
MEINS LIKE EKPO-MEINS, "Order unit
NETPR LIKE EKPO-NETPR, "Net price in purchasing document (in document currency)
NETWR LIKE EKPO-NETWR, "Net order value in PO currency
DUMMY LIKE ICON-ID, "For placing Icon
COLOR(3) , "For applying color
END OF IT_FINAL_SEC.
*--Internal Table for Secondary List with selected records
DATA : BEGIN OF I_ITEM_DISPLAY OCCURS 0,
EBELN LIKE EKPO-EBELN, "Purchasing Document Number
MATNR LIKE EKPO-MATNR, "Material Number
TXZ01 LIKE EKPO-TXZ01, "Material Desc
WERKS LIKE EKPO-WERKS, "Plant
LGORT LIKE EKPO-LGORT, "Location
MATKL LIKE EKPO-MATKL, "Material Group
MENGE LIKE EKPO-MENGE, "Purchase order quantity
MEINS LIKE EKPO-MEINS, "Order unit
NETPR LIKE EKPO-NETPR, "Net price in purchasing document (in document currency)
NETWR LIKE EKPO-NETWR, "Net order value in PO currency
DUMMY LIKE ICON-ID, "For placing Icon
COLOR(3) , "For applying color
END OF I_ITEM_DISPLAY.
SELECTION SCREEN
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-H01.
SELECT-OPTIONS: S_EBELN FOR EKKO-EBELN.
SELECTION-SCREEN END OF BLOCK B1.
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
SELECTION-SCREEN : BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) TEXT-003.
PARAMETERS: P_DISP RADIOBUTTON GROUP RAD1 DEFAULT 'X'.
SELECTION-SCREEN : END OF LINE.
SELECTION-SCREEN : BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(20) TEXT-005.
PARAMETERS: P_UPD RADIOBUTTON GROUP RAD1.
SELECTION-SCREEN : END OF LINE.
SELECTION-SCREEN END OF BLOCK B2.
Event : INITIALIZATION
INITIALIZATION.
MOVE 'Developed by'(001) TO V_DATA.
Event : AT SELECTION SCREEN
AT SELECTION-SCREEN.
PERFORM VALIDATE_EBELN.
Event : START-OF-SELECTION
START-OF-SELECTION.
*--Getting the Data
PERFORM GET_DATA.
*--Generating the Field catalog for basic and secondary grid
PERFORM GET_FLDCAT.
*--Generating the Layout for basic and secondary grid
PERFORM GET_LAYOUT.
*--Generating the key infor to link Basic grid to Secondary grid
PERFORM GET_KEYINFO.
*--Generating the Events for Basic and Secondary Grid
PERFORM GET_EVENTS.
*--Displaying data only
IF P_DISP = 'X'.
PERFORM DISPLAY_DATA.
ELSE .
PERFORM UPDATE_DATA.
ENDIF.
Event : END-OF-SELECTION
END-OF-SELECTION.
*& Form DISPLAY_DATA
text
--> p1 text
<-- p2 text
FORM DISPLAY_DATA .
IF V_FLAG EQ 'X'.
*--Generating Basic List
PERFORM DISP_BASIC_LIST.
ELSE.
IF SY-SUBRC NE 0.
MESSAGE I010 WITH 'No Data Found To Display'(002).
ENDIF.
ENDFORM. " DISPLAY_DATA
SUB-ROUTINES
*& Form VALIDATE_EBELN
Validating the PO No
FORM VALIDATE_EBELN .
SELECT EBELN
UP TO 1 ROWS
INTO (EKKO-EBELN)
FROM EKKO
WHERE EBELN IN S_EBELN.
ENDSELECT.
IF SY-SUBRC NE 0.
MESSAGE I010 WITH 'Invalid PO No'(003) S_EBELN-LOW 'To'(004) S_EBELN-HIGH.
ENDIF.
ENDFORM. " VALIDATE_EBELN
*& Form GET_DATA
Getting Basic List and Secondary List Data
FORM GET_DATA .
*--Getting Basic List Data
SELECT EBELN "PO No
BUKRS "Company Code
AEDAT "Creation Date
EKORG "Purch Org
EKGRP "Purch Group
INTO TABLE IT_FINAL_BAS
FROM EKKO
WHERE EBELN IN S_EBELN.
*--Getting Secondary List Data
IF SY-SUBRC EQ 0.
SELECT EBELN "PO No
MATNR "Material No
TXZ01 "Material Desc
WERKS "Plant
LGORT "Location
MATKL "Material Group
MENGE "PO Qty
MEINS "Unit
NETPR "Net Price
NETWR "Net Value
INTO TABLE IT_FINAL_SEC
FROM EKPO
WHERE EBELN IN S_EBELN.
ENDIF.
IF SY-SUBRC EQ 0.
V_FLAG = 'X'.
ELSE.
V_FLAG = SPACE.
ENDIF.
ENDFORM. " GET_DATA
*& Form GET_FLDCAT
Generating the Field Catalog
FORM GET_FLDCAT .
*--Generating the Field Catalog for Basic List
WA_FLDCAT_HEAD-REPTEXT_DDIC = 'Status'.
WA_FLDCAT_HEAD-FIELDNAME = 'LIGHT'.
WA_FLDCAT_HEAD-COL_POS = '1'.
WA_FLDCAT_HEAD-JUST = 'C'.
WA_FLDCAT_HEAD-OUTPUTLEN = '4'.
WA_FLDCAT_HEAD-ICON = 'X'.
APPEND WA_FLDCAT_HEAD TO I_FLDCAT_HEAD.
CLEAR WA_FLDCAT_HEAD .
WA_FLDCAT_HEAD-FIELDNAME = 'EBELN'.
WA_FLDCAT_HEAD-COL_POS = '2'.
WA_FLDCAT_HEAD-JUST = 'C'.
WA_FLDCAT_HEAD-OUTPUTLEN = '12'.
WA_FLDCAT_HEAD-SELTEXT_M = 'PO Number'(006).
WA_FLDCAT_HEAD-DDICTXT = 'M'.
WA_FLDCAT_HEAD-REF_TABNAME = ' '.
WA_FLDCAT_HEAD-HOTSPOT = 'X'.
APPEND WA_FLDCAT_HEAD TO I_FLDCAT_HEAD.
CLEAR WA_FLDCAT_HEAD .
WA_FLDCAT_HEAD-FIELDNAME = 'BUKRS'(007).
WA_FLDCAT_HEAD-COL_POS = '3'.
WA_FLDCAT_HEAD-OUTPUTLEN = '12'.
WA_FLDCAT_HEAD-SELTEXT_M = 'Company Code'(008).
WA_FLDCAT_HEAD-DDICTXT = 'M'.
APPEND WA_FLDCAT_HEAD TO I_FLDCAT_HEAD.
WA_FLDCAT_HEAD-FIELDNAME = 'AEDAT'(009).
WA_FLDCAT_HEAD-COL_POS = '4'.
WA_FLDCAT_HEAD-OUTPUTLEN = '10'.
WA_FLDCAT_HEAD-SELTEXT_M = 'PO Date'(010).
WA_FLDCAT_HEAD-DDICTXT = 'M'.
APPEND WA_FLDCAT_HEAD TO I_FLDCAT_HEAD.
WA_FLDCAT_HEAD-FIELDNAME = 'EKORG'(011).
WA_FLDCAT_HEAD-COL_POS = '5'.
WA_FLDCAT_HEAD-OUTPUTLEN = '6'.
WA_FLDCAT_HEAD-SELTEXT_M = 'PO Org'(012).
WA_FLDCAT_HEAD-DDICTXT = 'M'.
WA_FLDCAT_HEAD-EDIT = 'X'.
APPEND WA_FLDCAT_HEAD TO I_FLDCAT_HEAD.
WA_FLDCAT_HEAD-FIELDNAME = 'EKGRP'(013).
WA_FLDCAT_HEAD-COL_POS = '6'.
WA_FLDCAT_HEAD-OUTPUTLEN = '8'.
WA_FLDCAT_HEAD-SELTEXT_M = 'PO Group'(014).
WA_FLDCAT_HEAD-DDICTXT = 'M'.
WA_FLDCAT_HEAD-DO_SUM = 'X'.
APPEND WA_FLDCAT_HEAD TO I_FLDCAT_HEAD.
*--Generating the Field Catalog for secondary List
WA_FLDCAT_ITEM-FIELDNAME = 'EBELN'.
WA_FLDCAT_ITEM-COL_POS = '1'.
WA_FLDCAT_ITEM-JUST = 'C'.
WA_FLDCAT_ITEM-OUTPUTLEN = '12'.
WA_FLDCAT_ITEM-SELTEXT_M = 'PO Number'(006).
WA_FLDCAT_ITEM-DDICTXT = 'M'.
WA_FLDCAT_ITEM-REF_TABNAME = ' '.
APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
WA_FLDCAT_ITEM-FIELDNAME = 'MATNR'(015).
WA_FLDCAT_ITEM-COL_POS = '2'.
WA_FLDCAT_ITEM-JUST = 'C'.
WA_FLDCAT_ITEM-OUTPUTLEN = '18'.
WA_FLDCAT_ITEM-SELTEXT_M = 'Item Number'(016).
WA_FLDCAT_ITEM-DDICTXT = 'M'.
WA_FLDCAT_ITEM-REF_TABNAME = ' '.
APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
WA_FLDCAT_ITEM-FIELDNAME = 'TXZ01'(017).
WA_FLDCAT_ITEM-COL_POS = '3'.
WA_FLDCAT_ITEM-JUST = 'C'.
WA_FLDCAT_ITEM-OUTPUTLEN = '40'.
WA_FLDCAT_ITEM-SELTEXT_M = 'Item Desc'(018).
WA_FLDCAT_ITEM-DDICTXT = 'M'.
APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
WA_FLDCAT_ITEM-FIELDNAME = 'WERKS'(019).
WA_FLDCAT_ITEM-COL_POS = '4'.
WA_FLDCAT_ITEM-JUST = 'C'.
WA_FLDCAT_ITEM-OUTPUTLEN = '6'.
WA_FLDCAT_ITEM-SELTEXT_M = 'Plant'(020).
WA_FLDCAT_ITEM-DDICTXT = 'M'.
APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
WA_FLDCAT_ITEM-FIELDNAME = 'LGORT'(021).
WA_FLDCAT_ITEM-COL_POS = '5'.
WA_FLDCAT_ITEM-JUST = 'C'.
WA_FLDCAT_ITEM-OUTPUTLEN = '9'.
WA_FLDCAT_ITEM-SELTEXT_M = 'Location'(022).
WA_FLDCAT_ITEM-DDICTXT = 'M'.
APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
WA_FLDCAT_ITEM-FIELDNAME = 'MATKL'(023).
WA_FLDCAT_ITEM-COL_POS = '6'.
WA_FLDCAT_ITEM-JUST = 'C'.
WA_FLDCAT_ITEM-OUTPUTLEN = '10'.
WA_FLDCAT_ITEM-SELTEXT_M = 'Mat Group'(024).
WA_FLDCAT_ITEM-DDICTXT = 'M'.
APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
WA_FLDCAT_ITEM-FIELDNAME = 'MENGE'(025).
WA_FLDCAT_ITEM-COL_POS = '7'.
WA_FLDCAT_ITEM-JUST = 'C'.
WA_FLDCAT_ITEM-OUTPUTLEN = '17'.
WA_FLDCAT_ITEM-SELTEXT_M = 'PO Qty'(026).
WA_FLDCAT_ITEM-DDICTXT = 'M'.
APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
WA_FLDCAT_ITEM-FIELDNAME = 'MEINS'(027).
WA_FLDCAT_ITEM-COL_POS = '8'.
WA_FLDCAT_ITEM-JUST = 'C'.
WA_FLDCAT_ITEM-OUTPUTLEN = '3'.
WA_FLDCAT_ITEM-SELTEXT_M = 'Unit'(028).
WA_FLDCAT_ITEM-DDICTXT = 'M'.
APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
WA_FLDCAT_ITEM-FIELDNAME = 'NETPR'(029).
WA_FLDCAT_ITEM-COL_POS = '9'.
WA_FLDCAT_ITEM-JUST = 'C'.
WA_FLDCAT_ITEM-OUTPUTLEN = '14'.
WA_FLDCAT_ITEM-SELTEXT_M = 'Net Price'(037).
WA_FLDCAT_ITEM-DDICTXT = 'M'.
APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
WA_FLDCAT_ITEM-FIELDNAME = 'NETWR'(030).
WA_FLDCAT_ITEM-COL_POS = '10'.
WA_FLDCAT_ITEM-JUST = 'C'.
WA_FLDCAT_ITEM-OUTPUTLEN = '16'.
WA_FLDCAT_ITEM-SELTEXT_M = 'Net Value'(031).
WA_FLDCAT_ITEM-DDICTXT = 'M'.
APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
WA_FLDCAT_ITEM-FIELDNAME = 'DUMMY'(038).
WA_FLDCAT_ITEM-COL_POS = '11'.
WA_FLDCAT_ITEM-JUST = 'C'.
WA_FLDCAT_ITEM-OUTPUTLEN = '3'.
WA_FLDCAT_ITEM-SELTEXT_M = 'Status'(039).
WA_FLDCAT_ITEM-DDICTXT = 'M'.
WA_FLDCAT_ITEM-ICON = 'X'.
APPEND WA_FLDCAT_ITEM TO I_FLDCAT_ITEM.
ENDFORM. " GET_FLDCAT
*& Form DISP_BASIC_LIST
Generating the Basic List
FORM DISP_BASIC_LIST .
**--Applying the color to record in Basic List
SORT IT_FINAL_BAS BY BUKRS.
LOOP AT IT_FINAL_BAS.
IF IT_FINAL_BAS-BUKRS LE '1000'.
IT_FINAL_BAS-COLOR = 'C21'.
ELSEIF IT_FINAL_BAS-BUKRS GT '1000' AND IT_FINAL_BAS-BUKRS LE '2000'.
IT_FINAL_BAS-COLOR = 'C41'.
ELSEIF IT_FINAL_BAS-BUKRS GT '2000' AND IT_FINAL_BAS-BUKRS LE '3000'.
IT_FINAL_BAS-COLOR = 'C71'.
ELSEIF IT_FINAL_BAS-BUKRS GT '3000'.
IT_FINAL_BAS-COLOR = 'C51'.
ELSE.
IT_FINAL_BAS-COLOR = 'C61'.
ENDIF.
MODIFY IT_FINAL_BAS INDEX SY-TABIX.
ENDLOOP.
*--Generating the Grid output
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = 'ZTEST_ALV'
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME =
I_BACKGROUND_ID = 'PLAIN_BACKGROUND'
I_GRID_TITLE =
I_GRID_SETTINGS =
IS_LAYOUT = WA_LAYOUT
IT_FIELDCAT = I_FLDCAT_HEAD
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
IT_EVENTS = I_EVENTS
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
I_HTML_HEIGHT_TOP =
I_HTML_HEIGHT_END =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = IT_FINAL_BAS
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " DISP_BASIC_LIST
*& Form GET_EVENTS
Getting the ALV Events
FORM GET_EVENTS .
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = I_EVENTS
EXCEPTIONS
LIST_TYPE_WRONG = 1
OTHERS = 2
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*--Calling the User Defined sub-routines for ALV Events
IF NOT I_EVENTS[] IS INITIAL.
READ TABLE I_EVENTS INTO WA_EVENT WITH KEY NAME = 'TOP_OF_PAGE'.
WA_EVENT-FORM = 'GENERATE_USERCOMMAND_HEADER'.
MODIFY I_EVENTS FROM WA_EVENT INDEX SY-TABIX.
READ TABLE I_EVENTS INTO WA_EVENT WITH KEY NAME = 'TOP_OF_PAGE'.
WA_EVENT-FORM = 'FRM_TOP_OF_PAGE'.
MODIFY I_EVENTS FROM WA_EVENT INDEX SY-TABIX.
READ TABLE I_EVENTS INTO WA_EVENT WITH KEY NAME = 'END_OF_LIST'.
WA_EVENT-FORM = 'GENERATE_USERCOMMAND_FOOTER'.
MODIFY I_EVENTS FROM WA_EVENT INDEX SY-TABIX.
READ TABLE I_EVENTS INTO WA_EVENT WITH KEY NAME = 'USER_COMMAND'.
WA_EVENT-FORM = 'GENERATE_USERCOMMAND3'.
MODIFY I_EVENTS FROM WA_EVENT INDEX SY-TABIX.
ENDIF.
ENDFORM. " GET_EVENTS
*& Form GENERATE_USERCOMMAND_HEADER
Displaying Header-Text and Logo on Grid
FORM GENERATE_USERCOMMAND_HEADER.
CLEAR I_COMMENT[].
WA_COMMENT-TYP = 'H'.
WA_COMMENT-INFO = 'General Purchase Order Info'(032).
APPEND WA_COMMENT TO I_COMMENT.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = I_COMMENT
I_LOGO = 'ENJOYSAP_LOGO'.
I_END_OF_LIST_GRID = 'X'.
ENDFORM. " GENERATE_USERCOMMAND
*FORM FRM_TOP_OF_PAGE.
write :/ text-005 intensified on.
write :/ text-006 , sy-sysid,14 sy-mandt.
write :/ text-007 , sy-uname.
write :/ text-008 , sy-datum.
write :/ text-009 , sy-uzeit.
skip.
*ENDFORM.
*& Form GENERATE_USERCOMMAND_FOOTER
Displaying Footer-Text
FORM GENERATE_USERCOMMAND_FOOTER .
CLEAR I_COMMENT[].
WA_COMMENT-TYP = 'S'.
WA_COMMENT-KEY = V_DATA.
WA_COMMENT-INFO = 'kaka'(033).
APPEND WA_COMMENT TO I_COMMENT.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = I_COMMENT
I_LOGO = ''
I_END_OF_LIST_GRID = 'X'.
ENDFORM. " GENERATE_USERCOMMAND_FOOTER
*& Form GENERATE_USERCOMMAND3
Getting the F-Code and Calling Secondary List
--> P_UCOMM LIKE SY-UCOMM
--> P_SELFIELD TYPE SLIS_SELFIELD
FORM GENERATE_USERCOMMAND3 USING P_UCOMM LIKE SY-UCOMM
P_SELFIELD TYPE SLIS_SELFIELD.
CASE P_UCOMM.
WHEN '&IC1'. "DOUBLE CLICK Func-Code
READ TABLE IT_FINAL_BAS INDEX P_SELFIELD-TABINDEX.
REFRESH I_ITEM_DISPLAY.
*--Applying the color to record in Secondary List
LOOP AT IT_FINAL_SEC WHERE EBELN = IT_FINAL_BAS-EBELN.
IF IT_FINAL_SEC-NETPR EQ 0.
IT_FINAL_SEC-DUMMY = '@0A@'.
IT_FINAL_SEC-COLOR = 'C61'.
ELSEIF IT_FINAL_SEC-NETPR GT 0 AND IT_FINAL_SEC-NETPR LE 200.
IT_FINAL_SEC-DUMMY = '@09@'.
IT_FINAL_SEC-COLOR = 'C41'.
ELSEIF IT_FINAL_SEC-NETPR GT 200 AND IT_FINAL_SEC-NETPR LE 1000.
IT_FINAL_SEC-DUMMY = '@08@'.
IT_FINAL_SEC-COLOR = 'C71'.
ELSEIF IT_FINAL_SEC-NETPR GT 1000.
IT_FINAL_SEC-DUMMY = '@6P@'.
IT_FINAL_SEC-COLOR = 'C51'.
ENDIF.
MODIFY IT_FINAL_SEC INDEX SY-TABIX.
MOVE-CORRESPONDING IT_FINAL_SEC TO I_ITEM_DISPLAY.
APPEND I_ITEM_DISPLAY.
CLEAR I_ITEM_DISPLAY.
ENDLOOP.
*--Getting the ALV Events of Secondary List
PERFORM GET_EVENTS_SEC.
*--Generating the ALV Secondary Grid output
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER =
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = 'ZTEST'
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_STRUCTURE_NAME =
I_BACKGROUND_ID = 'PLAIN_BACKGROUND'
IS_LAYOUT = WA_LAYOUT
IT_FIELDCAT = I_FLDCAT_ITEM
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
IT_EVENTS = I_EVENTS_SEC
IT_EVENT_EXIT =
IS_PRINT =
IS_REPREP_ID =
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = I_ITEM_DISPLAY
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDCASE.
ENDFORM. " GENERATE_USERCOMMAND3
*& Form GET_LAYOUT
Generating the Layout
FORM GET_LAYOUT .
WA_LAYOUT-COLWIDTH_OPTIMIZE = 'X'. "OPTIMIZING FIELD WIDTH
WA_LAYOUT-ZEBRA = 'X'. "PUTTING ZEBRA COLORS
WA_LAYOUT-INFO_FIELDNAME = 'COLOR'(034). "APPLYING COLORS TO ROWS
ENDFORM. " GET_LAYOUT
*& Form GET_KEYINFO
Getting Key info
FORM GET_KEYINFO .
*--Linking the Basic List to Secondary List
WA_KEYINFO-HEADER01 = C_EBELN.
WA_KEYINFO-ITEM01 = C_EBELN.
ENDFORM. " GET_KEYINFO
*& Form GET_EVENTS_SEC
Getting Secondary List Events
FORM GET_EVENTS_SEC .
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = I_EVENTS_SEC
EXCEPTIONS
LIST_TYPE_WRONG = 1
OTHERS = 2
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*--Calling user-defined sub-routines for Secondary List
IF NOT I_EVENTS_SEC[] IS INITIAL.
READ TABLE I_EVENTS_SEC INTO WA_EVENT_SEC WITH KEY NAME = 'TOP_OF_PAGE'.
WA_EVENT_SEC-FORM = 'GENERATE_USERCOMMAND_H_SEC'.
MODIFY I_EVENTS_SEC FROM WA_EVENT_SEC INDEX SY-TABIX.
READ TABLE I_EVENTS_SEC INTO WA_EVENT_SEC WITH KEY NAME = 'END_OF_LIST'.
WA_EVENT_SEC-FORM = 'GENERATE_USERCOMMAND_F_SEC'.
MODIFY I_EVENTS_SEC FROM WA_EVENT_SEC INDEX SY-TABIX.
ENDIF.
ENDFORM. " GET_EVENTS_SEC
*& Form GENERATE_USERCOMMAND_H_SEC
Displaying Header-Text and Logo on Grid For Secondary List
FORM GENERATE_USERCOMMAND_H_SEC.
CLEAR I_COMMENT_SEC[].
WA_COMMENT_SEC-TYP = 'H'.
WA_COMMENT_SEC-INFO = 'Purchase Order Info'(035).
APPEND WA_COMMENT_SEC TO I_COMMENT_SEC.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = I_COMMENT_SEC
I_LOGO = 'ENJOYSAP_LOGO'.
I_END_OF_LIST_GRID = 'X'.
ENDFORM. " GENERATE_USERCOMMAND_H_SEC
*& Form GENERATE_USERCOMMAND_F_SEC
Displaying Footer-Text for Secondary List
FORM GENERATE_USERCOMMAND_F_SEC.
CLEAR I_COMMENT_SEC[].
WA_COMMENT_SEC-TYP = 'S'.
WA_COMMENT_SEC-KEY = V_DATA.
WA_COMMENT_SEC-INFO = 'kak1'(036).
APPEND WA_COMMENT_SEC TO I_COMMENT_SEC.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = I_COMMENT_SEC
I_LOGO = ''
I_END_OF_LIST_GRID = 'X'.
ENDFORM. " GENERATE_USERCOMMAND_F_SEC
*& Form UPDATE_DATA
text
--> p1 text
<-- p2 text
*form UPDATE_DATA .
*CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = ' '
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_TOP_OF_PAGE = ' '
I_CALLBACK_HTML_END_OF_LIST = ' '
I_STRUCTURE_NAME = I_STRUCTURE_NAME
I_BACKGROUND_ID = ' '
I_GRID_TITLE = I_GRID_TITLE
I_GRID_SETTINGS = I_GRID_SETTINGS
IS_LAYOUT = IS_LAYOUT
IT_FIELDCAT = IT_FIELDCAT
IT_EXCLUDING = IT_EXCLUDING
IT_SPECIAL_GROUPS = IT_SPECIAL_GROUPS
IT_SORT = IT_SORT
IT_FILTER = IT_FILTER
IS_SEL_HIDE = IS_SEL_HIDE
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT = IS_VARIANT
IT_EVENTS = IT_EVENTS
IT_EVENT_EXIT = IT_EVENT_EXIT
IS_PRINT = IS_PRINT
IS_REPREP_ID = IS_REPREP_ID
I_SCREEN_START_COLUMN = 0
I_SCREEN_START_LINE = 0
I_SCREEN_END_COLUMN = 0
I_SCREEN_END_LINE = 0
I_HTML_HEIGHT_TOP = 0
I_HTML_HEIGHT_END = 0
IT_ALV_GRAPHICS = IT_ALV_GRAPHICS
IT_HYPERLINK = IT_HYPERLINK
IT_ADD_FIELDCAT = IT_ADD_FIELDCAT
IT_EXCEPT_QINFO = IT_EXCEPT_QINFO
IR_SALV_FULLSCREEN_ADAPTER = IR_SALV_FULLSCREEN_ADAPTER
IMPORTING
E_EXIT_CAUSED_BY_CALLER = E_EXIT_CAUSED_BY_CALLER
ES_EXIT_CAUSED_BY_USER = ES_EXIT_CAUSED_BY_USER
TABLES
t_outtab = t_outtab
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
*IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
*ENDIF.
*endform. " UPDATE_DATA
</code>
regards,
sanjayHi,
Please refer to the code below:
REPORT ALV_LIGHTS.* Published at SAPTechnical.COMTYPES: BEGIN OF ty_alv,
lights(1) TYPE c, "Exception, Holding the value of the lights
text(20) TYPE c, "some text
END OF ty_alv.DATA: gs_alv TYPE ty_alv,
gt_alv TYPE TABLE OF ty_alv,
gr_alv TYPE REF TO cl_salv_table,
gr_columns TYPE REF TO cl_salv_columns_table.START-OF-SELECTION.
gs_alv-lights = '1'. "Color red
gs_alv-text = 'RED SIGNAL'.
APPEND gs_alv TO gt_alv. gs_alv-lights = '2'. "Color yellow
gs_alv-text = 'YELLOW SIGNAL'.
APPEND gs_alv TO gt_alv. gs_alv-lights = '3'. "Color green
gs_alv-text = 'GREEN SIGNAL'.
APPEND gs_alv TO gt_alv. CALL METHOD cl_salv_table=>factory
IMPORTING
r_salv_table = gr_alv
CHANGING
t_table = gt_alv. gr_columns = gr_alv->get_columns( ). gr_columns->set_exception_column( value = 'LIGHTS' ). CALL METHOD gr_alv->display.
Thanks,
Sriram Ponna. -
Urgent: regarding ALV report display problem
hi,
There are 3 problems:-
1.) I had made a ALV report in which i have to display 'POSTING DATE' (iseg-budat) when we execute the report i.e. it should be displayed as PERIOD :- _______ to _______ on alv report ..
2.)the 2nd problem is dat when i use the ' wa_fieldcat-no_zero = 'X'. It eliminates all the leading zeros which are present which is okay when i it displays material no.. but the problem is dat it also deletes the other fields where the values are to be zeros.
i had used this FM:-
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
INPUT = ITS1-MATNR
IMPORTING
OUTPUT = ITS1-MATNR.
so that only matnr field are to be 0's.
3.) I want to delete the rows which use to contain the values 0's as there are no calculations are performing as these are displayed .
ANYbody having solution of this problem ,plzzzz provide the soluion of it as it is most urgent to me and dat person will definately rewarded.
regards,
ric.shi kiran,
thanks for ur response. here is d code which i am using it and plzz help me to figure out where i have to make changes:-
REPORT ZTEST03.
TABLES: ISEG,MARA.
TYPE-POOLS : SLIS.
INTERNAL TABLE FOR INVENTORY STOCK *****************
DATA: BEGIN OF ITS1 OCCURS 0,
MATNR LIKE ISEG-MATNR,
MEINS LIKE ISEG-MEINS,
MENGE LIKE ISEG-MENGE,
WRTZL LIKE ISEG-WRTZL,
BUCHM LIKE ISEG-BUCHM,
WRTBM LIKE ISEG-WRTBM,
WERKS LIKE ISEG-WERKS,
BUDAT LIKE ISEG-BUDAT,
MTART LIKE MARA-MTART,
ITEMDESC LIKE MAKT-MAKTX,
DIFFQTY LIKE ISEG-BUCHM,
DIFFVALUE LIKE ISEG-WRTBM,
END OF ITS1.
data: t_heading type slis_t_listheader.
SELECTION-SCREEN BEGIN OF BLOCK PAR1 WITH FRAME TITLE TEXT-001.
*********PARAMETERS*********
PARAMETERS : PLANT LIKE ISEG-WERKS OBLIGATORY.
*********SELECTION SCREEN OPTIONS*********
SELECT-OPTIONS : R_DATE FOR ISEG-BUDAT,
M_TYPE FOR MARA-MTART,
IT_M FOR MARA-MATNR.
*********DEFINING VARIABLES*********
SELECTION-SCREEN END OF BLOCK par1.
TOP-OF-PAGE.
PERFORM PG_HEADER.
START-OF-SELECTION.
SELECT DISTINCT A~MATNR A~MEINS A~MENGE A~WRTZL A~BUCHM A~WRTBM A~WERKS A~BUDAT B~MTART
FROM ISEG AS A INNER JOIN MARA AS B ON B~MATNR = A~MATNR
INTO CORRESPONDING FIELDS OF TABLE ITS1 WHERE B~MATNR = A~MATNR AND B~MEINS = A~MEINS AND A~WERKS = PLANT AND A~BUDAT IN R_DATE AND B~MTART IN M_TYPE AND B~MATNR IN IT_M.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
INPUT = ITS1-MATNR
IMPORTING
OUTPUT = ITS1-MATNR.
SORT ITS1 BY MATNR.
DELETE ADJACENT DUPLICATES FROM ITS1 WHERE MENGE = 0 AND BUCHM = 0.
LOOP AT ITS1.
ITS1-DIFFQTY = ITS1-MENGE - ITS1-BUCHM.
ITS1-DIFFVALUE = ITS1-WRTZL - ITS1-WRTBM.
SELECT SINGLE MAKTX FROM MAKT INTO ITS1-ITEMDESC WHERE MATNR = ITS1-MATNR.
MODIFY ITS1.
ENDLOOP.
PERFORM PRN_SMSTOCK_ALV.
WRITING DATA FROM D TABLES**********
FORM PG_HEADER.
WRITE : 'PHYSICAL INVENTORY AUDIT REPORT PLANT : ', PLANT.
ENDFORM.
*& Form PRN_SMSTOCK_ALV
text
--> p1 text
<-- p2 text
form PRN_SMSTOCK_ALV .
data: w_title type lvc_title,
w_repid type syrepid,
w_comm type slis_formname,
w_status type slis_formname,
x_layout type slis_layout_alv,
t_event type slis_t_event,
t_fieldcat type slis_t_fieldcat_alv,
t_sort type slis_t_sortinfo_alv.
refresh t_fieldcat.
refresh t_event.
refresh t_sort.
clear x_layout.
clear w_title.
perform set_fieldcat2 using:
1 'MTART' 'MTART' 'MARA' '15' space 'MATERIAL TYPE' space space space space space space space space SPACE t_fieldcat 'L' 'C',
2 'MATNR' 'MATNR' 'MARA' '13' space 'MATERIAL NO. ' space space space space space space space space SPACE t_fieldcat 'R' 'C',
3 'ITEMDESC' 'MAKTX' 'MAKT' '25' space 'MATERIAL DESCRIPTION' space space space space space space space space SPACE t_fieldcat 'L' 'C',
4 'MEINS' 'MEINS' 'MARA' '5' space 'UOM' space space space space space space space space SPACE t_fieldcat 'C' 'C',
5 'MENGE' 'MENGE' 'ISEG' '13' space 'ORG.INV.QTY' space space space space space space space space SPACE t_fieldcat 'R' 'C',
6 'WRTZL' 'WRTZL' 'ISEG' '13' space 'ORG.INV.VALUE' space space space space space space space space SPACE t_fieldcat 'R' 'C',
7 'BUCHM' 'BUCHM' 'ISEG' '13' space 'PHY.INV.QTY' space space space space space space space space SPACE t_fieldcat 'R' 'C',
8 'WRTBM' 'WRTBM' 'ISEG' '13' space 'PHY.INV.VALUE' space space space space space space space space SPACE t_fieldcat 'R' 'C',
9 'DIFFQTY' 'MENGE' 'ISEG' '13' space 'DIFF.INV.QTY' space space space space space space space space SPACE t_fieldcat 'R' 'C',
10 'DIFFVALUE' 'WRTZL' 'ISEG' '13' space 'DIFF.INV.VALUE' space space space space space space space space SPACE t_fieldcat SPACE 'P'.
x_layout-zebra = 'X'.
perform set_top_page_heading using t_heading t_event.
perform set_events using t_event.
w_status = ''.
w_repid = sy-repid.
w_comm = 'USER_COMMAND'.
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
i_callback_program = w_repid
it_fieldcat = t_fieldcat
i_Callback_top_of_page = 'Top-of-page'
is_layout = x_layout
it_sort = t_sort
i_callback_pf_status_set = w_status
i_callback_user_command = w_comm
i_save = 'X'
it_events = t_event
i_grid_title = w_title
tables
t_outtab = ITS1
exceptions
program_error = 1
others = 2.
if sy-subrc <> 0.
message id sy-msgid type sy-msgty number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.
ENDFORM.
FORM set_fieldcat2 USING
p_colpos p_fieldname p_ref_fieldname p_ref_tabname
p_outputlen p_noout
p_seltext_m p_seltext_l p_seltext_s p_reptext_ddic p_ddictxt
p_hotspot p_showasicon p_checkbox p_edit
p_dosum
t_fieldcat TYPE slis_t_fieldcat_alv
P_JUST
P_FTYPE.
DATA: wa_fieldcat TYPE slis_fieldcat_alv.
CLEAR wa_fieldcat.
General settings
wa_fieldcat-fieldname = p_fieldname.
wa_fieldcat-no_zero = 'X'.
wa_fieldcat-col_pos = p_colpos.
wa_fieldcat-no_out = p_noout.
wa_fieldcat-hotspot = p_hotspot.
wa_fieldcat-checkbox = p_checkbox.
wa_fieldcat-icon = p_showasicon.
wa_fieldcat-do_sum = p_dosum.
Set output length.
IF NOT p_outputlen IS INITIAL.
wa_fieldcat-outputlen = p_outputlen.
ENDIF.
Set text headers.
IF NOT p_seltext_m IS INITIAL.
wa_fieldcat-seltext_m = p_seltext_m.
ENDIF.
IF NOT p_seltext_l IS INITIAL.
wa_fieldcat-seltext_l = p_seltext_l.
ENDIF.
IF NOT p_seltext_s IS INITIAL.
wa_fieldcat-seltext_s = p_seltext_s.
ENDIF.
IF NOT p_reptext_ddic IS INITIAL.
wa_fieldcat-reptext_ddic = p_reptext_ddic.
ENDIF.
IF NOT p_ddictxt IS INITIAL.
wa_fieldcat-ddictxt = p_ddictxt.
ENDIF.
IF NOT P_JUST IS INITIAL.
WA_FIELDCAT-JUST = P_JUST.
ENDIF.
Set as editable or not.
IF NOT p_edit IS INITIAL.
wa_fieldcat-input = 'X'.
wa_fieldcat-edit = 'X'.
ENDIF.
APPEND wa_fieldcat TO t_fieldcat.
ENDFORM. "set_fieldcat2
======================== Subroutines called by ALV ================
*& Form top_of_page
Called on top_of_page ALV event.
Prints the heading.
form top_of_page.
call function 'REUSE_ALV_COMMENTARY_WRITE'
exporting
it_list_commentary = t_heading.
ENDFORM.
form set_top_page_heading using t_heading type slis_t_listheader
t_events type slis_t_event.
data: x_heading type slis_listheader,
x_event type line of slis_t_event.
Report title
clear t_heading[].
clear x_heading.
x_heading-typ = 'H'.
x_heading-info = 'PHYSICAL INVENTORY AUDIT REPORT'.
append x_heading to t_heading.
Plant Name
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'PLANT: '.
x_heading-info = its1-werks.
append x_heading to t_heading.
Posting Date
*clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'POSTING DATE: '.
x_heading-info = ITS1-BUDAT.
append x_heading to t_heading.
Control Date
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'CONTROL No: '.
x_heading-info = its1-werks.
append x_heading to t_heading.
Control date
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'CONTROL DATE: '.
x_heading-info = its1-werks.
append x_heading to t_heading.
User who is running the report
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'User: '.
x_heading-info = sy-uname.
append x_heading to t_heading.
Date of execution
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'Date: '.
write sy-datum to x_heading-info.
append x_heading to t_heading.
Time of execution
clear x_heading.
x_heading-typ = 'S'.
x_heading-key = 'Time: '.
write sy-uzeit to x_heading-info.
append x_heading to t_heading.
Top of page event
x_event-name = slis_ev_top_of_page.
x_event-form = 'TOP_OF_PAGE'.
append x_event to t_events.
endform.
form set_events using t_events type slis_t_event.
data: x_event type line of slis_t_event.
endform.
plzzz help me out as it is most urgent to me.
regards,
ric.s -
Regarding Downloading of Report[List] output into Excel Sheet
Hi All,
Hi i have written one Classical report. I got the output Correctly.
Now i want to download that data into Excel Sheet in excatly the way it displayed in List[Report] output.
I had followed the path <b>System->List->Save->LocalFile->Spread Sheet</b> and tried to download the same.
Though it is downloaded it has not come in exact format.
Now what i want is to add a button above that report & write a program in that to download that data into Excel Sheet.
Can anybody tell me how can solve this issue. If i follow above procedure will the data[List Output] be downloaded into exact format into excel.
If anybody knows other way please sujjest.
Thanks in advance.
Thanks & Regards,
Prasad.Hi Prasad,
I have done a program which downloads the output in the excel sheet in the correct format.
Just check the program. The code given in bold is what you have to use.
REPORT zexp MESSAGE-ID f4 LINE-SIZE 195.
Tables Used ***********************************
TABLES : bseg, bkpf, bsak, lfa1, payr .
Declaring Internal Tables **************************
DATA :
Internal table to hold header data *************
BEGIN OF header OCCURS 0,
ext_date(10) TYPE c,
delimit(1) TYPE c,
ext_time(8) TYPE c,
END OF header,
Internal table to hold detail info **************
BEGIN OF i_data OCCURS 0,
belnr LIKE bsak-belnr,
gjahr LIKE bsak-gjahr,
bukrs LIKE bsak-bukrs,
bldat LIKE bsak-bldat,
xblnr LIKE bsak-xblnr,
blart LIKE bsak-blart,
augdt LIKE bsak-augdt,
augbl LIKE bsak-augbl,
wrbtr LIKE bsak-wrbtr,
shkzg LIKE bsak-shkzg,
lifnr LIKE bsak-lifnr,
name1 LIKE lfa1-name1,
chect LIKE payr-chect,
status(1) TYPE c,
END OF i_data,
Internal table to to collect *****************
BEGIN OF i_data1 OCCURS 0,
belnr LIKE bsak-belnr,
gjahr LIKE bsak-gjahr,
bukrs LIKE bsak-bukrs,
bldat LIKE bsak-bldat,
xblnr LIKE bsak-xblnr,
blart LIKE bsak-blart,
augdt LIKE bsak-augdt,
augbl LIKE bsak-augbl,
wrbtr LIKE bsak-wrbtr,
shkzg LIKE bsak-shkzg,
lifnr LIKE bsak-lifnr,
name1 LIKE lfa1-name1,
sortl LIKE lfa1-sortl,
chect LIKE payr-chect,
status(1) TYPE c,
END OF i_data1,
String variables for formatting file data *************
fidoc_year TYPE string,
comp_code TYPE string,
check_numbr TYPE string,
vendor TYPE string,
inv_date TYPE string,
inv_nbr TYPE string,
paid_dat TYPE string,
inv_amt TYPE string,
status TYPE string,
ref_doc TYPE string,
************Internal table to store the file contents **************
BEGIN OF i_final_file OCCURS 0,
record(300) TYPE c,
END OF i_final_file,
Internal table to store the list of allowed document types ****
BEGIN OF i_doctype OCCURS 0,
blart LIKE bsak-blart,
END OF i_doctype,
Internal table to hold vendor information ************
BEGIN OF i_lfa1 OCCURS 0,
lifnr LIKE lfa1-lifnr,
name1 LIKE lfa1-name1,
sortl LIKE lfa1-sortl,
END OF i_lfa1,
Internal table to hold check information *************
BEGIN OF i_payr OCCURS 0,
chect LIKE payr-chect,
vblnr LIKE payr-vblnr,
gjahr LIKE payr-gjahr,
zbukr LIKE payr-zbukr,
END OF i_payr.
Data declarations **************************
DATA : ws_stblg TYPE bkpf-stblg,
todate TYPE bsak-augdt,
fromdate TYPE bsak-augdt,
w_day LIKE dtresr-weekday,
day LIKE scal-indicator,
d TYPE n,
e_date LIKE sy-datum,
e_time LIKE sy-uzeit,
dd(2) TYPE c,
mm(2) TYPE c,
yy(4) TYPE c,
hh(2) TYPE c,
min(2) TYPE c,
sec(2) TYPE c.
DATA : wa_filepath(50) TYPE c,
wa_filename(50) TYPE c,
wa_c_filename(100) TYPE c,
arch_path(50) TYPE c.
<b>* Data for downloading to list
DATA : list LIKE TABLE OF abaplist WITH HEADER LINE.
DATA : BEGIN OF list_asc OCCURS 0,
msg(300) TYPE c,
END OF list_asc.
DATA: BEGIN OF i_invoiceheader OCCURS 0,
name(30) TYPE c,
END OF i_invoiceheader.
RANGES dates FOR bkpf-budat.</b>
Selection Screen ************************
SELECTION-SCREEN SKIP 2.
SELECT-OPTIONS:
s_bukrs FOR bkpf-bukrs ,
s_blart FOR bkpf-blart ,
s_augdt FOR bsak-augdt. " memory id todat TO fromdat.
PARAMETERS :submit AS CHECKBOX DEFAULT ' ' .
<b>* Download list to file.
AT USER-COMMAND.
CASE sy-ucomm.
WHEN 'LIST'.
PERFORM download.
WHEN 'BACK'.
EXIT.
ENDCASE.</b>
<b>----
FORM download *
FORM download.
if s_augdt is initial.
dates-sign = 'I'.
dates-option = 'BT'.
dates-low = '20050901'.
dates-high = '20050920'.
APPEND dates.
else.
dates = s_augdt.
append dates.
endif.
/* Submit the same program .
SUBMIT zexp WITH s_augdt IN dates
EXPORTING LIST TO MEMORY
AND RETURN.
CALL FUNCTION 'LIST_FROM_MEMORY'
TABLES
listobject = list
EXCEPTIONS
not_found = 1.
CALL FUNCTION 'LIST_TO_ASCI'
EXPORTING
LIST_INDEX = -1 "LIST_INDEX SY-LSIND.
TABLES
listasci = list_asc
listobject = list.
PERFORM download_file.
ENDFORM.
FORM download_file *
FORM download_file.
DATA fname TYPE rlgrap-filename VALUE 'c:\audit_report.xls'.
DATA ftype TYPE rlgrap-filetype VALUE 'DAT'.
DATA numeric_data(10) TYPE c VALUE '0123456789'.
*Table structure should match with list output.
DATA : BEGIN OF i_data1 OCCURS 0,
belnr(12) TYPE c,
gjahr(6) TYPE c,
bukrs(8) TYPE c,
chect(13) TYPE c,
lifnr(12) TYPE c,
name1(37) TYPE c,
bldat(14) TYPE c,
xblnr(18) TYPE c,
augdt(14) TYPE c,
wrbtr(17) TYPE c,
status(4) TYPE c,
augbl(18) TYPE c,
sortl(17) TYPE c,
END OF i_data1.
Header record of the excel sheet.
PERFORM fill_header.
LOOP AT list_asc.
Reads lines starting from the first record in the report. All informatory statements in the report are not read.
IF list_asc+1(10) CO numeric_data.
i_data1 = list_asc .
APPEND i_data1.
ENDIF.
ENDLOOP.
Call the download function.
CALL FUNCTION 'DOWNLOAD'
EXPORTING
filename = fname
filetype = ftype
TABLES
data_tab = i_data1
FIELDNAMES = i_invoiceheader.
ENDFORM.
FORM fill_header *
FORM fill_header.
i_invoiceheader-name = 'Doc Number'.
APPEND i_invoiceheader.
i_invoiceheader-name = 'Fsc Year'.
APPEND i_invoiceheader.
i_invoiceheader-name = 'Cmp Code'.
APPEND i_invoiceheader.
i_invoiceheader-name = 'Check No'.
APPEND i_invoiceheader.
i_invoiceheader-name = 'Vendor No'.
APPEND i_invoiceheader.
i_invoiceheader-name = 'Entered by'.
APPEND i_invoiceheader.
i_invoiceheader-name = 'Doc Date'.
APPEND i_invoiceheader.
i_invoiceheader-name = 'Ref Doc No'.
APPEND i_invoiceheader.
i_invoiceheader-name = 'Clearing Date'.
APPEND i_invoiceheader.
i_invoiceheader-name = 'Amount'.
APPEND i_invoiceheader.
i_invoiceheader-name = 'Status'.
APPEND i_invoiceheader.
i_invoiceheader-name = 'Clearing Doc No'.
APPEND i_invoiceheader.
i_invoiceheader-name = 'Sort field'.
APPEND i_invoiceheader.
ENDFORM. " fill_header</b>
Initialization *************************
INITIALIZATION.
To initialize the date parameter on the selection screen.
The date by default ranges from previous Monday to Sunday.
todate = sy-datum.
CALL FUNCTION 'DATE_COMPUTE_DAY'
EXPORTING
date = todate
IMPORTING
day = day.
d = day.
if d < 4.
todate = sy-datum - d - 4 .
else.
todate = sy-datum - d + 3 .
endif.
fromdate = todate - 6.
MOVE: 'BT' TO s_augdt-option,
fromdate TO s_augdt-low,
todate TO s_augdt-high.
APPEND s_augdt.
Start of Selection **************************
START-OF-SELECTION.
Checking the validity of the inputted dates ****************
IF s_augdt-low > sy-datum OR s_augdt-high > sy-datum.
MESSAGE i999 WITH 'You cannot input future date'.
EXIT.
ENDIF.
IF NOT s_bukrs IS INITIAL.
MESSAGE i999 WITH 'Program will run with input parameters in screen!!'.
ENDIF.
Initialize the header data ***********************
e_time = sy-uzeit.
MOVE e_time+0(2) TO hh.
MOVE e_time+2(2) TO min.
MOVE e_time+4(2) TO sec.
CONCATENATE hh min sec INTO header-ext_time SEPARATED BY ':'.
e_date = sy-datum.
MOVE e_date+0(4) TO yy.
MOVE e_date+4(2) TO mm.
MOVE e_date+6(2) TO dd.
CONCATENATE mm dd yy INTO header-ext_date SEPARATED BY '/'.
header-delimit = '~'.
APPEND header.
List allowed document types **********************
PERFORM fill_doc_types.
**To select the documents within the range of week or as inputted **
IF s_augdt IS INITIAL.
MOVE: 'I' TO s_augdt-sign,
'BT' TO s_augdt-option,
fromdate TO s_augdt-low,
todate TO s_augdt-high.
APPEND s_augdt.
ENDIF.
Selecting the records from the database ****************
IF s_bukrs IS INITIAL AND s_blart IS INITIAL.
Select all documents of company code 1000, *********
4200 and 8000, and allowed document types *********
SELECT belnr gjahr augdt augbl bukrs
blart bldat xblnr lifnr wrbtr shkzg
FROM bsak INTO CORRESPONDING FIELDS OF TABLE i_data
FOR ALL ENTRIES IN i_doctype
WHERE blart EQ i_doctype-blart
AND augdt IN s_augdt
AND ( bukrs = '1000' OR bukrs ='4200' OR
( bukrs = '8000' AND blart NE 'ZP' ) ).
loop at i_data.
Exclude reversed documents
select single stblg into ws_stblg
from bkpf
where bukrs = i_data-bukrs
and gjahr = i_data-gjahr
and belnr = i_data-belnr.
if not ws_stblg is initial.
delete i_data.
endif.
endloop.
ELSEIF s_blart IS INITIAL.
Select all documents of allowed document types ******
and inputted company code ************
SELECT belnr gjahr augdt augbl bukrs
blart bldat xblnr lifnr wrbtr shkzg
FROM bsak INTO CORRESPONDING FIELDS OF TABLE i_data
FOR ALL ENTRIES IN i_doctype
WHERE blart EQ i_doctype-blart
AND augdt IN s_augdt
AND bukrs IN s_bukrs .
LOOP AT i_data.
Exclude documents of type ZP
for company code 8000.
IF i_data-bukrs = '8000' AND i_data-blart = 'ZP'.
DELETE i_data.
continue.
ENDIF.
Exclude reversed documents
select single stblg into ws_stblg
from bkpf
where bukrs = i_data-bukrs
and gjahr = i_data-gjahr
and belnr = i_data-belnr.
if not ws_stblg is initial.
delete i_data.
continue.
endif.
ENDLOOP.
READ TABLE i_data INDEX 1.
IF sy-subrc NE 0.
MESSAGE i999 WITH 'No records have been selected'.
EXIT.
ENDIF.
ELSE.
Select the documents matching the company codes *****
and document types inputted in the selection screen ****
SELECT belnr gjahr augdt augbl bukrs bldat xblnr
blart lifnr wrbtr shkzg
FROM bsak INTO CORRESPONDING FIELDS OF TABLE i_data
WHERE bukrs IN s_bukrs AND blart IN s_blart
AND augdt IN s_augdt.
SORT i_data BY blart.
LOOP AT i_data.
Filtering the records selected
based on the document type
READ TABLE i_doctype WITH KEY blart = i_data-blart.
IF sy-subrc NE 0.
DELETE i_data.
continue.
ENDIF.
Exclude documents of type ZP
for company code 8000.
IF i_data-bukrs = '8000' AND i_data-blart = 'ZP'.
DELETE i_data.
continue.
ENDIF.
Exclude reversed documents.
select single stblg into ws_stblg
from bkpf
where bukrs = i_data-bukrs
and gjahr = i_data-gjahr
and belnr = i_data-belnr.
if not ws_stblg is initial.
delete i_data.
continue.
endif.
ENDLOOP.
READ TABLE i_data INDEX 1.
IF sy-subrc NE 0.
MESSAGE i999 WITH 'No records have been selected'.
EXIT.
ENDIF.
ENDIF.
IF sy-subrc NE 0.
MESSAGE i999 WITH 'No records have been selected'.
EXIT.
ENDIF.
credit/debit identification ***********************
LOOP AT i_data.
IF i_data-shkzg EQ 'H'.
i_data-wrbtr = i_data-wrbtr * 1.
ELSEIF i_data-shkzg EQ 'S'.
i_data-wrbtr = i_data-wrbtr * -1.
ENDIF.
MODIFY i_data.
ENDLOOP.
for summarizing ******************************
LOOP AT i_data.
MOVE-CORRESPONDING i_data TO i_data1.
COLLECT i_data1.
ENDLOOP.
Vendor informations and Check Informations *****************
SELECT lifnr name1 sortl
FROM lfa1
APPENDING CORRESPONDING FIELDS OF TABLE i_lfa1
FOR ALL ENTRIES IN i_data1
WHERE lifnr = i_data1-lifnr.
SELECT chect vblnr gjahr zbukr FROM payr APPENDING CORRESPONDING
FIELDS OF TABLE i_payr FOR ALL ENTRIES
IN i_data1 WHERE vblnr = i_data1-augbl
AND gjahr = i_data1-augdt(4)
AND zbukr = i_data1-bukrs.
SORT i_data1 BY augbl gjahr bukrs lifnr.
SORT i_payr BY vblnr gjahr zbukr.
SORT i_lfa1 BY lifnr.
LOOP AT i_data1.
READ TABLE i_payr WITH KEY vblnr = i_data1-augbl
gjahr = i_data1-gjahr
zbukr = i_data1-bukrs.
IF sy-subrc EQ 0.
i_data1-chect = i_payr-chect.
ENDIF.
READ TABLE i_lfa1 WITH KEY lifnr = i_data1-lifnr.
IF sy-subrc EQ 0.
i_data1-name1 = i_lfa1-name1.
i_data1-sortl = i_lfa1-sortl.
ENDIF.
i_data1-status = 'X'.
MODIFY i_data1.
ENDLOOP.
**The records are sorted by clearing date, check number and doc type**
SORT i_data1 BY augdt chect blart.
**********The header record is outputted on the screen****************
PERFORM write_header.
********Data is moved to internal table in the file format *************
PERFORM move_data.
Line items are outputted on the screen *********************
PERFORM write_output.
*& Form write_header &*
*& This outputs the header information to screen &*
FORM write_header.
SKIP.
SET PF-STATUS 'LIST'.
Outputting the header information *********************
WRITE : / 'Extraction Date : ' , header-ext_date.
WRITE : / 'Extraction Time : ' , header-ext_time.
FORMAT COLOR 1." INTENSIFIED.
SKIP.
ULINE AT 0(190) NO-GAP.
Outputting line level information **********************
WRITE:/ sy-vline NO-GAP,
(10) 'DOC NUMBER',
sy-vline NO-GAP,
(4) 'F-YR',
sy-vline NO-GAP,
(6) 'C-CODE',
sy-vline NO-GAP,
(10) 'CHECK NUM',
sy-vline NO-GAP,
(10) 'VENDOR NUM',
sy-vline NO-GAP,
(35) 'VENDOR NAME',
sy-vline NO-GAP,
(12) 'INVOICE DATE',
sy-vline NO-GAP,
(16) 'INVOICE NUMBER',
sy-vline NO-GAP,
(12) 'PAID DATE',
sy-vline NO-GAP,
(15) 'INVOICE AMOUNT',
sy-vline NO-GAP,
(2) 'SC',
sy-vline NO-GAP,
(16) 'REFERENCE FI DOC',
sy-vline NO-GAP,
(15) 'SORT FIELD',
sy-vline NO-GAP.
ULINE AT 0(190) NO-GAP.
ENDFORM. " write_header
*& FORM MOVE_DATA &*
*& Formats data in internal table as is required in the file &*
FORM move_data.
LOOP AT i_data1.
Document number and fiscal year should be separted by '|' *****
CONCATENATE i_data1-belnr i_data1-gjahr INTO fidoc_year
SEPARATED BY '|'.
MOVE i_data1-bukrs TO comp_code.
MOVE i_data1-chect TO check_numbr.
Vendor number and vendor name should be separted by '|' *****
CONCATENATE i_data1-lifnr i_data1-name1 INTO vendor
SEPARATED BY '|'.
SHIFT vendor LEFT DELETING LEADING '0'.
SHIFT vendor RIGHT DELETING TRAILING space.
Date fields converted to MM/DD/YYYY format ****************
MOVE i_data1-bldat+0(4) TO yy.
MOVE i_data1-bldat+4(2) TO mm.
MOVE i_data1-bldat+6(2) TO dd.
CONCATENATE mm dd yy INTO inv_date SEPARATED BY '/'.
MOVE i_data1-xblnr TO inv_nbr.
SHIFT inv_nbr RIGHT DELETING TRAILING space.
MOVE i_data1-augdt+0(4) TO yy.
MOVE i_data1-augdt+4(2) TO mm.
MOVE i_data1-augdt+6(2) TO dd.
CONCATENATE mm dd yy INTO paid_dat SEPARATED BY '/'.
MOVE i_data1-wrbtr TO inv_amt.
CONDENSE inv_amt.
SHIFT inv_amt RIGHT DELETING TRAILING space.
MOVE i_data1-status TO status.
MOVE i_data1-augbl TO ref_doc.
CONCATENATE fidoc_year
comp_code
check_numbr
vendor
inv_date
inv_nbr
paid_dat
inv_amt
status
ref_doc
INTO i_final_file-record SEPARATED BY '~'.
APPEND i_final_file.
ENDLOOP.
ENDFORM. " MOVE_DATA
*& Form write_output &*
*& Outputs all data to screen &*
FORM write_output.
LOOP AT i_data1.
FORMAT COLOR 2 INTENSIFIED.
Outputting line level information *******************
WRITE : / sy-vline NO-GAP,
(10) i_data1-belnr,
sy-vline NO-GAP,
(4) i_data1-gjahr,
sy-vline NO-GAP,
(6) i_data1-bukrs,
sy-vline NO-GAP,
(10) i_data1-chect,
sy-vline NO-GAP,
(10) i_data1-lifnr,
sy-vline NO-GAP,
(35) i_data1-name1,
sy-vline NO-GAP,
(12) i_data1-bldat MM/DD/YYYY,
sy-vline NO-GAP,
(16) i_data1-xblnr,
sy-vline NO-GAP,
(12) i_data1-augdt MM/DD/YYYY,
sy-vline NO-GAP,
(15) i_data1-wrbtr,
sy-vline NO-GAP,
(2) i_data1-status,
sy-vline NO-GAP,
(16) i_data1-augbl,
sy-vline NO-GAP,
(15) i_data1-sortl,
sy-vline NO-GAP.
ENDLOOP.
ULINE AT 0(190) NO-GAP.
ENDFORM. " write_output
In the program, I am downloading only the list.. The description of report outputted in the beginning of the report is not downloaded to excel.
What has to be taken into consideration is that, the structure of the table i_data1 which contains the data to be downloaded to the table.
I hope that this will help you.
Regards,
Susmitha -
Regarding download of the ALV report to excel
Hi experts,
I have an ALV report which took long time to extract records from various table. So while there is some restriction the report can be executed well in foreground. And the report can be extracted well to excel sheet. But while there is hudge records, i have to execute the report in backgroung. And then from spool i generally prefers to download the report to excel.
There is a field UOM where it contains value ' " ' for some records. And also there may be possiblity that other fields can also contain the same.
Now my problem is: while download to excel... When ever there is a value ' " ' from this point to the next value ' " '. It is treating as one record. and keep that in a same position in the excel sheet.
But i want to keep all the values in there respective fields. Can you please how can i do that? Please give me some solution...
regards,
charles.Actually now I think there is another way to do this, storing file on application server can create problems as sometimes the users don't have directory write access or things like that.
Instead you should export your data to a memory or database cluster and import it back using abother program.
The proposed changes would be
1: At the point you are calling your alv grid function, check if the sy-batch is 'X' for background job, if yes than export to database table INDX or you can create your own. suppose your data is in internal table ITAB than in case of background job, you will do
data: keyf like indx-srtfd.
*We just assign username, date time to this
concatenate sy-uname sy-datum sy-uzeit into keyf.
EXPORT itab TO DATABASE indx(ZZ) ID keyf.
check for subrc if export is successfull.
Now you have stored your itab in database for later processing. remember to have keyf. In case of background job you can have it write in the output so from spool output you can check what was the keyf to use.
You have to write another program to import itab from database and download it or display it.....
This program will have keyf as input parameter and you must define ITAB same as the orignal program.
parameters: p_keyf like like indx-srtfd.
import itab from database indx(ZZ) id keyf.
*Now you have itab. do whatever you want with it. download it using GUI_DOWNLOAD function or display it in an ALV grid.......
Hope you got the overall idea. -
Urgent:regarding purchase requsitions
HI,
i am making purchase requsition report in which i have to display that these are the person who released the purchase requsition at dese dates.
plzzzz help me out as i am able to display only release requsitions but not the person who had released it. i am using table eban.
IF ANYBODY HELP ME OUT HE OR SHE WILL BE DEFINATELY REWARDED.
Regards,
ric.sHi,
Go through this program, you have answer
It is possible to generate a complete list of purchase document releases with the purchase document number (requisitions and orders), releaser, release date and release time. * First, create an Infoset using transaction SQ02 directly reading from table CDPOS and create an additional table: CDHDR. If you are releasing purchase requsitions at the item level, it is convenient to create an additional field (PURPS LIKE EBAN-BNFPO) to capture the item number.
GO THROUGH THIS CODE
Mass Display of Purchase Orders
Submitted by webmaster at www.sap-img.com
Mass display or print Purchase Order History
You can request report by :
1. Change date
2. User Name
3. Purchase Order Number
4. Vendor Code
Written by : SAP Basis, ABAP Programming and Other IMG Stuff
www.sap-img.com
REPORT ZPOCHANGE LINE-SIZE 132 NO STANDARD PAGE HEADING
LINE-COUNT 065(001)
MESSAGE-ID VR.
TABLES: DD04T,
CDHDR,
CDPOS,
DD03L,
DD41V,
T685T,
VBPA,
TPART,
KONVC,
EKKO.
SELECT-OPTIONS: XUDATE FOR CDHDR-UDATE,
XNAME FOR CDHDR-USERNAME,
XEBELN FOR EKKO-EBELN,
XLIFNR FOR EKKO-LIFNR.
SELECTION-SCREEN SKIP.
TEXT-001 - Sorting Sequence
SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-001.
PARAMETERS: SUDATE RADIOBUTTON GROUP R1,
SNAME RADIOBUTTON GROUP R1,
SOBID RADIOBUTTON GROUP R1.
SELECTION-SCREEN END OF BLOCK BLK1.
DATA: WFLAG,
WCHANGENR LIKE CDHDR-CHANGENR.
DATA: INDTEXT(60) TYPE C.
DATA: BEGIN OF ICDHDR OCCURS 50.
INCLUDE STRUCTURE CDHDR.
DATA: END OF ICDHDR.
DATA: BEGIN OF ICDSHW OCCURS 50.
INCLUDE STRUCTURE CDSHW.
DATA: END OF ICDSHW.
DATA: BEGIN OF EKKEY,
EBELN LIKE EKET-EBELN,
EBELP LIKE EKET-EBELP,
ETENR LIKE EKET-ETENR,
END OF EKKEY.
DATA: BEGIN OF ITAB OCCURS 50,
BEGIN OF EKKEY,
EBELN LIKE EKET-EBELN,
EBELP LIKE EKET-EBELP,
ETENR LIKE EKET-ETENR,
END OF EKKEY,
CHANGENR LIKE CDHDR-CHANGENR,
UDATE LIKE CDHDR-UDATE,
UTIME LIKE CDHDR-UTIME,
USERNAME LIKE CDHDR-USERNAME,
CHNGIND LIKE CDSHW-CHNGIND,
FTEXT LIKE CDSHW-FTEXT,
OUTLEN LIKE CDSHW-OUTLEN,
F_OLD LIKE CDSHW-F_OLD,
F_NEW LIKE CDSHW-F_NEW,
END OF ITAB.
DATA: OLD_OBJECTID LIKE CDHDR-OBJECTID.
FIELD-SYMBOLS: <F_OLD>, <F_NEW>.
SELECT * FROM EKKO WHERE EBELN IN XEBELN AND
LIFNR IN XLIFNR.
CLEAR CDHDR.
CLEAR CDPOS.
CDHDR-OBJECTCLAS = 'EINKBELEG'.
CDHDR-OBJECTID = EKKO-EBELN.
PERFORM GETCHGDOCS.
ENDSELECT.
IF SUDATE = 'X'.
SORT ITAB BY UDATE EKKEY-EBELN CHANGENR EKKEY-EBELP
EKKEY-ETENR.
ELSEIF SNAME = 'X'.
SORT ITAB BY USERNAME EKKEY-EBELN CHANGENR EKKEY-EBELP
EKKEY-ETENR.
ELSE.
SORT ITAB BY EKKEY-EBELN CHANGENR EKKEY-EBELP EKKEY-ETENR.
ENDIF.
LOOP AT ITAB.
CLEAR: INDTEXT, EKKEY.
CASE ITAB-CHNGIND.
WHEN 'U'.
INDTEXT(50) = ITAB-FTEXT.
INDTEXT+51 = TEXT-020.
CONDENSE INDTEXT.
WHEN 'D'.
INDTEXT = TEXT-021.
WHEN 'E'.
INDTEXT(5) = ITAB-FTEXT.
INDTEXT+51 = TEXT-021.
CONDENSE INDTEXT.
WHEN 'I'.
INDTEXT = TEXT-022.
ENDCASE.
RESERVE 4 LINES.
IF WCHANGENR NE ITAB-CHANGENR.
WCHANGENR = ITAB-CHANGENR.
EKKEY = ITAB-EKKEY.
WRITE:/ ITAB-UDATE UNDER 'Change Date',
ITAB-UTIME UNDER 'Time',
ITAB-USERNAME UNDER 'User Name',
ITAB-EKKEY-EBELN UNDER 'PO No',
ITAB-EKKEY-EBELP UNDER 'Item',
ITAB-EKKEY-ETENR UNDER 'Sch No',
INDTEXT UNDER 'Changes'.
ELSEIF ITAB-EKKEY NE EKKEY.
WRITE:/ ITAB-EKKEY-EBELP UNDER 'Item',
ITAB-EKKEY-ETENR UNDER 'Sch No',
INDTEXT UNDER 'Changes'.
ENDIF.
CASE ITAB-CHNGIND.
WHEN 'U'.
ASSIGN ITAB-F_OLD(ITAB-OUTLEN) TO <F_OLD>.
ASSIGN ITAB-F_NEW(ITAB-OUTLEN) TO <F_NEW>.
WRITE: / TEXT-023 UNDER 'Changes',
<F_OLD>.
WRITE: / TEXT-024 UNDER 'Changes',
<F_NEW>.
WHEN 'E'.
ASSIGN ITAB-F_OLD(ITAB-OUTLEN) TO <F_OLD>.
WRITE: TEXT-023 UNDER 'Changes',
<F_OLD>.
ENDCASE.
SKIP.
ENDLOOP.
TOP-OF-PAGE.
WRITE:/ SY-DATUM,SY-UZEIT,
50 'P U R C H A S E O R D E R H I S T O R Y',
120 'Page', SY-PAGNO.
WRITE: / SY-REPID,
60 'Purchase Orders Changes'.
SKIP.
ULINE.
IF SUDATE = 'X'.
WRITE:/001 'Change Date',
014 'Time',
024 'User Name',
038 'PO No',
050 'Item',
057 'Sch No',
065 'Changes'.
ELSEIF SOBID = 'X'.
WRITE:/001 'PO No',
013 'Item',
020 'Sch No',
028 'Change Date',
041 'Time',
051 'User Name',
065 'Changes'.
ELSE.
WRITE:/001 'User Name',
015 'Change Date',
028 'Time',
038 'PO No',
050 'Item',
057 'Sch No',
065 'Changes'.
ENDIF.
ULINE.
FORM GETCHGDOCS.
CALL FUNCTION 'CHANGEDOCUMENT_READ_HEADERS'
EXPORTING
DATE_OF_CHANGE = CDHDR-UDATE
OBJECTCLASS = CDHDR-OBJECTCLAS
OBJECTID = CDHDR-OBJECTID
TIME_OF_CHANGE = CDHDR-UTIME
USERNAME = CDHDR-USERNAME
TABLES
I_CDHDR = ICDHDR
EXCEPTIONS
NO_POSITION_FOUND = 1
OTHERS = 2.
CHECK SY-SUBRC EQ 0.
DELETE ICDHDR WHERE CHANGE_IND EQ 'I'.
CHECK NOT ICDHDR[] IS INITIAL.
LOOP AT ICDHDR.
CHECK ICDHDR-UDATE IN XUDATE.
CHECK ICDHDR-USERNAME IN XNAME.
CALL FUNCTION 'CHANGEDOCUMENT_READ_POSITIONS'
EXPORTING CHANGENUMBER = ICDHDR-CHANGENR
IMPORTING HEADER = CDHDR
TABLES EDITPOS = ICDSHW
EXCEPTIONS NO_POSITION_FOUND = 1
OTHERS = 2.
CHECK SY-SUBRC EQ 0.
LOOP AT ICDSHW.
CHECK ICDSHW-TEXT_CASE EQ SPACE.
MOVE-CORRESPONDING ICDSHW TO ITAB.
MOVE-CORRESPONDING ICDHDR TO ITAB.
MOVE ICDSHW-TABKEY+3 TO ITAB-EKKEY.
APPEND ITAB.
ENDLOOP.
ENDLOOP.
ENDFORM.
END OF PROGRAM
Regards,
Satish -
Regarding Exit/IDOC Related TD
Hi,
Can anybody tell me what is the code required to be written folowing TD points.
Before below TD i have populated one internal table in
userexit_save_document exit and submitted following new program need to be written as below:
SUBMIT gv_prog
WITH SELECTION-TABLE t_seltab
VIA JOB gv_jobname NUMBER gv_jobnum "USER puser
AND RETURN TO SAP-SPOOL
SPOOL PARAMETERS gv_params
WITHOUT SPOOL DYNPRO.
As i am new to IDOC Concept can anybody help to write following code!
Create new custom program that will create the CTO deletion idocs to send to WWCLASS
Requirements:
o Need to be able to import data in from the save_doc userexit and create and post the idoc
 Import needed data from userexit_save_document
 Fill the control record to send into function (waiting for FA to get this information to me, as they have not yet created the partner)
DOCTYP =
OUTMOD = 2
SERIAL = sy-datum
SERIAL+8 = sy-uzeit
IDOCTP = ORDERS05
MESTYP = ORDERS
MESCOD = ??????
RCVPRT = ??????
RCVPRN = ??????
RCVPFC = ??????
RCVPOR = ??????
 Fill the E1EDK01 segment (Header level segment)
CURCY = currency
ZTERM = zterm
BELNR = order number (vbeln)
 Fill the E1EDP01 segment (Item level segment)
POSEX = item number (posnr)
ACTION = 001
 Fill the E1EDP19 segment (Item Object Identification segment)
QUALF = OID to represent old GCTO id
IDTNR = GCTO ID from vbap
 Generate the idoc
CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE'
EXPORTING
MASTER_IDOC_CONTROL = cntrl data
TABLES
COMMUNICATION_IDOC_CONTROL = cntrl data(returned)
MASTER_IDOC_DATA = idoc data
EXCEPTIONS
ERROR_IN_IDOC_CONTROL = 1
ERROR_WRITING_IDOC_STATUS = 2
ERROR_IN_IDOC_DATA = 3
SENDING_LOGICAL_SYSTEM_UNKNOWN = 4
OTHERS = 5
Based on the documentation for this standard function, you will need to do a commit work after calling the program in order to ensure the idoc is dispatched.
o Need to be able to capture failures and send report to users in e-mail
 Failures fall into 2 categories:
An IDOC was created, but the posting fails with error status. In this case, we still want to capture this in the file as a failure, but the users should re-process this with standard SAP transactions (can find status of created idoc in the returned communication_idoc_control table).
An IDOC was NOT created for some reason. In this case, we will need to capture all the necessary information needed to try and re-create an idoc
 File should be sent via e-mail to users defined in a table.
Use standard FM SO_NEW_DOCUMENT_SEND_API1 to send document to specified users
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
document_data =
document_type = 'RAW'
put_in_outbox = ''
TABLES
object_content =
receivers =
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
Document Data should include the email header information. Something that denotes to user that this is an WWCLASS CTO Deletion IDOC Error Report
Object Content should include the following information:
o IDOC# (in cases where the idoc was created, but has fail status)
o Order Number
o Currency
o Terms of Payment
o Item Number
o GCTO ID
Receivers should be the list of addresses that will receive the email.
o Read table ZCMAIL with REPID = this program name, and MAIL_LIST = to retrieve all the addresses that will need to have the report sent. Will need to send the FA the name of this program so they can setup the table entries properly.
o Need to add parameters to program that will also allow the user to run this program manually so they can re-create the idoc in cases where the idoc was erroneously not created in normal process.
 Allow user to enter a file name that could be uploaded from their hard drive that will contain all data need to create the idoc.
 Generate the idoc based on data in file.
 File could look similar to the data reported in the error report
Can anybody help me in writing code for above TD!
Thanks in advance.
Thanks & Regards,
Deep.HI,
Any solutions for the same!
Thnaks,
Deep. -
Query Regarding ALV - Very Urgent
Hi experts,
I have defined a ALV grid in my program using the startdard function module as editable. Now I want the grid to be displayed in the screen with my pf-status. how can i do that?.
Here is the sample code.
REPORT zadvcformsub
NO STANDARD PAGE HEADING MESSAGE-ID zf
LINE-SIZE 255 LINE-COUNT 66.
INCLUDE zftsvar .
TYPE-POOLS : slis.
TABLES : zftsregstr, zftsintnum, zftscusttc,
zadvcform, konv, knvv, sscrfields.
DATA : it_fieldcat TYPE slis_t_fieldcat_alv.
DATA : w_layout TYPE slis_layout_alv,
w_fieldcat TYPE slis_fieldcat_alv.
DATA : BEGIN OF it_initial OCCURS 1,
bukrs(4) TYPE c,
wkreg(3) TYPE c,
zkunag(10) TYPE c,
validfrom(10) TYPE c,
validto(10) TYPE c,
vkorg(4) TYPE c,
aland(3) TYPE c,
zformtype(1) TYPE c,
frmintno(10) TYPE c,
uname(12) TYPE c,
datum(10) TYPE c,
uzeit(8) TYPE c,
END OF it_initial.
DATA : BEGIN OF it_part OCCURS 1,
zkunag LIKE zadvcform-zkunag,
frmintno LIKE zadvcform-frmintno,
validfrom LIKE zadvcform-validfrom,
validto LIKE zadvcform-validto,
END OF it_part.
DATA : w_sno(2) TYPE c,
w_cust(10) TYPE c,
w_cform(10) TYPE c,
w_from(10) TYPE c,
w_to(10) TYPE c,
w_blank1(10) TYPE c,
w_blank2(10) TYPE c,
w_blank3(10) TYPE c,
w_blank4(10) TYPE c,
w_string_len TYPE i,
w_sel_line(255) TYPE c,
w_indx(2) TYPE c.
SELECTION-SCREEN SKIP 1.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECT-OPTIONS:
s_bukrs FOR zadvcform-bukrs NO INTERVALS NO-EXTENSION OBLIGATORY,
s_aland FOR zadvcform-aland NO INTERVALS NO-EXTENSION OBLIGATORY,
s_wkreg FOR zadvcform-wkreg NO INTERVALS NO-EXTENSION OBLIGATORY,
s_vkorg FOR zadvcform-vkorg NO INTERVALS NO-EXTENSION OBLIGATORY,
s_fmtyp FOR zadvcform-zformtype NO INTERVALS NO-EXTENSION OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b1.
INITIALIZATION.
AT SELECTION-SCREEN.
START-OF-SELECTION.
w_fieldcat-fieldname = 'ZKUNAG'.
w_fieldcat-tabname = 'IT_PART'.
w_fieldcat-ref_fieldname = 'ZKUNAG'.
w_fieldcat-ref_tabname = 'ZADVCFORM'.
w_fieldcat-seltext_l = 'Customer Code'.
w_fieldcat-ddictxt = 'L'.
w_fieldcat-input = 'X'.
w_fieldcat-edit = 'X'.
APPEND w_fieldcat TO it_fieldcat.
w_fieldcat-fieldname = 'FRMINTNO'.
w_fieldcat-tabname = 'IT_PART'.
w_fieldcat-ref_fieldname = 'FRMINTNO'.
w_fieldcat-ref_tabname = 'ZADVCFORM'.
w_fieldcat-seltext_l = 'C Form No'.
w_fieldcat-ddictxt = 'L'.
w_fieldcat-input = 'X'.
w_fieldcat-edit = 'X'.
APPEND w_fieldcat TO it_fieldcat.
w_fieldcat-fieldname = 'VALIDFROM'.
w_fieldcat-tabname = 'IT_PART'.
w_fieldcat-ref_fieldname = 'VALIDFROM'.
w_fieldcat-ref_tabname = 'ZADVCFORM'.
w_fieldcat-seltext_l = 'Valid From'.
w_fieldcat-ddictxt = 'L'.
w_fieldcat-input = 'X'.
w_fieldcat-edit = 'X'.
APPEND w_fieldcat TO it_fieldcat.
w_fieldcat-fieldname = 'VALIDTO'.
w_fieldcat-tabname = 'IT_PART'.
w_fieldcat-ref_fieldname = 'VALIDTO'.
w_fieldcat-ref_tabname = 'ZADVCFORM'.
w_fieldcat-seltext_l = 'Valid To'.
w_fieldcat-ddictxt = 'L'.
w_fieldcat-input = ' '.
w_fieldcat-edit = ' '.
APPEND w_fieldcat TO it_fieldcat.
DO 15 TIMES.
CLEAR it_part.
APPEND it_part.
ENDDO.
SET PF-STATUS 'ZADVCFORM_COPY'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-cprog
i_callback_pf_status_set = 'ZADVCFORM_COPY'
it_fieldcat = it_fieldcat
i_grid_title = 'Advanced C Form Submission'
TABLES
t_outtab = it_part[]
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE i039(zaba) WITH 'Error in ALV'.
ENDIF.
I am geting the editable ALV grid but how to set my gui status.
regards,
Arul Jothi.Hi,
Here is an sample code to handle events.
DATA: I_EVENTS TYPE SLIS_T_EVENT.
PERFORM F4000_EVENTS_INIT CHANGING I_EVENTS.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
IT_EVENTS = I_EVENTS
TABLES
T_OUTTAB = I_MARA
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
FORM F4000_EVENTS_INIT USING I_EVENTS TYPE SLIS_T_EVENT.
DATA: LINE_EVENT TYPE SLIS_ALV_EVENT.
CLEAR LINE_EVENT.
LINE_EVENT-NAME = 'TOP_OF_PAGE'.
LINE_EVENT-FORM = 'F4001_TOP_OF_PAGE'.
APPEND LINE_EVENT TO I_EVENTS.
CLEAR LINE_EVENT.
LINE_EVENT-NAME = 'PF_STATUS_SET'.
LINE_EVENT-FORM = 'F4002_PF_STATUS_SET'.
APPEND LINE_EVENT TO I_EVENTS.
CLEAR LINE_EVENT.
LINE_EVENT-NAME = 'USER_COMMAND'.
LINE_EVENT-FORM = 'F4003_USER_COMMAND'.
APPEND LINE_EVENT TO I_EVENTS.
ENDFORM.
FORM F4003_USER_COMMAND USING UCOMM LIKE SY-UCOMM
SELFIELD TYPE SLIS_SELFIELD.
CASE UCOMM.
WHEN '&CHNG'.
READ TABLE I_MARA INDEX SELFIELD-TABINDEX.
IF I_MARA-MATNR NE SPACE.
SET PARAMETER ID 'MAT' FIELD I_MARA-MATNR.
CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.
CLEAR UCOMM.
ENDIF.
ENDCASE.
ENDFORM. -
Regarding EXPORT_COMPRESS_ERROR ABAP dump
Hello Experts,
In our BI System, we are getting EXPORT_COMPRESS_ERROR ABAP dump. And not able to find out any SAP notes regarding this dump.
Waiting for your kind response.
Runtime Errors EXPORT_COMPRESS_ERROR
Date and Time 11.04.2008 16:40:42
Short text
Internal error when compressing data.
What happened?
Error in the SAP kernel.
The current ABAP "SAPLRSDRI_SERVICES" program had to be terminated because the
ABAP processor detected an internal system error.
In the EXPORT TO DATABASE statement, an internal error occurred
when compressing data.
What can you do?
Note which actions and input led to the error.
For further help in handling the problem, contact your SAP administrator
You can use the ABAP dump analysis transaction ST22 to view and manage
termination messages, in particular for long term reference.
Error analysis
There is an internal system error.
eliminated with ABAP/4.
Last error logged in SAP kernel
Component............ "EM"
Place................ "SAP-Server u962004s_P38_67 on host u962004s (wp 23)"
Version.............. 37
Error code........... 7
Error text........... "Warning: EM-Memory exhausted: Workprocess gets PRIV "
Description.......... " "
System call.......... " "
Module............... "emxx.c"
Line................. 1881
The error reported by the operating system is:
Error number..... " "
Error text....... " "
How to correct the error
If the error occures in a non-modified SAP program, you may be able to
find an interim solution in an SAP Note.
If you have access to SAP Notes, carry out a search with the following
keywords:
"EXPORT_COMPRESS_ERROR" " "
"SAPLRSDRI_SERVICES" or "LRSDRI_SERVICESF01"
"DATA_WRAP_UC"
If you cannot solve the problem yourself and want to send an error
notification to SAP, include the following information:
1. The description of the current problem (short dump)
To save the description, choose "System->List->Save->Local File
(Unconverted)".
2. Corresponding system log
Display the system log by calling transaction SM21.
Restrict the time interval to 10 minutes before and five minutes
after the short dump. Then choose "System->List->Save->Local File
(Unconverted)".
3. If the problem occurs in a problem of your own or a modified SAP
program: The source code of the program
In the editor, choose "Utilities->More
Utilities->Upload/Download->Download".
4. Details about the conditions under which the error occurred or which
actions and input led to the error.
System environment
SAP-Release 700
Application server... "u962004s"
Network address...... "10.200.230.110"
Operating system..... "HP-UX"
Release.............. "B.11.23"
Hardware type........ "ia64"
Character length.... 8 Bits
Pointer length....... 64 Bits
Work process number.. 23
Shortdump setting.... "full"
Database server... "u962004s"
Database type..... "ORACLE"
Database name..... "P38"
Database user ID.. "SAPP38"
Char.set.... "de_DE.iso88591"
SAP kernel....... 700
created (date)... "Dec 30 2007 21:06:56"
create on........ "HP-UX B.11.23 U ia64"
Database version. "OCI_102 (10.2.0.2.0) "
Patch level. 141
Patch text.. " "
Database............. "ORACLE 9.2.0.., ORACLE 10.1.0.., ORACLE 10.2.0.."
SAP database version. 700
Operating system..... "HP-UX B.11"
Memory consumption
Roll.... 6219104
EM...... 2291965488
Heap.... 2302579280
Page.... 16384
MM Used. 4399764848
MM Free. 194652624
User and Transaction
Client.............. 100
User................ "K59461"
Language Key........ "D"
Transaction......... " "
Transactions ID..... "47FF35AD14F65486E10000000AC8E66E"
Program............. "SAPLRSDRI_SERVICES"
Screen.............. "SAPMSSY1 3004"
Screen Line......... 2
Information on caller of Remote Function Call (RFC):
System.............. "P38"
Database Release.... 700
Kernel Release...... 700
Connection Type..... 3 (2=R/2, 3=ABAP System, E=Ext., R=Reg. Ext.)
Call Type........... "asynchron with reply and non-transactional (emode 0,
imode 0)"
Inbound TID.........." "
Inbound Queue Name..." "
Outbound TID........." "
Outbound Queue Name.." "
Client.............. 100
User................ "K59461"
Transaction......... " "
Call Program........."SAPLZ_ZOP01_VCUBES"
Function Module..... "RSDRI_INFOPROV_READ_RFC"
Call Destination.... "NONE"
Source Server....... "u962004s_P38_67"
Source IP Address... "10.200.230.110"
Additional information on RFC logon:
Trusted Relationship " "
Logon Return Code... 0
Trusted Return Code. 0
Note: For releases < 4.0, information on the RFC caller are often
only partially available.
Information on where terminated
Termination occurred in the ABAP program "SAPLRSDRI_SERVICES" - in
"DATA_WRAP_UC".
The main program was "SAPMSSY1 ".
In the source code you have the termination point in line 194
of the (Include) program "LRSDRI_SERVICESF01".
Source Code Extract
Line
SourceCde
164
165
CLEAR: l_string.
166
167
CALL METHOD cl_abap_container_utilities=>fill_container_c
168
EXPORTING
169
im_value = <l_s_data>
170
IMPORTING
171
ex_container = l_string.
172
173
PERFORM wrap_str_to_c255
174
USING l_string
175
CHANGING e_t_outdata.
176
177
ENDLOOP.
178
179
ENDFORM. " data_wrap_std
180
181
*& Form data_wrap_uc
182
183
text
184
185
-->P_I_T_DATA text
186
<--P_E_OUTDATA_UC text
187
188
FORM data_wrap_uc
189
USING i_t_data TYPE STANDARD TABLE
190
i_compress TYPE rs_bool
191
CHANGING e_outdata_uc TYPE xstring.
192
193
IF i_compress = rs_c_true.
>>>>>
EXPORT rsdri = i_t_data
195
TO DATA BUFFER e_outdata_uc
196
COMPRESSION ON.
197
ELSE.
198
EXPORT rsdri = i_t_data
199
TO DATA BUFFER e_outdata_uc
200
COMPRESSION OFF.
201
ENDIF.
202
203
IF sy-subrc <> 0.
204
RAISE conversion_error.
205
ENDIF.
206
207
ENDFORM. " data_wrap_uc
208
209
210
FORM data_wrap_250
211
212
213
Contents of system fields
Name
Val.
SY-SUBRC
0
SY-INDEX
1
SY-TABIX
0
SY-DBCNT
1
SY-FDPOS
25
SY-LSIND
0
SY-PAGNO
0
SY-LINNO
1
SY-COLNO
1
SY-PFKEY
SY-UCOMM
SY-TITLE
CPIC- und RFC-Steuerung
SY-MSGTY
E
SY-MSGID
BL
SY-MSGNO
209
SY-MSGV1
SY-MSGV2
SY-MSGV3
SY-MSGV4
SY-MODNO
0
SY-DATUM
20080411
SY-UZEIT
163555
SY-XPROG
SAPLRSDRI
SY-XFORM
RSDRI_INFOPROV_READ_RFC
Active Calls/Events
No. Ty. Program Include Line
Name
7 FORM SAPLRSDRI_SERVICES LRSDRI_SERVICESF01 194
DATA_WRAP_UC
6 FUNCTION SAPLRSDRI_SERVICES LRSDRI_SERVICESU04 29
RSDRI_DATA_WRAP
5 FORM GP49E5DYREKDNLT28VWMJJ5FAZY GP49E5DYREKDNLT28VWMJJ5FAZY 199
INFOPROV_READ_RSDRI
4 FUNCTION SAPLRSDRI LRSDRIU02 153
RSDRI_INFOPROV_READ_RFC
3 FORM SAPLRSDRI LRSDRIU02 1
RSDRI_INFOPROV_READ_RFC
2 FORM SAPMSSY1 SAPMSSY1 85
REMOTE_FUNCTION_CALL
1 MODULE (PBO) SAPMSSY1 SAPMSSY1 30
%_RFC_START
Chosen variables
Name
Val.
No. 7 Ty. FORM
Name DATA_WRAP_UC
SYST-REPID
SAPLRSDRI_SERVICES
5454554545545544452222222222222222222222
310C23429F352693530000000000000000000000
I_COMPRESS
X
5
8
RS_C_TRUE
X
5
8
SY
###############################################################################À##############
0000000000000000000000000000000000000000000000010000000000000000000000000000000C00000000000000
0001000000000000000000000000000000000000000100090001000000010000000000000000002000000000000000
I_T_DATA
Table IT_4214[3004988x1456]
PROGRAM=GP49E5DYREKDNLT28VWMJJ5FAZYFORM=INFOPROV_READ_RSDRIDATA=L_T_DATA
Table reference: 245
TABH+ 0(20) = C0000005B3A98DB0000000000000000000000000
TABH+ 20(20) = 000000F500001076002DDA3C000005B0FFFFFFFF
TABH+ 40(16) = 0400002A00000B10000824C401800000
store = 0xC0000005B3A98DB0
ext1 = 0x0000000000000000
shmId = 0 (0x00000000)
id = 245 (0x000000F5)
label = 4214 (0x00001076)
fill = 3004988 (0x002DDA3C)
leng = 1456 (0x000005B0)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000040
occu = 8 (0x00000008)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 8 (cmpManyEq)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0xC0000009BB9B2090
pgHook = 0x600000008EAEC160
idxPtr = 0x0000000000000000
shmTabhSet = 0x0000000000000000
id = 3503 (0x00000DAF)
refCount = 0 (0x00000000)
tstRefCount = 0 (0x00000000)
lineAdmin = 3014656 (0x002E0000)
lineAlloc = 3004992 (0x002DDA40)
shmVersId = 0 (0x00000000)
shmRefCount = 1 (0x00000001)
>>>>> 1st level extension part <<<<<
regHook = Not allocated
collHook = Not allocated
ext2 = Not allocated
>>>>> 2nd level extension part <<<<<
tabhBack = Not allocated
delta_head = Not allocated
pb_func = Not allocated
pb_handle = Not allocated
%_DUMMY$$
2222
0000
E_OUTDATA_UC
ÿ#######1100####ÒWÜ#####°ï6=³$Ç~ßsæ#ä5L#¼ -^##há#°#!&ß3#ð#ô#Á#p6##Òâ¬###Å#.À#6²aÀ#kÀ6´1ÀOp##ú#
F000008033330000D5D01190BE33B2C7D7E8E348BA25816E8B822D30F8F1C07321DEA019C12C93B6C86C3B3C4700F0
F61122001100000027C52FD20F6D347EF36545C1C0DE008100016F3B064D13063B22C59855E056210BB06410F019A0
SYST
###############################################################################À##############
0000000000000000000000000000000000000000000000010000000000000000000000000000000C00000000000000
0001000000000000000000000000000000000000000100090001000000010000000000000000002000000000000000
No. 6 Ty. FUNCTION
Name RSDRI_DATA_WRAP
I_COMPRESS
X
5
8
I_RESULT250
2
0
I_T_DATA
Table IT_4214[3004988x1456]
I_UNICODE_RESULT
X
5
8
E_OUTDATA_UC
ÿ#######1100####ÒWÜ#####°ï6=³$Ç~ßsæ#ä5L#¼ -^##há#°#!&ß3#ð#ô#Á#p6##Òâ¬###Å#.À#6²aÀ#kÀ6´1ÀOp##ú#
F000008033330000D5D01190BE33B2C7D7E8E348BA25816E8B822D30F8F1C07321DEA019C12C93B6C86C3B3C4700F0
F61122001100000027C52FD20F6D347EF36545C1C0DE008100016F3B064D13063B22C59855E056210BB06410F019A0
E_T_OUTDATA
Table[initial]
E_T_OUTDATA250
Table[initial]
RS_C_FALSE
2
0
SY-REPID
SAPLRSDRI_SERVICES
5454554545545544452222222222222222222222
310C23429F352693530000000000000000000000
No. 5 Ty. FORM
Name INFOPROV_READ_RSDRI
SY-SUBRC
0
0000
0000
SY-REPID
GP49E5DYREKDNLT28VWMJJ5FAZY
4533434554444453355444344552222222222222
7049554925B4EC42867DAA561A90000000000000
SY
###############################################################################À##############
0000000000000000000000000000000000000000000000010000000000000000000000000000000C00000000000000
0001000000000000000000000000000000000000000100090001000000010000000000000000002000000000000000
%_DUMMY$$
2222
0000
%_SPACE
2
0
SYST-REPID
GP49E5DYREKDNLT28VWMJJ5FAZY
4533434554444453355444344552222222222222
7049554925B4EC42867DAA561A90000000000000
I_OUTU
X
5
8
RS_C_TRUE
X
5
8
L_T_DATA
Table IT_4214[3004988x1456]
E_RFCOUT_UC
ÿ#######1100####ÒWÜ#####°ï6=³$Ç~ßsæ#ä5L#¼ -^##há#°#!&ß3#ð#ô#Á#p6##Òâ¬###Å#.À#6²aÀ#kÀ6´1ÀOp##ú#
F000008033330000D5D01190BE33B2C7D7E8E348BA25816E8B822D30F8F1C07321DEA019C12C93B6C86C3B3C4700F0
F61122001100000027C52FD20F6D347EF36545C1C0DE008100016F3B064D13063B22C59855E056210BB06410F019A0
I_S_RFCMODE
0.0.0.1.
22222222222222222222222222222222222222220000
00000000000000000000000000000000000000000000
I_S_RFCMODE-RFC_RECEIVER
222222222222222222222222222222
000000000000000000000000000000
E_EOD
X
5
8
I_S_RFCMODE-ID
2222222222
0000000000
No. 4 Ty. FUNCTION
Name RSDRI_INFOPROV_READ_RFC
I_AUTHORITY_CHECK
R
5
2
I_CURRENCY_CONVERSION
X
5
8
I_DEBUG
2
0
I_FILENAME
222222222222222222222222222222222222222222222222222222222222
000000000000000000000000000000000000000000000000000000000000
I_INFOPROV
B100_CB3E
433354434222222222222222222222
2100F3235000000000000000000000
I_MAXROWS
0
0000
0000
I_READ_ODS_DELTA
2
0
I_REFERENCE_DATE
20080411
33333333
20080411
I_RESULTTYPE
U
5
5
I_ROLLUP_ONLY
X
5
8
I_SAVE_IN_FILE
2
0
I_SAVE_IN_TABLE
2
0
I_S_RFCMODE
0.0.0.1.
22222222222222222222222222222222222222220000
00000000000000000000000000000000000000000000
I_TABLENAME
222222222222222222222222222222
000000000000000000000000000000
I_USE_AGGREGATES
X
5
8
I_USE_DB_AGGREGATION
X
5
8
E_AGGREGATE
B100_CB3E$X
433354434252222222222222222222
2100F3235480000000000000000000
E_END_OF_DATA
X
5
8
E_RFCDATA_UC
ÿ#######1100####ÒWÜ#####°ï6=³$Ç~ßsæ#ä5L#¼ -^##há#°#!&ß3#ð#ô#Á#p6##Òâ¬###Å#.À#6²aÀ#kÀ6´1ÀOp##ú#
F000008033330000D5D01190BE33B2C7D7E8E348BA25816E8B822D30F8F1C07321DEA019C12C93B6C86C3B3C4700F0
F61122001100000027C52FD20F6D347EF36545C1C0DE008100016F3B064D13063B22C59855E056210BB06410F019A0
E_SPLIT_OCCURRED
2
0
E_T_FIELD[]
Table IT_4[180x40]
FUNCTION-POOL=RSDRIFORM=RSDRI_INFOPROV_READ_RFCDATA=%_%_E_T_FIELD
Table reference: 4
TABH+ 0(20) = C0000005B3902040C0000005B38D281000000000
TABH+ 20(20) = 0000000400000004000000B400000028FFFFFFFF
TABH+ 40(16) = 0400000100000F700010249401800000
store = 0xC0000005B3902040
ext1 = 0xC0000005B38D2810
shmId = 0 (0x00000000)
id = 4 (0x00000004)
label = 4 (0x00000004)
fill = 180 (0x000000B4)
leng = 40 (0x00000028)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000060
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0xC0000005B39020A0
pgHook = 0xC0000005B38FC770
idxPtr = 0x0000000000000000
shmTabhSet = 0x0000000000000000
id = 16 (0x00000010)
refCount = 0 (0x00000000)
tstRefCount = 0 (0x00000000)
lineAdmin = 304 (0x00000130)
lineAlloc = 304 (0x00000130)
shmVersId = 0 (0x00000000)
shmRefCount = 1 (0x00000001)
>>>>> 1st level extension part <<<<<
regHook = 0x0000000000000000
collHook = 0x0000000000000000
ext2 = 0xC0000005B38D27A0
>>>>> 2nd level extension part <<<<<
tabhBack = 0xC0000005B38D2740
delta_head = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
pb_func = 0x0000000000000000
pb_handle = 0x0000000000000000
E_T_RFCDATA[]
Table IT_5[0x256]
FUNCTION-POOL=RSDRIFORM=RSDRI_INFOPROV_READ_RFCDATA=%_%_E_T_RFCDATA
Table reference: 5
TABH+ 0(20) = 0000000000000000C0000005B38D292000000000
TABH+ 20(20) = 00000005000000050000000000000100FFFFFFFF
TABH+ 40(16) = 0400000100000E580010249401800000
store = 0x0000000000000000
ext1 = 0xC0000005B38D2920
shmId = 0 (0x00000000)
id = 5 (0x00000005)
label = 5 (0x00000005)
fill = 0 (0x00000000)
leng = 256 (0x00000100)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000055
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = Not allocated
pghook = Not allocated
idxPtr = Not allocated
shmTabhSet = Not allocated
id = Not allocated
refCount = Not allocated
tstRefCount = Not allocated
lineAdmin = Not allocated
lineAlloc = Not allocated
shmVersId = Not allocated
shmRefCount = Not allocated
shmIsReadOnly = Not allocated
>>>>> 1st level extension part <<<<<
regHook = 0x0000000000000000
collHook = 0x0000000000000000
ext2 = 0xC0000005B38D28B0
>>>>> 2nd level extension part <<<<<
tabhBack = 0xC0000005B38D2850
delta_head = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
pb_func = 0x0000000000000000
pb_handle = 0x0000000000000000
E_T_RFCDATAV[]
Table IT_6[0x100]
FUNCTION-POOL=RSDRIFORM=RSDRI_INFOPROV_READ_RFCDATA=%_%_E_T_RFCDATAV
Table reference: 6
TABH+ 0(20) = 0000000000000000C0000005B38D2A3000000000
TABH+ 20(20) = 00000006000000060000000000000064FFFFFFFF
TABH+ 40(16) = 0400000100000F000010249401800000
store = 0x0000000000000000
ext1 = 0xC0000005B38D2A30
shmId = 0 (0x00000000)
id = 6 (0x00000006)
label = 6 (0x00000006)
fill = 0 (0x00000000)
leng = 100 (0x00000064)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000058
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = Not allocated
pghook = Not allocated
idxPtr = Not allocated
shmTabhSet = Not allocated
id = Not allocated
refCount = Not allocated
tstRefCount = Not allocated
lineAdmin = Not allocated
lineAlloc = Not allocated
shmVersId = Not allocated
shmRefCount = Not allocated
shmIsReadOnly = Not allocated
>>>>> 1st level extension part <<<<<
regHook = 0x0000000000000000
collHook = 0x0000000000000000
ext2 = 0xC0000005B38D29C0
>>>>> 2nd level extension part <<<<<
tabhBack = 0xC0000005B38D2960
delta_head = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
pb_func = 0x0000000000000000
pb_handle = 0x0000000000000000
I_T_RANGE[]
Table IT_0[24x153]
FUNCTION-POOL=RSDRIFORM=RSDRI_INFOPROV_READ_RFCDATA=%_%_I_T_RANGE
Table reference: 0
TABH+ 0(20) = C0000005B38C97E0C0000005B38C97A000000000
TABH+ 20(20) = 00000000000000000000001800000099FFFFFFFF
TABH+ 40(16) = 04000001000004B80010249421800000
store = 0xC0000005B38C97E0
ext1 = 0xC0000005B38C97A0
shmId = 0 (0x00000000)
id = 0 (0x00000000)
label = 0 (0x00000000)
fill = 24 (0x00000018)
leng = 153 (0x00000099)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000011
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 1
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0xC0000005B38C9840
pgHook = 0xC0000005B38CA1F0
idxPtr = 0x0000000000000000
shmTabhSet = 0x0000000000000000
id = 2 (0x00000002)
refCount = 1 (0x00000001)
tstRefCount = 0 (0x00000000)
lineAdmin = 48 (0x00000030)
lineAlloc = 48 (0x00000030)
shmVersId = 0 (0x00000000)
shmRefCount = 3 (0x00000003)
>>>>> 1st level extension part <<<<<
regHook = 0xC0000005B3AB3F70
collHook = 0x0000000000000000
ext2 = 0xC0000005B38C9730
>>>>> 2nd level extension part <<<<<
tabhBack = 0xC0000005B38C96D0
delta_head = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
pb_func = 0x0000000000000000
pb_handle = 0x0000000000000000
I_T_REQUID[]
Table IT_7[0x12]
FUNCTION-POOL=RSDRIFORM=RSDRI_INFOPROV_READ_RFCDATA=%_%_I_T_REQUID
Table reference: 7
TABH+ 0(20) = 0000000000000000C0000005B38D2B4000000000
TABH+ 20(20) = 0000000700000007000000000000000CFFFFFFFF
TABH+ 40(16) = 04000001000006780010249401800000
store = 0x0000000000000000
ext1 = 0xC0000005B38D2B40
shmId = 0 (0x00000000)
id = 7 (0x00000007)
label = 7 (0x00000007)
fill = 0 (0x00000000)
leng = 12 (0x0000000C)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000019
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = Not allocated
pghook = Not allocated
idxPtr = Not allocated
shmTabhSet = Not allocated
id = Not allocated
refCount = Not allocated
tstRefCount = Not allocated
lineAdmin = Not allocated
lineAlloc = Not allocated
shmVersId = Not allocated
shmRefCount = Not allocated
shmIsReadOnly = Not allocated
>>>>> 1st level extension part <<<<<
regHook = 0x0000000000000000
collHook = 0x0000000000000000
ext2 = 0xC0000005B38D2AD0
>>>>> 2nd level extension part <<<<<
tabhBack = 0xC0000005B38D2A70
delta_head = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
pb_func = 0x0000000000000000
pb_handle = 0x0000000000000000
I_T_RTIME[]
Table IT_1[3x121]
FUNCTION-POOL=RSDRIFORM=RSDRI_INFOPROV_READ_RFCDATA=%_%_I_T_RTIME
Table reference: 1
TABH+ 0(20) = C0000005B38CB680C0000005B38CB64000000000
TABH+ 20(20) = 00000001000000010000000300000079FFFFFFFF
TABH+ 40(16) = 04000001000005980010249401800000
store = 0xC0000005B38CB680
ext1 = 0xC0000005B38CB640
shmId = 0 (0x00000000)
id = 1 (0x00000001)
label = 1 (0x00000001)
fill = 3 (0x00000003)
leng = 121 (0x00000079)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000015
occu = 16 (0x00000010)
access = 1 (ItAccessStandard)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 1 (default)
cmpMode = 2 (cmpSingleMcmpR)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0xC0000005B38CB6E0
pgHook = 0x0000000000000000
idxPtr = 0x0000000000000000
shmTabhSet = 0x0000000000000000
id = 3 (0x00000003)
refCount = 0 (0x00000000)
tstRefCount = 0 (0x00000000)
lineAdmin = 16 (0x00000010)
lineAlloc = 16 (0x00000010)
shmVersId = 0 (0x00000000)
shmRefCount = 1 (0x00000001)
>>>>> 1st level extension part <<<<<
regHook = 0x0000000000000000
collHook = 0x0000000000000000
ext2 = 0xC0000005B38CB5D0
>>>>> 2nd level extension part <<<<<
tabhBack = 0xC0000005B38CB570
delta_head = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
pb_func = 0x0000000000000000
pb_handle = 0x0000000000000000
I_T_SFC[]
Table IT_2[17x52]
FUNCTION-POOL=RSDRIFORM=RSDRI_INFOPROV_READ_RFCDATA=%_%_I_T_SFC
Table reference: 2
TABH+ 0(20) = C0000005B38CBFA0C0000005B38CBF6000000000
TABH+ 20(20) = 00000002000000020000001100000034FFFFFFFF
TABH+ 40(16) = 0400000100000DB00010249401800000
store = 0xC0000005B38CBFA0
ext1 = 0xC0000005B38CBF60
shmId = 0 (0x00000000)
iHello,
did you resolve the problem ?
Please tell me how if it's resolved.
Best Regards -
Urgent requirement - Regarding a dump
Hi experts,
I have written a program which changes the status of a contract from 'Released' or 'completed' to 'Expired'. The program is supposed to run in the background.
The problem is, while writing it I tested in the development server with few test cases and it was working fine both in dialog mode and background mode. But when it is executed in the background mode in testing server, it is throwing a dump showing some Java related error after 3000secs/30000secs, i.e., after some limited no. of seconds.
What could be the problem.
Please help. It's an urgent issue.
Regards,
Sangeeta.
N.B. Points will be awarded generouslyRuntime Errors SYSTEM_CANCELED
Date and Time 03/18/2008 05:47:03
Short text
The program "SAPLCRM_LINK_OB" was terminated manually.
What happened?
The current program "SAPLCRM_LINK_OB" has been terminated by another mode.
What can you do?
This is no program error. Therefore, no counter measures are
necessary.
No error that requires action
Error analysis
The current program has been terminated from another mode, e.g. with
Transaction SM50.
How to correct the error
No error elimination is necessary.
System environment
SAP-Release 700
Application server... "NAP0B"
Network address...... "10.160.13.3"
Operating system..... "AIX"
Release.............. "5.3"
Hardware type........ "00CEADCF4C00"
Character length.... 16 Bits
Pointer length....... 64 Bits
Work process number.. 25
Shortdump setting.... "full"
Database server... "NAP0B"
Database type..... "ORACLE"
Database name..... "CS1"
Database user ID.. "SAPCP1"
Char.set.... "C"
SAP kernel....... 700
created (date)... "Aug 5 2007 20:47:34"
create on........ "AIX 2 5 005DD9CD4C00"
Database version. "OCI_102 (10.2.0.2.0) "
Patch level. 123
Patch text.. " "
Database............. "ORACLE 9.2.0.., ORACLE 10.1.0.., ORACLE 10.2.0.."
SAP database version. 700
Operating system..... "AIX 1 5, AIX 2 5, AIX 3 5"
Memory consumption
Roll.... 16192
EM...... 335187840
Heap.... 0
Page.... 843776
MM Used. 324756688
MM Free. 2033456
User and Transaction
Client.............. 010
User................ "CRMBATCH"
Language Key........ "E"
Transaction......... " "
Program............. "SAPLCRM_LINK_OB"
Screen.............. "SAPMSSY0 1000"
Screen Line......... 6
Information on caller of Remote Function Call (RFC):
System.............. "########"
Database Release.... 700
Kernel Release...... 700
Connection Type..... "E" (2=R/2, 3=ABAP System, E=Ext., R=Reg. Ext.)
Call Type........... "synchron and non-transactional (emode 0, imode 2)"
Inbound TID.........." "
Inbound Queue Name..." "
Outbound TID........." "
Outbound Queue Name.." "
Client.............. "###"
User................ "############"
Transaction......... " "
Call Program........." "
Function Module..... "EXTRACT_DATA"
Call Destination.... "<unknown>"
Source Server....... "NAP0B"
Source IP Address... "10.160.13.3"
Additional information on RFC logon:
Trusted Relationship " "
Logon Return Code... 0
Trusted Return Code. 0
Note: For releases < 4.0, information on the RFC caller are often
only partially available.
Information on where terminated
Termination occurred in the ABAP program "SAPLCRM_LINK_OB" - in
"CRM_LINK_GET_OB".
The main program was "ZCRR_BA_STATUS_CHANGE ".
In the source code you have the termination point in line 43
of the (Include) program "LCRM_LINK_OBU01".
The program "SAPLCRM_LINK_OB" was started as a background job.
Job Name....... "YBAEXPIRE"
Job Initiator.. "BAHER1X"
Job Number..... 05125001
Source Code Extract
Line
SourceCde
13
LS_LINK_BUFFER_OB TYPE CRMT_LINK_BUFFER,
14
LS_LINK_OB TYPE CRMT_LINK_COM.
15
FIELD-SYMBOLS: <LINK_I> TYPE CRMT_LINK_WRK.
16
17
18
REFRESH ET_LINK.
19
IF <GS_LINK_BUFFER>-GUID_HDR NE IV_GUID_HDR.
20
21
READ TABLE GT_LINK_BUFFER
22
ASSIGNING <GS_LINK_BUFFER>
23
WITH TABLE KEY GUID_HDR = IV_GUID_HDR.
24
25
IF NOT SY-SUBRC IS INITIAL.
26
27
CLEAR LS_LINK_BUFFER_OB.
28
LS_LINK_BUFFER_OB-GUID_HDR = IV_GUID_HDR.
29
INSERT LS_LINK_BUFFER_OB INTO TABLE GT_LINK_BUFFER.
30
31
READ TABLE GT_LINK_BUFFER
32
ASSIGNING <GS_LINK_BUFFER>
33
WITH TABLE KEY GUID_HDR = IV_GUID_HDR.
34
35
CALL FUNCTION 'CRM_LINK_GET_DB'
36
EXPORTING
37
IV_GUID_HDR = IV_GUID_HDR
38
IMPORTING
39
ET_LINK = LT_LINK_BUFFER.
40
41
LOOP AT LT_LINK_BUFFER ASSIGNING <LINK_I>.
42
>>>>>
CLEAR LS_LINK_OB.
44
MOVE-CORRESPONDING <LINK_I> TO LS_LINK_OB.
45
46
CASE <LINK_I>-OBJTYPE_HI.
47
WHEN GC_OBJECT_TYPE_CONVERT-ORDERADM_H.
48
LS_LINK_OB-OBJNAME_HI = GC_OBJECT_NAME-ORDERADM_H.
49
WHEN GC_OBJECT_TYPE_CONVERT-ORDERADM_I.
50
LS_LINK_OB-OBJNAME_HI = GC_OBJECT_NAME-ORDERADM_I.
51
WHEN OTHERS.
52
READ TABLE GT_OBJECT_TYPES
53
ASSIGNING <GS_OBJECTS>
54
WITH KEY TYPE = <LINK_I>-OBJTYPE_HI.
55
CHECK SY-SUBRC = 0.
56
LS_LINK_OB-OBJNAME_HI = <GS_OBJECTS>-NAME.
57
ENDCASE.
58
59
CASE <LINK_I>-OBJTYPE_SET.
60
WHEN GC_OBJECT_TYPE_CONVERT-ORDERADM_H.
61
LS_LINK_OB-OBJNAME_SET = GC_OBJECT_NAME-ORDERADM_H.
62
WHEN GC_OBJECT_TYPE_CONVERT-ORDERADM_I.
Contents of system fields
Name
Val.
SY-SUBRC
0
SY-INDEX
0
SY-TABIX
1
SY-DBCNT
16
SY-FDPOS
0
SY-LSIND
0
SY-PAGNO
0
SY-LINNO
1
SY-COLNO
1
SY-PFKEY
SY-UCOMM
SY-TITLE
BA Status Change
SY-MSGTY
I
SY-MSGID
SY-MSGNO
000
SY-MSGV1
SY-MSGV2
SY-MSGV3
SY-MSGV4
SY-MODNO
0
SY-DATUM
20080318
SY-UZEIT
054701
SY-XPROG
SAPLSBAL_DB
SY-XFORM
EXTRACT_DATA
Active Calls/Events
No. Ty. Program Include Line
Name
10 FUNCTION SAPLCRM_LINK_OB LCRM_LINK_OBU01 43
CRM_LINK_GET_OB
9 FUNCTION SAPLCRM_LINK_OW LCRM_LINK_OWU01 65
CRM_LINK_GET_OW
8 FUNCTION SAPLCRM_ORDER_OW LCRM_ORDER_OWU47 310
CRM_ORDER_ENQUEUE
7 FORM SAPLCRM_ORDER_OW LCRM_ORDER_OWF07 132
ENQUEUE_ORDER
6 FUNCTION SAPLCRM_ORDER_OW LCRM_ORDER_OWU04 62
CRM_ORDER_PREPARE_SINGLE_OW
5 FUNCTION SAPLCRM_ORDER_OW LCRM_ORDER_OWU02 140
CRM_ORDER_MAINTAIN_SINGLE_OW
4 FUNCTION SAPLCRM_ORDER_OW LCRM_ORDER_OWU01 367
CRM_ORDER_MAINTAIN_MULTI_OW
3 FUNCTION SAPLCRM_ORDER_API LCRM_ORDER_APIU05 102
CRM_ORDER_MAINTAIN
2 FORM ZCRR_BA_STATUS_CHANGE ZCRR_BA_STATUS_CHANGE 439
CHANGE_STATUS
1 EVENT ZCRR_BA_STATUS_CHANGE ZCRR_BA_STATUS_CHANGE 238
START-OF-SELECTION
Chosen variables
Name
Val.
No. 10 Ty. FUNCTION
Name CRM_LINK_GET_OB
IV_GUID_HDR
F,xK#(#i##### #Z
4274120600000A05
6C8BB8090000A0DA
ET_LINK
Table[initial]
EV_REF_TO_BUFFER
0.0.0.0.0.0.0.1.
C0000000
F0000000
GT_LINK_BUFFER
Table IT_182[203x24]
FUNCTION-POOL=CRM_LINK_OBDATA=GT_LINK_BUFFER
Table reference: 98
TABH+ 0(20) = 0700000060BD6808070000006017C79000000000
TABH+ 20(20) = 00000062000000B6000000CB00000018FFFFFFFF
TABH+ 40(16) = 0400013F0000056000104BAC01800000
store = 0x0700000060BD6808
ext1 = 0x070000006017C790
shmId = 0 (0x00000000)
id = 98 (0x00000062)
label = 182 (0x000000B6)
fill = 203 (0x000000CB)
leng = 24 (0x00000018)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000014
occu = 16 (0x00000010)
access = 2 (ItAccessSorted)
idxKind = 1 (ItIndexLinear)
uniKind = 1 (ItUnique)
keyKind = 3 (user defined)
cmpMode = 5 (cmpSingle)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0x0700000060BD6860
pgHook = 0x07000000649ECAD0
idxPtr = 0x0700000063C05D88
shmTabhSet = 0x0000000000000000
id = 145 (0x00000091)
refCount = 0 (0x00000000)
tstRefCount = 0 (0x00000000)
lineAdmin = 560 (0x00000230)
lineAlloc = 560 (0x00000230)
shmVersId = 0 (0x00000000)
shmRefCount = 1 (0x00000001)
>>>>> 1st level extension part <<<<<
regHook = 0x0700000060BD69F8
collHook = 0x0000000000000000
ext2 = 0x0000000000000000
>>>>> 2nd level extension part <<<<<
tabhBack = Not allocated
delta_head = Not allocated
pb_func = Not allocated
pb_handle = Not allocated
<GS_LINK_BUFFER>
###i########
4710000000FF
68B000AD00FF
242600A500FF
CB89000A00FF
SY-SUBRC
0
0000
0000
LS_LINK_BUFFER_OB
###i########
4710000000FF
68B000AD00FF
242600A500FF
CB89000A00FF
%_DUMMY$$
0000
0000
2222
0000
SYST-REPID
SAPLCRM_LINK_OB
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5454454544445442222222222222222222222222
310C32DFC9EBFF20000000000000000000000000
LT_LINK_BUFFER
Table IT_2344825[16x40]
FUNCTION=CRM_LINK_GET_OBDATA=LT_LINK_BUFFER
Table reference: 17179
TABH+ 0(20) = 07000000730048880700000069E07C2800000000
TABH+ 20(20) = 0000431B0023C779000000100000002800000130
TABH+ 40(16) = 0400014000000590001043D421800000
store = 0x0700000073004888
ext1 = 0x0700000069E07C28
shmId = 0 (0x00000000)
id = 17179 (0x0000431B)
label = 2344825 (0x0023C779)
fill = 16 (0x00000010)
leng = 40 (0x00000028)
loop = 304 (0x00000130)
xtyp = TYPE#000015
occu = 16 (0x00000010)
access = 2 (ItAccessSorted)
idxKind = 0 (ItIndexNone)
uniKind = 1 (ItUnique)
keyKind = 3 (user defined)
cmpMode = 10 (cmpMany)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 1
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0x070000007357D7D0
pgHook = 0x0000000000000000
idxPtr = 0x0000000000000000
shmTabhSet = 0x0000000000000000
id = 1793616 (0x001B5E50)
refCount = 2 (0x00000002)
tstRefCount = 0 (0x00000000)
lineAdmin = 16 (0x00000010)
lineAlloc = 16 (0x00000010)
shmVersId = 0 (0x00000000)
shmRefCount = 3 (0x00000003)
>>>>> 1st level extension part <<<<<
regHook = 0x070000006E428C48
collHook = 0x0000000000000000
ext2 = 0x0000000000000000
>>>>> 2nd level extension part <<<<<
tabhBack = Not allocated
delta_head = Not allocated
pb_func = Not allocated
pb_handle = Not allocated
<LINK_I>
###i#######i####0530
47100000471000000000
68B000AD68B000AD0000
242600A5242600A53333
CB89000ACD89000A0530
LS_LINK_OB
0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.1.
00000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000002222222222222222222222222222222222222222222222222222222222222222
00000000000000000000000000000000000000000000000000000000000000000000000000000000
<LINK_I>-OBJTYPE_HI
05
00
00
33
05
GC_OBJECT_TYPE_CONVERT-ORDERADM_H
05
00
00
33
05
SY-REPID
SAPLCRM_LINK_OB
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5454454544445442222222222222222222222222
310C32DFC9EBFF20000000000000000000000000
%_SPACE
0
0
2
0
No. 9 Ty. FUNCTION
Name CRM_LINK_GET_OW
IV_GET_ALL
0
0
2
0
IV_GUID_HI
F,xK#(#i##### #Z
4274120600000A05
6C8BB8090000A0DA
IV_INHERIT_FROM_STR
0
0
2
0
IV_OBJNAME_HI
ORDERADM_H
000000000000000000000000000000
000000000000000000000000000000
454454445422222222222222222222
F245214DF800000000000000000000
IV_OBJNAME_SET
PRIDOC
000000000000000000000000000000
000000000000000000000000000000
554444222222222222222222222222
0294F3000000000000000000000000
ET_LINK
Table[initial]
%_ARCHIVE
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
SY-REPID
SAPLCRM_LINK_OW
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5454454544445452222222222222222222222222
310C32DFC9EBFF70000000000000000000000000
SY-MSGID
00000000000000000000
00000000000000000000
22222222222222222222
00000000000000000000
GS_EMPTY_ADM_I
0.0.0.0.0.0.0.0.0.0.0.1. #### #
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
2220000000000002222222222220000222222222222222222222222222222222222222222222222222222222222220
00000000000000C000000000000000C000000000000000000000000000000000000000000000000000000000000000
SV_GUID_HI
0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.1.
0000000000000000
0000000000000000
SPACE
0
0
2
0
SY-MSGNO
000
000
000
333
000
GS_EMPTY_BUFFER
0.0.0.0.0.0.0.0.0.0.0.1.
0000000000FF
0000000000FF
0000000000FF
0000000000FF
SY-MSGV1
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
22222222222222222222222222222222222222222222222222
00000000000000000000000000000000000000000000000000
SY-MSGV2
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
22222222222222222222222222222222222222222222222222
00000000000000000000000000000000000000000000000000
SY-MSGV3
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
22222222222222222222222222222222222222222222222222
00000000000000000000000000000000000000000000000000
SY-MSGV4
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
22222222222222222222222222222222222222222222222222
00000000000000000000000000000000000000000000000000
GC_CI_NAME
CI_EEW_ORDERADM_H CI_EEW_ORDERADM_I CI_EEW_ACTIVITY_H CI_E
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
4454455454454445422222222222224454455454454445422222222222224454455445454555422222222222224454
39F557FF245214DF8000000000000039F557FF245214DF9000000000000039F557F13496949F8000000000000039F5
SYST-REPID
SAPLCRM_LINK_OW
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5454454544445452222222222222222222222222
310C32DFC9EBFF70000000000000000000000000
<GS_BUFFER_OB>-GUID_HDR
F,nÎ#(#i##### #Z
426C120600000A05
6CEEB8090000A0DA
LV_GUID_HDR
F,xK#(#i##### #Z
4274120600000A05
6C8BB8090000A0DA
%_PRINT
HU02001ZCRR_BA_STAT XXX8##:
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
4533333545554455545222222222222222222222222222222222222222222222222222222222222222222225553003
8502001A322F21F341400000000000000000000000000000000000000000000000000000000000000000000888800A
GC_OBJNAME_ITM
ORDERADM_I
000000000000000000000000000000
000000000000000000000000000000
454454445422222222222222222222
F245214DF900000000000000000000
TRUE
X
0
0
5
8
LV_REF_TO_BUFFER
0.0.0.0.0.0.0.1.
C0000000
F0000000
<GS_BUFFER_OB>
###i########
461000005004
6EB000AD500D
2C2600A5000A
CE89000A000A
<GS_BUFFER_OB>-LINKS
Table IT_2342432[10x160]
FUNCTION-POOL=CRM_LINK_OWDATA=<GS_BUFFER_OB>-LINKS
Table reference: 19882
TABH+ 0(20) = 07000000737A8E1007000000736BF77000000000
TABH+ 20(20) = 00004DAA0023BE200000000A000000A0FFFFFFFF
TABH+ 40(16) = 0400013F0000062000104BD401800000
store = 0x07000000737A8E10
ext1 = 0x07000000736BF770
shmId = 0 (0x00000000)
id = 19882 (0x00004DAA)
label = 2342432 (0x0023BE20)
fill = 10 (0x0000000A)
leng = 160 (0x000000A0)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000018
occu = 16 (0x00000010)
access = 2 (ItAccessSorted)
idxKind = 1 (ItIndexLinear)
uniKind = 1 (ItUnique)
keyKind = 3 (user defined)
cmpMode = 10 (cmpMany)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0x0700000072F870B8
pgHook = 0x0000000000000000
idxPtr = 0x0700000073004810
shmTabhSet = 0x0000000000000000
id = 1791893 (0x001B5795)
refCount = 0 (0x00000000)
tstRefCount = 0 (0x00000000)
lineAdmin = 16 (0x00000010)
lineAlloc = 16 (0x00000010)
shmVersId = 0 (0x00000000)
shmRefCount = 1 (0x00000001)
>>>>> 1st level extension part <<<<<
regHook = 0x070000007255E500
collHook = 0x0000000000000000
ext2 = 0x0000000000000000
>>>>> 2nd level extension part <<<<<
tabhBack = Not allocated
delta_head = Not allocated
pb_func = Not allocated
pb_handle = Not allocated
No. 8 Ty. FUNCTION
Name CRM_ORDER_ENQUEUE
IT_ITEMS
Table[initial]
IV_ENQUEUE_MODE
E
0
0
4
5
IV_GUID
F,xK#(#i##### #Z
4274120600000A05
6C8BB8090000A0DA
IV_LOCAL
0
0
2
0
IV_LOGSYS
0000000000
0000000000
2222222222
0000000000
IV_PARTIAL
0
0
2
0
EV_ALREADY_LOCKED
0
0
2
0
GC_OBJECT_NAME-CUSTOMER_I
CUSTOMER_I
000000000000000000000000000000
000000000000000000000000000000
455544455422222222222222222222
3534FD52F900000000000000000000
FALSE
0
0
2
0
GC_CASHFLOW_USAGE
0102030510
0000000000
0000000000
3333333333
0102030510
GC_DEFAULT_SCENARIO_MAINTAIN
0
0
2
0
%_DUMMY$$
0000
0000
2222
0000
GC_DEB_CRED_NOTE
06
00
00
33
06
SY-REPID
SAPLCRM_ORDER_OW
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5454454545445545222222222222222222222222
310C32DFF2452FF7000000000000000000000000
GC_SCENARIO_NUMBER_8
08
00
00
33
08
SY-SUBRC
0
0000
0000
GC_BIN_REL_TYPE
VONAATTAURL NOTEBDCOBDCIREPLMASUASGNUPG OUTLISUSGAIDINTAINVOPO PDHLPLNKUBB1UBB2PNT RSHPSRCEIS
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
5444455455424454444444445454445545445542455445554444445444545422544454445443544354525545554445
6FE1144152C0EF45243F2439250CD135137E5070F54C935371949E419E6F0F00048C0CEB522152220E402380323593
GC_AGREEMENT_MESSAGE
EF
000
000
244
056
GC_OBJECT_NAME-ORDERADM_H
ORDERADM_H
000000000000000000000000000000
000000000000000000000000000000
454454445422222222222222222222
F245214DF800000000000000000000
GC_OBJECT_TYPE-CONTRACT_SERVICE
BUS2000112
0000000000
0000000000
4553333333
2532000112
GC_OBJECT_NAME-PRIDOC
PRIDOC
000000000000000000000000000000
000000000000000000000000000000
554444222222222222222222222222
0294F3000000000000000000000000
RSJOBINFO
00000000000000 ##
0000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000
2222222222222222222222222222222233333333333333222222222222222222222222222222222200
0000000000000000000000000000000000000000000000000000000000000000000000000000000000
LT_LINK_COM
Table[initial]
SYST-REPID
SAPLCRM_ORDER_OW
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
5454454545445545222222222222222222222222
310C32DFF2452FF7000000000000000000000000
%_SPACE
0
0
2
0
No. 7 Ty. FORM
Name ENQUEUE_ORDER
GC_SCENARIO_10
0
0
2
0
IS_HEADER_GUID
F,xK#(#i##### #Z
4274120600000A05
6C8BB8090000A0DA
GC_APO_REL
2.0A 3.0A 3.1A 4.0 4.1 5.0
000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000
323422222232342222223234222222323222222232322222223232222222
2E010000003E010000003E110000004E000000004E100000005E00000000
GC_OBJECT_KIND-ORDERADM_H
A
0
0
4
1
GC_LEAS_PROCESS_KIND
IO
00
00
44
9F
LS_ACTIVE_SWITCH
0.0.0.0.0.0.0.1. 0000000000
0000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000
0000000023333333333222222222222222222222222222222222222222
0000000000000000000000000000000000000000000000000000000000
LS_ACTIVE_SWITCH-PRICING
0
0
2
0
GC_ACT_SWITCH-INACTIVE
A
0
0
4
1
IV_INIT
X
0
0
5
8
GC_DEFAULT_SCENARIO_7
0
0
2
0
LS_ALREADY_LOCKED_ORDERS-OPEN_PRIDOC
0
0
2
0
GC_EMPTY_GUID
0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.1.
0000000000000000
0000000000000000
IV_LOCAL
0
0
2
0
%_PRINT
HU02001ZCRR_BA_STAT XXX8##:
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
4533333545554455545222222222222222222222222222222222222222222222222222222222222222222225553003
8502001A322F21F341400000000000000000000000000000000000000000000000000000000000000000000888800A
LV_ALREADY_LOCKED
0
0
2
0
GC_DEFAULT_TIMEZONE
ABCD
0000
0000
4444
1234
No. 6 Ty. FUNCTION
Name CRM_ORDER_PREPARE_SINGLE_OW
IS_OPPORT_H
0000000000################0000000000000000 00000000000 00000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
3333333333000000000000000033333333333333332223333333333322222222222222222222222233333333333222
000000000000000000000C000C00000000000000000000000000000000000000000000000000000000000000000000
IT_FINPROD_I
Table[initial]
IT_ORGMAN
Table[initial]
IT_PRICING
Table[initial]
IT_PRIDOC
Table[initial]
IT_PRODUCT_I
Table[initial]
IT_SALES
Table[initial]
IT_SHIPPING
Table[initial]
CS_ORDERADM_H
0000000000###i####0007001044ZSP100000000
0000000000471000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000068B000AD0000000000000000000000000000000000000000000000000000000000000000000000000000
3333333333242600A53333333333555333333333222222222222222222222222222222222222222222222222222222
0000000000CB89000A0007001044A30100000000000000000000000000000000000000000000000000000000000000
CT_INPUT_FIELDS
Table IT_60[1x192]
PROGRAM=ZCRR_BA_STATUS_CHANGEDATA=GT_INPUT_FIELD
Table reference: 38
TABH+ 0(20) = 070000006013B7280700000061400C4800000000
TABH+ 20(20) = 000000260000003C00000001000000C0FFFFFFFF
TABH+ 40(16) = 0400000000000860001045D401800000
store = 0x070000006013B728
ext1 = 0x0700000061400C48
shmId = 0 (0x00000000)
id = 38 (0x00000026)
label = 60 (0x0000003C)
fill = 1 (0x00000001)
leng = 192 (0x000000C0)
loop = -1 (0xFFFFFFFF)
xtyp = TYPE#000030
occu = 16 (0x00000010)
access = 2 (ItAccessSorted)
idxKind = 0 (ItIndexNone)
uniKind = 2 (ItUniqueNon)
keyKind = 3 (user defined)
cmpMode = 10 (cmpMany)
occu0 = 1
groupCntl = 0
rfc = 0
unShareable = 0
mightBeShared = 0
sharedWithShmTab = 0
isShmLockId = 0
gcKind = 0
isUsed = 1
isCtfyAble = 1
>>>>> Shareable Table Header Data <<<<<
tabi = 0x0700000060B8C400
pgHook = 0x0000000000000000
idxPtr = 0x0000000000000000
shmTabhSet = 0x0000000000000000
id = 45 (0x0000002D)
refCount = 0 (0x00000000)
tstRefCount = 0 (0x00000000) -
Regarding work order urgent pls
Hi,
i have a requirement where i need to get the time slots dynamically which i need to use in select query to retrieve data.
the time slots are,
S1 : 8-10 AM
S2 : 10-12
S3 : 12-14
S4 : 14-16
AM : 08-12 and goes on upto 20.00 PM
when u open a workorder in iw33 transaction in the location tab u can find an ABC indicator where we are using these time slots for the work order.
Now my problem is to select the work orders based upon the current systime and timeslot.
For eg: if user executes the report say at 10.00 AM he should get all the work orders falling in the time slots S1. in the same way if he executes the report at 12.00 he should get work orders falling in the time slot S1,S2,AM and the user may execute the report at any time.
can anyone suggest how to implement the code and is there any functional module which takes current time and gives the time slots as output.
In the standard workorder u wont find the time slots as S1, S2,S3 u will find it as A,B,C,D in ABC indicator field of location tab.
pls urgent help me and surely u can expect points.
Message was edited by:
Ravi Kumar Gundacan you make use of the logic as
sy-uzeit+0(2) --> hrs cnt like
08
10
12
14 16
into variables and
case timeslot.
when
endcase .
vl = lower value
vh = higher value and then substitute the same in the
say user has entered a time of 11:40 am
then set the lower value to 8
and higher to 12
vl = 8
vh = 12
do this in the case endcase.
select query
select f1 f2 ...
fx between vl and vh .
regards,
vijay -
Regarding sending email with priority
hi experts,
how to send email to multiple email ids with priorityDear thomson,
i have developed report like bellow its working fine but when i send mail to multiple email ids it is sent sorted form i dont want like tat i want 2 send as per my input sequience
thanks
REPORT zhrr_res_email.
Infotypes *
INFOTYPES : 0000, "Actions
0001, "Organizational Assignment
0002, "Personal Details
0009, "Bank Details
0587, "Provident Fund Contribution
0185, "Personal IDs
0041, "Date Specifications
0105. "Communication
TABLES : pa0105, pernr.
Internal Tables *
DATA :
BEGIN OF t_output OCCURS 0,
pernr LIKE pernr-pernr, " Personnel No.
ename TYPE emnam, " Employee Name
kostl TYPE kostl, " Cost Center
ptext TYPE pktxt, " Grade Text
btrtl TYPE btrtl, " Sub Area
btext TYPE btext, " Sub Area Text
jdate TYPE begda, " Joing Date
ldate TYPE begda, " releaving date
stext TYPE stext, " Designation
dept TYPE stext, " Department
comp_name TYPE butxt, " Company
e_mail TYPE stext,
e_pernr TYPE pernr-pernr,
e_pernr1 TYPE stext,
e_name TYPE emnam,
fax TYPE stext,
tel_extens TYPE stext,
email TYPE stext,
END OF t_output,
BEGIN OF t_pa0000 OCCURS 0,
pernr TYPE pa0000-pernr,
subty TYPE pa0000-subty,
begda TYPE pa0000-begda,
massn TYPE pa0000-massn,
massg TYPE pa0000-massg,
END OF t_pa0000,
BEGIN OF to_hrp1001 OCCURS 0,
otype TYPE hrp1001-otype,
objid TYPE hrp1001-objid,
plvar TYPE hrp1001-plvar,
begda TYPE hrp1001-begda,
endda TYPE hrp1001-endda,
sclas TYPE hrp1001-sclas,
sobid TYPE hrp1001-sobid,
END OF to_hrp1001,
BEGIN OF tt_pa0105 OCCURS 0,
usrid_long TYPE pa0105-usrid_long,
END OF tt_pa0105,
BEGIN OF t_zhrt_res_email OCCURS 0,
pernr TYPE zhrt_res_email-pernr,
edate TYPE zhrt_res_email-edate,
etime TYPE zhrt_res_email-etime,
END OF t_zhrt_res_email.
DATA: tt_zhrt_res_email1 LIKE zhrt_res_email OCCURS 0 WITH HEADER LINE .
DATA: tt_zhrt_res_email LIKE zhrt_res_email OCCURS 0 WITH HEADER LINE .
DATA: t_pa0105 LIKE pa0105 OCCURS 0 WITH HEADER LINE .
DATA: t_pa0001 LIKE pa0001 OCCURS 0 WITH HEADER LINE .
DATA: objtxt LIKE solisti1 OCCURS 10 WITH HEADER LINE.
DATA: objcont LIKE solisti1 OCCURS 10 WITH HEADER LINE.
DATA: reclist LIKE somlreci1 OCCURS 5 WITH HEADER LINE.
DATA: reclist1 LIKE somlreci1 OCCURS 5 WITH HEADER LINE.
DATA: doc_chng LIKE sodocchgi1.
DATA : lines LIKE tline OCCURS 0 WITH HEADER LINE.
Work Area *
Working Variables *
DATA :
w_var TYPE i,
w_no_days TYPE i,
dt1(12) TYPE c,
dt2(12) TYPE c,
dt3(12) TYPE c,
dt4(12) TYPE c.
Selectin Screen *
SELECTION-SCREEN COMMENT 1(20) ctxt.
SELECTION-SCREEN COMMENT 23(5) ctxt1.
SELECTION-SCREEN COMMENT 30(15) ctxt2.
SELECTION-SCREEN COMMENT 48(10) ctxt3.
SELECTION-SCREEN COMMENT 60(15) ctxt4.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(19) text-004.
PARAMETERS :rl_dt LIKE sy-datum .
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(19) text-007.
PARAMETERS :rs_dt LIKE sy-datum .
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(19) text-005.
PARAMETERS :sf_note(10) TYPE c .
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(19) text-009.
PARAMETERS :rs_l(50) TYPE c .
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(19) text-008.
PARAMETERS :fr_by(30) TYPE c .
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(19) text-015.
PARAMETERS : ipc(3) TYPE c .
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(19) text-016.
PARAMETERS :pce(30) TYPE c .
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 5(19) text-017.
PARAMETERS :pcn(30) TYPE c .
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-100.
DATA : w_name TYPE pa0105-usrid_long.
SELECT-OPTIONS : s_name FOR w_name NO INTERVALS.
SELECT-OPTIONS :s_name1 FOR w_name NO INTERVALS.
SELECTION-SCREEN END OF BLOCK b2.
AT SELECTION-SCREEN. *
AT SELECTION-SCREEN ON VALUE-REQUEST FOR ipc.
DATA : BEGIN OF value1 OCCURS 0,
status TYPE zhrt_res_email-status,
END OF value1.
DATA : value LIKE value1 OCCURS 0 WITH HEADER LINE.
DATA return_tab LIKE ddshretval OCCURS 0 WITH HEADER LINE.
DATA : val(3) TYPE c.
DATA retfield TYPE dfies-fieldname.
retfield = 'STATUS'.
value-status = 'YES'.
APPEND value.
value-status = 'NO'.
APPEND value.
DATA dynpprog LIKE sy-repid.
DATA dynpnr LIKE sy-dynnr.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
ddic_structure = 'ZHRT_RES_EMAIL'
retfield = 'STATUS'
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = 'IPC'
value_org = 'S'
callback_program = sy-repid
TABLES
value_tab = value
return_tab = return_tab
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
READ TABLE return_tab INDEX 1.
IF sy-subrc = 0.
ipc = return_tab-fieldval.
ENDIF.
ENDIF.
AT SELECTION-SCREEN.
IF rs_dt NE '00000000' AND rl_dt NE '00000000'.
CALL FUNCTION 'HR_SGPBS_YRS_MTHS_DAYS'
EXPORTING
beg_da = rl_dt
end_da = rs_dt
IMPORTING
no_cal_day = w_no_days
EXCEPTIONS
dateint_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ENDIF.
w_var = w_no_days.
sf_note = 30 - w_var.
IF ipc EQ 'YES'.
SELECT SINGLE ename FROM pa0001 INTO pcn WHERE pernr EQ pce.
ENDIF.
AT SELECTION-SCREEN OUTPUT.
SELECT SINGLE * FROM pa0001 INTO t_pa0001 WHERE pernr = pnppernr-low AND
begda LE pn-endda AND
endda GE pn-endda.
READ TABLE t_pa0001 WITH KEY pernr = pernr-pernr.
ctxt = t_pa0001-ename.
SELECT SINGLE ptext FROM t503t INTO ctxt1 WHERE persk = t_pa0001-persk AND sprsl EQ 'EN'.
SELECT SINGLE ptext FROM t501t INTO ctxt3 WHERE persg = t_pa0001-persg AND sprsl EQ 'EN'.
SELECT SINGLE btext FROM t001p INTO ctxt2 WHERE btrtl = t_pa0001-btrtl.
SELECT SINGLE butxt FROM t001 INTO ctxt4 WHERE bukrs = t_pa0001-bukrs AND spras EQ 'EN'.
INITIALIZATION. *
INITIALIZATION.
SELECTION-SCREEN BEGIN OF SCREEN 500 TITLE title
AS WINDOW.
SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-011.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETER : r1 RADIOBUTTON GROUP pr2 DEFAULT 'X'.
SELECTION-SCREEN COMMENT 4(50) text-013.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETER : r2 RADIOBUTTON GROUP pr2.
SELECTION-SCREEN COMMENT 4(55) text-012.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK b3.
SELECTION-SCREEN END OF SCREEN 500.
title = 'Selection'.
CALL SELECTION-SCREEN '0500' STARTING AT 2 2.
IF r1 IS INITIAL.
CALL TRANSACTION 'ZHRR_RES_DELETE_EMIL'.
ENDIF.
Get Pernr *
GET pernr.
IF pnppernr-low IS INITIAL.
MESSAGE 'Enter Personal number' TYPE 'E'.
ENDIF.
SELECT * FROM zhrt_res_email INTO tt_zhrt_res_email1 WHERE pernr = pernr-pernr.
ENDSELECT.
READ TABLE tt_zhrt_res_email1 WITH KEY pernr = pernr-pernr.
IF pernr-pernr = tt_zhrt_res_email1-pernr.
DATA: etxt(50) TYPE c,
dt LIKE sy-datum.
dt = tt_zhrt_res_email1-edate.
CALL FUNCTION 'CONVERT_DATE_FORMAT'
EXPORTING
i_date = dt
IMPORTING
e_calc_date = dt.
CONCATENATE 'Already mail sent on- ' dt INTO etxt.
MESSAGE etxt TYPE 'E'.
ELSE.
PERFORM read_data. " Read Data
PERFORM recepient.
PERFORM send_mail.
REFRESH t_output.
PERFORM status_check.
ENDIF.
END-OF-SELECTION. *
END-OF-SELECTION.
MODIFY zhrt_res_email FROM TABLE tt_zhrt_res_email.
DATA msg(200) TYPE c.
LOOP AT reclist1.
IF reclist-retrn_code = 0.
CONCATENATE reclist1-receiver ': Sent Successfully'
INTO msg SEPARATED BY space.
IF reclist1-receiver IS NOT INITIAL.
WRITE : msg.
ENDIF.
CLEAR msg.
ELSE.
WRITE : reclist1-receiver , 'Not sent'.
ENDIF.
ENDLOOP.
*& Form send_mail
FORM send_mail .
REFRESH : objcont.
LOOP AT t_output.
CONCATENATE 'COMPANY NAME.....................: 't_output-comp_name INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE 'RESIGNATION RECEIVED FROM:' '.' INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE '----
' '.' INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE '* Employee Code.......................:'t_output-pernr INTO objcont SEPARATED BY space.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE '* Name.....................................: 't_output-ename INTO objcont SEPARATED BY space.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE '* Designation.............................:'t_output-stext INTO objcont SEPARATED BY space.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE t_output-jdate0(2) '/' t_output-jdate2(2) '/' t_output-jdate+4(4) INTO dt1.
CONCATENATE '* Date of Joining.........................: 'dt1 INTO objcont SEPARATED BY space.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE '* Grade......................................: 't_output-ptext INTO objcont SEPARATED BY space..
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE '* Branch/Department...................: 't_output-dept '/' t_output-btext INTO objcont SEPARATED BY space.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CALL FUNCTION 'CONVERT_DATE_FORMAT'
EXPORTING
i_date = rl_dt
IMPORTING
e_calc_date = rl_dt.
CONCATENATE rl_dt0(2) '/' rl_dt2(2) '/' rl_dt+4(4) INTO dt2.
CONCATENATE '* Resignation Submitted on......... : 'dt2 INTO objcont SEPARATED BY space.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CALL FUNCTION 'CONVERT_DATE_FORMAT'
EXPORTING
i_date = rs_dt
IMPORTING
e_calc_date = rs_dt.
CONCATENATE rs_dt0(2) '/' rs_dt2(2) '/' rs_dt+4(4) INTO dt3.
CONCATENATE '* Asked Date of Release..............: 'dt3 INTO objcont SEPARATED BY space.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE '* Short Fall of Notice....................: 'sf_note INTO objcont SEPARATED BY space.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE '* Reason for leaving HCC..............: 'rs_l INTO objcont SEPARATED BY space.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE '* Forwarded by.............................:'fr_by INTO objcont SEPARATED BY space.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE '----
' '.' INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE 'This is Computer generated report' '.' INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE 'With Regards,' '' INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE t_output-e_name '' INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE 'Personnel Manager' '' INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE 'Hindustan Construction Company Ltd' '.' INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE 'Hincon House, LBS Marg' '' INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE 'Vikhroli (West)' '' INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE 'Mumbai 400083, India' '.' INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE 'Tel:' t_output-tel_extens INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE 'Fax:'t_output-fax INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE 'Email:' t_output-email INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
CONCATENATE 'Website: om' '.' INTO objcont.
CONDENSE objcont.
APPEND objcont.
CLEAR objcont.
ENDLOOP.
doc_chng-obj_name = ''.
doc_chng-obj_descr = 'Resignation'.
doc_chng-priority = 'X'.
CALL FUNCTION 'SO_NEW_DOCUMENT_SEND_API1'
EXPORTING
document_data = doc_chng
document_type = 'RAW'
put_in_outbox = 'X'
commit_work = 'X'
TABLES
object_content = objcont
receivers = reclist
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
DATA msg(200) TYPE c.
CASE sy-subrc.
WHEN 0.
MESSAGE 'Mail has sent Succesfully' TYPE 'I'.
WHEN 2.
WRITE: / 'Document could not be sent to any of the recipients!'.
WHEN 4.
WRITE: / 'No authorization to send !'.
WHEN OTHERS.
WRITE: / 'Error occurred during sending !'.
ENDCASE.
ENDFORM. " send_mail
*& Form recepient
FORM recepient .
LOOP AT s_name.
TRANSLATE s_name-low TO UPPER CASE.
reclist-receiver = s_name-low.
reclist-rec_type = 'U'.
APPEND reclist.
CLEAR reclist.
ENDLOOP.
LOOP AT s_name1.
TRANSLATE s_name1-low TO UPPER CASE.
reclist-receiver = s_name1-low.
reclist-rec_type = 'U'.
reclist-copy = 'X'.
APPEND reclist.
CLEAR reclist.
ENDLOOP.
IF pce IS NOT INITIAL.
SELECT SINGLE usrid_long FROM pa0105 INTO tt_pa0105-usrid_long WHERE usrty = '0010' AND
pernr = pce.
APPEND tt_pa0105.
ENDIF.
LOOP AT tt_pa0105.
CLEAR : reclist.
TRANSLATE tt_pa0105-usrid_long TO UPPER CASE.
reclist-receiver = tt_pa0105-usrid_long.
reclist-rec_type = 'U'.
reclist-copy = 'X'.
APPEND reclist.
CLEAR reclist.
ENDLOOP.
reclist1[] = reclist[].
ENDFORM. " recepient
*& Form read_data
FORM read_data .
Actions
PROVIDE * FROM p0000 BETWEEN pn-begda AND pn-endda.
CASE p0000-massn.
WHEN 'A1'.
t_output-jdate = p0000-begda.
WHEN 'B6'.
t_output-jdate = p0000-begda.
WHEN 'B3'.
t_output-ldate = p0000-begda.
ENDCASE.
ENDPROVIDE.
CALL FUNCTION 'CONVERT_DATE_FORMAT'
EXPORTING
i_date = t_output-jdate
IMPORTING
e_calc_date = t_output-jdate.
Organizational Assignment
rp_provide_from_last p0001 space pn-begda pn-endda.
IF pnp-sw-found EQ '1'.
t_output-pernr = pernr-pernr.
t_output-ename = p0001-ename.
Company
SELECT SINGLE butxt FROM t001
INTO t_output-comp_name
WHERE bukrs = p0001-bukrs.
PSA
SELECT SINGLE btext FROM t001p
INTO t_output-btext
WHERE btrtl = p0001-btrtl.
Grade text
SELECT SINGLE ptext FROM t503t
INTO t_output-ptext
WHERE persk = p0001-persk AND
sprsl = 'EN'.
designation
SELECT SINGLE stext
FROM hrp1000 INTO t_output-stext
WHERE otype = 'S' AND
objid = p0001-plans AND
plvar = '01' AND
langu = 'EN'.
*Department text DEPT
SELECT otype
objid
plvar
begda
endda
sclas
sobid FROM hrp1001 INTO CORRESPONDING FIELDS OF
TABLE to_hrp1001
WHERE otype = 'O' AND
plvar = '01' AND
rsign = 'B' AND
relat = '003' AND
sclas = '94' AND
begda LE pn-endda AND
endda GE pn-endda.
READ TABLE to_hrp1001 WITH KEY objid = p0001-orgeh.
IF sy-subrc NE 0.
CLEAR : t_output-dept.
ELSE.
SELECT SINGLE stext FROM hrp1000 INTO t_output-dept
WHERE objid = to_hrp1001-sobid AND
otype = to_hrp1001-sclas AND
plvar = '01' AND
langu = sy-langu AND
begda LE pn-endda AND
endda GE pn-endda.
ENDIF.
ENDIF.
SELECT SINGLE usrid_long FROM pa0105 INTO t_output-e_mail
WHERE pernr = pernr-pernr AND
subty = '0010'.
SELECT SINGLE persnumber FROM usr21 INTO t_output-e_pernr1
WHERE bname = sy-uname.
SELECT SINGLE smtp_addr FROM adr6 INTO t_output-email
WHERE persnumber = t_output-e_pernr1.
TRANSLATE t_output-email TO UPPER CASE.
SELECT SINGLE pernr FROM pa0105 INTO t_output-e_pernr
WHERE usrid_long = t_output-email AND
subty = '0010'.
SELECT SINGLE usrid FROM pa0105 INTO t_output-fax
WHERE pernr = t_output-e_pernr AND
subty = '0005'.
SELECT SINGLE usrid_long FROM pa0105 INTO t_output-tel_extens
WHERE pernr = t_output-e_pernr AND
subty = '0020'.
SELECT SINGLE ename FROM pa0001 INTO t_output-e_name
WHERE pernr = t_output-e_pernr.
APPEND t_output.
CLEAR t_output.
ENDFORM. " read_data
*& Form status_check
FORM status_check .
tt_zhrt_res_email-pernr = pernr-pernr.
tt_zhrt_res_email-edate = sy-datum.
tt_zhrt_res_email-etime = sy-uzeit.
APPEND tt_zhrt_res_email.
CLEAR tt_zhrt_res_email.
ENDFORM. " status_check
Edited by: gopi sankuratri on Jun 26, 2008 10:44 AM -
hello,
i have a requirement to attach a file to our own ztransactions for a particular field.kindly help me regarding this issue.
thanks and regards,
siri.Hi,
Just check this code: -
Reward points if it solve your problem: -
FUNCTION z_mi_create_attachment.
""Local Interface:
*" IMPORTING
*" VALUE(CLAIM_NUM) TYPE CHAR9
*" VALUE(SUBCLAIM_NUM) TYPE CHAR2
*" EXPORTING
*" VALUE(DOCUMENT_KEY) TYPE SWO_TYPEID
*" EXCEPTIONS
*" INVALID_CLAIM
*" NO_ATTACH
TABLES: zmit_clma,
zmit_clmd.
DATA: lo_attachment TYPE REF TO cl_gos_document_service,
ls_object TYPE borident,
lp_attachment TYPE swo_typeid,
ls_attachment TYPE sibflporb,
i_clma TYPE STANDARD TABLE OF zmit_clma INITIAL SIZE 0,
wa_clma TYPE zmit_clma.
DATA: lv_claim TYPE char9,
lv_sub TYPE char2,
lv_logsys TYPE logsys.
USEFUL INFORMATION -
*-- Message class- SGOS_MSG; Link saved in table- ;Tcode-SO00
SELECT SINGLE claim_number
sub_claim_num
FROM zmit_clmd
INTO (lv_claim, lv_sub)
WHERE claim_number = claim_num AND
sub_claim_num = subclaim_num.
IF sy-subrc NE 0.
RAISE invalid_claim.
ENDIF.
CALL FUNCTION 'OWN_LOGICAL_SYSTEM_GET'
IMPORTING
own_logical_system = lv_logsys
EXCEPTIONS
own_logical_system_not_defined = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
ls_object-objkey = lv_claim.
ls_object-objtype = lv_sub.
ls_object-logsys = lv_logsys.
CREATE OBJECT lo_attachment.
CALL METHOD lo_attachment->create_attachment
EXPORTING
is_object = ls_object
IMPORTING
ep_attachment = lp_attachment.
IF lp_attachment IS INITIAL.
RAISE no_attach.
ENDIF.
wa_clma-claim_number = lv_claim.
wa_clma-sub_claim_num = lv_sub.
wa_clma-attach_item = ' '.
wa_clma-attach_remarks = lp_attachment.
wa_clma-sort_order = ' '.
wa_clma-created_by = sy-uname.
wa_clma-created_date = sy-datum.
wa_clma-created_time = sy-uzeit.
wa_clma-last_modified_by = sy-uname.
wa_clma-last_modify_date = sy-datum.
wa_clma-last_modify_time = sy-uzeit.
APPEND wa_clma TO i_clma.
CLEAR wa_clma.
MODIFY zmit_clma FROM TABLE i_clma.
document_key = lp_attachment.
CLEAR: lv_claim, lv_sub, lv_logsys, lp_attachment.
ENDFUNCTION.
Maybe you are looking for
-
Ipod Classic 160GB - cannot format or restore
Hi guys, I have a two year old 160GB Ipod Classic, which has recently stopped working. It happened pretty much out of nowhere. First of all, all the music disappeared from the Ipod. Then, when I connected it to the PC in order to see what's up (I'm u
-
G780 Fn+F6 on\off touchpad is not working
Not having Fn F6 to disable the touch pad is a most annoying problem on my G780. Had to do a windows 7 (64 bit) clean install a couple of months ago. After selling me Windows 7 discs Levono support has been zero help. I have a wireless mouse conne
-
My macbook crashed, and i want to sync my phone with my new macbook
My Macbook crashed, and with it I lost my entire music library; at least the part that wasn't synced to my iPhone 4S. I purchased a new macbook and would love to transfer the songs FROM my iphone TO my macbook, but I keep getting this message - which
-
How do I organize a document for users to download from my site?
I need users to be able to download a pdf from my site. I have dragged and dropped a (one page) pdf into a picture frame and I want users to have the ability to download this ... or any other multi-page pdf. Can anyone help with this? Thanks. Andre
-
I am using the quiz template. I changed the text "Scene 1" to "Test." I then added 3 more scenes. "Home" "Objectives", and "Keywords." These last two scenes are only linked from the Home screen. The home screen also has a "begin test" button that goe