01. DADOS GERAIS
Produto: |
TOTVS Gestão Jurídica - Linha SISJURI
|
---|---|
Linha de Produto: | Linha Protheus |
Segmento: | Jurídico |
Módulo: |
TOTVS Gestão Jurídica - Linha SISJURI - Pré Faturamento de Serviços (SIGAPFS)
|
Função: | Relatório de pré-fatura - JU201.RPT |
País: | Brasil |
Ticket: | Não há |
Requisito/Story/Issue (informe o requisito relacionado) : | DJURDEP-11246 |
02. SITUAÇÃO/REQUISITO
O objetivo desta story é complementar o processamento de faturas adicionais para atender o faturamento de ocorrências.
- O relatório de pré-fatura precisa ser alterado para indicar faturamento de ocorrências ao invés de Time Sheets e indicar no relatório a memória de cálculo que gravamos na descrição da fatura adicional.
- Alterar o título do relatório para "Discriminação de Ocorrências".
- Além disso, atualmente não é mostrado o valor por caso na pré-fatura quando temos fatura adicional, esta informação deve ser incluída também.
03. SOLUÇÃO
- Criação de subreport para mostrar a memória de calculo de uma pré-fatura quando há faturamento de ocorrências.
- Ajuste na fórmula do titulo do relatório, para indicar "Discriminação de Ocorrências" quando há faturamento de ocorrências, verificando pelo campo NVV_OCORRE.
- Criação de formulas para obter a moeda e o valor de cada caso.
A seguir, serão demonstrados todos os ajustes feitos para a resolução dos requisitos citados acima.
Pré fatura (JU201.rpt):
- Adicionar tabela NVV na estrutura:
Clique em "Database" > "DataBase Expert..." > Selecionar tabela NVV > Clicar em ">" para adicionar a tabela. Ajustar relacionamento:
2.1 Em "Links", ligue os campos da tabela NX0 com os campos da tabela NVV:NX0 NVV NX0_COD NVV_CPREFT NX0_CFTADC NVV_COD NX0_CCONTR NVV_CCONTR 2.2 Na linha que ligam as tabelas, clique com o botão direito e selecione: "Links Options..." > Selecione "Left Outer Join" > OK.
- No menu superior, selecione 'Insert' > 'Subreport':
- Em 'New report name:', coloque o nome 'Ocorrencias' > Clique em 'Report Wizard' > Selecione as tabelas NX0 e NVV >'Avançar'.
Em Links, efetuar os seguintes relacionamentos:
NX0 NVV NX0_COD NVV_CPREFT NX0_CFTADC NVV_COD NX0_CCONTR NVV_CCONTR - Clique em concluir > Ok > colocar o subreport acima do subreport 'Adicional.rpt'.
- Clique com o botão direito no subreport criado > "Edit subreport":
- Adicione o campo NVV_DESREL ao subreport, clique em Database fields (Field explorer) > Selecione a tabela NVV > selecione o campo e arraste para o relatório.
- Retirar todos as outras informação, e espaços se necessário.
- Adicionar parâmetro Pm-NVV010.NVV_CPREFT:
- No relatório principal, clique com o botão direito em cima do subreport de ocorrências > "Edit subreport".
- Em Parameter Fields, clicar com botão direito > New > Em name, digite Pm-NVV010.NVV_CPREFT > OK.
- Incluir parâmetro para filtrar a ocorrência:
- No relatório principal, clique com botão direito em cima do subreport de ocorrências > Change subreports link.
- Adicione o campo NVV_CPREFT > check no campo 'Select data in subreport based on fiel' e selecione o campo NX0_COD.
- Adicione o campo NX0_CFTADC > check no campo 'Select data in subreport based on fiel' e selecione o campo NVV_COD.
- No relatório principal, clique com botão direito em cima do subreport de ocorrências > Change subreports link.
- Ajustar supress do subreport:
- Clicar com botão direito no subreport de ocorrências > "Format subreport" > Check em "Supress" > clicar em , incluir a regra {NVV010.NVV_OCORRE} = '2' OR {NVV010.NVV_OCORRE} = ''
- Clicar com botão direito no subreport de adicional.rpt> "Format subreport" > clicar no segundo , incluir a regra {NVV010.NVV_OCORRE} = '1'
- Em database Fields > selecione a tabela NX0 > procure o campo NX0_OBSFAT > Arraste-o para o Group footer #1a.
- Em database Fields > selecione a tabela NVE > procure o campo NVE_OBSFAT > Arraste-o para o Group footer #4k.
- Ajustar validação, para que se não houver conteúdo não mostrar a seção de observação.
No group footer #1a > Clique com o botão direito > Section Expert > Clique no primeiro
e digite as seguintes condições:If IsNull({NX0010.NX0_COD}) Or {@vgcTituloCOntrato} <> '' Or {?pImprimeObs} = 'N' Or Isnull({NX0010.NX0_OBSFAT}) Or {NX0010.NX0_OBSFAT} = '' Then True Else False
No group footer #4k > Clique com o botão direito > Section Expert > Clique no primeiro
e digite as seguintes condições:If {?pImprimeObs} = "N" or ISNULL({NVE010.NVE_OBSCAD}) or {NVE010.NVE_OBSCAD}='' then True Else false
Em Formula Fields, selecione a fórmula frmPrefatTitulo > Botão direito > Edit formula > Adicionar a seguinte condição:
If ({NX0010.NX0_TS} = '1' or lLimite) And {NX0010.NX0_FATADC} = '1' And {NX0010.NX0_CFTADC} = {NVV010.NVV_COD} And {NX0010.NX0_COD} = {NVV010.NVV_CPREFT} And {NVV010.NVV_OCORRE} = '1' then If vgcIdioma = '01' Then 'Discriminação de Ocorrências' Else 'Occurrence Description'
Para adicionar o campo de moeda e valor por caso, iremos adicionar duas fórmulas:
- Adicionar Formula frmValorCaso, com a seguinte condição: ToNumber ({NX1010.NX1_VTS})
- Adicionar Formula frmMoeda, com a seguinte condição: Trim({CTO010.CTO_SIMB})
- Arrastar as duas fórmulas para a seção Group header #4a, em frente a fórmula @frmCasoCodigoTitulo
04. DEMAIS INFORMAÇÕES
Executar a atualização de dicionário via UPDDISTR. Após a atualização do ambiente executar o UPDPFS para compatibilizar os dados. Dicionário será disponibilizado nas expedições contínuas com data superior ou igual a 27/10/2022.IMPORTANTE!
05. ASSUNTOS RELACIONADOS