;** P_Contrd *******************************************************************
;*  Configura os parametros para o controle do dia                             *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 04/02/2005 por Davi Pereira Carrano
;Ultima Alteracao: 31/05/2006 por Anivel Augusto Rodrigues
;Motivo Alteracao: Inclusao Numero de Dias
;Ultima Alteracao: 19/09/2012 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes Substitui‡Æo Editor New por FileWrite

;*******************************************************************************
;* Rotina p/ Selecionar e Ordernar Registros                                   *
;*******************************************************************************
Proc Seleciona()

SYS_FECHA_CONTROLE_AUTOMATICAMENTE=VSDGFECHACONTR
SYS_FECHA_CONTROLE_NDIAS          =VSDGNDIAS

;;MSG="Empresa Padr„o Configurada.////"+
;;    "Para que possa surgir efeito as      //"+
;;    "mudan‡as, favor sair(irem) do sistema//"+
;;    "e executa-lo novamente.              "
;;Mensagem(MSG)

FileWrite        "Contrdia.cfg" From "SYS_FECHA_CONTROLE_AUTOMATICAMENTE = "+Chr(34)+SYS_FECHA_CONTROLE_AUTOMATICAMENTE+Chr(34)+"\n"
FileWrite Append "Contrdia.cfg" From "SYS_FECHA_CONTROLE_NDIAS           = "+StrVal(SYS_FECHA_CONTROLE_NDIAS)+"\n"
ClearAll

Editor Open "Savevars.sc"
Editor Find "SYS_FECHA_CONTROLE_AUTOMATICAMENTE"
If RetVal
   Then DELETELINE
EndIf
{Edit} {Goto} {1}
Editor Find "SYS_FECHA_CONTROLE_NDIAS"
If RetVal
   Then DELETELINE
EndIf

ENTER
UP
TypeIn "SYS_FECHA_CONTROLE_AUTOMATICAMENTE = \""
TypeIn SYS_FECHA_CONTROLE_AUTOMATICAMENTE
TypeIn "\""
ENTER
TypeIn "SYS_FECHA_CONTROLE_NDIAS = "
TypeIn SYS_FECHA_CONTROLE_NDIAS
DOWN

Do_It!
ClearAll

EndProc  ;(Seleciona)

;*******************************************************************************
;* Rotina                                                                      *
;*******************************************************************************
Proc SD_Dialog(Disparo,Campo,Evento,Elemento)
Temp=True
MSG_CAMPO=""
TECLA=""
If Disparo="OPEN"  Then AoCriarShowDialog() EndIf
If Disparo="EVENT" And Evento["Type"]="KEY" Then
   Switch
     Case Evento["KeyCode"] = 9: Temp=False
     Case Evento["KeyCode"] = -59: Dialog_F1()
     Case Evento["KeyCode"] =  27:
          Temp=False
          Switch
            Case Campo="TG_FECHACONTR"      : Campo="NO"
            Case Campo="TG_NDIAS"           : Campo="TG_FECHACONTR"
            Case Campo="YES" Or Campo="NO"  : Campo="TG_FECHACONTR"
          EndSwitch
     Case Evento["KeyCode"] = 13:
          Temp=False
          If Checa_TAG()
             Then Switch
                    Case Campo="TG_FECHACONTR":
                         VSDGFECHACONTR=ControlValue("TG_FECHACONTR")
                         If IsBlank(VSDGFECHACONTR)
                            Then VSDGFECHACONTR="N"
                         EndIf
                         If VSDGFECHACONTR="N"
                            Then VSDGNDIAS=0
                                 Campo="YES"
                            Else Campo="TG_NDIAS"
                         EndIf
                    Case Campo="TG_NDIAS":
                         VSDGNDIAS=ControlValue("TG_NDIAS")
                         If IsBlank(VSDGNDIAS)
                            Then VSDGNDIAS=1
                         EndIf
                         Campo="YES"
                  EndSwitch
          EndIf
   EndSwitch
EndIf

RefreshDialog
Switch
  Case Campo="TG_FECHACONTR":
       MSG_CAMPO="Fecha Controle do Dia Automaticamente"
EndSwitch
Monta_Prompt(MSG_CAMPO,TECLA)
Return Temp
EndProc

;*******************************************************************************
;* ROTINA PRINCIPAL                                                            *
;*******************************************************************************
If Not IsAssigned(SYS_FECHA_CONTROLE_AUTOMATICAMENTE) Then SYS_FECHA_CONTROLE_AUTOMATICAMENTE="" EndIf
If Not IsAssigned(SYS_FECHA_CONTROLE_NDIAS)           Then SYS_FECHA_CONTROLE_NDIAS=0            EndIf

VSDGFECHACONTR  =SYS_FECHA_CONTROLE_AUTOMATICAMENTE
VSDGNDIAS       =SYS_FECHA_CONTROLE_NDIAS

While True
 ShowDialog "Configura Controle do Dia" Proc "SD_Dialog"
 Trigger "OPEN","ARRIVE"
 Key "F1","ENTER","ESC","TAB"
 @ 06,11  Height 08 Width 50

   Label  @ 01,06 "Fecha Automaticamente" For "TG_FECHACONTR"
   Accept @ 01,01 Width 04 "A1"  Picture "S,N" Tag "TG_FECHACONTR"    To VSDGFECHACONTR

   Label  @ 02,06 "Numero de Dias em Aberto" For "TG_NDIAS"
   Accept @ 02,01 Width 05 "S" Tag "TG_NDIAS"    To VSDGNDIAS

   Pushbutton @ 04,14 width 11 "~O~k"      OK     Default Value "Ok" Tag "YES" To BottonValue
   Pushbutton @ 04,28 width 11 "~C~ancela" CANCEL                    Tag "NO"  To BottonValue

 EndDialog
 If RetVal
    Then If VSDGFECHACONTR="N"
            Then VSDGNDIAS=0
            Else If VSDGNDIAS<0 or VSDGNDIAS>31
                    Then Mensagem("Numero de Dias inv lido !")
                         Loop
                 EndIf
         EndIf
         Seleciona()
 EndIf
 QuitLoop
EndWhile
