;** VN_0504 ********************************************************************
;*  Grafico de Ped.Vendas por Estado                                           *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 14/06/2019 por Anivel Augusto Rodrigues
;Ultima Alteracao: 12/09/2019 por Anivel Augusto Rodrigues      
;Motivo Alteracao: Ajustes filewrite inicial
;Ultima Alteracao: 23/10/2019 por Anivel Augusto Rodrigues  
;Motivo Alteracao: Ajustes mensagem

;*******************************************************************************
;* Rotina p/ Selecionar e Ordernar Registros                                   *
;*******************************************************************************
Proc VN_0504_SelecionaDados()
ClearAll

{Ask} TypeIn "\\Sistemas\\Vendas\\PedidoC" Enter
Moveto [Codigo da Empresa      ]                TypeIn "~VSDGEMPRESA.."
Moveto [Data de Emissao        ]                TypeIn ">=~VSDGDTINI, <=~VSDGDTFIM"
Moveto [Descricao da Destinacao]                TypeIn "..VEND.. Or ..SAIDA.. Or ..SERV.."
Moveto [UF                     ] check
Moveto [Situacao do Pedido     ]                TypeIn ".."
Moveto [Valor Nota Fiscal      ]                TypeIn "Calc Sum as Valor Total"
Do_It!
ClearAll
VN_0504_AdicionaDados()

EndProc

;*******************************************************************************
;* Rotina                                                                      *
;*******************************************************************************
Proc VN_0504_AdicionaDados()
private regestados
ClearAll

View "\\sistemas\\vendas\\estados"
View tabeladados
CoEdit "Answer"
Scan
   Moveto tabeladados
   Moveto [UF]
   Locate [Answer->UF]
   If Not RetVal
      Then End Down
           [UF       ]=[Answer->UF                  ]
           [Extenso  ]="["+[UF]+"] "
           getrecord "\\sistemas\\vendas\\estados" [Answer->UF ] to regestados
           if retval
              then [Extenso  ]=[Extenso  ]+regestados["Descricao"]
           endif   
   EndIf
   [Valor  ]=[Valor  ] +  [Answer->Valor Total]

   Moveto "Answer"
EndScan
Do_It!
ClearAll

EndProc

;*******************************************************************************
;* Rotina                                                                      *
;*******************************************************************************
Proc VN_0504_GravaCsv()
private s, arquivo, arqnew, inicio, NR, vartemp

Aguarde("Aguarde, Exportando Ped.Vendas Estado")

ClearAll

arquivo=VSDGPASTA+"tmp0000.txt"
arqnew =VSDGPASTA+"VN_0504.csv"

Sort tabeladados on "Valor" D
ClearAll
         
NR=NRecords(tabeladados)
inicio=true

FileWrite        arquivo from "label,value\n"    

Edit tabeladados 
Scan
  Barra(NR, RecNo())
  AGUARDE(BARRA_STRING)

  s=  monta_string([Extenso ])+","
  s=s+strval([Valor         ])+"\n"

  FileWrite append arquivo from s    
  
EndScan
Do_It!
ClearAll

FileRead  arquivo to   vartemp
FileWrite arqnew  from vartemp    

LimpAguarde()

EndProc

;*******************************************************************************
;* ROTINA PRINCIPAL                                                            *
;*******************************************************************************

tabeladados=Cria_Temp(PrivDir())
cria_tabela(tabeladados,"UF(A2),Extenso(A25),Valor(N)")

VN_0504_SelecionaDados()

VN_0504_GravaCsv()

Delete tabeladados

ClearAll
Release Vars tabeladados
Release Procs VN_0504_SelecionaDados, VN_0504_AdicionaDados, VN_0504_GravaCsv
