on 03-25-2010 3:27 PM
Hi,
I need to simulate the ATP , what Availability check (ATP) Function module can I use in order to retrive the ATP quantity for a given material and plant ?
Thank you
I see below info from other forum/site. may be you can take a look.
function modules BAPI_MATERIAL_AVAILABILITY, LE_ATP_CHECK_SINGLE, and SSF_KRN_ENVELOPE
BAPI_MATERIAL_AVAILABILITY
---
This BAPI returns the Available quantity.
The code given below shows how to call this BAPI. The import parameters of this BAPI are
Material
Plant
Unit
---
REPORT ZEX_AVAILIBILITYCHK .
Parameter: p_matnr like BAPIMATVP-MATNR,
p_werks like BAPIMATVP-WERKS,
p_unit like BAPIADMM-UNIT.
*Data: int_wmdvsx like BAPIWMDVS occurs 0 with header line,
int_wmdvex like BAPIWMDVE occurs 0 with header line.
Data: int_wmdvsx type table of bapiwmdvs with header line,
int_wmdvex type table of bapiwmdve with header line,
d_WKBST like BAPICM61V-WKBST.
CALL FUNCTION 'BAPI_MATERIAL_AVAILABILITY'
EXPORTING
PLANT = p_werks
MATERIAL = p_matnr
UNIT = p_unit
CHECK_RULE =
STGE_LOC =
BATCH =
CUSTOMER =
DOC_NUMBER =
ITM_NUMBER =
WBS_ELEM =
STOCK_IND =
DEC_FOR_ROUNDING =
DEC_FOR_ROUNDING_X =
READ_ATP_LOCK =
READ_ATP_LOCK_X =
IMPORTING
ENDLEADTME =
AV_QTY_PLT = d_WKBST
DIALOGFLAG =
RETURN =
TABLES
WMDVSX = int_wmdvsx
WMDVEX = int_wmdvex
.
Write:/ d_WKBST.
If sy-subrc = 0.
endif.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
my code is
********************
SET DEFAULT TO e:\sap_INT
SET EXCL OFF
SET STRICTDATE TO 0
SET DELE ON
CLOSE DATA
PRIVATE T_PRG
T_PRG=PADR(PROGRAM(),8)
*DISP STATUS "Connecting to SAP R/3..."
Functions = CREATEOBJECT("SAP.Functions")
Functions.CONNECTION.ApplicationServer ='10.25.0.66'
Functions.CONNECTION.SYSTEM = '00'
Functions.CONNECTION.tracelevel=6
*Functions.CONNECTION.SystemNumber = 6
Functions.CONNECTION.client = '400'
Functions.CONNECTION.USER = 'P10021331'
Functions.CONNECTION.PASSWORD = 'P@ssword4'
Functions.CONNECTION.language = 'EN'
IF Functions.CONNECTION.Logon(0,.f.)=.f. Then
RETURN
ENDIF
RfcCallTransaction = Functions.ADD("BAPI_MATERIAL_AVAILABILITY")
RfcCallTransaction.call
RfcCallTransaction.Exports("plant")="5001"
RfcCallTransaction.Exports("material")="2000269665"
RfcCallTransaction.Exports("unit")="M"
RfcCallTransaction.Exports("STGE_LOC")="C001"
RfcCallTransaction.imports("endleadtme") = "endleadtme"
RfcCallTransaction.imports("av_qty_plt") =
RfcCallTransaction.imports("dialogflag") = "dialogflag"
RfcCallTransaction.tables.Item("WMDVEX")
objtable=RfcCallTransaction.tables("WMDVEX")
readtext = functions.Add("RFC_READ_TEXT")
Tableobj = readtext.tables.Item("TEXT_LINES")
RfcCallTransaction.tables.Item("WMDVSX")
objtable1=RfcCallTransaction.tables("WMDVSX")
readtext1 = functions.Add("RFC_READ_TEXT")
Tableobj1 = readtext1.tables.Item("TEXT_LINES")
*RfcCallTransaction.tables.Item("AV_QTY_PLT")
objtable2=RfcCallTransaction.text("AV_QTY_PLT")
*readtext2 = functions.Add("RFC_READ_TEXT")
*Tableobj2 = readtext2.tables.Item("TEXT_LINES")
?objtable.rowcount,objtable1.rowcount,objtable2.rowcount
?objtable.ColumnCount,objtable1.ColumnCount,objtable2.ColumnCount
Create table ('E:\SAP_INT\co_code') ; &&Change as required
(a1 C(100),a2 C(100),a3 c(100),a4 c(100),a5 c(100),a6 c(100),a7 c(100),a8 char(100),;
a9 C(100),a10 C(100),a11 c(100),a12 c(100),a13 c(100),a14 t,a15 c(100),a16 char(100),;
a17 C(100),a18 C(100),a19 c(100),a20 c(100),a21 c(100),a22 c(100),a23 c(100),a24 char(100),;
a25 C(100),a26 C(100),a27 c(100),a28 c(100),a29 c(100),a30 c(100),a31 c(100),a32 char(100),;
a33 C(100),a34 C(100),a35 c(100),a36 c(100),a37 c(100),a38 c(100),a39 c(100),a40 char(100),;
a41 C(100),a42 C(100),a43 c(100),a44 c(100),a45 c(100),a46 c(100),a47 c(100),a48 char(100),;
a49 C(100),a50 C(100),a51 c(100),a52 c(100),a53 c(100),a54 c(100),a55 c(100),a56 char(100),;
a57 C(100),a58 C(100),a59 c(100),a60 c(100),a61 c(100),a62 c(100))
IF RfcCallTransaction.call=.t.
FOR i = 1 TO objtable.rowcount
APPEND BLANK
FOR j=1 TO objtable.ColumnCount
mm="a"+ALLTRIM(STR(j))
clear
?objtable.cell(i,j)
replace &mm WITH objtable.cell(i,j)
endfor
ENDFOR
endif
****************
pls help meto correct ,
i want free stock for said material,
am i on the right track
Try BAPI_MATERIAL_AVAILABILITY.
Edited by: Rags on Mar 26, 2010 10:05 AM
Edited by: Rags on Mar 26, 2010 10:10 AM
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
99 | |
11 | |
11 | |
6 | |
6 | |
4 | |
4 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.