Цитата:
function zfm_len_raspr_nds.
*"----------------------------------------------------------------------
*"*"Локальный интерфейс:
*" IMPORTING
*" REFERENCE(Z_BUKRS) LIKE BSET-BUKRS
*" REFERENCE(Z_BELNR) LIKE BSET-BELNR
*" REFERENCE(Z_GJAHR) LIKE BSET-GJAHR
*" REFERENCE(Z_MWSKZ) LIKE BSET-MWSKZ
*" EXPORTING
*" REFERENCE(KOEF)
*"----------------------------------------------------------------------
data: z_hwbas like bset-hwbas, z_hwste like bset-hwste.
clear z_hwbas. clear z_hwste. clear koef.
tables bset.
select single hwbas hwste from bset into (z_hwbas,z_hwste)
where bukrs = z_bukrs
and belnr = z_belnr
and gjahr = z_gjahr
and mwskz = z_mwskz.
if z_hwbas ne 0.
koef = 1 + z_hwste / z_hwbas.
else.
koef = 1.
endif.
а в программе
Цитата:
loop at my_bseg where ktosl <> 'VST' and
( mwart = space or mwart = '<' ).
call function 'ZFM_LEN_RASPR_NDS1'
exporting
z_bukrs = my_bseg-bukrs
z_belnr = my_bseg-belnr
z_gjahr = my_bseg-gjahr
z_mwskz = my_bseg-mwskz
importing
koef = koef.
if my_bseg-mwart = '<'.
koef = 1.
endif.
my_write-dmbtr = my_bseg-dmbtr * koef.
понятно что это уже в отчетах
Еще забыл - понятно что позиции кредитора или дебитоар в my_bseg тоже не должно быть.
my_bseg-mwart = '<'. НДС, но вручную