;** P_Ed ***********************************************************************
;*  Configuracao de Paramentos p/ Emissao de Duplicatas                        *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 18/06/2004 por Davi Pereira Carrano
;Ultima Alteracao: 26/01/2006 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes
;Ultima Alteracao: 17/06/2011 por Karina Andrade
;Motivo Alteracao: Ajustes TECLAS
;Ultima Alteracao: 03/03/2016 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes usar no dialog Monta_Prompt(MSGCAMPO,TECLA)

;*******************************************************************************
;* Rotina de Controle de Paramentros                                           *
;*******************************************************************************
Proc PARAM_DIALOG(Disparo,Campo,Evento,Elemento)
Temp=True

TECLA   =""
MSGCAMPO=""
If INICIO_DIALOGO
   Then INICIO_DIALOGO=False
EndIf

If Disparo="OPEN"
   Then AoCriarShowDialog()
        TiraSombraShowDialog()
EndIf

If Disparo="EVENT" And DynArraySize(Evento)>0 And Evento["Type"]="KEY" Then
   Switch
     Case (Evento["KeyCode"] = -6 Or Evento["KeyCode"] = -147):
          If CHAVE=0
             Then Confirma()
                  If OK="S"
                     Then Del
                          PARAM_OPCAO("Inicio")
                  EndIf
           EndIf
     Case Evento["KeyCode"] = 9:
          Temp=False
     Case Evento["KeyCode"] = -59:
          If Campo="I_EMPRESA"
             Then
                  Dynarray WinArray5[]
                  Window Handle Dialog to JANELA
                  Window GetAttributes JANELA To WinArray5
                  WinArray5["FLOATING"]=False
                  Window SetAttributes JANELA From WinArray5

                  If Campo="I_EMPRESA"        Then Moveto [Codigo_Empresa       ] EndIf
                  ConsultaF1()

                  Window Select JANELA
                  WinArray5["FLOATING"]=True
                  Window SetAttributes JANELA From WinArray5

                  echo Normal
                  echo off

                  Switch
                    Case Campo="I_EMPRESA"    : VSD_EMPRESA    =[Codigo_Empresa]
                  EndSwitch
         EndIf
     Case Evento["KeyCode"] = 27:
          Switch
            Case Campo="I_EMPRESA"       :
                 If Chave=1
                    Then Del
                 EndIf
                 CancelDialog
            Case Campo="I_IMPRESSAO"     : Campo="I_EMPRESA"
                 If Chave=1
                    Then Del
                 EndIf
                 PARAM_OPCAO("Inicio")
          EndSwitch
     Case Evento["KeyCode"] = 13:
          Switch
            Case Campo="I_EMPRESA":
                 VSD_EMPRESA=ControlValue("I_EMPRESA")
                 If Not IsBlank(VSD_EMPRESA)
                    Then VSD_EMPRESA=Alinhm(VSD_EMPRESA,4)
                         Moveto [Codigo_Empresa]
                         Ativa_Lookup()
                         Locate VSD_EMPRESA
                         If Not RetVal
                            Then Mensagem("Empresa n„o Cadastrada !")
                                 KeyPress "ESC"
                            Else VSD_EMPRESA=[Codigo da Empresa]
                                 KeyPress "ESC"
                                 Campo="I_IMPRESSAO"
                                 Chave()
                         EndIf
                 EndIf
            Case Campo="I_IMPRESSAO":
                 VSD_IMPRESSAO=ControlValue("I_IMPRESSAO")
                 ConfGeral("Confirma novos parametros?")
                 If OK="S"
                    Then PARAM_OPCAO("Gravar")
                    Else If Chave=1
                            Then Del
                         EndIf
                 EndIf
                 PARAM_OPCAO("Inicio")
          EndSwitch
     Case Evento["KeyCode"] = -81:
          VSD_IMPRESSAO=ControlValue("I_IMPRESSAO")
          If Campo<>"I_EMPRESA" And Chave=0
             Then ConfGeral("Confirma novos parametros?")
                  If OK="S"
                     Then PARAM_OPCAO("Gravar")
                  EndIf
                  PARAM_OPCAO("Inicio")
          EndIf
   EndSwitch
EndIf

TECLA="//Esc=Retornar  "
If Campo="I_EMPRESA"
   Then TECLA=TECLA+"F1=Tabelas  "
   Else TECLA=TECLA+"            "
EndIf

If Campo<>"I_EMPRESA" And Chave=0
   Then TECLA=TECLA+"Ctrl+Del=Excluir  PgDn=Finalizar  "
   Else TECLA=TECLA+"                  PgDn=Finalizar  "
EndIf

MSGCAMPO="Utiliza este recurso? Sim/N„o"
Switch
  Case Campo="I_EMPRESA":
       MSGCAMPO="Codigo da Empresa Padr„o"
	Case Campo="I_IMPRESSAO":
       MSGCAMPO="Script de Impressao de Carne"
EndSwitch

Monta_Prompt(MSGCAMPO,TECLA)

Return TEMP
EndProc   ;(Param_Dialog)

;*******************************************************************************
;* Rotina Gravacao ou Leitura dos Parametros                                   *
;*******************************************************************************
Proc PARAM_OPCAO(OP)
Private OP
Switch
  Case OP = "Gravar":
       [Impressao_Duplicata]=VSD_IMPRESSAO
       UnLockRecord
  Case OP = "Ler":
       VSD_IMPRESSAO     =[Impressao_Duplicata]
  Case OP = "Inicio":
       VSD_EMPRESA       =""
			 VSD_IMPRESSAO		 =""
       Campo="I_EMPRESA"

       Moveto [Codigo_Empresa]
       End Down
EndSwitch
EndProc   ; (Param_Opcao)

;*******************************************************************************
;* Rotina Localiza_Registro                                                    *
;*******************************************************************************
Proc Chave()
Del
Moveto [Codigo_Empresa]
Locate VSD_EMPRESA
If RetVal
   Then While True
          If Not IsLockRecord() Then QuitLoop EndIf
        EndWhile
        Chave=0
        PARAM_OPCAO("Ler")
   Else Chave=1
        End Down
        [Codigo_Empresa]=VSD_EMPRESA
EndIf

EndProc  ; (Chave)

;*******************************************************************************
;* Rotina Principal                                                            *
;*******************************************************************************
Autolib="\\Sistemas\\Cadastro\\Bibliot,\\Sistemas\\Cadastro\\Bib_Show"
If Not IsAssigned(SYS_EMPRESA_DEFAULT) Then SYS_EMPRESA_DEFAULT="" EndIf
VSD_EMPRESA=SYS_EMPRESA_DEFAULT
If Not Checa_Supervisor()
   Then Return
EndIf

CoEdit NoWindow "P_Ed"
Chave=8
INICIO_DIALOGO=True
PARAM_OPCAO("Inicio")

Showdialog "Configura‡Æo Duplicata" Proc "Param_Dialog"
   Trigger "OPEN","ARRIVE"
    Key "F1","TAB","ReverseTab","ENTER","ESC","F4","ClearArea","PGDN"
     @ 05,0 height 22 width 80

   Label  @ 00,00 "Empresa" for "I_EMPRESA"
   Accept @ 01,01 Width 07 "A4" picture "#*#" Tag "I_EMPRESA" to VSD_EMPRESA

   Label  @ 03,00 "[           ] Script Impressao" for "I_IMPRESSAO"
   Accept @ 03,02 Width 11 "A8" picture "!*!" Tag "I_IMPRESSAO" to VSD_IMPRESSAO

Enddialog
Do_It!
ClearAll
Release Vars All
Release Procs All

