Quantcast
Channel: SCN: Message List
Viewing all articles
Browse latest Browse all 8620

Como popular os campos vBCSTRet e VICMSRet na NFe 3.10 CST 60?

$
0
0

Olá Pessoal,

 

Tinhamos na versão 2.0 o seguinte tratamento para os campos : vBSTRet e VICMSRet:

 

  1.   Configuramos 2 condition types (por Material) ZBR3 e ZBR4 na pricing de vendas, uma para armazenar a base de ICMS retida e outra para armazenar o valor de  ICMS retido e cada uma delas populava as tags vBSTRet e VICMSRet
  2. Construimos uma logica para prencher os valores das condições nos campos
         correspondentes

 

Mas com a NFe 3.10, nossa lógica parou de funcionar. A BADI captura os valores corretos, mas o GRC os valores mudam e pelos valores notei que ele está lendo o valor de base do tax type ICM3 o campo vBSTRet está com valor do Other Bases =Total Nota
fiscal e vBSTRet está com o valor do campo tax rate do ICM3 da NF, valor = 0,00

Peço por favor compartilhar como vocês estõa tratando estas tags nos seus ambientes para atender a NFe 3.10 .

 

Segue nosso trecho do programa :

 

IF sy-subrc EQ0.
SELECT SINGLE *
FROM kna1
INTO wa_kna1
WHERE kunnr = in_doc-parid.


IF sy-subrc EQ0.
ASSIGN ('(SAPMV60A)XVBRK[]')TO <t_vbrk>.
IF NOT <t_vbrk> IS
ASSIGNED
.
ASSIGN ('(SAPLV60A)XVBRK[]')TO <t_vbrk>.
ENDIF.
IF <t_vbrk> IS
ASSIGNED
.

t_vbrk[]
= <t_vbrk>[].
READ TABLE t_vbrk INTO wa_vbrk WITH
KEY
vbeln = in_lin-refkey.
ELSE.
SELECT SINGLE *
FROM vbrk
INTO wa_vbrk
WHERE vbeln = in_lin-refkey.
ENDIF.


SELECT SINGLE *
FROM a818
INTO wa_a818
WHERE kschl = 'ZBR3'
AND vkorg = wa_vbrk-vkorg
AND vtweg = wa_vbrk-vtweg
AND regio = wa_kna1-regio
AND matnr = in_lin-matnr
AND datbi >= sy-datum
AND datab <= sy-datum.


IF sy-subrc =0.
CLEAR wa_konp.
SELECT SINGLE *
FROM konp
INTO wa_konp
WHERE knumh = wa_a818-knumh.


IF sy-subrc =0.

lv_kwert_bc
= wa_konp-kbetr * in_lin-menge.
ENDIF.


SELECT SINGLE *
FROM a818
INTO wa_a818
WHERE kschl = 'ZBR4'
AND vkorg = wa_vbrk-vkorg
AND vtweg = wa_vbrk-vtweg
AND regio = wa_kna1-regio
AND matnr = in_lin-matnr
AND datbi >= sy-datum
AND datab <= sy-datum.


IF sy-subrc =0.
CLEAR wa_konp.
SELECT SINGLE *
FROM konp
INTO wa_konp
WHERE knumh = wa_a818-knumh.


IF sy-subrc =0.

lv_kwert_vst
= wa_konp-kbetr * in_lin-menge.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ENDIF.

IF NOT lv_kwert_vst IS INITIAL
AND

NOT lv_kwert_bc IS INITIAL.

lv_bcst
= lv_kwert_bc.

lv_vst
= lv_kwert_vst.

out_item
-l1_60_vbcst =out_item-vbcstret= lv_bcst.

out_item
-l1_60_vicmsst =out_item-vicmsstret= lv_vst.


Viewing all articles
Browse latest Browse all 8620

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>