Página 1 de 1

NFE NT 2017.002

Enviado: 29 Ago 2018 00:04
por JoséQuintas
cfop.png

NFE NT 2017.002

Enviado: 30 Ago 2018 12:37
por JoséQuintas
Mas geralmente um aplicativo já conhece o que emite, e já tem relatório pra isso.
Vai complicar porque vai ter que fazer a relação de cada documento primeiro, porque pode ter repetido em pastas diferentes.

Algo mais ou menos assim:

Código: Selecionar todos

#define CFOP     1
#define VALOR   2
#define NUMERO 3

aLista := {}
aFiles := Directory( "*.*" )
FOR EACH oElement IN aFiles
   oDoc := XmlToDoc( MemoRead( oElement[ F_NAME ] ) )
   IF AScan( aLista, { | e | e[ NUMERO ] == oDoc:ChaveAcesso } ) == 0
      AAdd( aLista, { oDoc:ChaveAcesso, oDoc:valor, oDoc:cfop } )
   ENDIF
NEXT

ASort( aLista, { | a, b | a[ cfop ] < b[ cfop ] } )

aLista2 := {}
FOR EACH oElement IN aLista
   IF nItem := AScan( aLista2, { | x | x[ CFOP ] == aLista[ CFOP ] } ) == 0
      AAdd( aLista2, { oElement[ CFOP ], oElement[ Valor ] )
   ELSE
      aLista2[  nItem, VALOR ] += oElement[ Valor ]
   ENDIF
NEXT       

NFE NT 2017.002

Enviado: 06 Mai 2019 14:00
por JoséQuintas
Só pra avisar.
A última NT 2017.002 é 1.20, de 11/04/2019.