;*******************************************************************************
;* Desenvolvido: 31/08/2020 por Bruno Carvalho                                 *
;*******************************************************************************
Autolib="\\Sistemas\\Cadastro\\Bibliot,\\Sistemas\\Cadastro\\Bib_Show"

DATAM_DATA   = DateVal("31.08.2020")
DATAM_VERSAO = "2020.H"
 
DATAM_EXECUTA = "SYS_DATAM"
Play "\\Sistemas\\Cadastro\\EXEC_DAT"

If Not DATAM_EXECUTA 
   Then Exit
   Else DATAM_ROTINA  = "Cadastro, Contas a Pagar, Contas a Receber, Fac‡Æo, Produ‡Æo, Estoque e Vendas"
        DATAM_EXECUTA = "SYS_DATAM_MENSAGEM"
        Play "\\Sistemas\\Cadastro\\EXEC_DAT"
        If Not DATAM_EXECUTA
           Then Exit
        EndIf
EndIf 

;*******************************************************************************
;Rotina Corre‡Æo de Tabelas                                                    *
;*******************************************************************************
Proc Correcao_Tabelas_Cadastro()

;---- Em 10/08/2020 por Bruno Carvalho -----------------------------------------
PARAM_MSG=False
Play "ALT_AC"

EndProc ;Correcao_Tabelas_Cadastro()
 
;*******************************************************************************
;Rotina Corre‡Æo de Tabelas                                                    *
;*******************************************************************************
Proc Correcao_Tabelas_Producao()

;---- Em 05/08/2020 por Anivel -------------------------------------------------
If IsTable("Formulac")
   Then {Modify} {Restructure} {Formulac}
        Moveto [Field Name]
        Locate "ProducaoMaximaDia"
        If Not RetVal
           Then End Down
                "ProducaoMaximaDia"    Enter  "N"  Enter
        EndIf
        Do_It!
        ClearAll        
        
        {Tools} {Copy} {JustFamily} TypeIn "\\Base\\Sistemas\\Producao\\Formulac" Enter TypeIn "Formulac" Enter {Replace}
EndIf

EndProc ;Correcao_Tabelas_Producao()

;*******************************************************************************
;Rotina Corre‡Æo de Tabelas                                                    *
;*******************************************************************************
Proc Correcao_Tabelas_Vendas()

;---- Em 10/08/2020 por Bruno Carvalho  ----------------------------------------
If IsTable("NotaC") And IsTable("NotaI")
   Then Release Vars NotaI,NotaICM 
        If IsTable("NotaICM")
           Then Aguarde("Aguarde, verificando dados da tabela NotaICM")
                {Ask} {NotaICM}
                Moveto [Codigo da Empresa  ] Check TypeIn "_Cod"
                Moveto [Numero do Documento] Check TypeIn "_Num"
                Moveto [Serie do Documento ] Check TypeIn "_Ser"
                Moveto [Item do Documento  ]       TypeIn "_Seq"
                Moveto [ICMS_UFDest_Valor  ]       TypeIn "Calc Sum as ICMS UFDest"
                Moveto [ICMS_UFRemet_Valor ]       TypeIn "Calc Sum as ICMS UFRemet" 
                Moveto [FCP_Valor          ]       TypeIn "Calc Sum as FCP Valor"
                Moveto [FCP_UFDest_Valor   ]       TypeIn "Calc Sum as FCP UFDest" 
                Moveto [FCP_ST_Valor       ]       TypeIn "Calc Sum as FCP ST Valor"
                {Ask} {NotaI}                      
                Moveto [Codigo da Empresa  ]       TypeIn "_Cod"
                Moveto [Numero do Documento]       TypeIn "_Num"
                Moveto [Serie do Documento ]       TypeIn "_Ser"
                Moveto [Item do Documento  ]       TypeIn "_Seq"
                Moveto [Situacao_Item      ]       TypeIn "Not C"
                Do_it!
                ClearAll
                
                NotaICM = Adiciona_Indice_Temp("Codigo da Empresa,Numero do Documento,Serie do Documento")
        EndIf
        
        If IsTable("NotaI")
           Then Aguarde("Aguarde, verificando dados da tabela NotaI")
                {Ask} {NotaI}     
                Moveto [Codigo da Empresa  ] Check
                Moveto [Numero do Documento] Check
                Moveto [Serie do Documento ] Check 
                Moveto [Valor TotTributos  ] TypeIn "Calc Sum as Valor TotTributos"
                Moveto [IPI Devolvido_Valor] TypeIn "Calc Sum as IPI Devolvido"
                Moveto [Situacao_Item      ] TypeIn "Not C"
                Do_it!
                ClearAll
                
                NotaI = Adiciona_Indice_Temp("Codigo da Empresa,Numero do Documento,Serie do Documento")   
        EndIf
        
        If IsAssigned(NotaI) 
           Then Aguarde("Aguarde, verificando dados da tabela NotaC: 1/2")
                
                {Ask} TypeIn NotaI Enter     
                Moveto [Codigo da Empresa  ] TypeIn "_Cod" 
                Moveto [Numero do Documento] TypeIn "_Num" 
                Moveto [Serie do Documento ] TypeIn "_Ser"  
                Moveto [Valor TotTributos  ] TypeIn "_VrT" 
                Moveto [IPI Devolvido      ] TypeIn "_IPI"
                {Ask} {NotaC}
                Moveto [Codigo da Empresa  ] TypeIn "_Cod" 
                Moveto [Numero do Documento] TypeIn "_Num" 
                Moveto [Serie do Documento ] TypeIn "_Ser"
                Moveto [Valor TotTributos  ] TypeIn "Not > 0, Changeto _VrT"   
                Moveto [Valor IPI Devolvido] TypeIn "Not > 0, Changeto _IPI"               
                Do_it!
                ClearAll
        EndIf
        
        If IsAssigned(NotaICM) 
           Then Aguarde("Aguarde, verificando dados da tabela NotaC: 2/2")
                
                {Ask} TypeIn NotaICM Enter     
                Moveto [Codigo da Empresa  ] TypeIn "_Cod" 
                Moveto [Numero do Documento] TypeIn "_Num" 
                Moveto [Serie do Documento ] TypeIn "_Ser"
                Moveto [ICMS UFDest        ] TypeIn "_ICMSD"
                Moveto [ICMS UFRemet       ] TypeIn "_ICMSR"
                Moveto [FCP Valor          ] TypeIn "_FCTVR"
                Moveto [FCP UFDest         ] TypeIn "_FCTUF"
                Moveto [FCP ST Valor       ] TypeIn "_FCTST"
                {Ask} {NotaC}
                Moveto [Codigo da Empresa  ] TypeIn "_Cod" 
                Moveto [Numero do Documento] TypeIn "_Num" 
                Moveto [Serie do Documento ] TypeIn "_Ser"  
                Moveto [Valor ICMS_UFDest  ] TypeIn "Not > 0, Changeto _ICMSD"
                Moveto [Valor ICMS_UFRemet ] TypeIn "Not > 0, Changeto _ICMSR"
                Moveto [Valor FCP          ] TypeIn "Not > 0, Changeto _FCTVR"
                Moveto [Valor FCP_UFDest   ] TypeIn "Not > 0, Changeto _FCTUF"
                Moveto [Valor FCP_Ret_ST   ] TypeIn "Not > 0, Changeto _FCTST"
                Do_it!
                ClearAll
        EndIf        
EndIf   

;---- 19/08/2020 por Bruno Carvalho --------------------------------------------
If IsTable("FaturaI")
   Then {Modify} {Restructure} {FaturaI}
        Moveto [Field Name]
        Locate "Situacao_Item"
        If Not RetVal
           Then End Down
                "Situacao_Item"    Enter  "A1"  Enter
        EndIf
        Do_It!
        ClearAll        
        
        {Tools} {Copy} {JustFamily} TypeIn "\\Base\\Sistemas\\Vendas\\FaturaI" Enter TypeIn "FaturaI" Enter {Replace}
EndIf

;---- Em 19/08/2020 por Bruno Carvalho -----------------------------------------
If IsTable("P_Balcao")
   Then {Modify} {Restructure} {P_Balcao}
        Moveto [Field Name]
        Locate "NCE_Codigo do Docto"
        If Not RetVal
           Then End Down
                "NCE_Codigo do Docto"     Enter  "A4"  Enter
                "NCE_Tipo do Docto"       Enter  "A4"  Enter
                "NCE_Serie do Docto"      Enter  "A4"  Enter
                "NCE Dup_Codigo do Docto" Enter  "A4"  Enter
                "NCE Dup_Tipo do Docto"   Enter  "A4"  Enter
                "NCE Dup_Serie do Docto"  Enter  "A4"  Enter
                "Grupo_eDoc"              Enter  "A20"  Enter
                "Caminho_NCeManager"      Enter  "A100"  Enter
        EndIf
        Do_It!
        ClearAll        
        
        {Tools} {Copy} {JustFamily} TypeIn "\\Base\\Sistemas\\Vendas\\P_Balcao" Enter TypeIn "P_Balcao" Enter {Replace}
EndIf

If IsTable("FaturaC")
   Then If IsTable("FaturaI") Then {Tools} {Copy} {JustFamily} TypeIn "\\Base\\Sistemas\\Vendas\\FaturaI" Enter TypeIn "FaturaI" Enter {Replace} EndIf   
        If IsTable("FaturaV") Then {Tools} {Copy} {JustFamily} TypeIn "\\Base\\Sistemas\\Vendas\\FaturaV" Enter TypeIn "FaturaV" Enter {Replace} EndIf
        {Tools} {Copy} {JustFamily} TypeIn "\\Base\\Sistemas\\Vendas\\FaturaC" Enter TypeIn "FaturaC" Enter {Replace}
EndIf

;---- Em 31/08/2020 por Bruno Carvalho -----------------------------------------
If IsTable("ExpedI")
   Then {Modify} {Restructure} {ExpedI}
        Moveto [Field Name]
        Locate "LoteNumero"
        If Not RetVal
           Then End Down
                "LoteNumero"    Enter  "A20"  Enter
        EndIf
        Do_It!
        ClearAll        
        
        {Tools} {Copy} {JustFamily} TypeIn "\\Base\\Sistemas\\Vendas\\ExpedI" Enter TypeIn "ExpedI" Enter {Replace} 
EndIf

If IsTable("ExpedC")
   Then {Tools} {Copy} {JustFamily} TypeIn "\\Base\\Sistemas\\Vendas\\ExpedC" Enter TypeIn "ExpedC" Enter {Replace}
EndIf     

EndProc ;Correcao_Tabelas_Vendas() 

;*******************************************************************************
;Rotina Principal                                                              *
;*******************************************************************************
Aguarde("Atualizando Sistema")
Password("t01avivcl")
Password("FechaSys")

View "SysTable"
SYS_CODIGO_CLIENTE = [Codigo do Cliente]
ClearAll

;-------------------------------------------------------------------------------

DATAM_ROTINA   = "CADASTRO"
DATAM_FECHAMES = ""
DATAM_EXECUTA  = "DATAM_SETDIR"
Play "\\Sistemas\\Cadastro\\EXEC_DAT" 

DATAM_ROTINA   = "PRODUCAO"
DATAM_FECHAMES = ""
DATAM_EXECUTA  = "DATAM_SETDIR"
Play "\\Sistemas\\Cadastro\\EXEC_DAT" 

DATAM_ROTINA   = "VENDAS"
DATAM_FECHAMES = "FECHAMES"
DATAM_EXECUTA  = "DATAM_SETDIR"
Play "\\Sistemas\\Cadastro\\EXEC_DAT" 

{Tools} {More} {Directory} {\\Sistemas\\Cadastro\\}

DATAM_EXECUTA  = "DATAM_SYSTABLE"
Play "\\Sistemas\\Cadastro\\EXEC_DAT" 

UnPassword("t01avivcl")
UnPassword("FechaSys")
LimpAguarde()
FastMsg("Fim da atualiza‡Æo !")

DATAM_EXECUTA  = "DATAM_RELEASE"
Play "\\Sistemas\\Cadastro\\EXEC_DAT"

Release Vars DATAM_EXECUTA      