;*******************************************************************************
;**          Menu do Sistema                                             *******
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 05/12/1995 por Anivel Augusto Rodrigues
;Ultima Alteracao: 17/03/2011 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes Novo execu‡Æo de DATAM.SC e DATAM?.SC versÆo titulo
;Ultima Alteracao: 12/05/2011 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes posicionamento janela nivel 3
;Ultima Alteracao: 08/06/2011 por Bruno Carvalho
;Motivo Alteracao: Ajustes Copiar Arj
;Ultima Alteracao: 20/06/2011 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes Xcopy execvise                  
;Ultima Alteracao: 27/06/2011 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes Mensagem e copia de arquivos *.exe do sistema
;Ultima Alteracao: 01/12/2011 por Bruno Carvalho
;Motivo Alteracao: Add rotina tempor ria para exclusao de programas no C:
;Ultima Alteracao: 02/12/2011 por Bruno Carvalho
;Motivo Alteracao: Nova regra de c¢pia dos programas VISE "c:\vise\"
;Ultima Alteracao: 07/12/2011 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes Message "" depois da execu‡Æo de um script
;Ultima Alteracao: 14/12/2011 por Bruno Carvalho
;Motivo Alteracao: Ajustes para copiar arquivos novos e excluir arquivos antigos  
;Ultima Alteracao: 15/12/2011 por Bruno Carvalho
;Motivo Alteracao: Retirado da rotina de inclusÆo o arquivo DLLINSCE32.DLL
;Ultima Alteracao: 17/12/2011 por Bruno Carvalho
;Motivo Alteracao: Ajustes visualiza‡äes de v¡deo e gr fico setadas em modo Windows
;Ultima Alteracao: 13/01/2012 por Karina Andrade
;Motivo Alteracao: Ajustes Data Modifica‡Æo VEXE
;Ultima Alteracao: 20/01/2012 por Bruno Carvalho
;Motivo Alteracao: Ajustado Mensagem "Erro ao Carregar"
;Ultima Alteracao: 25/01/2012 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustado Mensagem "Erro ao Carregar"
;Ultima Alteracao: 05/04/2012 por Anivel Augusto Rodrigues
;Motivo Alteracao: Inclusao Xcopy
;Ultima Alteracao: 20/04/2012 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes nova versÆo DOSPRINTER (VDPR) registrado p/ Vise Inform tica
;Ultima Alteracao: 10/05/2012 por Karina Andrade
;Motivo Alteracao: Ajustes Data Modifica‡Æo VEXE
;Ultima Alteracao: 25/05/2012 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes exclusao de NF*.TX2 do privdir()
;Ultima Alteracao: 20/08/2012 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes novo execvise "VEXE"             
;Ultima Alteracao: 24/08/2012 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes novo execvise "VEXE"             
;Ultima Alteracao: 21/09/2012 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes release vars e procs desnecesarias
;Ultima Alteracao: 08/10/2012 por Kamila Gomes
;Motivo Alteracao: Ajustes data do vgrf.exe
;Ultima Alteracao: 21/12/2012 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes Titulo barra superior e cor         
;Ultima Alteracao: 04/01/2013 por Anivel Augusto Rodrigues
;Motivo Alteracao: Inclusao SetMaxSize 256
;Ultima Alteracao: 05/01/2013 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes SYS_TITULO_MENU
;Ultima Alteracao: 08/11/2012 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes ExibeRodape()e LimpaRodape()
;Ultima Alteracao: 04/02/2013 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes SYS_COR_RODAPE
;Ultima Alteracao: 12/02/2013 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes Sound..                       
;Ultima Alteracao: 03/03/2013 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes cor desktop                   
;Ultima Alteracao: 05/04/2013 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes versao viserp barra menu superior
;Ultima Alteracao: 16/04/2013 por Anivel Augusto Rodrigues
;Motivo Alteracao: Inclusao de arquivos para conversÆo DB -> excel
;Ultima Alteracao: 24/04/2013 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes controle de cor
;Ultima Alteracao: 24/04/2013 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes barra titulo com o drive:
;Ultima Alteracao: 29/07/2013 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes data midas.dll  
;Ultima Alteracao: 23/09/2013 por Kamila
;Motivo Alteracao: Ajustes data VEXE            
;Ultima Alteracao: 27/09/2013 por Bruno Carvalho
;Motivo Alteracao: VersÆo VEXE alterado p/ a anterior 24.08.2012  
;Ultima Alteracao: 30/09/2013 por Kamila Gomes
;Motivo Alteracao: VersÆo VEXE 30.09.2013  
;Ultima Alteracao: 10/04/2013 por Bruno Carvalho
;Motivo Alteracao: Add MSG_Informativo()
;Ultima Alteracao: 04/08/2014 por Andrey Fillipe
;Motivo Alteracao: Alterado data do VEXE
;Ultima Alteracao: 26/08/2014 por Kamila Gomes
;Motivo Alteracao: Alterado data do VGRF
;Ultima Alteracao: 19/09/2014 por Kamila Gomes
;Motivo Alteracao: Alterado data do VGRF
;Ultima Alteracao: 01/10/2014 por Kamila Gomes
;Motivo Alteracao: Alterado data do VEXE
;Ultima Alteracao: 03/03/2015 por Bruno Carvalho
;Motivo Alteracao: Ajustes ao excluir itens como "temp" , ".tx2" na proc Inicializa()
;Ultima Alteracao: 13/03/2015 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes vexe.exe renomeado para xexe.exe          
;Ultima Alteracao: 29/07/2015 por Bruno Carvalho
;Motivo Alteracao: Alterado o processo da exclusao de arquivos temporarios, onde foi adicionado #Excluir_Arquivo#
;Ultima Alteracao: 31/12/2015 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes criado privdir() sys_Cor do sistema
;Ultima Alteracao: 16/09/2016 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes Modelo do Sistema                     
;Ultima Alteracao: 29/09/2016 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes Modelo do Sistema   
;Ultima Alteracao: 02/12/2016 por Kamila Gomes
;Motivo Alteracao: Alterado data do VEXE e Novas Dll's Consulta sintegra 
;Ultima Alteracao: 07/12/2016 por Kamila Gomes
;Motivo Alteracao: VersÆo do VCON 07.12.2016                  
;Ultima Alteracao: 27/12/2016 por Bruno Carvalho
;Motivo Alteracao: Ajustes no XEXE
;Ultima Alteracao: 08/02/2017 por Kamila Gomes
;Motivo Alteracao: VersÆo do VBMT 09.02.2017   
;Ultima Alteracao: 20/04/2017 por Kamila Gomes
;Motivo Alteracao: VersÆo do VCON 20.04.2017  
;Ultima Alteracao: 25/08/2016 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes desativar tecla alt+O (-24) ir ao prompt do DOS
;Ultima Alteracao: 15/09/2017 por Kamila Gomes
;Motivo Alteracao: VersÆo 15.09.2017 ViseMail.exe e ConfMail.exe
;Ultima Alteracao: 29/09/2017 por Kamila Gomes
;Motivo Alteracao: VersÆo 29.09.2017 ViseMail.exe e ConfMail.exe
;Ultima Alteracao: 03/10/2017 por Kamila Gomes
;Motivo Alteracao: Copiar LIBEAY32.DLL, SSLEAY32.DLL e OPENSSL.EXE pa pasta vise
;Ultima Alteracao: 02/10/2017 por Kamila Gomes
;Motivo Alteracao: VersÆo 02.10.2017 vcon.exe
;Ultima Alteracao: 18/10/2017 por Kamila Gomes
;Motivo Alteracao: VersÆo 18.10.2017 xexe.exe
;Ultima Alteracao: 30/10/2017 por Kamila Gomes
;Motivo Alteracao: VersÆo 26.10.2017 viseMail.exe
;Ultima Alteracao: 22/11/2017 por Kamila Gomes
;Motivo Alteracao: VersÆo 22.11.2017 ViseMail.exe e ConfMail.exe
;Ultima Alteracao: 20/12/2017 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes habitar/desabilitar alt+o   
;Ultima Alteracao: 08/01/2018 por Kamila Gomes
;Motivo Alteracao: VersÆo 08.01.2018 ViseMail.exe e ConfMail.exe   
;Ultima Alteracao: 11/01/2018 por Kamila Gomes
;Motivo Alteracao: VersÆo 11.01.2018 ViseMail.exe
;Ultima Alteracao: 12/01/2018 por Kamila Gomes
;Motivo Alteracao: VersÆo 12.01.2018 ViseMail.exe  e ConfMail.exe
;Ultima Alteracao: 22/02/2018 por Kamila Gomes
;Motivo Alteracao: VersÆo 22.02.2018 ViseMail.exe
;Ultima Alteracao: 15/03/2018 por Kamila Gomes
;Motivo Alteracao: VersÆo 15.03.2018 VCON.exe
;Ultima Alteracao: 18/05/2018 por Kamila Gomes
;Motivo Alteracao: VersÆo 18.05.2018 xexe.exe
;Ultima Alteracao: 28/05/2018 por Kamila Gomes
;Motivo Alteracao: VersÆo 28.05.2018 vgrf.exe
;Ultima Alteracao: 05/06/2018 por Kamila Gomes
;Motivo Alteracao: VersÆo 05.06.2018 ViseMail.exe
;Ultima Alteracao: 09/08/2018 por Kamila Gomes
;Motivo Alteracao: VersÆo 09.08.2018 VCON.exe
;Ultima Alteracao: 03/10/2018 por Kamila Gomes
;Motivo Alteracao: VersÆo 03.10.2018 VCON.exe
;Ultima Alteracao: 14/12/2018 por Kamila Gomes
;Motivo Alteracao: VersÆo 14.12.2018 xexe.exe
;Ultima Alteracao: 12/01/2018 por Kamila Gomes
;Motivo Alteracao: VersÆo 02.08.2018 ViseMail.exe  e 21.05.2018 ConfMail.exe
;Ultima Alteracao: 04/06/2019 por Kamila/Bruno
;Motivo Alteracao: Ajustes p/ Atualiza_Log() ser processado ap¢s play "SaveVars"                                

Release Vars All               
Release Procs All
AutoLib="\\Sistemas\\Cadastro\\Bibliot,\\Sistemas\\Cadastro\\Bib_Show"
ErrorProc = "ErroValid"                                           

;-- Carregando cor do sistema --------------------------------------------------
SYS_COR="CINZA"
If IsFile(PrivDir()+"SYS_COR.sc")
   Then FileRead PrivDir()+"SYS_COR.sc" to Linha
        if searchfrom("SYS_COR=",linha,1)>0
           then pos=searchfrom("=",linha,1)  
                if pos>0
                   then SYS_COR=Ltrim(Rtrim(substr(linha,pos+1,30)))
                        SYS_COR=substr(sys_Cor,1,len(sys_Cor)-1)
                endif
        endif   
        release vars linha, pos
endif    

SetaCor_Sistema()
;-------------------------------------------------------------------------------

Limpa(0,0)
LimpaRodape(1)
ExibeRodape(2," Iniciando !!")
;12345678901234567890123456789012345678901234567890123456789012345678901234567890
;- 1234567890| 123456789012345678901234| X:| 1234.X| 1234/12| 123456| 12345678 

SYS_SISTEMA    ="VISERP"
SYS_TITULO_MENU=Chr(061)+" "+Format("W11",SYS_SISTEMA)+"| "+Format("W23,AL","Vise Inform tica")+"| "+Upper(SubSTr(Directory(),1,2))+"| "

ShowPullDown
  SYS_TITULO_MENU : "" : ""
EndMenu                                       

;;;Play "\\Sistemas\\Cadastro\\VerExec"

Play "\\Sistemas\\Cadastro\\Splash"

LimpaRodape(1)
ExibeRodape(2," Carregando Sistema !!")

;*******************************************************************************
;*           Rotina Inicializacao                                              *
;*******************************************************************************
Proc Inicializa()

;-------------------- Inicializacao ------------------------------------------
If IsRunTime()
   Then 
        KeyDisable "CtrlBreak"
        KeyDisable -24
   Else 
        KeyEnable "CtrlBreak"
        KeyEnable -24           
EndIf
SetMaxSize 256

;-------------------- Checagem Empresa ---------------------------------------

LimpaRodape(1)
ExibeRodape(2,"Carregando "+Barra(13, 1)+"  Verificando registro empresa")

If IsFile("\\Sistemas\\Cadastro\\SysTable.sc")
   Then
        SYS_CODIGO_CLIENTE=""
        SYS_CLIENTE_CONFEC=""

        NOMEMPRESA="Sistema n„o Autorizado p/ uso pela Vise !!"

        Play "\\Sistemas\\Cadastro\\SysTable"

        AutoLib="\\Sistemas\\Cadastro\\Bibliot"

        SYS_TITULO_MENU=Chr(061)+" "+Format("W11",SYS_SISTEMA)+"| "+Format("W23,AL",NOMEMPRESA)        +"| "+
                                     Upper(SubSTr(Directory(),1,2))+"| "+SubStr(SYS_VERSAO_VISERP,1,6)+"| "
        
        ShowPullDown
          SYS_TITULO_MENU : "" : ""
        EndMenu                                       

   Else Play "\\Sistemas\\Cadastro\\InfoErro"
        Exit
EndIf

;-------------------- Copiando arquivos de trabalho --------------------------
LimpaRodape(0)
ExibeRodape(2,"Carregando "+Barra(13, 2)+"  Copiando arquivos de trabalho")

{Tools} {Net} {Changes} {Restart}
DynArray RelArq[]

RelArq[01]="F|14.12.2018|XEXE.EXE"       ;ExecVise
RelArq[02]="F|23.06.2005|VARJ.EXE"       ;Arj   
RelArq[03]="F|19.04.2012|VDPR.EXE"       ;DosPrinter
RelArq[04]="F|23.05.2005|VPRL.EXE"       ;PrnList
RelArq[05]="F|28.05.2018|VGRF.EXE"       ;ViseGraf
RelArq[06]="F|15.07.2009|VZBR.JPG"       ;Zebra  
RelArq[07]="F|15.07.2009|VZ.JPG"         ;Z    
RelArq[08]="F|18.11.2009|VIMG.EXE"       ;ViseImg
RelArq[09]="F|02.11.2009|MIDAS.DLL"
RelArq[10]="F|23.05.2006|VABC.EXE"       ;Abcprdox
RelArq[11]="F|99.99.9999|XCOPY.EXE"      ;Xcopy (DOS)
RelArq[12]="F|10.11.2011|LIBXL.DLL"      ;DLL PXCNV   
RelArq[13]="F|15.04.2013|VPXC.EXE"       ;pxcnv 
;----- DLL's Consulta Sintegra
RelArq[14]="F|02.06.2016|ICONV.DLL" 
RelArq[15]="F|02.06.2016|LIBEAY32.DLL"
RelArq[16]="F|02.06.2016|LIBXML2.DLL" 
RelArq[17]="F|02.06.2016|LIBXMLSEC.DLL" 
RelArq[18]="F|02.06.2016|LIBXSLT.DLL" 
RelArq[19]="F|02.06.2016|OPENSSL.EXE"
RelArq[20]="F|02.06.2016|SSLEAY32.DLL"
RelArq[21]="F|02.06.2016|ZLIB1.DLL" 
RelArq[22]="F|03.10.2018|VCON.EXE" 
;------ DLL Etiqueta Bematech 
RelArq[23]="F|09.02.2017|VBMT.EXE"       
RelArq[24]="F|20.07.2010|TSCLIB.DLL"
;----- EXE's ViseMail
RelArq[25]="F|02.08.2018|VISEMAIL.EXE"       
RelArq[26]="F|21.05.2018|CONFMAIL.EXE"

MSG  =""               
LINHA=""
For i From 1 to DynArraySize(RelArq)
  s1=Upper(SubStr(RelArq[i],14,30))
  dta=BlankDate()
  
  For c From 1 to 3
    Switch
      Case s1="MIDAS.DLL"     Or
           s1="ICONV.DLL"     Or
           s1="LIBXML2.DLL"   Or
           s1="LIBXSLT.DLL"   Or
           s1="ZLIB1.DLL"       :
       {Tools} {Info} {Inventory} {Files} TypeIn "c:\\Windows\\System32\\"+s1 Enter
      
      Case s1="LIBEAY32.DLL"  Or
           s1="SSLEAY32.DLL"  Or
           s1="OPENSSL.EXE"   :
       {Tools} {Info} {Inventory} {Files} TypeIn "c:\\Windows\\System32\\"+s1 Enter    
       {Tools} {Info} {Inventory} {Files} TypeIn "c:\\vise\\"+s1 Enter    
      
      Case s1="XCOPY.EXE":
       {Tools} {Info} {Inventory} {Files} TypeIn "c:\\Windows\\System32\\"+s1 Enter
      Case s1="LIBXMLSEC.DLL" : ;NÆo precisa Checar se existe, nome grande
      OtherWise:
       {Tools} {Info} {Inventory} {Files} TypeIn "c:\\vise\\"+s1 Enter
    EndSwitch
    
    If s1<>"LIBXMLSEC.DLL"
      Then
            Scan For [Name]<>"" 
              If Upper([Name])=s1                     
                 Then                                
                      dta=DateVal(SubStr(RelArq[i],3,10))
        
                      Switch
                        Case s1="MIDAS.DLL"  :
                          If [Date]>=dta
                             Then RelArq[i]="T"+SubStr(RelArq[i],2,50)
                          EndIf
        
                        OtherWise          :
                          If [Date]=dta
                             Then RelArq[i]="T"+SubStr(RelArq[i],2,50)
                          EndIf
        
                      EndSwitch
                      If Upper([Name])="XCOPY.EXE"
                         Then RelArq[i]="T"+SubStr(RelArq[i],2,50)
                      EndIf
                      
                      If Upper([Name])="ICONV.DLL"     Or
                         Upper([Name])="LIBEAY32.DLL"  Or
                         Upper([Name])="LIBXML2.DLL"   Or
                         Upper([Name])="LIBXSLT.DLL"   Or
                         Upper([Name])="OPENSSL.EXE"   Or
                         Upper([Name])="SSLEAY32.DLL"  Or
                         Upper([Name])="ZLIB1.DLL"       
                         Then RelArq[i]="T"+SubStr(RelArq[i],2,50)
                      EndIf
                      QuitLoop   
              EndIf   
            EndScan
            ClearImage
            
            If SubStr(RelArq[i],1,1)="T" or c=3
               Then QuitLoop
            EndIf 
      Else RelArq[i]="T"+SubStr(RelArq[i],2,50)  
    EndIf

    s2=s1
    Switch
      Case s1="XEXE.EXE":
           comando="\\Sistemas\\Cadastro\\Xexe Cop \\Sistemas\\Cadastro\\Xexe.exe c:\\vise\\XEXE.exe /y"
           @ 22,00 Run NoRefresh comando
           Sleep(1000)
      
      Case s1="MIDAS.DLL"     Or
           s1="ICONV.DLL"     Or
           s1="LIBXML2.DLL"   Or
           s1="LIBXMLSEC.DLL" Or
           s1="LIBXSLT.DLL"   Or
           s1="ZLIB1.DLL"       : 
           Copia_Arquivo("\\Sistemas\\Cadastro\\"+s1+" c:\\WINDOWS\\SYSTEM32\\"+S1) 
           
      Case s1="LIBEAY32.DLL"  Or  
           s1="SSLEAY32.DLL"  Or
           s1="OPENSSL.EXE"   :
           Copia_Arquivo("\\Sistemas\\Cadastro\\"+s1+" c:\\vise\\"+S1) 
           Copia_Arquivo("\\Sistemas\\Cadastro\\"+s1+" c:\\WINDOWS\\SYSTEM32\\"+S1) 
             
      Case s1="XCOPY.EXE": ;nÆo pode copiar automaticamente tem que ser da versÆo do windows 
      OtherWise:
           Copia_Arquivo("\\Sistemas\\Cadastro\\"+s1+" c:\\vise\\"+s1)
    EndSwitch
  EndFor
  
  If SubStr(RelArq[i],1,1)="F"
     Then If Len(LINHA+s2)>60
             Then MSG=MSG+LINHA+" //"
                  LINHA=""
          EndIf
          If MSG<>"" Or LINHA<>""
             Then LINHA=LINHA+", "
          EndIf      
          LINHA=LINHA+Upper(s2)+" "+Format("D13",dta)
  EndIf  
EndFor
                               
If MSG<>"" Or LINHA<>""
   Then MSG=MSG+LINHA+" // //"
        MSG=MSG+"Estes arquivos citados sÆo necess rios para a utiliza‡Æo do sistema.// //"
        MSG=MSG+"NÆo foi poss¡vel copi -los para  'C:\\Vise\\'  devido a  configura‡Æo//"
        MSG=MSG+"de seguran‡a para este computador ou o bloqueio do o antiv¡rus.     // //"
        MSG=MSG+"Verificar com o suporte da Vise !"
        Mensagem(MSG)
EndIf   
Release Vars RelArq,i,c,s1,s2,dta,MSG,LINHA

;----------- Excluindo Arquivos Executaveis Antigos ------------------- Retirar essa rotina em 03.03.2011
;
;VSDGDRIVE=SubStr(Directory(),1,2)
;DynArray Diretorio_ARQ[]
;Diretorio_ARQ[1]="c:\\vise\\"
;Diretorio_ARQ[2]=VSDGDRIVE+"\\Sistemas\\Cadastro\\"
;
;DynArray Arquivo_Exclusao[] 
;Arquivo_Exclusao[01]="EXECVISE.EXE"  
;Arquivo_Exclusao[02]="ARJ.EXE"  
;Arquivo_Exclusao[03]="DOSPRI~1.EXE"   
;Arquivo_Exclusao[04]="PRNLIST.EXE"   
;Arquivo_Exclusao[05]="VISEGRAF.EXE" 
;Arquivo_Exclusao[06]="ZEBRA.JPG" 
;Arquivo_Exclusao[07]="Z.JPG"     
;Arquivo_Exclusao[08]="VISEIMG.EXE"   
;Arquivo_Exclusao[09]="DOSPRINTER.EXE"
;Arquivo_Exclusao[10]="ABCPRDOX.EXE"
;
;
;For WAC From 1 To 2
;  If IsFile(Diretorio_ARQ[WAC]+"ExcProg.txt")
;     Then Loop
;     Else For wi From 1 to DynArraySize(Arquivo_Exclusao)
;            Switch
;              Case WAC=1 : Deleta_Arquivo("C:\\"+Arquivo_Exclusao[wi])
;              Case WAC=2 : Deleta_Arquivo(Diretorio_ARQ[WAC]+Arquivo_Exclusao[wi])  
;            EndSwitch
;          EndFor  
;          
;          ARQ=Diretorio_ARQ[WAC]+"ExcProg.txt"
;          Print File ARQ ""
;          Close Printer
;  EndIf
;EndFor                
;
;Release Vars Arquivo_Exclusao, wi, wac
                      
;-------------------- Executando Atualizacao ---------------------------------
LimpaRodape(0)
ExibeRodape(2,"Carregando "+Barra(13, 3)+"  Verificando atualiza‡”es")

{Tools} {Info} {Inventory} {Files} {datam*.sc} ClearImage 

DynArray Array_Datams[]

cdatam=0
View "List"
Scan
  cdatam=cdatam+1
  Array_Datams[cdatam]=[Name]   
EndScan
ClearIMage

If cdatam>0
   Then Letra=""
        For cdatam2 From 1 To cdatam 
          Letra=SubStr(Array_Datams[cdatam2],6,1)       ;12345678
          If Letra="." Then Letra="" EndIf              ; significa DATAM.SC
          
          Play "\\Sistemas\\Cadastro\\Datam"+Letra
          Deleta_Arquivo("\\Sistemas\\Cadastro\\Datam"+Letra+".sc")
        EndFor
        Release Vars Letra, cdatam2
        
        Deleta_Arquivo("\\Sistemas\\Cadastro\\Datam*.sc2")
EndIf
Release Vars Array_Datams, cdatam
                                       
;-- Antigo ---------------------------------------------------------------------
;;;Letra=""
;;;for wx From 1 to 24
;;;  If IsFile("\\Sistemas\\Cadastro\\Datam"+Letra+".sc")
;;;     Then Message("Atualizando Pacote ["+Letra+"]")
;;;          Play "\\Sistemas\\Cadastro\\Datam"+Letra
;;;          Deleta_Arquivo("\\Sistemas\\Cadastro\\Datam"+Letra+".sc")
;;;     Else QuitLoop
;;;  EndIf
;;;  Letra=CHR(64+wx)
;;;endFor
;;;Release Vars Letra

;-------------------- Checagem Usuario ---------------------------------------

Password "t01avivcl"

LimpaRodape(0)
ExibeRodape(2,"Carregando "+Barra(13, 4)+"  Identifica‡„o de usu rio")

If IsFile("\\Sistemas\\Cadastro\\Senha.Sc")
   Then Play "\\Sistemas\\Cadastro\\Senha"
   Else Play "\\Sistemas\\Cadastro\\InfoErro"
        Exit
EndIf

;-------------------- Configurando Ambiente/Usuario --------------------------

;-------------------- Dados p/ Empresa Padrao --------------------------------
LimpaRodape(0)
ExibeRodape(2,"Carregando "+Barra(13, 8)+"  Verificando empresa padr„o")

Password "t01avivcl"
SYS_TECLA_ACIONADA =""
SYS_EMPRESA_DEFAULT=""
SYS_NOMEMP_DEFAULT =""
If Not IsEmpty("\\Sistemas\\Cadastro\\Empresas")
   Then View NoWindow "\\Sistemas\\Cadastro\\Empresas"
        Scan For Not IsBlank([Padrao do Sistema])
             SYS_EMPRESA_DEFAULT=[Codigo da Empresa    ]
             SYS_NOMEMP_DEFAULT =[Nome Fantasia Empresa]
        EndScan
        ClearImage
EndIf

;-------------------- Impressora/Video Padrao --------------------------------
LimpaRodape(0)
ExibeRodape(2,"Carregando "+Barra(13, 9)+"  Configurando V¡deo e Impressora")

Sys_Set_Impressora  = "\015"
Sys_ReSet_Impressora= "\018"
Sys_Set_Porta       = "LPT1"
If IsFile(PrivDir()+"Cfg_Imp.sc")
   Then Play PrivDir()+"Cfg_Imp"
EndIf

Sys_Set_Video  ="01C  Padr„o    80x25"
Sys_ReSet_Video="01C  Padr„o    80x25"
Sys_Visualiza_Grafico="WIN"
Sys_Visualiza_Relatorio="WIN"

DRIVE=SubStr(Directory(),1,2)

;-------------------- Cores ShowDialog ---------------------------------------
LimpaRodape(0)
ExibeRodape(2,"Carregando "+Barra(13,10)+"  Configurando cores")

GetColors To NewColors
NewColors[3]=47
NewColors[1058]=110
SetColors From NewColors
Release Vars NewColors

Excluir_Arquivo(PrivDir(),"Tem,Tmp,Sor,Res,NF,TEMP_,TMP_","")

LimpaRodape(0)
ExibeRodape(2,"Carregando "+Barra(13,12)+"  Verificando impressoras")

Ler_Captura("")

LimpaRodape(0)
ExibeRodape(2,"Carregando "+Barra(13, 13)+"  Montando menu")

SYS_DTINI=BlankDate()
SYS_DTFIM=BlankDate()
Endproc

;*******************************************************************************
;*           Rotina Principal                                                  *
;*******************************************************************************
Inicializa()

If SYS_NIVEL_USUARIO="S"
   Then MSG_Informativo()
EndIf   

Window Close

Release Vars vl01, vl02, vl03, vl04, vl05, vl06, vl07, vl08, vl09,
        Barra_String 

;--- Salva dados VISERP ---------------------------------------------------------------
sys_viserp =sys_viserp +1
sys_cviserp=sys_cviserp+1

Switch
  Case sys_cviserp=27: sys_cviserp=28
  Case sys_cviserp=29: sys_cviserp=30
EndSwitch

FileWrite        PrivDir()+"cfgerp.sc" From "sys_viserp ="+StrVal(sys_viserp )+Chr(13)
FileWrite Append PrivDir()+"cfgerp.sc" From "sys_cviserp="+StrVal(sys_cviserp)+Chr(13)
;--------------------------------------------------------------------------------------

Release Procs All

AutoLib="\\Sistemas\\Cadastro\\BIBMENU"
ErrorProc = "ErroValid"
SetAutoSave 15

Cursor Off
LIMPA(0,0)
ow=1
lw=3

While True
  Mouse Show
  Cursor Off

  NIVEL_MENU=1
  VOLTA_MENU=False

  tcesc=false
  WX = 1

  EventoOrigem=""
  PRIMENU()
  If WX=9 OR WX=8
     Then Quitloop
     Else
          ow=ot
          lw=lj
          If TpComando[OT]="S"
             Then While True
                     If IsFile(Diretorio[OT]+Script[OT]+".sc")
                        Then 
                             LimpaRodape(1)
                             Aguarde("Aguarde, carregando tarefa")
                             
                             Grava_Log("")
                             Limpa(0,0)
                             MontaTitulo_Menu(Script[OT])
                             SYS_TECLA_ACIONADA=""
                             SaveVars All
                             AutoLib="\\Sistemas\\Cadastro\\Bibliot"
                             ErrorProc="ErroValid"
                             SetDir Diretorio[OT]
                             
                             Cursor Normal
                             KeyDisable -24   
                             
                             If Script[OT]="Senha"
                                Then Play "Senha"
                                     If Retorno_Senha
                                        Then ClearAll
                                             AutoLib="\\Sistemas\\Cadastro\\BibMenu"
                                             WX=4
                                             ow=1
                                             lw=3
                                     EndIf            
                                                 
                                Else If Upper(SubStr(Script[OT],1,3))="RC_" Or
                                        Upper(SubStr(Script[OT],1,3))="RM_" Or
                                        Upper(SubStr(Script[OT],1,3))="GR_"
                                        Then {Tools} {Net} {AutoRefresh} {60}
                                     EndIf

                                     Play Script[OT]
                                     {Tools} {Net} {AutoRefresh} {3}
                                     Retorno_Senha=False
                             EndIf

                             Cursor Off
                             KeyDisable -24
                             Message ""
                             If Not Retorno_Senha
                                Then Release Vars All
                                     Release Procs All

                                     Play "SaveVars"
                                     Atualiza_Log()
                                     ClearAll
                                     
                             EndIf

                             SetDir SYS_DIR_USUARIO
                             Mouse Show
                             If Not IsBlank(SYS_TECLA_ACIONADA)
                                Then If TeclaAtalho(NumVal(sys_tecla_acionada))
                                        Then Loop
                                     EndIf
                             EndIf

                             ClearAll
                             LIMPA(0,0)
                             QuitLoop

                        Else MENSAGEM("Erro ao carregar !//Altere a Tecla de Atalho !")
                             QuitLoop
                     EndIf
                  EndWhile
                  Loop
          EndIf
  EndIf

  primeiraocorrencia=true

  oy=1
  ly=3
  While True
    Mouse Show

    NIVEL_MENU=2
    WX=1
    SUBSMENU()
    tcesc=false
    If WX=9
       Then LIMPA((ls-1),cd)
            QuitLoop
       Else
            oy=ot
            ly=lj
            If TpComando[OT]="S"
               Then While True
                       If IsFile(Diretorio[OT]+Script[OT]+".sc")
                          Then 
                               LimpaRodape(1)
                               Aguarde("Aguarde, carregando tarefa")
                             
                               Grava_Log("")
                               Limpa(0,0)
                               MontaTitulo_Menu(Script[OT])
                               SYS_TECLA_ACIONADA=""
                               SaveVars All
                               AutoLib="\\Sistemas\\Cadastro\\Bibliot"
                               ErrorProc="ErroValid"
                               SetDir Diretorio[OT]

                               Cursor Normal
                               KeyDisable -24
                               If Script[OT]="Senha"
                                  Then Play "Senha"
                                       If Retorno_Senha
                                          Then ClearAll
                                               AutoLib="\\Sistemas\\Cadastro\\BibMenu"
                                               WX=4
                                               ow=1
                                               lw=3
                                       EndIf

                                  Else If Upper(SubStr(Script[OT],1,3))="RC_" Or
                                          Upper(SubStr(Script[OT],1,3))="RM_" Or
                                          Upper(SubStr(Script[OT],1,3))="GR_"
                                          Then {Tools} {Net} {AutoRefresh} {60}
                                       EndIf

                                       Play Script[OT]
                                       {Tools} {Net} {AutoRefresh} {3}
                                       Retorno_Senha=False

                               EndIf

                               Cursor Off
                               KeyDisable -24
                               Message ""
                               If Not Retorno_Senha
                                  Then Release Vars All
                                       Release Procs All
                                       
                                       Play "SaveVars"
                                       Atualiza_Log()
                                       ClearAll
                               EndIf

                               SetDir SYS_DIR_USUARIO
                               Mouse Show
                               If Not IsBlank(SYS_TECLA_ACIONADA)
                                  Then If TeclaAtalho(NumVal(sys_tecla_acionada))
                                          Then Loop
                                       EndIf
                               EndIf

                               ClearAll
                               LIMPA(0,0)
                               QuitLoop

                          Else MENSAGEM("Erro ao carregar !")
                               QuitLoop
                       EndIf
                    EndWhile
                    If WX=4
                       Then QuitLoop
                       Else Loop
                    EndIf
            EndIf
    EndIf
    
    
    ox=1
    lx=3 
    While True
      Mouse Show

      NIVEL_MENU=3
      tcesc=false
      LS=03
      CD=32
      PROCESSO()
      If WX=9
         Then If (SYS_NIVEL_USUARIO="P" Or SYS_NIVEL_USUARIO="E")
                 Then Mensagem("Op‡„o n„o configurada pelo Supervisor, Verificar !")
                 Else Mensagem("Op‡„o n„o configurada !")
              EndIf
         Else ot=ox
              lj=lx
              PosCursor()

              WX=0
              MOVER()
      EndIf
      If WX<>9
         Then While True
                ox=ot
                lx=lj

                If IsFile(Diretorio[OT]+Script[OT]+".sc")
                   Then 
                        LimpaRodape(1)
                        Aguarde("Aguarde, carregando tarefa")
                             
                        Grava_Log("")
                        Limpa(0,0)
                        MontaTitulo_Menu(Script[OT])
                        SYS_TECLA_ACIONADA=""
                        SaveVars All
                        AutoLib="\\Sistemas\\Cadastro\\Bibliot"
                        ErrorProc="ErroValid"
                        SetDir Diretorio[OT]

                        Cursor Normal 
                        KeyDisable -24
                        If Script[OT]="Senha"
                           Then Play "Senha"
                                If Retorno_Senha
                                   Then ClearAll
                                        AutoLib="\\Sistemas\\Cadastro\\BibMenu"
                                        WX=4
                                        ow=1
                                        lw=3

                                        SetDir SYS_DIR_USUARIO
                                        QuitLoop
                                EndIf

                           Else If Upper(SubStr(Script[OT],1,3))="RC_" Or
                                   Upper(SubStr(Script[OT],1,3))="RM_" Or
                                   Upper(SubStr(Script[OT],1,3))="GR_"
                                   Then {Tools} {Net} {AutoRefresh} {60}
                                EndIf

                                Play Script[OT]
                                {Tools} {Net} {AutoRefresh} {3}
                                Retorno_Senha=False

                        EndIf

                      Cursor off
                      KeyDisable -24
                      Message ""
                      If Not Retorno_Senha
                           Then Release Vars All
                                Release Procs All

                                Play "SaveVars"
                                Atualiza_Log()
                                ClearAll
                        EndIf

                        SetDir SYS_DIR_USUARIO
                        Mouse Show
                        If Not IsBlank(SYS_TECLA_ACIONADA)
                           Then If TeclaAtalho(NumVal(sys_tecla_acionada))
                                   Then Loop
                                EndIf
                        EndIf

                        ClearAll
                        NIVEL_MENU=2
                        LIMPA(0,0)
                        Principal()
                        Tabela=TabSel
                        OPCAO=OpcAnt
                        PROCESSO()

                        WC=OTA-(LJA-LS)
                        DISPLAYJ()
                        LJ=LJA
                        OT=OTA
                        Cor_N(OT, LJ)
                        Tabela=TabM
                        Opcao=OpcM

                        QuitLoop
                   Else MENSAGEM("Erro ao carregar !//Verificar com o Suporte Vise !")
                        QuitLoop
                EndIf

              EndWhile
         Else Tabela=TabSel
              OPCAO=OPCANT
              LIMPA((ls-1),cd)
              tcesc=True
              QuitLoop
      EndIf
      If WX=4
         Then QuitLoop
      EndIf
    EndWhile
    If WX=4
       Then QuitLoop
    EndIf
  EndWhile
EndWhile
ClearAll
SetDir "\\Sistemas\\Cadastro"

Exclui_Log()
Grava_Log("* FINALIZADO SISTEMA")

Release Vars All
Release Procs All
{Tools} {More} {Protect} {ClearPasswords}
