Olá!
Veja ai, mercadoria circulando para outra UF CFOP 6xxx
If cCRT == "3"
IF cUFDest <> cUFOrig
//DIFAL = Base do ICMS * ((%Aliquota do ICMS Intra - %Aliquota do ICMS Inter) / 100)
nDifal := Round( sb->baseicms * (( nAliqIcmsIntra - nAliqIcmsInter ) / 100 ),2 )
// HWG_MSGINFO(Str(nAliqIcmsIntra) + " - " + Str(nAliqIcmsInter) + " - " +Str(nDifal))
// Efetuar a Partilha
// nICMSUFRemet := Valor do DIFAL * (%Origem / 100)
nICMSUFRemet := Round( nDifal * ( nPorImpEmit / 100 ),2 )
// nICMSUFRemet := Valor do DIFAL * (%Destino / 100)
nICMSUFDest := Round( nDifal * ( nPorImpDest / 100 ), 2)
nvFCPUFDest := Round( sb->baseicms * ( nPFCPUFDest / 100 ), 2)
? '[ICMSUFDEST' + strzero(nItem,3) +']'
? 'vBCUFDest=' + ltrim(transform(sb->baseicms ,'@e 99999999.99'))
? 'pFCPUFDest=' + ltrim(Transform(nPFCPUFDest ,'@e 99999999.99'))
? 'pICMSUFDest=' + ltrim(Transform(nAliqIcmsIntra ,'@e 99999999.99'))
? 'pICMSInter=' + ltrim(Transform(nAliqIcmsInter ,'@e 99999999.99'))
? 'pICMSInterPart=' + ltrim(Transform(nPorImpDest ,'@e 99999999.99'))
? 'vFCPUFDest=' + ltrim(Transform(nvFCPUFDest ,'@e 99999999.99'))
? 'vICMSUFDest=' + ltrim(Transform(nIcmsUfDest ,'@e 99999999.99'))
? 'vICMSUFRemet=' + ltrim(Transform(nIcmsUfRemet ,'@e 99999999.99'))
nTot_FCPUFDest += nvFCPUFDest
nTot_ICMSUFDest += nICMSUFDest
nTot_ICMSUFRemet += nICMSUFRemet
EndIf
? '[PIS' +strzero(nItem,3) +']'
? 'CST=' +sb->cstpis
? 'vBC=' +ltrim(transform(sb->vbcpis ,'@e 99999999.99'))
? 'pPIS=' +ltrim(transform(sb->ppis ,'@e 99999999.99'))
? 'vPIS=' +ltrim(transform(sb->vpis ,'@e 99999999.99'))
? '[COFINS' + strzero(nItem,3) +']'
? 'CST=' + sb->cstcofins
? 'vBC=' + ltrim(transform(sb->vbccofins ,'@e 99999999.99'))
? 'pCOFINS=' + ltrim(transform(sb->pcofins ,'@e 99999999.99'))
? 'vCOFINS=' + ltrim(transform(sb->vcofins ,'@e 99999999.99'))
EndIf
Em baixo no total.
? '[Total]'
? 'vBC=' + ltrim(transform(sa->BaseICMS ,'@e 99999999.99'))
? 'vICMS=' + ltrim(transform(sa->ICMS ,'@e 99999999.99'))
If cCRT = '3'
If cUFDest <> cUFOrig
? 'vFCPUFDest=' + ltrim(Transform(nTot_FCPUFDest ,'@e 99999999.99'))
? 'vICMSUFDest=' + ltrim(Transform(nTot_ICMSUFDest ,'@e 99999999.99'))
? 'vICSUFRemet=' + ltrim(Transform(nTot_ICMSUFRemet ,'@e 99999999.99'))
EndIf
EndIf
? 'vBCST=' + ltrim(transform(sa->vbcst ,'@e 99999999.99'))
? 'vST=' + ltrim(transform(sa->vst ,'@e 99999999.99'))
? 'vProd=' + ltrim(transform(nValorProduto ,'@e 99999999.99'))
? 'vFrete=' + ltrim(transform(sa->frete ,'@e 99999999.99'))
? 'vSeg=' + ltrim(transform(sa->seguro ,'@e 99999999.99'))
? 'vDesc=' + ltrim(transform(sa->desconto ,'@e 99999999.99'))
? 'vIPI=' + ltrim(transform(sa->vlripi ,'@e 99999999.99'))
IF !Empty(vIPIDevol)
? 'vIPIDevol=' + ltrim(transform(sa->vipidevol ,'@e 99999999.99'))
ENDIF
? 'vPIS=' + ltrim(transform(sa->vpis ,'@e 99999999.99'))
? 'vCOFINS=' + ltrim(transform(sa->vcofins ,'@e 99999999.99'))
? 'vOutro=' + ltrim(transform(sa->outras ,'@e 99999999.99')) //outras despesas acessorias
? 'vNF=' + ltrim(transform(sa->total ,'@e 99999999.99'))
Saudações,
Itamar M. Lins Jr.