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

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

If Not DATAM_EXECUTA 
   Then Exit
   Else DATAM_ROTINA  = "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()

;---- Em 03/09/2020 por Bruno Carvalho -----------------------------------------
If Not IsTable("\\Sistemas\\Vendas\\P_NFCE") 
   Then Copy "\\Base\\Sistemas\\Vendas\\P_NFCE" "\\Sistemas\\Vendas\\P_NFCE"        
EndIf

EndProc ;Correcao_Tabelas()

;*******************************************************************************
;Rotina Corre‡Æo de Tabelas                                                    *
;*******************************************************************************
Proc Correcao_Tabelas_Estoque()
private itemok

;---- Em 15/09/2020 por Anivel Augusto Rodrigues -------------------------------
If IsTable("Itens") 
   Then
        itemok=false
        {Modify} {Restructure} {Itens}
        Moveto [Field Name]
        Locate "VisePedidosEsgotado"
        If Not RetVal
           Then End Down
                "VisePedidosEsgotado" Enter "A1" Enter
                itemok=true
        EndIf 
        Do_It!
        Clearall
        
        if itemok
           then {ask} {itens} typein "Fast"
                moveto [Producao Esgotada  ] typein "_vr" 
                moveto [VisePedidosEsgotado] typein "changeto _vr"
                do_it!
                clearall
                
                {Tools} {Copy} {JustFamily} TypeIn "\\Base\\Sistemas\\Estoque\\Itens" Enter TypeIn "Itens" Enter {Replace}
        endif    
        
EndIf   
EndProc ;Correcao_Tabelas_Estoque() 
 
;*******************************************************************************
;Rotina Corre‡Æo de Tabelas                                                    *
;*******************************************************************************
Proc Correcao_Tabelas_Vendas()
Private VSDGDTINI,NotaC,NotaI

;---- Em 01/09/2020 por Bruno Carvalho -----------------------------------------
If IsTable("NotaC") And IsTable("NotaI") 
   Then VSDGDTINI = DateVal("01.01.2018")
        
        {Ask} {NotaC}
        Moveto [Codigo da Empresa  ] Check 
        Moveto [Numero do Documento] Check 
        Moveto [Serie do Documento ] Check 
        Moveto [Data de Emissao    ] TypeIn ">=~VSDGDTINI"
        Moveto [Situacao           ] TypeIn "Not C"
        Moveto [Valor Servico      ] TypeIn ">0" 
        Do_It!
        ClearAll
        
        If Not IsEmpty("Answer")
           Then NotaC = Adiciona_Indice_Temp("Codigo da Empresa,Numero do Documento,Serie do Documento")
                
                {Ask} TypeIn NotaC Enter
                Moveto [Codigo da Empresa      ]       TypeIn "_CodE"
                Moveto [Numero do Documento    ]       TypeIn "_NumE"
                Moveto [Serie do Documento     ]       TypeIn "_SerE"
                {Ask} {NotaI}
                Moveto [Codigo da Empresa      ] Check TypeIn "_CodE"
                Moveto [Numero do Documento    ] Check TypeIn "_NumE"
                Moveto [Serie do Documento     ] Check TypeIn "_SerE"
                Moveto [Situacao_Item          ]       TypeIn "Not C"
                Moveto [Valor Desconto Total   ]       TypeIn "Calc Sum as Valor Desconto Total"
                Moveto [Preco Total            ]       TypeIn "Calc Sum as Preco Total"
                Do_It!
                ClearAll
                
                Delete NotaC
                NotaI = Adiciona_Indice_Temp("Codigo da Empresa,Numero do Documento,Serie do Documento")
                
                {Ask} TypeIn NotaI Enter
                Moveto [Codigo da Empresa        ] TypeIn "_CodE"
                Moveto [Numero do Documento      ] TypeIn "_NumE"
                Moveto [Serie do Documento       ] TypeIn "_SerE"
                Moveto [Valor Desconto Total     ] TypeIn "_VrD"
                Moveto [Preco Total              ] TypeIn "_PrT"
                
                {Ask} {NotaC}                  
                Moveto [Codigo da Empresa        ] TypeIn "_CodE"
                Moveto [Numero do Documento      ] TypeIn "_NumE"
                Moveto [Serie do Documento       ] TypeIn "_SerE"
                Moveto [Valor Servico            ] TypeIn "Changeto _PrT"
                Moveto [Valor Desconto Servico   ] TypeIn "Changeto _VrD"
                Moveto [Valor Servico Liquido    ] TypeIn "Changeto _PrT - _VrD"
                Moveto [Taxa de Desconto Servico ] TypeIn "Changeto Blank"
                Moveto [Valor do Desconto Servico] TypeIn "Changeto Blank"
                Do_It!
                ClearAll
                
                Delete NotaI
        EndIf        
EndIf

;---- Em 10/09/2020 por Bruno Carvalho -----------------------------------------
If IsTable("P_Balcao") 
   Then Array CAMPO[8]
        CAMPO[1]  = "NCE_Codigo do Docto"
        CAMPO[2]  = "NCE_Tipo do Docto"
        CAMPO[3]  = "NCE_Serie do Docto"
        CAMPO[4]  = "NCE Dup_Codigo do Docto"
        CAMPO[5]  = "NCE Dup_Tipo do Docto"
        CAMPO[6]  = "NCE Dup_Serie do Docto"
        CAMPO[7]  = "Grupo_eDoc"
        CAMPO[8]  = "Caminho_NCeManager"
   
        {Modify} {Restructure} {P_Balcao}
        For ty From 1 To ArraySize(CAMPO)
          Home
          Moveto [Field Name]
          Locate CAMPO[ty]
          If RetVal
             Then Del 
          EndIf 
        EndFor
        
        Do_It!
        While True
          If MenuChoice()="Trimming"
             Then {Trimming}
             Else If MenuChoice()="Delete"
                     Then {Delete}
                     Else QuitLoop
                  EndIf
          EndIf
        EndWhile
        ClearImage
        
        {Tools} {Copy} {JustFamily} TypeIn "\\Base\\Sistemas\\Vendas\\P_Balcao" Enter TypeIn "P_Balcao" Enter {Replace}
EndIf

;---- Em 29/09/2020 por Bruno Carvalho -----------------------------------------
If IsTable("FaturaCC")
   Then {Modify} {Restructure} {FaturaCC}
        Moveto [Field Name]
        Locate "Codigo Transp_Redespacho"
        If Not RetVal
           Then End Down
                "Codigo Transp_Redespacho"   Enter  "A4"   Enter
                "Razao Social Transp_Red"    Enter  "A40"  Enter
                "CGC Transp_Redespacho"      Enter  "A18"  Enter
                "End Transp_Redespacho"      Enter  "A40"  Enter
                "Bairro Transp_Redespacho"   Enter  "A20"  Enter
                "CEP Transp_Redespacho"      Enter  "A10"  Enter
                "Cidade Transp_Redespacho"   Enter  "A20"  Enter
                "UF Transp_Redespacho"       Enter  "A2"   Enter
        EndIf
        Do_It!
        ClearAll
        
        {Tools} {Copy} {JustFamily} TypeIn "\\Base\\Sistemas\\Vendas\\FaturaCC" Enter TypeIn "FaturaCC" Enter {Replace}
EndIf

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

;---- Em 30/09/2020 por Bruno Carvalho  ----------------------------------------
If IsTable("P_Nfce")
   Then {Modify} {Restructure} {P_Nfce}
        Moveto [Field Name]
        Locate "Altera_Tabela_Preco"
        If Not RetVal
           Then End Down
                "Altera_Tabela_Preco"   Enter  "A1"   Enter
        EndIf
        Do_It!
        ClearAll
        
        {Tools} {Copy} {JustFamily} TypeIn "\\Base\\Sistemas\\Vendas\\P_Nfce" Enter TypeIn "P_Nfce" 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

Correcao_Tabelas()
;-------------------------------------------------------------------------------

DATAM_ROTINA   = "ESTOQUE"
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      