SAP OIG_F_ASSIGN_QUANT_BY_FIFO Function Module for TD Shipment - Assign quantities of doc. items by FIFO principles
OIG_F_ASSIGN_QUANT_BY_FIFO is a standard oig f assign quant by fifo SAP function module available within SAP R/3 or S/4 Hana systems, depending on your version and release level. It is used for TD Shipment - Assign quantities of doc. items by FIFO principles processing and below is the pattern details for this FM, showing its interface including any import and export parameters, exceptions etc. there is also a full "cut and paste" ABAP pattern code example, along with implementation ABAP coding, documentation and contribution comments specific to this or related objects.
See here to view full function module documentation and code listing for oig f assign quant by fifo FM, simply by entering the name OIG_F_ASSIGN_QUANT_BY_FIFO into the relevant SAP transaction such as SE37 or SE38.
Function Group: OIGF
Program Name: SAPLOIGF
Main Program: SAPLOIGF
Appliation area:
Release date: N/A
Mode(Normal, Remote etc): Normal Function Module
Update:

Function OIG_F_ASSIGN_QUANT_BY_FIFO pattern details
In-order to call this FM within your sap programs, simply using the below ABAP pattern details to trigger the function call...or see the full ABAP code listing at the end of this article. You can simply cut and paste this code into your ABAP progrom as it is, including variable declarations.CALL FUNCTION 'OIG_F_ASSIGN_QUANT_BY_FIFO'"TD Shipment - Assign quantities of doc. items by FIFO principles.
EXPORTING
I_OIGS = "
* I_SCLDTYPE = '0' "
* I_OPTION_NO_MESSAGE = ' ' "
TABLES
I_OIGSS_TAB = "
C_OIGSV_TAB = "
C_OIGSVIIS_TAB = "
C_OIGFIIQ_TAB = "
C_OIGFIIQS_TAB = "
I_TRANSFER_QTY_TAB = "
EXCEPTIONS
STAGE_MISSING = 1
Customer Function user exits
Below is a list of CUSTOMER FUNCTION exit user exits that are available within this program and maybe relevant for this FM.EXIT_SAPLOIGF_001 TD-F Customer exit called at document item quant. assign.
EXIT_SAPLOIGF_002 TD-F Customer exit called after auto stage assignment
EXIT_SAPLOIGF_003 TD-F Alternative valuation area for CO account determ.
EXIT_SAPLOIGF_004 TD User exit at the end of OIG_F_SHPMNT_READ
IMPORTING Parameters details for OIG_F_ASSIGN_QUANT_BY_FIFO
I_OIGS -
Data type: ROIGSOptional: No
Call by Reference: No ( called with pass by value option)
I_SCLDTYPE -
Data type: OIGFIIQ-SCLDTYPEDefault: '0'
Optional: Yes
Call by Reference: No ( called with pass by value option)
I_OPTION_NO_MESSAGE -
Data type: T180-TRTYPDefault: SPACE
Optional: Yes
Call by Reference: No ( called with pass by value option)
TABLES Parameters details for OIG_F_ASSIGN_QUANT_BY_FIFO
I_OIGSS_TAB -
Data type: ROIGSSOptional: No
Call by Reference: No ( called with pass by value option)
C_OIGSV_TAB -
Data type: ROIGSVOptional: No
Call by Reference: No ( called with pass by value option)
C_OIGSVIIS_TAB -
Data type: ROIGSVIISOptional: No
Call by Reference: No ( called with pass by value option)
C_OIGFIIQ_TAB -
Data type: ROIGFIIQOptional: No
Call by Reference: No ( called with pass by value option)
C_OIGFIIQS_TAB -
Data type: ROIGFIIQSOptional: No
Call by Reference: No ( called with pass by value option)
I_TRANSFER_QTY_TAB -
Data type: OIGF0_TRANSFER_QTY_TABOptional: No
Call by Reference: No ( called with pass by value option)
EXCEPTIONS details
STAGE_MISSING -
Data type:Optional: No
Call by Reference: No ( called with pass by value option)
Copy and paste ABAP code example for OIG_F_ASSIGN_QUANT_BY_FIFO Function Module
The ABAP code below is a full code listing to execute function module POPUP_TO_CONFIRM including all data declarations. The code uses the original data declarations rather than the latest in-line data DECLARATION SYNTAX but I have included an ABAP code snippet at the end to show how declarations would look using the newer method of declaring data variables on the fly. This will allow you to compare and fully understand the new inline method. Please note some of the newer syntax such as the @DATA is not available until a later 4.70 service pack (SP8), which i why i have stuck to the origianl for this example.| DATA: | ||||
| lv_i_oigs | TYPE ROIGS, " | |||
| lt_i_oigss_tab | TYPE STANDARD TABLE OF ROIGSS, " | |||
| lv_stage_missing | TYPE ROIGSS, " | |||
| lv_i_scldtype | TYPE OIGFIIQ-SCLDTYPE, " '0' | |||
| lt_c_oigsv_tab | TYPE STANDARD TABLE OF ROIGSV, " | |||
| lt_c_oigsviis_tab | TYPE STANDARD TABLE OF ROIGSVIIS, " | |||
| lv_i_option_no_message | TYPE T180-TRTYP, " SPACE | |||
| lt_c_oigfiiq_tab | TYPE STANDARD TABLE OF ROIGFIIQ, " | |||
| lt_c_oigfiiqs_tab | TYPE STANDARD TABLE OF ROIGFIIQS, " | |||
| lt_i_transfer_qty_tab | TYPE STANDARD TABLE OF OIGF0_TRANSFER_QTY_TAB. " |
|   CALL FUNCTION 'OIG_F_ASSIGN_QUANT_BY_FIFO' "TD Shipment - Assign quantities of doc. items by FIFO principles |
| EXPORTING | ||
| I_OIGS | = lv_i_oigs | |
| I_SCLDTYPE | = lv_i_scldtype | |
| I_OPTION_NO_MESSAGE | = lv_i_option_no_message | |
| TABLES | ||
| I_OIGSS_TAB | = lt_i_oigss_tab | |
| C_OIGSV_TAB | = lt_c_oigsv_tab | |
| C_OIGSVIIS_TAB | = lt_c_oigsviis_tab | |
| C_OIGFIIQ_TAB | = lt_c_oigfiiq_tab | |
| C_OIGFIIQS_TAB | = lt_c_oigfiiqs_tab | |
| I_TRANSFER_QTY_TAB | = lt_i_transfer_qty_tab | |
| EXCEPTIONS | ||
| STAGE_MISSING = 1 | ||
| . " OIG_F_ASSIGN_QUANT_BY_FIFO | ||
ABAP code using 7.40 inline data declarations to call FM OIG_F_ASSIGN_QUANT_BY_FIFO
The below ABAP code uses the newer in-line data declarations. This allows you to see the coding differences/benefits of the later inline syntax. Please note some of the newer syntax below, such as the @DATA is not available until 4.70 EHP 8.| "SELECT single SCLDTYPE FROM OIGFIIQ INTO @DATA(ld_i_scldtype). | ||||
| DATA(ld_i_scldtype) | = '0'. | |||
| "SELECT single TRTYP FROM T180 INTO @DATA(ld_i_option_no_message). | ||||
| DATA(ld_i_option_no_message) | = ' '. | |||
Search for further information about these or an SAP related objects