Sei sulla pagina 1di 3

*$*$IOR Aggiorna Stato e Quantità Kanban

*$*$IOSP_PRVBE D .
*$*$IOSP_WERKS D .
*$*$IOSS_MATNR D .
*&---------------------------------------------------------------------*
*& Report Z_KANBAN_BOX_UPDATE
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT Z_KANBAN_BOX_UPDATE.
tables: pkhd,
pkps,
lqua.
data : i_pkpos like pkps-pkpos,
return like BAPIRET2,
act_quan like BAPI1075_ACTUAL_QTY.
data: begin of UPD_TAB occurs 0,
pkkey like pkps-pkkey,
verme like lqua-verme,
meins like lqua-meins.
data : end of upd_tab.
data : begin of i_stat occurs 0.
include structure BAPI1075_3.
data: end of i_stat.
Parameters :
p_werks like pkhd-werks obligatory default 'DB10',
p_prvbe like pkhd-prvbe obligatory.
select-options:
s_matnr for pkhd-matnr.
start-of-selection.

select * from pkhd where matnr in s_matnr


and werks = p_werks
and prvbe = p_prvbe.
select * from lqua where matnr = pkhd-matnr
and lgtyp = pkhd-lgtyp
and lgpla = pkhd-lgpla
and gesme > 0.
clear i_pkpos.
do.
i_pkpos = i_pkpos + 1.
if pkhd-behmg > lqua-verme.
select * up to 1 rows from pkps where pknum = pkhd-pknum
and pkpos = i_pkpos.
endselect.
* act_quan-ACTUAL_QTY = lqua-verme.
* act_quan-BASE_UOM = lqua-meins.
*
move : pkps-pkkey to upd_tab-pkkey,
lqua-verme to upd_tab-verme,
lqua-meins to upd_tab-meins.
append upd_Tab.
exit.
else.
lqua-verme = lqua-verme - pkhd-behmg.
select * up to 1 rows from pkps where pknum = pkhd-pknum
and pkpos = i_pkpos.
endselect.

move : pkps-pkkey to upd_tab-pkkey,


pkhd-behmg to upd_tab-verme,
lqua-meins to upd_tab-meins.
append upd_Tab.
endif.
enddo.
endselect.
endselect.
break-point.
loop at upd_tab.

act_quan-ACTUAL_QTY = upd_tab-verme.
act_quan-BASE_UOM = upd_tab-meins.
act_quan-BASE_UOM_ISO = upd_tab-meins.

CALL FUNCTION 'BAPI_KANBAN_CHANGESTATUS1'


EXPORTING
KANBANIDNUMBER = upd_tab-pkkey
NEXTSTATUS = '1'
ACTUALQUANTITY = act_quan
* BATCH =
* PHYSICALTIME =
* DELIVERYNOTES =
IMPORTING
RETURN = return
TABLES
STATUSCHANGERESULT = i_stat.
.

CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'


* EXPORTING
* WAIT =
* IMPORTING
* RETURN =
.

endloop.
end-of-selection.

Potrebbero piacerti anche