Histórico da Página
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|
Informações Gerais
Especificação | |||
Produto | Microsiga Protheus | Módulo | SIGACTB - Contabilidade Gerencial |
Segmento Executor | Serviços | ||
Projeto1 | IRM/EPIC1 | ||
Requisito/Story/Issue1 | Subtarefa1 | ||
Chamado/Ticket2 | |||
País | ( ) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( x ) Outro Todos . | ||
Outros | <Caso necessário informe outras referências que sejam pertinentes a esta especificação. Exemplo: links de outros documentos ou subtarefas relacionadas>. |
Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos).
Objetivo
Reescrever o programa Plano de Contas (CTBA020) utilizando a arquitetura MVC (Model View Controller), isolando a regra de negócio especifica por localizações e integrações do produto com outros módulos.
Definição da Regra de Negócio
- Plano de Contas
Plano de Contas é um elenco de todas as Contas previstas pelo setor contábil da empresa tidas como necessárias aos seus registros contábeis. Estas receberão os valores lançados dia-a-dia pela Contabilidade.
Os planos de contas são elaborados pelas empresas para atender aos seus interesses e à legislação vigente (atualmente a Lei nº 6404, de 15 de dezembro de 1976 - Lei das Sociedades por Ações).
- MVC
A arquitetura Model-View-Controller ou MVC, como é mais conhecida, é um padrão de arquitetura de software que visa separar a lógica de negócio da lógica de apresentação (a interface), permitindo o desenvolvimento, teste e manutenção isolada de ambos.
- Observer
O Observer é um padrão de projeto de software que define uma dependência um-para-muitos entre objetos de modo que quando um objeto muda o estado, todos seus dependentes são notificados e atualizados automaticamente. Permite que objetos interessados sejam avisados da mudança de estado ou outros eventos ocorrendo num outro objeto.
O conceito do Observer será aplicado para realizar a separação da regra de negócio especifica de cada país e das integrações de outros módulos, utilizando a classe FWModelEvent.
A melhoria proposta deverá:
- Manter as funcionalidades existentes (inclusão, alteração, exclusão, etc.);
- Manter os pontos de entrada existentes;
- Manter as integrações existentes (mensagem única, SIGAPCO, etc);
- Separar os processos específicos de cada localização (país) em fonte especifico;
- Separar os processos específicos das integrações em fonte especifico.
Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio |
CTBA020 - Plano de Contas | Alteração | Atualizações -> Entidades | |
CTBI020 | Envolvida | Não se aplica | |
UPDINT02 | Envolvida | ||
GAVM007 | Envolvida | ||
CTBATree | Envolvida |
- Pontos de Entrada
Os pontos de entrada serão mantidos visando reduzir o impacto para os clientes que possuem customizações, porém o MVC nativamente possui pontos de entrada que substituem os já existentes (Ponto de Entrada Padrão do MVC) ficando a critério do cliente a migração. Os pontos de entrada referentes ao Model, serão implementados em um fonte único, conforme o detalhamento abaixo:
Ponto de Entrada | Descrição | País | Fonte | Método |
AT020VCA | Executado na ativação da tela de inclusão. | Todos | CTBA020EVPE.PRW | FWModelEvent ():ModelPreVld() |
CT020BUT | Adiciona opções no grupo "Outras Opções" nas telas de inclusão, alteração,exclusão e visualização. | Todos | CTBA020.PRW | FWFormView():AddUserButton() |
CT020EXC | Executado antes de deletar um registro. | Todos | CTBA020EVPE.PRW | FWModelEvent ():BeforeTTS() |
CT020LOK | Validação das linhas do Plano Referencial. | Exceto DOM/MEX | CTBA020EVPE.PRW CTBA020EVPERUS.PRW CTBA020EVPEPER.PRW ... | FWModelEvent ():GridLinePosVld() |
CT020TOK | Validação geral do Plano Referencial. | Exceto DOM/MEX | CTBA020EVPEBRA.PRW CTBA020EVPERUS.PRW CTBA020EVPEPER.PRW ... | FWModelEvent ():GridPosVld() |
CT20ALTA | Executado no inicio da tela de alteração. | Todos | CTBA020EVPE.PRW | FWModelEvent ():ModelPreVld() |
CT20ALTD | Executado após a alteração, mas dentro da transação. | Todos | CTBA020EVPE.PRW | FWModelEvent ():InTTS() |
CT20EXCA | Executado no começo da função de exclusão de um registro. | Todos | CTBA020EVPE.PRW | FWModelEvent ():BeforeTTS() |
CT20EXCD | Depois de deletar um registro, porem dentro da transação. | Todos | CTBA020EVPE.PRW | FWModelEvent ():InTTS() |
CT20GRA | Executado no inicio da rotina de inclusão. | Todos | CTBA020EVPE.PRW | FWModelEvent ():ModelPreVld() |
CT20GRD | Executado após inclusão do registro. | Todos | CTBA020EVPE.PRW | FWModelEvent ():AfterTTS() |
CTB020VG | Executado na validação da inclusão ou alteração. | Todos | CTBA020EVPE.PRW | FWModelEvent ():ModelPosVld() |
CTB020VLD | Executado antes da apresentação da tela de inclusão, alteração e exclusão de um registro. | Todos | CTBA020EVPE.PRW | FWModelEvent ():ModelPreVld() |
CTBA20CT | Executado dentro da transação dos processo de inclusão, alteração e exclusão. | Todos | CTBA020EVPE.PRW | FWModelEvent ():InTTS() |
- Opções da Rotina
As opções de menu do cadastro de Plano de Contas possuem diferenças nas opções conforme a forma de apresentação, pergunta Cadastro em arvore (F12), abaixo o detalhamento:
Browse padrão
Opção Função Descrição País Rotina Pesquisar AxPesqui Pesquisa de registro. Está opção será removida devida presença de
recurso nativo no Browse.Todos CTBA020.PRW Visualizar Ctba020Vis Visualização de registro. Todos CTBA020.PRW Incluir Ctba020Inc Inclusão de registro. Todos CTBA020.PRW Alterar Ctba020Alt Alteração de registro. Todos CTBA020.PRW Excluir Ctba020Del Exclusão de registro. Todos CTBA020.PRW Importar Ctba020Imp Importação de registros. Todos CTBA020.PRW Exportar Ctba020Exp Exportação de registros. Todos CTBA020.PRW Legenda Ctba020leg Legenda do Browse. Está opção será removida, devida apresentação
ocorrer no duplo clique no ícone da legenda.Todos CTBA020.PRW Conhecimento MSDocument Associação de documentos aos registros. Todos CTBA020.PRW Imprimir Browse - Opção inclusa automaticamente. - - Controles Contábeis CTBA001 Controles contábeis. Exceto Brasil CTBA020RUS.PRW
CTBA020MEX.PRW
CTBA020ARG.PRW
...
Browse em arvore:
Opção Função Descrição País Rotina Ajuda - Opção inclusa automaticamente. - - Pesquisar Ctba3Pes() Pesquisa de registro Todos CTBATree Incluir Ctba3Inc() Inclusão de registro Todos CTBATree Alterar Ctba3Alt() Alteração de registro Todos CTBATree Excluir Ctba3Exc() Exclusão de registro Todos CTBATree Recalcular CTTreeRfsh() Refaz a estrutura da árvore de registros Todos CTBATree Configurar - Opção inclusa automaticamente. - -
- Integrações
As integrações existentes com o cadastro de plano de contas devem ser mantidas, segue abaixo o detalhamento:- Rotina Automática (MSExecAuto):
Com o intuito de não alterar todas as rotinas que integram com o plano de contas e tão pouco gerar impacto em customizações, deve ser realizado tratamento na rotina para receber os dados no padrão utilizado pela MSExecAuto e realizar a alimentação do modelo de dados, validação e gravação dos dados recebidos.
- Mensagem Única (EAI - Enterprise Application Integration):
O adapter do plano de contas (CTBI020), utiliza a rotina automática (MSExecAuto) para realizar a integração, como será mantida a funcionalidade, o processo continuará funcionando sem necessitar de adequações.
- Rotina Automática (MSExecAuto):
- SIGAPCO - Planejamento e Controle Orçamentário
- O módulo SIGAPCO se integra para possibilitar a sincronização do cadastro de plano de contas com as contas orçamentárias. Este processo é ativado por meio do parâmetro MV_PCOSINC igual a 2.
- SIGAPCO - Planejamento e Controle Orçamentário
- Tratamentos Localizados
Tabelas Utilizadas
- CT1 – Plano de Contas
- CTS – Visões Gerenciais
- CVD – Plano de Contas Referenciais
- CVF – Estrutura da Visão
- GUE – Conta Contábil
- CVE – Visão Gerencial
- CVN – Planos de Contas de Referência
- CT1 – Plano de Contas
Opcional
Protótipo de Tela
<Caso necessário inclua protótipos de telas com o objetivo de facilitar o entendimento do requisito, apresentar conceitos e funcionalidades do software>.
Protótipo 01
Opcional
Fluxo do Processo
<Nesta etapa incluir representações gráficas que descrevam o problema a ser resolvido e o sistema a ser desenvolvido. Exemplo: Diagrama - Caso de Uso, Diagrama de Atividades, Diagrama de Classes, Diagrama de Entidade e Relacionamento e Diagrama de Sequência>.
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)
Grupo de Perguntas
<Informações utilizadas na linha Protheus>.
Nome: FINSRF2
X1_ORDEM | 01 |
X1_PERGUNT | Emissão De |
X1_TIPO | D |
X1_TAMANHO | 8 |
X1_GSC | G |
X1_VAR01 | MV_PAR01 |
X1_DEF01 | Comum |
X1_CNT01 | '01/01/08' |
X1_HELP | Data inicial do intervalo de emissões das guias de DARF a serem consideradas na seleção dos dados para o relatório |
(Opcional)
Consulta Padrão
<Informações utilizadas na linha Protheus>
Consulta: AMB
Descrição | Configurações de Planejamento |
Tipo | Consulta Padrão |
Tabela | “AMB” |
Índice | “Código” |
Campo | “Código”; ”Descrição” |
Retorno | AMB->AMB_CODIGO |
(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. |
---|