Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

(Obrigatório)

Informações Gerais

 

Especificação

Produto

Microsiga Protheus

Módulo

SIGAJURI

Segmento Executor

Gestão Jurídica

Projeto1

M_JUR_JUR001

IRM1

 

Requisito1

PCREQ-5641

Subtarefa1

 

Release de Entrega Planejada

12.1.7

Réplica

12.1.7

País

(X ) Brasil  (  ) Argentina  (  ) Mexico  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colombia   (  ) Outro _____________.

Outros

 

(Obrigatório)

Objetivo

Permitir que usuários incluam fórmulas como opções de campos na Exportação Personalizada.

(Obrigatório)

Definição da Regra de Negócio

 

Criação de um novo cadastro de fórmulas que deverá ser relacionado a tabela da configuração da exportação personalizada (NQ2), na rotina JURA023, conforme protótipo 01.

 

Desta forma, além de vincular campos, será possível vincular campos cuja informação é retornada executando uma fórmula, que envolve os campos da tabela.

 

 

Rotina

Tipo de Operação

Opção de Menu

Regras de Negócio

JURA023

Alteração

Atualizações -> Configuração -> Exportação personalizada

 

JURA108

Alteração

Atualizações -> Assuntos Jurídicos -> Pesquisa

 

JURXFUN

Alteração

Atualizações -> Assuntos Jurídicos -> Pesquisa

 

 

Alterações no fonte JURA023

Criação de um FormGrid no modelo do fonte JURA023 para utilizar a tabela NZJ que relaciona as fórmulas às tabelas da exportação (NQ2). O novo Grid deve ter relação de mestre-detalhe com o field NQ2DETAIL.

 

Como a fórmula deve ser cadastrada

A fórmula deve ser uma Function ou User Function dentro do RPO do Protheus e lembramos que seu nome não pode exceder 09 caracteres.

Para que seja possível executar a fórmula, a mesma deve ser incluída na seguinte forma:

 

Cadastro de Fórmulas

Descrição

Function

Parâmetros

Envolvidos Concatenados

FEXP_ENVC

NUQ_CAJURI, ‘1’


Descrição: Nome do campo que aparecerá na planilha

Fórmula: Nome da Function ou User Function

Parâmetros: Lista de parâmetros separados por vírgula. Para campos, basta informar o nome do mesmo, sem aspas. Para texto, colocar as informações utilizando aspas simples.


Alterações no fonte JURA108

O fonte responsável pela exportação personalizada deve ser alterado para que as fórmulas sejam exibidas na lista de campos relacionadas a tabela NQ2. Ver função JA108Camps.

Alterar a função JA108EXPOR e JA108GSQL para tratar os itens que são fórmulas separadamente.

Criar uma função para analisar as informações da fórmula, executar a mesma e retornar a cadeida de caracteres resultante da fórmula.


Alterações no fonte JURXFUN

Criação de function de exemplo.

Functions que deverão ser desenvolvidas e entregues no padrão

 

Criar as seguintes funções abaixo para que os clientes possam usar por padrão:

 

Cadastro de Fórmulas

Function

Parâmetros

Descrição

FEXP_ENVC

NUQ_CAJURI, ‘1’

Função que vai receber o código do assunto jurídico e o tipo de envolvimento de envolvidos. O tipo de envolvimento não é obrigatório. Caso seja informado, a função deve retornar o nome concatenado de todos os envolvidos no processo para aquele tipo de envolvimento (Pólo Ativo/Pólo Passivo/Terceiro Interessado). Caso o parâmetro seja informado, deve ser retornado apenas o nome das partes condizentes com o mesmo.

FEXP_PEDC

NUQ_CAJURI

Função que vai receber o código do assunto jurídico e retorna a descrição dos pedidos concatenados. A descrição deverá ser obtida através do código gravado no campo NSY_CPEVLR que faz referência a tabela NSP.

 

 

Como a Function deve ser escrita

Além dos parâmetros cadastrados para a fórmula, será enviada a função um parâmetro padrão com os filtros que deverão ser analisados e aplicados na operação realizada, conforme necessidade. A função deve retornar sempre um valor do tipo caracter.

 

USER FUNCTION FEXP_ENVC (aFiltros, cCajuri, cTipo)

/*

Parâmetros recebidos no exemplo

aFiltros {{“NSZ”,”AND NSZ001.NSZ_SITUAC = ‘1’”},{“NT4”,”NT4990.NT4_CATO=’001’”}}}

cCajuri “000000141”

cTipo “1”

*/

Local cRet := ‘’

Local aArea := GetArea()

Local cLista := GetNextAlias()

Local cSQL

 

cSQL := “SELECT NT9.NT9_NOME FROM “ + RetSQLName(“NT9”) + “ NT9 ”

cSQL += “ WHERE NT9.NT9_CAJURI = ‘” + cCajuri + “’”

cSQL += “ AND NT9.NT9_FILIAL = ‘” + xFilial(‘NT9’) + “’”

cSQL += “ AND NT9.D_E_L_E_T_ = ‘ ‘”

 

//Inclui os filtros da tela na consulta da fórmula

aEval(aFiltros,{|x| IIF( x[1] == “NT9”,cSQL+= StrTran(x[2],RetSQLName(‘NT9’),’NT9’),)})

 

cSQL := ChangeQuery(cSQL)

dbUseArea(.T., 'TOPCONN', TcGenQry( ,, cSQL ) , cLista, .T., .F.)

 

dbSelectArea(cLista)

(cLista)->(dbGoTop())

 

While (cLista)->(!Eof())

                cRet += (cLista)->NT9_NOME

                if ((cLista)->(!Eof())

                               cRet += “/”

                Endif

(cLista)->(dbSkip())

End

 

(cLista)->( dbcloseArea() )

RestArea( aArea )

 

Return cRet

 

Tabelas Utilizadas

  • NSZ – Assuntos Jurídicos
  • NQ2 – Tabelas Exportação
  • NZJ – Fórmulas Exportação
  • NUQ – Assuntos Jurídicos
  • NSY – Valores Processo
  • NSP – Pedido Verba

 

Opcional

Protótipo de Tela

Protótipo 01

 

 

 

 

 

 

 

 

 

 

 

Opcional

Dicionário de Dados

 

Arquivo ou Código do Script: AAA – Negociação Financeira / *Versao=CP.2014.12_03*/

  

Índice

Chave

01

<FI9_FILIAL+FI9_IDDARF+FI9_STATUS>

02

<FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_EMISS+FI9_IDDARF>

03

<FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_PREFIX+FI9_NUM+FI9_PARCEL+FI9_TIPO>

Campo

<AAA_PERESP>

Tipo

<N>

Tamanho

<6>

Valor Inicial

<Varia de acordo com o tipo informado. Por exemplo, quando o campo “tipo” for date, neste campo pode ser informado uma data>. 

Mandatório

Sim (  ) Não (  )

Descrição

<Referência Mínima para Cálculo>

Título

<Ref.Calc.>

Picture

<@E999.99>

Help de Campo

<Informar o % que o aluno pagará em dinheiro. Esse % poderá ser alterado durante a negociação>

 

 

 

(Opcional)

Estrutura de Menu

 

<Informações utilizadas na linha Datasul>.

 

Procedimentos

 

Procedimento

 

 

 

Descrição

(Max 40 posições)

(Max 40 posições)

(Max 40 posições)

Módulo

 

 

 

Programa base

 

 

 

Nome Menu

(Max 32 posições)

(Max 32 posições)

(Max 32 posições)

Interface

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

Registro padrão

Sim

Sim

Sim

Visualiza Menu

Sim/Não

Sim/Não

Sim/Não

Release de Liberação

 

 

 

 

 

 

Programas

 

Programa

 

 

 

Descrição

(Max 40 posições)

(Max 40 posições)

(Max 40 posições)

Nome Externo

 

 

 

Nome Menu/Programa

(Max 32 posições)

(Max 32 posições)

(Max 32 posições)

Nome Verbalizado[1]

(Max 254 posições)

(Max 254 posições)

(Max 254 posições)

Procedimento

 

 

 

Template

(Verificar lista de opções no man01211)

(Verificar lista de opções no man01211)

(Verificar lista de opções no man01211)

Tipo[2]

Consulta/Manutenção/ Relatório/Tarefas

Consulta/Manutenção/ Relatório/Tarefas

Consulta/Manutenção/ Relatório/Tarefas

Interface

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

Categoria[3]

 

 

 

Executa via RPC

Sim/Não

Sim/Não

Sim/Não

Registro padrão

Sim

Sim

Sim

Outro Produto

Não

Não

Não

Visualiza Menu

Sim/Não

Sim/Não

Sim/Não

Query on-line

Sim/Não

Sim/Não

Sim/Não

Log Exec.

Sim/Não

Sim/Não

Sim/Não

Rotina (EMS)

 

 

 

Sub-Rotina (EMS)

 

 

 

Localização dentro da Sub Rotina (EMS)

 

 

 

Compact[4]

Sim/Não

Sim/Não

Sim/Não

Home[5]

Sim/Não

Sim/Não

Sim/Não

Posição do Portlet[6]

0 – Top Left

1 – Top Right

2 – Bottom Left

3 – Bottom Right

0 – Top Left

1 – Top Right

2 – Bottom Left

3 – Bottom Right

0 – Top Left

1 – Top Right

2 – Bottom Left

3 – Bottom Right

Informar os papeis com os quais o programa deve ser vinculado

 

 

 

 

Cadastro de Papéis

<O cadastro de papéis é obrigatório para os projetos de desenvolvimento FLEX a partir do Datasul 10>.

<Lembrete: o nome dos papeis em inglês descrito neste ponto do documento, devem ser homologados pela equipe de tradução>.

 

Código Papel

(máx 3 posições)

Descrição em Português*

 

Descrição em Inglês*

 


[1] Nome Verbalizado é obrigatório para desenvolvimentos no Datasul 10 em diante.

[2] Tipo é obrigatório para desenvolvimento no Datasul 10 em diante

[3] Categorias são obrigatórias para os programas FLEX.

[4] Obrigatório quando o projeto for FLEX

[5] Obrigatório quando o projeto for FLEX

[6] Obrigatório quando o projeto for FLEX

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.