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 em comum para todos países referentes ao Model, serão implementados em um fonte único e os localizados em específicos, conforme o detalhamento abaixo:
Ponto onto de Entrada | Descrição | País | Fonte | Método | do FWModelEvent|
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 | CTBA020EVPECTBA020.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 | CTBA020EVPEBRACTBA020EVPE.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:
Apresentação padrão
Opções da Rotina- Apresentação em arvore:
- Integrações
- 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. |
---|