;** Consulta *******************************************************************
;*  Consulta geral notas saidas/duplicatas                                     *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 23/07/1995 por Anivel Augusto Rodrigues
;Ultima Alteracao: 17/10/2005 por Davi Carrano
;Motivo Alteracao: Ajuste Bug quando nao havia duplicatas
;Ultima Alteracao: 15/08/2007 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes Run
;Ultima Alteracao: 20/09/2010 por Bruno Carvalho
;Motivo Alteracao: Rotina Copia Familia e Ajustes
;Ultima Alteracao: 03/01/2017 por Rafael Matos
;Motivo Alteracao: Ajustes showdialog MensagemRadioButtons() 
;Ultima Alteracao: 28/08/2017 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes logica e usando pela consulta
;Ultima Alteracao: 16/08/2018 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes copia familia so fechames, naä excluir pasta no fechames   
;Ultima Alteracao: 24/09/2018 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes conta corrente cheque            

;*******************************************************************************
;* Notac/Notai/NfVectos                                                        *
;*******************************************************************************
Proc SAIDAS()
If IsTable("Notac") And
   IsTable("Notai") And
   IsTable("NotaV")
   Then usandoconsultammaa=true
        Play "\\Sistemas\\Vendas\\notacons"
        ClearAll
   Else LimpAguarde()
        Mensagem("Tabela [Notac] n„o encontrada !")
EndIf
EndProc  ; (Saidas)

;*******************************************************************************
;* DupC/DupI                                                                   *
;*******************************************************************************

Proc DUPLICATAS()
If IsTable("DupC") And
   IsTable("DupI") And
   IsTable("DupNF")
   Then If Not IsEmpty("DupC")
           Then Play "\\Sistemas\\Vendas\\consuldp"
                ClearAll
           Else LimpAguarde()
                Mensagem("Tabela sem registros !")
        EndIf
   Else LimpAguarde()
        Mensagem("Tabela [DupC] n„o encontrada !")
EndIf
EndProc  ; (Duplicatas)

;*******************************************************************************
;* Rotina                                                                      *
;*******************************************************************************
Proc SD_Dialog(Disparo,Campo,Evento,Elemento)
Temp=True
TECLA    =""
MSG_CAMPO=""
If Disparo="OPEN"  Then AoCriarShowDialog() EndIf
If Disparo="EVENT" And Evento["Type"]="KEY" Then
   Switch
     Case Evento["KeyCode"] = -59: Dialog_F1()
     Case Evento["KeyCode"] =  27:
          Temp=False
          Switch
            Case Campo="TG_DIRETORIOS"    : Campo="NO"
            Case Campo="TG_OPCOES"        : Campo="TG_DIRETORIOS"
            Case Campo="YES" Or Campo="NO": Campo="TG_OPCOES"
          EndSwitch
     Case (Evento["KeyCode"] <= -104 And Evento["KeyCode"] >= -113) Or 
           Evento["KeyCode"]  = -139 Or  Evento["KeyCode"]  = -140:
           SYS_TECLA_ACIONADA=Evento["KeyCode"]
           Seta_Tecla_Acionada()
           CancelDialog
     Case Evento["KeyCode"] = 13:
          Temp=False
          If Checa_TAG()
             Then Switch
                    Case Campo="TG_DIRETORIOS" : Campo="TG_OPCOES"
                    Case Campo="TG_OPCOES"     : Campo="YES"
                  EndSwitch
          EndIf
          RefreshDialog
   EndSwitch
EndIf

Switch
  Case Campo="TG_OPCOES":
       MensagemRadioButtons()
EndSwitch
Monta_Prompt(MSG_CAMPO,TECLA)
Return Temp
EndProc   ; (SD_Dialog)

;*******************************************************************************
;* Copia Familia                                                           *
;*******************************************************************************
Proc Copia_Familia(caminho,tabela)
Private caminho,tabela

{Tools} {Copy} {JustFamily} TypeIn "\\BASE"+caminho+"\\"+tabela Enter TypeIn tabela Enter
If MenuChoice()="Cancel"
   Then Down
        If MenuChoice()="Replace"
           Then {Replace}
           Else {Cancel}
                Esc Esc Esc Esc
                MSG="Tabela [ "+tabela+" ] em [ "+caminho+" ], //"
                MSG=MSG+"com estrutura diferente !// //"
                MSG=MSG+"Anote o nome da tabela e pasta !//"
                MSG=MSG+"Depois entre em contato com o suporte Ok !"
                Mensagem(MSG)
        Endif
EndIf
Esc Esc Esc Esc
EndProc


;*******************************************************************************
;* ROTINA PRINCIPAL                                                            *
;*******************************************************************************
AutoLib="\\Sistemas\\Cadastro\\Bib_Show,\\Sistemas\\Cadastro\\Bibliot"
LimpAguarde()

Diretorio="\\Sistemas\\Vendas\\"
Diretorios_Fechames_C(Diretorio)

While True
  ShowDialog "Consulta Nota de Saidas/Duplicatas" Proc "SD_Dialog"
  Trigger "OPEN","ARRIVE"
  Key "F1","ENTER","ESC",
      -104, -105, -106, -107, -108, -109, -110, -111, -112, -113, -139, -140  
   @ 04,17   Height 19 Width 75

    Label @ 00,00 "Ano_Mes Fechado"  For "TG_DIRETORIOS"
    PickDynArray @01,01 Height 11 width 69
     Columns 7
      Array_Diretorios
       Tag "TG_DIRETORIOS"
        To ArrayElement

   Label @ 13,00 "Op‡”es de Tabelas" For "TG_OPCOES"
   RadioButtons @ 14,01 Height 2 Width 35
     "~N~otas emitidas    ",
     "~D~uplicatas geradas"
     Tag "TG_OPCOES"
     To VSDGOPCAO

    Pushbutton @ 15,24 width 11 "~O~k"      OK     Default Value "Ok" Tag "YES" To BottonValue
    Pushbutton @ 15,38 width 11 "~C~ancela" CANCEL                    Tag "NO"  To BottonValue

  EndDialog
  If Not RetVal Then QuitLoop EndIf

  Aguarde("Carregando consulta")

  ANO_MES=Array_Diretorios[ArrayElement]
  If ANO_MES<>" Atual"
     Then Diretorio="\\Sistemas\\Vendas\\Fechames\\"+ANO_MES
     Else Diretorio="\\Sistemas\\Vendas"
  EndIf
  If DirExists(Diretorio)=0
     Then Mensagem("N„o existe a pasta do "+ANO_MES+" selecionado !")
          Loop
  EndIf
  SetDir Diretorio

  if search("FECHAMES",upper(Diretorio))>0
     then 
          Array Nom_Tab[6]
          Nom_Tab[1]="Notac"
          Nom_Tab[2]="Notai"
          Nom_Tab[3]="NotaV"
          Nom_Tab[4]="DupC"
          Nom_Tab[5]="DupI"
          Nom_Tab[6]="DupNF"
        
          For i From 1 To 6
              If IsTable(Nom_Tab[i])
                  Then Copia_Familia("\\Sistemas\\Vendas",Nom_Tab[i])  
              EndIf
          EndFor
  endif
 
  If VSDGOPCAO=1
     Then SAIDAS()
     Else DUPLICATAS()
  EndIf
  
  Echo Normal
  Echo Off
  LimpaRodape(0)

  Aguarde("Verificando Tabelas")
  SetDir "\\Sistemas\\Vendas"
;;If Not Tem_Tabelas(Diretorio)
;;   Then Deleta_Arvore(SubStr(Directory(),1,2)+Diretorio)
;;EndIf

  LimpAguarde()

EndWhile
ClearAll
Release Vars All
Release Procs All
