Árvore de páginas

Especificação de Requisitos


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

Requisito/Módulo:001511/SIGACTB

Sub-Requisito/Função: 151103/Tabelas x Pontos de lançamento

Tarefa/Chamado: 00000B.04.01

País: Todos

Data Especificação: 29/11/2013

Rotinas Envolvidas



Rotina

Tipo de Operação

Opção de Menu

CTBA094 – Tabelas de Pontos de Lançamento

Criação

Atualizações->Arquivos->Entidades->Tabelas x Ptos. Lançamento

Estratégia de Desenvolvimento e Liberação


Produto

Microsiga Protheus – Contabilidad

Release que está sendo desenvolvido

11.90

Possui Réplica?

( )Sim ( X)Não

Qual versão?

Não se aplica


Objetivo 

Criar uma rotina que permita registrar as tabelas que utilizam cada Ponto de Lançamento.

Definição da Regra de Negócio 

Ao entrar na opção será visualizado o browse com a informação dos Pontos de Lançamento (tabela CVA), com as opções do padrão, salvo a opção incluir (ver protótipo 01).
Opção Alterar 
Ao selecionar esta opção serão visualizados e solicitados os dados como segue (ver protótipo 02):
Dados do Cabeçalho 
Cód. Lançamento (cva_codigo) – Código do ponto de lançamento selecionado. Só será visualizado.
Descrição (cva_descri) – Nome do poto de lançamento. Só será visualizado.
Dados do Detalhe
Selecionar todos os registros que estiverem associados ao lançamento (cwo_codpto= cva_codigo) incluindo no getdados, primeiro os que forem do tipo sistema (cwo_tipo='S'), e depois os do tipo usuário (cwo_tipo='U').
Os registros do tipo sistema (cwo_tipo='S'), não permitirão ao usuário efetuar alterações ou exclusões. Quando o usuário tente efetuar alguma destas ações, o sistema irá enviar o aviso "Registro de Sistema, não admite alterações!".
O preenchimento dos campos será como segue:
Tipo (cwo_tipo). – Só será visualizado. No automático será inicializado com "U", de usuário.
Tabela (cwo_tabla) . Permite selecionar as tabelas da SX2 (consulta HSPSX2). Obrigatório.
Descrição.- Nome da tabela, só será visualizado (campo virtual preenchido ao selecionar a tabela). Obrigatório.
Índice (cwo_indice) Permite efetuar a seleção da tabela de índices (Consulta SIXFUN, definida no requisito 151102), e somente os índices correspondentes às tabelas selecionadas no campo anterior. Se não houver uma tabela selecionada não será apresentado nada ao eleger a consulta, apenas será comunicado ao usuário que primeiro deve preencher o campo de Tabela. Obrigatório.
Chave (cwo_llave) .- Permite cadastrar instruções advpl que servem para fazer um dbseek à tabela e ao índice em questão. Obrigatório. Validar que a informação incluída seja efetivamente uma instrução ADVPL (verificar a função de validação de lançamentos padrão).
Caché (cwo_cache).- Permite selecionar Sim ou Não. Esse dado será utilizado para melhorar a performance no uso do lançamento padrão, quando for utilizada a formulação. Atribuir Sim, aumenta o consumo de memória, porém, melhora a performance. Recomenda-se apenas se o uso da tabela for muito concorrido na configuração dos lançamentos, por exemplo, tabelas de Centros de custo, Contas Contáveis, etc. Por exemplo, não é interessante ativar a tabela de Fornecedores, pois as notas fiscais são de fornecedores diferentes.

Ao Confirmar, será validado:

  • Que o código da tabela (cwo_tabla) seja cadastrado apenas uma vez em todo o getdados. Do contrário enviar para o usuário o aviso "Não pode repetir a tabela".
  • Que nos registros onde a tabela foi alterada ou excluída, a tabela anterior não estiver sendo utilizada por alguma fórmula em algum lançamento (relacionar as tabelas cwq e cwm para verificar quais tabelas estão associadas ao lançamento por meio de formulação), do contrário, será enviado o seguinte aviso para o usuário "A tabela XXX não pode ser alterada, está sendo utilizada em alguma fórmula do Lançamento".


Se a validação for aprovada, serão salvos os dados citados anteriormente mais a filial (cwo_filial) e o código do lançamento selecionado (cva_codigo ) na tabela CWO (cwo_codpto). Também irá salvar o valor da conversão para decimal do valor do campo CWO_INDICE no campo CWO_INDVAL.

Opção Excluir 
Ao selecionar esta opção será visualizada toda a informação que está descrita no ponto anterior e ao selecionar Confirmar, pergunta ao usuário "Eliminar as tabelas deste ponto de lançamento?" , em caso afirmativo, serão excluídos os registros da tabela CWO que forem do código do ponto de lançamento correspondente (CWO_codpto=cva_codigo), porém, somente aquelas que forem do tipo usuário (CWO_tipo ='U').
Regra de Integridade
Valida que os registros a excluir na tabela (cwo_tabla) não estejam sendo utilizados por alguma fórmula em algum lançamento (relacionar as tabelas cwq e cwm para verificar que as tabelas estão associadas ao lançamento por meio de formulação), se for assim, será enviado o seguinte aviso para o usuário "A tabela XXX não pode ser excluída, está sendo utilizada em alguma fórmula do Lançamento".    

Entrando por primeira vez na rotina
A primeira vez que for executada esta rotina, devem ser carregadas as tabelas associadas ao Ponto de Lançamento (CWO). Para que estas executem o chamado da rotina CTB94CARGA(), que conterá este processo, desenvolvido no Requisito 151106.

Tabelas Utilizadas

  • CVA.- Pontos de Lançamento.
  • CWO.- Tabelas x Pontos de Lançamento.
  • CWQ.- Tabelas Utilizadas por Fórmula.
  • CWM.- Fórmulas Utilizadas por Lançamento.
  • SX2.- Tabelas.
  • SIX.- Índices.

Protótipo de Telas 


Protótipo 01 Retorno

 Protótipo 02 Retorno

Regras de Integridade 

  • São citadas na seção de Regra de Negócio.

Release Notes 


Módulo

SIGACTB / PROTHEUS

Função

Tabelas utilizadas nos pontos de lançamento.

Descrição da Função

Permite cadastrar todas as tabelas que são utilizadas para cada Ponto de Lançamento. Serve para validar as fórmulas que forem associadas ao Lançamento Padrão e reduzir o nível de erro do usuário.

Módulo

SIGACTB

Função

CTBA094

Situação/Requisito

151103


Fluxo de Processo 


Diagrama de Entidade e Relacionamento


Dicionários de Dados



Dicionário de Dados (sx3/sx2/six)

  • CWO – Tabelas para Pontos de Lançamento

Campo

Tipo

Tam.

Dec.

Título

Descrição

CWO_FILIAL

C       



Filial


CWO_CODPTO

C

3


Código Lançamento


Descrição

Código do Ponto de Lançamento

Formato

@!

Nível

1

Usado

Não

Inc. Std

CVA->CVA_CODIGO

Obrigatório

Sim

CWO_TIPO

C

1


Tipo

Descrição

Tipo

Formato

@!

Nível

1

Usado

Sim

Obrigatório

Sim

Browse

Não

Contexto

Real

Inic std.

“U”

Lista

U=Usuários=Sistema

Propriedade

Visualizar

Help

Tipo de registro U=Usuário, S=sistema

CWO_TABLA

C

3


Tabela

Descrição

Tabela

Formato


Nível

1

Usado

Si

Obrigatório

Si

Browse

No

Contexto

Real

Propriedade

Alterar

Consulta

HSPSX2

Validação

CTB94VLDT(), valida que a tabela exista em SX2 e se existe, informa na descrição o campo CWO_DESCRI, segundo o idioma (x2_nomespa,x2_nome,..)



Help


CWO_DESCRI

C

30


Descrição

Descrição

Descrição

Formato

@!

Nível

1

Usado

Sim

Obrigatório

Não

Browse

Não

Contexto

Virtual

Propriedade

Visualizar

Consulta


Inic Std

CTBA094DESC()

Validación


Help


CWO_INDICE

C

1


Índice

Descrição

Índice

Formato

@!

Nível

1

Usado

Sim

Obrigatório

Sim

Browse

Não

Contexto

Real

Propriedade

Alterar

Consulta

SIXFUN

Validação

CTB94VLDI(), valida que o número de índice exista no SIX, para a tabela selecionada



Help

Número de índice a utilizar

CWO_LLAVE

C

100


Chave

Descrição

Chave para Dbseek

Formato

@!

Nível

1

Usado

Sim

Obrigatório

Sim

Browse

Não

Contexto

Real

Propriedade

Alterar

Consulta


Validação

CTB94ADVPL(), valida que o texto cadastrado tenha sintaxe ADVPL.

Help

Código ADVPL com o qual será efetuada a pesquisa na tabela, segundo o índice selecionado

CWO_INDVAL

C

2

0

Valor Índice

Descrição

Valor Índice

Formato

@!

Nível

1

Usado

Não

Obrigatório

Não

Browse

Não

Contexto

Real

Propriedade

Alterar

Consulta


Validação


Help

Valor numérico do índice relacionado com a tabela.



CWO_CACHE

C

1

0

Caché

Descrição

Caché

Formato

@!

Nível

1

Usado

Sim

Obrigatório

Não

Browse

Não

Contexto

Real

Propriedade

Alterar

Consulta

Pertence(“12”)

Validação


Help

Atribuir Sim, aumenta o consumo de

Memória, porém, melhora a performance. Recomenda-se apenas se o uso da tabela for muito concorrido na configuração dos lançamentos, por exemplo, tabelas de

Centros de custo, Contas Contáveis,

etc.

Por exemplo, não é interessante ativar a tabela de Fornecedores, pois as notas fiscais são de fornecedores diferentes.



Índice: CWO_FILIAL+CWO_CODPTO+CWO_TABLA

 

CWM – Fórmulas usadas por 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 de Lançamento Padrão

Formato

@!

Nível

1

Usado

Sim

Obrigatório

Sim

CWM_SEQUEN

C

3


Sequência

Descrição

Sequência

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

CWQ – Tabelas usadas em Fórmulas

Campo

Tipo

Tam.

Dec.

Título

Descrição

CWQ_FILIAL

C



Filial


CWQ_CODFOR

C

15


Código de Fórmula


Descrição

Código de Fórmula

Formato

@!

Nível

1

Usado

Sim

Obrigatório

Sim

CWQ_TABLA

C

3


Alias tabela

Descrição

Alias tabela

Formato

@!

Nível

1

Usado

Sim

Obrigatório

Sim

Índice: CWQ_FILIAL+CWQ_CODFOR+CWQ_TABLA

CWQ_FILIAL+ CWQ_TABLA+CWQ_CODFOR

Estrutura de Menu

No módulo Configurador (SIGACFG) informe a rota Ambiente/Arquivos/Menus. Informe a nova opção do menu de SIGACTB (Contabilidade de Gestão), segundo as seguinte instruções:

Menu

Contabilidade de Gestão

Submenu

Atualizações>Entidades>Tabelas X Ptos. Lançamento

Nome de Rotina

Funções         

Programa

CTBA094

Módulo

SIGACTB  

Tipo

Função Protheus