Histórico da Página
Informações Gerais
Especificação | |||
Produto | PIMSCANA | Módulo | Plataforma/Indicadores GoodData |
Segmento Executor | |||
Projeto1 | AGRO PIMS | IRM/EPIC1 | AGRPIMS01-49 |
Requisito/Story/Issue1 | AGRPIMS01-50 | Subtarefa1 | AGRPIMS01-73 |
Chamado/Ticket2 | |||
País | ( X ) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( ) Outro _____________. | ||
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
Modelar (design) e implementar uma estratégia para extração de dados dos módulos/produtos do segmento Agroindústria da TOTVS e envio de tais dados para a plataforma de indicadores GoodData.
Tal necessidade se originou, inicialmente, devido à obrigatoriedade de que, ao se utilizar a plataforma GoodData, a(s) base(s) de dados dos clientes dever/deveriam disponibilizar uma interface (porta de comunicação) externa à rede. Dessa maneira, todos os projetos GoodData, por padrão, buscam/buscariam dados diretamente no ambiente do cliente (servidor da base de dados disponibilizada para acesso externo).
Definição da Regra de Negócio
Tecnologias adotadas
Esta seção elenca as tecnologias e recursos tecnológicos adotados para a proposição, modelagem e implementação da plataforma Agro Agent.
• Plataforma Java: versão 8 da plataforma Java.
• Gerenciamento de dependências e builds com Apache Maven: versão 3.0.4 da plataforma Maven.
• Recursos JDBC (em Inglês, Java Database Connectivity): conexão e execução de instruções DML inicialmente homologada para o RDBMS dos produtos Oracle.
• Geração de pacotes resultantes da extração de dados: geração de arquivos CSVs e ZIPs como resultado da execução dos extratores configurados. Após a extração dos dados por meio das instruções DML, os resultados são armazenados em arquivos CSVs que, posteriormente, são encapsulados em arquivos ZIPs que serão submetidos ao GoodData (Web).
• Envio de pacotes resultantes da extração de dados: autenticação na plataforma GoodData (Web) e o envio dos arquivos ZIPs (contendo os arquivos CSVs resultantes da extração de dados).
• Geração de LOGs: dependência do componente Log4J para geração de arquivos de LOGs e de mensagens de auditoria da plataforma Agro Agent.
• Interface com WebDAV da plataforma GoodData (Web): dependência do componente “Sardine” para a autenticação no diretório de upload da plataforma GoodData (Web) e a manipulação dos pacotes resultantes da extração de dados (arquivos ZIPs) submetidos ao processo de atualização dos indicadores GoodData.
• Quartz Scheduler: agendamento de processos por expressão CRON para execução paralela (em background) dos processo de extração. Após configurados os componentes extratores, não se torna mais necessário interagir por interface gráfica. Dessa forma, a aplicação será responsável pela execução ininterrupta das extrações e envios de dados.
Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio |
Arquivo "agent.properties" | Inclusão | Arquivo físico (sem menu) | Permitir a configuração dos parâmetros necessários para a correta execução dos extratores do segmento de Agroindústria. O nome do arquivo, e.g. "agent.properties", deve corresponder ao respectivo graph (grafo) utilizado na modelagem do projeto GoodData. Por exemplo: "dimensoes.properties", "fatoobjetivosafra.properties", "fatoqualidade.properties" e demais. |
Exemplo de arquivo "dimensoes.properties" (extração de dados para dimensões de (i) Componente, (ii) Equipamento e (iii) Fornecedor)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
##############################
### GoodData configuration ###
##############################
gdc.upload=false
# Credentials
gdc.username=guilherme.farto@totvsfarto@totvs.com.br
gdc.password=Good@123999_!@#_ABC
gdc.etl.send_credentials=true
# Target
gdc.upload_url=https://secure-di.gooddata.com/project-uploads/wzwlqzstz45ltmxjb9xsvmk7esuorly299999/
gdc.etl.process_url=https://analytics.totvs.com.br/gdc/projects/wzwlqzstz45ltmxjb9xsvmk7esuorly299999/dataload/processes/7abe2452-2657-4135-87fe-5c40b1d10c2a99999-99999
gdc.etl.graph=GoodDataAgentGoodDataAgro/graph/dimensoes.grf
gdc.upload_archive=dimensoes-${yyyyMMddHHmmss}.zip
# The agent creates a working subfolder using mktempdir
tmp_dir=/tmp
#################################
### Source data in a database ###
#################################
###############
# JDBC CONFIG #
###############
jdbc.connections=JDBC2,JDBC1,JDBC0
# TOTVS (JDBC/ORACLE)
JDBC0.driver=oracle.jdbc.driver.OracleDriver
JDBC0.driver_path=C:/Users/prx/ProgramasGD/GoodDataAgent/drivers/oracle/ojdbc7.jar
JDBC0.username=ABONITAUSER_DB
JDBC0.password=ABONITAPWD_DB
JDBC0.url=jdbc:oracle:thin:@10.0.0.7123:15221521:ORCLHMGORCL
###############
# DATA CONFIG #
###############
data.componente.sql=SELECT CD_COMPO, DE_COMPO, CD_UNIMED FROM COMPONEN UNION SELECT -1 CD_COMPO, ' ' DE_COMPO, ' ' CD_UNIMED FROM DUAL ORDER BY CD_COMPO
data.componente.sql.file=componente.csv
data.componente.jdbc=JDBC0
data.equipamento.sql=SELECT CD_EQUIPTO, FG_TP_EQUIP, CD_MODELO, CD_CATEG_OPER, CD_TP_RECURSO FROM EQUIPTOS ORDER BY CD_EQUIPTO
data.equipamento.sql.file=equipamento.csv
data.equipamento.jdbc=JDBC0
data.fornecedor.sql=SELECT CD_FORNEC, DE_FORNEC FROM FORNECS ORDER BY CD_FORNEC
data.fornecedor.sql.file=fornecedor.csv
data.fornecedor.jdbc=JDBC0
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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. |
---|