;** EXC_BK *********************************************************************
;*  ExclusÆo de Backups realizados no sistema                                  *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 30/03/2015 por Bruno Carvalho
;Ultima Alteracao:   /  /     por 
;Motivo Alteracao: 

;*******************************************************************************
;* Rotina para Listar Diret¢rio                                                *
;*******************************************************************************
Proc Diretorios()
Private wc

Lista_Diretorio(DIRETORIO)
wc = 0
wi = 0
While wc<DynArraySize(Array_Lista_Diretorios)
  wc = wc+1
  DIR_TEMP = Upper(Array_Lista_Diretorios[wc])
  Aguarde("Aguarde, Verificando Pastas "+DIR_TEMP)
  Verifica_Scripts()
  Verifica_Tabelas()
EndWhile

Release Vars Array_Lista_Diretorios

EndProc ;Diretorios()

;*******************************************************************************
;* Rotina para Excluir Scripts em desuso                                       *
;*******************************************************************************
Proc Verifica_Scripts()

TIPO_EXCLUSAO = "SCRIPT"

{Tools} {Info} {Inventory} {Scripts} TypeIn DIRETORIO + DIR_TEMP Enter ClearImage

View "List"
Scan For (([Date] <= DATA_PROC) And 
          ((Upper(SubStr([Name],1,1))="A" And Type(NumVal(SubStr([Name],2,1)))="N")   Or  ;A1
           (Upper(SubStr([Name],1,2))="BK")                                           Or  ;BK
           (Upper(SubStr([Name],1,3))="DAT" And Type(NumVal(SubStr([Name],4,1)))="N") Or  ;DAT0
           (Upper(SubStr([Name],1,2))="XX")                                           Or  ;XX
           (Upper(SubStr([Name],1,1))="X" And Type(NumVal(SubStr([Name],2,1)))="N")       ;X1
          )
         )
  Aguarde("Aguarde, excluindo arquivos tempor rios "+Upper([Name]))
  If IsFile(DIRETORIO + DIR_TEMP + "\\" + [Name] + ".sc")
     Then {Tools} {Delete} {Script} TypeIn DIRETORIO + DIR_TEMP + "\\" + [Name] Enter {Ok}
          If wi = 0
             Then wi = 1
                  Cabecalho() 
          EndIf
          LINHA = LINHA + 1 
          Print File ARQIMP Spaces(2)+Format("W15",TIPO_EXCLUSAO)+Spaces(2)+Format("W9",Upper(DIR_TEMP))+Spaces(2)+Format("W8",Upper([Name]))+"\n"
          If LINHA >= 64
             Then Print File ARQIMP "\f"
                  Cabecalho()          
          EndIf
  EndIf
EndScan
ClearAll
EndProc ;Verifica_Scripts()     

;*******************************************************************************
;* Rotina para Excluir Scripts em desuso                                       *
;*******************************************************************************
Proc Verifica_Tabelas()

TIPO_EXCLUSAO = "TABELA"

{Tools} {Info} {Inventory} {Tables} TypeIn DIRETORIO + DIR_TEMP Enter ClearImage

View "List"
Scan For (([Date] <= DATA_PROC) And 
          ((Upper(SubStr([Name],1,1))="A" And Type(NumVal(SubStr([Name],2,1)))="N")   Or  ;A1
           (Upper(SubStr([Name],1,2))="BK")                                           Or  ;BK
           (Upper(SubStr([Name],1,3))="DAT" And Type(NumVal(SubStr([Name],4,1)))="N") Or  ;DAT0
           (Upper(SubStr([Name],1,2))="XX")                                           Or  ;XX
           (Upper(SubStr([Name],1,1))="X" And Type(NumVal(SubStr([Name],2,1)))="N")       ;X1
          )
         )
   If IsTable(DIRETORIO + DIR_TEMP + "\\" + [Name])
      Then Aguarde("Aguarde, excluindo arquivos tempor rios "+Upper([Name]))
           {Tools} {Delete} {Table} TypeIn DIRETORIO + DIR_TEMP + "\\" + [Name] Enter {Ok}
           If wi = 0
              Then wi =1
                   Cabecalho() 
           EndIf
           LINHA = LINHA + 1 
           Print File ARQIMP Spaces(2)+Format("W15",TIPO_EXCLUSAO)+Spaces(2)+Format("W9",Upper(DIR_TEMP))+Spaces(2)+Format("W8",Upper([Name]))+"\n"
           If LINHA >= 64
              Then Print File ARQIMP "\f"
                   Cabecalho()          
           EndIf
  EndIf
EndScan
ClearAll

EndProc ;Verifica_Scripts()      

;*******************************************************************************
;* Rotina para impressao dos arquivos excluidos - CABECALHO                    *
;*******************************************************************************
Proc Cabecalho()

Print File ARQIMP Chr(27)+Chr(120)+Chr(48)+Chr(18)
Print File ARQIMP "\n\n"
Print File ARQIMP Spaces(2)+Fill("-",77)+"\n"
Print File ARQIMP Spaces(2)+Format("W77,AC","LISTAGEM DE ARQUIVOS EXCLUIDOS")+"\n"
Print File ARQIMP Spaces(2)+Fill("-",77)+"\n\n"
Print File ARQIMP Spaces(2)+"Tipo de Arquivo  Diret¢rio  Arquivo "+"\n"
Print File ARQIMP Spaces(2)+"---------------  ---------  --------"+"\n"

LINHA = 8

EndProc ;Cabecalho()
                       
;*******************************************************************************
;* Rotina Principal                                                            *
;*******************************************************************************
AutoLib="\\Sistemas\\Cadastro\\Bibliot,\\Sistemas\\Cadastro\\Bib_Show"
SYS_Valor()
If Not IsAssigned(SYS_CODIGO_CLIENTE)  Then SYS_CODIGO_CLIENTE=""    EndIf
If Not IsAssigned(SYS_CLIENTE_CONFEC)  Then SYS_CLIENTE_CONFEC=""    EndIf

ConfGeral("Deseja realizar o processo de exclus„o de arquivos tempor rios ?")
If OK <> "S"
   Then Return
EndIf   

ARQIMP=PrivDir()+"EXC_ARQ.Txt"
If IsFile(ARQIMP)
   Then Deleta_Arquivo(ARQIMP)
EndIf

TIPO_EXCLUSAO = ""
DATA_PROC = DateVal(SubStr(Today(),1,6)+StrVal(NumVal(SubStr(Today(),7,4))-1))  ; Data de Processamento  
DIRETORIO = SubStr(Directory(),1,2)+"\\Sistemas\\"
Diretorios()

If IsFile(ARQIMP)
   Then ConfGeral("Deseja visualizar em PDF o relat¢rio de exclus”es de arquivos ?")
        If OK = "S"  
           Then PDFZEBRA=False
                DISPOSITIVO_OPCAO="V"
                ImpriArq(ARQIMP)     
        EndIf
        Mensagem("Processo Finalizado !")
   Else Mensagem("N„o h  arquivos tempor rios inferiores a "+StrVal(DATA_PROC)+" !")             
EndIf
 
ClearAll
Release Vars All
Release Procs All