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 | PIMSMULTICULTIVOS | Módulo | PIMSMC |
Segmento Executor | Agroindústria | ||
Projeto1 | A_AGR_DES_MC001 | IRM1 | PCREQ-2665 |
Requisito1 | PCREQ-2666 | Subtarefa1 | PDR_AGR_MC001-78 |
Chamado2 |
| ||
Release de Entrega Planejada | PIMS 12.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
Exemplo de Aplicação:
Integração entre PIMSMCS e Datasul com a utização do PIMSConnector.
Produto | Entidades |
EMS | Centro de Custo Emitentes Depreciação por bem Saldo Contábeis do período Custo dos itens Família de material Item
|
HCM | Cargo Sindicatos Agenciadores/turmas Funcionário Serviços Agrícolas Histórico de Situações Movimento Cálculo Funcionários Turnos e Jornada de Trabalho
|
FROTAS | Equipamentos Estrutura Mecânica Marcas Modelos Grupos de Equipamentos Abastecimento Lubrificação Custos dos Equipamentos
|
PIMS | Movimento de Estoque Reporte de Produção Movimento Prod. Agrícola Quilometragem de Implementos Atividades
|
Definição da Regra de Negóci
1. TRANSAÇÕES EMS
1.1 Especificação da transação de Centro de custo
Essa transação importa para o PIMS um centro de custo gerado ou atualizado pelo EMS.
As seguintes tabelas serão modificadas na transação:
- CCUSTOS;
- CC_CSTG.
Os seguintes atributos estão no XML e serão usados para atualização das tabelas no PIMS.
CostCenterCode à CD_CCUSTO (somente números, se houverem letras no código vindo do sistema Datasul, os mesmo serão retirados);
- CostCenterDescription à DE_CCUSTO;
- Valores default recuperados da tabela PARAMETROS, onde PARAMETROS.SECAO=’INT_ERP’:
- CCUSTO_FASE à CD_FASE;
- CCUSTO_RAMO à CD_RAMO;
- CCUSTO_TP_CCUST à FG_TP_CCUSTO.
Valores fixos:
- FG_INTCM = ‘S’;
- FG_INTERP=’N’;
- FG_REPLICA=’N’
- CD_EMPRESA=’1’, somente na tabela CC_CSTG.
As colunas CD_CC_NIV1, CD_CC_NIV2, CD_CC_NIV3 e CD_CC_NIV4 são montados a partir do CostCenterCode e a estrutura dos níveis é montada com base no parâmetro PARAMENTROS.ENTRADA = ‘ESTR_CCUSTO’ e PARAMETROS.SECAO=’CSTG’
Seção | Entrada | Descrição |
INT_ERP | CCUSTO_FASE | Indica o valor a ser gravado no atributo CCUSTOSàCD_FASE |
INT_ERP | CCUSTO_RAMO | Indica o valor a ser gravado no atributo CCUSTOS àCD_RAMO |
INT_ERP | CCUSTO_TP_CCUST | Indica o valor a ser gravado no atributo CCUSTOS àFG_TP_CCUSTO |
INT_ERP | CCUSTO_MAX | Não importa os Centros de Custos que tiverem o tamanho maior que o valor do parâmetro. Caso o parâmetro estiver preenchido com “0”, é ignorado. |
CSTG | ESTR_CCUSTO | Recupera a estrutura do Centro de Custos usada pelo Cliente. |
Quadro 1 Parâmetros usados na transação Centro de Custo
1.2 Especificação da transação de Emitentes
Essa transação importa para o PIMS um fornecedor ou um transportador gerado ou atualizado pelo EMS.
As seguintes tabelas serão atualizadas nessa transação:
- FORNEC;
- TRANSPORTA.
O atributo VendorClassification (adicionado por uma UPC no EMS) indica em qual tabela do PIMS será inserido ou atualizado as informações da transação, segundo a regra:
- Se VendorClassification = 1
- Atualizar a tabela FORNEC
- Se VendorClassification = 2
- Atualizar a tabela TRANSPORTA
- Se VendorClassification = 3
- Atualiza a tabela FORNEC
- Atualiza a tabela TRANSPORTA
Se o parâmetro com PARAMENTROS.SECAO=’INT_ERP’ e PARAMETROS.ENTRADA = ‘FORNEC_VER_EMS’ for 2, a classificação será utilizada conforme o valor do atributo MarketActivity, onde:
- Se MarketActivity = ‘MP’
- VendorClassification ß 1
- Atualiza a tabela FORNEC
- Se MarketActivity = ‘AS’
- VendorClassificatin ß 2
- Atualiza a tabela TRANSPORTA
- Se MarketActivity = ‘MP-AS’ Ou MarketActivity = ‘SA-MP’
- VendorClassification ß 3
- Atualiza a tabela FORNEC
- Atualiza a tabela TRANSPORTA
A atualização das tabelas segue a regra antes descrita, e os campos são preenchidos pelos atributos presentes no XML, e valores default recuperados dos parâmetros como segue:
- Tabela FORNEC:
- CustomerVendorCode à CD_FORNEC
- CustomerVendorName à DE_FORNEC
- FG_TP_FORNEC = PARAMENTROS.FORNEC_FG_TP_FOR
- PhoneNumber1 à NO_TELEFONE
- Zip à NO_CEP
- Address à DE_ENDERECO
- FG_TP_PESS = PARAMETROS.FORNEC_FG_PES
- CD_MUNIC = PARAMETROS.TRANSP_CD_MUNIC
- Tabela TRANPORTA
- CustomerVendorCode à CD_TRANSP
- CustomerVendorName à DE_TRANSP
- Zip à NO_CEP
- Address à DE_ENDERECO
- FG_TP_PESS = PARAMETROS.FORNEC_FG_PES
- CD_MUNIC = PARAMETROS.TRANSP_CD_MUNIC
- TaxId à NO_CGC_CPF
Seção | Entrada | Descrição |
INT_ERP | TRANSP_CD_MUNIC | Indica o valor a ser gravado no atributo TRANSPORTA à CD_MUNIC |
INT_ERP | FORNEC_FG_TPPES | Indica o valor a ser gravado no atributo TRANSPORTA à FG_TP_PESS |
INT_ERP | FORNEC_FG_TPFOR | Indica o valor a ser gravado no atributo FORNECSàFG_TP_FORNEC |
INT_ERP | FORNEC_VER_EMS | Identifica a versão do EMS para a transação (CustomerVendor). |
Quadro 2 Parâmetros utilizados na transação Emitentes:
1.3 Especificação da transação de Depreciação por Bem
Essa transação importa para o PIMS uma lista de depreciações geradas no EMS em um dado período definido pelo usuário na geração do relatório de depreciações.
O XML enviado pelo Datasul nesta transação é diferente entre as versões 2 e 5 do EMS. Para a transação é utilizado o parâmetro CSTG_VER_EMS, esse guarda a versão do EMS utilizado no cliente. Os valores validos são 2 (para o EMS 2) ou 5 (para o EMS 5).
Se o atributo FirstPart estiver presente, é feito uma deleção na tabela CSTG_INTDE:
- Na versão 2 o delete pode conter os seguintes filtros: DT_REFER, CD_CCUSTO, CD_EQUIPTO e CD_EMPRESA (quando o parâmetro FG_EMPR_FILIAL = “F”);
- Na versão 5 o delete pode conter os seguintes filtros: DT_REFER, CD_CCUSTO, CD_EQUIPTO.
Antes de realizar update na tabela CSTG_INTDE é verificado se existe a informação no PIMS, se sim, é feita uma soma com o campo QT_VALOR no PIMS com o valor enviado pelo EMS na transação antes do update. Se não existir a informação da depreciação ainda, será feito o insert.
Regra para atualização da tabela CSTG_DE:
- CSTG_INTDE.INSTANCIA recebe o valor de PMMAPPIMS_EXT.CD_COD_PIMS, onde:
- PMMAPPIMS_EXT.INSTANCIA=‘TODAS’ e PMMAPPIMS_EXT.CD_ENTRADA=‘INSTANCIA’ e PMMAPPIMS_EXT.CD_COD_EST=BranchCode
- BranchCode à CSTG_INTDE.CD_EMPRESA, se:
- PARAMETROS.VALOR = ‘F’, onde:
- PARAMETROS.SECAO=’INT_ERP’ e PARAMETROS.ENTRADA=’FG_EMPR_FILIAL’;
- PARAMETROS.VALOR = ‘F’, onde:
- DateFin à CSTG_INTDE.DT_REFER;
- CostCenterCode à CD_CCUSTO, onde:
- Para validar o código do centro de custo, é utilizado o parâmetro CSRGDE_FG_CCUST. Se esse tiver valor igual a ‘P’ é realizado um select na tabela CCUSTOS é feito com a chave CD_CCUSTO, senão é feita com a chave CD_INT_ERP.
- AssetCode à CSTG_INTDE.CD_EQUIPTO.
Seção | Entrada | Descrição |
INT_ERP | FG_EMPR_FILIAL | Identifica a forma de captação do atributo CSTG_INTDE à CD_EMPRESA no PIMS. Valor: F=(Filial/Estabelecimento) E = Empresa. |
INT_ERP | CSTGDE_VER_EMS | Identifica a versão do EMS.Valor:2- para versão 2 do EMS; 5 – para a versão 5 do EMS |
INT_ERP | CSTGDE_FG_CCUST | Identifica por qual atributo validar o Centro de Custo. Valor: P=Código do PIMS (CCUSTOS.CD_CCUSTO), D=Código da Datasul (CCUSTOS.CD_INT_ERP) |
Quadro 3 Os parâmetros utilizados na Transação de Depreciação por Bem
1.4 Especificação da transação de Saldo Contábeis do Período
Essa transação importa para o PIMS uma lista de saldos contábeis por período gerado no EMS em um determinado período definido pelo usuário na geração do relatório de saldos contábeis.
O XML enviado pelo Datasul nesta transação é diferente entre as versões 2 e 5 do EMS. Na versão 2 não há o atributo FirstPart.
No EM S 5 se houver o atributo FirstPart, é feito um delete na tabela CSTG_INTDG, que pode conter as seguintes chaves: DT_REFER, CD_CCUSTO, CD_CTA_CON e CD_EMPRESA (quando o parâmetro FG_EMPR_FILIAL = “F”).
Regra para atualização da tabela CSTG_DG:
- CSTG_INTDG.INSTANCIA recebe o valor de PMMAPPIMS_EXT.CD_COD_PIMS, seguindo a regra abaixo:
- Se o parâmetro CSTGDG_FILT_EST=’S’:
- PMMAPPIMS_EXT.INSTANCIA=’TODAS’ e PMMAPPIMS_EXT.CD_ENTRADA=’INSTANCIA’ e PMMAPPIMS_EXT.CD_COD_EXT=BranchCode
- Se o parâmetro CSTGDG_FILT_EST=’N’
- PMMAPPIMS_EXT.INSTANCIA=’TODAS’ e PMMAPPIMS_EXT.CD_ENTRADA=’EMPRESA’ e PMMAPPIMS.CD_COD_EST=CompanyCode
- Se o parâmetro CSTGDG_FILT_EST=’S’:
- BranchCode à CSTG_INTDG, se:
- PARAMETROS.VALOR = ‘F’, onde:
- PARAMETROS.SECAO=’INT_ERP’ e PARAMETROS.ENTRADA=’FG_EMPR_FILIAL’;
- PARAMETROS.VALOR = ‘F’, onde:
- CostCenterCode à CSTG_INTDG.CD_CCUSTO, onde:
- Para validar o código do centro de custo, é utilizado o parâmetro CSRGDG_FG_CCUST. Se esse tiver valor igual a ‘P’ é executado um select na tabela CCUSTOS com a chave CD_CCUSTO, senão com a chave CD_INT_ERP.
- AccountCode à CSTG_INTDG.CD_CTA_CON
- O tamanho para esse campo depende do valor configurado no parâmetro CSTGDG_TAM_CTA. Se o tamanho da String recuperada do atributo AccontCode for menor que o tamanho definido no parâmetro, o código da conta será inserido sem alteração; se for maior, recupera o AccountCode (da primeira posição ate o tamanho Maximo definido no parâmetro);
- GLPeriodDate à CSTG_INTDG.DT_REFER;
- DebitValue à CSTG_INTDG.QT_VALOR
Seção | Entrada | Descrição |
INT_ERP | FG_EMPR_FILIAL | Identifica a forma de captação do atributo CSTG_INTDG à CD_EMPRESA no PIMS. Valor: F=(Filial/Estabelecimento) E = Empresa. |
INT_ERP | CSTGDG_FG_SOMA | Identifica se realiza a soma antes do UPDATE (Como na transação de Depreciação). Valor: S=Sim, N=Não. |
INT_ERP | CSTGDG_FG_CCUST | Identifica por qual atributo validar o Centro de Custo. Valor: P=Código do PIMS (CCUSTOS.CD_CCUSTO), D=Código da Datasul (CCUSTOS.CD_INT_ERP) |
INT_ERP | CSTGDG_TAM_CTA | Identifica o Tamanho da Conta Contábil no EMS (conta contábil = conta+centro de custos) Valor: de 0 a 15. |
INT_ERP | CSTGDG_DEB_CRED | Identifica como atualizar o atributo VALOR Valor: 1 = Somente Debito; 2 = Debito – Crédito |
INT_ERP | CSTGDG_FILT_EST | Realiza o filtro de despesas gerais por Estabelecimento (S) ou Empresa (N). |
Quadro 4 Parâmetros usado na transação de Saldo Contábeis do Período
1.5 Especificação da transação de Custo dos Itens
Essa transação importa para o PIMS uma lista de valores, dos materiais calculados em um período no EMS. Essa transação é gerada através de um relatório no EMS.
Regra para atualização da tabela CSTG_INTVM:
- CSTG_INTVM.INSTANCIA recebe o valor de PMMAPPIMS_EXT.CD_COD_PIMS, onde:
- PMMAPPIMS_EXT.INSTANCIA=’TODAS’ e PMMAPPIMS_EXT.CD_ENTRADA=’INSTANCIA’ e PMMAPPIMS_EXT.CD_COD_EXT=SiteID;
- CSTG_INTVM.CD_EMPRESA = CSTG_INTVM.INSTANCIA, se:
- PARAMETROS.VALOR = ‘F’, onde:
- PARAMETROS.SECAO=’INT_ERP’ e PARAMETROS.ENTRADA=’FG_EMPR_FILIAL’;
- PARAMETROS.VALOR = ‘F’, onde:
- ItemCode à CSTG_INTVM.CD_MATER;
- LastUpdate à CSTG_INTVM.DT_REFER, onde:
- O valor passado no atributo LastUpdate tem o dia alterado para ser inserido no campo CSTG_INTVM.DT_REFER, sendo esse sempre dia 01 do mês/ano informado nesse atributo (o atributo vem com um valor do tipo data no formato YYYY-MM-DD).
- O valor do material pode ser inserido em um dos seguintes campos da tabela CSTG_INTVM. O numero do QT_VALOR depende do numero da seqüência presente no XML:
- QT_VALOR;
- QT_VALOR1;
- QT_VALOR2;
- QT_VALOR3;
- QT_VALOR4.
- A capitação do valor do material no XML enviado para transações depende do valor do parâmetro recuperado:
- PARAMETROS.VALOR onde PARAMETROS.ENTRADA=’CSTGINTVM_B_PRE’ e PARAMETROS.SECAO=’INT_ERP’
- Se PARAMETROS.VALOR = 1 (preço médio)
- Adiciona os seguintes valores (soma dos valores contidos nesses atributos do XML) no campo valor do PIMS, atributo <ListOfBatchAverageCosts > <UnitValues >
- <MaterialValue>
- <LaborValue>
- <OverHeadValue>
- Seqüência é definida conforme o atributo <ListOfBatchAverageCosts > <UnitValues > <Sequence>
- Se PARAMETROS.VALOR = 2 (preço Online)
- Adiciona os seguintes valores (soma dos valores contidos nesses atributos do XML) no campo valor do PIMS, atributo <ListOfOnLineAverageCosts > <UnitValues >
- <MaterialValue>
- <LaborValue>
- <OverHeadValue>
- Seqüência é definida conforme o atributo <ListOfOnLineAverageCosts > <UnitValues > <Sequence>
- Se PARAMETROS.VALOR = 3 (preço Padrão)
- Adiciona os seguintes valores (soma dos valores contidos nesses atributos do XML) no campo valor do PIMS, atributo <ListOfStandardCosts >< UnitValues >
- <MaterialValue>
- <LaborValue>
- <OverHeadValue>
- Seqüência é definida conforme o atributo <ListOfStandardCosts > <UnitValues > <Sequence>
- Adiciona os seguintes valores (soma dos valores contidos nesses atributos do XML) no campo valor do PIMS, atributo <ListOfStandardCosts >< UnitValues >
- Se PARAMETROS.VALOR = 4 (preço Base)
- Adiciona o seguinte valor no campo valor do PIMS, atributo <BasePrice ><Price>
- Seqüência é definida com valor fixo ‘1’;
- Se PARAMETROS.VALOR = 5 (preço Fiscal)
- Adiciona o seguinte valor no campo valor do PIMS, atributo <FiscalPrice > <Price>
- Seqüência é definida com valor fixo ‘1’;
- Se PARAMETROS.VALOR = 6 (preço Ultima Entrada)
- Adiciona o seguinte valor no campo valor do PIMS, atributo <LastReceivingPrice > <Price>
- Seqüência é definida com valor fixo ‘1’;
- Se PARAMETROS.VALOR = 7 (preço Ultima Reposição)
- Adiciona o seguinte valor no campo valor do PIMS, atributo <LastReceivingPrice > <Price>
- Seqüência é definida com valor fixo ‘1’;
- Adiciona os seguintes valores (soma dos valores contidos nesses atributos do XML) no campo valor do PIMS, atributo <ListOfOnLineAverageCosts > <UnitValues >
- Adiciona os seguintes valores (soma dos valores contidos nesses atributos do XML) no campo valor do PIMS, atributo <ListOfBatchAverageCosts > <UnitValues >
Seção | Entrada | Descrição |
INT_ERP | FG_EMPR_FILIAL | Identifica a forma de captação do atributo CSTG_INTDG à CD_EMPRESA no PIMS. Valor: F=(Filial/Estabelecimento) E = Empresa. |
INT_ERP | CSTGINTVM_DEPOS | Código dos depósitos centrais para captação de valores de Materiais. . Usado quando o atributo FG_EMPR_FILIAL = “E”. |
INT_ERP | CSTGINTVM _B_PRE | Identifica a base de preço para calculo de custo. Valor:1=Médio; 2=Online; 3=Padrão; 4=Base; 5=Fiscal; 6=Ultima Entrada; 7=Ultima Entrada. |
GERAIS | CD_EMPRESA | Código da empresa padrão. Usado quando o atributo FG_EMPR_FILIAL = “E”. |
Quadro 5 Parâmetros utilizados na transação de Custo dos Itens
1.6 Especificação da transação de Família de Material
Essa transação importa para o PIMS um grupo de insumo ou insumo industrial ou material dependendo da classificação informada no EMS.
O atributo classificação (FamilyClassification) no EMS é adicionado por uma UPC.
- Atributos presentes no XML para integração com PIMS:
- Se Classificação (FamilyClassification) informada no EMS for = 1 (genérico):
- Faz um delete nas tabelas GRUINSUMOS, GRPINSIND e GRPPRODIND.
- Se Classificação (FamilyClassification) informada no EMS for = 2 (Grupo de matérias):
- Faz um delete nas tabelas GRUINSUMOS e GRPINSIND;
- Insere ou atualiza a tabela GRPPRODIND:
- MaterialFamilyCode à GRPPRODIND.CD_INT_ERP
- MaterialFamilyDescription à GRPPRODIND.DE_GRP_PROD
- GRPPRODIND.DA_GRP_PROD = SUBSTR(GRPPRODIND.DE_GRP_PROD,0,10)
- Se Classificação (FamilyClassification) informada no EMS for = 3 (grupo de insumos):
- Faz um delete na tabela GRPPRODIND;
- Insere ou atualiza a tabela GRUINSUMOS:
- MaterialFamilyCode à GRUINSUMOS.CD_INT_ERP
- MaterialFamilyDescription à GRUINSUMOS.DE_GRUP_INSU
- GRPPRODIND.DA_GRUP_INSU = SUBSTR(GRUINSUMOS.DE_GRUP_INSU,0,10)
- Insere ou atualiza a tabela GRPINSUIND:
- MaterialFamilyCode à GRPINSIND.CD_INT_ERP
- MaterialFamilyDescription à GRPINSIND.DE_GRP_INS
- GRPPRODIND.DA_GRP_INS = SUBSTR(GRUINSUMOS.DE_GRP_INS,0,10)
- Se Classificação (FamilyClassification) informada no EMS for = 1 (genérico):
1.7 Especificação para transação de Item
Essa transação importa para o PIMS um Insumo ou Insumo industrial ou Material industrial dependendo da classificação informada no EMS.
O atributo classificação (ItemClassification) é adicionado no EMS por uma UPC.
- Atributos presentes no XML para integração com PIMS:
- Se classificação (ItemClassification) for = 1:
- Faz delete nas tabelas INSUMOS, INSUMOIND e PRODUTOIND
- Se classificação (ItemClassification) for =2:
- Faz delete nas tabelas INSUMOS e INSUMOIND;
- Insere ou atualiza a tabela PRODUTOIND:
- ItemCode à PRODUTOIND.CD_INT_ERP
- ItemDescription à PRODUTOIND.DE_PROD_IND
- PRODUTOIND.DA_PROD_IND = SUBSTR(PRODUTOIND.DE_PROD_IND,0,10)
- MaterialFamilyCode à PRODUTOIND.CD_GRP_IND
- UnitOfMeasureCode à PRODUTOIND.CD_UNIMED
- PARAMETROS.VALOR à PRODUTOIND.TP_PROD onde PARAMETROS.ENTRADA = ‘PRDIND_TPPROD’ e PARAMETROS.INSTANCIA = ‘instanciaPadrão’
- Se classificação (ItemClassification) for = 3:
- Faz delete na tabela PRODUTOIND;
- Insere ou atualiza a tabela INSUMOIND:
- ItemCode à INSUMOIND.CD_MATERIAL
- ItemDescription à INSUMOIND.DE_INS_IND
- INSUMOIND.DA_INS_IND = SUBSTR(INSUMOIND.DE_INS_IND,0,10)
- MaterialFamilyCode à INSUMOIND.CD_GRP_INS
- UnitOfMeasureCode à INSUMOIND.CD_UNIMED
- Insere ou atualiza a tabela INSUMOS:
- ItemCode à INSUMOS.CD_MATERIAL
- ItemDescription à INSUMOS.DE_INSUMO
- INSUMOS.DA_INSUMO = SUBSTR(INSUMOS.DE_INSUMO,0,10)
- MaterialFamilyCode à INSUMOS.CD_GRUP_INSU
- UnitOfMeasureCode à INSUMOS.CD_UNIMED
- Se classificação (ItemClassification) for = 1:
O código é formado com base no valor do parâmetro INS_CD_INSUMO.
Seção | Entrada | Descrição |
INT_ERP | INS_CD_INSUMO | Identifica quais caracteres do código do Insumo deve ser captado. Valor: 0 – Ignora parâmetro, SNNSN à S = envia caractere, N = não envia caractere |
INT_ERP | BXMAT_CDMAT | Identifica a forma de montagem do código do material para a transação de baixa (envio) e item (recebimento). Máximo = 15 Caracteres F = Indica que o dígito representa a família. M = Indica que o dígito é código do material. O código do material no PIMS é formado pela família + material. Caso o valor seja zero (0), não é realizado nenhuma tratativa no código que será gravado no PIMS. |
INT_ERP | PRDIND_TPPROD | Valor default para PRODUTOIND.TP_PROD |
Quadro 6 Parâmetros usados para a transação de Item
1.8 Especificação para transação de Unidade de Medida
Essa transação importa para o PIMS uma unidade de medida gerada ou atualização no EMS.
- Atributos presentes no XML para integração com PIMS:
- UnitOfMearuteCode -> UNIMEDIDAS.CD_UNIMED
- UnitOfMeasureDescription -> UNIMEDIDAS.DE_UNIMED
- Atributos que serão preenchidos com valores fixos (não contem no XML):
- UNIMEDIDAS.DA_UNIMED = SUBSTR(UNIMEDIDAS.DE_UNIMED,0,8)
2. TRANSAÇÕES HMC
2.1 Especificação da transação de Cargos
Essa transação importa para o PIMS um cargo gerado ou atualizado no HCM.
A tabela a ser alterada nessa transação é a CARGOS.
Os seguintes atributos estão presentes no XML e serão usados para atualização da tabela do PIMS.
- BasicPosition + LevelPosition à CARGOS.CD_CARGO, onde:
- Se o parâmetro CARGO_SEQ estiver com valor igual a ‘S’ o campo CARGOS.CD_CARGO, não irá receber o valor concatenado dos atributos;
- Se o parâmetro CARGO_SEQ estiver com valor igual a ‘N’ o campo CARGOS.CD_CARGO irá receber o valor concatenado dos atributos;
- São usados ainda os parâmetros CARGO_QT_BASICO e CARGO_QT_NIVEL, que definem a quantidade de caracteres em ambos os atributos do XML que serão recuperados para montar o código do cargo;
- O parâmetro CARGO_PADRAO indica qual é o cargo “A DEFINIR” e assim é excluído da busca para definir um código seqüencial para o caso em que o parâmetro CARGO_SEQ for igual ‘S’;
- BasicPosition + LevelPosition à CARGOS.CD_INT_ERP;
- BasicPositionDescription à CARGOS.DE_CARGO;
- FG_CONT_FREQ = parâmetro CARGO_CONT_FREQ;
- QT_H_DIARIA = parâmetro CARGO_QT_H_DIA;
Seção | Entrada | Descrição |
INT_ERP | CARGO_CONT_FREQ | Indica o valor do atributo a ser gravado no atributo CARGOSàFG_CONT_FREQ |
INT_ERP | CARGO_QT_BASICO | Indica a quantidade de caracteres do cargo básico do EMS que serão gerados no código do cargo do PIMS CARGOSàCD_CARGO |
INT_ERP | CARGO_QT_H_DIA | Indica o valor do atributo à ser gravado no atributo CARGOSàQT_H_DIARIA |
INT_ERP | CARGO_QT_NIVEL | Indica a quantidade de caracteres do nível cargo do EMS que serão gerados no código do cargo do PIMS CARGOSàCD_CARGO |
INT_ERP | CARGO_PADRAO | Valor do código do cargo à definir CARGOSàCD_CARGO |
INT_ERP | CARGO_SEQ | Indica se a geração do código do cargo será seqüencial no PIMS. S = Sim e N = Não. |
Quadro 7 Parâmetros utilizados na transação de Cargos
2.2 Especificação da transação de Sindicatos
Essa transação importa para o PIMS um sindicado cadastrado ou alterado no HCM. A tabela alterada nessa transação é SINDICATOS.
Os seguintes atributos presentes no XML iram ser utilizados para a integração:
- UnionCode à CD_SINDICATO;
- UnionName à DE_SINDICATO;
- BeginNightSchedule à HR_INI_AN;
- EndNightSchedule à HR_FIM_AN;
- RuralItineraryHours à QT_HPERCURSO.
Essa transação não utiliza parâmetros.
2.3 Especificação da transação de Agenciadores e Turmas
Essa transação importa para o PIMS um(a) agenciador/turma cadastrada ou alterada no HCM.
As tabelas atualizadas são:
- TRANSPORTADOR;
- TURMAS.
A tabela TRANSPORTADOR é atualizada conforme regra a seguir:
- CarrierType à FG_TP_PESS, onde:
- 1 = ‘F’;
- 2 = ‘J’;
- 3 = ‘F’.
- RuralGroupDescription à DE_TRANSP
- CompanyCode+CarrierCode à CD_TRANS_ERP, onde:
- É recuperado as duas primeira posições de CompanyCode e 6 primeira posições de CarrierCode (valores da string) para montar o código, o mesmo vale para o CD_TRANSP.
- CompanyCode+CarrierCode à CD_TRANSP
- CD_MUNIC = PARAMETROS.VALOR, onde:
- PARAMETROS.SECAO = ‘INT_ERP’ e PARAMETROS.ENTRADA=‘TRANS_CD_MUNIC’
Os outros atributos serão atualizados em branco. Neste caso será necessário que o usuário faça manutenção no cadastro, para definir a categoria da turma, informar os códigos dos fiscais, informarem o tipo da turma, a descrição abreviada e o município da turma.
2.4 Especificação da transação de Funcionários
A transação de Funcionários tem o seguinte Fluxo HCM à PIMS.
São recuperas as informações da transação de Funcionários que são geradas nas Fila_EAI pelo o HCM. Após as informações recuperadas é executar um UPDATE o um INSERT na tabela FUNCIONARS. O UPDATE ou INSERT só acontecerá caso as informações abaixo retornem sucesso.
- Exista Instancia e Empresa cadastrada no PIMS equivalente a que esta sendo informada pelo o HCM
- Verificação dos parâmetros que são demonstrados no quadro 8. Caso algum parâmetro não seja encontrado retornando mensagem de erro que será gravada na tabela de Logs.
- Validação do Funcionário;
- Validação da Jornada de Trabalho
- Validação do Cargo
- Verifica a situação do funcionário (admitido ou demitido)
- Validação dos Atributos dos Funcionários
- Verifica a Freqüência do Salário
- Valida Custo
- Valida Rural - Transportador
Seção | Entrada | Validos | ||
INT_ERP | CARGO_QT_BASICO | de 1 a 5 | ||
Define a quantidade de bytes recuperada do atributo BasicPosition no EMS | ||||
INT_ERP | CARGO_QT_NIVEL | de 1 a 3 | ||
Define a quantidade de bytes recuperada do atributo LevelPosition no EMS | ||||
INT_ERP | CD_LOTACAO_FILT | Valores entre ponto-e-vírgula (;). Ex: 1;2;3 | ||
Lista de valores de mão de obra (LaborType) para captação. | ||||
INT_ERP | FUNC_ATUALI_COL | 0 = Não atualiza, 1 = (CD_FUNC_COL <- CD_FUNC), 2 = Captura o código do crachá vindo no XML (Datasul) | ||
Informe se atualiza ou não o campo CD_FUNC_COL | ||||
INT_ERP | FUNC_ATUALI_CST | de acordo com o funcionário | ||
Parâmetro para verificar se na atualização atualiza o centro de custos na tabela Funcionars | ||||
INT_ERP | FUNC_CD_FUNC | F = Pessoa Física, M = Matricula do Funcionário | ||
Parâmetro para identificar a forma de captação do atributo CD_FUNC na tabela FUNCIONARS | ||||
INT_ERP | FUNC_CD_LOTACAO | de acordo com cadastro de lotação no cliente | ||
Parâmetro para atualizar o atributo CD_LOTACAO na tabela FUNCIONARS | ||||
INT_ERP | FUNC_FG_CARGO | P = Código do PIMS (CARGOS.CD_CARGO), D = Código da Datasul (CARGOS.CD_INT_ERP) | ||
Identifica por qual atributo validar o cargo na transação Employee(Funcionários) | ||||
INT_ERP | FUNC_FG_CCUSTO | P = Código do PIMS (CCUSTOS.CD_CCUSTO), D = Código da Datasul (CCUSTOS.CD_INT_ERP) | ||
Identifica por qual atributo validar o centro de custo na transação Employee(Funcionarios) | ||||
INT_ERP | FUNC_FG_RUR | 1=Mensal, 2=Horista, 3=Semanal, 4=Quinzenal, 5=Tarefa, 6=Diarista | ||
Informar as Categorias Salariais do EMS que são RURALISTA | ||||
INT_ERP | FUNC_PROP_TERC | P = próprio T = terceiros | ||
Parâmetro para atualizar o atributo FG_PROP_TERC na tabela FUNCIONARS | ||||
INT_ERP | FUNC_STR_CCUSTO | 0 - Não altera, SSNNNSSNN --> S = envia caractere, N = não envia caractere | ||
Indica como deve ser captado o código do Centro de Custos | ||||
INT_ERP | FUNC_CD_FUNC | F = Pessoa Física, M = Matricula do Funcionário | ||
Parâmetro para identificar a forma de captação do atributo CD_FUNC na tabela FUNCIONARS | ||||
INT_ERP | FUNC_CD_FUNC_ES | 0 não atualiza. Multi valorado | ||
Informar o código do estabelecimento no DATASUL que contradiz a regra do FUNC_CD_FUNC para a mesma instancia MD ou EMD | ||||
INT_ERP | FUNC_CD_HORARIO | Valor default = 1 | ||
Parâmetro para atualizar o atributo CD_HORARIO na tabela FUNCIONARS | ||||
INT_ERP | FUNC_FREQ_DIAR | Código EMS = 6 PIMS = 2 | ||
Código da freqüência de pagamento diarista | ||||
INT_ERP | FUNC_FREQ_HOR | Código EMS = 2 PIMS = 1 | ||
Código da freqüência de pagamento horista | ||||
INT_ERP | FUNC_FREQ_MEN | Código EMS = 1 PIMS = 5 | ||
Código da freqüência de pagamento mensal | ||||
INT_ERP | FUNC_FREQ_QUIN | Código EMS = 4 PIMS = 4 | ||
Código da freqüência de pagamento quinzenal | ||||
INT_ERP | FUNC_FREQ_SEM | Código EMS = 3 PIMS = 3 | ||
Código da freqüência de pagamento semanal | ||||
INT_ERP | FUNC_FREQ_TAR | Código EMS = 4 PIMS = 1;2;3;4;5 | ||
Código da freqüência de pagamento tarefista | ||||
INT_ERP | TRANSP_CD_TRANS | 1 ->PIMS.CD_TRANSP=EMS.CD_TRANSP , 2 -> PIMS.CD_TRANSP = EMS.CD_EMPRESA (2caracter) + EMS.CD_TRANSP(6caracter) | ||
Identifica como será captado o código do transportador | ||||
INT_ERP | TRANSP_CD_TURMA | 1->PIMS.CD_TURMA=EMS.CD_TURMA, 2->PIMS.CD_TURMA=EMS.PLANOLOTACAO+UNIDADELOTACAO | ||
Indica por onde será captado o código da Turma | ||||
INT_ERP | TRANSP_FG_TURMA | N = Não considera o caractere, S = Considera o caractere | ||
Usado para o método 3 do parâmetro TRANSP_CD_TURMA, indica a posição do campo UNIDADE LOTACAO do EMS | ||||
Quadro 8 Parâmetros da transação de Funcionários
2.5 Especificação da transação de Serviços Agrícola
A transação de Serviços Agrícolas tem o seguinte Fluxo HCM à PIMS.
São recuperas as informações da transação de Serviços Agrícolas que são geradas nas Fila_EAI pelo o HCM.
Após as informações recuperadas é executar um UPDATE o um INSERT na tabela VERBAS. Nesta transação a necessidade da verificação dos valores na unidade medida e índice econômico e sistema efetua a seguinte checagem:
Abaixo os procedimentos / validações de como são atualizados alguns atributos nesta transação.
Seção | Entrada |
|
INT_ERP | VERBAS_FG_PGDSR |
|
Valor default para VERBAS->FG_PG_DSR
| ||
INT_ERP | VERBA_CD_UNIMED |
|
Realiza um DE-PARA entre os atributos CD_UNIMED (PIMS) --> ServiceUnit(Datasul). Delimitador; O valor deste parâmetro devera der definido obedecendo a sequencia do EMS. Se o mesmo não for utilizado devera deixar seu espaço.
| ||
INT_ERP | VERBA_IND_ECO |
|
Identifica as unidades de medida onde existe Indice Economico.
| ||
INT_ERP | VERBA_POR_INST |
|
Indica se gera a verba para todas as instancias.
| ||
INT_ERP | VERBA_QT_DIGITO |
|
Indica a quantidade de dígito que será captada do Datasul para gerar o código da verba no PIMS.
|
Quadro 9 Parâmetros da transação de Serviços Agrícola
Descrição da tabela VERBAS juntamente com a especificação de cada campo
INSTANCIA | Preencher com instancia nome da instancia default |
CD_VERBA | Código será gerado conforme o tamanho informado no valor de PARAMETROS.VERBA_QT_DIGITO |
DE_VERBA | Descrição vinda do EMS |
CD_UNIMED | Faz um DE-PARA conforme o valor de PARAMETROS. VERBA_CD_UNIMED |
CD_IND_ECO | Identifica as unidades de medidas que onde existe índice econômico conforme valor de PARAMETROS.VERBA_IND_ECO |
FG_VENC_DESC |
|
FG_CLASSE |
|
FG_DIARIA |
|
FG_PG_FER |
|
FG_PG_DSR |
|
FG_PG_PREMIO | ‘N’ |
FG_INSALUB | ‘N’ |
FG_DIFERENCA | ‘N’ |
FG_COMPLEM | ‘N’ |
FG_MT_CORTE | ‘N’ |
FG_HR_PRODU | ‘N’ |
FG_MT_GERAL | ‘N’ |
FG_FEIXE |
|
FG_CAMINHAO |
|
FG_TONELADA |
|
FG_HORAS |
|
FG_HR_RELOG |
|
ROWVERSION | 1 |
Quadro 10 Descrição da Tabela Verbas
2.6 Especificação da transação de Históricos de Situações
A transação de Históricos de Situação tem o seguinte Fluxo HCM à PIMS.
São recuperas as informações da transação de Históricos de Situação que são geradas nas Fila_EAI pelo o HCM.
Após as informações recuperadas é executar um UPDATE o um INSERT nas tabelas AFASTFER ATESTADOS.
Na operação de UPDATE são realizadas as seguintes operações:
- Recupera a lista de afastamentos e enquanto não finalizar a lista executa:
- Recupera todas as instâncias
- Valida o código do Funcionário através do valor do parâmetro FUNC_CD_FUNC, dentro deste método é recuperado os parâmetros.
- É recuperada uma lista de situações e, enquanto não terminar essa lista, é executado:
- Validação das chaves requeridas
- Realiza a seguinte validação:
- Se o valor passado pelo EMS for igual a 5 seta a situação com ‘F’ (Ferias), se for 2 seta com ‘A’ (Afastamento). Caso não seja nenhum dos dois valores o método retorna falso e não é prosseguido o cálculo da transação, lançando um erro na tabela de logs.
- Caso a situação seja igual a ‘A’ são executados os seguintes procedimentos:
- Caso a situação seja ‘R’ ou ‘Q1’, é atualizado a tabela de atestados;
- Na tabela passada como argumento é feita uma deleção quando o CD_INT_ERP for igual ao RecordID passado pelo EMS.
- Se depois desses processos não foi lançado nenhum erro e nenhum registro foi deletado, é realizado um update nos campos CD_INT_ERP, CD_AFAST, DT_FIM, DT_ATUALIZACAO tendo como chave o código do funcionário, a instância, a data do início do afastamento e o campo FG_FER_AFA. Se não for realizado o update, é executado um insert.
- Caso tenho sido executado todo o processo sem erros porém tenha sido deletado algum registro é diretamente executado um insert.
Na operação de update de atestados executa o seguinte procedimento:
- É recuperado parâmetros
- Na tabela passada como argumento é feita uma deleção quando o CD_INT_ERP for igual ao RecordID passado pelo EMS.
- Caso nada seja retornado deste método é realizado um update na tabela de atestados nos campos FG_PAGA, CD_VERBA, CD_INT_ERP e DT_DIGITACAO, filtrando pela instância, código do funcionário, tipo do atestado e detalhe do atestado. Caso nada seja atualizado é realizado um insert.
- No caso de um atestado de mais de 15 dias, o restante dos dias de afastamento são inseridos na tabela AFASTFER.
2.7 Especificação da transação de Movimento Cálculo Funcionários
A transação de Movimento Cálculo Funcionário tem o seguinte Fluxo HCM à PIMS.
São recuperas as informações da transação de Movimento Cálculo Funcionário que são geradas nas Fila_EAI pelo o HCM.
Após as informações recuperadas é executar um UPDATE o um INSERT nas tabelas CSTG_INTFP. Caso as validações abaixo seja realizadas com sucesso é realizado um UPDATE caso já exista a informa na tabela CSTG_INTFP senão será realizado um INSERT.
- Validação de Funcionários
- Validação da Empresa e Funcionário
- Filtro de Funcionário
SECAO | ENTRADA | VALOR | DESCRICAO |
INT_ERP | CD_LOTACAO_FILT | 0 | Lista de valores de mão de obra (LaborType) para captação. |
INT_ERP | FG_EMPR_FILIAL | E | Identifica a forma de captação do atributo CD_EMPRESA no PIMS |
INT_ERP | FUNC_CD_FUNC | EM | Parametro para identificar a forma de captação do atributo CD_FUNC na tabela FUNCIONARS |
Quadro 11 Parâmetros da transação de Movimento Cálculo Funcionários
2.8 Especificação da transação de Turnos e Jornada de Trabalho
Essa transação importa para o PIMS, os Turnos, Escalas DSR e Horários gerados ou alterados no HCM.
As tabelas atualizadas no PIMS são:
- TURNOS_COL;
- ESCA_DSR_HE;
- HORARIOS;
Na atualização do cadastro de escala do PIMS, será gerado na fila, quando o usuário efetuar manutenção no cadastro de turnos Datasul e turmas. Qualquer inclusão ou alteração irá disparar processo e atualizar o PIMS.
O código da escala será composto pelo CODIGO DO TURNO + TURMA. Nesta transação o sistema sempre irá gerar uma escala com o código Default, somente com o código do turno do Datasul, neste momento será atualizado o atributo DE_TURNO_EMS, onde conterá a informação da seqüência da jornada gerada no EMS.
- É recuperado cada instancia cadastrada em PMMAPPIMS_EXT.CD_COD_PIMS e para cada uma é realizado um update (ou insert se não existir uma linha com a chave referenciada no update) onde o mapeamento da INSTANCIA é:
- INSTANCIA = PMMAPPIMS_EXT.CD_COD_PIMS, onde:
- PMMAPPIMS.CD_ENTRADA=’INSTANCIA’ e PMMAPPIMS_EXT.INSTANCIA=’TODAS’;
- INSTANCIA = PMMAPPIMS_EXT.CD_COD_PIMS, onde:
Para a atualização da tabela ESCA_DSR_HE:
- INSTANCIA = mapeamento descrito acima;
- DE_ESCALA = ShiftDescription;
- QT_VAR_ESCA = ScaleDaysQty – 1 (menos 1 (um));
- CD_TURNO = Shift+’00’ (concatena os números 00);
- DT_INI_ESCA = a data é o primeiro dia do mês e ano corrente;
- DT_FIM_ESCA = a data é o primeiro dia do mês e ano corrente;
- FG_DSR_DOM = ‘N’
- FG_DSR_SAB = ’N’
- FG_FALTA_SAB, recebe o valor ‘S’ ou ‘N’ dependendo da seguinte regra:
- Se Daytype = 5 à ‘S’ senão ‘N’
Se o EMS não possuir os intervalos, é gerado os turnos e horários com valores defaults.
- INSTANCIA = mapeamento descrito acima;
- CD_ESCALA = WorkGroupCode+00
- DE_ESCALA = ShiftDescription;
- FG_DSR_DOM = ‘N’;
- FG_FALTA_SAB = ‘S’;
- FG_DSR_SAB = ‘N’;
Para a atualização da tabela HORARIOS:
- CD_HORARIO = Shift;
- DT_VALIDADE = a data é o primeiro dia do mês e ano corrente;
- INSTANCIA = PMMAPPIMS_EXT.CD_COD_PIMS, onde:
- PMMAPPIMS.CD_ENTRADA=’INSTANCIA’ e PMMAPPIMS_EXT.INSTANCIA=’TODAS’;
- HR_INI_JOR_SEM = CommencementSchedule;
- HR_INI_ALM_SEM = TimeCommencement;
- HR_FIM_ALM_SEM = TimeEnd;
- HR_INI_CAF_SEM = FirstBreakCommencement;
- HR_FIM_CAF_SEM = FirstBreakEnd;
- HR_FIM_JOR_SEM = EndSchedule;
- HR_INI_JOR_TER = CommencementSchedule;
- HR_INI_ALM_TER = TimeCommencement;
- HR_FIM_ALM_TER = TimeEnd;
- HR_INI_CAF_TER = FirstBreakCommencement;
- HR_FIM_CAF_TER = FirstBreakEnd;
- HR_FIM_JOR_TER = EndSchedule;
- HR_INI_JOR_QUA = CommencementSchedule;
- HR_INI_ALM_QUA = TimeCommencement;
- HR_FIM_ALM_QUA = TimeEnd;
- HR_INI_CAF_QUA = FirstBreakCommencement;
- HR_FIM_CAF_QUA = FirstBreakEnd;
- HR_FIM_JOR_QUA = EndSchedule;
- HR_INI_JOR_QUI = CommencementSchedule;
- HR_INI_ALM_QUI = TimeCommencement;
- HR_FIM_ALM_QUI = TimeEnd;
- HR_INI_CAF_QUI = FirstBreakCommencement;
- HR_FIM_CAF_QUI = FirstBreakEnd;
- HR_FIM_JOR_QUI = EndSchedule;
- HR_INI_JOR_SEX = CommencementSchedule;
- HR_INI_ALM_SEX = TimeCommencement;
- HR_FIM_ALM_SEX = TimeEnd;
- HR_INI_CAF_SEX = FirstBreakCommencement;
- HR_FIM_CAF_SEX = FirstBreakEnd;
- HR_FIM_JOR_SEX = EndSchedule;
- HR_INI_JOR_SAB = CommencementSchedule;
- HR_INI_ALM_SAB = TimeCommencement;
- HR_FIM_ALM_SAB = TimeEnd;
- HR_INI_CAF_SAB = FirstBreakCommencement;
- HR_FIM_CAF_SAB = FirstBreakEnd;
- HR_FIM_JOR_SAB = EndSchedule;
- HR_INI_JOR_DOM = CommencementSchedule;
- HR_INI_ALM_DOM = TimeCommencement;
- HR_FIM_ALM_DOM = TimeEnd;
- HR_INI_CAF_DOM = FirstBreakCommencement;
- HR_FIM_CAF_DOM = FirstBreakEnd;
- HR_FIM_JOR_DOM = EndSchedule;
Para a atualização da tabela TURNO_COL:
- CD_TURNO = TimetableCode+00 (concatena os números 00 no final do valor do atributo do XML);
- DE_TURNO = TimetableCode+00;
- CD_HORARIO = TimetableCode+00;
- FG_NOTURNO = ‘N’;
- FG_SAB_COMP , recebe o valor ‘S’ ou ‘N’ dependendo da seguinte regra:
- Se Daytype = 5 à ‘S’ senão ‘N’
- FG_TP_SAB_COMP = ‘1’;
- FG_TP_DF = ‘2’;
- FG_TP_FOLGA = ‘2’;
- INSTANCIA = PMMAPPIMS_EXT.CD_COD_PIMS, onde:
- PMMAPPIMS.CD_ENTRADA=’INSTANCIA’ e PMMAPPIMS_EXT.INSTANCIA=’TODAS’;
Seção | Entrada | Descrição |
INT_ERP | ESCA_COD_FOLGA | Código da jornada (Sistema Datasul) que informa o código da folga. |
Quadro 12 Parâmetros da transação de Turnos e Jornada de Trabalho
3. TRANSAÇÕES FROTAS
3.1 Especificação da transação de Equipamentos
A transação de Equipamentos tem o seguinte Fluxo FROTAS à PIMS.
São recuperas as informações da transação de Equipamentos que são geradas nas Fila_EAI pelo o FROTAS.
Após as informações recuperadas é executar um UPDATE o um INSERT na tabela EQUIPTOS. Caso as validações abaixo sejam realizadas com sucesso, é realizado um UPDATE caso já exista a informa na tabela EQUIPTOS senão será realizado um INSERT.
- Valida Código Equipamento
- O atributo CD_TRANSP recebe o código do fornecedor quando o equipamento é de Terceiros, quando o equipamento é próprio recebe o código da empresa.
- Validação do Parâmetros
- É recuperado o parâmetro EQUIPTO_CDCCUST, da seção INT_ERP. Este parâmetro identifica como deve ficar o código do Centro de Custos no Cadastro de Equipamentos do PIMS. Caso o valor seja 0 (zero), o Centro de Custo fica igual ao do EMS, caso seja diferente de 0, o Centro de Custos é seta do com o valor do parâmetro.
- Validação da Categoria Operacional
- O método validaCategoriaOperacional() é responsável por verificar se a categoria operacional existe no PIMS.
- Validação do Transportador
- O método validaTransportador() é responsável por validar se o transportador existe no PIMS.
- Validação do Centro Custos
- O método validaCentroCustos() é responsável por validar se o centro de custos existe no PIMS, onde o valor do parâmetro QUIPTO_CDCCUST.
Após a atualização é executado os seguintes métodos;
- Executa o método geraHistoricoDispon(), que faz uma consulta na tabela EQUIP_DISPON onde o código do equipamento seja igual ao passado no XML. Caso exista equipamento disponível é gerado um registro na mesma tabela, informando a data de referência atual e a nova disponibilidade do equipamento.
- Se o atributo para geração de histórico estiver habilitado para geração de histórico, é chamado o método geraHistoricoCcusto(), que realiza uma busca na tabela EQUIP_CC, pelo código do centro de custos. Caso exista o centro de custos, é gerada uma linha de histórico na mesma tabela, porém o campo DT_REFERENCIA deve ser seta do com a data corrente concatenada com a hora zerada (hh:mm:ss / 00:00:00).
3.2 Especificação da transação de Estrutura Mecânica
A transação de Estrutura Mecânica tem o seguinte Fluxo FROTAS à PIMS.
São recuperas as informações da transação de Estrutura Mecânica que são geradas nas Fila_EAI pelo o FROTAS.
Após as informações recuperadas é executar um UPDATE o um INSERT na tabela GRUOPERATI. É realizado um UPDATE caso já exista a informa na tabela GRUOPERATI senão será realizado um INSERT.
Nesta transação são gravadas as seguintes informações na tabela “GRUOPERATI” do PIMS:
- Código do Grupo Operativo (CD_GRUPO_OP)
- Descrição do Grupo Operativo (DE_GRUPO_OP)
Seção | Entrada | Descrição |
INT_ERP | GROP_UNIMED | Indica o valor a ser gravado no atributo GRUOPERATIàCD_UNIMED |
INT_ERP | GROP_FG_TPGR | Indica o valor a ser gravado no atributo GRUOPERATIàFG_TP_GRUPO |
Quadro 13 Parâmetros da Transação de Estrutura Mecânica
3.3 Especificação da transação de Marcas
A transação de Marcas tem o seguinte Fluxo FROTAS à PIMS.
São recuperas as informações da transação de Marcas que são geradas nas Fila_EAI pelo o FROTAS.
Após as informações recuperadas é executar um UPDATE o um INSERT na tabela MARCAS. É realizado um UPDATE caso já exista a informa na tabela MARCAS senão será realizado um INSERT.
Nesta transação são gravadas as seguintes informações;
- Código da Marca (CD_MARCA)
- Descrição da Marca (DE_MARCA)
Não há recuperação de Parâmetros.
3.4 Especificação da transação de Modelos
A transação de Modelos tem o seguinte Fluxo FROTAS à PIMS.
São recuperas as informações da transação de Modelos que são geradas nas Fila_EAI pelo o FROTAS.
Após as informações recuperadas é executar um UPDATE o um INSERT na tabela Modelos. Caso a validação abaixo seja realizada com sucesso, é realizado um UPDATE caso já exista a informa na tabela Modelos senão será realizado um INSERT.
- Validação de Marcas
- É responsável por consultar a tabela de Marcas no PIMS, buscando pela marca com código igual ao informado no XML.
Nesta transação são gravadas as seguintes informações na tabela “MODELOS” do PIMS:
- Código do modelo (CD_MODELO)
- Descrição do modelo (DE_MODELO)
- Código da Marca (CD_MARCA)
Seção | Entrada | Descrição |
INT_ERP | MOD_CLAS_POT | Indica o valor a ser gravado no atributo MODELOSàCD_CLAS_POT |
INT_ERP | MOD_GRUPO_OP | Indica o valor a ser gravado no atributo MODELOSàCD_GRUPO_OP |
INT_ERP | MOD_QTLIM_CARGA | Indica o valor a ser gravado no atributo MODELOSàQT_LIM_CARGA |
Quadro 14 Parâmetros da Transação de Modelos
3.5 Especificação da transação de Grupos de Equipamentos
A transação de Grupos de Equipamentos tem o seguinte Fluxo FROTAS à PIMS.
São recuperas as informações da transação de Grupos de Equipamentos que são geradas nas Fila_EAI pelo o FROTAS.
Após as informações recuperadas é executar um UPDATE o um INSERT na tabela CATEG_OPER. É realizado um UPDATE caso já exista a informa na tabela CATEG_OPER senão será realizado um INSERT.
Nesta transação são gravadas as seguintes informações na tabela “CATEG_OPER” do PIMS:
- Código da Categoria Operativa (CD_CATEG_OPER).
- Descrição da Categoria Operativa (DE_CATEG_OPER).
- Descrição Abreviada da Categoria Operativa (DA_CATEG_OPER).
3.6 Especificação da transação de Abastecimento/Lubrificação
A transação de Abastecimento e Lubrificação tem o seguinte Fluxo FROTAS à PIMS.
São recuperas as informações da transação de Abastecimento e Lubrificação que são geradas nas Fila_EAI pelo o FROTAS.
Após as informações recuperadas são executados UPDATEs o INSERTs nas tabelas APT_ABAST_HE, APT_ABAST_DE, APT_LUBR_HE, APT_LUBR_DE. Caso as validações abaixo sejam realizadas com sucesso, é realizado um UPDATE caso já exista a informa nas tabelas citadas senão será realizado um INSERT.
- Validação de Equipamento
- O método responsável por verificar se o equipamento já existe no PIMS.
- Validação de Lubrificante
O método responsável por gerar uma lista entre ponto-e-vírgulas (“;”) e, setar no objeto, os abastecimentos válidos.
Depois de recuperar uma lista de abastecimentos, enquanto tiver registros é executado:
- São atualizados na tabela APT_ABAST_HE os seguintes campos filtrando pela instância e pelo número do boletim:
- CD_PONTO
- CD_FUNC_RESP
- Caso nenhum registro seja atualizado, é chamado o método insertAbastHe(), que irá inserir o registro correspondente na tabela.
- Caso atualize algum registro, é recuperada uma lista de detalhes que é percorrida executando o seguinte procedimento.
- Se o retorno do método getIsPrimaryFuel for igual a “true”, então esse método é seta do para que tenha o valor “P”, caso seja “false”, é seta do para o valor “A”.
- O método setNoBolExt() está setando o atributo com o valor “0” de forma fixa.
- É chamado o método updateAbastDe(), que irá inserir os detalhes na tabela APT_ABAST_DE. Caso nenhuma linha seja atualizada é inserido um registro correspondente através do método insertAbastDe().
O mesmo procedimento é continuado dentro do método de atualização, porém para lubrificações.
3.7 Especificação da transação de Custo dos Equipamentos
A transação de Custo de Equipamentos tem o seguinte Fluxo FROTAS à PIMS.
São recuperas as informações da transação de Custo de Equipamentos que são geradas nas Fila_EAI pelo o FROTAS.
Após as informações recuperadas é executado UPDATE ou INSERT na tabelas CSTG_INTCM. Caso as validações abaixo sejam realizadas com sucesso, é realizado um UPDATE caso já exista as informações na tabela CSTG_INTCM, senão será realizado um INSERT.
Nesta transação são gravadas as seguintes informações
- Código da Instancia (INSTANCIA),
- Código da Empresa (CD_EMPRESA),
- Código do Equipamento (CD_EQUIPTO),
- Data de Referencia (DT_REFER),
- Código do Material (CD_MATER),
- Descrição do Material (DE_MATER),
- Quantidade de Material (QT_MATER),
- Valor do Material (QT_VALOR),
- Os atributos “Centro de Custos (CD_CCUSTO)”,
- “Primeiro valor do material (QT_VALOR1)”.
- “Segundo valor do material (QT_VALOR2)”,
- “Terceiro valor do matéria (QT_VALOR3)” e
- “Quarto valor do material (QT_VALOR4)” são gravados com valor fixo igual a “0”.
- O atributo “Origem do Custo (FG_ORIGEM)” é gravado com valor fixo igual a “D”e o atributo “Tipo do Custo (FG_TIPO)” é gravado com valor fixo igual a “M”.
Nesta transação, antes de realizar uma operação de UPDATE é feita uma busca com a chave (INSTANCIA, CD_EMPRESA, CD_EQUIPTO, DT_REFER e CD_MATER) para verificar se a informação da Datasul já existe no PIMS. Caso exista, é realizada uma soma entre o atributo que já existe no PIMS (QT_VALOR e QT_MATERIAL) e o atributo que a Datasul está enviando, para atualizar o valor na tabela do PIMS. Caso não exista, é realizado um INSERT.
Se o valor e a quantidade forem diferentes de zero, valor = valor/quantidade.
O método soma Valores realiza uma busca por registros, que satisfaçam a mesma condição do que será atualizado. Os valores e as quantidades serão soma ao que já existe na atualização.
4. TRANSAÇÕES PIMS
4.1 Especificação de Reporte de Produção
A transação de Reporte de Produção tem o seguinte Fluxo PIMS à EMS.
O PIMS grava as informações da transação de Reporte de Produção na tabela BRG_REPPROD, as seguintes informações são gravadas na tabela BRG_REPPROD;
- Usado no Reporte de Produção (NO_BOLETIM)
- Data do Movimento (DT_MOVIMENTO)
- Código do Item do ERP (CD_ITEM)
- Código do Depósito (CD_DEPOSITO)
- Código do Estabelecimento (CD_ESTABELEC)
- Código da Conta no ERP (CD_CONTA_ERP)
- Usado no Reporte de Produção (QT_CANA_ATUAL)
- Quantidade de cana estornada (QT_CANA_ANT)
- Boletim estornado (NO_BOLETIM_ANT)
- Status da BRG durante o processamento (STATUS)
- Indica o comando executado no PIMS (DE_CMDSQL)
- Data/Hora da geração do Registro (DTHR_GERACAO)
Regras de Negócio para o Reporte de Produção e o Estorno do Reporte de Produção:
Quando o usuário realiza o calculo diário no RCMPCAL o PIMS gera as informações de Reporte de Produção. Antes de gravar na BRG_REPPROD o sistema verifica se não existe na BRG_REPPROD nenhum calculo realizado para a mesma data/Boletim/Item. Caso exista, o sistema recupera qual é o numero do boletim e gera uma transação de estorno referente ao boletim encontrado, e, em seguida gera um novo boletim de produção.
Caso não existam informações na tabela BRG_REPPROD, o sistema somente gera o reporte de produção.
4.2 Especificação de Movimento de Estoque
A transação de Movimento de Estoque tem o seguinte Fluxo PIMS à EMS.
O PIMS grava as informações da transação de Movimento de Estoque tem na tabela BRG_BXMATERIAL, e as seguintes informações são gravadas na mesma;
As seguintes informações são captadas da tabela “BRG_BXMATERIAL”.
- Numero do Boletim (NO_BOLETIM)
- Data do Boletim (DT_CONSUMO)
- Código do Insumo no ERP (CD_MATERIAL)
- Quantidade Aplicada (QTDE)
- Código do Deposito no ERP(CD_DEPOSITO)
- Código da Conta no ERP(CD_CONTA)
- Código do Centro de Custo (CD_CCUSTO)
- Código da Unidade de Medida (CD_UNIMED)
- Código do Estabelecimento no ERP (CD_ESTABELEC)
- Numero do Lote (NO_LOTE)
- Código da Localização (CD_LOCALIZ)
- Código do Valor dos Insumos (VALOR)
- Tipo do Movimento no ERP (FG_TPMOVTO)
- Tipo do Documento no ERP (FG_TPDOCTO)
- Status da BRG durante o processamento (STATUS)
- Indica o comando executado no PIMS (DE_CMDSQL)
- Data/Hora da geração do Registro (DTHR_GERACAO)
Regras de Negócio:
Para ativar a transação de Baixa de Materiais precisa configurar as seguintes informações:
Seção | Entrada | Descrição |
INT_ERP | FG_BXMATERIAL | Indica se realiza Transação de Baixa de Materiais com ERP. Valor: S = Sim, realiza baixa através do PIMS / N = Não realiza |
INT_ERP | CD_ESTABELEC | Código do Estabelecimento/Filial do ERP (se aplicável). |
INT_ERP | NM_ERP | Nome do ERP de interação. Valor = EMS |
INT_ERP | BXMAT_CDMAT | Informa a forma geração do código do Material para ser enviado para o Datasul. F = Indica que o dígito representa a família (é excluído do código). M = Indica que o dígito é código do material (Esse é adicionado). Caso o valor seja zero (0), não é realizado nenhuma tratativa no código para envio ao Datasul. |
INT_ERP | BXMAT_TIRA_ZERO | S = Sim / N = Não à Indica se são ou não retirados os zeros da esquerda do código do material que será enviado ao Datasul na baixa. Só é considerado se o parâmetro BXMAT_CDMAT for diferente de zero. |
Quadro 15 Parâmetros da Transação Movimento de Estoque
O atributo CD_ESTABELEC da tabela BRG_BXMATERIAL e o atributo CD_DEPOSITO podem ser recuperados de duas maneiras:
- No apontamento de Insumos o usuário informa o Depósito. O sistema recupera o Atributo “Empresa ERP” do cadastro de depósitos e atualiza o atributo CD_ESTABELEC da tabela BRG_BXMATERIAL. Para o atributo “CD_DEPOSITO” da tabela BRG_BXMATERIAL o sistema recupera o atributo “Código ERP” do cadastro de depósitos.
- Ø Caso os Atributos “Empresa ERP” e “Código ERP” do cadastro de Deposito não estejam preenchidos, o sistema grava o código do DEPOSITO com seu código realmente e o código do estabelecimento do parâmetro CD_ESTABELEC da seção INT_ERP.
4.3 Especificação de Custo Apurado
A transação de Custo Apurado tem o seguinte Fluxo PIMS à EMS.
O PIMS grava as informações da transação de Custo Apurado na tabela CSTG_INTERP2, e as seguintes informações são recuperadas da mesma;
- Código Empresa ERP (CD_EMPR_ERP)
- Data de Referência (DT_REFER)
- Código do Centro de Custos do ERP (CD_CC_ERP)
- Código da Conta de Contábil (CD_CTA_CON)
- Código da Instância (INSTANCIA)
- Valor do Custo/Orçamento (QT_VALOR)
- Status (STATUS)
- Comando SQL (DE_CMDSQL)
- Data/Hora Geração (DTHR_GERACAO)
É utilizada como filtro uma busca nas tabelas CC_CSTG e CC_INTERP onde o campo CD_CCUSTO da primeira, for igual ao CD_CCUSTO da segunda e o código da fase (CD_FASE) da primeira tabela, estiver no conjunto de fases recuperados do parâmetro (seção INT_ERP e entrada = CCUST_EXT_FASES).
Os atributos CURRCODE e CURRDESCRIPTION estão sendo gravados com zero (0) e vazio (“”) respectivamente.
Outros atributos gravados com vazio (“”):
- SITENAME
- ISMULTIPLESITECONTROLED
- COSTCENTERDESCRIPTION
Seção | Entrada | Descrição |
INT_ERP | CCUST_EXT_FASES | Filtra as fases de centro de custos que serão geradas para o ERP na transação CostCenterExtension |
Quadro 16 Parâmetros da Transação de Custo Apurado
4.4 Especificação da Quilometragem de Implementos
A transação de Quilometragem de Equipamentos tem o seguinte Fluxo PIMS à FROTAS.
O PIMS grava as informações da transação de Quilometragem de equipamento nas tabelas BRG_KM_EQUIPTO_HE e BRG_KM_EQUIPTO_DE sua estrutura esta descrito na Quadro abaixo.
BRG_KM_EQUIPTO_HE | |
CD_EMPRESA | VARCHAR2(15 BYTE) |
CD_EQUIPTO | NUMBER(10,0) |
DT_REFER_HE | DATE |
STATUS | NUMBER(2,0) |
DE_CMDSQL | VARCHAR2(1 BYTE) |
DTHR_GERACAO | DATE |
| |
BRG_KM_EQUIPTO_DE | |
CD_EQUIPTO | NUMBER(10,0) |
DT_REFER_HE | DATE |
DT_REFER_DE | DATE |
QT_KM_EQUIPTO | NUMBER(14,3) |
Quadro 17 Estrutura das Tabelas BRG_KM_EQUIPTO_HE e BRG_KM_EQUIPTO_DE
Após recuperar as informações das BRGs e gravar na fila, são deletados os registros (das BRGs), que foram enviados para a fila.
Seção | Entrada | Descrição |
INT_ERP | FG_GER_KM_HR | Indica se realiza Transação de Quilometragem de Implementos. S = Realiza a transação, N= Não realiza a transação. |
Quadro 18 Parâmetros da Transação de Quilometragem de Implementos
4.5 Especificação de Atividades
A transação de Atividades tem o seguinte Fluxo PIMS à FROTAS.
O PIMS grava as informações da transação de Atividades na tabela BRG_OPERACOES, e as informações são lidas da tabela BRG_OPERACOES e gravadas na fila. Depois de enviadas, no método finalizeProcessRow(), são apagados os registros da BRG.
Nesta transação são geradas as seguintes informações do PIMS.
- Código da Operação.
- Descrição da Operação.
Para ativar esta transação é preciso configurar o seguinte parâmetro:
Seção | Entrada | Descrição |
INT_ERP | FG_OPERACOES | Indica se realiza Transação de Operações. S = Realiza a transação, N= Não realiza a transação. |
4.6 Especificação de Movimento Prod. Agrícola
A transação de Movimento Prod. Agrícola tem o seguinte Fluxo PIMS à HCM.
Nesta transação será exportada para o Datasul a informação das produções efetuadas pelo trabalhador rural.
O PIMS grava as informações da transação de Movimento Prod. Agrícola na tabela BRG_BOLRUR_DE obedecendo aos seguintes critérios/parâmetros:
- Na atualização das informações na tabela BRG_BOLRUR_DE cada cliente possui um modelo específico definido no PIMS modelo do texto para exportação para folha.
Seção | Entrada |
INT_ERP | RURAL_CD_FUNCRH |
Forma de geração do código do funcionário, onde N-> Não será gerado o caracter e S-> será gerado o caracter. Sempre da Direita para a esquerda. | |
INT_ERP | RURAL_NIVEL1_RH |
Indica qual atributo da Tabela BRG_BOLRUR_DE (PIMS) deve gravar no atributo Nivel1 do EMS. Quando o valor deste atributo estiver “0” significa que o mesmo não será atualizado. Quando o valor deste atributo estiver diferente de “0” e for numérico o valor encontrado será gerado “fixo” no SEM | |
INT_ERP | RURAL_NIVEL2_RH |
Indica qual atributo da Tabela BRG_BOLRUR_DE (PIMS) deve gravar no atributo Nivel2 do EMS. Quando o valor deste atributo estiver “0” significa que o mesmo não será atualizado. Quando o valor deste atributo estiver diferente de “0” e for numérico o valor encontrado será gerado “fixo” no EMS | |
INT_ERP | RURAL_NIVEL3_RH |
Indica qual atributo da Tabela BRG_BOLRUR_DE (PIMS) deve gravar no atributo Nivel3 do EMS. Quando o valor deste atributo estiver “0” significa que o mesmo não será atualizado. Quando o valor deste atributo estiver diferente de “0” e for numérico o valor encontrado será gerado “fixo” no EMS | |
INT_ERP | RURAL_NIVEL4_RH |
Indica qual atributo da Tabela BRG_BOLRUR_DE (PIMS) deve gravar no atributo Nivel4 do EMS. Quando o valor deste atributo estiver “0” significa que o mesmo não será atualizado. Quando o valor deste atributo estiver diferente de “0” e for numérico o valor encontrado será gerado “fixo” no SEM | |
INT_ERP | RURAL_PROD_RH |
Indica qual atributo da Tabela BRG_BOLRUR_DE (PIMS) deve gravar no atributo produto do EMS. Quando o valor deste atributo estiver “0” significa que o mesmo não será atualizado. Quando o valor deste atributo estiver diferente de “0” e for numérico o valor encontrado será gerado “fixo” no EMS | |
INT_ERP | RURAL_PROP_RH |
Indica qual atributo da Tabela BRG_BOLRUR_DE (PIMS) deve gravar no atributo produto do EMS. Quando o valor deste atributo estiver “0” significa que o mesmo não será atualizado. Quando o valor deste atributo estiver diferente de “0” e for numérico o valor encontrado será gerado “fixo” no EMS | |
INT_ERP | RURAL_SAFRA_RH |
Indica qual atributo da Tabela BRG_BOLRUR_DE (PIMS) deve gravar no atributo safra do EMS. Quando o valor deste atributo estiver “0” significa que o mesmo não será atualizado. Quando o valor deste atributo estiver diferente de “0” e for numérico o valor encontrado será gerado “fixo” no EMS | |
INT_ERP | RURAL_FG_SAFRA |
Forma de geração do código da safra, onde N-> Não será gerado o caracter e S-> será gerado o caracter. Sempre da Direita para a esquerda. Quando o valor deste atributo estiver “0” significa que não terá consistência. |
Da tabela de BRG_BOLRUR_HE são lidas as seguintes informações:
Dentro do método validaCdFunc() são realizadas as seguintes operações:
- Mapeamento de Instância
- Recuperação de Parâmetros
- Validação do Código do Funcionário
Obs: Caso o atributo FUNC_CD_FUNC do XML tenha o valor igual à "F" ou "C", o valor do código do funcionário passa a ser o valor do parâmetro RURAL_CD_FUNCRH.
Da tabela de BRG_BOLRUR_DE são lidas as seguintes informações:
- Busca na tabela BRG_BOLRUR_DE, onde o campo DT_OPERACAO for igual ao encontrado no XML e o código do funcionário igual ao campo correspondente nessa mesma tabela, ordenando pelo campo NO_SEQ_BOL.
- Para gerar o lote do Datasul, é recuperado o código da turma que veio na consulta que caso seja menor que 4 caracteres, é completado com zeros. Caso tenha mais que 4 caracteres é cortado para que o novo código da turma tenha os últimos 4 dígitos. O lote propriamente dito, é gerado após aplicar o método "calculaDias", passando como argumento a data recuperada. O retorno do método deve ser concatenado com a nova turma.
- O método calculaDias retorna o número de dias desde 01/01/2000 até a data passada a ele como argumento (A idéia básica é gerar uma chave única para esse campo).
- Seta o código da safra de acordo com o parâmetro RURAL_FG_SAFRA. (Caso o valor seja o código da safra ele é setado, caso contrário é buscado na tabela, de acordo com o nome do campo contido no parâmetro).
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|