Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

 Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico.                                                             

  

(Obrigatório)

Informações Gerais

 

Especificação

Produto

PIMS CS

Módulo

 BIA

Segmento Executor

 Agroindústria

Projeto1

A_AGR_DES_CAN001

IRM1

PCREQ-5490

Requisito1

PCREQ-5491

Subtarefa1

PDR_AGR_CAN001-131

Chamado2

 

Release de Entrega Planejada

 PIMS12.1.8

Réplica

 

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

 

A plataforma GoodData possibilita a criação e consulta de dados dos ERPs do segmento Agroindústria da TOTVS por meio de gráfico, tabelas e indicadores.

 

Pode-se elaborar reports, que são relatórios que expressam informações e valores de diferentes módulos das aplicações Agro. Tais reports podem ser incorporados como elementos de dashboards, que são relatórios gerenciais que centralizam diferentes relatórios com base em um conceito e/ou escopo.

 

Este documento de especificação apresenta todos os passos para a criação do projeto GoodData para Agroindústria



Definição da Regra de Negócio

 

 1.     Criação do modelo do projeto no CloudConnect

 

Para criar o modelo do projeto no CloudConnect é necessário:

 

1. Na estrutura do projeto do CloudConnect, clique no botão direito do mouse na pasta Model > New > Logical Data Model

 

 

 2. Na janela “New Logical Data Model”  informe o diretório para o modelo  no campo “Folder” e o título do modelo no campo “Title”. Para finalizar a criação do modelo clique no botão “Finish”;

 

3. Observe na estrutura do projeto do CloudConnect a criação do arquivo do modelo. A extensão do arquivo modelo é .ldm

 

Para criação das Dimensões e das Fatos no modelo utilize “Add Dataset”

                      

 

O Dataset permite adicionar atributo  e fator

 

 

Para criação da dimensão de Data/Período utilize “Add Date”:

 

Exemplo de dimensão

 

Observação: Para definir a chave da dimensão, selecione o tipo do atributo como “Connection Point”.

 

Exemplo de fato

 

Exemplo de modelo completo


 2.     Publicação do modelo na nuvem GoodData

 

 Para publicar o modelo do projeto GoodData na nuvem é necessário:

 

  1. Abra o modelo do projeto;

 

2. No modelo,  clique no botão direito do mouse e selecione a opção Publish model do server;


 3. Caso solicitado, selecione o projeto Good Data referente ao modelo e clique no botão “OK

 

4. A janela “Publish model to server” lista as mudanças realizadas no modelo do projeto e a esturtura de dados será publicada no servidor  GoodData após clicar no botão “Publish”.


 5. Caso a atualização do modelo seja realizada com sucesso uma pop up é exibida informando que as mudanças foram aplicadas.

 

 

3.     Criação do gráfico do projeto no CloudConnect

 

Para criar o gráfico do projeto no CloudConnect é necessário:

 

  1. Na estrutura do projeto do CloudConnect, clique no botão direito do mouse na pasta graph > New > Graph;


 2. Na janela “New Graph Wizard” espefique o nome do gráfico no campo “Name” e a descrição no campo “Description”. Em seguida, clique no botão “Next”;

 

3. Para finalizar a criação do arquivo do gráfico, clique no botão “Finish”. A extensão do gráfico é .GRF

 

4. Na estrutura do projeto do CloudConnect, observe o arquivo de gráfico criado.


4.     Criação da conexão com a base de dados no projeto no CloudConnect

 

Para criar a conexão com a base de dados do projeto no CloudConnect é necessário:

 

  1. Selecionar o arquivo de gráfico.
  2. Na guia “Outline”, clique no botão direto do mouse em  Connections > Connections > Create DB connection

 

 3. Na janela “Database connection”, especifique o JDBC e as propriedades necessária para a criação da conexão com a base de dados. Para testar a conexão clique no botão “Validate connection”. Com a conexão validada com sucesso clique no botão “Finish”.

 

Observação: O CloudConnect possibilita várias conexões.


 

TOTVS Agroindústria

 

Dimensões

 

Instância

Tabela

PMINSTANCIAS

Dimensão

Instância

Campo

Tipo de Dado

Atributo

Tipo

INSTANCIA (PK)

VARCHAR2(5)

Código da Instância

String

DE_INSTANCIA

VARCHAR2(40)

Instância

String

 

 

SQL Query:

 

 SELECT INSTANCIA, DE_INSTANCIA FROM PMINSTANCIAS ORDER BY INSTANCIA

 

Unidade Industrial

Tabela

UNIDIND

Dimensão

Unidade Industrial

Campo

Tipo de Dado

Atributo

Tipo

CD_UNID_IND (PK)

NUMBER(3)

Código da Unidade   Industrial

Integer

DE_UNID_IND

VARCHAR2(40)

Unidade Industrial

String

 

 SQL Query:

 

SELECT CD_UNID_IND, DE_UNID_IND FROM UNIDIND ORDER BY CD_UNID_IND

 

Empresa

Tabela

EMPRESAS

Dimensão

Empresa

Campo

Tipo de Dado

Atributo

Tipo

CD_EMPRESA (PK)

VARCHAR2(5)

Código da Empresa

String

DE_EMPRESA

VARCHAR2(25)

Empresa

String

 

 

SQL Query:

 SELECT CD_EMPRESA, DE_EMPRESA FROM EMPRESAS ORDER BY CD_EMPRESA

 

Fazenda

Tabela

UPNIVEL1

Dimensão

Fazenda

Campo

Tipo de Dado

Atributo

Tipo

CD_UPNIVEL1 (PK)

VARCHAR2(6)

Código da Fazenda

String

DE_UPNIVEL1

VARCHAR2(70)

Fazenda

String

 

 SQL Query:

 

 SELECT CD_UPNIVEL1, DE_UPNIVEL1 FROM UPNIVEL1 ORDER BY CD_UPNIVEL1

 

Tipo de Propriedade

Tabela

TIPOPROPRI

Dimensão

Tipo de Propriedade

Campo

Tipo de Dado

Atributo

Tipo

CD_TP_PROPR (PK)

NUMBER(3)

Código do Tipo de   Propriedade

Integer

DE_TP_PROPR

VARCHAR2(20)

Tipo de Propriedade

String

 

 

SQL Query:

 

SELECT CD_TP_PROPR, DE_TP_PROPR FROM TIPOPROPRI ORDER BY CD_TP_PROPR

 

 Ocupação

Tabela

OCUPACAO

Dimensão

Ocupação

Campo

Tipo de Dado

Atributo

Tipo

CD_OCUP (PK)

NUMBER(2)

Código da Ocupação

Integer

DE_OCUP

VARCHAR2(25)

Ocupação

String

 

SQL Query:

 SELECT CD_OCUP, DE_OCUP FROM OCUPACAO ORDER BY CD_OCUP

 

Variedade 

Tabela

 

VARIEDADES

Dimensão

Variedade

Campo

Tipo de Dado

Atributo

Tipo

CD_VARIED (PK)

NUMBER(3)

Código da Variedade

Integer

DE_VARIED

VARCHAR2(12)

Variedade

String

 

SQL Query:

 

SELECT CD_VARIED, DE_VARIED FROM VARIEDADES ORDER BY CD_VARIED

 

Estágio

Tabela

ESTAGIOS

Dimensão

Estágio

Campo

Tipo de Dado

Atributo

Tipo

CD_ESTAGIO (PK)

NUMBER(2)

Código do Estágio

Integer

DE_ESTAGIO

VARCHAR2(20)

Estágio

String

 

 SQL Query:

 

 SELECT CD_ESTAGIO, DE_ESTAGIO FROM ESTAGIOS ORDER BY CD_ESTAGIO

 

Sistema de Colheita

Tabela

SISTCOLH

Dimensão

Sistema de Colheita

Campo

Tipo de Dado

Atributo

Tipo

CD_SIST_COLH (PK)

NUMBER(2)

Código do Sistema de   Colheita

Integer

DE_SIST_COLH

VARCHAR2(20)

Sistema de Colheita

String

 

 SQL Query:

 

SELECT CD_SIST_COLH, DE_SIST_COLH FROM SISTCOLH ORDER BY CD_SIST_COLH

 

Frente de Transporte

 

Tabela

FRENTRANSP

Dimensão

Frente de Transporte

Campo

Tipo de Dado

Atributo

Tipo

CD_FREN_TRAN (PK)

NUMBER(3)

Código da Frente de   Transporte

Integer

DE_FREN_TRAN

VARCHAR2(30)

Frente de Transporte

String

 

SQL Query:

 SELECT CD_FREN_TRAN, DE_FREN_TRAN FROM FRENTRANSP ORDER BY CD_FREN_TRAN

 

  Fornecedor 

Tabela

FORNECS

Dimensão

Fornecedor

Campo

Tipo de Dado

Atributo

Tipo

CD_FORNEC (PK)

NUMBER(8)

Código do Fornecedor

Integer

DE_FORNEC

VARCHAR2(70)

Fornecedor

String

 

 

 

SQL Query:

 

SELECT CD_FORNEC, DE_FORNEC FROM FORNECS ORDER BY CD_FORNEC

 

Grupo Operativo

 

 

Tabela

GRUOPERATI

Dimensão

Grupo Operativo

Campo

Tipo de Dado

Atributo

Tipo

CD_GRUPO_OP (PK)

NUMBER(3)

Código do Grupo   Operativo

Integer

DE_GRUPO_OP

VARCHAR2(25)

Grupo Operativo

String

 

 

SQL Query:

 

SELECT CD_GRUPO_OP, DE_GRUPO_OP FROM GRUOPERATI ORDER BY CD_GRUPO_OP

 

Marca

 

Tabela

MARCAS

Dimensão

Marca

Campo

Tipo de Dado

Atributo

Tipo

CD_MARCA (PK)

NUMBER(5)

Código da Marca

Integer

DE_MARCA

VARCHAR2(25)

Marca

String

 

 

SQL Query:

 

SELECT CD_MARCA, DE_MARCA FROM MARCAS ORDER BY CD_MARCA

 

Modelo

 

Tabela

MODELOS

Dimensão

Modelo

Campo

Tipo de Dado

Atributo

Tipo

CD_MODELO (PK)

NUMBER(5)

Código do Modelo

Integer

DE_MODELO

VARCHAR2(25)

Modelo

String

CD_GRUPO_OP (FK)

NUMBER(3)

Grupo Operativo

Integer

CD_MARCA (FK)

NUMBER(5)

Marca

Integer

 

 

SQL Query:

 

SELECT CD_MODELO, DE_MODELO, CD_GRUPO_OP, CD_MARCA FROM MODELOS ORDER BY CD_MODELO

 

Categoria Operacional

 

Tabela

CATEG_OPER

Dimensão

Categoria Operacional

Campo

Tipo de Dado

Atributo

Tipo

CD_CATEG_OPER (PK)

NUMBER(5)

Código da Categoria   Operacional

Integer

DE_CATEG_OPER

VARCHAR2(25)

Categoria   Operacional

String

 

 

 

SQL Query:

 

 

 

SELECT CD_CATEG_OPER, DE_CATEG_OPER FROM CATEG_OPER ORDER BY CD_CATEG_OPER

 

 

 

Equipamento

 

 

 

Tabela

EQUIPTOS

Dimensão

Equipamento

Campo

Tipo de Dado

Atributo

Tipo

CD_EQUIPTO (PK)

NUMBER(8)

Equipamento

Integer

FG_TP_EQUIP

VARCHAR2(1)

Tipo do Equipamento

String

CD_MODELO (FK)

NUMBER(5)

Modelo

Integer

CD_CATEG_OPER (FK)

NUMBER(5)

Categoria   Operacional

Integer

 

 

 

SQL Query:

 

 

 

SELECT CD_EQUIPTO, FG_TP_EQUIP, CD_MODELO, CD_CATEG_OPER FROM EQUIPTOS

 

ORDER BY CD_EQUIPTO

 

 

 

Composição

 

 

 

Tabela

TPCOMPOSI

Dimensão

Composição

Campo

Tipo de Dado

Atributo

Tipo

CD_TP_COMPO (PK)

NUMBER(2)

Código da Composição

Integer

DE_TP_COMPO

VARCHAR2(20)

Composição

String

FG_VEICULO

VARCHAR2(1)

Tipo do Caminhão

String

 

SQL Query:

 

 

 

SELECT CD_TP_COMPO, DE_TP_COMPO, FG_VEICULO FROM TPCOMPOSI ORDER BY CD_TP_COMPO

 

Recurso

 

 

 

Tabela

NUM_RECURSO

Dimensão

Recurso

Campo

Tipo de Dado

Atributo

Tipo

CD_TP_RECURSO (PK)

VARCHAR2(2)

Tipo de Recurso

String

DE_EQUIPTO

VARCHAR2(2)

Equipamento do   Recurso

String

DE_OPERADOR

VARCHAR2(15)

Operador do Recurso

String

 

 

 

SQL Query:

 

 

 

SELECT CD_TP_RECURSO, DE_EQUIPTO, DE_OPERADOR FROM NUM_RECURSO ORDER BY CD_TP_RECURSO

 

 

 

Classe de Manutenção

 

 

 

Tabela

CLASMANU

Dimensão

Classe de Manutenção

Campo

Tipo de Dado

Atributo

Tipo

CD_CLASMANU (PK)

NUMBER(2)

Código da Classe de   Manutenção

Integer

DE_CLASMANU

VARCHAR2(25)

Equipamento do   Recurso

String

 

 

 

SQL Query:

 

 

 

SELECT CD_CLASMANU, DE_CLASMANU FROM CLASMANU ORDER BY CD_CLASMANU

 

 

 

Motivo de Entrada

 

 

 

Tabela

MOTIVOENTR

Dimensão

Motivo de Entrada

Campo

Tipo de Dado

Atributo

Tipo

CD_MOTENTR (PK)

NUMBER(3)

Código do Motivo de   Entrada

Integer

DE_MOTENTR

VARCHAR2(20)

Motivo de Entrada

String

 

 

 

SQL Query:

 

 

 

SELECT CD_MOTENTR, DE_MOTENTR FROM MOTIVOENTR ORDER BY CD_MOTENTR

 

 

 

Período Entressafra

 

 

 

Tabela

MOTIVOENTR

Dimensão

Período de Entressafra

Campo

Tipo de Dado

Atributo

Tipo

ID_ENTRES_PER (PK)

VARCHAR2(15)

Identificador do Período   de Entressafra

String

INSTANCIA (FK)

VARCHAR2(5)

Instância

String

CD_SAFRA

NUMBER(5)

Código da Safra

Integer

DE_SAFRA

VARCHAR2(250)

Safra

String

DT_INICIO

DATE

Data de Início da   Entressafra

Date

DT_FIM

DATE

Data de Fim da   Entressafra

Date

 

 

 

SQL Query:

 

 

 

SELECT INSTANCIA || '***' || CD_SAFRA ID_ENTRES_PER, INSTANCIA, CD_SAFRA, DE_SAFRA, DT_INICIO, DT_FIM

 

FROM MNF_ENTRES_PER ORDER BY INSTANCIA, CD_SAFRA

 

Ramo

 

Agrupador por tipo de centro de custo, por exemplo – industria, agricola e administrativo.

 

 

 

Tabela

RAMOCUSTO

Dimensão

Ramo

Campo

Tipo de Dado

Atributo

Tipo

CD_RAMO (PK)

VARCHAR2(2)

Código do Ramo

String

DE_RAMO

VARCHAR2(15)

Ramo

String

 

 

 

SQL Query:

 

 

 

SELECT CD_RAMO, DE_RAMO FROM RAMOCUSTO ORDER BY CD_RAMO

 

 

 

Fase

 

Agrupador de processos, por exemplo - formação de lavoura, colheita, administração de colheita, administração geral, fabricação de açúcar, fabricação de álcool e cogeração de energia.

 

 

 

Tabela

FASES

Dimensão

Fase

Campo

Tipo de Dado

Atributo

Tipo

CD_FASE (PK)

NUMBER(3)

Código da Fase

Integer

DE_FASE

VARCHAR2(25)

Fase

String

 

 

 

SQL Query:

 

 

 

SELECT CD_FASE, DE_FASE FROM FASES ORDER BY CD_FASE

 

 

 

Tipo de Centro de Custo

 

 

 

Tabela

CC_CSTG

Dimensão

Tipo de Centro de Custo

Campo

Tipo de Dado

Atributo

Tipo

CD_TP_CCUSTO (PK)

VARCHAR2(1)

Código do Tipo de   Centro de Custo

String

DE_TP_CCUSTO

VARCHAR2(50)

Tipo de Centro de   Custo

String

 

 

 

SQL Query:

 

 

 

SELECT FG_TP_CCUSTO CD_TP_CCUSTO,

   CASE

     WHEN FG_TP_CCUSTO = '1' THEN 'Produtivo'

     WHEN FG_TP_CCUSTO = '2' THEN 'Auxiliar'

     WHEN FG_TP_CCUSTO = '3' THEN 'Administrativo'

     WHEN FG_TP_CCUSTO = '4' THEN 'Comercial'

     ELSE 'N/A'

   END DE_TP_CCUSTO

 FROM (SELECT DISTINCT FG_TP_CCUSTO FROM CC_CSTG)

ORDER BY FG_TP_CCUSTO

 

 

Componente

Agrupador de recursos, por exemplo - equipamentos, insumos e mão de obra.

 

Tabela

COMPONEN

Dimensão

Componente

Campo

Tipo de Dado

Atributo

Tipo

CD_COMPO (PK)

NUMBER(9)

Código do Componente

Integer

DE_COMPO

VARCHAR2(60)

Componente

String

CD_UNIMED

VARCHAR2(3)

Unidade de Medida

String

 

SQL Query:

 

SELECT CD_COMPO, DE_COMPO, CD_UNIMED FROM COMPONEN

UNION

SELECT -1 CD_COMPO, '' DE_COMPO, '' CD_UNIMED FROM DUAL ORDER BY CD_COMPO

 

Operação

 

Tabela

OPERACOES

Dimensão

Operação

Campo

Tipo de Dado

Atributo

Tipo

CD_OPERACAO (PK)

NUMBER(5)

Código da Operação

Integer

DE_OPERACAO

VARCHAR2(25)

Operação

String

CD_UNIMED

VARCHAR2(3)

Unidade de Medida

String

 

SQL Query:

 

SELECT CD_OPERACAO, DE_OPERACAO, CD_UNIMED FROM OPERACOES ORDER BY CD_OPERACAO

 

Conta

 

Tabela

CTA_CSTO

Dimensão

Conta

Campo

Tipo de Dado

Atributo

Tipo

CD_CONTA (PK)

VARCHAR2(11)

Código da Conta

String

DE_CONTA

VARCHAR2(25)

Conta

String

 

SQL Query:

 

SELECT CD_CONTA, DE_CONTA FROM CTA_CSTO

UNION

SELECT '-1' CD_CONTA, ' ' DE_CONTA FROM DUAL ORDER BY CD_CONTA

 

Centro de Custo

 

Tabela

CC_CSTG

Dimensão

Centro de Custo

Campo

Tipo de Dado

Atributo

Tipo

CD_CCUSTO (PK)

NUMBER(20)

Código do Centro   de  Custo

Long

DE_CCUSTO

VARCHAR2(25)

Centro de Custo

String

FG_INTERP

VARCHAR2(1)

Final de Processo

String

FG_TP_CCUSTO (FK)

VARCHAR2(1)

Código do Tipo de   Centro de Custo

String

CD_RAMO (FK)

VARCHAR2(2)

Código do Ramo

String

CD_FASE (FK)

NUMBER(3)

Código da Fase

Integer

CD_EMPRESA (FK)

VARCHAR2(5)

Código  da Empresa

String

 

SQL Query:

 

SELECT CD_CCUSTO, DE_CCUSTO, FG_INTERP, FG_TP_CCUSTO, CD_RAMO, CD_FASE, CD_EMPRESA

FROM CC_CSTG ORDER BY CD_CCUSTO


 

Centro de Custo de Origem

 

Tabela

CC_CSTG

Dimensão

Centro de Custo de Origem

Campo

Tipo de Dado

Atributo

Tipo

CD_CCUSTO (PK)

NUMBER(20)

Código do Centro   de  Custo de Origem

Long

DE_CCUSTO

VARCHAR2(25)

Centro de Custo de   Origem

String

FG_INTERP

VARCHAR2(1)

Final de Processo

String

FG_TP_CCUSTO (FK)

VARCHAR2(1)

Código do Tipo de   Centro de Custo

String

CD_RAMO (FK)

VARCHAR2(2)

Código do Ramo

String

CD_FASE (FK)

NUMBER(3)

Código da Fase

Integer

CD_EMPRESA (FK)

VARCHAR2(5)

Código  da Empresa

String

 

 

 

SQL Query:

 

 

 

SELECT CD_CCUSTO, DE_CCUSTO, FG_INTERP, FG_TP_CCUSTO, CD_RAMO, CD_FASE, CD_EMPRESA

 FROM CC_CSTG

  

 

Centro de Custo de Destino

 

Tabela

CC_CSTG

Dimensão

Centro de Custo de Destino

Campo

Tipo de Dado

Atributo

Tipo

CD_CCUSTO (PK)

NUMBER(20)

Código do Centro   de  Custo de Destino

Long

DE_CCUSTO

VARCHAR2(25)

Centro de Custo de   Destino

String

FG_INTERP

VARCHAR2(1)

Final de Processo

String

FG_TP_CCUSTO (FK)

VARCHAR2(1)

Código do Tipo de   Centro de Custo

String

CD_RAMO (FK)

VARCHAR2(2)

Código do Ramo

String

CD_FASE (FK)

NUMBER(3)

Código da Fase

Integer

CD_EMPRESA (FK)

VARCHAR2(5)

Código  da Empresa

String

 

 

 SQL Query:

 

SELECT CD_CCUSTO, DE_CCUSTO, FG_INTERP, FG_TP_CCUSTO, CD_RAMO, CD_FASE, CD_EMPRESA

FROM CC_CSTG

 

Base de Rateio

  

Tabela

BRATE_HE

Dimensão

Base de Rateio

Campo

Tipo de Dado

Atributo

Tipo

CD_BRATEIO (PK)

NUMBER(9)

Código da Base de   Rateio

Integer

DE_BRATEIO

VARCHAR2(25)

Base de Rateio

String

FG_TIPO

VARCHAR2(2)

Tipo da Base de   Rateio

String

CD_COMPO (FK)

NUMBER(9)

Código do Componente

Integer

 

 

 

SQL Query:

 

 

 

SELECT BR.CD_BRATEIO, BR.DE_BRATEIO, BR.FG_TIPO, DECODE(BR.CD_COMPO, NULL, -1, BR.CD_COMPO) CD_COMPO

FROM BRATE_HE BR

 UNION

SELECT -1, ' ' DE_BRATEIO, ' ' FG_TIPO, -1 CD_COMPO FROM DUAL

 

Centro de Custo e Base de Rateio

 

Tabela

CC_CSTG / PLCPRDOP / CC_BRATE

Dimensão

Centro de Custo e Base de Rateio

Campo

Tipo de Dado

Atributo

Tipo

RELAC (PK)

NUMBER(20)

Código de   Relacionamento

Long

CD_CCUSTO (FK)

NUMBER(20)

Código do Centro   de  Custo

Long

CD_BRATEIO (FK)

NUMBER(9)

Código da Base de   Rateio

Integer

DT_HISTORI

DATE

Data

Date

 

 

 

SQL Query:

 

 

 

SELECT TO_NUMBER(TO_CHAR(PERIODO.DT_HISTORI, 'MMYYYY') || TO_CHAR(CB.CD_CCUSTO)) RELAC,

   CB.CD_CCUSTO, PERIODO.DT_HISTORI, DECODE(CB.CD_BRAT_FX, NULL, -1, CB.CD_BRAT_FX) CD_BRATEIO

 FROM (

   SELECT CC2.CD_CCUSTO, CB2.DT_REFER, CB2.CD_BRAT_FX

   FROM CC_CSTG CC2

  LEFT OUTER JOIN CC_BRATE CB2 ON CC2.CD_CCUSTO = CB2.CD_CCUSTO

   ) CB

 LEFT OUTER JOIN (

   SELECT CC.CD_CCUSTO, MAX(P.DT_HISTORI) DT_HISTORI

   FROM PLCPRDOP P, CC_CSTG CC

   GROUP BY CC.CD_CCUSTO, TO_CHAR(P.DT_HISTORI, 'MM/YYYY')

   ) PERIODO

ON CB.CD_CCUSTO = PERIODO.CD_CCUSTO

 WHERE (

   CB.DT_REFER = (

   SELECT MAX(CC1.DT_REFER)

   FROM CC_BRATE CC1

   WHERE CC1.CD_CCUSTO = PERIODO.CD_CCUSTO

   AND CC1.DT_REFER <= PERIODO.DT_HISTORI

   ) OR CB.DT_REFER IS NULL)

 

Fatos – Custos Agroindustriais

 

Custo Primário e Custo de Rateio

 

Tabela

PLCPRIM /   PLCRAT

Dimensão

Custo Primário e Custo de Rateio

Campo

Tipo de Dado

Atributo

Tipo

CD_RELAC (FK)

NUMBER(30)

Código de Relacionamento

Long

CD_CCUSTO (FK)

NUMBER(20)

Código do Centro   de  Custo

Long

CD_CONTA (FK)

VARCHAR2(11)

Código da Conta

String

CD_CCDE (FK)

NUMBER(20)

Código do Centro   de  Custo de Origem

Long

DT_HISTORI

DATE

Data

Date

VL_CONSUMO

NUMBER(18,4)

Valor do Consumo

Decimal

 

 

 

SQL Query:

 

 

 

SELECT TO_NUMBER(TO_CHAR(DT_HISTORI, 'MMYYYY') || TO_CHAR(CD_CCUSTO)) CD_RELAC,

  CD_CCUSTO,

  CD_CONTA,

  CD_CCDE,

  DT_HISTORI,

  SUM(VL_CONSUM0) VL_CONSUM0

FROM

   (SELECT P.CD_CCUSTO,

     P.CD_CONTA,

     -1 AS CD_CCDE,

     MAX(P.DT_HISTORI) AS DT_HISTORI,

     SUM(P.VL_DIRE) VL_CONSUM0

   FROM PLCPRIM P  

   WHERE P.FG_PLA_CST = 'C'

   GROUP BY P.CD_CCUSTO,

     P.CD_CONTA,

     TO_CHAR(P.DT_HISTORI, 'MM/YYYY')

   UNION

   SELECT P.CD_CCPARA CD_CCUSTO,

   '-1' AS CD_CONTA,

    P.CD_CCDE,

    MAX(P.DT_HISTORI) AS DT_HISTORI,

    SUM(P.VL_CONSUM) VL_CONSUM0

  FROM PLCRAT P    

  WHERE P.FG_PLA_CST = 'C'

  GROUP BY P.CD_CCPARA,

     P.CD_CCDE,

     TO_CHAR(P.DT_HISTORI, 'MM/YYYY')

   )

 WHERE VL_CONSUM0 != 0

 GROUP BY TO_NUMBER(TO_CHAR(DT_HISTORI, 'MMYYYY') || TO_CHAR(CD_CCUSTO)),

   CD_CCUSTO,

   CD_CONTA,

   CD_CCDE,

   DT_HISTORI

 RDER BY CD_CCUSTO,

   DT_HISTORI


 

Custo

  

Tabela

 

Fato

Custo

Campo

Tipo de Dado

Atributo

Tipo

CD_CCUSTO (FK)

NUMBER(20)

Centro de Custo

Long

CD_OPERAC (FK)

NUMBER(5)

Operação

Integer

CD_COMPO (FK)

NUMBER(9)

Componente

Integer

DT_HISTORI

DATE

Data

Date

VALOR_CONSUMO

NUMBER(18,4)

Valor do Consumo

Decimal

QT_CONSUMIDA

NUMBER(16,5)

Quantidade Consumida

Decimal

 

 

 

SQL Query:

 

 

 

SELECT CD_CCUSTO,

   CD_OPERAC,

   CD_COMPO,

   TO_DATE('01/'|| TO_CHAR(DT_HISTORI, 'MM/yyyy'), 'dd/MM/yyyy') DT_HISTORI,

   VL_CONSUM AS VALOR_CONSUMO,

   SUM(QT_CONSUM) AS QT_CONSUMIDA

FROM PLCOPER

WHERE FG_PLA_CST = 'C'

AND CD_OPERAC != 0

AND CD_COMPO != 0

GROUP BY CD_CCUSTO,

  CD_OPERAC,

  CD_COMPO,

  VL_CONSUM,

  TO_CHAR(DT_HISTORI, 'MM/yyyy')

 

 

Produção da Operação

 

 

 

Tabela

 

Fato

Produção da Operação

Campo

Tipo de Dado

Atributo

Tipo

CD_CCUSTO (FK)

NUMBER(20)

Código do Centro de   Custo

Long

CD_OPERAC (FK)

NUMBER(5)

Código da Operação

Integer

DT_HISTORI

DATE

Data

Date

QT_PRODUCAO_OPER

NUMBER(13,2)

Produção da Operação

Decimal

 

 

 

SQL Query:

 

 

 

SELECT P.CD_CCUSTO,

  P.CD_OPERAC,

  MAX(P.DT_HISTORI) AS DT_HISTORI,

  SUM(P.QT_PRODUC) QT_PRODUCAO_OPER

 FROM PLCPRDOP P

WHERE P.FG_PLA_CST = 'C'

 AND P.CD_COMPO = 0

 GROUP BY P.CD_CCUSTO,

   P.CD_OPERAC,

   TO_CHAR(P.DT_HISTORI, 'MM/YYYY')

 

 

 

Produção do Componente

 

 

 

Tabela

 

Fato

Produção do Componente

Campo

Tipo de Dado

Atributo

Tipo

CD_CCUSTO (FK)

NUMBER(20)

Código do Centro de   Custo

Long

CD_OPERAC (FK)

NUMBER(5)

Código da Operação

Integer

CD_COMPO (FK)

NUMBER(9)

Código do Componente

Integer

DT_HISTORI

DATE

Data

Date

QT_PRODUCAO_COMPO

NUMBER(16,5)

Produção do   Componente

Decimal

 

 

 

SQL Query:

 

 

 

SELECT P.CD_CCUSTO,

  P.CD_OPERAC,

  P.CD_COMPO,

  TO_DATE('01/'|| TO_CHAR(P.DT_HISTORI, 'MM/yyyy'), 'dd/MM/yyyy') AS DT_HISTORI,

  SUM(NVL(P.QT_PRD_INS,0)) QT_PRODUCAO_COMPO

FROM PLCOPER P

INNER JOIN COMPONEN CO ON CO.CD_COMPO = P.CD_COMPO

 WHERE P.FG_PLA_CST = 'C'

 AND P.CD_OPERAC != 0

 AND CO.FG_TP_COMP = 'I'

GROUP BY P.CD_CCUSTO,

  P.CD_OPERAC,

  P.CD_COMPO,

  TO_CHAR(P.DT_HISTORI, 'MM/yyyy')

 UNION

 SELECT P.CD_CCUSTO,

   P.CD_OPERAC,

   P.CD_COMPO,

   TO_DATE('01/'|| TO_CHAR(P.DT_HISTORI, 'MM/yyyy'), 'dd/MM/yyyy') AS DT_HISTORI,

  SUM(NVL(PL.QT_PRODUCAO,0)) QT_PRODUCAO

 FROM (

  (SELECT CD_CCUSTO,

    CD_OPERAC,

    CD_COMPO,

    MAX(DT_HISTORI) AS DT_HISTORI

  FROM PLCOPER

  WHERE FG_PLA_CST = 'C'

   AND CD_OPERAC != 0

   GROUP BY CD_CCUSTO,

     CD_OPERAC,

    CD_COMPO,

     TO_CHAR(DT_HISTORI, 'MM/yyyy')

   ) P INNER JOIN COMPONEN CO ON CO.CD_COMPO = P.CD_COMPO AND CO.FG_TP_COMP != 'I')

 LEFT OUTER JOIN

   (SELECT CD_CCUSTO,

     CD_OPERAC,

     TO_CHAR(DT_HISTORI, 'MM/yyyy') DT_HISTORI,

    SUM(NVL(QT_PRODUC,0)) QT_PRODUCAO

  FROM PLCPRDOP

  WHERE FG_PLA_CST = 'C'

  AND CD_COMPO = 0

  GROUP BY CD_CCUSTO,

    CD_OPERAC,

    TO_CHAR(DT_HISTORI, 'MM/yyyy')

  ) PL

 ON PL.CD_CCUSTO = P.CD_CCUSTO

 AND PL.CD_OPERAC = P.CD_OPERAC

 AND TO_CHAR(P.DT_HISTORI, 'MM/yyyy') = PL.DT_HISTORI

 GROUP BY P.CD_CCUSTO,

   P.CD_OPERAC,

   P.CD_COMPO,

   TO_CHAR(P.DT_HISTORI, 'MM/yyyy')

 

Produção do Centro de Custo Produtivo

 

 

 

Tabela

 

Fato

Produção do Centro de Custo Produtivo

Campo

Tipo de Dado

Atributo

Tipo

CD_RELAC (FK)

NUMBER(30)

Código de   Relacionamento

Long

CD_CCUSTO (FK)

NUMBER(20)

Código do Centro de   Custo

Long

CD_UNIMED

VARCHAR2(3)

Código da Unidade de   Medida

String

DT_HISTORI

DATE

Data

Date

QT_PRODUCAO

NUMBER(13,2)

Produção do Centro   de Custo Produtivo

Decimal

 

 

 

SQL Query:

 

 

 

SELECT TO_NUMBER(TO_CHAR(P.DT_HISTORI, 'MMyyyy') || TO_CHAR(P.CD_CCUSTO)) CD_RELAC,

 

  P.CD_CCUSTO,

 

  OP.CD_UNIMED,

 

  MAX(P.DT_HISTORI) AS DT_HISTORI,

 

  SUM(P.QT_PRODUC) QT_PRODUCAO

 

FROM PLCPRDOP P,

 

  OPERACOES OP

 

WHERE P.FG_PLA_CST = 'C'

 

AND P.CD_COMPO = 0

 

AND (P.INSTANCIA, P.CD_CCUSTO, P.CD_OPERAC) IN

 

(SELECT INSTANCIA, CD_CCUSTO, CD_OP_PROD FROM CC_PROD)

 

AND OP.CD_OPERACAO = P.CD_OPERAC

 

GROUP BY TO_CHAR(P.DT_HISTORI, 'MMyyyy') || TO_CHAR(P.CD_CCUSTO),

 

  P.CD_CCUSTO,

 

  OP.CD_UNIMED,

 

  TO_CHAR(P.DT_HISTORI, 'MM/yyyy')

 

UNION

 

SELECT TO_NUMBER(TO_CHAR(TO_DATE('01/' || D.DATA_PROD, 'dd/MM/yyyy'), 'MMyyyy')

 

|| TO_CHAR(CC.CD_CCUSTO)),

 

  CC.CD_CCUSTO,

 

  ' ' CD_UNIMED,

 

  TO_DATE('01/' || D.DATA_PROD, 'dd/MM/yyyy') DT_HISTORI,

 

  0 QT_PRODUCAO

 

FROM CC_CSTG CC,

 

  (SELECT DISTINCT TO_CHAR(DT_HISTORI, 'MM/yyyy') DATA_PROD

 

  FROM PLCPRDOP

 

  WHERE FG_PLA_CST = 'C'

 

  ) D

 

WHERE CC.FG_TP_CCUSTO = '1'

 

AND CC.FG_INTERP = 'S'

 

AND (CC.CD_CCUSTO, D.DATA_PROD) NOT IN

 

  (SELECT DISTINCT P.CD_CCUSTO,

 

    TO_CHAR(P.DT_HISTORI, 'MM/yyyy')

 

  FROM PLCPRDOP P

 

  WHERE P.FG_PLA_CST = 'C'

 

  AND P.CD_COMPO = 0

 

  AND (P.INSTANCIA, P.CD_CCUSTO, P.CD_OPERAC) IN

 

(SELECT INSTANCIA, CD_CCUSTO, CD_OP_PROD FROM CC_PROD)

 

  )

 

 

Produção do Centro de Custo Auxiliar

 

Tabela

 

Fato

Produção do Centro de Custo Auxiliar

Campo

Tipo de Dado

Atributo

Tipo

CD_RELAC (FK)

NUMBER(30)

Código de Relacionamento

Long

CD_CCUSTO (FK)

NUMBER(20)

Código do Centro de   Custo

Long

CD_UNIMED

VARCHAR2(3)

Código da Unidade de   Medida

String

DT_HISTORI

DATE

Data

Date

CONSUMO

NUMBER(14,6)

Produção do Centro   de Custo Auxiliar

Decimal

CONSUMO2

NUMBER(14,6)

Produção do Centro   de Custo Auxiliar 2

Decimal

 

SQL Query:

 

SELECT TO_NUMBER(TO_CHAR(P.DT_HISTORI, 'MMYYYY') || TO_CHAR(P.CD_CCUSTO)) CD_RELAC,

  P.CD_CCUSTO,

  CO.CD_UNIMED,

  MAX(P.DT_HISTORI) AS DT_HISTORI,

  SUM(QT_CONSUM) CONSUMO,

  SUM(DECODE(CO.FG_TP_COMP, 'Q', QT_CONSUM2, 0)) CONSUMO2

FROM PLCCCEQ P

INNER JOIN COMPONEN CO ON P.CD_COMPO = CO.CD_COMPO

WHERE P.FG_PLA_CST = 'C'

GROUP BY TO_CHAR(P.DT_HISTORI, 'MMYYYY') || TO_CHAR(P.CD_CCUSTO),

  P.CD_CCUSTO,

  CO.CD_UNIMED,

  TO_CHAR(P.DT_HISTORI, 'MM/YYYY')

UNION

SELECT TO_NUMBER(TO_CHAR(TO_DATE('01/' || P.DT_HISTORI, 'DD/MM/YYYY'), 'MMYYYY') ||

TO_CHAR(CC.CD_CCUSTO)) CD_RELAC,

  CC.CD_CCUSTO,

  DECODE(CO.CD_UNIMED, NULL, ' ', CO.CD_UNIMED) CD_UNIMED,

  TO_DATE('01/' || P.DT_HISTORI, 'DD/MM/YYYY') AS DT_HISTORI,

  0 CONSUMO,

  0 CONSUMO2

FROM CC_CSTG CC

LEFT OUTER JOIN COMPONEN CO ON CC.CD_CCUSTO = CO.CD_CCUSTO,

  (SELECT TO_CHAR(P.DT_HISTORI, 'MM/YYYY') DT_HISTORI

  FROM PLCCCEQ P

  WHERE P.FG_PLA_CST = 'C'

  ) P

WHERE CC.FG_TP_CCUSTO = '2'

AND (CC.CD_CCUSTO, P.DT_HISTORI) NOT IN

  (SELECT P.CD_CCUSTO, TO_CHAR(P.DT_HISTORI,'MM/YYYY')

  FROM PLCCCEQ P

  INNER JOIN COMPONEN CO ON P.CD_COMPO = CO.CD_COMPO

  WHERE P.FG_PLA_CST = 'C'

  )

 

Rateio

 

Tabela

 

Fato

Rateio

Campo

Tipo de Dado

Atributo

Tipo

DT_HISTORI

NUMBER(30)

Data

Date

CD_CCDE (FK)

NUMBER(20)

Centro de Custo de   Origem

Long

CD_CCPARA (FK)

VARCHAR2(3)

Centro de Custo de   Destino

String

VL_TAXA

NUMBER(13,6)

Valor da Taxa

Date

VL_CONSUM

NUMBER(18,4)

Valor do Consumo

Decimal

 

SQL Query:

 

SELECT DT_HISTORI, CD_CCDE, CD_CCPARA, VL_TAXA, VL_CONSUM

FROM PLCRAT

WHERE FG_PLA_CST = 'C' AND FG_FX_VR = 'V'

 

Fatos – Manutenção de Frota

Curva S de Entressafra

 

Tabela

MNF_MEMCALC_PV_ENTRES/ APT_OS_HE

Fato

Curva S de Entressafra

Campo

Tipo de Dado

Atributo

Tipo

ID_ENTRES_PER (PK)

VARCHAR2 (20)

Identificador do   Período de Entressafra

String

CD_EQUIPTO (FK)

NUMBER(8)

Equipamento

Integer

DATA

DATE

Data

Date

QT_HR_PLAN

NUMBER(20,4)

Hora Planejada

Decimal

QT_HR_REAL

NUMBER(20,4)

Hora Realizada

Decimal

 

SQL Query:

 

SELECT INSTANCIA || '***' || CD_SAFRA ID_ENTRES_PER,

  CD_EQUIPTO,

  DATA,

  NVL( SUM( QT_HR_PLAN ), 0 ) QT_HR_PLAN,

  NVL( SUM( QT_HR_REAL ), 0 ) QT_HR_REAL

FROM

  (SELECT MEM.INSTANCIA,

    MEM.CD_SAFRA,

    MEM.CD_EQUIPTO,

    MEM.DT_PREV_EXEC DATA,

    ROUND( NVL( SUM( MEM.HR_FIM_FUNC - MEM.HR_INICIO_FUNC ) * 24, 0 ), 2 ) QT_HR_PLAN,

    NULL QT_HR_REAL

  FROM MNF_MEMCALC_PV_ENTRES MEM

  INNER JOIN ( EQUIPTOS EQU

  INNER JOIN ( MODELOS MOD INNER JOIN GRUOPERATI GRU ON MOD.CD_GRUPO_OP = GRU.CD_GRUPO_OP ) ON EQU.CD_MODELO = MOD.CD_MODELO

  INNER JOIN CATEG_OPER CAT

  ON EQU.CD_CATEG_OPER = CAT.CD_CATEG_OPER )

  ON MEM.CD_EQUIPTO = EQU.CD_EQUIPTO

  WHERE MEM.FG_GRAVADO = 'S'

  AND MEM.NO_OS IS NOT NULL

  GROUP BY MEM.INSTANCIA,

    MEM.CD_SAFRA,

    MEM.CD_EQUIPTO,

    MEM.DT_PREV_EXEC

  UNION ALL

  SELECT MEM.INSTANCIA,

    MEM.CD_SAFRA,

    HE.CD_EQUIPTO,

    DE.DT_OPER_INI DATA,

    NULL QT_HR_PLAN,

    ROUND( NVL( SUM( DE.HR_OPER_FIN - DE.HR_OPER_INI ) * 24, 0 ), 2 ) QT_HR_REAL

  FROM APT_OS_HE HE

  INNER JOIN ( APT_OS_DE DE

  INNER JOIN

    (SELECT MEM.INSTANCIA,

      MEM.CD_SAFRA,

      MEM.NO_OS,

      PL.CD_OPERACAO

    FROM MNF_MEMCALC_PV_ENTRES MEM

    INNER JOIN ( EQUIPTOS EQU

    INNER JOIN ( MODELOS MOD

    INNER JOIN GRUOPERATI GRU

    ON MOD.CD_GRUPO_OP = GRU.CD_GRUPO_OP )

    ON EQU.CD_MODELO = MOD.CD_MODELO

    INNER JOIN CATEG_OPER CAT

    ON EQU.CD_CATEG_OPER = CAT.CD_CATEG_OPER )

    ON MEM.CD_EQUIPTO = EQU.CD_EQUIPTO

    INNER JOIN MNF_PM_ENTRES PL

    ON ( MEM.NO_IDENTIF  = PL.NO_IDENTIF

    AND MEM.NO_SEQ = PL.NO_SEQ )

    WHERE MEM.FG_GRAVADO = 'S'

    AND MEM.NO_OS IS NOT NULL

    GROUP BY MEM.INSTANCIA,

      MEM.CD_SAFRA,

      MEM.NO_OS,

      PL.CD_OPERACAO

    ) MEM ON ( DE.INSTANCIA = MEM.INSTANCIA

  AND DE.NO_BOLETIM = MEM.NO_OS

  AND DE.CD_OPERACAO = MEM.CD_OPERACAO ) ) ON ( HE.INSTANCIA = DE.INSTANCIA

  AND HE.NO_BOLETIM = DE.NO_BOLETIM )

  WHERE HE.FG_OBJETO = '1'

  GROUP BY MEM.INSTANCIA,

    MEM.CD_SAFRA,

    HE.CD_EQUIPTO,

    DE.DT_OPER_INI

  )

GROUP BY INSTANCIA,

  CD_SAFRA,

  CD_EQUIPTO,

  DATA

ORDER BY INSTANCIA,

  CD_SAFRA,

  CD_EQUIPTO,

  DATA


 

Métrica:

 

·         Hora Planejada

 

MAQL: SELECT SUM(Hora Planejada)

Metric Format: #,##0.00              

 

 

 

·         Acumulado de Hora Planejada

 

MAQL: SELECT RUNSUM(Hora Planejada)

Metric Format: #,##0.00              

 

 

 

·         Hora Realizada

 

MAQL: SELECT SUM(Hora Realizada)

Metric Format: #,##0.00              

 

 

 

·         Acumulado de Hora Realizada

 

MAQL: SELECT RUNSUM(Hora Realizada)

Metric Format: #,##0.00

 

 

 

·         SPI

 

MAQL: SELECT SUM (Acumulado de Hora Realizada / Acumulado de Hora Planejada)

Metric Format: #,##0.00


 

Sumário de Ordem de Serviço

 

 

 

Tabela

APT_OS_HE

Fato

Sumário de Ordem de Serviço

Campo

Tipo de Dado

Atributo

Tipo

FG_ORIGEM

VARCHAR2(1)

Código da Origem

String

DE_ORIGEM

VARCHAR2(30)

Origem

String

INSTANCIA (FK)

VARCHAR2(5)

Instância

Date

CD_CLASMANU (FK)

NUMBER(2)

Classe de Manutenção

Integer

CD_MOTENTR (FK)

NUMBER(3)

Motivo de Entrada

Integer

DT_ENTRADA

DATE

Data de Entrada

Date

DT_SAIDA

DATE

Data de Saída

Date

QUANTIDADE

NUMBER(15)

Quantidade de Ordem   de Serviço

Long

 

 

 

SQL Query:

 

 

 

SELECT INSTANCIA,

 

  FG_ORIGEM,

 

  DECODE(FG_ORIGEM, 'I', 'Interna', 'C', 'Campo', 'T', 'Terceiro', 'E', 'Concessionária', NULL) DE_ORIGEM,

 

  CD_CLASMANU,

 

  CD_MOTENTR,

 

  DT_ENTRADA,

 

  DT_SAIDA,

 

  COUNT(NO_BOLETIM) QUANTIDADE

 

FROM APT_OS_HE

 

GROUP BY INSTANCIA,

 

  FG_ORIGEM,

 

  CD_CLASMANU,

 

  CD_MOTENTR,

 

  DT_ENTRADA,

 

  DT_SAIDA

 

ORDER BY INSTANCIA,

 

  FG_ORIGEM,

 

  CD_CLASMANU,

 

  CD_MOTENTR,

 

  DT_ENTRADA,

 

  DT_SAIDA

 

 

 

Métrica:

 

·         Quantidade de Ordem de Serviço

 

MAQL: SELECT SUM(Quantidade de Ordem de Serviço)

Metric Format: #,##0.00              

 

 

 

Índice de Planejamento

 

 

 

Tabela

APT_OS_HE/ MNF_PANORAMA/ MNF_MEMCALC_PV_ENTRES

Fato

Índice de Planejamento

Campo

Tipo de Dado

Atributo

Tipo

INSTANCIA (FK)

VARCHAR2(5)

Instância

String

CD_EQUIPTO (FK)

NUMBER(8)

Equipamento

Integer

DATA

DATE

Data

Date

QT_OS_TOT

NUMBER(15)

Quantidade Total de   Ordem de Serviço

Long

QT_OS_PLAN

NUMBER(15)

Quantidade Planejada   de Ordem de Serviço

Long

 

 

 

SQL Query:

 

 

 

SELECT INSTANCIA,

   CD_EQUIPTO,

   DATA,

   NVL( SUM( QT_OS_TOT ), 0 ) QT_OS_TOT,

  NVL( SUM( QT_OS_PLAN ), 0 ) QT_OS_PLAN

FROM

   (SELECT INSTANCIA,

    CD_EQUIPTO,

    DT_ENTRADA DATA,

    COUNT( NO_BOLETIM ) QT_OS_TOT,

    NULL QT_OS_PLAN

  FROM APT_OS_HE

  WHERE FG_OBJETO = '1'

  GROUP BY INSTANCIA,

    CD_EQUIPTO,

    DT_ENTRADA

  UNION ALL

   SELECT HE.INSTANCIA,

     HE.CD_EQUIPTO,

     HE.DT_ENTRADA DATA,

     NULL QT_OS_TOT,

     COUNT( HE.NO_BOLETIM ) QT_OS_PLAN

   FROM APT_OS_HE HE

  WHERE HE.FG_OBJETO = '1'

   AND HE.CD_CLASMANU =

     (SELECT TO_NUMBER( NVL( TRIM( PAR.VALOR ), 0 ) )

    FROM PARAMETROS PAR

    WHERE PAR.INSTANCIA = HE.INSTANCIA

    AND SECAO = 'MNF_MAN'

    AND ENTRADA = 'CD_CLASMANU_COR_PROG'

     )

  GROUP BY HE.INSTANCIA,

     HE.CD_EQUIPTO,

     HE.DT_ENTRADA

   UNION ALL

   SELECT INSTANCIA,

     CD_EQUIPTO,

    TRUNC( DT_PREV_EXEC ) DATA,

    NULL QT_OS_TOT,

    COUNT( DISTINCT NO_OS ) QT_OS_PLAN

  FROM MNF_PANORAMA

  WHERE NO_OS IS NOT NULL

  GROUP BY INSTANCIA,

    CD_EQUIPTO,

    TRUNC( DT_PREV_EXEC )

  

  UNION ALL

  

  SELECT INSTANCIA,

     CD_EQUIPTO,

     MIN( TRUNC( DT_PREV_EXEC ) ) DATA,

     NULL QT_OS_TOT,

    COUNT( DISTINCT NO_OS ) QT_OS_PLAN

  FROM MNF_MEMCALC_PV_ENTRES

  WHERE NO_OS IS NOT NULL

  GROUP BY INSTANCIA,

    CD_EQUIPTO,

     NO_OS

  )

 GROUP BY INSTANCIA,

   CD_EQUIPTO,

   DATA

ORDER BY INSTANCIA,

   CD_EQUIPTO,

  DATA

 

 

Métrica:

 

·         Quantidade Planejada de Ordem de Serviço

 

MAQL: SELECT SUM(Quantidade Planejada de Ordem de Serviço)

Metric Format: #,##0.00              

 

 

 

·         Quantidade Total de Ordem de Serviço

 

MAQL: SELECT SUM(Quantidade Total de Ordem de Serviço)

Metric Format: #,##0.00              

 

 

 

·         Índice de Planejamento

 

MAQL: SELECT SUM(Quantidade Planejada de Ordem de Serviço / Quantidade Total de Ordem de Serviço)  * 100

Metric Format: #,##0.00              

 

 

 

Dimensões – Processo Industrial

 

Empresa

 

 

 

Tabela

MSIEMPRE

Dimensão

PI Empresa

Campo

Tipo de Dado

Atributo

Tipo

EMP_CODEMP (PK)

CHAR(3)

Código da Empresa

String

EMP_DESCRIC

CHAR(40)

Empresa

String

 

 

 

SQL Query:

 

 

 

SELECT E.EMP_CODEMP, E.EMP_DESCRIC FROM MSIEMPRE E ORDER BY E.EMP_CODEMP, E.EMP_DESCRIC

 

 

 

Fonte

 

 

 

Tabela

PROFONTE

Dimensão

PI Fonte

Campo

Tipo de Dado

Atributo

Tipo

ID_PROFONTE (PK)

VARCHAR2(15)

Identificador da   Fonte

String

EMP_CODEMP (FK)

CHAR(3)

Empresa

String

FON_CODIGO

CHAR(3)

Código da Fonte

String

FON_DESCRI

CHAR(30)

Fonte

String

FON_ORDEM

CHAR(3)

Ordem da Fonte

String

FON_STATUS

CHAR(1)

Status da Fonte

String

 

 

 

*FON_STATUS: [A – Ativo]; [I - Inativo]

 

 

 

SQL Query:

 

 

 

SELECT F.EMP_CODEMP || '***' || F.FON_CODIGO ID_PROFONTE,

   F.EMP_CODEMP,

   F.FON_CODIGO,

   F.FON_DESCRI,

   F.FON_ORDEM,

   F.FON_STATUS 

 FROM PROFONTE F

 ORDER BY ID_PROFONTE,

   F.EMP_CODEMP,

   F.FON_CODIGO,

   F.FON_DESCRI,

   F.FON_ORDEM,

   F.FON_STATUS

 

 

 

Subfonte

 

 

 

Tabela

PROSUFON

Dimensão

PI Subfonte

Campo

Tipo de Dado

Atributo

Tipo

ID_PROSUFON (PK)

VARCHAR2(20)

Identificador da   Subfonte

String

ID_PROFONTE (FK)

VARCHAR2(15)

Fonte

String

EMP_CODEMP (FK)

CHAR(3)

Empresa

String

SUF_CODIGO

CHAR(2)

Código da Subfonte

String

SUF_DESCRI

CHAR(30)

Subfonte

String

 

 

 

SQL Query:

 

 

 

SELECT S.EMP_CODEMP || '***' || S.FON_CODIGO || '***' || S.SUF_CODIGO ID_PROSUFON,

  S.EMP_CODEMP || '***' || S.FON_CODIGO ID_PROFONTE,

   S.EMP_CODEMP,

   S.SUF_CODIGO,

   S.SUF_DESCRI

FROM PROSUFON S

ORDER BY ID_PROSUFON,

  ID_PROFONTE,

  S.EMP_CODEMP,

  S.SUF_CODIGO,

  S.SUF_DESCRI

 

Variável

 

 

 

Tabela

PROVARIA

Dimensão

PI Variável

Campo

Tipo de Dado

Atributo

Tipo

ID_PROVARIA (PK)

VARCHAR2(20)

Identificador da   Variável

String

EMP_CODEMP (FK)

CHAR(3)

Empresa

String

FON_CODIGO (FK)

CHAR(3)

Fonte

String

VAR_CODIGO

CHAR(10)

Código da Variável

String

VAR_DESCRI

CHAR(50)

Variável

String

 

 

 

 

 

SQL Query:

 

 

 

SELECT V.EMP_CODEMP || '***' || V.VAR_CODIGO ID_PROVARIA,

  V.EMP_CODEMP || '***' || V.FON_CODIGO ID_PROFONTE,

   V.EMP_CODEMP,

  V.VAR_CODIGO,

  V.VAR_DESCRI

 FROM PROVARIA V

 INNER JOIN PROORREL R ON (R.EMP_CODEMP = V.EMP_CODEMP AND R.VAR_CODIGO = V.VAR_CODIGO)

 WHERE R.REL_CODIGO = '999'

 AND V.VAR_CODIGO != ('00TEXTOREL')

 GROUP BY V.EMP_CODEMP || '***' || V.VAR_CODIGO,

   V.EMP_CODEMP || '***' || V.FON_CODIGO,

  V.EMP_CODEMP,

  V.VAR_CODIGO,

  V.VAR_DESCRI

 

 

 

Fatos – Processo Industrial

 

Valores de Processo Industrial

 

 

 

Tabela

PROGOODDATA01

Fato

PI Valores de Processo Industrial

Campo

Tipo de Dado

Atributo

Tipo

EMP_CODEMP (FK)

CHAR(3)

Código da Empresa

String

REL_CODIGO

CHAR(3)

Código do Relatório

String

ORR_COLUNA

CHAR(2)

Ordem da Coluna

String

VAR_CODIGO (FK)

CHAR(10)

Identificador da   Variável

String

FON_CODIGO (FK)

CHAR(3)

Identificador da   Fonte

String

SUF_CODIGO (FK)

CHAR(2)

Identificador da   Subfonte

String

ORR_ORDEM

CHAR(3)

Ordem da Ordem

String

GDATA

DATE

Data do Boletim

Date

LAN_VALOR

NUMBER(20,8)

Valor

Decimal

META

NUMBER(18,8)

Meta

Decimal

 

 

 

 *Identificador da Fonte: EMP_CODEMP "***" FON_CODIGO

 

      

 

 *Identificador da Subfonte: EMP_CODEMP "***" FON_CODIGO "***" SUF_CODIGO

 

      

 

 *Identificador da Variável: EMP_CODEMP "***" VAR_CODIGO

 

 

 

SQL Query:

 

 

 

SELECT G.EMP_CODEMP,

                 G.REL_CODIGO,

                G.ORR_COLUNA,

                G.VAR_CODIGO,

                G.FON_CODIGO,

                G.SUF_CODIGO,

                G.ORR_ORDEM,

                G.GDATA,

 G. LAN_VALOR,

                 G.META

 FROM PROGOODDATA01 G

 

 

 

 

 

Package:

 

 

 

CREATE OR REPLACE PACKAGE PK_GOODDATA AS

V_IP VARCHAR2(20) := FIP;

PROCEDURE PR_GOODDATA01(PV_RELATORIO IN VARCHAR2, PD_DATA IN DATE, PN_DIAS IN NUMBER);

PROCEDURE PR_GOODDATA02;

 FUNCTION F_METADIA(PC_EMP_CODEMP IN CHAR, PC_VAR_CODIGO IN CHAR, PC_SUF_CODIGO IN CHAR, PD_DATA IN DATE) RETURN NUMBER;

 END PK_GOODDATA;

CREATE OR REPLACE PACKAGE BODY PK_GOODDATA AS

    PROCEDURE PR_GOODDATA01(PV_RELATORIO IN VARCHAR2, PD_DATA IN DATE, PN_DIAS IN NUMBER) IS

       D_DATAF DATE;

       CURSOR CEMPRESA IS

         SELECT EMP_CODEMP FROM MSIEMPRE ORDER BY EMP_CODEMP;

         RCEMPRESA CEMPRESA%ROWTYPE;

      CURSOR CRELATORIO IS

          SELECT R.EMP_CODEMP,

                 R.REL_CODIGO,

                 R.ORR_COLUNA,

                 R.VAR_CODIGO,

                R.FON_CODIGO,

                 R.SUF_CODIGO,

                 R.ORR_ORDEM,

                 BUSCAMEDREL(R.EMP_CODEMP, D_DATAF, R.VAR_CODIGO, R.SUF_CODIGO,'XXXX') VALOR,

                 F_METADIA(R.EMP_CODEMP, R.VAR_CODIGO, R.SUF_CODIGO, D_DATAF) META

          FROM PROORREL R,

              PROVARIA V

          WHERE R.EMP_CODEMP = V.EMP_CODEMP

         AND R.VAR_CODIGO = V.VAR_CODIGO

          AND V.VAR_TIPOVAR IN ('M','E','C','N')

          AND V.VAR_STATUS = 'A'

          AND R.ORR_INATIVA = 'A'

         AND R.REL_CODIGO = PV_RELATORIO

          AND R.EMP_CODEMP = RCEMPRESA.EMP_CODEMP

          ORDER BY R.ORR_ORDEM;

         RCRELATORIO CRELATORIO%ROWTYPE;

  

      BEGIN     

          DELETE PROGOODDATA01 WHERE REL_CODIGO = PV_RELATORIO;

          OPEN CEMPRESA;

         LOOP

             FETCH CEMPRESA INTO RCEMPRESA;

             EXIT WHEN CEMPRESA%NOTFOUND;

            D_DATAF := PD_DATA - CASE WHEN PN_DIAS < 0 THEN 0 WHEN PN_DIAS > 100 THEN 0 ELSE PN_DIAS END;

              LOOP

                EXIT WHEN D_DATAF > PD_DATA;

                DELETE PROCALCULO WHERE CAL_IP = V_IP;

               INSERT INTO PROCALCULO

                 (EMP_CODEMP, CAL_IP, CAL_TIPO, CAL_DATA, CAL_HORA, SUF_CODIGO, CAL_DATAF, CAL_PERIODO)

               VALUES

                 (RCEMPRESA.EMP_CODEMP, V_IP, 'C', D_DATAF, 'XXXX', '01', D_DATAF, 'D');

               OPEN CRELATORIO;

                  LOOP

                     FETCH CRELATORIO INTO RCRELATORIO; 

                     EXIT WHEN CRELATORIO%NOTFOUND;

 INSERT INTO PROGOODDATA01

                        (EMP_CODEMP, REL_CODIGO, ORR_COLUNA, VAR_CODIGO, FON_CODIGO, SUF_CODIGO,

                         LAN_VALOR, ORR_ORDEM, GDATA, META)

                      VALUES

                        (RCRELATORIO.EMP_CODEMP, RCRELATORIO.REL_CODIGO, RCRELATORIO.ORR_COLUNA,

                         RCRELATORIO.VAR_CODIGO, RCRELATORIO.FON_CODIGO, RCRELATORIO.SUF_CODIGO,

                         RCRELATORIO.VALOR, RCRELATORIO.ORR_ORDEM, D_DATAF, RCRELATORIO.META);

                   END LOOP;

               CLOSE CRELATORIO;

               D_DATAF := D_DATAF + 1;

             END LOOP;

          END LOOP;

 

 

         DELETE PROCALCULO WHERE CAL_IP = V_IP;

          COMMIT;

          CLOSE CEMPRESA;

      EXCEPTION

          WHEN OTHERS THEN BEGIN

             ROLLBACK;

            IF CEMPRESA%ISOPEN THEN

                CLOSE CEMPRESA;

             END IF;

             IF CRELATORIO%ISOPEN THEN

                CLOSE CRELATORIO;

             END IF;

          END;

       END PR_GOODDATA01;

 

   -- X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X

 

 

 

   PROCEDURE PR_GOODDATA02 IS

       D_DATAF DATE := TO_DATE('02/10/2009','DD/MM/YYYY') - 1;

       N_LAN_VALOR NUMBER(20,8) := 0;

       I NUMBER(2) := 0;

       D_DATAI DATE;

      CURSOR CEMPRESA IS

         SELECT EMP_CODEMP FROM MSIEMPRE ORDER BY EMP_CODEMP;

         RCEMPRESA CEMPRESA%ROWTYPE;

 

      BEGIN

          DELETE PROGOODDATA02;

          OPEN CEMPRESA;

         LOOP

             FETCH CEMPRESA INTO RCEMPRESA;

             EXIT WHEN CEMPRESA%NOTFOUND;

             D_DATAI := D_DATAF - 10;

             WHILE D_DATAI <= D_DATAF LOOP

                DELETE PROCALCULO WHERE CAL_IP = V_IP;

                 INSERT INTO PROCALCULO

                  (EMP_CODEMP, CAL_IP, CAL_TIPO, CAL_DATA, CAL_HORA, SUF_CODIGO, CAL_DATAF, CAL_PERIODO)

                VALUES

                  (RCEMPRESA.EMP_CODEMP, V_IP, 'C', D_DATAI, 'XXXX', '01', D_DATAI, 'D');

 

               SELECT BUSCAMEDREL(RCEMPRESA.EMP_CODEMP, D_DATAI, '000CANMOI1', '01','XXXX')

                INTO N_LAN_VALOR FROM DUAL;

  

               INSERT INTO PROGOODDATA02 (EMP_CODEMP, VAR_CODIGO, LAN_DATA, LAN_VALOR)

               VALUES(RCEMPRESA.EMP_CODEMP, '000CANMOI1', D_DATAI, NVL(N_LAN_VALOR,0));

                D_DATAI := D_DATAI + 1;

 

            END LOOP;

 

         END LOOP;

 

         COMMIT;

 

         CLOSE CEMPRESA;

 

 

 

      EXCEPTION

 

 

 

         WHEN OTHERS THEN BEGIN

 

            ROLLBACK;

 

 

 

            IF CEMPRESA%ISOPEN THEN

 

               CLOSE CEMPRESA;

 

            END IF;

 

 

 

         END;

 

      END PR_GOODDATA02;

 

 

 

      -- X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X

 

 

 

      FUNCTION F_METADIA(PC_EMP_CODEMP IN CHAR, PC_VAR_CODIGO IN CHAR, PC_SUF_CODIGO IN CHAR, PD_DATA IN DATE) RETURN NUMBER IS

 

 

 

         NRET NUMBER := 0;

 

 

 

         CURSOR CMETA IS

 

            SELECT NVL(DIA_DIARIO, 0) META_DIA

 

              FROM PRODIAGNOSTICO

 

             WHERE EMP_CODEMP = PC_EMP_CODEMP

 

               AND VAR_CODIGO = LPAD(PC_VAR_CODIGO,10,'0')

 

               AND SUF_CODIGO = PC_SUF_CODIGO

 

               AND DIA_DATA = (SELECT MAX(DIA_DATA)

 

                                 FROM PRODIAGNOSTICO

 

                                 WHERE EMP_CODEMP = PC_EMP_CODEMP

 

                                 AND VAR_CODIGO = LPAD(PC_VAR_CODIGO,10,'0')

 

                                 AND SUF_CODIGO = PC_SUF_CODIGO

 

                                 AND DIA_DATA  <= PD_DATA);

 

            RCMETA CMETA%ROWTYPE;

 

 

 

      BEGIN

 

 

 

         OPEN CMETA;

 

        

 

         FETCH CMETA INTO RCMETA;

 

        

 

         IF CMETA%FOUND THEN

 

            NRET := RCMETA.META_DIA;

 

         END IF;

 

 

 

         CLOSE CMETA;

 

 

 

         RETURN NRET;

 

 

 

      EXCEPTION

 

         WHEN OTHERS THEN BEGIN

 

            IF CMETA%ISOPEN THEN

 

               CLOSE CMETA;

 

            END IF;

 

 

 

            RETURN NRET;

 

         END;

 

 

 

      END F_METADIA;

 

 

 

END PK_GOODDATA;

 

 

 

Parâmetros:

 

 

 

O arquivo “parametrosfatovaloresprocessoindustrial.prm” contêm os parâmetros:

 

 

 

  • CODIGO_RELATORIO: Parâmetro responsável por definir o código do relatório do processo industrial a ser executado.

 

 

 

  • QUANTIDADE_DIAS_ANTERIORES: Parâmetro responsável por definir a quantidade de dias anteriores à data atual o relatório do processo industrial deve carregar.

 

 

 

DB Execute:

 

 

 

Executa a procedure  “PR_GOODDATA01” pertencente ao pacote “PK_GOODDATA” passando como parâmetros o código do relatório (${CODIGO_RELATORIO}), a data atual (SYSDATE)e a quantidade de dias anteriores a data atual (${QUANTIDADE_DIAS_ANTERIORES}), para carregar os dados para a fato de valores de processo industrial.

 

 

 

CALL PK_GOODDATA.PR_GOODDATA01 (

 

${CODIGO_RELATORIO},

 

SYSDATE,

 

${QUANTIDADE_DIAS_ANTERIORES}

 

)

 

 

Dimensões – Manutenção Industrial

Empresa

 

Tabela

MCPEMPRE

Dimensão

MI Empresa

Campo

Tipo de Dado

Atributo

Tipo

EMP_CODEMP (PK)

NUMBER(2)

Código da Empresa

String

EMP_DESCRIC

VARCHAR2(40)

Empresa

String

 

SQL Query:

 

SELECT E.EMP_CODEMP, E.EMP_DESCRIC FROM MCPEMPRE E ORDER BY E.EMP_CODEMP, E.EMP_DESCRIC

 

Setor

 

Tabela

MCPSETOR

Dimensão

MI Setor

Campo

Tipo de Dado

Atributo

Tipo

SET_CODSET (PK)

VARCHAR2(5)

Código do Setor

String

SET_DESSET

VARCHAR2(40)

Setor

String

 

SQL Query:

 

SELECT S.SET_CODSET, S.SET_DESSET FROM MCPSETOR S ORDER BY S.SET_CODSET, S.SET_DESSET

 

Área

 

Tabela

MCPAREA

Dimensão

MI Área

Campo

Tipo de Dado

Atributo

Tipo

ID_AREA (PK)

VARCHAR2(15)

Identificador da   Área

String

ARE_CODIGO

VARCHAR2(4)

Código da Área

String

ARE_DESCRI

VARCHAR2(40)

Área

String

 

SQL Query:

 

SELECT A.SET_CODSET || '***' || A.ARE_CODIGO ID_AREA, A.ARE_CODIGO, A.ARE_DESCRI

FROM MCPAREA A

ORDER BY ID_AREA, A.ARE_CODIGO, A.ARE_DESCRI

 

Causa

 

Tabela

MCPCAUSA

Dimensão

MI Causa

Campo

Tipo de Dado

Atributo

Tipo

CAU_CODIGO (PK)

VARCHAR2(3)

Código da Causa

String

CAU_DESCRI

VARCHAR2(40)

Causa

String

 

SQL Query:

 

SELECT C.CAU_CODIGO, C.CAU_DESCRI FROM MCPCAUSA C ORDER BY C.CAU_CODIGO, C.CAU_DESCRI

 

Equipamento

 

Tabela

MCPEQPTO

Dimensão

MI Equipamento

Campo

Tipo de Dado

Atributo

Tipo

ID_EQPTO (PK)

NUMBER(12)

Identificador do   Equipamento

Long

EQP_CODEQP

VARCHAR2(10)

Código do   Equipamento

String

EQP_DESCRI

VARCHAR2(80)

Equipamento

String

 

SQL Query:

 

SELECT E.ID_EQPTO, E.EQP_CODEQP, E.EQP_DESCRI

FROM MCPEQPTO E

ORDER BY E.ID_EQPTO, E.EQP_CODEQP, E.EQP_DESCRI

 

Conjunto

 

Tabela

MCPCONJUNTO

Dimensão

MI Conjunto

Campo

Tipo de Dado

Atributo

Tipo

ID_CONJU (PK)

NUMBER(12)

Identificador do   Conjunto

Long

CON_CODIGO

NUMBER(3)

Código do Conjunto

Integer

CON_DESCRI

VARCHAR2(50)

Conjunto

String

 

SQL Query:

 

SELECT C.ID_CONJU, C.CON_CODIGO, C.CON_DESCRI

FROM MCPCONJUNTO C

ORDER BY C.ID_CONJU, C.CON_CODIGO, C.CON_DESCRI

 

Subconjunto

 

Tabela

MCPSUBCONJUNTO

Dimensão

MI Subconjunto

Campo

Tipo de Dado

Atributo

Tipo

ID_SUBCONJU (PK)

VARCHAR2(30)

Identificador do   Subconjunto

String

SUB_DESCRI

VARCHAR2(50)

Subconjunto

String

 

            * Identificador do Conjunto: [ID_CONJU || '***' || ID_SUBCONJU]

 

SQL Query:

 

SELECT S.ID_CONJU || '***' || S.ID_SUBCONJU ID_SUBCONJU, S.SUB_DESCRI

FROM MCPSUBCONJUNTO S

ORDER BY ID_CONJU, S.SUB_DESCRI

 

Modalidade de Equipe

 

Tabela

MCPMODAL

Dimensão

MI Modalidade de Equipe

Campo

Tipo de Dado

Atributo

Tipo

MOD_CODMOD (PK)

VARCHAR2(3)

Código da Modalidade   de Equipe

String

MOD_DESMOD

VARCHAR2(40)

Modalidade de Equipe

String

 

SQL Query:

 

SELECT M.MOD_CODMOD, M.MOD_DESMOD FROM MCPMODAL M ORDER BY M.MOD_CODMOD, M.MOD_DESMOD

 

Modalidade de Defeito

 

Tabela

MCPMODALDEF

Dimensão

MI Modalidade de Defeito

Campo

Tipo de Dado

Atributo

Tipo

MOD_CODMODDEF (PK)

VARCHAR2(3)

Código da Modalidade   de Defeito

String

MOD_DESMODI

VARCHAR2(40)

Modalidade de   Defeito

String

 

SQL Query:

 

SELECT M.MOD_CODMODDEF, M.MOD_DESMODI FROM MCPMODALDEF M ORDER BY M.MOD_CODMODDEF, M.MOD_DESMODI

 

Modalidade de Manutenção Preventiva

 

Tabela

MCPMODPERIOD

Dimensão

MI Modalidade de Manutenção Preventiva

Campo

Tipo de Dado

Atributo

Tipo

MOD_CODMODPER (PK)

VARCHAR2(3)

Código da Modalidade   de Manutenção Preventiva

String

MOD_DESMOD

VARCHAR2(40)

Modalidade de   Manutenção Preventiva

String

 

            SQL Query:

 

SELECT M.MOD_CODMODPER, M.MOD_DESMOD

FROM MCPMODPERIOD M

ORDER BY M.MOD_CODMODPER, M.MOD_DESMOD

 

Ordem de Serviço

 

Tabela

MCPORDEM

Dimensão

MI Ordem de Serviço

Campo

Tipo de Dado

Atributo

Tipo

ID_ORDEM (PK)

VARCHAR2(15)

Identificador da   Ordem de Serviço

String

ORD_CODOS

NUMBER(7)

Código da Ordem  de Serviço

Long

ORD_DESCRI

VARCHAR2(80)

Ordem de Serviço

String

ORD_TIPO

VARCHAR2(1)

Tipo de Ordem de   Serviço

String

ORD_STATUS

VARCHAR2(1)

Status da Ordem de   Serviço

String

 

 

            *Tipo de Ordem de Serviço: [R – Registro de Serviços]; [P - Preventiva e Preditiva]; [M-Manutenção Corretiva];

[X – Serviços Externos]; [E - Entressafra];

 

*Status da Ordem de Serviço: [4 – Encerrada]; [5 -Cancelada]; [ != 4 e != 5 - Pendente];

 

SQL Query:

 

SELECT O.EMP_CODEMP || '***' || O.ORD_CODOS ID_ORDEM,

O.ORD_CODOS, O.ORD_DESCRI, O.ORD_TIPO, O.ORD_STATUS

FROM MCPORDEM O

ORDER BY O.EMP_CODEMP, O.ORD_CODOS, O.ORD_DESCRI, O.ORD_TIPO, O.ORD_STATUS

 

 

Defeito

 

Tabela

MCPDEFEITO

Dimensão

MI Defeito

Campo

Tipo de Dado

Atributo

Tipo

MOD_CODMODDEF (PK)

VARCHAR2(3)

Código do Defeito

String

DEF_DESCRICAO

VARCHAR2(10)

Defeito

String

 

SQL Query:

 

SELECT D.DEF_CODIGO, D.DEF_DESCRICAO FROM MCPDEFEITO D ORDER BY D.DEF_CODIGO, D.DEF_DESCRICAO

 

 

Funcionário

 

Tabela

MCPEQUIPE

Dimensão

MI Funcionário

Campo

Tipo de Dado

Atributo

Tipo

ID_FUNCI (PK)

NUMBER(12)

Identificador do   Funcionário

Long

FUN_NOME

VARCHAR2(40)

Funcionário

String

FUN_CRACHA 

VARCHAR2(12)

Cracha do   Funcionário

String

 

SQL Query:

 

SELECT F.ID_FUNCI,

  F.FUN_NOME,

  F.FUN_CRACHA 

FROM MCPFUNCI F

INNER JOIN MCPMOGASTA G ON (G.EMP_CODEMP = F.EMP_CODEMP AND G.ID_FUNCI = F.ID_FUNCI)

GROUP BY F.ID_FUNCI, F.FUN_NOME, F.FUN_CRACHA

ORDER BY F.FUN_NOME

 

Equipe

 

Tabela

MCPEQUIPE

Dimensão

MI Equipe

Campo

Tipo de Dado

Atributo

Tipo

ID_EQUIPE (PK)

NUMBER(12)

Identificador da   Equipe

Long

EQU_CODIGO

VARCHAR2(5)

Código da Equipe

String

EQU_DESCRI

VARCHAR2(40)

Equipe

String

EQU_STATUS

VARCHAR2(1)

Status da Equipe

String

EQU_ATUA

VARCHAR2(1)

Atuação da Equipe

String

 

* EQU_STATUS: [1 – Ativa]; [0 - Inativa];

 

* EQU_ATUA: [S - Safra]; [E - Entressafra]

 

SQL Query:

 

SELECT E.ID_EQUIPE,

  E.EQU_CODIGO,

  E.EQU_DESCRI,

  DECODE ( E.EQU_STATUS, 0, 'Inativa', 1, 'Ativa') EQU_STATUS,

  DECODE ( E.EQU_ATUA,'S', 'Safra', 'E', 'Entressafra', ' ') EQU_ATUA

FROM MCPEQUIPE E

ORDER BY E.EQU_CODIGO

 

Conta

 

 

 

Tabela

MCPCONTA

Dimensão

MI Conta

Campo

Tipo de Dado

Atributo

Tipo

ID_CONTA (PK)

VARCHAR2(24)

Identificador da   Conta

String

CON_CONTA

VARCHAR2(10)

Conta

String

CON_DESCRI

VARCHAR2(40)

Descrição da Conta

String

 

 

 

* ID_CONTA: C.EMP_CODEMP || '***' || C.CAL_SAFRA || '***' || C.ID_CONTA;

 

 

 

SQL Query:

 

 

 

SELECT C.EMP_CODEMP || '***' || C.CAL_SAFRA || '***' || C.ID_CONTA ID_CONTA,

 

  C.CON_CONTA,

 

  C.CON_DESCRI

 

FROM MCPCONTA C

 

ORDER BY ID_CONTA,

 

  C.CON_CONTA,

 

  C.CON_DESCRI

 

 

 

Subcusto

 

 

 

Tabela

MCPMIS

Dimensão

MI Subcusto

Campo

Tipo de Dado

Atributo

Tipo

ID_SCUSTO (PK)

NUMBER(12)

Identificador do   Subcusto

Long

SUB_CODIGO

VARCHAR2(20)

Código do Subcusto

String

SUB_DESCRI

VARCHAR2(40)

Subcusto

String

 

 

 

SQL Query:

 

 

 

SELECT SC.ID_SCUSTO, SC.SUB_CODIGO, SC.SUB_DESCRI

 

FROM MCPSUBCUSTO SC

 

ORDER BY SC.SUB_CODIGO, SC.SUB_DESCRI

 

 

 

Lubrificante

 

 

 

Tabela

MCPMATERIAL

Dimensão

MI Lubrificante

Campo

Tipo de Dado

Atributo

Tipo

MAT_CODIGO (PK)

VARCHAR2(13)

Código do   Lubrificante

String

MAT_DESCRI

VARCHAR2(60)

Lubrificante

String

UNM_CODUNM

VARCHAR2(8)

Unidade de Medida do   Lubrificante

String

 

 

 

SQL Query:

 

 

 

SELECT DISTINCT M.MAT_CODIGO,

 

  M.MAT_DESCRI,

 

  NVL (M.UNM_CODUNM, 'N/A') UNM_CODUNM

 

FROM MCPMATERIAL M

 

INNER JOIN VW_RELCONSLUB VW on (VW.MAT_CODIGO = M.MAT_CODIGO)

 

ORDER BY M.MAT_CODIGO, M.MAT_DESCRI, UNM_CODUNM

 

 

 

 

 

M.I.S. (Máquina, Instalação e Sistema)

 

 

 

Tabela

MCPMIS

Dimensão

MI M.I.S

Campo

Tipo de Dado

Atributo

Tipo

ID_MIS (PK)

NUMBER(10)

Identificador da   M.I.S.

Long

MIS_CODIGO

VARCHAR2(7)

Código da M.I.S.

String

MIS_DESCRI

VARCHAR2(40)

M.I.S.

String

 

 

 

SQL Query:

 

 

 

SELECT M.ID_MIS, M.MIS_CODIGO, M.MIS_DESCRI

 

FROM MCPMIS M

 

ORDER BY M.MIS_CODIGO, M.MIS_DESCRI

 

 

 

 

 

Fatos – Manutenção Industrial

 

Disponibilidade de Funcionário

 

 

 

Tabela

MCPMOGASTA

Fato

MI Disponibilidade de Funcionário

Campo

Tipo de Dado

Atributo

Tipo

EMP_CODEMP (FK)

NUMBER(2)

Código da Empresa

Integer

ID_FUNCI (FK)

NUMBER(12)

Identificador do   Funcionário

Long

%APROV

CHAR(2)

Disponibilidade do   Funcionário

Number

 

 

 

SQL Query:

 

 

 

SELECT F.EMP_CODEMP,

 

  F.ID_FUNCI,

 

  TRUNC ( NVL ( ( SUM(MOG_MINUTO) / 60 ), '0') / NVL( FDISPMOPERFUNCI ( F.ID_FUNCI, TO_DATE (

 

    ( SELECT DISTINCT S.CAL_INIANOSAFRA

 

      FROM MCPCALENSAFRA S

 

      WHERE S.CAL_SAFRA = (SELECT MAX (CAL_SAFRA) FROM MCPCALENSAFRA)

 

    ), 'DD/MM/YYYY'),

 

  SYSDATE

 

  ), '0') * 100 , 0) "%APROV"

 

FROM MCPMOGASTA G

 

INNER JOIN MCPFUNCI F ON (F.ID_FUNCI = G.ID_FUNCI)

 

LEFT JOIN MCPEQUIPE E ON (E.ID_EQUIPE = G.ID_EQUIPE)

 

LEFT JOIN MCPMODAL M ON (M.MOD_CODMOD = E.MOD_CODMOD)

 

INNER JOIN MCPORDEM O ON (O.EMP_CODEMP = G.EMP_CODEMP AND O.ORD_CODOS = G.ORD_CODOS)

 

LEFT JOIN MCPSUBCUSTO SC ON (SC.ID_SCUSTO = O.ID_SCUSTO)

 

WHERE E.MOD_CODMOD IS NOT NULL

 

AND G.MOG_DATA >= TO_DATE (

 

  (

 

    SELECT DISTINCT S.CAL_INIANOSAFRA

 

    FROM MCPCALENSAFRA S

 

    WHERE S.CAL_SAFRA = (SELECT MAX (CAL_SAFRA) FROM MCPCALENSAFRA)

 

  ), 'DD/MM/YYYY')

 

AND G.MOG_DATA <= SYSDATE

 

GROUP BY F.EMP_CODEMP,

 

  F.ID_FUNCI,

 

  F.FUN_CRACHA,

 

  F.FUN_NOME,

 

  F.FUN_TIPO

 

ORDER BY F.EMP_CODEMP,

 

  F.ID_FUNCI

 

 

Backlog de Equipe

 

Tabela

MCPSEORD

Fato

MI Backlog de Equipe

Campo

Tipo de Dado

Atributo

Tipo

EMP_CODEMP (FK)

NUMBER(2)

Código da Empresa

Integer

ID_EQUIPE (FK)

NUMBER(12)

Identificador da   Equipe

Long

MOD_CODMOD (FK)

VARCHAR2(3)

Código da Modalidade   de Equipe

String

BACKLOG

NUMBER(12,1)

Backlog da Equipe

Number

 

SQL Query:

 

SELECT EMP_CODEMP,

  ID_EQUIPE,

  MOD_CODMOD,

  FBACKLOGDIA(EMP_CODEMP, RECURSO, SUM(NHH * (100 - NPROGRESSO) / 100)) BACKLOG

FROM

  (SELECT O.EMP_CODEMP,

    E.MOD_CODMOD,

    E.ID_EQUIPE,

    E.EQU_ATUA,

    FRECURSO(O.ID_EQUIPE) RECURSO,

    (FHORCENT(O.SER_DURPREV) * O.SER_NUMPESSOAS) NHH,

    FPROGRESSO(O.ID_SEROS, O.SER_DURPREV, O.SER_NUMPESSOAS, O.SER_STATUS) NPROGRESSO

  FROM MCPSEORD O

  INNER JOIN MCPEQUIPE E ON (E.ID_EQUIPE = O.ID_EQUIPE)

  INNER JOIN MCPMODAL M ON (M.MOD_CODMOD   = E.MOD_CODMOD)

  WHERE E.EQU_STATUS = '1'

  AND O.SER_STATUS < '4'

  )

GROUP BY EMP_CODEMP,

  ID_EQUIPE,

  MOD_CODMOD,

  RECURSO,

  EQU_ATUA

ORDER BY EMP_CODEMP,

  ID_EQUIPE,

  BACKLOG

 

Backlog de Modalidade de Equipe

 

Tabela

MCPSEORD

Fato

MI Backlog de Modalidade

Campo

Tipo de Dado

Atributo

Tipo

EMP_CODEMP (FK)

NUMBER(2)

Código da Empresa

Integer

MOD_CODMOD (FK)

VARCHAR2(3)

Código da Modalidade   de Equipe

String

BACKLOG

NUMBER(12,1)

Backlog da Equipe

Number

 

SQL Query:

 

SELECT EMP_CODEMP,

    MOD_CODMOD,

    FBACKLOGDIA(EMP_CODEMP, FRECURSOMODEQUIPEATIVA(EMP_CODEMP, MOD_CODMOD, 'SEA'), SUM(NHH * (100 - NPROGRESSO) / 100)) BACKLOG

FROM

  (SELECT O.EMP_CODEMP,

    E.MOD_CODMOD,

    M.MOD_DESMOD,

    E.EQU_CODIGO,

    E.EQU_DESCRI,

    E.EQU_ATUA,

    (O.SER_DURPREV * O.SER_NUMPESSOAS) NHH,

    FPROGRESSO(O.ID_SEROS, O.SER_DURPREV, O.SER_NUMPESSOAS, O.SER_STATUS) NPROGRESSO

  FROM MCPSEORD O

  INNER JOIN MCPEQUIPE E ON (E.ID_EQUIPE = O.ID_EQUIPE)

  INNER JOIN MCPMODAL M ON (M.MOD_CODMOD   = E.MOD_CODMOD)

  WHERE E.EQU_STATUS = '1'

  AND O.SER_STATUS   < '4'

  )

GROUP BY EMP_CODEMP,

  MOD_CODMOD,

  MOD_DESMOD

ORDER BY EMP_CODEMP,

  MOD_CODMOD,

  MOD_DESMOD

 

Disponibilidade de M.I.S.

 

Tabela

MCPORDEM

Fato

MI Disponibilidade de M.I.S.

Campo

Tipo de Dado

Atributo

Tipo

EMP_CODEMP (FK)

NUMBER(2)

Código da Empresa

Integer

ID_MIS (FK)

NUMBER(10)

Identificador da   M.I.S.

Long

DISPMEDIA%

NUMBER(3,6)

Disponibilidade   Média (%)

Number

 

SQL Query:

 

SELECT O.EMP_CODEMP,

  O.ID_MIS,

  (FCALCDISPONMEDIA(O.EMP_CODEMP, O.ID_MIS, NULL, TO_DATE (

  ( SELECT DISTINCT S.CAL_INIANOSAFRA

  FROM MCPCALENSAFRA S

  WHERE S.CAL_SAFRA = (SELECT MAX (CAL_SAFRA) FROM MCPCALENSAFRA)

  ), 'DD/MM/YYYY'),

  SYSDATE

  )) "DISPMEDIA%"

FROM MCPORDEM O 

INNER JOIN MCPMIS M ON (M.ID_MIS = O.ID_MIS)

INNER JOIN MCPFAMMIS F ON (F.FAM_CODIGO = M.FAM_CODIGO)

INNER JOIN MCPAREA A ON (A.SET_CODSET = O.SET_CODSET AND A.ARE_CODIGO = O.ARE_CODIGO)

INNER JOIN MCPSETOR S ON (S.SET_CODSET = A.SET_CODSET)

WHERE O.ORD_TIPO = 'M'

AND O.ORD_DTINICIO >= TO_DATE (

  (SELECT DISTINCT S.CAL_INIANOSAFRA

  FROM MCPCALENSAFRA S

  WHERE S.CAL_SAFRA = (SELECT MAX (CAL_SAFRA) FROM MCPCALENSAFRA)

  ), 'DD/MM/YYYY')

AND O.ORD_DTINICIO <= SYSDATE

AND O.ORD_DTFIM IS NOT NULL

AND O.ID_MIS IS NOT NULL

GROUP BY O.EMP_CODEMP,

  O.ID_MIS

 

Consumo e Custo de Lubrificante

 

Tabela

VW_RELCONSLUB

Fato

MI Consumo e Custo de Lubrificante

Campo

Tipo de Dado

Atributo

Tipo

EMP_CODEMP (FK)

NUMBER(2)

Código da Empresa

Integer

MAT_CODIGO (FK)

NUMBER(10)

Código do   Lubrificante

Long

ID_SCUSTO

NUMBER(12)

Identificador do   Subcusto

Long

DATA

DATE

Data do Consumo do   Lubrificante

Date

QUANTIDADE_LUB

NUMBER(12, 4)

Consumo de   Lubrificante

Number

CUSTO_LUB

NUMBER(12, 4)

Custo do   Lubrificante

Number

 

SQL Query:

 

SELECT V.EMP_CODEMP,

  V.MAT_CODIGO,

  V.ID_SCUSTO,

  V.DATA,

  ROUND(SUM (V.QTDREAL), 3) QUANTIDADE_LUB,

  ROUND(SUM (V.QTDREAL * V.CUSUNIREP), 3) CUSTO_LUB

FROM VW_RELCONSLUB V

WHERE V.MAT_CODIGO IS NOT NULL

AND V.QTDREAL IS NOT NULL

AND V.QTDREAL != 0

HAVING SUM(V.QTDREAL) > 0

GROUP BY V.EMP_CODEMP,

  V.DATA,

  V.ID_SCUSTO,

  V.MAT_CODIGO,

  V.UNM_CODUNM

ORDER BY V.EMP_CODEMP,

  V.ID_SCUSTO,

  V.MAT_CODIGO,

  V.DATA

 

Custo de Manutenção

 

Tabela

VW_RELCONSLUB

Fato

MI Custo de Manutenção

Campo

Tipo de Dado

Atributo

Tipo

EMP_CODEMP (FK)

NUMBER(2)

Código da Empresa

Integer

ID_CONTA (PK)

VARCHAR2(24)

Identificador da   Conta

String

ORD_DTGERACAOOS

DATE

Data de Custo de   Manutenção

Date

CUSTOTAL

NUMBER(12, 4)

Custo de Manutenção

Number

 

SQL Query:

 

SELECT VW.EMP_CODEMP,

  VW.EMP_CODEMP || '***' || VW.CAL_SAFRA || '***' || VW.ID_CONTA ID_CONTA,

  VW.ORD_DTGERACAOOS,

  SUM(VW.CUSTOMOPROP + VW.CUSTOMATERPROP + VW.CUSTOMOTERC + VW.CUSTOMATERTERC + VW.CUSTOMOLUB + VW.CUSTOMATERLUB) CUSTOTAL

FROM VW_CUSTO VW

INNER JOIN MCPCONTA C ON (C.ID_CONTA = VW.ID_CONTA)

GROUP BY VW.EMP_CODEMP,

  VW.EMP_CODEMP || '***' || VW.CAL_SAFRA || '***' || VW.ID_CONTA,

  VW.ORD_DTGERACAOOS

ORDER BY VW.EMP_CODEMP,

  ID_CONTA,

  VW.ORD_DTGERACAOOS

 

 

Situação da Ordem de Serviço

 

 

 

Tabela

MCPORDEM

Fato

MI Sistuação da Ordem de Serviço

Campo

Tipo de Dado

Atributo

Tipo

ID_ORDEM (FK)

VARCHAR2(15)

Identificador da   Ordem de Serviço

Integer

EMP_CODEMP

NUMBER(2)

Código da Empresa

Integer

SET_CODSET

VARCHAR2(5)

Código do Setor

String

ID_AREA

VARCHAR2(15)

Identificador da   Área

String

ID_SCUSTO

NUMBER(12)

Identificador do   Subcusto

Long

ID_CONTA

VARCHAR2(30)

Identificador da   Conta

String

ID_EQPTO

NUMBER(12)

Identificador do   Equipamento

Long

ID_MIS

NUMBER(10)

Identificador de   M.I.S.

Long

ID_CONJU

NUMBER(12)

Identificador do   Conjunto

Long

ID_SUBCONJU

VARCHAR2(30)

Identificador do   Subconjunto

String

MOD_CODMODPER

VARCHAR2(3)

Código da   Modalidades de

Manutenção   Preventiva

String

MCPMODALDEF

VARCHAR2(3)

Código da Modalidade   de Defeito

String

DEF_CODIGO

VARCHAR2(3)

Código do Defeito

String

CAU_CODIGO

VARCHAR2(3)

Código da Causa

String

MOD_CODMOD

VARCHAR2(3)

Código da Modalidade

String

 

 

 

SQL Query:

 

 

 

SELECT O.EMP_CODEMP || '***' || O.ORD_CODOS ID_ORDEM,

              O.EMP_CODEMP,

 

             O.SET_CODSET, 

       O.SET_CODSET || '****' || O.ARE_CODIGO ID_AREA,

              O.ID_SCUSTO,

 

       O.EMP_CODEMP || '***' || O.CAL_SAFRA || '***' || O.ID_CONTA ID_CONTA,

 

       O.ID_EQPTO,

              O.ID_MIS,

 

       O.ID_CONJU,

              O.ID_CONJU || '***' || O.ID_SUBCONJU ID_SUBCONJU,

              O.MOD_CODMODPER,

        O      O.MOD_CODMODDEF,

              O.DEF_CODIGO,

              O.CAU_CODIGO,    

 

       O.MOD_CODMOD

 FROM ROM MCPORDEM O

 

 

 

 

 

 

 

 

 <Regra de negócio é o que define a forma de fazer o negócio, o processo definido e/ou as regras que devem ser contempladas. Devem ser descritas restrições, validações, condições e exceções do processo. Caso necessário, incluir neste capítulo também regras de integridade que devem ser observadas no momento do desenvolvimento>.

 <Na tabela abaixo informe quais são as rotinas envolvidas, o tipo de operação, a opção de menu e se necessário uma breve descrição das regras de negócio relacionadas a rotina>.

 

Rotina

Tipo de Operação

Opção de Menu

Regras de Negócio

[ACAA040 – Parâmetros]

[Alteração]

[Atualizações -> Acadêmico-> Tesouraria]

-

[ACAA050 – Negociação Financeira]

[Envolvida]

[Atualizações -> Acadêmico-> Tesouraria]

-

[ACAA060 – Cadastro de Pedidos]

[Criação]

[Atualizações -> Acadêmico-> Cadastros]

-

 

Exemplo de Aplicação:

  • Criar o campo “% Mínimo Espécie” (AAA_PERESP) onde o usuário informará o % que o aluno pagará em dinheiro. Esse % poderá ser alterado durante a negociação.
  • Criar o campo “Referência Mínima para Cálculo” (AAA_REFCAL) onde o usuário informará um dos 4 valores disponíveis para pagamento das mensalidades  como a referência mínima para calcular o débito total do aluno.
  • Criar o parâmetro MV_ACPARNE que definirá se as informações de “% Mínimo Espécie” e “Referência Mínima para Cálculo” serão obrigatórias.
  • O parâmetro MV_ACPARNE deve ter as seguintes opções: 1=Obrigatório e 2=Opcional. Deve ser inicializado como opcional>.

 

Tabelas Utilizadas

  • SE2 – Cadastro de Contas a Pagar
  • FI9 – Controle de Emissão de DARF>.

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

 

 

 Image Removed

 

 

 

 

 

 

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.