|
<< Click to Display Table of Contents >> Navigation: All About ABAP Technique > English > Function Module for RFC > Create YFM_RFC_PRACTICE_102 |
Objective |
|
Transaction Code |
|
Support |
|
Create new Structure of "YST_RANGE_MATKL"
▪Open t-Code "SE11" ▪Enter Data Type "YST_RANGE_MATKL"
▪Click " ▪Select "Structure"
▪Fill Short Description "Structure for RANGE for Material Group"
▪Add Commponent/Field like this bellow
▪Click " Notes : You can save to Existing Package or Local Object ▪Click " |
Create new Structure of "YST_RANGE_MATNR"
▪Open t-Code "SE11" ▪Enter Data Type "YST_RANGE_MATNR"
▪Click " ▪Select "Structure"
▪Fill Short Description "Structure for RANGE for Material Number"
▪Add Commponent/Field like this bellow
▪Click " Notes : You can save to Existing Package or Local Object ▪Click " |
1.Open t-Code "SE37"
2.Copy Function "YFM_RFC_PRACTICE_101" to "YFM_RFC_PRACTICE_102"

3.Click "
"
4.Fill to Function module with "YFM_RFC_PRACTICE_102"

5.Click "
" to copy and save function
6.Click "
" to change function
7.Edit the Short text with "RFC Practice 102"

8.Delete import variable like this screen capture bellow
Before

After

9.Add tables variable like this screen capture bellow

10.Add new Source Code, Copy and paste this source code bellow to "Source Code" tab
View Source Code without using "UP TO gv_max_row ROWS"
FUNCTION yfm_rfc_practice_102. *"---------------------------------------------------------------------- *"*"Local interface: *" IMPORTING *" VALUE(GV_MAX_ROW) TYPE I DEFAULT 100 *" TABLES *" GI_HEADER STRUCTURE YTA_HEADER_101 OPTIONAL *" GR_MATKL STRUCTURE YST_RANGE_MATKL OPTIONAL *" GR_MATNR STRUCTURE YST_RANGE_MATNR OPTIONAL *"----------------------------------------------------------------------
DATA: gi_makt TYPE STANDARD TABLE OF makt WITH HEADER LINE, gi_t006a TYPE STANDARD TABLE OF t006a WITH HEADER LINE. DATA: lv_counter TYPE i.
* Collect Master Material SELECT matnr matkl bismt meins INTO CORRESPONDING FIELDS OF TABLE gi_header FROM mara WHERE matkl IN gr_matkl AND matnr IN gr_matnr.
* Collect Material Decription SELECT matnr maktx INTO CORRESPONDING FIELDS OF TABLE gi_makt FROM makt FOR ALL ENTRIES IN gi_header WHERE matnr = gi_header-matnr AND spras = sy-langu.
* Collect Measurement Text SELECT msehi mseht INTO CORRESPONDING FIELDS OF TABLE gi_t006a FROM t006a FOR ALL ENTRIES IN gi_header WHERE msehi = gi_header-meins AND spras = sy-langu.
*Get other requirement information LOOP AT gi_header. * Max Row Checking ADD 1 TO lv_counter. IF lv_counter <= gv_max_row OR gv_max_row = 0. * Get Material Description READ TABLE gi_makt WITH KEY matnr = gi_header-matnr. IF sy-subrc = 0. gi_header-maktx = gi_makt-maktx. ENDIF.
* Get Measurement Text READ TABLE gi_t006a WITH KEY msehi = gi_header-meins. IF sy-subrc = 0. gi_header-mseht = gi_t006a-mseht. ENDIF.
MODIFY gi_header.
ELSE. DELETE gi_header. ENDIF.
ENDLOOP.
ENDFUNCTION. |
View Source Code using "UP TO gv_max_row ROWS"
FUNCTION yfm_rfc_practice_102. *"---------------------------------------------------------------------- *"*"Local interface: *" IMPORTING *" VALUE(GV_MAX_ROW) TYPE I DEFAULT 100 *" TABLES *" GI_HEADER STRUCTURE YTA_HEADER_101 OPTIONAL *" GR_MATKL STRUCTURE YST_RANGE_MATKL OPTIONAL *" GR_MATNR STRUCTURE YST_RANGE_MATNR OPTIONAL *"----------------------------------------------------------------------
DATA: gi_makt TYPE STANDARD TABLE OF makt WITH HEADER LINE, gi_t006a TYPE STANDARD TABLE OF t006a WITH HEADER LINE. * DATA: lv_counter TYPE i.
* Collect Master Material SELECT matnr matkl bismt meins UP TO gv_max_row ROWS INTO CORRESPONDING FIELDS OF TABLE gi_header FROM mara WHERE matkl IN gr_matkl AND matnr IN gr_matnr.
* Collect Material Decription SELECT matnr maktx INTO CORRESPONDING FIELDS OF TABLE gi_makt FROM makt FOR ALL ENTRIES IN gi_header WHERE matnr = gi_header-matnr AND spras = sy-langu.
* Collect Measurement Text
SELECT msehi mseht INTO CORRESPONDING FIELDS OF TABLE gi_t006a FROM t006a FOR ALL ENTRIES IN gi_header WHERE msehi = gi_header-meins AND spras = sy-langu.
*Get other requirement information
LOOP AT gi_header. * Get Material Description READ TABLE gi_makt WITH KEY matnr = gi_header-matnr. IF sy-subrc = 0. gi_header-maktx = gi_makt-maktx. ENDIF.
* Get Measurement Text READ TABLE gi_t006a WITH KEY msehi = gi_header-meins. IF sy-subrc = 0. gi_header-mseht = gi_t006a-mseht. ENDIF.
MODIFY gi_header.
ENDLOOP.
ENDFUNCTION. |
11.Save and activate the function
▪Input


▪Output

