;** Cfo ************************************************************************
;*  Manutencao de Cadastro de CFO                                              *
;*********************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido    : 05/12/95 por Anivel Augusto Rodrigues
;Ultima Alteracao: 18/12/2007 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes Estrutura                                 
;Ultima Alteracao: 23/05/2008 por Anivel Augusto Rodrigues
;Motivo Alteracao: Inclusao Controla_Edicao
;Ultima Alteracao: 14/10/2010 por Bruno Carvalho
;Motivo Alteracao: Ajustes Edita_Memo
;Ultima Alteracao: 29/12/2010 por Bruno Carvalho
;Motivo Alteracao: Ajustes Novo Layout de Teclas

;*******************************************************************************
;* Rotina para Localizar Registro                                              *
;*******************************************************************************
Proc CHAVE()

End
Down
Moveto [Codigo Fiscal de Operacao]

SetaCorRegistro("Editar")
While true

  TECLA=""
  AguardaTeclasPadrao()

  Switch
      Case RetVal=-33 : SemFuncoes()
      Case RetVal="F3": SemFicha()
      Case RetVal=-94 : MsgTeclasPadrao()
      Case RetVal="F7" Or RetVal="UP" Or RetVal="PGUP" Or RetVal="HOME":
           While True
             PAGINA("cfo","MR")
             If EDITAR="S"
                Then CHAVE=0
                     Controla_EdicaoC()
               Else If EXCLUIR="S"
                        Then If QuerExcluir("")
                                Then DEL
                                Else UnLockRecord
                             EndIf
                        Else Moveto [Codigo Fiscal de Operacao]
                             End
                             Down
                             QuitLoop
                     EndIf
             EndIf
             SetaPosForm()
           EndWhile
      Case Retval="ESC":
           CHAVE=9
           Del
           QuitLoop
      Case RetVal="ENTER":
           If IsBlank([]) Then Loop EndIf
           CODN=[]
           Del
           Locate CODN
           If Retval
              Then CHAVE=0
              Else CHAVE=1
                   End Down
                   Moveto [Codigo Fiscal de Operacao]
                   [Codigo Fiscal de Operacao]=CODN
           EndIf
           If IsLockRecord()
              Then End Down
                   Moveto [Codigo Fiscal de Operacao]
                   Loop
           EndIf
           Quitloop
      EndSwitch
EndWhile
EndProc  ; (CHAVE)

;*******************************************************************************
;* Rotina para Digitacao das Informacoes                                       *
;*******************************************************************************
Proc DIGITA()
TECLA=""
If Not Edita_Memo("Descricao do CFO",10,01,13,76,"Descri‡„o do CFOP "+[Codigo Fiscal de Operacao])
   Then Undo
   Else If Len([Codigo Fiscal de Operacao])<4
           Then [Estrutura_CFOP]="9"
           Else [Estrutura_CFOP]="1"
        EndIf
EndIf
Return   

EndProc ; (DIGITA)

;*******************************************************************************
;* Rotina para controlar Edicao do registro                                    *
;*******************************************************************************
Proc Controla_EdicaoC()
DIGITA()
If RecordStatus("Locked") Then UnLockRecord EndIf         
Endproc

;*******************************************************************************
;* Rotina Principal                                                            *
;*******************************************************************************
AutoLib="\\Sistemas\\Cadastro\\Bibliot,\\Sistemas\\Cadastro\\Bib_Show"
CoEdit "cfo"
PickForm "F"
While True
  CHAVE()
  If CHAVE=9
     Then QuitLoop
  EndIf
  Controla_EdicaoC()
EndWhile
Do_It!
ClearAll
Release Vars All
Release Procs All
