Reg: passing totals /subtotals of a ALV to a smartform
I have a editable ALV report which has a button to call a smartform . Once the user edits some fields I need to pass the refreshed total to the smartform. I want to know - in what structure the totals/subtotals of the ALV report are stored.
Banu,
Even if you figure out how to get the subtotals / totals from a ALV, I would still suggest you to use the features of SMART Forms to calculate the same again in the form.
http://help.sap.com/saphelp_nw04/helpdata/en/55/610e2db57911d4b62c006094192fe3/content.htm
So, that way if your form is triggered even without doing the subtotalling done by the user you are on the safer side as the form will still display what you have designed it for.
Regards,
Ravi
Note :Please mark all the helpful answers
Similar Messages
-
Adding/Enabling Totals & Subtotals Button in ALV Report Output
Hi Guys,
I would like to know , how to add / enable Totals & Subtotals Button on the application tool bar in alv report output.
Regards,
Kishanok so here i am sending my code....its also interactive...
and in second list i am displaying quantity....
*& Report ZINT_ALV
REPORT zint_alv.
TYPE-POOLS:slis.
TABLES:mara,
makt,
mseg.
DATA:BEGIN OF itab OCCURS 0,
matnr LIKE mara-matnr,
maktx LIKE makt-maktx,
END OF itab.
DATA:BEGIN OF itab1 OCCURS 0,
mblnr LIKE mseg-mblnr,
menge LIKE mseg-menge,
meins LIKE mseg-meins,
werks LIKE mseg-werks,
END OF itab1.
DATA:fcat TYPE slis_t_fieldcat_alv,
fcat1 TYPE slis_t_fieldcat_alv,
eve TYPE slis_t_event,
eve1 TYPE slis_t_event.
DATA:t_mat LIKE mara-matnr,
s_mat LIKE mara-matnr,
g_repid LIKE sy-repid.
SELECTION-SCREEN:BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
SELECT-OPTIONS:mat FOR mara-matnr OBLIGATORY.
SELECTION-SCREEN:END OF BLOCK blk1.
INITIALIZATION.
PERFORM build_fcat USING fcat.
PERFORM build_eve.
START-OF-SELECTION.
PERFORM get_data.
PERFORM dis_data.
*& Form build_fcat
text
-->T_FCAT text
FORM build_fcat USING t_fcat TYPE slis_t_fieldcat_alv.
DATA:wa_fcat TYPE slis_fieldcat_alv.
wa_fcat-tabname = 'ITAB'.
wa_fcat-fieldname = 'MATNR'.
wa_fcat-ref_fieldname = 'MATNR'.
wa_fcat-ref_tabname = 'MARA'.
wa_fcat-seltext_m = 'Material'.
wa_fcat-input = ' '.
wa_fcat-edit = 'X'.
wa_fcat-input = 'X'.
APPEND wa_fcat TO t_fcat.
CLEAR wa_fcat.
wa_fcat-tabname = 'ITAB'.
wa_fcat-fieldname = 'MAKTX'.
wa_fcat-seltext_m = 'Description'.
APPEND wa_fcat TO t_fcat.
CLEAR wa_fcat.
ENDFORM. "build_fcat
*& Form build_eve
text
FORM build_eve.
DATA:t_eve TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = eve
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.
ENDFORM. "build_eve
*& Form get_data
text
FORM get_data.
SELECT maramatnr maktmaktx INTO CORRESPONDING FIELDS OF TABLE itab
FROM mara INNER JOIN makt
ON maramatnr = maktmatnr
WHERE mara~matnr IN mat.
ENDFORM. "get_data
*& Form dis_data
text
FORM dis_data.
g_repid = sy-repid.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = g_repid "'ZINT_ALV'
i_callback_user_command = 'USER_COMMAND'
i_grid_title = 'Interactive ALV'
it_fieldcat = fcat
it_events = eve
TABLES
t_outtab = itab
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. "dis_data
*& Form user_command
text
-->U_COM text
FORM user_command USING u_com LIKE sy-ucomm sel_field TYPE slis_selfield.
CLEAR fcat1.
CASE u_com.
WHEN '&IC1'.
READ TABLE itab INDEX sel_field-tabindex.
IF sel_field-fieldname = 'MATNR'.
IF sy-subrc = 0.
t_mat = itab-matnr.
PERFORM build_cat1 USING fcat1.
PERFORM build_eve1.
PERFORM get_data1.
PERFORM dis_data1.
ENDIF.
ENDIF.
SET PARAMETER ID 'MAT' FIELD t_mat.
CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.
ENDCASE.
ENDFORM. "user_command
*& Form build_fcat1
text
-->T_FCAT1 text
FORM build_cat1 USING t_fcat1 TYPE slis_t_fieldcat_alv.
DATA:wa_fcat1 TYPE slis_fieldcat_alv.
wa_fcat1-tabname = 'ITAB1'.
wa_fcat1-fieldname = 'MBLNR'.
wa_fcat1-seltext_m = 'Material Doc.'.
APPEND wa_fcat1 TO t_fcat1.
CLEAR wa_fcat1.
wa_fcat1-tabname = 'ITAB1'.
wa_fcat1-fieldname = 'MENGE'.
wa_fcat1-seltext_m = 'Quantity'.
APPEND wa_fcat1 TO t_fcat1.
CLEAR wa_fcat1.
wa_fcat1-tabname = 'ITAB1'.
wa_fcat1-fieldname = 'MEINS'.
wa_fcat1-seltext_m = 'UOM'.
APPEND wa_fcat1 TO t_fcat1.
CLEAR wa_fcat1.
wa_fcat1-tabname = 'ITAB1'.
wa_fcat1-fieldname = 'WERKS'.
wa_fcat1-seltext_m = 'Plant'.
APPEND wa_fcat1 TO t_fcat1.
CLEAR wa_fcat1.
ENDFORM. "build_fcat1
*& Form build_eve1
text
FORM build_eve1.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = eve1
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.
ENDFORM. "build_eve1
*& Form get_data1
text
FORM get_data1.
SELECT mblnr menge meins werks FROM mseg
INTO CORRESPONDING FIELDS OF TABLE itab1
WHERE matnr = t_mat.
ENDFORM. "get_data1
*& Form dis_data1
text
FORM dis_data1.
g_repid = sy-repid.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = g_repid "'ZINT_ALV'
i_callback_user_command = 'USER_COMMAND1'
it_fieldcat = fcat1
it_events = eve1
TABLES
t_outtab = itab1
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. "dis_data1 -
Passing the Total/Subtotal Text in ALV
Hi All,
I would like to know is there any chance with ALV to pass Total/Subtotal Text.
PS:I'm not looking for the text ls_layout-totals_text = 'Grand Total'.
ls_layout-subtotals_text = 'SubTotal'.
What i'm looking for is In My below Output:
112365 TDS Windsor Sequencing
112365 TDS Windsor Sequencing
112365 TDS Windsor Sequencing
* Total <Group text> "Here My total amount is showing
112313 Operations and Engineering
* Total <Group text> "Here My total amount is showing
112363 DCX Windsor
* Total <Group text> "Here My total amount is showing
** Subtotal <Group text> "Here My "SUB total" amount is showing of above three totals
I've <Group text> in My Final ALV one of field, but need to show at the place of <Group text> in above output.
PS:And For Totals/Subtotals i'm using standard function of ALV by passing IT_SORT(which is in Reuse_Alv..FM)
Any Hints?
Thank You,
Cheers,
Amit.Hi Amit,
Please check this example..I used the event BEFORE_LINE_OUTPUT to populate the subtotal texts
dynamically..Used the Field-symbols technique to populate the subtotals text...Hope this is what you
are looking for.
TYPE-POOLS: slis,kkblo.
DATA: BEGIN OF wa,
vbeln TYPE vbeln,
posnr TYPE posnr,
matnr TYPE matnr,
netpr TYPE netpr,
waerk TYPE waerk,
text TYPE char20,
END OF wa.
DATA: BEGIN OF wa_vbak,
vbeln TYPE vbeln,
END OF wa_vbak.
DATA: i_event TYPE slis_t_event,
t_sort TYPE slis_t_sortinfo_alv,
s_sort TYPE LINE OF slis_t_sortinfo_alv,
l_s_event TYPE LINE OF slis_t_event.
DATA: t_fieldcatalog TYPE slis_t_fieldcat_alv.
DATA: s_layout TYPE slis_layout_alv.
DATA: v_repid TYPE syrepid.
DATA: s_fieldcatalog TYPE slis_fieldcat_alv.
DATA: itab1 LIKE TABLE OF wa.
DATA: itab LIKE TABLE OF wa_vbak.
START-OF-SELECTION.
* Field catalog populate.
s_fieldcatalog-col_pos = '1'.
s_fieldcatalog-fieldname = 'VBELN'.
s_fieldcatalog-rollname = 'VBELN'.
s_fieldcatalog-outputlen = '12'.
APPEND s_fieldcatalog TO t_fieldcatalog.
CLEAR: s_fieldcatalog.
s_fieldcatalog-col_pos = '2'.
s_fieldcatalog-fieldname = 'POSNR'.
s_fieldcatalog-rollname = 'POSNR'.
APPEND s_fieldcatalog TO t_fieldcatalog.
CLEAR: s_fieldcatalog.
s_fieldcatalog-col_pos = '3'.
s_fieldcatalog-fieldname = 'MATNR'.
s_fieldcatalog-rollname = 'MATNR'.
APPEND s_fieldcatalog TO t_fieldcatalog.
CLEAR: s_fieldcatalog.
s_fieldcatalog-col_pos = '4'.
s_fieldcatalog-fieldname = 'NETPR'.
s_fieldcatalog-ref_tabname = 'VBAP'.
s_fieldcatalog-ref_fieldname = 'NETPR'.
s_fieldcatalog-do_sum = 'X'.
APPEND s_fieldcatalog TO t_fieldcatalog.
CLEAR: s_fieldcatalog.
* Get vbak
SELECT vbeln UP TO 100 ROWS
FROM
vbak
INTO TABLE itab.
IF NOT itab[] IS INITIAL.
* Get vbap
SELECT vbeln posnr matnr netpr waerk arktx
FROM vbap
INTO TABLE itab1
FOR ALL ENTRIES IN itab
WHERE vbeln = itab-vbeln.
ENDIF.
v_repid = sy-repid.
* Build sort internal table.
s_sort-spos = '1'.
s_sort-fieldname = 'VBELN'.
s_sort-tabname = 'ITAB1'.
s_sort-up = 'X'.
s_sort-subtot = 'X'.
s_sort-group = 'UL'.
APPEND s_sort TO t_sort.
* Get alv events.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 2
IMPORTING
et_events = i_event
EXCEPTIONS
list_type_wrong = 0
OTHERS = 0.
* Before line output.
READ TABLE i_event INTO l_s_event
WITH KEY name = 'BEFORE_LINE_OUTPUT'.
IF sy-subrc = 0.
MOVE 'BEFORE_LINE_OUTPUT' TO l_s_event-form.
MODIFY i_event FROM l_s_event INDEX sy-tabix.
ENDIF.
* Populate dummy text.
s_layout-subtotals_text = 'Dummy'.
* Init
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_INIT'
EXPORTING
i_callback_program = v_repid.
* Append
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_APPEND'
EXPORTING
is_layout = s_layout
it_fieldcat = t_fieldcatalog
i_tabname = 'ITAB1'
it_events = i_event
it_sort = t_sort
TABLES
t_outtab = itab1
EXCEPTIONS
program_error = 1
maximum_of_appends_reached = 2
OTHERS = 3.
* Display
CALL FUNCTION 'REUSE_ALV_BLOCK_LIST_DISPLAY'.
*& Form BEFORE_LINE_OUTPUT
* text
* -->GS_LINEINFO text
FORM before_line_output USING gs_lineinfo TYPE kkblo_lineinfo.
FIELD-SYMBOLS: <fs_layout> TYPE kkblo_layout.
ASSIGN ('(SAPLKKBL)GT_STACK-IS_LAYOUT') TO <fs_layout>.
CHECK sy-subrc = 0.
* Check if it is subtotal line.
CHECK gs_lineinfo-subtot = 'X'.
* Get the text
READ TABLE itab1 INTO wa INDEX gs_lineinfo-sumindex.
IF sy-subrc = 0.
<fs_layout>-subtotals_text = wa-text.
ENDIF.
ENDFORM. "BEFORE_LINE_OUTPUT
Thanks
Naren -
Totals, Subtotals and ABC Analysis buttons missing from ALV.
Hi,
I have used FM REUSE_ALV_LIST_DISPLAY in my report without specifying a PF-STATUS that means STANDARD PF-STATUS is used in ALV, and moved from Quality to Production, till yesterday all the features such as Sort, Filter, Local file along with Totals, Subtotals and ABC Analysis were visible, today all buttons are visible but TOTALS, SUBTOTALS and ABC ANALYSIS buttons are missing.
I have not done any changes to the Code nor the layout.
Thanks in advance.
Sunil.
Edited by: Sunil Saini on Nov 24, 2010 11:26 AMHi Lalit,
I have checked the Layout.
In Layout in Quality there are checkboxes in Summation/Totals column in front of Numeric fields,
but these checkboxes are not visible in Layout of Production system.
Regards,
Sunil. -
Sub Total Text in an ALV using FACTORY Method
Hi Gurus,
My requirement is simple, but I couldn't find any answers under SDN or any other forums. Some of you may ask me to check for the SCN posts, but I almost checked everything.
My requirement is - When I get the Sub-total in my ALV, it should print a text other than the field which has got sub-total value.
My ALV Schema:
Field1 | Field2 | Field 3 |
____ |______ |______ |
| | |
| | |
Tot. Qty | 1000.00|
I have sorted and added the subtotal = 'X' for the field which I need the Subtotal. Added Aggregations to Field3. But where and how to the field 'Tot. Qty', so that it should appear at the Sub-Total Level.
Please guide me if I've missed any of the forums. Again my requirement is to print the Field Name.
Regards,
-Wahid Hussain Syed.Hi,
You can view this thread for example Display constant text in intermediate results column of SALV as it says that this is a limitation in SALV that "The output of totals and subtotals is handled solely by ALV. You can neither pass the results to your application nor manipulate them in any way.". But you can see a work around done for this problem, to be frank that I have not done that and I am only providing this link for your reference. -
Hi All,
I want subtotals text in ALV GRID. For this iam seeing a standard program 'BCALV_TEST_FULLSCREEN'.Iam giving subtotal text on selection screen,but its not displayed in output.How to view the text.
When i executed another program BCALV_TEST_LIST, iam able to get the subtotal text in output, what ever i give the text on the selction screen.
Regards,
Kiran IHi,
Chk out this:
*& Form BUILD_LAYOUT
Build layout for ALV grid report
form build_layout.
gd_layout-no_input = 'X'.
gd_layout-colwidth_optimize = 'X'.
gd_layout-totals_text = 'Totals'(201).
gd_layout-totals_only = 'X'.
gd_layout-f2code = 'DISP'. "Sets fcode for when double
"click(press f2)
gd_layout-zebra = 'X'.
gd_layout-group_change_edit = 'X'.
gd_layout-header_text = 'helllllo'.
endform. " BUILD_LAYOUT
Best Regards,
Anjali -
Hi,
I want to display the Total and Subtotal in Alv in Webdynpro Abap, and i am getting this Error( Access via 'NULL' object reference not possible) and also i have checked the Cardinality also. Please get me a Good Solution.I think your node( the node which is binded to data node of alv interface controller ) having collection cardinality of 1:1, if yes, then change it to 0:N,
i hope this will solve the issue.
If you still get the error, go to st22, open your error, go down that page (keep pressing pagedown button ), then you will find your code and there find this arrow >>>>> then let me know that code line.
Regards
Srinivas -
To get total qty delivered using ALV in a report
Hi All,
I am getting Quantity Delivered iout-lfimg in a ALV Report, in the last line I have to display total qty delivered. Can some one please help me to get this total qty delivered using ALV.
Thanks,
Veni.
FORM get_data.
SELECT Avbeln Akunag Avsbed Awadat_ist
Bwerks Bmatnr Blfimg Bvrkme
C~vbeln
INTO TABLE IDELI
FROM LIKP AS A
INNER JOIN LIPS AS B
ON avbeln = bvbeln
INNER JOIN VBFA AS C
ON Bvbeln = Cvbelv
AND BPOSNR = CPOSNV
WHERE A~VBELN IN S_VBELN
AND A~ERDAT IN S_ERDAT
AND A~ERNAM IN S_ERNAM
AND A~VSTEL IN S_VSTEL
AND A~VKORG IN S_VKORG
AND A~KUNAG IN S_KUNAG
AND A~VSBED IN S_VSBED
AND A~WADAT_IST IN S_WADAT
AND B~MATNR IN S_MATNR
AND B~WERKS IN S_WERKS
AND C~VBTYP_N = 'Q'.
ENDFORM. " get_data
FORM process_data.
loop at ideli.
if sy-subrc = 0.
concatenate ideli-vbeln ideli-ddeli into lv_wdelno.
MOVE ideli-vbeln TO iout-vbeln.
MOVE lv_wdelno TO iout-wdelno.
MOVE ideli-kunag TO iout-kunag.
MOVE ideli-vsbed TO iout-vsbed.
MOVE ideli-wadat_ist TO iout-wadat_ist.
MOVE ideli-werks TO iout-werks.
MOVE ideli-matnr TO iout-matnr.
MOVE ideli-lfimg TO iout-lfimg.
MOVE ideli-vrkme TO iout-vrkme.
endif.
append iout.
clear iout.
clear lv_wdelno.
endloop.
ENDFORM. " process_dataHi,
While building the fieldcatalog, for the total qty column use the below code :
gs_fieldcat-do_sum = 'X'.
Thanks,
Sriram Ponna. -
To activate total & subtotal button in ALV by class
Hi,
Kindly suggest how to activate total & subtotal button in ALV by class. I have used layout configuration by lvc_s_layo.
gs_layout type lvc_s_layo.
Ashutosh KumarDears,
Do_SUM is not available in gs_layout type lvc_s_layo.
Its working only in function module REUSE_ALV_LIST_DISPLAY.
How to use in class ALV.
FORM SUB_CREATE_FIELDCATALOG .
THIS BELOW FIELD IS EDITABLE
PERFORM APPEND_FIELDCAT USING:'MATNR'
'Material No.'
'CHAR'
'30'
PERFORM APPEND_FIELDCAT USING:'MATKL'
'DOCUMENT TYPE'
'CHAR'
'10'
PERFORM APPEND_FIELDCAT USING:''
'CHAR'
'4'
'C610'
PERFORM APPEND_FIELDCAT USING:'NTGEW'
'NET WT'
'P'
'10'
'C610'
'X'.
PERFORM APPEND_FIELDCAT USING:'VOLTO'
'VOLUME'
'P'
'10'
'C610'
'X'.
PERFORM APPEND_FIELDCAT USING:'VPREH'
'COST'
'P'
'10'
'C610'
ENDFORM. " SUB_CREATE_FIELDCATALOG
*& FORM APPEND_FIELDCAT
TEXT
-->P_0116 TEXT
-->P_0117 TEXT
-->P_0118 TEXT
-->P_0119 TEXT
-->P_0120 TEXT
-->P_10 TEXT
FORM APPEND_FIELDCAT USING P_114
P_115
P_116
P_117
P_118
P_119.
CLEAR GT_FIELDCAT_LVC.
GT_FIELDCAT_LVC-FIELDNAME = P_114.
GT_FIELDCAT_LVC-COLTEXT = P_115.
GT_FIELDCAT_LVC-DATATYPE = P_116.
GT_FIELDCAT_LVC-OUTPUTLEN = P_117.
GT_FIELDCAT_LVC-EMPHASIZE = P_118.
GT_FIELDCAT_LVC-do_sum = P_119.
append gt_fieldcat_lvc. -
Suppressing some subtotals in an ALV grid
Hi,
Does anyone know if it is possible to suppress some of the subtotals in an ALV grid? In some cases I have redundant subtotals, and I would like to suppress one of them. I am using the event SUBTOTAL_TEXT, and this is not something I can control with the sort order.
Thanks,
Margaret Brooker.Hi Margaret,
You might want to take a look at the Development Class (Package) in the Object Navigator (SE80) called SLIS.
There you will find excellent ALV demo programs that illustrate many possible customizations to the Alv grid.
Although there is not an exact supress subtotal example, you could probably create your own pushbuttons or events to embed your own logic.
It is possible to create a local class and implement a double click event, which could delete a duplicate line or any other preferred logic that you code.
cheers,
Marilyn -
Pass selection screen value to ALV
Hi
I need to pass selection screen values to ALV top of page. How to do this?Hi,
Have a look on the following example.
TYPE-POOLS: SLIS.
TABLES: LFA1.
SELECT-OPTIONS: LIFNR FOR LFA1-LIFNR.
DATA: BEGIN OF ITAB OCCURS 0,
LIFNR LIKE LFA1-LIFNR,
NAME1 LIKE LFA1-NAME1,
ORT01 LIKE LFA1-ORT01,
LAND1 LIKE LFA1-LAND1,
REGIO LIKE LFA1-REGIO,
END OF ITAB.
SELECT * FROM LFA1 INTO CORRESPONDING FIELDS OF TABLE ITAB UP TO 5 ROWS.
DATA: LAYOUT TYPE SLIS_LAYOUT_ALV,
HEADER TYPE SLIS_T_LISTHEADER WITH HEADER LINE,
FLDCAT TYPE SLIS_T_FIELDCAT_ALV.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
I_PROGRAM_NAME = SY-REPID
I_INTERNAL_TABNAME = 'ITAB'
I_STRUCTURE_NAME = ITAB
I_CLIENT_NEVER_DISPLAY = 'X'
I_INCLNAME = SY-REPID
I_BYPASSING_BUFFER =
I_BUFFER_ACTIVE =
CHANGING
CT_FIELDCAT = FLDCAT
EXCEPTIONS
INCONSISTENT_INTERFACE = 1
PROGRAM_ERROR = 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.
ENDIF.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = SY-REPID
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
I_CALLBACK_TOP_OF_PAGE = 'TOP-OF-PAGE'
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 = FLDCAT
IT_EXCLUDING =
IT_SPECIAL_GROUPS =
IT_SORT =
IT_FILTER =
IS_SEL_HIDE =
I_DEFAULT = 'X'
I_SAVE = ' '
IS_VARIANT =
IT_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
I_HTML_HEIGHT_TOP = 0
I_HTML_HEIGHT_END = 0
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
IR_SALV_FULLSCREEN_ADAPTER =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = ITAB
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.
DATA: S(10).
S = 'TO'.
FORM TOP-OF-PAGE.
HEADER-TYP = 'S'.
HEADER-KEY = 'LIFNR'.
CONCATENATE LIFNR-LOW LIFNR-HIGH INTO HEADER-INFO SEPARATED BY SPACE.
APPEND HEADER.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = HEADER[]
I_LOGO =
I_END_OF_LIST_GRID =
I_ALV_FORM =
ENDFORM.
Reward,if useful.
Thanks,
Chandu -
Displaying Total Text in an ALV Grid
Hi Experts,
Please suggest me how to display the Total text in the alv grid using CL_SALV_FACTORY method.
Example Output:
Field1 Field2 Field3
a b 100
b c 100
Total 200
Regards,
Sunil KumarHi Avinash,
It will not work since am using cl_salv_factory method. whatever links you have sent are using reuse_alv_grid_display or set_first_table_display.
Regards,
Sunil Kumar -
Re:BDC,ALV,SCRIPTS and SMARTFORMS
Hi,
i need a complete BDC programming example codes with different methods, suppose if it is a material master mm01, i need the screen shots, what to fill in that transaction , the flat file data snapshot and program, so that i will do that example, otherwise iam so much confused
I also need ALV ,SAPSCRIPTS and smartforms realtime sample codes with screenshots so tht i will try directly .
Iam very thankful to all of them who helps me
Thanks & Regards,
Sravanthigopal
[email protected]** Program ID : ZMAT_CREATE
** Program Desc : Material Master Creation
** Process Overview
** Created Date : 22/08/2006
** Company Name :
REPORT ZMAT_CREATE
NO STANDARD PAGE HEADING LINE-SIZE 132 MESSAGE-ID ZBDCMSG.
Internal table definition *
DATA: BEGIN OF ITAB OCCURS 0,
MATNR LIKE RMMG1-MATNR, " Material Number
MBRSH LIKE RMMG1-MBRSH, " Industry Sector
MTART LIKE RMMG1-MTART, " Material Type
WERKS LIKE RMMG1-WERKS, " Plant
LGORT LIKE RMMG1-LGORT, " Storage Location
VKORG LIKE RMMG1-VKORG, " Sales Organization
VTWEG LIKE RMMG1-VTWEG, " Distribution Channel
LGNUM LIKE RMMG1-LGNUM, " Warehouse Number
LGTYP LIKE RMMG1-LGTYP, " Storage Type
MAKTX LIKE MAKT-MAKTX, " Material Description
MEINS LIKE MARA-MEINS, " Base Unit of Measure
MATKL LIKE MARA-MATKL, " Material Group
SPART LIKE MARA-SPART, " Division
MTPOS_MARA LIKE MARA-MTPOS_MARA, "General item category group
GEWEI LIKE MARA-GEWEI, " Weight Unit
TAXKM1 LIKE MG03STEUER-TAXKM, " Tax classification material
TAXKM2 LIKE MG03STEUER-TAXKM, " Tax classification material
KONDM LIKE MVKE-KONDM, " Material Pricing Group
MTPOS LIKE MVKE-MTPOS , "ItemCategoryGroupFromMaterialMaster
MTVFP LIKE MARC-MTVFP, " Checking Group for AvailabilityCheck
TRAGR LIKE MARA-TRAGR, " Transportation group
LADGR LIKE MARC-LADGR, " Loading group
TDLINE LIKE RSTXT-TXLINE, " Text editor text line
EKGRP LIKE MARC-EKGRP, " Purchasing Group
DISMM LIKE MARC-DISMM, " MRP Type
BESKZ LIKE MARC-BESKZ, " Procurement Type
SOBSL LIKE MARC-SOBSL, " Special procurement type
PERKZ LIKE MARC-PERKZ, " Period indicator
PRMOD LIKE MPOP-PRMOD, " Forecast model
KZINI LIKE MPOP-KZINI, " Initialization indicator
AUTRU LIKE MARC-AUTRU, " Reset Forecast Model Automatically
MODAV LIKE MPOP-MODAV, " Model selection procedure
IPRKZ LIKE MARA-IPRKZ, " Period indicator for shelf life expiration date
BWTTY LIKE MBEW-BWTTY, " Valuation Category
BKLAS LIKE MBEW-BKLAS, " Valuation Class
EKLAS LIKE MBEW-EKLAS, " Valuation Class for Sales OrderStock
VPRSV LIKE MBEW-VPRSV, " Price Control Indicator
EKALR LIKE MBEW-EKALR, "MaterialIsCostedWithQuantityStructure
END OF ITAB,
*// TEXT HEADER
GT_HEAD LIKE THEAD,
*// Text lines
GT_TEXT LIKE STANDARD TABLE OF TLINE,
GW_TEXT LIKE TLINE,
Data definition *
WS_REP_CNT(6) TYPE C,
SESSION(12) TYPE C.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-000.
PARAMETERS:
PA_GROUP LIKE APQI-GROUPID OBLIGATORY DEFAULT 'MMupload',
PA_FNAME LIKE IBIPPARMS-PATH OBLIGATORY.
SELECTION-SCREEN END OF BLOCK B1.
Include statements *
INCLUDE ZBDCREX.
At Selection Screen definition *
AT SELECTION-SCREEN ON VALUE-REQUEST FOR PA_FNAME.
*//GETTING FLAT FILE PATH
PERFORM FILE_PATH USING PA_FNAME.
Start of Selection definition *
START-OF-SELECTION.
*//UPLOADING THE FLAT FILE
PERFORM DATA_UPLOAD TABLES ITAB USING PA_FNAME.
*// BDC OPEN GROUP
PERFORM OPEN_GROUP USING PA_GROUP.
SKIP 3.
FORMAT COLOR COL_HEADING INVERSE ON.
WRITE 40 TEXT-001.
FORMAT COLOR COL_HEADING INVERSE OFF.
SKIP 1.
FORMAT COLOR COL_NEGATIVE INVERSE ON.
WRITE :/3 TEXT-002, 13 SY-MANDT, 104 TEXT-003, 113 SY-UNAME,
/3 TEXT-004, 13 SY-DATUM, 104 TEXT-005, 113 SY-UZEIT.
FORMAT COLOR COL_NEGATIVE INVERSE OFF.
LOOP AT ITAB.
WS_REP_CNT = WS_REP_CNT + 1. "To Count no. of Records Processed
PERFORM MM_UPLOAD.
ENDLOOP.
*//STATUS INDICATION
IF SY-SUBRC = 0.
SESSION = PA_GROUP.
SKIP 1.
FORMAT COLOR COL_TOTAL INVERSE ON.
WRITE: /38 TEXT-006 , WS_REP_CNT.
FORMAT COLOR COL_TOTAL INVERSE OFF.
MESSAGE S000 WITH SESSION.
ENDIF.
*// BDC CLOSE GROUP
PERFORM CLOSE_GROUP.
SET PF-STATUS 'ZMM01PF'.
AT USER-COMMAND.
CASE SY-UCOMM.
WHEN 'SESSION'.
CALL TRANSACTION 'SM35'.
WHEN 'EXIT'.
LEAVE PROGRAM.
WHEN 'CANCEL'.
LEAVE SCREEN.
ENDCASE .
FORM MM_UPLOAD *
FORM MM_UPLOAD.
REFRESH BDCDATA.
*// Create Material: Initial Screen
perform bdc_dynpro using 'SAPLMGMM' '0060'.
perform bdc_field using 'BDC_CURSOR'
'RMMG1-MATNR'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_field using 'RMMG1-MATNR'
ITAB-MATNR.
perform bdc_field using 'RMMG1-MBRSH'
ITAB-MBRSH.
perform bdc_field using 'RMMG1-MTART'
ITAB-MTART.
*// Selection Views
perform bdc_dynpro using 'SAPLMGMM' '0070'.
perform bdc_field using 'BDC_CURSOR'
'MSICHTAUSW-DYTXT(01)'.
perform bdc_field using 'BDC_OKCODE'
'SELA'.
perform bdc_dynpro using 'SAPLMGMM' '0070'.
perform bdc_field using 'BDC_CURSOR'
'MSICHTAUSW-DYTXT(01)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
*// Organization Levels
perform bdc_dynpro using 'SAPLMGMM' '0080'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_field using 'RMMG1-WERKS'
ITAB-WERKS.
perform bdc_field using 'RMMG1-LGORT'
ITAB-LGORT.
perform bdc_field using 'RMMG1-VKORG'
ITAB-VKORG.
perform bdc_field using 'RMMG1-VTWEG'
ITAB-VTWEG.
perform bdc_field using 'RMMG1-LGNUM'
ITAB-LGNUM.
perform bdc_field using 'RMMG1-LGTYP'
ITAB-LGTYP.
*// Basic Data 1: Screen
perform bdc_dynpro using 'SAPLMGMM' '4004'.
perform bdc_field using 'BDC_OKCODE'
'=SP04'.
perform bdc_field using 'MAKT-MAKTX'
ITAB-MAKTX.
perform bdc_field using 'MARA-MEINS'
ITAB-MEINS.
perform bdc_field using 'MARA-SPART'
ITAB-SPART.
perform bdc_field using 'MARA-MTPOS_MARA'
ITAB-MTPOS_MARA.
perform bdc_field using 'BDC_CURSOR'
'MARA-GEWEI'.
perform bdc_field using 'MARA-BRGEW'
'9000'.
perform bdc_field using 'MARA-GEWEI'
ITAB-GEWEI.
perform bdc_field using 'MARA-NTGEW'
'8000'.
*// Sales: Sales Organization 1: Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP05'.
perform bdc_field using 'MG03STEUER-TAXKM(01)'
ITAB-TAXKM1.
perform bdc_field using 'MG03STEUER-TAXKM(02)'
ITAB-TAXKM2.
perform bdc_dynpro using 'SAPLMGMM' '4200'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'BDC_OKCODE'
'=SP05'.
*// Sales: Sales Organization 2: Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP06'.
perform bdc_field using 'BDC_CURSOR'
'MVKE-KONDM'.
perform bdc_field using 'MVKE-KONDM'
ITAB-KONDM.
perform bdc_field using 'MARA-MTPOS_MARA'
ITAB-MTPOS_MARA.
perform bdc_field using 'MVKE-MTPOS'
ITAB-MTPOS.
*// Sales: General / Plant Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP12'.
perform bdc_field using 'MARA-MEINS'
ITAB-MEINS.
perform bdc_field using 'MARA-BRGEW'
'9000'.
perform bdc_field using 'MARA-GEWEI'
ITAB-GEWEI.
perform bdc_field using 'MARA-XCHPF'
perform bdc_field using 'MARA-NTGEW'
'8000'.
perform bdc_field using 'MARC-MTVFP'
ITAB-MTVFP.
perform bdc_field using 'BDC_CURSOR'
'MARC-LADGR'.
perform bdc_field using 'MARA-TRAGR'
ITAB-TRAGR.
perform bdc_field using 'MARC-LADGR'
ITAB-LADGR.
*// MRP 1: Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP13'.
perform bdc_field using 'MARA-MEINS'
ITAB-MEINS.
perform bdc_field using 'MARC-EKGRP'
ITAB-EKGRP.
perform bdc_field using 'BDC_CURSOR'
'MARC-DISMM'.
perform bdc_field using 'MARC-DISMM'
ITAB-DISMM.
*// MRP 2: Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP14'.
perform bdc_field using 'BDC_CURSOR'
'RMMG1_BEZ-WERKS_BEZ'.
perform bdc_field using 'MARC-BESKZ'
ITAB-BESKZ.
perform bdc_field using 'MARC-SOBSL'
ITAB-SOBSL .
*// MRP 3: Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP16'.
perform bdc_field using 'BDC_CURSOR'
'MARC-PERKZ'.
perform bdc_field using 'MARC-PERKZ'
ITAB-PERKZ.
perform bdc_field using 'MARC-MTVFP'
ITAB-MTVFP.
*// Forecasting Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP17'.
perform bdc_field using 'BDC_CURSOR'
'MPOP-PRMOD'.
perform bdc_field using 'MARA-MEINS'
ITAB-MEINS.
perform bdc_field using 'MPOP-PRMOD'
ITAB-PRMOD.
perform bdc_field using 'MARC-PERKZ'
ITAB-PERKZ.
perform bdc_field using 'MPOP-PERAN'
'60'.
perform bdc_field using 'MPOP-ANZPR'
'12'.
perform bdc_field using 'MPOP-KZINI'
ITAB-KZINI.
perform bdc_field using 'MPOP-SIGGR'
'4.000'.
perform bdc_field using 'MARC-AUTRU'
ITAB-AUTRU.
perform bdc_field using 'MPOP-MODAV'
ITAB-MODAV.
*// Work Scheduling Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP19'.
perform bdc_field using 'BDC_CURSOR'
'MARC-FRTME'.
perform bdc_field using 'MARA-MEINS'
ITAB-MEINS.
*// Plant data / Stor. 1: Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP20'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MARA-MEINS'
ITAB-MEINS.
perform bdc_field using 'MARA-IPRKZ'
ITAB-IPRKZ.
*// Plant data / Stor. 2: Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP21'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MARA-BRGEW'
'9000'.
perform bdc_field using 'MARA-GEWEI'
ITAB-GEWEI.
perform bdc_field using 'MARA-NTGEW'
'8000'.
*// Warehouse Management 1: Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP23'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MARA-MEINS'
ITAB-MEINS.
perform bdc_field using 'MARA-BRGEW'
'9000'.
perform bdc_field using 'MARA-GEWEI'
ITAB-GEWEI.
*// Quality Management Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP24'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MARA-MEINS'
ITAB-MEINS.
*// Accounting 1: Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP26'.
perform bdc_field using 'MARA-MEINS'
ITAB-MEINS.
perform bdc_field using 'MBEW-BWTTY'
ITAB-BWTTY.
perform bdc_field using 'MARA-SPART'
ITAB-SPART.
perform bdc_field using 'BDC_CURSOR'
'MBEW-STPRS'.
perform bdc_field using 'MBEW-BKLAS'
ITAB-BKLAS.
perform bdc_field using 'MBEW-EKLAS'
ITAB-EKLAS.
perform bdc_field using 'MBEW-VPRSV'
ITAB-VPRSV.
perform bdc_field using 'MBEW-PEINH'
'1'.
perform bdc_field using 'MBEW-VERPR'
'800'.
perform bdc_field using 'MBEW-STPRS'
'800'.
*// Costing 1: Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=SP27'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MARA-MEINS'
ITAB-MEINS.
perform bdc_field using 'MBEW-EKALR'
ITAB-EKALR.
perform bdc_field using 'MARC-LOSGR'
'1'.
*// Costing 2: Screen
perform bdc_dynpro using 'SAPLMGMM' '4000'.
perform bdc_field using 'BDC_OKCODE'
'=BABA'.
perform bdc_field using 'BDC_CURSOR'
'MAKT-MAKTX'.
perform bdc_field using 'MBEW-BKLAS'
ITAB-BKLAS.
perform bdc_field using 'MBEW-BWTTY'
ITAB-BWTTY.
perform bdc_field using 'MBEW-EKLAS'
ITAB-EKLAS.
perform bdc_field using 'MBEW-VPRSV'
ITAB-VPRSV.
perform bdc_field using 'MBEW-PEINH'
'1'.
perform bdc_field using 'MBEW-VERPR'
'800.00'.
perform bdc_field using 'MBEW-STPRS'
'800.00'.
perform bdc_dynpro using 'SAPLSPO1' '0300'.
perform bdc_field using 'BDC_OKCODE'
'=YES'.
*//BDC INSERT
PERFORM BDC_TRANSACTION TABLES BDCDATA
USING 'MM01'. " MESSAGES INTO GT_MSG.
*// Text Header Data
CONCATENATE ITAB-MATNR ' 000101'
INTO GT_HEAD-TDNAME .
GT_HEAD-TDOBJECT = 'MVKE' .
GT_HEAD-TDID = '0001' .
GT_HEAD-TDSPRAS = SY-LANGU.
*// Sales Text
GW_TEXT-TDFORMAT = '00'.
GW_TEXT-TDLINE = ITAB-TDLINE .
APPEND GW_TEXT TO GT_TEXT.
CALL FUNCTION 'SAVE_TEXT'
EXPORTING
CLIENT = SY-MANDT
HEADER = GT_HEAD
INSERT = 'X'
SAVEMODE_DIRECT = 'X'
OWNER_SPECIFIED = ' '
TABLES
LINES = GT_TEXT
EXCEPTIONS
ID = 1
LANGUAGE = 2
NAME = 3
OBJECT = 4
OTHERS = 5.
IF SY-SUBRC <> 0.
SKIP 2.
FORMAT COLOR COL_NEGATIVE INVERSE ON.
WRITE: / 'Unable to Insert Salestext for Material : ', ITAB-MATNR .
FORMAT COLOR COL_NEGATIVE INVERSE OFF.
ENDIF.
CLEAR: GT_HEAD, GT_TEXT, GW_TEXT.
ENDFORM. "MM_UPLOAD
** Program ID : ZMAT_CREATE
** Program Desc : Material Master Creation Using BAPI
** Process Overview :
** Created By : P.KARTHIKEYAN
** Created Date : 17/08/2006
** Company Name : Infoview Technologies Limited
REPORT ZBAPI_MATERIAL_SAVETEXT LINE-SIZE 132 MESSAGE-ID ZMMBAPI.
*<<<DATA DECLEA FOR HEADER>>>>>>>>>>>>>>>>>>>>>>>>>>>>
****<<<<<Header segment with control information>>>>>>
DATA: HEADER LIKE BAPIMATHEAD.
*<<CLIENT DATA>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
*<<<<<<<<Client-specific material data>>>>>>>>>>>>>>>>
DATA: GT_CLIENTDATA LIKE BAPI_MARA.
**<<<<<<<<CLIENT DATA INITIAL>>>>>>>>>>>>>
**<<<<<<<<Information on update for CLIENTDATA>>>>>>>>
DATA: GT_CLIENTDATAX LIKE BAPI_MARAX.
***<<<<<PLANTDATA>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
**<<<<<<<Plant-specific material data>>>>>>>>>>>>>>>>>
DATA: GT_PLANTDATA LIKE BAPI_MARC.
**<<<<<<<<PLANT DATA INITIAL>>>>>>>>>>>>>>>
**<<<<<<<<Information on update for PLANTDATA>>>>>>>>
DATA:GT_PLANTDATAX LIKE BAPI_MARCX.
*<<<<<<<<<<<<<<<FORECASTPARAMETERS>>>>>>>>>>>>>>>>>>>
DATA: GT_FORECASTPARAMETERS LIKE BAPI_MPOP.
*<<<<<<<<<<<<<Information on update for FORECASTDATA>
*<<<<<<<<<<<<<<<FORECASTPARAMETERS DATA INTIAL>>>>>>>
DATA:GT_FORECASTPARAMETERSX LIKE BAPI_MPOPX.
*<<<<<<<<<<<<<<<PLANNING DATA >>>>>>>>>>>>>>>>>>>>>>
*<<<<<<<<<<<Information on update for PLANNINGDATA>>>
DATA:GT_PLANNINGDATA LIKE BAPI_MPGD.
*<<<<<<<<<<<<<<<PLANNING INITIAL >>>>>>>>>>>>>>>>>>>
DATA:GT_PLANNINGDATAX LIKE BAPI_MPGDX.
*<<<<<<<<<<<<<<<STORAGELOCATIONDATA>>>>>>>>>>
*<<<<<<<<<<<<Storage-location-specific material data>>
DATA: GT_STORAGELOCATIONDATA LIKE BAPI_MARD.
*<<<<<<Information on update for STORAGELOCATIONDATA>>
*<<<<<<<<<<<<<<<STORAGELOCATIONDATA INITIAL>>>>>>>>>>>
DATA:GT_STORAGELOCATIONDATAX LIKE BAPI_MARDX.
*<<<<<<<<<<<<<<<SALESDATA DATA >>>>>>>>>>>>>>>>>>>>>
DATA: GT_SALESDATA LIKE BAPI_MVKE.
*<<<<<<<<<<<<<<<Information on update for SALESDATA>>>
*<<<<<<<<<<<<<<<SALESDATA DATA INITIAL >>>>>>>>>>>>>>
DATA: GT_SALESDATAX LIKE BAPI_MVKEX.
****<<<<<<<<<<<<Units of measure>>>>>>>>>>>>>>>>>>>>>>>
*****<<<<<<<<<<<<<<<GT_UNITSOFMEASURE>>>>>>>>>>>>>>>>>>
DATA: GT_UNITSOFMEASURE LIKE BAPI_MARM OCCURS 0 WITH HEADER LINE.
*****<<<<<<<<<<<<<<<GT_UNITSOFMEASUREX>>>>>>>>>>>>>>>>>
DATA: GT_UNITSOFMEASUREX LIKE BAPI_MARMX OCCURS 0 WITH HEADER LINE.
*****<<<<<<<<<<<<<<<SALES TEXT>>>>>>>>>>>>>>>>>>>>>>>>>>
DATA: GT_MATERIALLONGTEXT LIKE BAPI_MLTX OCCURS 0 WITH HEADER LINE.
*****<<<<<<<<<<<<<<<MATERIAL_DESC>>>>>>>>>>>>>>>>>>>>>>>>>>
DATA: MATERIAL_DESC LIKE BAPI_MAKT OCCURS 0 WITH HEADER LINE.
*******<<<<<<<RETURN PARAMETERS>>>>>>>>
DATA: ITAB_RETURN LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE. "#EC NEEDED
******<<<<<<<WAREHOUSENUMBERDATA>>>>>>>>>>>>>>
DATA: GT_WAREHOUSENUMBERDATA LIKE BAPI_MLGN.
******<<<<<<<WAREHOUSENUMBERDATA>>>>>>>>>>>>>>
DATA: GT_WAREHOUSENUMBERDATX LIKE BAPI_MLGNX.
******<<<<<<<STORAGETYPEDATA>>>>>>>>>>>>>>>>>>
DATA: GT_STORAGETYPEDATA LIKE BAPI_MLGT.
******<<<<<<<STORAGETYPEDATAX>>>>>>>>
DATA: GT_STORAGETYPEDATAX LIKE BAPI_MLGTX.
***<<<BAPI_TRANSCATION COMMIT>>>>>>>>>>>>>>>>>
DATA: GT_RETURN TYPE BAPIRET2. "#EC NEEDED
***<<<<<<<<Valuation data>>>>>>>>>>>>>>>>>>>>>
DATA: GT_VALUATIONDATA like BAPI_MBEW. "Valuation data
***<<<<<<<<Valuation data>>>>>>>>>>>>>>>>>>>>>
DATA: GT_VALUATIONDATAX like BAPI_MBEWX. "Valuation data
data: gt_PRTDATA like BAPI_MFHM OCCURS 0 WITH HEADER LINE.
data: gt_PRTDATAX like BAPI_MFHM OCCURS 0 WITH HEADER LINE.
**<<<<International Article Numbers (EANs)>>>>
DATA: GT_INTERNATIONALARTNOS LIKE BAPI_MEAN OCCURS 0 WITH HEADER LINE,
**<<<<Tax classifications>>>>>>>>>>>>>>>>>>>>>>
GT_TAXCLASSIFICATIONS LIKE BAPI_MLAN OCCURS 0 WITH HEADER LINE,
GT_RETURNMESSAGES LIKE BAPI_MATRETURN2 OCCURS 0 WITH HEADER LINE.
**<<<<<<<<<<<<<<FLAT FILE INTERNAL TABLE USED FOR DOWNLOAD EXCEL FILE>>>>>>
DATA: BEGIN OF GT_FT_ITAB OCCURS 0,
MATERIAL TYPE BAPIMATHEAD-MATERIAL , "Material Number
IND_SECTOR TYPE BAPIMATHEAD-IND_SECTOR, "Industry Sector
MATL_TYPE TYPE BAPIMATHEAD-MATL_TYPE , "Material Type
BASIC_VIEW TYPE BAPIMATHEAD-BASIC_VIEW, "Basic Data View
SALES_VIEW TYPE BAPIMATHEAD-SALES_VIEW , "Sales View
PURCHASE_VIEW TYPE BAPIMATHEAD-PURCHASE_VIEW, "Purchasing View
MRP_VIEW TYPE BAPIMATHEAD-MRP_VIEW ,"Material Requirements Planning (MRP) View
FORECAST_VIEW TYPE BAPIMATHEAD-FORECAST_VIEW , "Forecasting View
WORK_SCHED_VIEW TYPE BAPIMATHEAD-WORK_SCHED_VIEW ,"Work Scheduling View
PRT_VIEW TYPE BAPIMATHEAD-PRT_VIEW , "Production Resources/Tools (PRT) View
STORAGE_VIEW TYPE BAPIMATHEAD-STORAGE_VIEW , "Storage View
WAREHOUSE_VIEW TYPE BAPIMATHEAD-WAREHOUSE_VIEW , "Warehouse Management View
QUALITY_VIEW TYPE BAPIMATHEAD-QUALITY_VIEW, "Quality Management View
ACCOUNT_VIEW TYPE BAPIMATHEAD-ACCOUNT_VIEW , "Accounting View
COST_VIEW TYPE BAPIMATHEAD-COST_VIEW , "Costing View
*****<<<<<<<<CLIENT DATA>>>>>>>>>>>>>>>>>>>>
MATL_GROUP TYPE BAPI_MARA-MATL_GROUP, "Materialgroup
OLD_MAT_NO TYPE BAPI_MARA-OLD_MAT_NO, "Old material number
BASE_UOM TYPE BAPI_MARA-BASE_UOM, "Base Unit of Measure
BASE_UOM_ISO TYPE BAPI_MARA-BASE_UOM_ISO ,"Base unit of measure in ISO code
DOCUMENT TYPE BAPI_MARA-DOCUMENT, "Document number
DOC_TYPE TYPE BAPI_MARA-DOC_TYPE, "Document type
DOC_VERS TYPE BAPI_MARA-DOC_VERS, "Document version
DOC_FORMAT TYPE BAPI_MARA-DOC_FORMAT,"Page format of document
DOC_CHG_NO TYPE BAPI_MARA-DOC_CHG_NO, "Document change number
PAGE_NO TYPE BAPI_MARA-PAGE_NO, "Page number of document
PROD_MEMO TYPE BAPI_MARA-PROD_MEMO , "Production/Inspection Memo
PAGEFORMAT TYPE BAPI_MARA-PAGEFORMAT, "Page Format of Production Memo
SIZE_DIM TYPE BAPI_MARA-SIZE_DIM, "Size/dimensions
BASIC_MATL TYPE BAPI_MARA-BASIC_MATL, "Basic Material
STD_DESCR TYPE BAPI_MARA-STD_DESCR, "Industry Standard Description
DSN_OFFICE TYPE BAPI_MARA-DSN_OFFICE, "Laboratory/design office
NET_WEIGHT TYPE BAPI_MARA-NET_WEIGHT, " "Net weight
UNIT_OF_WT TYPE BAPI_MARA-UNIT_OF_WT, "Weight Unit
DIVISION TYPE BAPI_MARA-DIVISION, "Division
CAD_ID TYPE BAPI_MARA-CAD_ID, "Competitor
PROD_ALLOC TYPE BAPI_MARA-PROD_ALLOC, "Procurement rule
HAZMATPROF TYPE BAPI_MARA-HAZMATPROF, "Source of Supply
HIGH_VISC TYPE BAPI_MARA-HIGH_VISC, "Allowed packaging weight
LOOSEORLIQ TYPE BAPI_MARA-LOOSEORLIQ, "Long material number
PERIOD_IND_EXPIRATION_DATE TYPE BAPI_MARA-PERIOD_IND_EXPIRATION_DATE,"Expiration Dat
ITEM_CAT TYPE BAPI_MARA-ITEM_CAT, "General item category group
EXTMATLGRP TYPE BAPI_MARA-EXTMATLGRP, "External Material Group
*****CLIENT DATA INITIAL>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
MATL_GROUPX TYPE BAPI_MARAX-MATL_GROUP, "Materialgroup
OLD_MAT_NOX TYPE BAPI_MARAX-OLD_MAT_NO, "Old material number
BASE_UOMX TYPE BAPI_MARAX-BASE_UOM, "Base Unit of Measure
BASE_UOM_ISOX TYPE BAPI_MARAX-BASE_UOM_ISO, "Base unit of measure in ISO code
DOCUMENTX TYPE BAPI_MARAX-DOCUMENT, "Document number
DOC_TYPEX TYPE BAPI_MARAX-DOC_TYPE, "Document type
DOC_VERSX TYPE BAPI_MARAX-DOC_VERS, "Document version
DOC_FORMATX TYPE BAPI_MARAX-DOC_FORMAT,"Page format of document
DOC_CHG_NOX TYPE BAPI_MARAX-DOC_CHG_NO, "Document change number
PAGE_NOX TYPE BAPI_MARAX-PAGE_NO, "Production/Inspection Memo
PROD_MEMOX TYPE BAPI_MARAX-PROD_MEMO, "Page Format of Production Memo
SIZE_DIMX TYPE BAPI_MARAX-SIZE_DIM, "Size/dimensions
BASIC_MATLX TYPE BAPI_MARAX-BASIC_MATL, "Basic Material
STD_DESCRX TYPE BAPI_MARAX-STD_DESCR, "Industry Standard Description
DSN_OFFICEX TYPE BAPI_MARAX-DSN_OFFICE, "Laboratory/design office
NET_WEIGHTX TYPE BAPI_MARAX-NET_WEIGHT, " "Net weight
UNIT_OF_WTX TYPE BAPI_MARAX-UNIT_OF_WT, "Weight Unit
DIVISIONX TYPE BAPI_MARAX-DIVISION, "Division
PROD_HIERX TYPE BAPI_MARA, "Competitor
CAD_IDX TYPE BAPI_MARAX-PROD_HIER, "Procurement rule
ALLWD_VOLX TYPE BAPI_MARAX-ALLWD_VOL, "Allowed packaging
PVALIDFROMX TYPE BAPI_MARAX-PVALIDFROM, "Date from which the cross-plant material status
SVALIDFROMX TYPE BAPI_MARAX-SVALIDFROM, "Date from which the X-distr.-chain material stat
PROD_ALLOCX TYPE BAPI_MARAX-PROD_ALLOC,
HIGH_VISCX TYPE BAPI_MARAX-HIGH_VISC,"Indicator: Highly Viscous
LOOSEORLIQX TYPE BAPI_MARAX-LOOSEORLIQ, "Indicator: In Bulk/Liquid
INV_MAT_NO_EXTERNALX TYPE BAPI_MARAX-INV_MAT_NO_EXTERNAL,
EXTMATLGRPX TYPE BAPI_MARAX-EXTMATLGRP, " External Material Group
****<<<<<<<<<<<<<<PLANTDATA>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
PLANT TYPE BAPI_MARC-PLANT, " Plant
MRP_TYPE TYPE BAPI_MARC-MRP_TYPE, "MRP Type
REORDER_PT TYPE BAPI_MARC-REORDER_PT, "Reorder Point
SAFETY_STK TYPE BAPI_MARC-SAFETY_STK, "Safety stock
MINLOTSIZE TYPE BAPI_MARC-MINLOTSIZE, "Minimum lot size
****<<<<<<<<<<<<<<PLANTDATA INITIAL>>>>>>>>>>>>>>>>>>>>>>
PLANTX TYPE BAPI_MARCX-PLANT, " Plant
MRP_TYPEX TYPE BAPI_MARCX-MRP_TYPE, "MRP Type
REORDER_PTX TYPE BAPI_MARCX-REORDER_PT, "Reorder Point
SAFETY_STKX TYPE BAPI_MARCX-SAFETY_STK, "Safety stock
MINLOTSIZEX TYPE BAPI_MARCX-MINLOTSIZE, "Minimum lot size
*<<<<<<<<<<<<<<<FORECASTPARAMETERS>>>>>>>>>>
F_PLANT TYPE BAPI_MPOPX-PLANT, " Plant
*<<<<<<<<<<<<<<<FORECASTPARAMETERS DATA INTIAL>>>>>>>>>>
F_PLANTX TYPE BAPI_MPOPX-PLANT, " Plant
*<<<<<<<<<<<<<<<PLANNING DATA >>>>>>>>>>>>>>>>>>>>>>>>>
P_PLANT TYPE BAPI_MPGD-PLANT, " Plant
*<<<<<<<<<<<<<<<PLANNING DATA INITAIAL >>>>>>>>>>>>>>>
P_PLANTX TYPE BAPI_MPGDX-PLANT, " Plant
*<<<<<<<<<<<<<<<STORAGELOCATIONDATA>>>>>>>>>>>>>>>>>>>>
S_PLANT TYPE BAPI_MARD-PLANT, " Plant
S_STGE_LOC TYPE BAPI_MARD-STGE_LOC,
*<<<<<<<<<<<<<<<STORAGELOCATIONDATA INITIAL>>>>>>>>>>
S_PLANTX TYPE BAPI_MARDX-PLANT, " Plant
S_STGE_LOCX TYPE BAPI_MARDX-STGE_LOC, "Storage Location
*<<<<<<<<<<<<<<<SALESDATA DATA >>>>>>>>>>
SALES_ORG TYPE BAPI_MVKE-SALES_ORG, "Sales Organization
DISTR_CHAN TYPE BAPI_MVKE-DISTR_CHAN, "Distribution Channel
*<<<<<<<<<<<<<<<SALESDATA DATA INITIAL >>>>>>>>>>
SALES_ORGX TYPE BAPI_MVKEX-SALES_ORG, "Sales Organization
DISTR_CHANX TYPE BAPI_MVKEX-DISTR_CHAN, "Distribution Channel
*****<<<<<<<<<<<<<<<MATERIAL_DESC>>>>>>>>>>>>>>>>>>>>>>>>>>
LANGU TYPE BAPI_MAKT-LANGU , "Language Key
LANGU_ISO TYPE BAPI_MAKT-LANGU_ISO , "Language according to ISO 639
MATL_DESC TYPE BAPI_MAKT-MATL_DESC , "Material Description
*****<<<<<<<<<<<<<<<GT_UNITSOFMEASURE>>>>>>>>>>>>>>>>>>>>>>>>>>
ALT_UNIT TYPE BAPI_MARM-ALT_UNIT,
"Alternative Unit of Measure for Stockkeeping Unit
ALT_UNIT_ISO TYPE BAPI_MARM-ALT_UNIT,
"Alternative Unit of Measure for Stockkeeping Unit
******<<<<<<<<<<<<<<<GT_UNITSOFMEASUREX>>>>>>>>>>>>>>>>>>>>>>>>>>
UNIT TYPE BAPI_MARMX-ALT_UNIT,
"Alternative Unit of Measure for Stockkeeping Unit
UNIT_ISO TYPE BAPI_MARMX-ALT_UNIT_ISO,
"Alternative unit of measure to stockkeeping unit in ISO code
*****<<<<<<<<<<<<<<<SALES TEXT>>>>>>>>>>>>>>>>>>>>>>>>>>
APPLOBJECT TYPE BAPI_MLTX-APPLOBJECT, "Texts: application object
TEXT_NAME TYPE BAPI_MLTX-TEXT_NAME, "Name
TEXT_ID TYPE BAPI_MLTX-TEXT_ID, "Text ID
S_LANGU TYPE BAPI_MLTX-LANGU, "Language key
TEXT_LINE TYPE BAPI_MLTX-TEXT_LINE, "Text line
END OF GT_FT_ITAB,
TEXT(243), " Return Message
WA_HEAD LIKE THEAD, " SalesText Header Info
ITAB_TLINE LIKE STANDARD TABLE OF TLINE WITH HEADER LINE, " SalesText
ERROR_REC TYPE I, " Error Records Counter
SUCCESS_REC TYPE I, " Successful Records Counter
TOT_REC TYPE I. " Total Records Counter
selection block for EXCEL UPLOAD FILE>>>>>>>>>>>>>>>>>>>>>>>>
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-000.
PARAMETERS FILE TYPE IBIPPARMS-PATH OBLIGATORY .
SELECTION-SCREEN END OF BLOCK B1.
*<<<<AT SELECTION-SCREEN ON VALUE-REQUEST FOR FILE .>>>>>>>>>>>>
AT SELECTION-SCREEN ON VALUE-REQUEST FOR FILE .
CALL FUNCTION 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
IMPORTING
FILE_NAME = FILE.
**<<<<<<<<<<<<<<<<<START-OF-SELECTION.>>>>>>>>>>>>>>>>>>>>>>>>>>>
START-OF-SELECTION.
CALL FUNCTION 'WS_UPLOAD' "#EC *
EXPORTING
FILENAME = FILE
FILETYPE = 'DAT'
TABLES
DATA_TAB = GT_FT_ITAB
EXCEPTIONS
CONVERSION_ERROR = 1
FILE_OPEN_ERROR = 2
FILE_READ_ERROR = 3
INVALID_TYPE = 4
NO_BATCH = 5
UNKNOWN_ERROR = 6
INVALID_TABLE_WIDTH = 7
GUI_REFUSE_FILETRANSFER = 8
CUSTOMER_ERROR = 9
NO_AUTHORITY = 10
OTHERS = 11.
IF SY-SUBRC <> 0 .
MESSAGE E000.
ENDIF.
SKIP 3.
FORMAT COLOR COL_HEADING INVERSE ON.
WRITE 40 TEXT-001.
FORMAT COLOR COL_HEADING INVERSE OFF.
SKIP 1.
FORMAT COLOR COL_NEGATIVE INVERSE ON.
WRITE :/3 TEXT-002, 13 SY-MANDT , 104 TEXT-003, 111 SY-UNAME,
/3 TEXT-004, 13 SY-DATUM , 104 TEXT-005, 111 SY-UZEIT.
FORMAT COLOR COL_NEGATIVE INVERSE OFF.
SKIP 3.
LOOP AT GT_FT_ITAB.
HEADER-MATERIAL = GT_FT_ITAB-MATERIAL . " 'M-32'.
HEADER-IND_SECTOR = GT_FT_ITAB-IND_SECTOR . " 'C'.
HEADER-MATL_TYPE = GT_FT_ITAB-MATL_TYPE . " 'FERT'.
HEADER-BASIC_VIEW = GT_FT_ITAB-BASIC_VIEW . " 'X'.
HEADER-SALES_VIEW = GT_FT_ITAB-SALES_VIEW. " 'X'.
HEADER-PURCHASE_VIEW = GT_FT_ITAB-PURCHASE_VIEW . " 'X'.
HEADER-MRP_VIEW = GT_FT_ITAB-MRP_VIEW . " 'X'.
HEADER-FORECAST_VIEW = GT_FT_ITAB-FORECAST_VIEW . " 'X'.
HEADER-WORK_SCHED_VIEW = GT_FT_ITAB-WORK_SCHED_VIEW ." 'X'.
HEADER-PRT_VIEW = GT_FT_ITAB-PRT_VIEW . " 'X'.
HEADER-STORAGE_VIEW = GT_FT_ITAB-STORAGE_VIEW . " 'X'.
HEADER-WAREHOUSE_VIEW = GT_FT_ITAB-WAREHOUSE_VIEW . " 'X'.
HEADER-QUALITY_VIEW = GT_FT_ITAB-QUALITY_VIEW . " 'X'.
HEADER-ACCOUNT_VIEW = GT_FT_ITAB-ACCOUNT_VIEW . " 'X'.
HEADER-COST_VIEW = GT_FT_ITAB-COST_VIEW . " 'X'.
*<<CLIENT DATA>>>>>>>>>>>>>>>>>>>>>>>>>>>>
GT_CLIENTDATA-MATL_GROUP = GT_FT_ITAB-MATL_GROUP . " '01'.
GT_CLIENTDATA-OLD_MAT_NO = GT_FT_ITAB-OLD_MAT_NO . " '1000'.
GT_CLIENTDATA-BASE_UOM = GT_FT_ITAB-BASE_UOM . " 'EA'.
GT_CLIENTDATA-BASE_UOM_ISO = GT_FT_ITAB-BASE_UOM_ISO ." 'EA'.
GT_CLIENTDATA-DOCUMENT = GT_FT_ITAB-DOCUMENT . "'MATERIAL'.
GT_CLIENTDATA-DOC_TYPE = GT_FT_ITAB-DOC_TYPE . " 'A'.
GT_CLIENTDATA-DOC_VERS = GT_FT_ITAB-DOC_VERS . " '5'.
GT_CLIENTDATA-DOC_FORMAT = GT_FT_ITAB-DOC_FORMAT . " '5'.
GT_CLIENTDATA-DOC_CHG_NO = GT_FT_ITAB-DOC_CHG_NO . " 'A4'.
GT_CLIENTDATA-PAGE_NO = GT_FT_ITAB-PAGE_NO . " '1'.
GT_CLIENTDATA-PROD_MEMO = GT_FT_ITAB-PROD_MEMO . " 'MEMO'.
GT_CLIENTDATA-PAGEFORMAT = GT_FT_ITAB-PAGEFORMAT . " '1'.
GT_CLIENTDATA-SIZE_DIM = GT_FT_ITAB-SIZE_DIM . " '50/50'.
GT_CLIENTDATA-BASIC_MATL = GT_FT_ITAB-BASIC_MATL . " 'BASIS MATERIAL1'.
GT_CLIENTDATA-STD_DESCR = GT_FT_ITAB-STD_DESCR . " 'MATERIAL DESC'.
GT_CLIENTDATA-DSN_OFFICE = GT_FT_ITAB-DSN_OFFICE . " '001'.
GT_CLIENTDATA-NET_WEIGHT = GT_FT_ITAB-NET_WEIGHT . " 1000.
GT_CLIENTDATA-UNIT_OF_WT = GT_FT_ITAB-UNIT_OF_WT . " 'KG'.
GT_CLIENTDATA-TRANS_GRP = '0001'.
GT_CLIENTDATA-DIVISION = GT_FT_ITAB-DIVISION . " '01'.
GT_CLIENTDATA-QTY_GR_GI = '9000'.
GT_CLIENTDATA-CAD_ID = GT_FT_ITAB-CAD_ID . " 'X'.
GT_CLIENTDATA-ALLWD_VOL = '9000'.
GT_CLIENTDATA-PROD_ALLOC = GT_FT_ITAB-PROD_ALLOC . " 'PA01'.
GT_CLIENTDATA-HAZMATPROF = GT_FT_ITAB-HAZMATPROF . " '001'.
GT_CLIENTDATA-HIGH_VISC = GT_FT_ITAB-HIGH_VISC . " 'X'.
GT_CLIENTDATA-LOOSEORLIQ = GT_FT_ITAB-LOOSEORLIQ . " 'X'.
GT_CLIENTDATA-PERIOD_IND_EXPIRATION_DATE = GT_FT_ITAB-PERIOD_IND_EXPIRATION_DATE . " 'D'.
GT_CLIENTDATA-ITEM_CAT = 'NORM' . "GT_FT_ITAB-ITEM_CAT . " 'NORM'.
GT_CLIENTDATA-EXTMATLGRP = GT_FT_ITAB-EXTMATLGRP . " '01'.
**<<<<<<<<CLIENT DATA INITIAL>>>>>>>>>>>>>
GT_CLIENTDATAX-MATL_GROUP = 'X'.
GT_CLIENTDATAX-OLD_MAT_NO = GT_FT_ITAB-OLD_MAT_NO . " 'X'.
GT_CLIENTDATAX-BASE_UOM = GT_FT_ITAB-BASE_UOM . " 'X'.
GT_CLIENTDATAX-BASE_UOM_ISO = GT_FT_ITAB-BASE_UOM_ISO . "'X'.
GT_CLIENTDATAX-DOCUMENT = GT_FT_ITAB-DOCUMENT . "'X'.
GT_CLIENTDATAX-DOC_TYPE = GT_FT_ITAB-DOC_TYPE . "'X'.
GT_CLIENTDATAX-DOC_VERS = GT_FT_ITAB-DOC_VERS . "'X'.
GT_CLIENTDATAX-DOC_FORMAT = GT_FT_ITAB-DOC_FORMAT . "'X'.
GT_CLIENTDATAX-DOC_CHG_NO = GT_FT_ITAB-DOC_CHG_NO . "'X'.
GT_CLIENTDATAX-PAGE_NO = GT_FT_ITAB-PAGE_NO . "'X'.
GT_CLIENTDATAX-PROD_MEMO = GT_FT_ITAB-PROD_MEMO . "'X'.
GT_CLIENTDATAX-PAGEFORMAT = 'X'.
GT_CLIENTDATAX-SIZE_DIM = GT_FT_ITAB-SIZE_DIM . "'X'
GT_CLIENTDATAX-BASIC_MATL = GT_FT_ITAB-BASIC_MATL. "'X'.
GT_CLIENTDATAX-STD_DESCR = GT_FT_ITAB-STD_DESCR . "'X'.
GT_CLIENTDATAX-DSN_OFFICE = GT_FT_ITAB-DSN_OFFICE . "'X'.
GT_CLIENTDATAX-NET_WEIGHT = GT_FT_ITAB-NET_WEIGHT . "'X'.
GT_CLIENTDATAX-UNIT_OF_WT = GT_FT_ITAB-UNIT_OF_WT . "'X'.
GT_CLIENTDATAX-DIVISION = GT_FT_ITAB-DIVISION . "'X'.
GT_CLIENTDATAX-PROD_HIER = GT_FT_ITAB-PROD_HIERX . "'X'.
GT_CLIENTDATAX-CAD_ID = GT_FT_ITAB-CAD_ID . "'X'.
GT_CLIENTDATAX-ALLWD_VOL = GT_FT_ITAB-ALLWD_VOLX . "'X'.
GT_CLIENTDATAX-PROD_ALLOC = GT_FT_ITAB-PROD_ALLOCX . "'X'.
GT_CLIENTDATAX-HAZMATPROF = 'X'.
GT_CLIENTDATAX-HIGH_VISC = GT_FT_ITAB-HIGH_VISCX . "'X'.
GT_CLIENTDATAX-LOOSEORLIQ = GT_FT_ITAB-LOOSEORLIQX . "'X'.
GT_CLIENTDATAX-ITEM_CAT = 'X'.
GT_CLIENTDATAX-INV_MAT_NO_EXTERNAL = GT_FT_ITAB-INV_MAT_NO_EXTERNALX . "'X'.
GT_CLIENTDATAX-EXTMATLGRP = GT_FT_ITAB-EXTMATLGRPX . " 'X'.
GT_CLIENTDATAX-TRANS_GRP = 'X'.
GT_CLIENTDATAX-QTY_GR_GI = 'X'.
GT_CLIENTDATAX-ALLWD_VOL = 'X'.
***<<<<<PLANTDATA>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
GT_PLANTDATA-PLANT = GT_FT_ITAB-PLANT . " '0001'.
GT_PLANTDATA-MRP_TYPE = GT_FT_ITAB-MRP_TYPE . "'ND'.
GT_PLANTDATA-PUR_GROUP = '001'. "Purchasing Group
GT_PLANTDATA-PROC_TYPE = 'F'. "Procurement Type
GT_PLANTDATA-SPPROCTYPE = '10'. "Special procurement type
GT_PLANTDATA-REORDER_PT = GT_FT_ITAB-REORDER_PT . "8000.
GT_PLANTDATA-SAFETY_STK = 2.
GT_PLANTDATA-LOADINGGRP = '0001'. "Loading group
GT_PLANTDATA-MINLOTSIZE = GT_FT_ITAB-MINLOTSIZE . "6000.
**<<<<<<<<PLANT DATA INITIAL>>>>>>>>>>>>>
GT_PLANTDATAX-PLANT = GT_FT_ITAB-PLANTX. " '0001'.
GT_PLANTDATAX-MRP_TYPE = GT_FT_ITAB-MRP_TYPEX. " 'X'.
GT_PLANTDATAX-PUR_GROUP = 'X'. "Purchasing Group
GT_PLANTDATAX-PROC_TYPE = 'X'. "Procurement Type
GT_PLANTDATAX-SPPROCTYPE = 'X'. "Special procurement type
GT_PLANTDATAX-LOADINGGRP = 'X'. "Loading group
GT_PLANTDATAX-REORDER_PT = GT_FT_ITAB-REORDER_PTX. " 'X'.
GT_PLANTDATAX-SAFETY_STK = GT_FT_ITAB-SAFETY_STKX. "'X'.
GT_PLANTDATAX-MINLOTSIZE = GT_FT_ITAB-MINLOTSIZEX. "'X'.
*<<<<<<<<<<<<<<<FORECASTPARAMETERS>>>>>>>>>>
GT_FORECASTPARAMETERS-PLANT = GT_FT_ITAB-F_PLANT. " '0001'.
*<<<<<<<<<<<<<<<FORECASTPARAMETERS DATA INTIAL>>>>>>>>>>
GT_FORECASTPARAMETERSX = '0001'.
GT_FORECASTPARAMETERSX-PLANT = GT_FT_ITAB-F_PLANTX. " '0001'.
*<<<<<<<<<<<<<<<PLANNING DATA >>>>>>>>>>
*GT_PLANNINGDATA-PLANT = GT_FT_ITAB-P_PLANT. " '0001'.
GT_PLANNINGDATA-PLANT = '0001'.
*<<<<<<<<<<<<<<<PLAN -
How to call ALV Report and SMARTFORMS through Pushbutton
hi,
i have created a report.My task is to create two buttons:
1)ALV Report.
2)SMARTFROMS.
Through these button i have to call ALV Report and SMARTFORMS. i have created both button and when i execute the program,
it shows me the button but not working when i click on it.
this is the coding i have used in my report for calling ALV Report.
''Tables sscrfields,
DATA flag(1) Type c.
selection-screen: begin of screen 500 AS WINDOW TITLE tit,
BEGIN OF LINE,
PUSHBUTTON 2(18) but1 USER-COMMAND cli1,
end of line,
BEGIN OF LINE,
PUSHBUTTON 2(18) but2 USER-COMMAND cli2,
end of line,
end of screen 500.
SET PF-STATUS 'STATUS_0100'.
at selection-screen.
case sscrfields.
WHEN 'cli1'.
flag = '1'.
WHEN 'cli2'.
flag = '2'.
endcase.
at USER-COMMAND.
CASE SY-UCOMM.
WHEN 'Detail'.
select vbakkunnr VBakernam VBAkaudat vbakaufnr vbapKWMENG vbapmatnr vbap~ARKTX
into but1
from vbak inner join vbap
on vbakvbeln = vbapvbeln.
ENDSELECT.
ENDCASE.
START-OF-SELECTION.
tit = 'Format'.
but1 = 'ALV Report'.
but2 = 'SMARTFORMS'.
CALL SELECTION-SCREEN 500.
and i also use in my report
''case sscrfields-ucomm'' and ''submit my_report'' but the still button doesn't show the result.
Thanks & Regards,Hi,
I understood your requirement. What i found is, you are creating screen 500 and call it after START-OF-SELECTION,
at that time your AT USER-COMMAND doesn't work.
So what i would suggest , u should create GUI STATUS named ' PFSTAT'
having one functional key 'EXIT' that is standard u can just name it
and
other two u can assign in Freely assigned Function keys as 'BUT1' & 'BUT2'. and than in Application Toolbar u jst have it in ITEM LIST by typing BUT1 and BUT2.
For 'BUT1' text would be 'ALV' and 'BUT2' text would be 'SMARTFORMS'.
Now in Program you can code,,,
START-OF-SELECTION.
SET PF-STATUS 'PFSTAT'.
WRITE:/ 'TEST'.
at user-command.
case SY-UCOMM.
WHEN 'BUT1'.
WHEN 'BUT2'.
WHEN 'EXIT'.
LEAVE PROGRAM.
endcase.
In Program u set PF STATUS and use at user-command event, whcih gets triggered when u click on button . When u execute program you get two button in application tooldbar.
Please do needful.
Thanks,
Saurin SHah -
Regarding Passing two internal Tables from Driver Program to Smartform
hi all,
I am Passing Two Internal Tables from Driver Program to Smartform it is going to dump and message is showing like this " one of the parameters eded according to the interface description was not specified ".
When i am passing one Internal Table Output is coming Perfectly. Is there any restriction for passing of internal tables.
Regards
RamiHI,
Check the names specified in the smartfrom and FM whcih you are calling in the driver program. Both might be different....
Maybe you are looking for
-
So I have a Mac Book Pro with a bootcamp Windows 8. I dual monitor on the Mac side with my Mid 2011 iMac through my mini display port via thunder bolt cable. In my perfect world, I would be able to switch to the Windows side and have the iMac mirror
-
Regarding spool (payment with printout)
i posted vendor pmt through f-58, i assigned seqential cheque lot. when the document is saved cheque number is assigned to document automatically, but when i check (sys->services->output control) 2 spool req r coming. 1.cheque 2.payment advice i m ta
-
Gallery caption custom settings - adding blank spaces?
When using the custom settings in the Caption option within the Gallery Module I would like to add blank spaces between options but can't find a way to do it. I prefer not to use dashs or other characters for separators. Ie: <filename> blank space/s
-
How to display RTF file and .doc file in JTextPane
How to display RTF file and .doc file in JTextPane??
-
JAXB subclass and attribute problem
My schema has a complex type and an sub-complextype. Both of these types have elements of type string. The classes that are generated look fine, they both have the attributes created as JAXBElement<String>. Over the wire, the xml nodes for the attrib