Especificação de Requisitos


Projeto/Versão: MEX12.0/TOTVS Microsiga Protheus V12.0

Requisito/Módulo: 151105/SIGACTB

Sub-Requisito/Função: 151105/Lançamentos Padronizados

Tarefa/Chamado: 00000B.06.01

País: todos

Data Especificação: 16/12/2013

Rotinas Envolvidas



Rotina

Tipo de Operação

Opção de Menu

CTBA080 – Lançamentos Padronizados

Alteração

Atualizações->Cadastros->Entidades->Lançamentos Padronizados

Estratégia de Desenvolvimento e liberação


Produto

Microsiga Protheus – Contabilidade

Release que está sendo desenvolvida

11.90

Possui Réplica?

( )Sim (X)Não

Qual versão?

Não aplic

Objetivo 

Permitir associar Fórmulas aos Lançamentos Padronizados.

Definição da Regra de Negócio 

Consulta CWKESP 
Criar a consulta especifica CWKESP, que chamará a rotina CTB93CWK a qual realizará a visualização das telas do protótipo 01 e do protótipo 03 ao 05. Dependendo do campo que solicitou a consulta, será o tipo de tela em cascata: 
Se os campos são das contas contáveis (CT5_DEBITO, CT5_CREDIT), ao selecionar F3 será apresentada a tela do Protótipo 01. Se selecionar Conta contável, apresentará a consulta padrão das contas contáveis que atualmente faz. 
Se os campos são dos centros de custo (CT5_CCD, CT5_CCC), ao selecionar F3 será apresentada a tela do Protótipo 03. Se selecionar Centro de Custo, apresentará a consulta padrão de Centro de Custo que atualmente faz. 
Se os campos são das contas contáveis (CT5_ITEMD, CT5_ITEMC), ao selecionar F3 será apresentada a tela do Protótipo 04. Se selecionar Itens Contáveis, apresentará a consulta padrão de Itens Contáveis que atualmente faz.
Se os campos são das contas contáveis (CT5_CLVLDB, CT5_CLVLCR), ao selecionar F3 será apresentada a tela do Protótipo 05. Se selecionar Classe Valor, apresentará a consulta padrão de Classe Valor que atualmente faz. 
Se selecionou a consulta de Fórmulas será visualizada a consulta específica CTB931, explicada na seguinte seção. 
Na aba Valores será adicionada a consulta CTB931 aos campos de valores (ct5_vlr01.. ct5_vlr05). 

Consulta específica CtB931. 
Será criada a consulta específica CTB931 que chamará à rotina CTBA080FOR que gerará a tela como o protótipo 06
O retorno da consulta deve ser o campo CWK_FOREJE. 

Validações dos campos CT5_DEBITO, CT5_CREDIT, CT5_CCD, CT5_CCT, CT5_ITEMD, CT5_ITEMC, CT5_CLVLDB, CT5_CLVLCR, ct5_vlr01.. ct5_vlr05 

Será criada a rotina CTB93VCA que será executada somente se o campo tem a instrução EjeFor , e validará que:


Se não cumpre com as validações, enviará ao usuário o aviso correspondente e não permitirá deixar esse valor no campo. 
Ao salvar o Lançamento
Colocar a condição, se está no rpo a função CTBA093, ao salvar eliminará todos os registros contidos para esse lançamento e sequência na tabela de relacionamento de lançamentos x fórmulas (CWM) e depois salvará o novo relacionamento. Somente deve ter um código da fórmula relacionado a cada lançamento e sequência. 
Preparação das tabelas e fórmulas ao executar o Lançamento Padrão (Mudanças para a função DetProva) 

Será entendida primeiro a funcionalidade da rotina DetProva localizada no fonte MATXFUNA.prx, pois é aqui que tem que adicionar o código para as seguintes ações:

  1. Preparar as tabelas de usuário que serão utilizadas pelo Lançamento Padrão:


Dentro de Matxfuna, criar a rotina POSTABCTB, a qual deve selecionar os cadastros da tabela CWO com o código do referido lançamento padrão (cwo_codpto=ct5_lanpad), e que sejam do usuário (cwo _tipo='U'). A cada registro, inicializar a tabela (cwo _tabela) com o índice (cwo _indice) e posicionando (cwo _chave, somente se esta não estiver com o campo vazio), para deixar preparada a tabela que utilizará o lançamento padrão. 
Verificar em que parte da rotina DetProva contida no fonte matxfuna.prx , é possível chamar a rotina POSTABCT, e ao realizar a chamada incluir a condição de que só será executada caso exista a função CTBA093 (fórmulas).

  1. Incluir a rotina Ejefor.


Criar a rotina EjeFor (no fonte Matxfuna), a qual receberá como dado de entrada o código da fórmula do Lançamento padrão e retornará como resultado o código ADVPL (cwk_advpl). 

Function EjeFor(cFormula)
Local cForm := " "
Local cAliCWK := "CWK"
Local xRegreso:=Nil 
DbSelectArea(cAliCWK)
(cAliCWK )->(dbSetOrder(1)) 
/*/
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
³A fórmula deve existir no catálogo de fórmula (CWK).³ 
ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ/*/
If (cAliCWK )->(dbSeek(xFilial(cAliCWK )+cFormula)) 
cForm := AllTrim((cAliCWK )->CWK_ADVPL ) 
xRegreso:=&cForm
Else
Aviso( OemToAnsi(STR0037),OemToAnsi(STR0054) + cFormula + OemToAnsi(STR0055) + CT5->CT5_LANPAD , {OemToAnsi(STR0056)} ) //"Erro. Não foi encontrada a Fórmula " // " do lançamento " // "Ok"
EndIf 
Return xRegreso 
Verificar em que linha da rotina DetProva contida no fonte MatxFuna.prx é pertinente chamar a função EjecFor e deve ser executada somente se existe a função CTBA093 (catálogo de fórmulas). 

Tabelas Utilizadas

Protótipo de Telas 


Protótipo 01 Retornar 
 

Se selecionar F3 visualizará a tela:

Se selecionar Contas contáveis, visualizará a tela:
 


Protótipo 02 Retornar 


Ao selecionar a consulta padrão visualizará a tela: 



Protótipo 03 


Protótipo 04


Protótipo 05 
  


Protótipo 06 

Consulta CTB91FOR

Release Notes 


Módulo

SIGACTB / PROTHEUS

Função

Lançamentos Padronizados.

Descrição de Função

Permite associar fórmulas que foram criadas pela ferramenta de formulação (CTBA093).

Fluxo do processo 

Diagrama de Entidade e Relacionamento 
 


Dicionário de Dados

 

Alterar as consultas padrão dos campos da CT5 e adicionar a validação a seguir:

Campo

Mudanças

CT5_DEBITO

F3

CWKESP

Vld. Sistema

CTB93VCA()

CT5_CREDIT

F3

CWKESP

Vld. Sistema

CTB93VCA()

CT5_CCD

F3

CWKESP

Vld. Sistema

CTB93VCA()

CT5_CCC

F3

CWKESP

Vld. Sistema

CTB93VCA()

CT5_ITEMD

F3

CWKESP

Vld. Sistema

CTB93VCA()

CT5_ITEMC

F3

CWKESP

Vld. Sistema

CTB93VCA()

CT5_CLVLCR

F3

CWKESP

Vld. Sistema

CTB93VCA()

CT5_CLVLDB

F3

CWKESP

Vld. Sistema

CTB93VCA()

CT5_VLR01

F3

CTB931

Vld. Sistema

CTB93VCA()

CT5_VLR02

F3

CTB931

Vld. Sistema

CTB93VCA()

CT5_VLR03

F3

CTB931

Vld. Sistema

CTB93VCA()

CT5_VLR04

F3

CTB931

Vld. Sistema

CTB93VCA()

CT5_VLR05

F3

CTB931

Vld. Sistema

CTB93VCA()

 

CWM – Fórmulas utilizadas pelo Lançamento Padrão

Campo

Tipo

Tam.

Dec.

Título

Descrição

CWM_FILIAL

C



Filial


CWM_LANPAD

C

3


Lançamento Padrão

Descrição

Código do Lançamento Padrão

Formato

@!

Nível

1

Usado

Sim

Obrigatório

Sim

CWM_SEQUEN

C

3


Sequência

Descrição

Sequência de Lançamento Padrão

Formato

@!

Nível

1

Usado

Sim

Obrigatório

Sim

CWM_CODFOR

C

15


Cód. Fórmula

Descrição

Código de fórmula

Formato

@!

Nível

1

Usado

Sim

Obrigatório

Sim

Índice: CWM_FILIAL+CWM_LANPAD+CWM_SEQUEN+CWM_CODFOR

CWM_FILIAL+CWM_CODFOR+CWM_LANPAD+CWM_SEQUEN

 

Adicionar os índices às Tabelas

Tabela

Núm Índ

Índice

CWQ  

1

CWQ_FILIAL+CWQ_CODFOR+CWQ_TABLA

CWQ 

2

CWQ_FILIAL+CWQ_TABLA+ CWQ_CODFOR

CWO

2

CWO_FILIAL+CWO_CODPTO+CWO_TABLA

 

Grupo de Perguntas

Não aplica

Consulta Padrão

CWKESP.- Consulta específica para criar a tela que permitirá ao usuário selecionar entre dois tipos de consulta.

CTB931.- Consulta especifica de fórmulas.