;** XACFAT *********************************************************************
;** Gera Notas atraves do Fatura                                               *
;*******************************************************************************
;Autor           : Vise Informatica (VISERP)
;Desenvolvido  em: 06/04/2018 por Anivel Augusto Rodrigues               
;Ultima Alteracao: 06/04/2018 por Anivel Augusto Rodrigues
;Motivo Alteracao: Ajustes usando FT_NOTA, passando parametros necessarios

;*******************************************************************************
;* Rotina para Carregar Parametros                                             *
;*******************************************************************************
Proc Carrega_Parametros()

If not GetP_Entra([FaturaC->Codigo da Empresa])
   then Return False
EndIf

If not GetP_Fatura([FaturaC->Codigo da Empresa])
   then Return False
EndIf


If IsEmpty("\\Sistemas\\Vendas\\P_Exped")
   Then Mensagem("N„o esta Configurado os Parametros para Expedi‡Æo !")
        Return False
EndIf

PARAM_AGRUPA_ITEM = False
;;If SYS_CODIGO_CLIENTE="0227" And SubStr(Upper(Directory()),1,2)="X:"
;;   Then PARAM_AGRUPA_ITEM = True
;;   Else PARAM_AGRUPA_ITEM = False
;;EndIf

PARAM_EXPED_TIPO      = ""
PARAM_EXPED_AGRUPA    = ""     
PARAM_EXPED_IMPRESSAO = ""
If Not IsBlank("\\Sistemas\\Vendas\\P_Exped")
   Then GetRecord "\\Sistemas\\Vendas\\P_Exped" [FaturaC->Codigo da Empresa]  To REG_EXPED 
        If RetVal
           Then PARAM_EXPED_TIPO      = REG_EXPED["Tipo_Expedicao"]
                PARAM_EXPED_AGRUPA    = REG_EXPED["Agrupa_Item"]
        EndIf
EnDIf        

return true
EndProc ; (Carrega_Parametros)

;*******************************************************************************
;* Rotina Principal Emissao Nota Fiscal ou Romaneio                            *
;*******************************************************************************
AutoLib="\\Sistemas\\Cadastro\\Bibliot,"+
        "\\Sistemas\\Cadastro\\Bib_Show,"+
        "\\Sistemas\\Cadastro\\Bib_Parm,"+
        "\\Sistemas\\Cadastro\\Bib_Bloq,"+
        "\\Sistemas\\Vendas\\Bib_Fat,"+
        "\\Sistemas\\Vendas\\Bib_Vend"

sys_valor()

;; --- Ajustar intervalo de data desejado
;;     verificar parametros necessarios para o processo


if ConfGeral("Gerando Notas atravez das OFïs//"+
             "Corre‡Æo tabela Nota por perdas//"+
             "Deseja Continuar?")
   then

        View "\\Sistemas\\Cadastro\\FichaCli"
   
        View "NotaC"
        View "NotaCC"
        View "NotaI"
        View "NotaIAD"
        View "NotaIC"
        View "NotaICM"
        View "NotaIDD"
        View "NotaR"
        View "NotaV"
        
        View "FaturaC"
        View "FaturaCC"
        View "FaturaI"
        View "FaturaIC"
        View "FaturaID"
        View "FaturaJC"
        View "FaturaR"
        View "FaturaV"
        View "FaturIAD"
        View "FaturICM"
        View "FaturIDD"
        View "FaturOCP"
        
        Moveto "FaturaC"
        CoEditKey
        Scan
           If [Data de Emissao]<DateVal("01.02.2010") Or
              [Data de Emissao]>DateVal("22.02.2010")
              Then Loop
           EndIf

           If IsBlank([FaturaC->Numero Nota Gerada]) 
              Then Loop
           EndIf
     
           If Not Carrega_Parametros()     
              Then Loop
           EndIf
           sleep 3000
         
           NOTAFISC         =[Numero Nota Gerada]
           CODFISC          =[Docto Nota Gerada ]
           SERIEFISC        =[Serie Nota Gerada ]
           CHAVE_ACESSO_NFe =[Chave_Acesso_NFe ]

           Origem_Nota           ="FATURA" 

           NFEJA_AUTORIZADA      =true
           PARAM_AGRUPA_ITEM     =false
           
           DP_GERA_DUPLICATA     ="N"
           PARAM_CHEQUES         ="N"
           PARAM_TRANSFERENCIA   ="N"
           IMPRIMIR_CARREGAMENTO =false

           ;; cuidado !! nÆo atualizar controle de numera‡Æo da nota fiscal "NumeroNF"
           
           Play "FT_Nota"

           sleep 3000
                     
           Moveto "FaturaC"
        EndScan
        Do_It!
        ClearAll
        
endif
