Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

 Tempo aproximado para leitura: 06  05 min

01. DADOS GERAIS

Linha de Produto:Microsiga Protheus®
Segmento:Jurídico
Módulo:Pré Faturamento de Serviços - SIGAPFS
Função:Operações de Fatura - JURA204


02. PONTO DE ENTRADA

Descrição:

Este ponto de entrada permite customizar a rotina de unificação de documentos, que faz parte da rotina "Operações de Faturas->Docs Relacionados".

Nele é possível tratar de forma independente a função de unificação de documentos.

Localização:

Atualizações - Movimentações - Operação de Faturas

Programa Fonte:

JURA204

Função:

J204JOIN

Parâmetros:

Nome

Tipo

Descrição

Obrigatório

cEscritCaractereCódigo do escritórioSim
cFaturaCaractereCódigo da faturaSim
aRelatsArrayVetor com os nomes de arquivos a serem unificadosSim
cNewFileCaractereNome do arquivo que será gerado com a unificaçãoSim
lOpenFileLógicoIndica se o arquivo será ou não abertoSim
Retorno:

Array com 22 posições que representam os parâmetros para emissão dos relatórios

Nome

Tipo

Descrição

Obrigatório

cEscrit

CaractereCódigo do escritório.Sim

aRetorno

cFaturaCaractereCódigo da fatura.aRelatArray

Array com 4 3 posições que representam quais documentos serão emitidos ao refazer a fatura

NomeTipoDescrição
aRelataRetorno[1]LógicoIndica se será gerado o relatório da faturaa função padrão de unificação deverá ser executada
aRetornoaRelat[2]LógicoIndica se será gerada a carta da faturaa unificação foi ou não foi bem sucedida
aRetornoaRelat[3]LógicoIndica se será gerado o recibo da fatura
aRelat[4]LógicoIndica se serão gerados os boletos da fatura
SimaParamsArray
NomeTipoDescrição
aParams[1]Caractere

Opções de emissão(Crystal): cOption + ';0;1;'

cOption - '2' = Impressora

cOption - '8' = Word

cOption - '1' = Tela

aParams[2]CaractereCódigo do usuário do Protheus
aParams[3]CaractereNúmero da fatura
aParams[4]CaractereEscritório
aParams[5]CaractereNome do Sócio da Fatura
aParams[6]CaractereCódigo do Cliente
aParams[7]CaractereMinuta de pré? ('S' / 'N')
aParams[8]CaractereExibe logotipo? ('S' / 'N')
aParams[9]CaractereUtiliza dados de depósito? ('S' / 'N')
aParams[10]CaractereUtiliza contra apresentação (substitui o vencimento por 'contra-apresentação') ('S' / 'N')
aParams[11]CaractereFatura Rateada? ('S' / 'N')
aParams[12]CaractereNome do relatório a ser emitido (sem extensão .RPT)
aParams[13]CaractereEmitir Recibo? ('S' / 'N')
aParams[14]CaractereEmitir Boleto? ('S' / 'N')
aParams[15]CaractereUtilizar Redação? ('S' / 'N')
aParams[16]CaractereOcultar despesas no Relatório? ('S' / 'N')
aParams[17]CaractereExibir Assinatura Eletrônica? ('S' / 'N')
aParams[18]CaractereRedator - Nome do participante de emissão
aParams[19]CaractereResultado do relatório: '1' - Impressora / '2' - Tela / '3' - Word / '4' - Nenhum
aParams[20]CaractereComando para adição de parâmetros customizados na carta - separados com ';' e terminado com ';'
aParams[21]CaractereComando para adição de parâmetros customizados no relatório - separados com ';' e terminado com ';'
aParams[22]CaractereComando para customização de parâmetros para tela - separados com ';' e terminado com ';'
Sim
CaractereNome do arquivo gerado com a unificação
Sim


03. EXEMPLO

#Include 'Protheus.ch'

User Function J204JOIN( cEscrit, cFatura, aRelats, cNewFile, lOpenFile )

Local cEscri := ""
Local cCodFat := ""
Local aRelats := ""
Local cNewFile := ""
Local lOpenFile := ""
Local lRotinaPadrao := .T.
Local lRet := .F.
Local aRetorno := { lRotinaPadrao, lRet, cNewFile }
Local aAliasNXA := {}
Local aAliasSA1 := {}

If ValType(PARAMIXB) == "A" .AND. Len(PARAMIXB) >= 5


    cEscri := ParamIXB[1]
    cCodFat := ParamIXB[2]
    aRelats := ParamIXB[3]
    cNewFile := ParamIXB[4]
    lOpenFile := ParamIXB[5]
    lRotinaPadrao := .T.
    lRet := .F.
    aRetorno := { lRotinaPadrao, lRet, cNewFile }

    NXA->(DbSetOrder(1)) //Filial + Escritorio + Fatura
    aAliasNXA := NXA->(GetArea())
    If NXA->(DbSeek(xFilial("NXA")+ cEscri + cCodFat))
        aAliasSA1 := SA1->(GetArea())
        SA1->(DbSetOrder(1)) //filial+ cod+loja
        If SA1->(DbSeek(xFilial("SA1")+ NXA->(NXA_CCLIEN+NXA_CLOJA)))
        // Regra para modificar o padrão de unificação de arquivos
        //...

            cNewFile := "u_"+AllTrim(cCodFat)+"-"+StrTran(StrTran(AllTrim(SA1->A1_NOME),".", "_")," ","_")+".pdf"
        EndIf
        aRetorno[02] := .T.
        aRetorno[03] := UPPER(cNewFile) 
        RestArea(aAliasSA1)
    EndIf
    RestArea(aAliasNXA)
EndIf
Return aRetorno


Templatedocumentos


HTML
<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}
</style>