;** RM_3250E *******************************************************************
;*  Registro de Inventario para Balan‡o                                        *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 07/03/2019 por Bruno Carvalho
;Ultima Alteracao: 02/03/2020 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes substitui‡Æo tabela Itens por tempor ria TabelaIt

;*******************************************************************************
;* Seleciona Registros                                                         *
;*******************************************************************************
Proc RM_3250E_Seleciona()

If IsTable("\\Sistemas\\Estoque\\"+Dir_Trab+"NotaEC") And IsTable("\\Sistemas\\Estoque\\"+Dir_Trab+"NotaEI")
   Then {Ask} TypeIn "\\Sistemas\\Estoque\\"+Dir_Trab+"NotaEC" Enter
        Moveto [Numero do Lancamento    ] TypeIn "_Lanc"
        Moveto [Codigo da Empresa       ] Check TypeIn "~VSDGEMPRESA.."
        Moveto [Codigo                  ] Check
        Moveto [Razao Social            ] Check
        Moveto [UF                      ] Check
        Moveto [CGC                     ] Check        
        Moveto [Descricao da Operacao   ] TypeIn "COMPRA"
        Moveto [Numero do Documento     ] Check
        Moveto [Data de Entrada         ] Check TypeIn ">=~VSDGDTINI3, <=~VSDGDTFIM"
        {Ask} TypeIn "\\Sistemas\\Estoque\\"+Dir_Trab+"NotaEI" Enter
        Moveto [Numero do Lancamento    ] TypeIn "_Lanc"
        Moveto [Codigo do Item          ] Check TypeIn "Not Blank"
        Moveto [Descricao do Item       ] Check
        Do_it!
        ClearAll 
        
        If Not IsAssigned(Tabela) Or Not IsTable(Tabela) 
           Then Tabela=Cria_Temp(PrivDir())
        EndIf
        Copy "Answer" Tabela 

        If IsEmpty(Tabela)
           Then Return         
        EndIf
        
        ;---- Maior data de compra do item -------------------------------------
        {Ask} {Answer}
        Moveto [Codigo do Item          ] Check
        Moveto [Data de Entrada         ] TypeIn "Calc Max as Data"
        Do_It!
        ClearAll
        
        ;---- Verificando o Numero do Documento referente ao item -------------- 
        {Ask} {Answer} Check
        Moveto [Codigo do Item          ] TypeIn "_CodI"
        Moveto [Data                    ] TypeIn "_Data"
        {Ask} TypeIn Tabela Enter
        Moveto [Codigo do Item          ] TypeIn "_CodI" 
        Moveto [Data de Entrada         ] TypeIn "_Data"
        Moveto [Numero do Documento     ] Check
        Do_It!
        ClearAll
        
        {Ask} {Answer} 
        Moveto [Codigo do Item          ] Check 
        Moveto [Data                    ] Check
        Moveto [Numero do Documento     ] TypeIn "Calc Max as Numero do Documento"
        Do_It!
        ClearAll
        
        ;---- Atualizando os dados na tabe‡a de trabalho -----------------------
        {Ask} TypeIn Tabela Enter
        Moveto [Codigo do Item          ] TypeIn "_CodI"
        Moveto [Data de Entrada         ] TypeIn "Changeto _Dat"
        Moveto [Numero do Documento     ] TypeIn "Changeto _NumD"
        {Ask} {Answer}
        Moveto [Codigo do Item          ] TypeIn "_CodI"
        Moveto [Data                    ] TypeIn "_Dat"
        Moveto [Numero do Documento     ] TypeIn "_NumD"
        Do_it!
        ClearAll
        
        ;---- Descri‡Æo do item ------------------------------------------------
        {Ask} TypeIn Tabela Enter
        Moveto [Codigo do Item          ] TypeIn "_CodI"
        Moveto [Descricao do Item       ] TypeIn "Changeto _DesI"
        {Ask} Typein TabelaIt Enter
        Moveto [Codigo do Item          ] TypeIn "_CodI"
        Moveto [Descricao do Item       ] TypeIn "_DesI"
        Do_it!
        ClearAll

        ;---- Dados para trabalho ----------------------------------------------
        {Ask} TypeIn Tabela Enter
        Moveto [Codigo                  ] TypeIn "_Cod"
        Moveto [Razao Social            ] TypeIn "Changeto _raz"
        Moveto [CGC                     ] TypeIn "Changeto _cgc"
        {Ask} {\\Sistemas\\Cadastro\\Destinat}
        Moveto [Codigo                  ] TypeIn "_Cod"
        Moveto [Razao Social            ] TypeIn "_raz"
        Moveto [CGC                     ] TypeIn "_cgc"
        Do_it!
        ClearAll
        
        ;---- Dados para trabalho ----------------------------------------------
        {Ask} TypeIn Tabela Enter
        Moveto [Codigo da Empresa       ] Check
        Moveto [Codigo                  ] Check
        Moveto [Razao Social            ] Check
        Moveto [UF                      ] Check
        Moveto [CGC                     ] Check        
        Moveto [Data de Entrada         ] Check 
        Moveto [Codigo do Item          ] Check
        Moveto [Descricao do Item       ] Check
        Moveto [Numero do Documento     ] Check
        Do_it!
        ClearAll
        
        Tabela=Adiciona_Indice_Temp("Codigo da Empresa,Codigo,Codigo do Item")       
EndIf

EndProc ;RM_3250E_Seleciona()

;*******************************************************************************
;* ROTINA PRINCIPAL                                                            *
;*******************************************************************************
VSDGDTINI3 = DateVal("01.01.2000")
Monta_Dir_Trab(VSDGDTINI3,VSDGDTFIM)
While Novo_Dir_Trab()
  Rm_3250E_Seleciona()
  If IsAssigned(RM_3250E) And IsTable(RM_3250E)
     Then Add Tabela RM_3250E 
     Else RM_3250E=Cria_Temp(PrivDir())
          Rename Tabela RM_3250E
  EndIf 
EndWhile
If IsAssigned(Tabela)   And IsTable(Tabela)   Then Delete Tabela   EndIf
 
ClearAll
Release Vars RM_3250E_Seleciona
