Цитата:
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 = '<'. НДС, но вручную