Páginas filhas
  • ER_Integração_PIMSCANA_X_DATASUL_Utilizando_PIMSCONECTOR

 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

  •   Unidade de Medida
  •    

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’;
  •  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
  •  BranchCode à CSTG_INTDG, se:
    • PARAMETROS.VALOR = ‘F’, onde:
      • PARAMETROS.SECAO=’INT_ERP’ e PARAMETROS.ENTRADA=’FG_EMPR_FILIAL’;
  •  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’;
  •  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>
            • 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’;

 

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)


 

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

 

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

  •   Se O tipo de   serviço for = 1, 2, 3, 5, 7, 8, 9, 10, 13, 14, 15, 17, 18, 19, 20, 21, 23
  •   FG_VENC_DESC =   “V” (Vencimento)
  •   Se O tipo de   serviço for = 4, 6, 11, 12, 22, 24
  •   FG_VENC_DESC   = “D” (Desconto)

FG_CLASSE

  •   Se O tipo de   serviço for = 1, 2, 4, 6, 7, 8, 9, 10, 13, 15, 16, 17, 18, 20, 21, 22, 23, 24
  •   FG_CLASSE = “0”(Ganho)
  •   Se O tipo de   serviço for = 3, 19, 5
  •   FG_CLASSE = “1”(DSR)
  •   Se O tipo de   serviço for = 11, 12
  •   FG_CLASSE = “3”(Falta)
  •   Se O tipo de   serviço for = 14
  •   FG_CLASSE = “5”(Falta Abonada)

FG_DIARIA

  •   Se FG_CLASSE (PIMS)   = 0
  •   FG_DIARIA = S
  •   Senão
  •   FG_DIARIA = N

FG_PG_FER

  •   Se FG_CLASSE (PIMS)   = 0 ou 5
  •   FG_PG_FER = S
  •   Senão
  •   FG_PG_FER = N

FG_PG_DSR

  •   Se FG_CLASSE (PIMS)   = 0 ou 5
  •   FG_PG_DSR = S
  •   Senão
  •   FG_PG_DSR = N

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

  •   Se tipo de   serviço for  = 12 (Feixe)
  •   FG_FEIXE = S   (Sim)
  •   Senão
  •   FG_FEIXE = N   (Não)

FG_CAMINHAO

  •   Se O tipo de   serviço for= 5 (Viagem)
  •   FG_CAMINHAO = S
  •   Senão
  •   FG_CAMINHAO = N

FG_TONELADA

  •   Se O tipo de   serviço for= 10 (Tonelada)
  •   FG_TONELADA = S
  •   Senão
  •   FG_TONELADA = N

FG_HORAS

  •   Se O tipo de   serviço for= 1 (Horas)
  •   FG_HORAS = S
  •   Senão
  •   FG_HORAS = N

FG_HR_RELOG

  •   Se O tipo de   serviço for= 1 (Horas)
  •   FG_HR_RELOG = S
  •   Senão
  •   FG_HR_RELOG = N

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’;

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.