;** VN_0508 ********************************************************************
;*  Grafico de Ped.Vendas por Gerencia                                         *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 23/10/2019 por Anivel Augusto Rodrigues
;Ultima Alteracao:   /  /     por       
;Motivo Alteracao: 

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

{Ask} TypeIn "\\Sistemas\\Cadastro\\gerencia" Enter
Moveto [Codigo da Gerencia     ] check          typein "_cger"
Moveto [Descricao Gerencia     ] check          
{Ask} TypeIn "\\Sistemas\\Cadastro\\represen" Enter
Moveto [Codigo do Representante]                typein "_crep"
Moveto [Codigo da Gerencia     ]                typein "_cger"
{Ask} TypeIn "\\Sistemas\\Vendas\\PedidoC" Enter
Moveto [Codigo da Empresa      ]                TypeIn "~VSDGEMPRESA.."
Moveto [Numero do Pedido       ] Example "ndoc"
Moveto [Data de Emissao        ]                TypeIn ">=~VSDGDTINI, <=~VSDGDTFIM"
Moveto [Codigo do Representante]                typein "_crep"
Moveto [Descricao da Destinacao]                TypeIn "..VEND.. Or ..SAIDA.. Or ..SERV.."
Moveto [Situacao do Pedido     ]                TypeIn ".."
{Ask} TypeIn "\\Sistemas\\Vendas\\PedidoI" Enter
Moveto [Numero do Pedido       ] Example "ndoc"
Moveto [Preco Total            ]                TypeIn "Calc Sum as Valor Total"
Moveto [Valor Desconto Total   ]                TypeIn "Calc Sum as Valor Desconto Total"
Do_It!
ClearAll
VN_0508_AdicionaDados()

EndProc

;*******************************************************************************
;* Rotina                                                                      *
;*******************************************************************************
Proc VN_0508_AdicionaDados()
ClearAll

View tabeladados
CoEdit "Answer"
Scan
   Moveto tabeladados
   Moveto [Codigo da Gerencia     ]
   Locate [Answer->Codigo da Gerencia     ]
   If Not RetVal
      Then End Down
           [Codigo da Gerencia       ]=[Answer->Codigo da Gerencia        ]
           [Extenso                  ]="["+[Codigo da Gerencia        ]+"] "+
                                       [Answer->Descricao Gerencia        ]
   EndIf
   [Valor  ]=[Valor  ] + ([Answer->Valor Total]-[Answer->Valor Desconto Total])

   Moveto "Answer"
EndScan
Do_It!
ClearAll

EndProc

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

Aguarde("Aguarde, Exportando Vendas Gerencia")

ClearAll

arquivo=VSDGPASTA+"tmp0000.txt"
arqnew =VSDGPASTA+"VN_0508.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,"Codigo da Gerencia(A4),Extenso(A25),Valor(N)")

VN_0508_SelecionaDados()
VN_0508_GravaCsv()

Delete tabeladados

ClearAll
Release Vars tabeladados
Release Procs VN_0508_SelecionaDados, VN_0508_AdicionaDados, VN_0508_GravaCsv
