// Transaktion MIGO Warenbewegungen erfassen/anzeigen//
// Aufgabenstellung:
//
// Bei der Erfassung soll bereits der aktuelle Lagerortbestand (MARD-LABST)
// in der Tabelle angezeigt werden.
//IF Q[DATABASE=I56]
Image (0,140) (3,147) "pardon.gif" -nostretch
// Ermitteln des aktuellen Bestandes
set V[i] 1
set V[MIGO*] ""
// Loop über die Tabelle
LABEL MIGO_BESTAND_LESEN
// Prüfen ob MATNR gefüllt ist
set V[MIGO_CHECK_MATNR] "&cell[SAPLMIGO_TV_GOITEM,GOITEM-MATNR,&[i]]"
set V[MIGO_CHECK_EBELN] "&cell[SAPLMIGO_TV_GOITEM,GOITEM-EBELN,&[i]]"
set V[MIGO_CHECK_EBELP] "&cell[SAPLMIGO_TV_GOITEM,GOITEM-EBELP,&[i]]"
set V[MIGO_POS] "&[i]"
if V[MIGO_CHECK_MATNR] or V[MIGO_CHECK_EBELN]
// Führende Nullen ergänzen
Set V[MIGO_MATNR] "000000000000000000&V[MIGO_CHECK_MATNR]"
Set V[L2] "&V[MIGO_MATNR]" -stringlength
Set V[L1] "&V[L2]" - 17
Set V[MIGO_CHECK_MATNR] "&V[MIGO_MATNR](&V[L1]-&V[L2])"
Set V[MIGO_MATNR] "&V[MIGO_CHECK_MATNR]"
// RFC-Baustein aufrufen
call Z_MM_BESTAND_LESEN In.MATNR="&V[MIGO_MATNR]" In.WERKS="&cell[SAPLMIGO_TV_GOITEM,GOITEM-WERKS,&[i]]" In.LGORT="&cell[SAPLMIGO_TV_GOITEM,GOITEM-LGORT,&[i]]" Out.LABST="MIGO_LABST.&V[MIGO_POS]"
// Nachkommastellen eliminuieren
set V[MIGO_LABST.&V[MIGO_POS]] "&V[MIGO_LABST.&V[MIGO_POS]]" / 1000
// Führende Nullen ergänzen
Set V[MIGO_EBELN] "0000000000&V[MIGO_CHECK_EBELN]"
Set V[L2] "&V[MIGO_EBELN]" -stringlength
Set V[L1] "&V[L2]" - 9
Set V[MIGO_CHECK_EBELN] "&V[MIGO_EBELN](&V[L1]-&V[L2])"
Set V[MIGO_EBELN] "&V[MIGO_CHECK_EBELN]"
Set V[MIGO_EBELP] "00000&V[MIGO_CHECK_EBELP]"
Set V[L2] "&V[MIGO_EBELP]" -stringlength
Set V[L1] "&V[L2]" - 4
Set V[MIGO_CHECK_EBELP] "&V[MIGO_EBELP](&V[L1]-&V[L2])"
Set V[MIGO_EBELP] "&V[MIGO_CHECK_EBELP]"
// StatusMessage Title="Aufarbeitungsauftrag anlegen"
// StatusMessage AddString="&V[MIGO_CHECK_EBELN]" Size=(11,80)
// StatusMessage AddString="&V[MIGO_CHECK_EBELP]" Size=(11,80)
// RFC-Baustein aufrufen
//IF Q[DATABASE=I56]
call Z_MM_LFDAT_LESEN In.EBELN="&V[MIGO_EBELN]" In.EBELP="&V[MIGO_EBELP]" Out.LFDAT="MIGO_LFDAT.&V[MIGO_POS]"
//ENDIF
set V[MIGO_LFDAT.&V[MIGO_POS]] "&V[MIGO_LFDAT.&V[MIGO_POS]]"
set V[L1] "&V[MIGO_LFDAT.&V[MIGO_POS]]"
set V[MIGO_LFDAT.&V[MIGO_POS]](1-2) "&V[L1](7-8)"
set V[MIGO_LFDAT.&V[MIGO_POS]](3-3) "."
set V[MIGO_LFDAT.&V[MIGO_POS]](4-5) "&V[L1](5-6)"
set V[MIGO_LFDAT.&V[MIGO_POS]](6-6) "."
set V[MIGO_LFDAT.&V[MIGO_POS]](7-10) "&V[L1](1-4)"
set V[i] &[i] + 1
goto MIGO_BESTAND_LESEN
endif
// neue Spalte für die Tabelle
Column "akt. Bestand" size=10 name=MIGO_LABST position=5 table=T[SAPLMIGO_TV_GOITEM] -readonly //keycolumn=[MIGO_POS] //Table
// neue Spalte "Liefertermin"
Column "LiefDat Best" size=12 name=MIGO_LFDAT position=6 table=T[SAPLMIGO_TV_GOITEM] -readonly //keycolumn=[MIGO_POS] //Table
//ENDIF