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 |
---|
cEscrit | Caractere | Código do escritório | Sim | cFatura | Caractere | Código da fatura | Sim | aRelats | Array | Vetor com os nomes de arquivos a serem unificados | Sim | cNewFile | Caractere | Nome do arquivo que será gerado com a unificação | Sim | lOpenFile | Lógico | Indica se o arquivo será ou não aberto | Sim |
|
---|
Retorno: | Nome | Tipo | Descrição | Obrigatório |
---|
cEscrit | Caractere | Código do escritório. | Sim | aRetorno | cFatura | Caractere | Código da fatura. | aRelat | Array | Array com 4 3 posições que representam quais documentos serão emitidos ao refazer a fatura Nome | Tipo | Descrição |
---|
aRelataRetorno[1] | Lógico | Indica se será gerado o relatório da faturaa função padrão de unificação deverá ser executada | aRetornoaRelat[2] | Lógico | Indica se será gerada a carta da faturaa unificação foi ou não foi bem sucedida | aRetornoaRelat[3] | Lógico | Indica se será gerado o recibo da fatura | aRelat[4] | Lógico | Indica se serão gerados os boletos da fatura |
| Sim | aParams | Array | Array com 22 posições que representam os parâmetros para emissão dos relatórios Nome | Tipo | Descrição |
---|
aParams[1] | Caractere | Opções de emissão(Crystal): cOption + ';0;1;' cOption - '2' = Impressora cOption - '8' = Word cOption - '1' = Tela | aParams[2] | Caractere | Código do usuário do Protheus | aParams[3] | Caractere | Número da fatura | aParams[4] | Caractere | Escritório | aParams[5] | Caractere | Nome do Sócio da Fatura | aParams[6] | Caractere | Código do Cliente | aParams[7] | Caractere | Minuta de pré? ('S' / 'N') | aParams[8] | Caractere | Exibe logotipo? ('S' / 'N') | aParams[9] | Caractere | Utiliza dados de depósito? ('S' / 'N') | aParams[10] | Caractere | Utiliza contra apresentação (substitui o vencimento por 'contra-apresentação') ('S' / 'N') | aParams[11] | Caractere | Fatura Rateada? ('S' / 'N') | aParams[12] | Caractere | Nome do relatório a ser emitido (sem extensão .RPT) | aParams[13] | Caractere | Emitir Recibo? ('S' / 'N') | aParams[14] | Caractere | Emitir Boleto? ('S' / 'N') | aParams[15] | Caractere | Utilizar Redação? ('S' / 'N') | aParams[16] | Caractere | Ocultar despesas no Relatório? ('S' / 'N') | aParams[17] | Caractere | Exibir Assinatura Eletrônica? ('S' / 'N') | aParams[18] | Caractere | Redator - Nome do participante de emissão | aParams[19] | Caractere | Resultado do relatório: '1' - Impressora / '2' - Tela / '3' - Word / '4' - Nenhum | aParams[20] | Caractere | Comando para adição de parâmetros customizados na carta - separados com ';' e terminado com ';' | aParams[21] | Caractere | Comando para adição de parâmetros customizados no relatório - separados com ';' e terminado com ';' | aParams[22] | Caractere | Comando para customização de parâmetros para tela - separados com ';' e terminado com ';' |
SimCaractere | Nome 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
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>
|