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 | SIGAORG |
Segmento Executor | Serviços | ||
Projeto1 | M_SER_RH_001 | IRM1 | PCREQ-4517 |
Requisito1 | PCREQ-4518 | Subtarefa1 |
|
Chamado2 |
| ||
Release de Entrega Planejada | 12.1.9 | Réplica |
|
País | ( ) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia (X ) Outro : Todos | ||
Outros | Portal Gestão do Capital Humano envolvido |
Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos).
(Obrigatório)
Objetivo
Desenvolver o Arquitetura Organizacional(SIGAORG) utilizando o TOTVS HTMLFramework.
Com o novo Arquitetura Organizacional será possível cadastrar departamentos, visões e montar suas estruturas de forma rápida e fácil dentro do Fluig.
Alguns Objetivos:
- Power-Up Fluig - Pode ser utilizado em conjunto com os mecanismos de atribuição
- SOA - 100% Stateless
- Arquitetura Unica - Sistema único de aprovadores que possa atender todos os módulos
(Obrigatório)
Definição da Regra de Negócio
Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio |
ORGW010 | [Criação] | - | Serviço Rest de Cadastro de Departamentos |
CSAA100 | [Envolvida] | [Atualizações -> Cadastros-> Deparatamentos] |
|
ORGW001 | [Criação] | - | Serviço Rest de Cadastro de Visão |
ORGW002 | [Criação] | - | Serviço Rest de Cadastro de Entidades |
ORGW003 | [Criação] | - | Serviço Rest de Cadastro de Funções |
ORGW004 | [Criação] | - | Serviço Rest de Cadastro de Cargos |
O Intuito é facilitar a criação das estruturas de aprovação da empresa para isso vamos desenvolver as rotinas utilizando o novo TOTVS HTMLFramework integrado com o Fluig.
Toda a comunicação com o ERP será feita através de Rest/Json, que deverá seguir algumas regras descritas abaixo, a interface será em HTML5 com AngularJs e Bootstrap.
A tela inicial(protótipo abaixo) terá as visões já cadastradas com opção de editar/excluir/Clonar/Incluir e um menu com os cadastros auxiliares, como Departamento, Centro de Custo, Função, Cargo.
Uma alteração importante será realizada na estrutura de tabelas responsáveis por guardar os dados do nível hierárquico, por isso será necessário ao gravar essas novas tabelas atualizar as antigas e vice versa para que alterações feitas tanto pelo ERP quanto pela Web funcionem corretamente.
Vamos prover serviços Rest para que outros sistemas como o Fluig possam consultar o próximo aprovador e assim poder distribuir corretamente os WorkFlow's.
Alterar CSAA100
Alterar a rotina de gravação Cs100Grava() para quando for Execauto não utilizar o "ConfirmSX8()" e fazer o rollback da numeração, pois o código do departamento virá do serviço REST
Criar a Função RhRestRet(oObj,nTam)
Essa função será utilizada para montar o retorno em Json dos métodos. Ela adiciona as propriedades especificas que o HTMLFramework necessita.
Criar a Função RhRestERR(cCod,cMsg)
Essa função será utilizada para montar o retorno de erro em Json dos métodos. Ela adiciona as propriedades especificas que o HTMLFramework necessita.
Criação de serviços Rest
Os retorno sempre deverão conter a seguinte estrutura:
O Recno dos registros também devem ser devolvidos na propriedade ID, é através dele que os registros são localizados para edição/deleção.
messages: [0]
Em caso de erro a estrutura de retorno deve ser Utilizar a função RhRestERR(cCod,cMsg) para retornar essa estrutura:
Entidade(ORGW002)
Consultar tabela de Entidades(QN6)
Estrutura de Retorno: Utilizar a função RhRestRet() para transformar o retorno em Json.
WSDATA id AS integer ->(Recno)
WSDATA filial AS string
WSDATA Codigo AS string
WSDATA Descricao AS string
WSDATA Alias AS string
WSDATA Chave AS string
WSDATA CampoIdEntidade AS string
WSDATA CampoDescrEntidade AS string
WSDATA CampoDetalheEntidade AS string
(GET)\entidade
Retorna uma lista com os dados das Entidades respeitando os parâmetros StartIndex e Limit, que definem a partir de quando começa a pesquisa e quantos registros devem retornar.
(GET)\entidade\[idEntidade]
Retorna os dados da Entidade respeitando o parâmetro recebido.
(GET)\entidade\[idEntidade]\visoes
Retorna todas as visões(RDK) que estão cadastradas para esta entidade, através do campo RDK_ENTIDA.
WSSTRUCT TEntidadeVisao
WSDATA idVisao as Integer
WSDATA filial AS string
WSDATA codigo AS string
WSDATA descricao AS string
WSDATA status AS string
ENDWSSTRUCT
(GET)\entidade\[idEntidade]\relacionamentos
(Post)\entidade
Insere os dados da Entidade e retorna o código do mesmo.
(Put)\entidade\[identidade]
Atualiza os dados da Entidadee retorna o código do mesmo.
(DELETE)\entidade\[idEntidade]
Exclui a Entidade e retorna o código do mesmo.
Visão (ORGW001)
Consultar tabela de visões(RDK)
Criar campo RDK_ENTIDA, para gravar o código da Entidade que esta relacionada.
Estrutura de Retorno: Utilizar a função RhRestRet() para transformar o retorno em Json.
WSDATA id AS integer ->(Recno)
WSDATA filial AS string
WSDATA codigo AS string
WSDATA descricao AS string
WSDATA status AS string
WSDATA hierarquia AS string
WSDATA tipo AS string
WSDATA dataInclusao AS date
WSDATA dataSuspensao AS date
(GET)\visao
Retorna uma lista com os dados das visões respeitando os parâmetros StartIndex e Limit, que definem a partir de quando começa a pesquisa e quantos registros devem retornar.
(GET)\visao\[idVisao]
Retorna os dados da visão respeitando o parâmetro recebido.
(Post)\visao
Insere os dados de visão e retorna o código do mesmo.
(Put)\visao\[idVisao]
Atualiza os dados da Visão e retorna o código do mesmo.
(DELETE)\visao\[idvisao]
Exclui a Visão e retorna o código do mesmo.
\visao\[idVisao]\estrutura
\visao\[idVisao]\entidade
Funções (ORGW003)
Consultar tabela de Funções(SRJ)
Estrutura de Retorno: Utilizar a função RhRestRet() para transformar o retorno em Json.
WSDATA id as Integer
WSDATA filial AS string
WSDATA codigo AS string
WSDATA descricao AS string
WSDATA cbo2002 AS string
WSDATA cbo1994 AS string
WSDATA maodeobra AS string
WSDATA cargo AS string
WSDATA descrcargo AS string
WSDATA salario AS float
WSDATA requisitos AS string
WSDATA imprimeppp AS string
WSDATA funcaolider AS string
(GET)\funcao
Retorna uma lista com os dados das funções respeitando os parâmetros StartIndex e Limit, que definem a partir de quando começa a pesquisa e quantos registros devem retornar.
(GET)\funcao\[idFuncao]
Retorna os dados da Função de acordo com o Id recebido.
(Post)\funcao
Insere os dados de Função e retorna o código do mesmo.
(Put)\funcao\[idFuncao]
Atualiza os dados da Função e retorna o código do mesmo.
(DELETE)\funcao\[idfuncao]
Exclui a Função e retorna o código do mesmo.
Cargos (ORGW004)
Consultar tabela de Cargos(SQ3)
Estrutura de Retorno: Utilizar a função RhRestRet() para transformar o retorno em Json.
WSSTRUCT TCargo
WSDATA id as Integer
WSDATA filial AS string
WSDATA codigo AS string
WSDATA descricao AS string
WSDATA centrocusto AS string
WSDATA descrcc AS string
WSDATA descrdet AS string
WSDATA responsabilidade AS string
WSDATA relacionamento AS string
WSDATA habilidades AS string
WSDATA grupo AS string
WSDATA departamento AS string
ENDWSSTRUCT
(GET)\cargo
Retorna uma lista com os dados dos Cargos respeitando os parâmetros StartIndex e Limit, que definem a partir de quando começa a pesquisa e quantos registros devem retornar.
(GET)\cargo\[idCargo]
Retorna os dados do Cargo de acordo com o Id recebido.
(Post)\cargo
Insere os dados de Cargo e retorna o código do mesmo.
(Put)\cargo\[idCargo]
Atualiza os dados do Cargo e retorna o código do mesmo.
(DELETE)\cargo\[idCargo]
Exclui o Cargo e retorna o código do mesmo.
Departamento (ORGW010)
Consultar tabela de departamentos(SQB)
Estrutura de Retorno: Utilizar a função RhRestRet() para transformar o retorno em Json.
WSDATA id AS integer ->(Recno)
WSDATA filial AS string
WSDATA codigo AS string
WSDATA descricao AS string
WSDATA centrocustro AS string
WSDATA descrcentrocusto AS string
WSDATA filialresp AS string
WSDATA matricularesp AS string
WSDATA departamentosup AS string
(GET)\departamento
Retorna uma lista com os dados dos departamentos respeitando os parâmetros StartIndex e Limit, que definem a partir de quando começa a pesquisa e quantos registros devem retornar.
(GET)\departamento\[idDepartamento]
Retorna os dados do departamento de acordo com o Id recebido.
(Post)\departamento
Insere os dados de departamento e retorna o código do mesmo.
(Put)\departamento\[idDepartamento]
Atualiza os dados de departamento e retorna o código do mesmo.
(DELETE)\departamento\[idDepartamento]
Exclui o departamento e retorna o código do mesmo.
Tabelas Utilizadas
- SQB – Cadastro de Departamentos
- RDK – Cadastro de Visões
- RD4 - Itens da Visão
- QN6 - Cadastro de Entidades
- SRJ - Cadastro de Funções
- SQ3 - Cadastro de Cargos
Opcional
Protótipo de Tela
Protótipo 01 - Home
Protótipo 02 - Menu da Visão
Protótipo 03 - Criar nova Visão
!
Protótipo 04 - Excluir Visão
Protótipo 05 - Selecionar Entidade
Protótipo 06 - Menu Entidades
Protótipo 07 - Tela Inicial Visão
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 : RDK – Cabeçalho de Visões
Índice | Chave |
05 | RDK_FILIAL + RDK_ENTIDA |
Campo | RDK_ENTIDA |
Tipo | Caracter |
Tamanho | 6 |
Decimal | 0 |
Formato | @! |
Título | Cod.Entidade |
Descrição | Código da Entidade |
Usado | Sim |
Obrigatório | Não |
Browse | Sim |
Propriedade | Alterar |
Ordem | 09 |
Arquivo : QN6 – Cadastro de Entidades
Índice | Chave |
---|---|
01 | QN6_FILIAL + QN6_CODIGO + QN6_ALIAS |
02 | QN6_FILIAL + QN6_ALIAS |
Campo | QN6_FILIAL |
Tipo | Caracter |
Tamanho | 8 |
Decimal | 0 |
Título | Filial |
Descrição | Filial |
Usado | Não |
Obrigatório | Não |
Browse | Sim |
Contexto | Real |
Propriedade | Alterar |
Grupo de Campos | 033 - Tamanho da Filial |
Ordem | 01 |
Campo | QN6_CODIGO |
Tipo | Caracter |
Tamanho | 6 |
Decimal | 0 |
Título | Cod.Entidade |
Descrição | Código Entidade |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Val. Sistema | NaoVazio() |
Contexto | Real |
Propriedade | Alterar |
Ordem | 02 |
Campo | QN6_DESCR |
Tipo | Caracter |
Tamanho | 40 |
Decimal | 0 |
Formato | @! |
Título | Descrição |
Descrição | Descrição da Entidade |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Val. Sistema | NaoVazio() |
Contexto | Real |
Propriedade | Alterar |
Ordem | 03 |
Campo | QN6_ALIAS |
Tipo | Caracter |
Tamanho | 3 |
Decimal | 0 |
Formato | @! |
Título | Alias |
Descrição | Alias da entidade |
Usado | Sim |
Obrigatório | Sim |
Browse | Sim |
Val. Sistema | NaoVazio() |
Contexto | Real |
Propriedade | Alterar |
Ordem | 04 |
Campo | QN6_CHAVE |
Tipo | Caracter |
Tamanho | 40 |
Decimal | 0 |
Título | Chave |
Descrição | Chave Primaria do Alias |
Usado | Sim |
Obrigatório | Não |
Browse | Não |
Contexto | Real |
Propriedade | Alterar |
Ordem | 05 |
Campo | QN6_ENTCOD |
Tipo | Caracter |
Tamanho | 15 |
Decimal | 0 |
Título | Campo Cod. |
Descrição | Campo Cod. Alias |
Usado | Sim |
Obrigatório | Não |
Browse | Não |
Contexto | Real |
Propriedade | Alterar |
Ordem | 06 |
Campo | QN6_ENTDES |
Tipo | Caracter |
Tamanho | 15 |
Decimal | 0 |
Título | Campo Descr |
Descrição | Campo Descr. Alias |
Usado | Sim |
Obrigatório | Não |
Browse | Não |
Ordem | 07 |
Campo | QN6_ENTDET |
Tipo | Caracter |
Tamanho | 15 |
Decimal | 0 |
Título | Campo Detal. |
Descrição | Campo Detalhe Alias |
Usado | Sim |
Obrigatório | Não |
Browse | Não |
Contexto | Real |
Propriedade | Alterar |
Ordem | 08 |
(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 |
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|