Árvore de páginas

Versões comparadas

Chave

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

Tempo Image Added Tempo aproximado para leitura: 10 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 reemissão da fatura, que faz parte da rotina "Operações de Faturas->Refazer".

Nele é possível tratar as opções disponíveis em tela para seleção no momento da reemissão, além de permitir o tratamento de informações enviadas para os relatórios que serão emitidos.

Localização:

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

Programa Fonte:

JURA204

Função:

J204REFAZ

Parâmetros:Não se aplica
Retorno:

Nome

Tipo

Descrição

Obrigatório

lRet

LógicoIndica se deve ser feita reemissão da faturaSim
aRelatArray

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

NomeTipoDescrição
aRelat[1]LógicoIndica se será gerado o relatório da fatura
aRelat[2]LógicoIndica se será gerada a carta da fatura
aRelat[3]LógicoIndica se será gerado o recibo da fatura
aRelat[4]LógicoIndica se serão gerados os boletos da fatura
Sim
aParamsArray

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


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


03. EXEMPLO

#Include 'Protheus.ch'

User Function J204REFAZ()
Local lRet := .F.
Local oDlg

Local cSocio := ""
Local cNome := ""

Local oCkCarta
Local oCkRelat
Local oCkRecibo
Local oCkContApr
Local oCkRedacao
Local oCkLogo
Local oCkNoDesps
Local oCkAdicDep
Local oCkNomeRes
Local oCkAssin

Local lCkCarta
Local lCkRelat
Local lCkRecibo
Local lCkContApr
Local lCkRedacao
Local lCkLogo
Local lCkNoDesps
Local lCkAdicDep
Local lCkNomeRes
Local oCkGeraBol

Local lCkGeraBol := .F.
Local lCkAssin := .T. // Assinatura Eletrônica

Local oGetNome

Local oGetResp
Local aCbResult := { "Impressora", "Tela", "Word", "Nenhum" }
Local cCbResult := Space( 25 )
Local cOptions := ''

Local aParams := Array(22)
Local aRelat := Array(4)

DEFINE MSDIALOG oDlg TITLE "Relatórios de Faturamento" FROM 0,0 TO 250,423 PIXEL

@ 005, 005 CheckBox oCkCarta Var lCkCarta Prompt "Carta de Cobrança" Size 100, 008 Pixel Of oDlg
@ 015, 005 CheckBox oCkRelat Var lCkRelat Prompt "Relatório" Size 100, 008 Pixel Of oDlg
@ 025, 005 CheckBox oCkRecibo Var lCkRecibo Prompt "Recibo" Size 100, 008 Pixel Of oDlg
@ 035, 005 CheckBox oCkNoDesps Var lCkNoDesps Prompt "Não mostrar despesas no Relatório" Size 100, 008 Pixel Of oDlg
@ 045, 005 CheckBox oCkNomeRes Var lCkNomeRes Prompt "Incluir nome do Sócio" Size 100, 008 Pixel Of oDlg
@ 055, 005 CheckBox oCkGeraBol Var lCkGeraBol Prompt "Boleto" Size 100, 008 Pixel Of oDlg

@ 070, 005 Say "Responsável" Size 035,008 PIXEL OF oDlg
@ 080, 005 MsGet oGetResp Var cSocio Size 100,009 PIXEL OF oDlg
@ 095, 005 MsGet oGetNome Var cNome Size 205,009 PIXEL OF oDlg

@ 005, 110 CheckBox oCkContApr Var lCkContApr Prompt "Contra Apresentação" Size 100, 008 Pixel Of oDlg
@ 015, 110 CheckBox oCkRedacao Var lCkRedacao Prompt "Utilizar Redação" Size 100, 008 Pixel Of oDlg
@ 025, 110 CheckBox oCkLogo Var lCkLogo Prompt "Exibir Logotipo" Size 100, 008 Pixel Of oDlg
@ 035, 110 CheckBox oCkAdicDep Var lCkAdicDep Prompt "Adicionar Depósito" Size 100, 008 Pixel Of oDlg
@ 045, 110 CheckBox oCkAssin Var lCkAssin Prompt "Suprime Assinatura" Size 100, 008 Pixel Of oDlg

@ 070, 110 Say "Resultado:" Size 030,008 PIXEL OF oDlg

@ 080, 110 ComboBox cCbResult Items aCbResult Size 100, 012 Pixel Of oDlg

@ 110, 129 Button "Emitir" Size 037,012 PIXEL OF oDlg Action (lRet := .T. , oDlg:End() )
@ 110, 172 Button "Cancelar" Size 037,012 PIXEL OF oDlg Action (lRet := .F. , oDlg:End() )

ACTIVATE MSDIALOG oDlg CENTERED

cCbResult := AllTrim( Str( aScan( aCbResult, cCbResult ) ) )

If lRet

If lCkRelat .OR. lCkCarta .OR. lCkRecibo .Or. lCkGeraBol

aRelat[1] := lCkRelat
aRelat[2] := lCkCarta
aRelat[3] := lCkRecibo
aRelat[4] := lCkGeraBol

Do Case

Case cCbResult = '1' //Impressora

cOptions := '2'

Case cCbResult = '3' //Word

cOptions := '8'

Otherwise //Tela

cOptions := '1'

EndCase

cOptions := cOptions + ';0;1;' // "Relatorio de Faturamento"

aParams[ 1] := cOptions
aParams[ 2] := __CUSERID
aParams[ 3] := NXA->NXA_COD
aParams[ 4] := NXA->NXA_CESCR
aParams[ 5] := IIf( lCkNomeRes , cNome, " " )
aParams[ 6] := NXA->NXA_CCLIEN
aParams[ 7] := 'N'
aParams[ 8] := IIf( lCkLogo , 'S', 'N' )
aParams[ 9] := IIf( lCkAdicDep , 'S', 'N' )
aParams[10] := IIf( lCkContApr , 'S', 'N' )
aParams[11] := IIf( lCkCarta , 'S', 'N' )
aParams[12] := IIf( lCkRelat , 'S', 'N' )
aParams[13] := 'N'
aParams[14] := IIf( lCkGeraBol , 'S', 'N' )
aParams[15] := IIf( lCkRedacao , 'S', 'N' )
aParams[16] := IIf( lCkNoDesps , 'S', 'N' )
aParams[17] := IIf( lCkAssin , 'S', 'N' )
aParams[18] := "Usuário"
aParams[19] := cCbResult //Resultado do relatório: '1' - Impressora / '2' - Tela / '3' - Word / '4' - Nenhum
aParams[20] := " "
aParams[21] := " "
aParams[22] := " "

Else

ApMSgInfo( "Selecione pelo menos uma das opções: Carta de Cobrança, Relatório, Recibo ou Boleto." )
lRet := .F.

EndIf

EndIf

Return {lRet, aRelat, aParams}



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>