Páginas filhas
  • ER_PCREQ-9139_Gerar_estoque_de_acordo_com_apontamento_de_MDO

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Migration of unmigrated content due to installation of a new plugin

 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_DES001

IRM1

PCREQ-6727

Requisito1

PCREQ-9139

Subtarefa1

PDR_AGR_DES001-98

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). 

(Obrigatório)

Objetivo

Base de rateio para locais de produção de acordo com o número de faces e gerar Estoque de acordo com a estria apontada no Mão de Obra Rural.

(Obrigatório)

Definição da Regra de Negócio

 1-Inclusão do critério "Número de Faces Ativas" no cadastro de Base de Rateio.

 Objetivo: Incluir o Critério para Rateio “Número de Faces Ativas” no cadastro de Base de Rateio.

Menu: Tabelas > Orçamento Custos > Base de Rateio para Locais de Produção

Entrada de Menu: CSTM0010

Esboço da tela:

Campos Obrigatórios:

-    Critério para Rateio: Indica qual a forma de Rateio será utilizada para a Base:

  • Número de Faces Ativas: Rateio pela quantidade de Faces Ativas do Local de Produção. Com essa opção a guia “Critérios de Rateio” fica desabilitada e sem valor.

 Especificação técnica:

 -    Incluir nova opção de critério no cadastro de Base de Rateio para Locais de Produção:

O valor do campo “Critério para Rateio” é salvo na coluna FG_CRITERIO da tabela BRATEIO_LC. Para a nova opção ‘Número de Faces Ativas’, será salvo o valor NF. Consultar dicionário de dados para verificar os valores.

 

2-Alteração no cadastro de Ramal para validar a data de encerramento da Estria/Giro e inclusão do campo Início de Vigência.

 Objetivo: Validar para não deixar incluir, alterar ou excluir estria/giro que a data de encerramento da mesma seja menor ou igual a data do último fechamento de custos ou que não possui data de encerramento e que a estria/giro anterior não possua data menor ou igual ao último fechamento de custos. Incluir o campo Início de Vigência.

 Menu: Tabelas > Locais de Produção > Ramal

Entrada de Menu: LDPM0013

Esboço da tela:

Estrias/Giros

Demais campos:

-    Início de Vigência: Início de Vigência da Estria/Giro do Ramal. Deve ser menor ou igual à data de encerramento (quando informada) e maior que o último Processamento de Custos. Campo habilitado somente quando estiver inserindo a primeira estria/giro e é obrigatório para este caso, quando já existir anteriores o campo fica desabilitado e sem valor. Será considerada no passo de processamento de custos, rateio para locais de produção, para o critério da base de rateio - “Número de Faces Ativas”.

 Demais Funcionalidades.

-    Salvar e Incluir: O “Salvar e Incluir” salva o registro corrente e prepara a inclusão de um novo registro. O foco do cursor é direcionado para o campo Estria/Giro.

 Demais Validações:

-    Não é permitido incluir ou excluir estria/giro em que a data de vigência da mesma seja menor ou igual a data do último fechamento de custos.

-    Não é permitido incluir, alterar ou excluir estria/giro em que a data de encerramento da mesma seja menor ou igual a data do último fechamento de custos.

-    Não é permitido incluir, alterar ou excluir estria/giro que não possui data de encerramento e que a estria/giro anterior não possua data menor ou igual ao último fechamento de custos.

Especificação técnica:

 Tabelas:

 

Scripts

 -    Incluir coluna DT_VIGENCIA na tabela UPN3_ESTRIA:

 --ORACLE

ALTER TABLE UPN3_ESTRIA ADD DT_VIGENCIA DATE;

 --SQLSERVER

ALTER TABLE UPN3_ESTRIA ADD DT_VIGENCIA DATETIME;

GO

Demais Validações:

- Alterar o manual da aplicação com os descritivos assinalados a vermelho.

Retirar o botão “Salvar e Incluir” da guia “Estrias/Giros”.

- O campo Data de Vigência fica habilitado apenas se for inclusão da primeira estria/giro, caso seja alteração da mesma o campo fica desabilitado e, se for inclusão/alteração de estrias/giro que possuem anteriores, o campo fica desabilitado e sem valor.

- Ao inserir, alterar ou excluir, se existir data de vigência e for menor ou igual a data do último fechamento de custos, emitir mensagem “Data de Vigência é menor ou igual a data do último Processamento de Custos {0}.”, e não permite a operação. 

Parâmetro da mensagem de validação:

{0} – Data do último processamento de custos.

- Ao inserir, alterar ou excluir, se existir data de encerramento da estria/giro e for menor ou igual a data do último fechamento de custos, emitir mensagem “Data de Encerramento é menor ou igual a data do último Processamento de Custos {0}.”, e não permite a operação.

Parâmetro da mensagem de validação:

{0} – Data do último processamento de custos.

- Ao inserir, alterar ou excluir, se a estria/giro não possuir data de encerramento e a anterior possuir data menor ou igual a data do último fechamento de custos, emitir mensagem “Operação não permitida para Estria/Giro sem Data de Encerramento onde a anterior possui data menor ou igual a data do último Processamento de Custos {0}.”, e não permitir a operação.

Parâmetros da mensagem de validação:

{0} – Data do último processamento de custos.

Exemplo que permitirá:

Custo fechado em 05/2015 (data de fechamento de custos = 31/05/2015)

Giro 1 encerrado com data 05/06/2015

Giro 2 sem data de encerramento

Exemplo que não permitirá:

Custo fechado em 05/2015 (data de fechamento de custos = 31/05/2015)

Giro 1 encerrado com data 29/05/2015 ou 31/05/2015

Giro 2 sem data de encerramento

 

3-Alteração na Cópia de [Talhão] para inicializar a data de início de vigência da estria/giro.

 Objetivo: Alterar a cópia de [Talhão], para que a estria/giro inicial de cada ramal do local de produção inicie com a data de vigência um dia posterior a última data de encerramento das estrias/giro que estão sendo copiadas.

 Menu: Tabelas > Locais de Produção > Cópia de [Talhão]

Entrada de Menu: LDPM0009

Esboço da tela

Botões:

-    Confirmar: gera a cópia do [Talhão];

  • Quando a cópia for para a mesma [Fazenda], [Setor], [Talhão] e para outro Ano Agrícola e Período de Produção deverá copiar os Ramais e será criada uma Estria/Giro para cada novo Ramal do [Talhão] da seguinte maneira:
    • Ramal:
      • Serão copiados todos os Ramais relacionados com o [Talhão] e que a última estria/giro possui data de encerramento.
    • Estria/Giro:
      • Estria/Giro: Será inicializada com valor 1 (um).
      • Quantidade de Faces: Será gerada a Quantidade de Faces da última Estria/Giro do Ano Agrícola, Período de Produção, [Fazenda], [Setor], [Talhão] e Ramal base para cópia.
      • Data de Vigência: A data de vigência será um dia posterior a data de encerramento da última Estria/Giro do Ano Agrícola, Período de Produção, [Fazenda], [Setor], [Talhão] e Ramal base para cópia.
      • Data de Encerramento: Será gerada sem valor.
      • Última Estria/Giro: Será gerada com indicação que não é a última.

 Demais Validações:

-    Não copiar os Ramais/Estria/Giro se a ocupação do Período de Produção destino não utiliza Ramal.

Especificação técnica:

 -    Ao “Confirmar” a cópia e esta for para a mesma [Fazenda], [Setor], [Talhão] e para outro Ano Agrícola e Período de Produção, atualmente é realizada a cópia de todos os Ramais para o próximo Ano Agrícola e Período de Produção do [Talhão]. Alterar para que ao realizar a cópia dos Ramais, além das validações que já existem, incluir validação para que copie somente os que a última Estria/Giro possuir data de encerramento (coluna DT_ENCERRA, tabela UPN3_ESTRIA). Para cada novo Ramal criado, cria uma Estria/Giro (tabela UPN3_ESTRIA) com os seguintes valores:

  • Estria/Giro: É inicializada com Valor 1 (um);
  • Quantidade de Faces: É gerada com a Quantidade de Faces da última Estria/Giro do Ano Agrícola, Período de Produção, [Fazenda], [Setor], [Talhão] e Ramal base para cópia;
  • Data de Encerramento: É gerada sem valor;
  • Última Estria/Giro: É gerada desmarcada (campo FG_ULTIMA com valor igual a “N”.

 -    Alterar para que quando a Estria/Giro é gerada de acordo com as validações acima, inicializar também o campo Data de Vigência (DT_VIGENCIA, tabela UPN3_ESTRIA), com o valor um dia posterior a data de encerramento da última Estria/Giro do Ano Agrícola, Período de Produção, [Fazenda], [Setor], [Talhão] e Ramal base para cópia.

 

4-Alteração no Encerramento do Período de Produção para inicializar a data de início de vigência da estria/giro.

 Objetivo: Alterar o encerramento de período de produção para que ao realizar a cópia para outro período de produção, a estria/giro inicial de cada ramal inicie a data de vigência com um dia posterior a última data de encerramento das estrias/giro que estão sendo copiadas.

 Menu: Apontamentos > Colheita > Encerramento do Período de Produção

Entrada de Menu: COLM0009

Esboço da tela

Demais Processos:

-    Quando o campo “Copiar” estiver marcado, deverá copiar os Ramais para o próximo Ano Agrícola, Período de Produção, [Fazenda], [Setor] e [Talhão]. Será criada uma Estria/Giro para cada novo Ramal do [Talhão] da seguinte maneira:

  • Ramal:
    • Serão copiadostodos os Ramais relacionadoscom o [Talhão] e que a última estria/giro possui data de encerramento.
  • Estria/Giro:
    • Estria/Giro: Será inicializada com valor 1 (um);
    • Quantidade de Faces: Será gerada a Quantidade de Faces da última Estria/Giro do Ano Agrícola, Período de Produção, [Fazenda], [Setor], [Talhão] e Ramal base para cópia.
    • Data de Vigência: A data de vigência será um dia posterior a data de encerramento da última Estria/Giro do Ano Agrícola, Período de Produção, [Fazenda], [Setor], [Talhão] e Ramal base para cópia.
    • Data de Encerramento: Será gerada sem valor.
    • Última Estria/Giro: Será gerada com indicação que não é a última.

Especificação técnica:

 -    Ao “Confirmar” o encerramento e estiver marcado para “Copiar”, atualmente é realizada a cópia de todos os Ramais para o próximo Ano Agrícola e Período de Produção do [Talhão]. Alterar para que ao realizar a cópia dos Ramais, além das validações que já existem, incluir validação para que copie somente os que a última Estria/Giro possuir data de encerramento (coluna DT_ENCERRA, tabela UPN3_ESTRIA). Para cada novo Ramal criado no novo Ano Agrícola e Período de Produção, é criada uma Estria/Giro (tabela UPN3_ESTRIA) com os seguintes valores:

  • Estria/Giro: É inicializada com Valor 1 (um);
  • Quantidade de Faces: É gerada com a Quantidade de Faces da última Estria/Giro do Ano Agrícola, Período de Produção, [Fazenda], [Setor], [Talhão] e Ramal base para cópia;
  • Data de Encerramento: É gerada sem valor;
  • Última Estria/Giro: É gerada desmarcada (campo FG_ULTIMA com valor igual a “N”).

 -    Alterar para que quando a Estria/Giro é gerada de acordo com as validações acima, inicializar também o campo Data de Vigência (DT_VIGENCIA, tabela UPN3_ESTRIA), com o valor um dia posterior a data de encerramento da última Estria/Giro do Ano Agrícola, Período de Produção, [Fazenda], [Setor], [Talhão] e Ramal base para cópia.

 

5-Considerar o critério "Número de Faces Ativas" no Rateio para Locais de Produção.

 Objetivo: No processamento de custos considerar também o critério “Número de Faces Ativas” no processamento rateio de locais de produção.

 Menu: Processamentos > Processamento Custos > Processamento Custo

Entrada de Menu: CSTP0016

Esboço da tela:

Identificar os Locais de Produção com seus respectivos fatores de rateio que serão utilizados para cada Base de Rateio e Centro de Custo, de acordo com o Critério de Rateio. Os Locais de Produção devem estar na situação (“Não Encerrados e Encerrados no Período” ou “Não Encerrados” ou “Não Encerrados e Encerrados após o dia 15”) de acordo com a configuração informada na Base de Rateio. Critérios de Rateio:

  • Número de Faces Ativas: Todos os talhões cadastrados que atendam aos filtros informados em “Filtros para Destinos” da Base de Rateio e que tiveram ou não custo no período (mês que está sendo processado) de acordo com a configuração da Base de Rateio “Rateio somente para Locais que tiveram custo no período”. Fator: Número de Faces Ativas do Local de Produção.

Especificação técnica:

 -    Quando o critério de rateio for “Número de Faces Ativas”, será realizada a busca dos locais de produção da mesma forma que é realizado para o critério ‘Área Produtiva’.

 -    Para cada local de produção recuperar os ramais (tabela UPN3_RAMAL).

 -    Para cada ramal recuperar a estria/giro (tabela UPN3_ESTRIA) que estiver marcada como última estria/giro, coluna (FG_ULTIMA) com o valor igual a “S”. Caso não encontre recuperar a que possui a menor data de encerramento (coluna DT_ENCERRA) desde que a data de encerramento seja maior ou igual ao último dia do mês de fechamento do custo. Caso não encontre estria/giro será considerada a qual não possui data de encerramento e, com data de vigência (se informada) menor ou igual a data do último dia do processamento de custos.

 -    Para cada Ramal, recuperar a estria/giro com maior data de encerramento desde que a data de encerramento seja maior ou igual ao último dia do mês do processamento de custos e data de início de vigência (se informada, caso não informada, a data de vigência é a data de encerramento do registro anterior + 1) menor ou igual que o último dia do mês do processamento de custos.

 -    Caso não encontre estria/giro, será considerada a qual não possui data de encerramento e, com data de vigência (se informada, caso não informada, a data de vigência é a data de encerramento do registro anterior + 1) menor ou igual ao último dia do mês do processamento de custos.

 -    Caso não encontre estria/giro, será recuperado a estria/giro com encerrado "S" e a maior data de encerramento em que a data de encerramento seja maior ou igual ao primeiro dia do processamento de custos e data de encerramento seja menor ou igual que último dia do mês do processamento de custos.

 -    Com as estrias/giro recuperadas somar a quantidade de faces (coluna QT_FACES da tabela UPN3_ESTRIA), e atribuir o valor ao fator do local de produção para realização dos cálculos de rateio conforme já é realizado no sistema.

            Obs.: A busca dos fatores dos talhões de acordo com o critério de rateio é realizada na:

  • Classe: CustosIndiretosDAO
  • Método: selectFatorRateioUPNivel3

Exemplo:

  • Valor para custo administrativo: 10000.
  • Valor rateado para o [Talhão] 1: 5454,545 = soma das quantidades de faces recuperadas para cada ramal (960), dividido pela soma total das quantidades de faces dos talhões (1760), multiplicado pelo valor do centro de custo (10000).
  • Valor rateado para o [Talhão] 2: 4545,455 = soma das quantidades de faces recuperadas para cada ramal (800), dividido pela soma total das quantidades de faces dos talhões (1760), multiplicado pelo valor do centro de custo (10000).
  • Soma dos valores rateados: 10000.

  -    A partir dos dados recuperados e o cálculo do valor rateado no passo Rateio para Locais de Produção do processamento com o critério da base de rateio “Número de faces Ativas”, inserir na tabela PLC_CCRATLC_LC:    

Campos

Valor

[ID_PLC_CCRATLC_LC]

Identificador de PLC_CCRATLC_LC

[ID_PLC_CCRATLC]

Identificador da origem do rateio (Centro de Custo)

[ID_UPNIVEL3]

Identificador do local de produção

[ID_CCUSTO]

Identificador do Centro de Custo Destino

[ID_OPERACAO]

Identificador da Operação Destino

[ID_COMPONENTE]

Identificador do Componente Destino

[VL_CONSUMO]

Valor do Consumo (moeda corrente) – Valor rateado para o local de produção de acordo com a quantidade de faces.

[VL_CONSUMO1]

Valor do Consumo (indexador 1)

[VL_CONSUMO2]

Valor do Consumo (indexador 2)

[VL_CONSUMO3]

Valor do Consumo (indexador 3)

[VL_CONSUMO4]

Valor do Consumo (indexador 4)

[VL_TAXA]

Taxa do rateio (%)

 

6-Alteração no Encerramento de Estria/Giro para validar a data do encerramento.

 Objetivo: Não permitir encerrar estria/giro em que a data de encerramento da mesma seja menor ou igual ao último fechamento de custos.

 Menu: Apontamentos > Mão de Obra Rural > Encerramento de Estria/Giro

Entrada de Menu: MDOM0043

Esboço da tela:

 Demais Validações:

 -    Não é permitido informar a data de encerramento menor que a data de início de vigência da estria/giro (se existir).

 -    Não é permitido informar a data de encerramento menor ou igual a data do último processamento de custos.

Especificação técnica:

 -    Ao informar a data de encerramento manualmente, validar se a mesma é menor que a data de vigência (caso exista) da estria/giro, se sim emitir mensagem: “A Data de Encerramento informada não pode ser menor que a data de vigência {0}. ”, e limpar o campo Data de Encerramento.

Parâmetro da mensagem de validação:

{0} – Data de Vigência da estria/giro.

 -    Caso as datas foram informadas automaticamente pelo botão “Aplicar para todos”, realizar a validação acima ao “Confirmar” o encerramento mostrando na caixa de diálogo de notificações, se a data de encerramento for menor que a data de vigência, a mensagem: “Estria/Giro {0} do Ramal {1} não encerrada para {2} {3}, {4} {5} {6} {7}. Data de Encerramento {8} é menor que a data de vigência {9}. ”

 Quando não configurado “Utiliza [Setor]”, na Configuração do Local de Produção (FG_UPNIVEL2 da tabela PRX_PARAM_LOCAIS igual a “N”), remover a descrição [Setor] e o código do [Setor] da mensagem de validação, caso contrário será mostrada na mensagem a descrição [Setor] e o código do [Setor].

 Parâmetros da mensagem de validação:

{0} – Código da Estria/Giro

{1} – Código do Ramal

{2} – Descrição referente à [Fazenda]

{3} – Código da [Fazenda]

{4} – Descrição referente ao [Setor]

{5} – Código do [Setor] concatenando “, ” (vírgula)

{6} – Descrição referente ao [Talhão]

{7} – Código do [Talhão]

{8} – Data de encerramento da estria/giro

{9} – Data de Vigência da estria/giro

Exemplo da mensagem:

“Estria/Giro 1 do Ramal 2 não encerrada para [Fazenda] 157, [Setor] 1909, [Talhão] 10. Data de Encerramento 01/10/2015 é menor que a data de vigência 02/10/2015. ”

 -    Ao informar a data de encerramento manualmente, validar se a mesma é menor ou igual a data do último processamento de custo, se sim emitir mensagem: “A Data de Encerramento informada não pode ser menor ou igual a data do último Processamento de Custos {0}. ”, e limpar o campo Data de Encerramento.

 Parâmetro da mensagem de validação:

{0} – Data do último processamento de custos.

 -    Caso as datas foram informadas automaticamente pelo botão “Aplicar para todos”, realizar a validação acima ao “Confirmar” o encerramento mostrando na caixa de diálogo de notificações, se a data de encerramento for menor que o último processamento de custos, a mensagem: “Estria/Giro {0} do Ramal {1} não encerrada para {2} {3}, {4} {5} {6} {7}. Data de Encerramento {8} é menor ou igual a data do último Processamento de Custos {9}. ”

Quando não configurado “Utiliza [Setor]”, na Configuração do Local de Produção (FG_UPNIVEL2 da tabela PRX_PARAM_LOCAIS igual a “N”), remover a descrição [Setor] e o código do [Setor] da mensagem de validação, caso contrário será mostrada na mensagem a descrição [Setor] e o código do [Setor].

 Parâmetros da mensagem de validação:

{0} – Código da Estria/Giro

{1} – Código do Ramal

{2} – Descrição referente à [Fazenda]

{3} – Código da [Fazenda]

{4} – Descrição referente ao [Setor]

{5} – Código do [Setor] concatenando “, ” (vírgula)

{6} – Descrição referente ao [Talhão]

{7} – Código do [Talhão]

{8} – Data de encerramento da estria/giro

{9} – Data do último Processamento de Custos

Exemplo da mensagem:

“Estria/Giro 1 do Ramal 2 não encerrada para [Fazenda] 157, [Setor] 1909, [Talhão] 10. Data de Encerramento 01/10/2015 é menor ou igual a data do último Processamento de Custos 31/10/2015. ”

 

7-Remoção do campo Produto Matéria Prima dos dados e inclusão da guia de Produto de Matéria Prima no cadastro de Cultura/Ocupação.

 Objetivo: Remoção do campo Produto Matéria Prima dos dados e inclusão da guia de Produto de Matéria Prima no cadastro de Cultura/Ocupação. O Produto Matéria Prima removido dos dados, serão incluídos na guia Produto Matéria Prima. Será permitido incluir mais de um produto para a Cultura/Ocupação. Os Produtos Matéria Prima serão utilizados para gerar estoque.

 Menu: Tabelas > Culturas > Cultura/Ocupação

Entrada de Menu: CFCM0018

Esboço da tela:

Dados:

Demais Campos:

-    Produto Matéria Prima: Produto referente à Matéria Prima da Cultura/Ocupação para quando a Variedade não possuir Produto Matéria Prima relacionado utilizar o Produto relacionado à Cultura/Ocupação. No módulo de beneficiamento, quando o Processo estiver configurado para informar a Produção Colhida e não possuir Produto Matéria Prima configurado para a Variedade será assumido o Produto Matéria Prima configurado na Cultura/Ocupação. O produto deve estar previamente cadastrado e pertencer ao Grupo de Produto Matéria Prima configurado na Cultura/Ocupação.

Produto Matéria Prima

 Campos Obrigatórios:

 -    Produto Matéria Prima: Produto referente à Matéria Prima da Cultura/Ocupação para quando a Variedade não possuir Produto Matéria Prima relacionado, utilizar o Produto relacionado à Cultura/Ocupação. No módulo de beneficiamento, quando o Processo estiver configurado para informar a Produção Colhida e não possuir Produto Matéria Prima configurado para a Variedade será assumido o Produto Matéria Prima configurado na Cultura/Ocupação, quando possuir mais de um produto associado à Cultura/Ocupação o usuário deve informar um dos produtos. O produto deve estar previamente cadastrado e pertencer ao Grupo de Produto Matéria Prima configurado na Cultura/Ocupação. (Tamanho do Campo: 10 Inteiros).

Especificação Técnica:

 -    Remover a descrição em vermelho no Manual do Sistema.

Tabela:

Demais Funcionalidades:

-    Não é permitido mais de um registro para o mesmo produto e ocupação, criar índice único para garantir está restrição:

 CREATE UNIQUE INDEX OCUPACAO_PMPRIMA_U ON OCUPACAO_PMPRIMA (ID_OCUPACAO, ID_INSUMO);

-    Script para inserir o produto que está na tabela OCUPACAO para a tabela OCUPACAO_PMPRIMA:

 INSERT INTO OCUPACAO_PMPRIMA (ID_OCUPACAO_PMPRIMA, ID_OCUPACAO, ID_INSUMO, ROWVERSION, LAST_UPDATE, CHANGED_BY) SELECT ID_OCUPACAO, ID_OCUPACAO, ID_INSUMO, ROWVERSION, SYDATE, 'PRX' FROM OCUPACAO WHERE ID_INSUMO IS NOT NULL;

 

8-Alteração no apontamento de Ordem de Colheita para incluir o campo Produto.

 Objetivo: Alteração no apontamento de Ordem de Colheita para incluir o campo Produto a ser colhido. Este produto poderá ser recuperado no apontamento de Pesagem de matéria prima e no apontamento de Beneficiamento.

Menu: Apontamentos > Colheita > Ordem de Colheita

Entrada de Menu: COLM0005

Esboço da tela:

Detalhes

Campos:

-    Produto: Produto do [Talhão] que está sendo colhido. Recupera o Produto de Matéria Prima da Variedade, caso não encontre recupera o Produto Matéria Prima do guia Matéria Prima do cadastro de Cultura ocupação, se possuir mais de um Produto associado à Cultura/Ocupação o usuário deve informar um dos produtos da Cultura/Ocupação. Quando recupera o produto, desabilita o campo. Quando informado deve estar previamente cadastrado e associado na guia Produto Matéria Prima da Cultura/Ocupação. (Tamanho do Campo: 10 Inteiros).

 Demais Validações:

-    Permitir informar o Produto Matéria Prima quando informar o [Talhão]. Caso tente informar ou procurar um Produto antes de informar o [Talhão], gerar mensagem pop-up “O campo [Talhão] é requerido! ”.

-    Quando alterar a Variedade, recuperar novamente o Produto Matéria Prima, pela Variedade, caso não tenha Produto informado na Variedade, recuperar a partir da Cultura/Ocupação, caso encontre mais de um produto o usuário pode informar um produto desde que associado à Cultura/Ocupação. Quando recupera o produto desabilita o campo.

-    Se já possuir Pesagem para a Ordem de Colheita não será permitido alterar o Produto da Ordem de Colheita.

Demais Funcionalidades:

-    A inclusão do detalhe da Ordem de Colheita, a exclusão ou a alteração da Ordem de Colheita, é refletida na tabela intermediária que é utilizada na integração de Pesagem de Matéria Prima com o ERP.

 Especificação Técnica:

 -    Inserir a descrição em vermelho no Manual do Sistema.

 

 Tabelas:

Demais Validações:

-    Permitir informar o Produto Matéria Prima, quando informar o [Talhão]. Caso tente informar ou selecionar um produto antes de informar o [Talhão], gerar mensagem pop-up “O campo [Talhão] é requerido! ”.

 Demais Funcionalidades:

-    Recuperar o Produto Matéria Prima a partir da Variedade (ID_INSUMO da tabela VARIEDADE a partir do ID_VARIEDADE da tabela ORDCOLHEITA_LC), caso não tenha Produto informado na Variedade, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA a partir do ID_TALHAO da tabela ORDCOLHEITA_LC, com o identificador do [Talhão], recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do Período de Produção, recuperar ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da Ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado à Cultura/Ocupação.

-    Quando clicar no procura do produto, recuperar na pop-up somente os produtos associados à Cultura/Ocupação (Recuperar CD_INSUMO, DE_INSUMO da tabela INSUMO e o DA_UNI_MEDIDA da tabela UNIMEDIDA a partir do ID_TALHAO da tabela ORDCOLHEITA_LC, com o identificador do [Talhão], recuperar o ID_PERIODOSAFRA da tabela PERIODOSAFRA da tabela UPNIVEL3, com o identificador do Período de Produção, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da Ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA, com o identificador do insumo, recuperar CD_INSUMO, DE_INSUMO e ID_UNIMEDIDA da tabela INSUMO, com o identificador da unidade de medida, recuperar o DA_UNI_MEDIDA da tabela UNIMEDIDA).

-    Quando alterar a Variedade, recuperar novamente o Produto Matéria Prima, (ID_INSUMO da tabela VARIEDADE a partir do ID_VARIEDADE da tabela ORDCOLHEITA_LC), caso não tenha Produto informado na Variedade, recuperar da Cultura/Ocupação (ID_INSUMO da tabela OCUPACAO_PMPRIMA a partir do ID_TALHAO da tabela ORDCOLHEITA_LC, com o identificador do [talhão], recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do Período de Produção, recuperar ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da Ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado à Cultura/Ocupação.

-    Se já possuir Pesagem para a Ordem de Colheita (ID_ORDCOLHEITA da tabela APPESAGEMMP) não será permitido alterar o Produto da Ordem de Colheita.

-    Script para criar a coluna ID_INSUMO da tabela ORDCOLHEITA_LC.

ALTER TABLE ORDCOLHEITA_LC ADD ID_INSUMO NUMBER(38);

 -    Script para criar a chave estrangeira de ID_INSUMO a tabela ORDCOLHEITA_LC

ALTER TABLE ORDCOLHEITA_LC ADD CONSTRAINT ORDCOLHEITA_LC4_FK_INSUMO FOREIGN KEY  (ID_INSUMO) REFERENCES INSUMO;

 -    Quando incluir o detalhe da Ordem de Colheita, excluir ou alterar a Ordem de Colheita atualizar a tabela intermediária (BRG_ORDCOLHEITA_ERP) que é utilizada na integração de Pesagem de Matéria Prima (ERP) com as seguintes informações:

CD_PRODUTO

Código do Produto da Ordem de Colheita (CD_INSUMO da tabela INSUMO). Recuperar o código do produto pelo identificador do produto (ID_INSUMO da tabela ORDCOLHEITA_LC).

DE_PRODUTO

Descrição do Produto da Ordem de Colheita (DE_INSUMO da tabela INSUMO). Recuperar a descrição do produto pelo identificador do produto (ID_INSUMO da tabela ORDCOLHEITA_LC).

CD_PRODUTO_ERP

Código do Produto no ERP da Ordem de Colheita (CD_INT_ERP da tabela INSUMO). Recuperar o código do produto ERP pelo identificador do produto (ID_INSUMO da tabela ORDCOLHEITA_LC).


 9-Alteração no apontamento de Pesagem para incluir o campo Produto.

 Objetivo: Alteração no apontamento de Pesagem para incluir o campo Produto a ser colhido e alterar as regras para recuperar o produto para “Finalizar” a Pesagem.

Menu: Apontamentos > Colheita > Pesagem

Entrada de Menu: COLM0007

Esboço da tela:

Detalhes

Campos:

-    Produto: Produto do [Talhão] que está sendo colhido. Recupera o Produto de Matéria Prima da Ordem de Colheita, caso não encontre produto na Ordem de Colheita, recupera da Variedade, caso não encontre produto na Variedade, recupera o produto da Ocupação, se possuir mais de um Produto associado a Ocupação o usuário deve informar um dos produtos da Ocupação. Quando recuperar o Produto, desabilita o campo. (Tamanho do Campo: 10 Caracteres).

 Demais Validações:

-    Permitir informar o Produto Matéria Prima, quando informar a Ordem de Colheita ou quando informar o Ocupação. Caso tente informar ou selecionar um Produto antes de informar a Ordem de Colheita ou o Ocupação, gerar mensagem pop-up “Ordem de Colheita ou Ocupação é Requerida”.

-    Ao salvar é verificado se “Necessita de Contrato de Venda da Produção para produto Matéria Prima”, configurado para a Cultura/Ocupação. Se estiver configurado que necessita de Contrato e a pesagem possui Controle de Colheita, será localizado o Contrato vigente de acordo com a Data de Movimento para o Local de Produção da Ordem de Colheita. Se não existir contrato é emitida a mensagem “Não há Contrato de Venda da Produção vigente nessa Data de Movimento para o Local de Produção e Produto. ” e não será permitida a gravação. Se possuir contrato vigente será verificado se há algum Produto informado no contrato. Se não existir nenhum produto informado no contrato será permitida a gravação. Se existir algum produto no contrato é verificado se o produto ao qual se refere na pesagem está no contrato e caso não exista não será permitida a gravação emitindo a mensagem “Não há Contrato de Venda da Produção vigente nessa Data de Movimento para o Local de Produção e Produto.”.

Regras para identificar qual o produto utilizado para recuperar o contrato:

  • Primeiro verifica se há produto Matéria Prima informado na Pesagem, se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima informado na Pesagem, o sistema utilizará o produto Matéria Prima da Ordem de Colheita (quando informada), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado na ordem de Colheita, o sistema utilizará o produto Matéria Prima configurado para a Variedade, se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado para a Variedade o sistema utilizará o produto Matéria Prima configurado para a Cultura/Ocupação, quando possuir apenas um produto Matéria Prima configurado.

Demais Funcionalidades:

-    Quando alterar a Ordem de Colheita, a Variedade ou a Ocupação, recuperar novamente o Produto Matéria Prima, pela Ordem de Colheita, caso não encontre recuperar pela Variedade, caso não encontre, recuperar a partir da Ocupação, caso encontre mais de um produto o usuário pode informar um produto desde que associado a Ocupação. Quando recuperar o Produto desabilitar o campo.

Regras para identificar qual o produto utilizado para integrar com o estoque:

  • Primeiro verifica se há produto Matéria Prima informado na Pesagem, se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima informado na Pesagem, o sistema utilizará o produto Matéria Prima da Ordem de Colheita (quando informada), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado na Ordem de Colheita, o sistema utilizará o produto Matéria Prima configurado para a Variedade, se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado para a Variedade o sistema utilizará o produto Matéria Prima configurado para a Cultura/Ocupação, quando possuir apenas um produto Matéria Prima configurado.
  • Se não existir produto configurado para a Pesagem, nem para Ordem de Colheita, nem para Variedade, nem para a Cultura/Ocupação ou a Cultura/Ocupação possuir mais de um produto associado e a Unidade Receptora estiver configurada para integrar com o estoque, o sistema emitirá a mensagem “Não há produto Matéria Prima configurado para essa Pesagem ou Ordem de Colheita ou Variedade ou Cultura/Ocupação ou mais de um Produto associado à Cultura/Ocupação, pesagem não Finalizada! ” e não irá integrar com estoque.

 Especificação Técnica:

 -    Inserir a descrição em vermelho no Manual do Sistema.

Tabela:

 Script

 -    Script para criar a coluna ID_INSUMO da tabela APPESAGEMMP.

 ALTER TABLE APPESAGEMMP ADD ID_INSUMO NUMBER(38);

 -    Script para criar a chave estrangeira de ID_INSUMO a tabela APPESAGEMMP

 ALTER TABLE APPESAGEMMP ADD CONSTRAINT APPESAGEMMP17_FK_INSUMO FOREIGN KEY  (ID_INSUMO) REFERENCES INSUMO;

 Demais Validações:

 -    Permitir informar o Produto Matéria Prima, quando informar a Ordem de Colheita (NO_ORCOLHEITA da tabela APPESAGEMMP), caso contrário quando informar o Ocupação. Caso tente informar ou selecionar um Produto antes de informar a Ordem de Colheita ou o Ocupação, gerar mensagem pop-up “Ordem de Colheita ou Período de Produção é Requerida”.

 -    Ao salvar é verificado se “Necessita de Contrato de Venda da Produção para produto Matéria Prima”, configurado para a Cultura/Ocupação. Se estiver configurado que necessita de Contrato e a pesagem possui Controle de Colheita, será localizado o Contrato vigente de acordo com a Data de Movimento para o Local de Produção da Ordem de Colheita. Se não existir contrato é emitida a mensagem “Não há Contrato de Venda da Produção vigente nessa Data de Movimento para o Local de Produção e Produto. ” e não será permitida a gravação. Se possuir contrato vigente será verificado se há algum Produto informado no contrato. Se não existir nenhum produto informado no contrato será permitida a gravação. Se existir algum produto no contrato é verificado se o produto ao qual se refere na pesagem está no contrato e caso não exista não será permitida a gravação emitindo a mensagem “Não há Contrato de Venda da Produção vigente nessa Data de Movimento para o Local de Produção e Produto. ”.

Regras para identificar qual o produto utilizado para integrar com o estoque:

  • Primeiro verifica se há produto Matéria Prima informado na Pesagem (ID_INSUMO da tabela APPESAGEMMP), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima informado na Pesagem (ID_INSUMO vazio da tabela APPESAGEMMP), o sistema utilizará o produto Matéria Prima da Ordem de Colheita (quando informada) (ID_INSUMO da tabela ORDCOLHEITA_LC), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado na Ordem de Colheita (ID_INSUMO vazio da tabela ORDCOLHEITA_LC), o sistema utilizará o produto Matéria Prima configurado para a Variedade (ID_INSUMO da tabela VARIEDADE, pela ID_VARIEDADE da tabela APPESAGEMMP), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado para a Variedade (ID_INSUMO vazio da tabela VARIEDADE) o sistema utilizará o produto Matéria Prima configurado para a Cultura/Ocupação (ID_INSUMO da tabela OCUPACAO_PMPRIMA, pelo ID_PERIODOSAFRA da tabela APPESAGEMMP, com o identificador do período de produção, recuperar o ID_OCUPACAO, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), quando possuir apenas um produto Matéria Prima configurado.

Demais Funcionalidades:

-    Recuperar o Produto Matéria Prima quando informar ou recuperar a variedade, a partir da Ordem de Colheita (ID_INSUMO da tabela ORDCOLHEITA_LC, a partir do NO_ORCOLHEITA da tabela APPESAGEMMP, com o número da Ordem de Colheita, recuperar o ID_ORDCOLHEITA da tabela ORDCOLHEITA para unidade administrativa corrente, com o identificador da ordem de colheita, recuperar o ID_INSUMO da tabela ORDCOLHEITA_LC), caso não encontre produto associado a ordem de colheita, recuperar a partir da Variedade (ID_VARIEDADE da tabela APPESAGEMMP, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar o produto pela ocupação (ID_PERIODOSAFRA da tabela APPESAGEMMP, com o identificador do período de produção, recuperar ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado à Cultura/Ocupação. Caso recupere o Produto desabilitar o campo.

-    Quando clicar no procura do produto, recuperar na pop-up somente os produtos associados a cultura/ocupação, recuperar CD_INSUMO, DE_INSUMO da tabela INSUMO e o DA_UNI_MEDIDA da tabela UNIMEDIDA a partir do ID_PERIODOSAFRA da tabela APPESAGEMMP, com o identificador do período de produção, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA, com o identificador do insumo, recuperar CD_INSUMO, DE_INSUMO e ID_UNIMEDIDA da tabela INSUMO, com o identificador da unidade de medida, recuperar o DA_UNI_MEDIDA da tabela UNIMEDIDA).

-    Quando alterar o número da Ordem de Colheita, recuperar novamente o Produto (ID_INSUMO da tabela ORDCOLHEITA_LC, partir do NO_ORDCOLHEITA da tabela APPESAGEMMP, recuperar ID_ORDCOLHEITA, com o identificador da ordem de colheita, recuperar o ID_INSUMO da tabela ORDCOLHEIA_LC), caso não encontre, recuperar a partir da variedade (ID_VARIEDADE da tabela APPESAGEMMP, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar da ocupação (ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período de produção, recuperar ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado à Cultura/Ocupação, quando alterar o período de produção, recuperar novamente o Produto pela variedade (ID_VARIEDADE da tabela VARIEDADE, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar a partir da ocupação (ID_PERIODOSAFRA da tabela APPESAGEMMP, com o identificador do período de produção, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado à Cultura/Ocupação, quando alterar a variedade (ID_VARIEDADE  da tabela VARIEDADE, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar a partir da ocupação (ID_PERIODOSAFRA da tabela APPESAGEMMP, com o identificador do período de produção, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado à Cultura/Ocupação. Quando recuperar o produto, desabilitar o campo.

 Regras para identificar qual o produto utilizado para integrar com o estoque:

  • Primeiro verifica se há produto Matéria Prima informado na Pesagem (ID_INSUMO da tabela APPESAGEMMP), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima informado na Pesagem (ID_INSUMO vazio da tabela APPESAEMMP), o sistema utilizará o produto Matéria Prima da Ordem de Colheita (quando informada) (ID_INSUMO da tabela ORDCOLHEITA, a partir do NO_ORDCOLHEITA da tabela APPESAGEMMP, com o número da pesagem, recuperar o ID_ORDCOLHEITA, com o identificador da Ordem de Colheita, recuperar o ID_INSUMO da tabela ORDCOLHEITA_LC), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado na ordem de Colheita (ID_INSUMO vazio da tabela ORDCOLHEITA_LC), o sistema utilizará o produto Matéria Prima configurado para a Variedade (ID_INSUMO da tabela VARIEDADE a partir ID_VARIEDADE da tabela APPESAGEMMP, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado para a Variedade (ID_INSUMO vazio da tabela VARIEDADE) o sistema utilizará o produto Matéria Prima configurado para a Cultura/Ocupação (ID_INSUMO da tabela OCUPACAO_PMPRIMA, a partir ID_UPNIVEL3 da tabela APPESAGEMMP, quando definido controle de colheita FG_CTRL_COL igual a “S” da tabela APPESAGEMMP, com o identificador do [talhão], recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período de safra, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA) , quando possuir apenas um produto Matéria Prima configurado.
  • Se não existir produto configurado para a Pesagem (ID_INSUMO da tabela APPESAGEMMP), nem para Ordem de Colheita (ID_INSUMO da tabela ORDCOLHEITA_LC), nem para Variedade (ID_INSUMO da tabela VARIEDADE, nem para a Cultura/Ocupação (ID_INSUMO da tabela OCUPACAO_PMPRIMA) ou a Cultura/Ocupação possuir mais de uma produto associado (vários ID_INSUMO da tabela OCUPACAO_PMPRIMA) e a Unidade Receptora estiver configurada para integrar com o estoque (FG_INT_ERP igual a “S” da tabela UNIRECEPTORA), o sistema emitirá a mensagem “Não há produto Matéria Prima configurado para essa Pesagem ou Ordem de Colheita ou Variedade ou Cultura/Ocupação ou mais de um Produto para Cultura/Ocupação, pesagem não Finalizada!” e não irá integrar com estoque.

 

10-Alteração no apontamento de Manutenção de Pesagem para incluir o campo Produto.

Objetivo: Alteração no apontamento de Manutenção de Pesagem para incluir o campo Produto a ser colhido e alterar as regras para recuperar o produto para “Finalizar” a Pesagem.

Menu: Apontamentos > Colheita > Manutenção da Pesagem

Entrada de Menu: COLM0006

Esboço da tela:

Detalhes

Campos:

-    Produto: Produto do [Talhão] que está sendo colhido. Recupera o Produto de Matéria Prima da Ordem de Colheita, caso não encontre produto na Ordem de Colheita, recupera da Variedade, caso não encontre produto na Variedade, recupera o produto da Ocupação, se possuir mais de um Produto associado a Ocupação o usuário deve informar um dos produtos da Ocupação. Quando recuperar o Produto, desabilita o campo. (Tamanho do Campo: 10 Caracteres).

Demais Validações:

-    Permitir informar o Produto Matéria Prima, quando informar a Ordem de Colheita ou quando informar o Ocupação. Caso tente informar ou selecionar um Produto antes de informar a Ordem de Colheita ou o Ocupação, gerar mensagem pop-up “Ordem de Colheita ou Ocupação é Requerida”.

-    Ao salvar é verificado se “Necessita de Contrato de Venda da Produção para produto Matéria Prima”, configurado para a Cultura/Ocupação. Se estiver configurado que necessita de Contrato e a pesagem possui Controle de Colheita, será localizado o Contrato vigente de acordo com a Data de Movimento para o Local de Produção da Ordem de Colheita. Se não existir contrato é emitida a mensagem “Não há Contrato de Venda da Produção vigente nessa Data de Movimento para o Local de Produção e Produto.”, e não será permitida a gravação. Se possuir contrato vigente será verificado se há algum Produto informado no contrato. Se não existir nenhum produto informado no contrato será permitida a gravação. Se existir algum produto no contrato é verificado se o produto ao qual se refere na pesagem está no contrato e caso não exista não será permitida a gravação emitindo a mensagem “Não há Contrato de Venda da Produção vigente nessa Data de Movimento para o Local de Produção e Produto.”.

Regras para identificar qual o produto utilizado para encontrar contrato:

  • Primeiro verifica se há produto Matéria Prima informado na Pesagem, se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima informado na Pesagem, o sistema utilizará o produto Matéria Prima da Ordem de Colheita (quando informada), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado na ordem de Colheita, o sistema utilizará o produto Matéria Prima configurado para a Variedade, se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado para a Variedade o sistema utilizará o produto Matéria Prima configurado para a Cultura/Ocupação, quando possuir apenas um produto Matéria Prima configurado.

Demais Funcionalidades:

-    Quando alterar a Ordem de Colheita, a Variedade ou a Ocupação, recuperar novamente o Produto Matéria Prima, pela Ordem de Colheita, caso não encontre recuperar pela Variedade, caso não encontre, recuperar a partir da Ocupação, caso encontre mais de um produto o usuário pode informar um produto desde que associado a Ocupação. Quando recuperar o Produto desabilitar o campo.

 Regras para identificar qual o produto utilizado para integrar com o estoque:

  • Primeiro verifica se há produto Matéria Prima informado na Pesagem, se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima informado na Pesagem, o sistema utilizará o produto Matéria Prima da Ordem de Colheita (quando informada), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado na ordem de Colheita, o sistema utilizará o produto Matéria Prima configurado para a Variedade, se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado para a Variedade o sistema utilizará o produto Matéria Prima configurado para a Cultura/Ocupação, quando possuir apenas um produto Matéria Prima configurado.
  • Se não existir produto configurado para a Pesagem, nem para Ordem de Colheita, nem para Variedade, nem para a Cultura/Ocupação ou a Cultura/Ocupação possuir mais de uma produto associado e a Unidade Receptora estiver configurada para integrar com o estoque, o sistema emitirá a mensagem “Não há produto Matéria Prima configurado para essa Pesagem ou Ordem de Colheita ou Variedade ou Cultura/Ocupação ou mais de um Produto associado à Cultura/Ocupação, pesagem não Finalizada!” e não irá integrar com estoque.

Especificação Técnica:

-    Inserir a descrição em vermelho no Manual do Sistema.

 Demais Validações:

 -    Permitir informar o Produto Matéria Prima, quando informar a Ordem de Colheita (NO_ORCOLHEITA da tabela APPESAGEMMP), caso contrário quando informar o Ocupação. Caso tente informar ou selecionar um Produto antes de informar a Ordem de Colheita ou o Ocupação, gerar mensagem pop-up “Ordem de Colheita ou Período de Produção é Requerida”.

-    Ao salvar é verificado se “Necessita de Contrato de Venda da Produção para produto Matéria Prima”, configurado para a Cultura/Ocupação. Se estiver configurado que necessita de Contrato e a pesagem possui Controle de Colheita, será localizado o Contrato vigente de acordo com a Data de Movimento para o Local de Produção da Ordem de Colheita. Se não existir contrato é emitida a mensagem “Não há Contrato de Venda da Produção vigente nessa Data de Movimento para o Local de Produção e Produto.” e não será permitida a gravação. Se possuir contrato vigente será verificado se há algum Produto informado no contrato. Se não existir nenhum produto informado no contrato será permitida a gravação. Se existir algum produto no contrato é verificado se o produto ao qual se refere na pesagem está no contrato e caso não exista não será permitida a gravação emitindo a mensagem “Não há Contrato de Venda da Produção vigente nessa Data de Movimento para o Local de Produção e Produto.”.

 Regras para identificar qual o produto utilizado para integrar com o estoque:

  • Primeiro verifica se há produto Matéria Prima informado na Pesagem (ID_INSUMO da tabela APPESAGEMMP), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima informado na Pesagem (ID_INSUMO vazio da tabela APPESAGEMMP), o sistema utilizará o produto Matéria Prima da Ordem de Colheita (quando informada) (ID_INSUMO da tabela ORDCOLHEITA_LC), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado na Ordem de Colheita (ID_INSUMO vazio da tabela ORDCOLHEITA_LC), o sistema utilizará o produto Matéria Prima configurado para a Variedade (ID_INSUMO da tabela VARIEDADE, pela ID_VARIEDADE da tabela APPESAGEMMP), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado para a Variedade (ID_INSUMO vazio da tabela VARIEDADE) o sistema utilizará o produto Matéria Prima configurado para a Cultura/Ocupação (ID_INSUMO da tabela OCUPACAO_PMPRIMA, pelo ID_PERIODOSAFRA da tabela APPESAGEMMP, com o identificador do período de produção, recuperar o ID_OCUPACAO, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), quando possuir apenas um produto Matéria Prima configurado.

Demais Funcionalidades:

-    Recuperar o Produto Matéria Prima quando informar ou recuperar a variedade, a partir da Ordem de Colheita (ID_INSUMO da tabela ORDCOLHEITA_LC, a partir do NO_ORCOLHEITA da tabela APPESAGEMMP, com o número da Ordem de Colheita, recuperar o ID_ORDCOLHEITA da tabela ORDCOLHEITA para unidade administrativa corrente, com o identificador da ordem de colheita, recuperar o ID_INSUMO da tabela ORDCOLHEITA_LC), caso não encontre produto associado a ordem de colheita, recuperar a partir da Variedade (ID_VARIEDADE da tabela APPESAGEMMP, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar o produto pela ocupação (ID_PERIODOSAFRA da tabela APPESAGEMMP, com o identificador do período de produção, recuperar ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado a Cultura/Ocupação. Caso recupere o Produto desabilitar o campo.

-    Quando clicar no procura do produto, recuperar na pop-up somente os produtos associados a cultura/ocupação, recuperar CD_INSUMO, DE_INSUMO da tabela INSUMO e o DA_UNI_MEDIDA da tabela UNIMEDIDA a partir do ID_PERIODOSAFRA da tabela APPESAGEMMP, com o identificador do período de produção, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA, com o identificador do insumo, recuperar CD_INSUMO, DE_INSUMO e ID_UNIMEDIDA da tabela INSUMO, com o identificador da unidade de medida, recuperar o DA_UNI_MEDIDA da tabela UNIMEDIDA).

-    Quando alterar o número da Ordem de Colheita, recuperar novamente o Produto (ID_INSUMO da tabela ORDCOLHEITA_LC, partir do NO_ORDCOLHEITA da tabela APPESAGEMMP, recuperar ID_ORDCOLHEITA, com o identificador da ordem de colheita, recuperar o ID_INSUMO da tabela ORDCOLHEIA_LC), caso não encontre, recuperar a partir da variedade (ID_VARIEDADE da tabela APPESAGEMMP, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar da ocupação (ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período de produção, recuperar ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado a Cultura/Ocupação, quando alterar o período de produção, recuperar novamente o Produto pela variedade (ID_VARIEDADE da tabela VARIEDADE, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar a partir da ocupação (ID_PERIODOSAFRA da tabela APPESAGEMMP, com o identificador do período de produção, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado a Cultura/Ocupação, quando alterar a variedade (ID_VARIEDADE  da tabela VARIEDADE, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar a partir da ocupação (ID_PERIODOSAFRA da tabela APPESAGEMMP, com o identificador do período de produção, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado a Cultura/Ocupação. Quando recuperar o produto, desabilitar o campo.

Regras para identificar qual o produto utilizado para integrar com o estoque:

  • Primeiro verifica se há produto Matéria Prima informado na Pesagem (ID_INSUMO da tabela APPESAGEMMP), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima informado na Pesagem (ID_INSUMO vazio da tabela APPESAEMMP), o sistema utilizará o produto Matéria Prima da Ordem de Colheita (quando informada) (ID_INSUMO da tabela ORDCOLHEITA, a partir do NO_ORDCOLHEITA da tabela APPESAGEMMP, com o número da pesagem, recuperar o ID_ORDCOLHEITA, com o identificador da Ordem de Colheita, recuperar o ID_INSUMO da tabela ORDCOLHEITA_LC), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado na ordem de Colheita (ID_INSUMO vazio da tabela ORDCOLHEITA_LC), o sistema utilizará o produto Matéria Prima configurado para a Variedade (ID_INSUMO da tabela VARIEDADE a partir ID_VARIEDADE da tabela APPESAGEMMP, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), se existir será esse o produto utilizado para integrar com o estoque.
  • Se não possuir produto Matéria Prima configurado para a Variedade (ID_INSUMO vazio da tabela VARIEDADE) o sistema utilizará o produto Matéria Prima configurado para a Cultura/Ocupação (ID_INSUMO da tabela OCUPACAO_PMPRIMA, a partir ID_UPNIVEL3 da tabela APPESAGEMMP, quando definido controle de colheita FG_CTRL_COL igual a “S” da tabela APPESAGEMMP, com o identificador do [talhão], recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período de safra, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA) , quando possuir apenas um produto Matéria Prima configurado.
  • Se não existir produto configurado para a Pesagem (ID_INSUMO da tabela APPESAGEMMP), nem para Ordem de Colheita (ID_INSUMO da tabela ORDCOLHEITA_LC), nem para Variedade (ID_INSUMO da tabela VARIEDADE, nem para a Cultura/Ocupação (ID_INSUMO da tabela OCUPACAO_PMPRIMA) ou a Cultura/Ocupação possuir mais de uma produto associado (vários ID_INSUMO da tabela OCUPACAO_PMPRIMA) e a Unidade Receptora estiver configurada para integrar com o estoque (FG_INT_ERP igual a “S” da tabela UNIRECEPTORA), o sistema emitirá a mensagem “Não há produto Matéria Prima configurado para essa Pesagem ou Ordem de Colheita ou Variedade ou Cultura/Ocupação ou mais de um Produto para Cultura/Ocupação, pesagem não Finalizada!” e não irá integrar com estoque.

 

11-Alteração no apontamento de Beneficiamento para permitir mais de Produto de Matéria Prima.

 Objetivo: Alteração no apontamento de Beneficiamento para permitir mais de Produto de Matéria.

 Menu: Apontamentos > Beneficiamento > Apontamento de Beneficiamento

Entrada de Menu: BNFM0005

Esboço da tela:

Campos Obrigatórios:

-    Produto: Produto Colhido ou Produto Acabado/Beneficiado. Campo desabilitado.

Se o Processo for de “Produção Final” ao informar a Classificação o sistema já carrega automaticamente o Produto associado à Classificação e não permite o usuário alterar desabilita o campo.

Se o Processo for de “Produção Colhida”, o sistema verifica se há Produto configurado para a Pesagem, e se possuir o Produto será o configurado para a Pesagem. Se não possuir Produto configurado para a Pesagem, o sistema verifica se há Produto configurado para a Ordem de Colheita, e se possuir o Produto será o configurado para a Ordem de Colheita. Se não possuir Produto configurado para a Ordem de Colheita, o sistema verifica se há Produto configurado para a Variedade colhida, e se possuir o Produto será o configurado para a Variedade. Se não possuir Produto configurado para a Variedade, o Produto será o configurado na guia Produto Matéria Prima do cadastro Cultura/Ocupação Colhida, caso a Cultura/Ocupação possuir mais de um produto, o usuário deve informar um dos produtos associado à Cultura/Ocupação. Pode-se informar o mesmo produto, mais de uma vez, desde que seja para outro independente do Lote e deve estar associado na guia Produto Matéria Prima no cadastro de Cultura/Ocupação. Se o Processo for de “Produção Colhida” e não possuir Produto configurado para a Ordem de Colheita, nem para a Variedade e nem para a Cultura/Ocupação colhida, não será permitido registrar o apontamento para o Processo. Variedade colhida, e se possuir o Produto será o configurado para a Variedade. Se não possuir Produto configurado para a Variedade, o Produto será o configurado para a Cultura/Ocupação Colhida. Se o Processo for de “Produção Colhida” e não possuir Produto configurado para a Variedade e nem para a Cultura/Ocupação colhida, não será permitido registrar o apontamento para o Processo. Campo desabilitado quando o Produto já tiver sido Blocado e finalizado no Apontamento de Blocagem.

Possíveis campos pré-definidos:

-    Ordem de Colheita: Número da Ordem de Colheita a que se refere o apontamento de beneficiamento. Somente é permitido informar Ordem de Colheita que possui [Talhão] na Cultura/Ocupação do Processo. Se o Número da Ordem de Colheita tiver sido informado na Ordem de Produção ao qual pertence o Processo, esse campo ficará desabilitado (independente da configuração de habilitado) e com o valor informado na Ordem de Produção. Não é permitido informar Ordem de Colheita encerrada. Se o processo estiver configurado que irá apontar a Pesagem, o campo Ordem de Colheita fica desabilitado (independente da configuração de habilitado) e será recuperado quando informar a Pesagem.

Demais Validações:

-    Permitir informar o Produto Matéria Prima, quando informar a Ordem de Colheita ou a Pesagem e o Processo definido como “Produção Colhida”. Caso tente informar ou selecionar um Produto e o Processo definido como “Produção Colhida” e os campos pré-definidos “Ordem de Colheita” e “Pesagem’, antes de informar a Ordem de Colheita ou a Pesagem, gerar mensagem pop-up “Ordem de Colheita ou Pesagem é requerida”, se o Processo estiver com o campo pré-definido “Ordem de Colheita”, gerar a mensagem pop-up “Ordem de Colheita é requerida” e se o Processo estiver com o campo pré-definido “Pesagem”, gerar a mensagem pop-up “Pesagem é requerida.”

 Demais Funcionalidades:

-    Quando alterar a Ordem de Colheita ou a Pesagem e o Processo definido como “Produção Colhida”, recuperar novamente o Produto Matéria Prima, Pesagem, caso não encontre recuperar pela Ordem de Colheita, caso não encontre recuperar pela Variedade, caso não encontre recuperar a partir da Cultura/Ocupação e caso encontre mais de um produto o usuário pode informar um produto desde que associado à Cultura/Ocupação.

-    Permite informar mais de um produto, quando o processo estiver definido como “Produção Colhida”, e que esteja associado na guia Matéria Prima no cadastro de Cultura/Ocupação.

-    Permite informar o mesmo Produto quando o processo estiver definido como “Produção Colhida”, mesmo e que seja para o mesmo outro Lote.

 Especificação Técnica:

  -    Inserir a descrição em vermelho no Manual do Sistema.

-    Script para remover a chave estrangeira de ID_INSUMO a tabela OCUPACAO

 ALTER TABLE OCUPACAO DROP CONSTRAINT OCUPACAO5_FK_INSUMO;

  -    Script para remover a coluna ID_INSUMO da tabela OCUPACAO.

 ALTER TABLE OCUPACAO DROP COLUMN ID_INSUMO;

Demais Validações:

-    Quando tentar informar ou procurar o Produto (ID_INSUMO da tabela BF_PRODUCAO), e o processo estiver definido como “Produção Colhida” (FG_PRODCOL igual a “S” da tabela BF_PRC, recuperar o ID_PRC da tabela BF_AP, com identificador do processo, recuperar o FG_PRODCOL da tabela BF_PRC), e estiver habilitado “Ordem de Colheita” e “Pesagem” na guia “Campos Pré-Definidos” (ID_PRC da tabela BF_PRODUCAO, com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “4” e “5” e com FG_HABILITADO igual a “S” da tabela BF_PRC_CG_CPFX), e não informou a Pesagem, gerar mensagem pop-up “Pesagem é requerida”. Quando tentar informar ou procurar o Produto (ID_INSUMO da tabela BF_PRODUCAO), e o processo estiver definido como “Produção Colhida” (FG_PRODCOL igual “S” da tabela BF_PRC, recuperar o ID_PRC da tabela BF_PRODUCAO, com o identificador do processo, recuperar o FG_PRODCOL da tabela BF_PRC), e estiver habilitado “Ordem de Colheita” e não estiver habilitado “Pesagem” na guia “Campos Pré-Definidos” (ID_BF_PRC da tabela BF_PRODUCAO, com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “4” e com FG_HABILITADO igual a “S” e o ID_BF_DEF_CPFX igual a “5” e com FG_HABILITADO igual a “N” da tabela BF_PRC_CG_CPFX), e não informou a ordem de colheita, gerar mensagem pop-up “Ordem de Colheita é requerida”. Quando tentar informar ou procurar o produto, e o processo estiver definido como “Produção Colhida” (FG_PRODCOL igual a “S” da tabela BF_PRC, recuperar o ID_PRC da tabela BF_AP, com o identificador do processo, recuperar o FG_PRODCOL da tabela BF_PRC), e não estiver habilitado “Ordem de Colheita” e não habilitado “Pesagem” na guia “Campos Pré-Definidos” (ID_BF_PRC da tabela BF_PRODUCAO, com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “4” e com FG_HABILITADO igual a “N” e com ID_BF_DEF_CPFX igual a “5” e FG_HABILITADO igual a “S”), e não informou a pesagem, gerar mensagem pop-up “Pesagem é requerida”.

Demais Funcionalidades:

-    Quando o processo estiver definido como “Produção Colhida” (FG_PRODCOL igual a “S” da tabela BF_PRC, recuperar o ID_PRC da tabela BF_AP, com identificador do processo, recuperar o FG_PRODCOL da tabela BF_PRC), e estiver habilitado “Ordem de Colheita” e “Pesagem” na guia “Campos Pré-Definidos” (ID_PRC da tabela BF_PRODUCAO, com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “4” e “5” e com FG_HABILITADO igual a “S” da tabela BF_PRC_CG_CPFX), desabilitar o campo “Ordem de Colheita” e recuperar a partir da Pesagem.

Recuperar o Produto:

 -    Quando o processo estiver definido como “Produção Colhida” (FG_PRODCOL igual a “S” da tabela BF_PRC, recuperar o ID_PRC da tabela BF_AP, com identificador do processo, recuperar o FG_PRODCOL da tabela BF_PRC), e estiver habilitado “Ordem de Colheita” e “Pesagem” na guia “Campos Pré-Definidos” (ID_PRC da tabela BF_PRODUCAO, com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “4” e “5” e com FG_HABILITADO igual a “S” da tabela BF_PRC_CG_CPFX).

  • Recuperar o produto quando informar a Pesagem (ID_APPESAGEMMP da tabela BF_PRODUCAO, com o identificador da pesagem, recuperar o ID_INSUMO da tabela APPESAGEMMP).
  • Caso não encontre produto associado a Pesagem:
    • Recuperar o produto pela Ordem de Colheita (ID_ORCOLHEITA da tabela BF_PRODUACAO, e com o identificador da ordem de colheita, recuperar ID_INSUMO da tabela ORDCOLHEITA_LC), caso não encontre produto associado a Ordem de Colheita, recuperar o produto pela variedade da pesagem(recuperar o ID_VARIEDADE da tabela APPESAGEMMP, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar  produto pela ocupação (recuperar o ID_PERIODOSAFRA da tabela APPESAGEMMP, com o identificador do período de produção, recuperar ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado a Cultura/Ocupação. 

-    Quando no Processo estiver com “Produção Colhida” (FG_PRODCOL igual a “S” da tabela BF_PRC, recuperar o ID_PRC da tabela BF_AP, com identificador do processo, recuperar o FG_PRODCOL da tabela BF_PRC) estiver habilitado na guia Campos Pré-Definido no cadastro de processo em “Tabelas > Beneficiamento > Processo” o campo “Ordem de Colheita” (com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “4” e com FG_HABILITADO igual a “S”) e não estiver habilitado o campo “Pesagem” (com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “5” e com FG_HABILITADO igual a “N”).

  • Recuperar o Produto Matéria Prima, quando informar a Ordem de Colheita, (ID_ORCOLHEITA da tabela BF_PRODUACAO, e com o identificador da ordem de colheita, recuperar ID_INSUMO da tabela ORDCOLHEITA_LC), caso não encontre produto associado a Ordem de Colheita, recuperar o produto pela variedade (recuperar o ID_VARIEADE da tabela ORDCOLHEITA_LC a partir do ID_ORDCOLHEITA da tabela BF_PRODUCAO, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar  produto pela ocupação (recuperar o ID_UPNVIEL3 da tabela ORDCOLHEITA_LC a partir do ID_ORDCOLHEITA da tabela BF_PRODUCAO, com o identificador do [talhão], recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período de produção, recuperar ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado à Cultura/Ocupação.

-    Quando no Processo estiver definido com “Produção Colhida” (FG_PRODCOL igual a “S” da tabela BF_PRC, recuperar o ID_PRC da tabela BF_AP, com identificador do processo, recuperar o FG_PRODCOL da tabela BF_PRC) não estiver habilitado na guia Campos Pré-Definido no cadastro de processo em “Tabelas > Beneficiamento > Processo” o campo “Ordem de Colheita” (com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “4” e com FG_HABILITADO igual a “N”) e estiver habilitado o campo “Pesagem” (com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “5” e com FG_HABILITADO igual a “S”).    

  • Recuperar o Produto, quando informar a Pesagem (ID_APPESAGEMMP da tabela BF_PRODUCAO, com o identificador da pesagem, recuperar o ID_INSUMO da tabela APPESAGEMMP), caso não encontre produto associado a Pesagem, recuperar o produto da Ordem de Colheita (ID_APPESAGEMMP da tabela BF_PRODUCAO, com o identificador da pesagem, recuperar o ID_ORDCOLHEITA da tabela APPESAGEMMP, com o identificador da ordem de colheita, recuperar o ID_INSUMO da tabela ORDCOLHEITA_LC), caso não encontre produto associado a Ordem de Colheita, recuperar o produto pela variedade (ID_VARIEDADE  da tabela APPESAGEMMP, com o identificador da variedade, recuperar o ID_PRODUTO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar  produto pela ocupação (recuperar o ID_APPESAGEMMP da tabela BF_PRODUCAO, com o identificador da pesagem, recuperar o ID_PERIODOSAFRA da tabela APPESAEMMP, com o identificador do período de produção, recuperar ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado à Cultura/Ocupação.

-    Quando clicar na procura do produto, recuperar na pop-up somente os produtos associados a cultura/ocupação da seguinte maneira:

  • Recuperar a ocupação pela Pesagem (quando informada) (ID_APPESAGEMMP da tabela BF_PRODUCAO, com o identificador da pesagem, recuperar o ID_PERIODOSAFRA  da tabela APPESAGEMMP, com o identificador do período de produção, recuperar o ID_OCUPACAO da tabela OCUPACAO, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA, com identificador do produto, recuperar o CD_INSUMO e DE_INSUMO da tabela INSUMO e o ID_UNIMEDIDA e com o identificador da unidade de medida, recuperar o DA_UNI_MEDIDA da tabela UNIMEDIDA), quando não informar a pesagem, (ID_APPESAGEMMP vazio da tabela BF_PRODUCAO),  recuperar o produto da Cultura/Ocupação pela Ordem de Colheita (ID_ORDCOLHEITA da tabela BF_PRODUCAO, com o identificador da ordem de colheita, recuperar o ID_UPNIVEL3 da tabela ORDCOLHEITA_LC, com o identificador do [Talhão], recuperar o ID_PERIODOSAFRA da tabela PERIODOSAFRA, com o identificador do período safra, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA, com o identificador do produto, recuperar o CD_INSUNO e DE_INSUMO da tabela INSUMO e o ID_UNIMEDIDA, com o identificador da unidade de medida, recuperar o DA_UNI_MEDIDA da tabela UNIMEDIDA).

-    Quando o Processo estiver definido como “Produção Colhida” (FG_PRODCOL igual a “S” da tabela BF_PRC, recuperar o ID_PRC da tabela BF_AP, com identificador do processo, recuperar o FG_PRODCOL da tabela BF_PRC), e estiver habilitado na guia Campos Pré-Definido no cadastro de processo em “Tabelas > Beneficiamento > Processo” os campos “Ordem de Colheita” e “Pesagem” (com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “4” e “5” e com FG_HABILITADO igual a “S”) e alterar a Pesagem (ID_APPESAGEMMP da tabela BF_PRODUCAO), recuperar novamente o Produto (ID_INSUMO da tabela APPESAGEMMP pelo ID_APPESAGEMMP da tabela BF_PRODUCAO, caso não tenha produto informado na Pesagem, recuperar novamente o produto pelo ordem de colheita (ID_ORDCOLHEITA da tabela APPESAGEMMP, com o identificador da ordem de colheita, recuperar o ID_INSUMO da tabela ORDCOLHEITA_LC, caso não encontre produto na ordem de colheita, recuperar o produto pela variedade (ID_VARIEDADE da tabela APPESAGEMMP, com identificador variedade, recuperar o ID_INSUMO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar o produto da ocupação (com o identificador pesagem, recuperar o ID_PERIODOSAFRA da tabela APPESAGEMMP, com o identificador do período de safra, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA, caso encontre mais de um produto associado a ocupação o usuário deve selecionar um dos produtos associado.

-    Quando no Processo estiver definido como “Produção Colhida” (FG_PRODCOL igual a “S” da tabela BF_PRC, recuperar o ID_PRC da tabela BF_AP, com identificador do processo, recuperar o FG_PRODCOL da tabela BF_PRC), e estiver habilitado na guia Campos Pré-Definido no cadastro de processo em “Tabelas > Beneficiamento > Processo” o campo “Ordem de Colheita” (com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “4” e com FG_HABILITADO igual a “S”) e não estiver habilitado o campo “Pesagem” (com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “5” e com FG_HABILITADO igual a “N”) e alterar a ordem de colheita, recuperar o Produto Matéria Prima novamente (ID_ORCOLHEITA da tabela BF_PRODUACAO, e com o identificador da ordem de colheita, recuperar ID_INSUMO da tabela ORDCOLHEITA_LC), caso não encontre produto associado a Ordem de Colheita, recuperar o produto pela variedade (recuperar o ID_VARIEDADE da tabela ORDCOLHEITA_LC a partir do ID_ORDCOLHEITA da tabela BF_PRODUCAO, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar  produto pela ocupação (recuperar o ID_UPNVIEL3 da tabela ORDCOLHEITA_LC a partir do ID_ORDCOLHEITA da tabela BF_PRODUCAO, com o identificador do [talhão], recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período de produção, recuperar ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado à Cultura/Ocupação.

-    Quando no Processo estiver definido como “Produção Colhida” (FG_PRODCOL igual a “S” da tabela BF_PRC, recuperar o ID_PRC da tabela BF_AP, com identificador do processo, recuperar o FG_PRODCOL da tabela BF_PRC), e não estiver habilitado na guia Campos Pré-Definido no cadastro de processo em “Tabelas > Beneficiamento > Processo” o campo “Ordem de Colheita” (com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “4” e com FG_HABILITADO igual a “N”) e estiver habilitado o campo “Pesagem” (com o identificador do processo, recuperar o ID_BF_DEF_CPFX igual a “5” e com FG_HABILITADO igual a “S”) e alterar a Pesagem, recuperar o Produto novamente (ID_APPESAGEMMP da tabela BF_PRODUCAO, com o identificador da pesagem, recuperar o ID_INSUMO da tabela APPESAGEMMP), caso não encontre produto associado a Pesagem, recuperar o produto da Ordem de Colheita (ID_APPESAGEMMP da tabela BF_PRODUCAO, com o identificador da pesagem, recuperar o ID_ORDCOLHEITA da tabela APPESAGEMMP, com o identificador da ordem de colheita, recuperar o ID_INSUMO da tabela ORDCOLHEITA_LC), caso não encontre produto associado a Ordem de Colheita, recuperar o produto pela variedade (ID_VARIEDADE  da tabela APPESAGEMMP, com o identificador da variedade, recuperar o ID_PRODUTO da tabela VARIEDADE), caso não encontre produto associado a variedade, recuperar  produto pela ocupação (recuperar o ID_PERIODOSAFRA da tabela APPESAGEMMP a partir do ID_APPESAGEMMP da tabela BF_PRODUCAO, com o identificador do período de produção, recuperar ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA), caso encontre mais de um produto o usuário pode informar um produto desde que associado à Cultura/Ocupação.

Finalizar:

-    Alterar o finalizar, para permitir finalizar um apontamento de beneficiamento, quando o processo estiver definido como “Produção Colhida” (FG_PRODCOL igual a “S” da tabela BF_PRC, recuperar o ID_PRC da tabela BF_AP, com identificador do processo, recuperar o FG_PRODCOL da tabela BF_PRC), permitir finalizar, sem a necessidade de ter a classificação. Neste tipo de apontamento não aponta a classificação e manter as outras validações.


12-Inclusão do cadastro de Processos, Configurações e Fatores para Geração de Produção.

 Objetivo: Inclusão do cadastro de Processos, Configurações e Fatores para Geração de Produção, será utilizado para converter a quantidade apontada no Mão de Obra Rural e está quantidade será utilizado para gerar estoque para ERP.

 Menu: Tabelas > Beneficiamento > Processos para Geração de Produção

Entrada de Menu: BNFM0012

Esboço da tela:

Dados

Campos Obrigatórios:

-    Código: Código do Processo para geração da produção. Não é permitido mais de um registro com o mesmo código para a Unidade Administrativa corrente. Permitir valores alfanuméricos, exemplo: A, B, C,1, 2, 3 e etc. (Tamanho do Campo: 10 Caracteres).

-    Descrição: Descrição do Processo para geração da produção. (Tamanho do Campo: 50 caracteres).

-    Processo: Código do Processo de Beneficiamento. Permitido informar Processo de Beneficiamento que esteja definido como “Produção Colheita”. Quando informado deve estar previamente cadastro e ativo para a Unidade Administrativa corrente. Quando o processo for utilizado no Processo para Geração de Produção, o campo Processo fica desabilitado e não permite alteração. (Tamanho do Campo: 10 Caracteres).

-    Depósito: Depósito utilizado para dar entrada de estoque referente à geração da produção. O Depósito deve estar previamente cadastrado. (Tamanho do campo: 10 Inteiros).

Vigência

Campos Obrigatórios:

-    Início de Vigência: Indicar a data de Início de Vigência do processo e não pode ser maior que a data Fim de Vigência (quando informada).

 Demais Campos:

-    Fim de Vigência: Indicar a data de Fim de Vigência do processo. O campo Fim de Vigência não é obrigatório, porém não é permitido possuir mais de um período de vigência sem a data Fim de Vigência. O campo Fim de Vigência em branco indica que a vigência está ativa a partir da data Início de Vigência e não tem o Fim previsto. Quando informada não pode ser menor que a data Início de Vigência.

 Demais Validações:

-    Não permite períodos de vigências com datas intercaladas.

Exemplo 1:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

 

Sim

15/01/2015

 

Não

Exemplo 2:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

 

Sim

15/01/2015

31/12/2015

Não

Exemplo 3:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

31/12/2015

Sim

15/01/2015

31/01/2015

Não

31/12/2014

01/01/2016

Não

15/01/2015

01/01/2016

Não

01/01/2015

 

Não

31/12/2014

 

Não

Exemplo 4:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

31/05/2015

Sim

15/06/2015

31/07/2015

Sim

01/08/2015

 

Sim

Operação

Campos Obrigatórios:

-    Operação: Informar o Código da Operação utilizada como base para gerar a produção, que deve estar previamente cadastrada e ser do Tipo “Manual” ou “Semi-Mecanizada”. (Tamanho do campo: 10 Inteiros).

 Demais Campos:

-    Verba: Informar o Código da Verba, e que deve estar previamente cadastrada e pertencer a Unidade Administrativa corrente. (Tamanho do campo: 10 Caracteres).

 Demais Validações:

-    Permite informar outra operação, desde que a Unidade de Medida seja a mesma.

-    Não permite informar a mesma Operação e Verba.

-    Não permite informar a mesma Operação sem a Verba

-    Permitir informar uma Verba que esteja associado a Operação.

Exemplo 1:

Operação

Unidade Medida

Verba

Permitido

10106 - Estria e Risco 1.o Ano

Milheiros

10106 - Estria e Risco 1.o Ano

Sim

10106 - Estria e Risco 1.o Ano

Milheiros

 

Sim

Exemplo 2:

Operação

Unidade Medida

Verba

Permitido

10104 - Estria e Risco

Milheiros

10104 - Estria e Risco

Sim

10104 - Estria e Risco

Milheiros

10104 - Estria e Risco

Não

Exemplo 3:

Operação

Unidade Medida

Verba

Permitido

10105 - Estria Normal

Milheiros

10105 - Estria Normal

Sim

10106 - Estria (Alta)

Milheiros

10106 - Estria (Alta)

Sim

10107 - Estria em "V"

Milheiros

10107 - Estria em "V"

Sim

10107 – Estria em “V”

Milheiros

 

Sim

10108 - Estria em "V" Alta

Kg

10108 - Estria em "V" Alta

Não

Exemplo 4:

Operação

Unidade Medida

Verba

Permitido

10109 - Estria Normal

Milheiros

 

Sim

10109 - Estria Normal

Milheiros

 

Não

Vigência – Fator

Campos Obrigatórios:

-    Início de Vigência: Indicar a data de Início de Vigência do Fator e não pode ser maior que a data Fim de Vigência (quando informado).

 Demais Campos:

-    Fim de Vigência: Indicar a data de Fim de Vigência do Fator. O campo Fim de Vigência não é obrigatório, porém não é permitido possuir mais de um período de vigência sem a data Fim de Vigência. O campo Fim de Vigência em branco indica que a vigência está ativa a partir da data Início de Vigência e não tem o Fim previsto. Quando informada não pode ser menor que a data Início de Vigência.

 Demais Validações:

-    Não permite períodos de vigências com datas intercaladas.

Exemplo 1:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

 

Sim

15/01/2015

 

Não

Exemplo 2:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

 

Sim

15/01/2015

31/12/2015

Não

Exemplo 3:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

31/12/2015

Sim

15/01/2015

31/01/2015

Não

31/12/2014

01/01/2016

Não

15/01/2015

01/01/2016

Não

01/01/2015

 

Não

31/12/2014

 

Não

Exemplo 4:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

31/05/2015

Sim

15/06/2015

31/07/2015

Sim

01/08/2015

 

Sim

Fator

Campos Obrigatórios:

-    Produto: Indicar o Produto do Fator do processo para Geração de Produção, e deve estar previamente cadastrado. (Tamanho do Campo: 10 Inteiros).

-    Fator: Indicar o Fator para conversão da produção. Converte a quantidade apontada no Mão de Obra utilizando o Fator e o Operador matemático. O Fator deve ser maior que “0” (zero). (Tamanho do Campo: 6 Inteiros e 5 decimais)

-    Operador: Indicar o Operador que será utilizado para converter a quantidade apontada no Mão de Obra Rural. Por padrão recuperar Multiplicação.

  • Multiplicação: Multiplica a quantidade apontada no Mão de Obra Rural pelo Fator.
  • Divisão: Divide a quantidade apontada no Mão de Obra Rural pelo Fator.
  • Adição: Soma o Fator a quantidade apontada no Mão de Obra Rural.
  • Subtração: Subtrai o Fator da quantidade apontada no Mão de Obra Rural.

Demais Campos:

-   Variedade: Indicar a Variedade do Fator do processo para Geração de Produção. O sistema calculará a Produção para todos os Locais de Produção apontado no Mão de Obra Rural e que possuem a Variedade informada. Quando informado deve estar previamente cadastrada. (Tamanho do campo: 10 Inteiros).

-    Ano Agrícola: Indicar o Ano Agrícola do Fator do processo para Geração de Produção. O sistema calculará a Produção para todos os Locais de Produção apontado no Mão de Obra Rural e que possuem o Ano Agrícola informado. O Ano Agrícola deve estar previamente cadastrado. Quando não configurado “Utiliza Ano Agrícola” em “Administração > Configuração do Local de Produção” o campo Ano Agrícola fica invisível. (Tamanho do campo: 10 Inteiros).

-    Período de Produção: Indicar o Período de Produção do Fator do processo para Geração de Produção. O sistema calculará a Produção para todos os Locais de Produção apontado no Mão de Obra Rural e que possuem o Período de Produção informado. O Período de Produção deve estar previamente cadastrado para o Ano Agrícola informado. (Tamanho do campo: 10 Inteiros).

-    [Fazenda]: Indicar a [Fazenda] do Fator do Processo para Geração de Produção. O sistema calculará a Produção para todos os Locais de Produção apontado no Mão de Obra Rural que possuem o possuem a [Fazenda] informada. A [Fazenda] deve estar previamente cadastrada para Unidade Administrativa corrente. (Tamanho do campo: 6 Inteiros).

-    [Setor]: Indicar o [Setor] do Fator do Processo para Geração de Produção. O sistema calculará a Produção para todos os Locais de produção apontado no Mão de Obra Rural que possuem o [Setor] informado. O [Setor] deve estar previamente cadastrado para a [Fazenda] informada. Quando não configurado “Utiliza [Setor]” em Administração > Configuração do Local de Produção” o campo [Setor] fica invisível. (Tamanho do campo: 6 Caracteres).

-    [Talhão]: Indicar o [Talhão] do Fator do Processo para Geração de produção. O sistema calculará a Produção para todos os Locais de Produção apontado no Mão de Obra Rural que possuem o [Talhão] informado. O [Talhão] deve estar previamente cadastrado para o [Setor] e Período de Produção informado. (Tamanho do campo: 6 Caracteres).

Exemplo da sequência de verificação dos parâmetros informado para determinação do fator à ser utilizado na geração da produção:

Sequência

Produto

Variedade

Ano Agrícola

Período de Produção

[Fazenda]

[Setor]

[Talhão]

1

   

 

 

   

 

2

   

 

   

 

   

   

 

3

 

 

   

 

 

 

4

 

 

 

 

 

 

5

   

 

 

 

 

 

 

6

 

   

 

 

   

   

 

7

   

   

 

 

   

 

 

8

 

 

 

 

   

   

 

9

   

 

 

 

   

 

 

10

   

   

 

 

 

 

 

11

   

 

 

 

 

 

 

Filtros:

-    Código: Código do Processo para Geração da Produção. (Tamanho do Campo: 10 Caracteres).

-    Descrição: Descrição do Processo para Geração da Produção. (Tamanho do Campo: 50 Caracteres).

-    Processo: Código do Processo de Beneficiamento para Geração da Produção. (Tamanho do Campo: 10 Caracteres).

 Relatório:

-    Os filtros da tela serão aplicados para o relatório.

Campos:

-    Código: Código do Processo para Geração de Produção. Campo utilizado para ordenação.

-    Descrição: Descrição do Processo para Geração de Produção.

-    Processo: Código e Descrição do Processo de Beneficiamento.

-    Depósito: Código e Descrição do Depósito.

-    Início de Vigência: Data Início de Vigência do Processo. Campo utilizado para ordenação dentro do código do Processo para Geração de Produção.

-    Fim de Vigência: Data Fim de Vigência do Processo.

-    Operação: Código e Descrição da Operação. Campo utilizado para ordenação dentro do código do Processo para Geração de Produção.

-    Verba: Código e Descrição da Verba. Campo utilizado para ordenação dentro da Operação.

-    Início de Vigência do Fator: Data Início de Vigência do Fator. Campo utilizado para ordenação dentro do código do Processo para Geração de Produção.

-    Fim de Vigência do Fator. Data Fim de Vigência do Fator.

-    Produto: Descrição do Produto. Campo utilizado para ordenação dentro início de Vigência do Fator.

-    Variedade: Descrição da Variedade.

-    Ano Agrícola: Código do Ano Agrícola.

-    Período de Produção: Código do Período de Produção.

-    [Fazenda]: Descrição da [Fazenda].

-    [Setor]: Descrição do [Setor]. Quando não configurado “Utiliza [Setor]” em Administração > Configuração do Local de Produção” o campo [Setor] fica invisível.

-    [Talhão]: Código do [Talhão].

-    Fator: Fator de conversão da quantidade apontada no Mão de Obra Rural.

-    Operador: Operador matemático para conversão da quantidade apontada no Mão de Obra Rural.

Especificação técnica

 Tabelas:

Descrição

Nome

Situação

Cadastro de Processo para Geração de Produção

BF_PRC_PROD

Novo

Cadastro de Processo para Geração de Produção - Vigência do Processo

BF_PRC_PROD_VG

Novo

Cadastro de Processo para Geração de Produção - Operação / Verba

BF_PRC_PROD_OPVB

Novo

Cadastro de Processo para Geração de Produção - Vigência do Fator

BF_PRC_PROD_VG_FT

Novo

Cadastro de Processo para Geração de Produção - Fator

BF_PRC_PROD_FATOR

Novo

 

Campos tipados da tabela BF_PRC_PROD_FATOR:

Tabela

Campo

Padrão

Visualização

Gravação

BF_PRC_PROD_FATOR

FG_OPERADOR

M

Multiplicação

M

 

 

 

Adição

A

 

 

 

Divisão

D

 

 

 

Subtração

S

Scripts:

-    Não é permitido mais de um registro com o mesmo código do Processo para Geração de Produção e Unidade Administrativa corrente, para isso, criar índice único para garantir a restrição na tabela BF_PRC_PROD:

 CREATE UNIQUE INDEX BF_PRC_PROD_UN ON BF_PRC_PROD (CD_BF_PRC_PROD, ID_UNIDADEADM);

 Dados:

-    Permitir somente Processo de Beneficiamento que esteja definido como “Produção Colheita” (FG_PRODCOL igual a “S” da tabela BF_PRC) e ativo para a Unidade Administrativa corrente (com identificador do processo de beneficiamento, recuperar o ID_BF_PRC_ADM da tabela BF_PRC_ADM para a unidade administrativa corrente igual ao ID_UNIDADEADM da tabela BF_PRC_ADM e com FG_ATIVO igual a “S”). Quando o processo for efetuado (ID_BF_PRC da tabela BF_AP), o campo Processo fica desabilitado e não permite alteração

 Vigência do Processo

 Demais Validações:

-    Não permitir informar a data Início de Vigência maior que a data Fim de Vigência (quando informada) (DT_INI_BF_PRC_PROD_VG maior DT_FIM_BF_PRC_PROD_VG).

-    Não permitir informar a data Fim de Vigência (quando informada) menor que a data Início de Vigência (DT_FIM_BF_PRC_PROD_VG menor DT_INI_BF_PRC_PROD_VG).

-    Não permitir informar período intercalados.

Exemplo 1:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

 

Sim

15/01/2015

 

Não

Exemplo 2:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

 

Sim

15/01/2015

31/12/2015

Não

Exemplo 3:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

31/12/2015

Sim

15/01/2015

31/01/2015

Não

31/12/2014

01/01/2016

Não

15/01/2015

01/01/2016

Não

01/01/2015

 

Não

31/12/2014

 

Não

Exemplo 4:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

31/05/2015

Sim

15/06/2015

31/07/2015

Sim

01/08/2015

 

Sim

Operação

 Demais Validações:

-    Permitir informar uma operação do Tipo “Manual” ou “Semi-Mecanizada” (FG_TP_OPER iguala “M” ou “S” da tabela OPERACAO), caso seja diferente gerar a ocorrência “Operação com o {0} não é do tipo Manual ou Semi-Mecanizada”.

-    Permitir informar outra operação para o processo, desde que a Unidade de Medida seja a mesma (ID_UNIMEDIDA da tabela OPERACAO).

-    Não permite informar a mesma Operação (ID_OPERACAO da tabela BF_PRC_PROD_OPVB) e Verba (ID_MDO_VERBA da tabela BF_PRC_PROD_OPVB) para o processo.

-    Não permite informar a mesma Operação (ID_OPERACAO da tabela BF_PRC_PROD_OPVB) sem a Verba (ID_MDO_VERBA vazio da tabela BF_PRC_PROD_OPVB) para o processo.

-    Permitir informar uma Verba que esteja associado a Operação (ID_OPERACAO da tabela BF_PRC_PROD_OPVB, com o identificador da operação, recuperar o ID_MDO_VERBA da tabela BF_PRC_PROD_OPVB deve ser estar na tabela MDO_OPER_VERBA), caso não esteja, gerar a mensagem pop-up “Verba deve estar relacionada com a Operação”.

 Vigência do Fator

 Demais Validações:

-    Não permitir informar a data Início de Vigência maior que a data Fim de Vigência (quando informada) (DT_INI_BF_PRC_PROD_VG_FT maior DT_FIM_BF_PRC_PROD_VG_FT).

-    Não permitir informar a data Fim de Vigência (quando informada) menor que a data Início de Vigência (DT_FIM_BF_PRC_PROD_VG_FT menor DT_INI_BF_PRC_PROD_VG_FT).

-    Não permitir informar período intercalados.

Exemplo 1:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

 

Sim

15/01/2015

 

Não

Exemplo 2:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

 

Sim

15/01/2015

31/12/2015

Não

Exemplo 3:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

31/12/2015

Sim

15/01/2015

31/01/2015

Não

31/12/2014

01/01/2016

Não

15/01/2015

01/01/2016

Não

01/01/2015

 

Não

31/12/2014

 

Não

Exemplo 4:

Início de Vigência

Fim de Vigência

Permitido

01/01/2015

31/05/2015

Sim

15/06/2015

31/07/2015

Sim

01/08/2015

 

Sim

Fator

 -        Ocultar o campo Ano Agrícola quando não configurado “Utiliza Ano Agrícola” na Configuração do Local de Produção (FG_SAFRA da tabela PRX_PARAM_LOCAIS igual a “N”), recuperar o código do Ano Agrícola (CD_SAFRA da tabela SAFRA) quando informar o Período de Produção (CD_PER_SAFRA da tabela PERIODOSAFRA) e utilizar serviço que retorna o código do Ano Agrícola associado ao Período de Produção (ID_SAFRA da tabela PERIODOSAFRA). Caso contrário o campo Ano Agrícola fica visível.

-         Ocultar o campo [Setor] quando não configurado “Utiliza [Setor]” na Configuração do Local de Produção (FG_UPNIVEL2 da tabela PRX_PARAM_LOCAIS igual a “N”) e recuperar o código do [Setor] quando informar o código da [Fazenda], recuperar o código do [Setor] (CD_UPNIVEL2 da tabela UPNIVEL2) associado ao código da [Fazenda] (CD_UPNIVEL1 da tabela UPNIVEL1) e utilizar serviço que retorna o código do [Setor] associado a [Fazenda] (ID_UPNIVEL1 da tabela UPNIVEL2). Caso contrário o campo [Setor] fica visível.

-         Quando não configurado “Utiliza Ano Agrícola” na Configuração do Local de Produção (FG_SAFRA da tabela PRX_PARAM_LOCAIS igual a “N”), remover a obrigatoriedade de informar o código do Ano Agrícola quando informar o Período de Produção, caso contrário será obrigatório informar o código do Ano Agrícola quando informar o código do Período de Produção.

-         Quando não configurado “Utiliza [Setor]” na Configuração do Local de Produção (FG_UPNIVEL2 da tabela PRX_PARAM_LOCAIS igual a “N”), remover a obrigatoriedade de informar o código do [Setor] quando informar o código do [Talhão] e passar a ser obrigatório informar o código da [Fazenda] quando informar o código do [Talhão], caso contrário será obrigatório informar o código do [Setor] quando informar o código do [Talhão].

Relatório

 Filtros:

-    Código: Código do Processo para Geração da Produção. Recupera o Processo para Geração de Produção com o código informado.

-    Descrição: Descrição do Processo para Geração da Produção. Recuperar todos os Processos para Geração de Produção com a descrição informada.

-    Processo: Código do Processo de Beneficiamento para Geração da Produção. Recupera todos os Processos para Geração de Produção com o código do processo informado. Quando informado deve estar previamente cadastrado e ativo para Unidade Administrativa corrente. (CD_BF_PRC da tabela BF_PRC). Quando não estiver cadastrado gerar a mensagem pop-up “Processo de Beneficiamento com código {0} não cadastrado”. 

Campos:

-    Código: Código do Processo para Geração da Produção (CD_BF_PRC_PROD da tabela BF_PRC_PROD). Campo utilizado para ordenação.

-    Descrição: Descrição do Processo para Geração da Produção (DE_BF_PRC_PROD da tabela BF_PRC_PROD).

-    Processo: Código e Descrição do Processo de Beneficiamento (CD_BF_PRC da tabela BF_PRC, a partir do ID_BF_PRC da tabela BF_PRC, com o identificador do processo de beneficiamento, recuperar CD_BF_PRC da tabela BF_PRC).

-    Depósito: Código e Descrição do Depósito (CD_DEPOSITO e DE_DEPOSITO da tabela DEPOSITO, a partir do ID_DEPOSITO da tabela BF_PRC_PROD).

-    Início de Vigência: Data Início de Vigência da Operação/Verba (DT_INI_BF_PRC_PROD_VG da tabela BF_PRC_PROD_VG). Campo utilizado para ordenação dentro do código do processo.

-    Fim de Vigência: Data Fim de Vigência da Operação/Verba (DT_FIM_BF_PRC_PROD_VG da tabela BF_PRC_PROD_VG).

-    Operação: Código e Descrição da Operação (CD_OPERACAO e DE_OPERACAO da tabela OPERACAO, a partir do ID_OPERACAO da tabela BF_PRC_PROD_OPVB, com o identificador da operação, recuperar CD_OPERACAO e DE_OPERACAO da tabela OPERACAO). Campo utilizado para ordenação dentro da vigência.

-    Verba: Código e Descrição da Verba (CD_MDO_VERBA e DE_MDO_VERBA da tabela MDO_VERBA, a partir do ID_MDO_VERBA da tabela BF_PRC_PROD_OPVB, com o identificador da verba, recuperar o CD_MDO_VERBA e DE_MDO_VERBA da tabela MDO_VERBA). Campo utilizado para ordenação dentro da operação.

-    Início de Vigência do Fator: Data Início de Vigência do Fator (DT_INI_BF_PRC_PROD_VG_FT da tabela BF_PRC_PROD_VG_FT). Campo utilizado para ordenação dentro do código do processo.

-    Fim de Vigência do Fator. Data Fim de Vigência do Fator (DT_FIM_BF_PRC_PROD_VG_FT da tabela BF_PRC_PROD_VG_FT).

-    Produto: Descrição do Produto (CD_INSUMO e DE_INUSMO da tabela INSUMO a partir do ID_INSUMO da tabela BF_PRC_PROD_FATOR, com o identificador do produto, recuperar o CD_INSUMO e DE_INSUMO da tabela INSUMO). Campo utilizado para ordenação dentro do início de Vigência do Fator.

-    Variedade: Descrição da Variedade (DE_VARIEDADE da tabela VARIEDADE, a partir do ID_VARIEDADE da tabela BF_PRC_PROD_FATOR, com o identificador do produto, recuperar o DE_VARIEDADE da tabela VARIEDADE).

-    Ano Agrícola: Código do Ano Agrícola (CD_SAFRA da tabela SAFRA, a partir do ID_SAFRA da tabela BF_PRC_PROD_FATOR, com o identificador da safra, recuperar o CD_SAFRA da tabela SAFRA).

-    Período de Produção: Código do Período de Produção (CD_PER_SAFRA da tabela PERIODOSAFRA, a partir do ID_PERIODOSAFRA da tabela BF_PRC_PROD_FATOR, com o identificador do período de produção, recuperar o CD_PER_SAFRA da tabela PERIODOSAFRA.

-    [Fazenda]: Descrição da [Fazenda] (CD_UPNIVEL1 e DE_UPNIVEL1 da tabela UPNIVEL1, a partir do ID_UPNIVEL1 da tabela BF_PRC_PROD_FATOR, com o identificador da [Fazenda], recuperar o CD_UPNIVEL1 e DE_UPNVIEL1 da tabela UPNIVEL1).

-    [Setor]: Descrição do [Setor] (CD_UPNIVEL2 e DE_UPNIVEL2 da tabela UPNIVEL2, a partir do ID_UPNVIEL2 da tabela BF_PRC_PROD_FATOR, com o identificador do [Setor], recuperar o CD_UPNVIEL2 e DE_UPNVIEL2 da tabela UPNIVEL2). Quando não configurado “Utiliza [Setor]”, na Configuração do Local de Produção (FG_UPNIVEL2 da tabela PRX_PARAM_LOCAIS igual a “N”), a descrição do [Setor] não será impressa.

-    [Talhão]: Código do [Talhão] (CD_UPNIVEL3 da tabela UPNIVEL3, a partir do ID_UPNIVEL3 da tabela BF_PRC_PROD_FATOR, com o identificador do [Talhão], recuperar o CD_UPNIVEL3 da tabela UPNIVEL3).

-    Fator: Fator de conversão da quantidade apontada no Mão de Obra Rural (QT_FATOR da tabela BF_PRC_PROD_FATOR).

-    Operador: Operador matemático para conversão da quantidade apontada no Mão de Obra Rural (FG_OPERADOR da tabela BF_PRC_PROD_FATOR).

 

13-Gerar a produção da resina de acordo com os apontamentos de Mão de Obra Rural e integrar com o estoque do ERP.

 Objetivo: Gerar a produção da resina de acordo com os apontamentos de Mão de Obra Rural e integrar com o estoque do ERP.

 Menu: Apontamentos > Beneficiamento > Geração de Produção

Entrada de Menu: BNFM0013

Esboço da tela:

Informações da Grid:

-         Todos: Por padrão marcado e recupera na grid todos os apontamentos sem exceção e não deixa visível os botões de integrar, reverter integração, Excluir, Marcar Todos e Desmarcar Todos.

-         Integrar: Quando marcado, recupera na grid todos os apontamentos gerados ou com erro que ainda não foram integrados e deixa visível o botão “Integrar”.

-         Reverter Integração: Quando marcado, recupera na grid todos os apontamentos gerados e integrados que podem ser efetuados a reversão e deixa visível o botão “Reverter Integração”.

-         Excluir: Quando marcado, recupera na grid todos os apontamentos gerados, que não foram integrados ou não processados pelo ERP e deixa visível o botão excluir.

Produção: Indica a situação da Geração da Produção. 

  • Produção gerada com sucesso.
  • Erro na geração da Produção. Exemplo: Ordem de Colheita não encontrada, Não há Produto configurado para Ordem de Colheita, nem para Variedade, nem para Cultura/Ocupação ou a Cultura/Ocupação possuir mais de um produto associado, etc.

-    Integração: Indica a situação da Integração.

  • Integrado com sucesso.
  • Integração Pendente. Todas as produções e que ainda não foram enviadas para ERP e todas as integrações que foram enviadas para o ERP e que ainda não foram processadas pelo EPR.
  • Falha na Integração. Ex. Período Fechado no ERP, Deposito ERP inválido, Produto ERP inválido, etc. 

-    Número: Número do boletim gerado.

-    Data: Data do apontamento de Mão de Obra Rural.

-    [Fazenda]: Código da [Fazenda] com produção do apontamento de Mão de Obra Rural.

-    [Setor]: Código do [Setor] com produção do apontamento de Mão de Obra Rural. Quando não configurado “Utiliza [Setor]” em “Administração > Configuração do Local de Produção”, o campo [Setor] fica invisível.

-    [Talho]: Código do [Talhão].

-    Ano Agrícola: Código do Ano Agrícola com produção do apontamento de Mão de Obra Rural. Quando não configurado “Utiliza Ano Agrícola” em “Administração > Configuração do Local de Produção” o campo Ano Agrícola fica invisível.

-    Período de Produção: Código do Período de Produção com produção do apontamento de Mão de Obra Rural.

-    Ordem de Colheita: Número da Ordem de Colheita, utilizada na Geração de Produção.

-    Produto: Código do Produto utilizado na Geração de Produção.

-    Quantidade: Quantidade apontada no apontamento de Mão de Obra Rural.

-    Fator: Fator utilizado para conversão da quantidade apontada no Mão de Obra Rural.

-    Quantidade Convertida: Quantidade convertida de acordo com a quantidade apontada no apontamento de Mão e Obra Rural e fator de conversão.

-    Operação: Código da Operação com produção no apontamento de Mão de Obra Rural.

-    Verba: Código da Verba com produção no apontamento de Mão de Obra Rural.

-    Ocorrência: Ocorrência na geração de Produção ou na Integração.

Demais Funcionalidades

-         Permiti marcar uma opção na grid por vez (Integrar ou Reverter Integração ou Excluir ou Todos).

 Geração de Produção (Botão Aplicar):

-    Mesmo informando um período para geração de Produção, a produção será gerada diariamente buscando para o dia o processo vigente definido na guia “Vigência” em “Tabelas > Beneficiamento > Processo para Geração de Produção”, com a vigência, recuperar as operações/verbas definida na guia “Operação” em “Tabelas > Beneficiamento > Processos para Geração de produção”.

-    Com a Operação/Verba selecionada, somar a quantidade apontada no Apontamento de Mão de Obra Rural para o Data, Produto, Variedade, Ano Agrícola, Período de Produção, [Fazenda], [Setor] e [Talhão] (ordem de colheita) e que ainda não foram geradas a produções. Com a quantidade somada, buscar a vigência do fator definido na guia “Vigência do Fator” em “Tabelas > Beneficiamento > Processo para Geração de Produção” e o fator de conversão e operador definido para a vigência na guia “Fator” em “Tabelas > Beneficiamento > Processo para Geração de Produção” da seguinte maneira:

  • Recuperar o Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção, [Fazenda], [Setor] e [Talhão].
  • Caso não encontre Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção, [Fazenda], [Setor] e [Talhão], recuperar o Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção, [Fazenda] e [Setor].
  • Caso não encontre Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção, [Fazenda] e [Setor], recuperar o Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção e [Fazenda].
  • Caso não encontre Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção e [Fazenda], recuperar o Fator e Operador pelo Produto, Variedade, Ano Agrícola e Período de Produção.
  • Caso não encontre Fator e Operador pelo Produto, Variedade, Ano Agrícola e Período de Produção, recuperar o Fator e Operador pelo Produto, Variedade e Ano Agrícola.
  • Caso não encontre Fator e Operador pelo Produto, Variedade e Ano Agrícola, recuperar o Fator e Operador pelo Produto, Variedade, [Fazenda] e [Setor].
  • Caso não encontre Fator e Operador pelo Produto, Variedade, [Fazenda] e [Setor], recuperar o Fator e Operador pelo Produto, Variedade e [Fazenda].
  • Caso não encontre o Fator e Operador pelo Produto, Variedade e [Fazenda], recuperar o Fator e Operador pelo Produto, [Fazenda] e [Setor].
  • Caso não encontre Fator e Operador pelo Produto, [Fazenda] e [Setor], recuperar o Fator e Operador pelo Produto e [Fazenda].
  • Caso não encontre Fator e Operador pelo Produto, [Fazenda] e [Setor], recuperar o Fator e Operador pelo Produto e Variedade.
  • Caso não encontre Fator e Operador pelo Produto e Variedade, recuperar o Fator e Operador pelo Produto.
  • Caso não encontre Fator e Operador em nenhuma das situações gerar a ocorrência “Não foi possível encontrar fator para conversão”.

 Regras para identificar qual o produto será utilizado para pesquisa do apontamento:

  • Primeiro verifica se há produto Matéria Prima configurado para Ordem de Colheita, se existir será esse o produto utilizado para pesquisa do apontamento de Mão de Obra Rural.
  • Se não possuir produto Matéria prima configurado para a Ordem de Colheita, o sistema utilizará o produto Matéria Prima configurado para a Variedade, se existir será esse o produto utilizado para pesquisa do apontamento de Mão de Obra Rural.
  • Se não possuir produto Matéria Prima configurado para a Variedade o sistema utilizará o produto Matéria Prima configurado para a Cultura/Ocupação quando possuir apenas um produto associado.
  • Se não existir produto configurado para a Ordem de Colheita, nem para a Variedade, nem para a Cultura/Ocupação ou a Cultura/Ocupação possui mais de um produto associado, gerar a ocorrência “Não há produto Matéria Prima configurado para a Ordem de Colheita ou Variedade ou Cultura/Ocupação ou a Cultura/Ocupação possui mais de um produto” e não será permitida a geração da produção".

 Regras para identificar a Ordem de Colheita:

  • Recuperar a Ordem de Colheita pela Data e Local de Produção apontada no Mão de Obra Rural. Com a Data e Local de Produção, recuperar a Ordem de Colheita com data da ordem menor ou igual a data do apontamento de Mão de Obra Rural, com data de encerramento da ordem maior que a data do apontamento de Mão de Obra e com maior número de ordem de colheita, caso não encontre Ordem de Colheita gerar a ocorrência “Não há Ordem de Colheita para o Local de Produção”.

 Regras para converter a quantidade apontado no Mão de Obra Rural:

  • Se o Operador estiver definido como Adição, será a soma da quantidade apontada no apontamento de Mão de Obra Rural somada com o fator.
  • Se o Operador estiver definido como Divisão. Será a soma da quantidade apontada no apontamento de Mão de Obra Rural dividido pelo Fator.
  • Se o Operador estiver definido como Multiplicação. Será a soma da quantidade apontada no apontamento de Mão de Obra Rural multiplicado pelo Fator.
  • Se o Operador estiver definido como Subtração. Será a soma da quantidade apontada no apontamento de Mão de Obra Rural subtraindo o Fator. Se o resultado encontrando for menor ou igual a “0” (zero), gerar a ocorrência “Quantidade para gerar a produção deve ser maior que “0” (zero).

Geração de Produção

  • A geração de produção ocorre quando não encontrou nenhuma ocorrência e será acumulada por Data, Produto, Processo de Beneficiamento, Ano Agrícola, Período de Produção, [Fazenda], [Setor], [Talhão] e Ordem de Colheita.

Dados do apontamento (Header).

  • Processo: Código do Processo de Beneficiamento.
  • Unidade Administrativa: Unidade Administrativa corrente.
  • Número do Boletim: Número do Boletim gerado sequencialmente pelo sistema por unidade administrativa.
  • Data e Hora do Processo: Data do apontamento de Mão de Obra Rural.
  • Data do Movimento: Data do apontamento de Mão de Obra Rural.
  • Número da Ordem de Colheita: Número da Ordem de Colheita para o Local de Produção do apontamento de Mão de Obra Rural.
  • Número da Pesagem: Gerar Vazio.
  • Número do Lote de Beneficiamento: Gerar Vazio.
  • Status Processamento: Gerar com “0” (zero).
  • Identificador do Fator: Gerar com o identificador do fator vigente.
  • Fator: Gerar com o Fator do critério do processo de geração de Produção

 Dados do Apontamento (Detalhe)

  • Código da Classificação: Gerar Vazio.
  • Produto: Código do Produto para gerar no Estoque.
  • Número do Lote: Gerar Vazio.
  • Data e Hora do Processo: Gerar com a Data do apontamento de Mão de Obra Rural.
  • Data Movimento: Gerar com a Data do apontamento de Mão de Obra Rural.
  • Peso Bruto: Gerar com a quantidade convertida.
  • Peso Embalagem: Gerar Vazio.
  • Peso Liquido: Gerar com a quantidade convertida.
  • Peso Liquido Final: Gerar com a quantidade convertida.
  • Quantidade: Gerar com a quantidade convertida.
  • Ordem de Colheita: Número da Ordem de Colheita.
  • Número da Pesagem: Gerar Vazio.
  • Origem: Gerar com “B”
  • Depósito: Código do Deposito para gerar o Estoque.
  • Unidade Receptora: Gerar Vazio.
  • Status de Processamento: Gerar com “0” (zero).
  • Número de Referência no ERP: Gerar Vazio.
  • Custo Unitário do Produto: Gerar Vazio.
  • Custo Unitário do Produto (índice 1): Gerar Vazio.
  • Custo Unitário do Produto (índice 2): Gerar Vazio.
  • Custo Unitário do Produto (índice 3): Gerar Vazio.
  • Custo Unitário do Produto (índice 4): Gerar Vazio.
  • Custo Unitário do Produto (parâmetro): Gerar Vazio.
  • Valor médio de Venda do Produto: Gerar Vazio.
  • Valor médio de Venda do Produto (índice 1): Gerar Vazio.
  • Valor médio de Venda do Produto (índice 2): Gerar Vazio.
  • Valor médio de Venda do Produto (índice 3): Gerar Vazio.
  • Valor médio de Venda do produto (índice 4): Gerar Vazio.

-    Permite gerar a Produção quando o custo não estiver processado.

-    Permite gerar a Produção quando tem algum apontamento de Mão de Obra Rural no período e que ainda não foi gerada para o período (entre a Data Inicial e Data Final informada na tela), processo vigente (informado na tela) e para operação ou operação/verba.

-    Permite gerar a Produção quando tem Ordem de Colheita criado para o Local de Produção do Apontamento de Mão de Obra para a Operação/Verba ou Operação sem verba do processo.

-    Permite gerar a Produção quando tem Produto configurado para a Ordem de Colheita, se existir será este o produto utilizado, caso não existe produto configurado para ordem de colheita, utilizar o produto configurado para a Variedade do Local de Produção, se existir será este o produto utilizado, caso não exista produto configurado para a variedade, utilizar o produto configurado para a Cultura/Ocupação quando possuir apenas um produto associado.

-    Permite gerar a Produção, quando possuir fator e operador para conversão da quantidade apontada no Mão de Obra Rural.

-    Ao gerar a Produção, se o Processo estiver configurado para informar a “Produção Colhida” (produção de matéria prima) será verificado se “Necessita de Contrato de Venda da Produção para produto Matéria Prima”, configurado para a Cultura/Ocupação. Se estiver configurado que necessita de Contrato, será localizado o Contrato vigente de acordo com a Data de Movimento para o Local de Produção da Ordem de Colheita. Se não existir contrato é emitida a mensagem “Não há Contrato de Venda da Produção vigente nessa Data de Movimento para o Local de Produção e Produto.” e não será permitida a gravação. Se possuir contrato vigente será verificado se há algum Produto informado no contrato. Se não existir nenhum produto informado no contrato será permitida a gravação.

-    Marcar Todos: Marca todos as linhas na grid.

-    Desmarcar Todos: Desmarca todos as linhas na grid.

-    Quando não marcado, o usuário poderá selecionar separadamente as linhas na grid, pressionando a tecla [CTRL] e clicando na linha. Para selecionar um grupo de linhas pressione a tecla [SHIFT] e clique na primeira linha do grupo e na última linha do grupo.

-    Excluir: Visível quando marcado na grid “Excluir” e exclui os apontamentos de Produções gerados e selecionados e que ainda não foram integrados.

-    Integrar: Visível quando marcado na Grid “Integrar”, e integra as produções Geradas e selecionadas.

  • Permite integrar somente as Produções que foram geradas e não possuem ocorrência e que estão pendentes.

-    Reverter Integração: Visível quando marcado na grid “Reverter Integração” e reverte as produções selecionadas.

  • Permite reverter as Produções que foram integradas.

 Filtros Obrigatórios:

-    Data Inicial: Data Inicial para geração da produção e pesquisa da produção gerada, não pode ser maior que a Data Final. A Data Inicial não pode ser maior que a Data Atual e não pode ser menor ou igual a Data de Processamento de Custo.

-    Data Final: Data Final para geração da produção e pesquisa da produção gerada, não pode ser menor que a Data Inicial. A Data Final não pode ser maior que a Data Atual e não pode ser maior que a Data Inicial.

-    Processo: Informar o processo para geração de Produção, deve estar previamente cadastrado e vigente para o período informado. O processo de Beneficiamento associado ao processo de geração de produção, deve estar ativo para unidade administrativa corrente.

Especificação Técnica:

Tabelas:

Descrição

Nome

Situação

Produção Rural – Sequência

MDO_BOLRUR_SEQ

Alteração

Apontamento de Beneficiamento

BF_AP

Alteração

 

 Scripts:

 -    Script para inserir o campo de identificador do apontamento de beneficiamento que foi gerado a produção

 ALTER TABLE MDO_BOLRUR_SEQ ADD ID_BLF_AP NUMBER(38);

 COMMENT ON COLUMN MDO_BOLRUR_SEQ.ID_BF_AP IS 'Identificador de BF_AP - uso interno'; 

 -    Script para inserir a chave estrangeira de ID_BF_AP da tabela MDO_BOLRUR_SEQ 

 ALTER TABLE MDO_BOLRUR_SEQ ADD CONSTRAINT MDO_BOLRUR_SEQ9_FK_BF_AP FOREIGN KEY  (ID_BF_AP) REFERENCES BF_AP; 

 -    Script para inserir o campo de identificador do processo de geração de produção e fator de conversão

 ALTER TABLE BF_AP ADD ID_BF_PRC_PROD_FATOR NUMBER(38);

 COMMENT ON COLUMN BF_AP. ID_BF_PRC_PROD_FATOR ‘Identificador de ID_BF_PRC_PROD_FATOR - uso interno';

 ALTER TABLE BF_AP ADD QT_FATOR NUMBER(11,5);

 COMMENT ON COLUMN BF_AP.QT_FATOR IS 'Fator para conversão da quantidade apontada no Mão de Obra Rural';

 -    Script para inserir a chave estrangeira de ID_BF_PRC_PROD_FATOR da tabela BF_AP 

 ALTER TABLE BF_AP ADD CONSTRAINT BF_AP6_FK_BF_PRC_PROD_FATOR FOREIGN KEY  (ID_BF_PRC_PROD_FATOR) REFERENCES BF_PRC_PROD_FATOR; 

 Demais Funcionalidades:

 -    Informações que serão recuperadas na grid e que foram inseridas nas tabelas BF_AP, BF_PRODUCAO e BRG_BXMATERIAL_EMS: 

  • Produção:
  • Todas as produções geradas (ID_BF_AP da tabela BF_AP com ID_BF_PRC da tabela BF_AP a partir do processo informado na tela recuperar o ID_BF_PRC da tabela BF_PRC_PROD, com o identificador do processo de beneficiamento recuperar ID_BF_AP da tabela BF_AP) e associada ao Apontamento de Mão de Obra Rural (ID_BF_AP da tabela MDO_BOLRUR_SEQ).
  • Integração:
  • Todas as produções geradas e que foram integradas. (FG_STATUS_EAI da tabela BF_PRODUCAO igual a “2” – Enviado para ERP, “15” - Processado com Sucesso pelo ERP, “4” - Valorizado com Sucesso pelo ERP, “11” - Em execução do Estorno) e que possui informação na tabela (BRG_BXMATERIAL_EMS com ID_BOLETIM igual ao ID_BF_AP da tabela BF_AP).
  • Todas as Produções geradas (ID_BF_AP da tabela BF_AP) e que ainda não foram integradas (com FG_STATUS_EAI igual a “0” Aguardando Processamento) ou que foram geradas mais estão aguardando para serem processadas (ID_BF_AP da tabela BF_AP igual ao ID_BOLETIM da tabela BRG_BXMATERIAL_EMS com status = “0” Aguardando Processamento).
  • Todas as Produções Geradas (ID_BF_AP da tabela BF_AP) e que possuem erro na integração (FG_STATUS_EAI da tabela BF_PRODUCAO igual a “3” - Erro no Processamento pelo ERP, “12” - Erro na execução do estorno pelo ERP) e que possui informação na tabela (BRG_BXMATERIAL_EMS com ID_BOLETIM igual ao ID_BF_AP da tabela BF_AP). 
  • Número: NO_BOLETIM da tabela BF_AP.
  • Data: DT_MOVIMENTO da tabela BF_AP.
  • [Fazenda]: CD_UPNIVEL1 da tabela UPNIVEL1, a partir do ID_ORDCOLHEITA da tabela BF_AP, com o identificador da ordem de colheita, recuperar o ID_UPNIVEL3 da tabela ORDCOLHEITA_LC, com o identificador do [Talhão], recuperar o ID_UPNIVEL2 da tabela UPNIVEL3, com o identificador do [Setor], recuperar o ID_UPNIVEL1 da tabela UPNIVEL2, com o identificador do [Fazenda], recuperar o CD_UPNIVEL1 da tabela UPNIVEL1).
  • [Setor]: CD_UPNIVEL2 da tabela UPNIVEL2, a partir do ID_ORDCOLHEITA da tabela BF_AP, com o identificador da ordem de colheita, recuperar o ID_UPNIVEL3 da tabela ORDCOLHEITA_LC, com o identificador do [Talhão], recuperar o ID_UPNIVEL2 da tabela UPNIVEL3, com o identificador do [Setor], recuperar o CD_UPNIVEL2 da tabela UPNIVEL2. Quando não configurado “Utiliza [Setor]” em “Administração > Configuração do Local de Produção” (FG_UPNIVEL2 igual a “N” da tabela PRX_PARAM_LOCAIS) o campo [Setor] fica invisível.
  • [Talhão]: CD_UPNIVEL3 da tabela UPNIVEL3, a partir do ID_ORDCOLHEITA da tabela BF_AP, com o identificador da ordem de colheita, recuperar o ID_UPNIVEL3 da tabela ORDCOLHEITA_LC, com o identificador do [Talhão], recuperar o CD_UPNIVEL3 da tabela UPNIVEL3.
  • Ano Agrícola: CD_SAFRA da tabela SAFRA, a partir do ID_ORDCOLHEITA da tabela BF_AP, com o identificador da ordem de colheita, recuperar o ID_UPNIVEL3 da tabela ORDCOLHEITA_LC, com o identificador do [Talhão], recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período de produção, recuperar o ID_SAFRA da tabela PERIODOSAFRA, com o identificador da safra, recuperar o CD_SAFRA da tabela SAFRA. Quando não configura “Utiliza Ano Agrícola” em “Administração > Configuração do Local de Produção” (FG_SAFRA igual a “N” da tabela PRX_PARAM_LOCAIS) o campo Ano Agrícola fica invisível.
  • Período de Produção: CD_PER_SAFRA da tabela PERIODOSAFRA, a partir do ID_ORDCOLEHITA da tabela BF_AP, com o identificador da ordem de colheita, recuperar o ID_UPNIVEL3 da tabela ORDCOLHEITA_LC, com o identificador do [Talhão], recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período de produção, recuperar o CD_PER_SAFRA da tabela PERIODOSAFRA.
  • Ordem de Colheita: NO_ORDCOLHEITA da tabela ORDCOLHEITA, a partir do ID_ORDCOLHEITA da tabela BF_AP, com o identificador da ordem de colheita, recuperar o NO_ORDCOHEITA da tabela ORDCOLHEITA.
  • Produto: CD_INSUMO da tabela INSUMO, a partir do ID_INSUMO da tabela BF_PRODUCAO, com o identificador do produto, recuperar o CD_INSUMO da tabela INSUMO.
  • Quantidade: Soma da QT_TOTAL da tabela MDO_BOLRUR_DE, a partir da Data (DT_OPERACAO da tabela MDO_BOLRUR) e ID_BF_AP da tabela MDO_BOLRUR_SEQ a partir do ID_BF_AP da tabela BF_AP).
  • Quantidade Convertida: QT_UNIDADES da tabela BF_PRODUCAO.
  • Operação: CD_OPERACAO da tabela OPERACAO, a partir do ID_OPERACAO da tabela MDO_BOLRUR_SEQ, com o identificador da operação, recuperar o CD_OPERACAO da tabela OPERACAO a partir do ID_BF_AP da tabela MDO_BOLRUR_SEQ.
  • Verba: CD_MDO_VERBA da tabela MDO_VERBA, a partir do ID_MDO_VERBA da tabela MDO_BOLRUR_SEQ, com o identificador da verba, recuperar o CD_MDO_VERBA da tabela MDO_VERBA a partir do ID_BF_AP da tabela MDO_BOLRUR_SEQ.
  • Ocorrência: EAI_MSG da tabela BF_PRODUCAO.

-    Informações que serão recuperadas na grid e que não foram inseridas nas tabelas BF_AP e BF_PRODUCAO e estão apenas em tela:

  • Produção:
  • Todas as produções que não foram geradas e possuem alguma ocorrência, e não está associada ao apontamento de Mão de Obra Rural (ID_BF_AP vazio da tabela MDO_BOLRUR_DE).
  • Integração:
  • Todas as Produções que não foram geradas (ID_BF_AP da tabela BF_AP).
  • Número: Vazio.
  • Data: DT_OPERACAO da tabela MDO_BOLRUR.
  • [Fazenda]: CD_UPNIVEL1 da tabela UPNIVEL1, a partir do ID_UPNIVEL3 da tabela MDO_BOLUR_SEQ, com o identificador do [Talhão], recuperar o ID_UPNIVEL2 da tabela UPNIVEL3, com o identificador do [Setor], recuperar o ID_UPNIVEL1 da tabela UPNIVEL2, com o identificador do [Fazenda], recuperar o CD_UPNIVEL1 da tabela UPNIVEL1 e com ID_BF_AP vazio da tabela MDO_BOLRUR_SEQ.
  • [Setor]: CD_UPNIVEL2 da tabela UPNIVEL2, a partir do ID_UPNIVEL3 da tabela MDO_BOLRUR_SEQ, com o identificador do [Talhão], recuperar o UD_UPNVIEL2, com o identificador do [Setor], recuperar o CD_UPNIVEL2 da tabela UPNIVEL2 e com ID_BF_AP vazio da tabela MDO_BOLRUR_SEQ. Quando não configurado “Utiliza [Setor]” em “Administração > Configurações o Local de Produção” (FG_UPNIVEL2 igual a “N” da tabela PRX_PARAM_LOCAIS) O CAMPO [Setor] fica invisível.
  • [Talhão]: CD_UPNIVEL3 da tabela UPNIVEL3, a partir do ID_UPNIVEL3 da tabela MDO_BOLRUR_SEQ, com o identificador do [talhão], recuperar o CD_UPNIVEL3 da tabela UPNIVEL3 e com ID_BF_AP vazio da tabela MDO_BOLRUR_SEQ.
  • Ano Agrícola: CD_SAFRA da tabela SAFRA, a partir do ID_UPNIVEL3 da tabela MDO_BOLUR_SEQ, com o identificador do [Talhão], recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período de produção, recuperar o ID_SAFRA da tabela PERIODOSAFRA, com o identificador da safra, recuperar o CD_SAFRA da tabela SAFRA e com ID_BF_AP vazio da tabela MDO_BOLRUR_SEQ. Quando não configurado “Utiliza Ano Agrícola” em “Administração > Configuração do Local de Produção” (FG_SAFRA igual a “N” da tabela PRX_PARAM_LOCAIS) o campo Ano Agrícola fica invisível.
  • Período de Produção: CD_PER_SAFRA da tabela PERIODOSAFRA, a partir do ID_UPNIVEL3 da tabela MDO_BOLRUR_SEQ, com o identificador do [talhão], recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período de produção, recuperar o CD_PER_SAFRA da tabela PERIODOSAFRA e com ID_BF_AP vazio da tabela MDO_BOLRUR_SEQ.
  • Ordem de Colheita: NO_ORDCOLHEITA da tabela ORDCOLHEITA, a partir do ID_UPNIVEL3 da tabela MDO_BOLRUR_SEQ com o ID_BF_AP vazio da tabela MDO_BOLRUR_SEQ, com o identificador do [talhão], recuperar o ID_ORDCOLHEITA da tabela ORDCOLHEITA_LC, com data da ordem menor ou igual data de geração, com o identificador da ordem de colheita, recuperar o DT_ORDEM da tabela ORDCOLHEITA menor ou igual a Data de Geração e com DT_ENC da tabela ORDCOLEHITA maior ou igual a data de geração e com NO_ORDCOLHEITA maior da tabela ORDCOLHEITA). Caso não encontre ordem de colheita, gerar a ocorrência “Não foi possível recuperar Ordem de Colheita para o Ano Agrícola {0}, Período de Produção {0}, [Fazenda] {0}, [Setor] {0} e [Talhão] {0}”.
  • Produto: Recuperar o CD_INSUMO da tabela INSUMO, verificar se existe produto configurado na ordem de colheita a partir do ID_UPNIVEL3 da tabela MDO_BOLRUR_SEQ, com ID_BF_AP vazio da tabela MDO_BOLRUR_SEQ, com o identificador do [Talhão], recuperar o ID_ORDCOLHEITA da tabela ORDCOLHEITA_LC, com data da ordem menor ou igual data de geração, com o identificador da ordem de colheita, recuperar o DT_ORDEM da tabela ORDCOLHEITA menor ou igual a Data de Geração e com DT_ENC da tabela ORDCOLEHITA maior ou igual a data de geração e com NO_ORDCOLHEITA maior da tabela ORDCOLHEITA), com o identificador da ordem de colheita, recuperar o ID_INSUMO da tabela ORDCOLHEITA_LC, com identificador do produto, recuperar o CD_INSUMO da tabela INSUMO, se existir produto configurado na ordem de colheita será este o produto utilizado, se não existir produto configurado a ordem de colheita, recuperar o produto pela variedade da ordem de colheita, com o identificador da ordem de colheita, recuperar o ID_VARIEDADE da tabela ORD_COLHEITA, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE, com  identificador do produto, recuperar o CD_INSUMO da tabela INSUMO, se existir produto configurado para a variedade será este o produto utilizado, se não existir produto configurado será o produto configurado para a cultura/ocupação, com o identificador da ordem de colheita, recuperar o ID_UPNIVEL3 da tabela ORDCOLHEITA_LC, com o identificador do [Talhão], recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período de produção, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA, quando possuir apenas um produto configurado, se existir produto configurado para a ocupação será este o produto utilizado. Caso não consigo recuperar o produto gerar a ocorrência “Não há produto Matéria Prima configurado para a Ordem de Colheita ou Variedade ou Cultura/Ocupação ou a Cultura/Ocupação possui mais de um produto”.
  • Quantidade: Soma da QT_TOTAL da tabela MDO_BOLRUR_DE, a partir da Data (DT_OPERACAO da tabela MDO_BOLRUR) e ordem de colheita e com ID_BF_VAZIO da tabela MDO_BOLRUR_SEQ.
  • Fator: Recuperar o QT_FATOR da tabela BF_PRC_PROD_FATOR, vigente na data da geração (DT_OPERACAO da tabela MDO_BOLRUR maior ou igual a DT_INI_BF_PRC_PROD_VG_FT e menor ou igual a DT_FIM_BF_PROD_VG_FT (quando informado) da tabela BF_PRC_PROD_VG_FT), com o identificador da vigência recuperar o fator pelo Produto (utilizar o método para recuperar o produto), pela variedade (utilizar o método para recuperar a variedade), pelo local de produção da seguinte maneira:
    • Recuperar o Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção, [Fazenda], [Setor] e [Talhão].
    • Caso não encontre Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção, [Fazenda], [Setor] e [Talhão], recuperar o Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção, [Fazenda] e [Setor].
    • Caso não encontre Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção, [Fazenda] e [Setor], recuperar o Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção e [Fazenda].
    • Caso não encontre Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção e [Fazenda], recuperar o Fator e Operador pelo Produto, Variedade, Ano Agrícola e Período de Produção.
    • Caso não encontre Fator e Operador pelo Produto, Variedade, Ano Agrícola e Período de Produção, recuperar o Fator e Operador pelo Produto, Variedade e Ano Agrícola.
    • Caso não encontre Fator e Operador pelo Produto, Variedade e Ano Agrícola, recuperar o Fator e Operador pelo Produto, Variedade, [Fazenda] e [Setor].
    • Caso não encontre Fator e Operador pelo Produto, Variedade, [Fazenda] e [Setor], recuperar o Fator e Operador pelo Produto, Variedade e [Fazenda].
    • Caso não encontre o Fator e Operador pelo Produto, Variedade e [Fazenda], recuperar o Fator e Operador pelo Produto, [Fazenda] e [Setor].
    • Caso não encontre Fator e Operador pelo Produto, [Fazenda] e [Setor], recuperar o Fator e Operador pelo Produto e [Fazenda].
    • Caso não encontre Faro e Operador pelo Produto, [Fazenda] e [Setor], buscar o Fator e Operador pelo Produto e Variedade.
    • Caso não encontre Fator e Operador pelo Produto e Variedade, recuperar o Fator e Operador pelo Produto.
    • Caso não encontre Fator e Operador em nenhuma das situações gerar a ocorrência “Não foi possível encontrar fator para conversão”.
    • Quantidade Convertida: Será a Quantidade pelo Fator e Operador para conversão.
    • Operação: CD_OPERACAO da tabela OPERACAO, a partir do ID_OPERACAO da tabela MDO_BOLRUR_SEQ e com o ID_BF_AP vazio da tabela MDO_BOLRUR_SEQ, com o identificador da operação, recuperar o CD_OPERACAO da tabela OPERACAO.
    • Verba: CD_MDO_VERBA da tabela MDO_VERBA, a partir do ID_MDO_VERBA da tabela MDO_BOLRUR_SEQ e com ID_BF_AP vazio da tabela MDO_BOLRUR_SEQ, com o identificador da verba, recuperar o CD_MDO_VERBA da tabela MDO_VERBA.
    • Ocorrência: Ocorrência na geração de Produção
      • Não foi possível encontrar o fator para conversão.
      • Não há produto Matéria Prima configurado para a Ordem de Colheita ou Variedade ou Cultura/Ocupação ou a Cultura/Ocupação possui mais de um produto.
      • Não foi possível recuperar Ordem de Colheita para o Ano Agrícola {0}, Período de Produção {0}, [Fazenda] {0}, [Setor] {0} e [Talhão] {0}.

Geração de Produção

-    A geração da Produção será executada quando:

  • O Processamento de custo não esteja gerado (Data Inicial informada na tela menor ou igual DT_PRC_CST da tabela UNIADEADM corrente). Gerar a mensagem pop-up “Custo fechado para Unidade Administrativa em {0}”
  • A Data Inicial informada na tela deve ser menor ou igual a Data Atual, caso seja maior gerar a mensagem pop-up “Data Inicial informada posterior à Data Atual”.
  • A Data Final informada na tela deve ser menor ou igual a Data Atual, caso seja maior gerar a mensagem pop-up “Data Final informada posterior à Data Atual”.
  • A Data Inicial informada na tela deve ser menor ou igual a Data Final informada, caso seja maior gerar a mensagem pop-up “Data Final maior que a Data Inicial”.
  • O Processo de Geração de Produção deve estar ativo no período informado. Recuperar ID_BF_PRC_PROD da tabela BF_PRC_PROD para o processo informado na tela, com o identificador do processo, verificar se o processo está valido no período, Data Inicial informado na tela deve ser maior ou igual DT_INI_BF_PRC_PROD_VG e a Data final informada na tela menor ou igual a DT_FIM_BF_PRC_PROD_VD (quando informado). Se o processo estiver vigente em pelo menos um dia permitir a geração. Caso não esteja a gerar a mensagem pop-up “Processo {0} não está vigente para o período.
  • O processo de Geração de Produção deve estar associado a um processo de Beneficiamento ativo para a unidade administrativa corrente. Recuperar o ID_BF_PRC para o processo informado na tela, com o identificador do processo de beneficiamento, recuperar o FG_ATIVO e o DT_INATIVACAO da tabela BF_PRC_ADM para a unidade administrativa corrente, se não estiver ativo e a data de inativação, seja menor que a Data inicial informada na tela gerar a mensagem pop-up “Processo não está ativo para a Unidade Administrativa”. 
  • Quando tem algum apontamento de Mão de Obra Rural no período e que ainda não foi gerada para o período (Data Inicial e Data Final informada na tela), processo (informado na tela) e para operação ou operação/verba (recuperar o ID_BF_PRC_PROD da tabela BF_PRC_PROD para o processo informado na tela, com o identificador do processo, recuperar ID_OPERACAO e ID_MDO_VERBA ou ID_OPERACAO sem ID_MDO_VERBA da tabela BF_PRC_PROD_OPVB), com a operação/verba ou operação/sem verba, localizar os apontamentos de mão de obra para o dia (recuperar o ID_MDO_BOLRUR da tabela MDO_BOLRUR para DT_OPERACAO igual ao dia do período, com o identificador do apontamento, recuperar ID_UPNIVEL3, ID_OPERACAO e ID_MDO_VERBA ou ID_OPERACAO recuperado da tabela BF_PRC_PROD_OPVB com o ID_BF_AP vazio da tabela MDO_BOLRUR_SEQ).
    • Quando possuir ordem de colheita, com o identificador do [Talhão], recuperar ID_ORDCOLHEITA da tabela ORDCOLHEITA_LC, com o identificador da ordem de colheita, recuperar a ordem de colheita com DT_ORDEM menor ou igual ao dia, com DT_ENC maior ou igual a data de geração e com NO_ORDCOLHEITA maior). Caso não encontre ordem de colheita gerar a ocorrência “Não foi possível recuperar Ordem de Colheita para o Ano Agrícola {0}, Período de Produção {0}, [Fazenda] {0}, [Setor] {0} e [Talhão] {0}”.
      • Quando possuir produto, com o identificador do [talhão], recuperar  o produto da ordem de colheita (ID_INSUMO da tabela ORDCOLHEITA_LC), se existir será este o produto utilizado para encontrar o critério, se não possuir produto associado a ordem de colheita, recuperar o produto pela variedade (ID_VARIEDADE  da tabela ORDCOLHEITA_LC, com o identificador da variedade, recuperar o ID_INSUMO da tabela VARIEDADE), se existir será este produto utilizado para encontrar o critério, se não possuir produto associado a variedade, recuperar o produto pela cultura/ocupação (recuperar o ID_UPNIVEL3 da tabela ORDCOLHEITA_LC, com o identificador do período de produção, recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período de produção, recuperar o ID_OCUPACAO da tabela PERIODOSAFRA, com o identificador da ocupação, recuperar o ID_INSUMO da tabela OCUPACAO_PMPRIMA, caso encontre apenas um produto associado à cultura/ocupação, será este o produto utilizado para encontrar o critério), caso não encontre produto gerar a ocorrência “Não há produto para a Ordem de Colheita, nem para a Variedade, nem para Cultura/Ocupação ou a Cultura/Ocupação possui mais de um produto associado”.
        • Quando possuir fator, com o identificador da ordem de colheita, recuperar a  ID_VARIEDADE da tabela ORDCOLHEITA_LC, com o identificador da [talhão] da ordem de colheita, recuperar o ID_UPNIVEL2 da tabela UPNIVEL2, com o identificador do [Setor], recuperar o ID_UPNIVEL1 da tabela UPNIVEL2, com o identificador do [Talhão], recuperar o ID_PERIODOSAFRA da tabela UPNIVEL3, com o identificador do período safra, recuperar o ID_SAFRA da tabela PERIODOSAFRA e o ID_PRODUTO recuperado, com as informações recuperar a vigência do fator (recuperar o ID_BF_PRC_PROD da tabela BF_PRC_PROD para o processo informado na tela, com o identificador do processo, recuperar ID_BF_PRC_PROD_VG_FT com DT_INI_BF_PRC_PROD_VG_FT maior ou igual ao dia  e com DT_FIM_BF_PRC_PROD_VG_FT (quando informado) menor ou igual ao dia da tabela BF_PRC_PROD_VG_FT), com identificador da vigência, encontrar o fator e operador (QT_FATOR e FG_OPERADOR da tabela BF_PRC_PROD_FATOR) que será utilizado para o critério da seguinte maneira:
          • 1 - Recuperar o Fator e Operador pelo Produto, Variedade, Ano Agrícola, [Fazenda], [Setor] e [talhão] (ID_INSUMO, ID_VARIEDADE, ID_SAFRA, ID_PERIODOSAFRA, ID_UPNIVEL1, ID_UPNIVEL2, ID_UPNIVEL3 da tabela BF_PRC_PROD_FATOR para os identificadores recuperados).
          • 2 - Caso não encontre Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção, [Fazenda], [Setor] e [talhão], recuperar o Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção, [Fazenda] e [Setor] (ID_INSUMO, ID_VARIEDADE, ID_SAFRA, ID_PERIODOSAFRA, ID_SAFRA, ID_PERIODOSAFRA, ID_UPNIVEL1, ID_UPNIVEL2 e com ID_UPNIVEL3 vazio da tabela BF_PRC_PROD_FATOR para os identificadores recuperados).
          • 3 - Caso não encontre Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção, [Fazenda] e [Setor], recuperar o Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção e [Fazenda] (ID_INSUMO, ID_VARIEDADE, ID_SAFRA, ID_PERIODOSAFRA, ID_UPNIVEL1 e com ID_UPNIVEL2 e ID_UPNIVEL3 vazio da tabela BF_PRC_PROD_FATOR para os identificadores recuperados).
          • 4 - Caso não encontre Fator e Operador pelo Produto, Variedade, Ano Agrícola, Período de Produção e [Fazenda], recuperar o Fator e Operador pelo Produto, Variedade, Ano Agrícola e Período de Produção (ID_INSUMO, ID_VARIEDADE, ID_SAFRA, ID_PERIODOSAFRA e com ID_UPNVIEL1, ID_UPNIVEL2, ID_UPNIVEL3 vazio da tabela BF_PRC_PROD_FATOR para os identificadores recuperados).
          • 5 - Caso não encontre Fator e Operador pelo Produto, Variedade, Ano Agrícola e Período de Produção, recuperar o Fator e Operador pelo Produto, Variedade e Ano Agrícola (ID_INSUMO, ID_VARIEDADE, ID_SAFRA e com D_PERIODOSAFRA, ID_UPNVIEL1, ID_UPNIVEL2, ID_UPNIVEL3 vazio da tabela BF_PRC_PROD_FATOR para os identificadores recuperados).
          • 6 - Caso não encontre Fator e Operador pelo Produto, Variedade e Ano Agrícola, recuperar o Fator e Operador pelo Produto, Variedade, [Fazenda] e [Setor] (ID_INSUMO, ID_VARIEDADE, ID_UPNIVEL1, ID_UPNIVEL2 e com ID_SAFRA, ID_PERIODOSAFRA e ID_UPNIVEL3 vazio da tabela BF_PRC_PROD_FATOR para os identificadores recuperados).
          • 7 - Caso não encontre Fator e Operador pelo Produto, Variedade, [Fazenda] e [Setor], recuperar o Fator e Operador pelo Produto, Variedade e [Fazenda] (ID_INSUMO, ID_VARIEDADE, ID_UPNIVEL1 e com ID_SAFRA, ID_PERIODOSAFRA, ID_UPNIVEL2 e ID_UPNIVEL3 vazio da tabela BF_PRC_PROD_FATOR para os identificadores recuperados).
          • 8 - Caso não encontre o Fator e Operador pelo Produto, Variedade e [Fazenda], recuperar o Fator e Operador pelo Produto, [Fazenda] e [Setor] (ID_INSUMO, ID_UPNIVEL1, ID_UPNIVEL2 e com ID_VARIEDADE, ID_SAFRA, ID_PERIODOSAFRA, ID_UPNIVEL3 vazio da tabela BF_PRC_PROD_FATOR para os identificadores recuperados).
          • 9 - Caso não encontre Fator e Operador pelo Produto, [Fazenda] e [Setor], recuperar o Fator e Operador pelo Produto e [Fazenda] (ID_INSUMO, ID_UPNIVEL1 e com ID_VARIEDADE, ID_SAFRA, ID_PERIODOSAFRA, ID_UPNIVEL2 e ID_UPNIVEL3 vazio da tabela BF_PRC_PROD_FATOR para os identificadores recuperados).
          • 10 - Caso não encontre Fator e Operador pelo Produto, [Fazenda] e [Setor], buscar o Fator e Operador pelo Produto e Variedade (ID_INSUMO e ID_VARIEDADE e com ID_SAFRA, ID_PERIODOSAFRA, ID_UPNIVEL1, ID_UPNIVEL2 e ID_UPNIVEL3 vazio da tabela BF_PRC_PROD_FATOR).
          • 11 - Caso não encontre Fator e Operador pelo Produto e Variedade, recuperar o Fator e Operador pelo Produto (ID_INSUMO e com ID_VARIEDADE, ID_SAFRA, ID_PERIODOSAFRA, ID_UPNIVEL1, ID_UPNVIEL2 e ID_UPNIVEL3 vazio da tabela BF_PRC_PROD_FATOR para os identificadores localizados)
          • Caso não encontre Fator e Operador em nenhuma das situações acima gerar a ocorrência “Não foi possível encontrar fator para conversão”.

Regras para converter a quantidade apontado no Mão de Obra Rural:

  • Se o Operador estiver definido como Adição (FG_OPERADOR igual a “A” da tabela BF_PRC_PROD_FATOR), será a soma da quantidade apontada no apontamento de Mão de Obra Rural (QT_TOTAL da tabela MDO_BOLRUR_DE) somada com o fator (QT_FATOR da tabela BF_PRC_PROD_FATOR).
  • Se o Operador estiver definido como Divisão (FG_OPERADOR igual a “D” da tabela BF_PRC_PROD_FATOR). Será a soma da quantidade apontada no apontamento de Mão de Obra Rural (QT_TOTAL da tabela MDO_BOLRUR_DE) dividido pelo Fator (QT_FATOR da tabela BF_PRC_PROD_FATOR).
  • Se o Operador estiver definido como Multiplicação (FG_OPERADOR igual a “M” da tabela BF_PRC_PROD_FATOR). Será a soma da quantidade apontada no apontamento de Mão de Obra Rural (QT_TOTAL da tabela MDO_BOLRUR_DE) multiplicado pelo Fator (QT_FATOR da tabela BF_PRC_PROD_FATOR).
  • Se o Operador estiver definido como Subtração (FG_OPERADOR igual a “S” da tabela BF_PRC_PROD_FATOR). Será a soma da quantidade apontada no apontamento de Mão de Obra Rural (QT_TOTAL da tabela MDO_BOLRUR_DE) subtraindo o Fator (QT_FATOR da tabela BF_PRC_PROD_FATOR). Se o resultado encontrando for menor ou igual a “0” (zero), gerar a ocorrência “Quantidade para gerar a produção deve ser maior que “0” (zero).
  • Ao gerar a Produção, se o Processo estiver configurado para informar a “Produção Colhida” (produção de matéria prima) será verificado se “Necessita de Contrato de Venda da Produção para produto Matéria Prima”, configurado para a Cultura/Ocupação (FG_CVP_MPRIMA igual a “S” da tabela OCUPACAO). Se estiver configurado que necessita de Contrato, será localizado o Contrato vigente de acordo com a Data de Movimento para o Local de Produção da Ordem de Colheita (data de geração da produção maior ou igual a DT_INI_VALIDADE da tabela RC_CONTRATO e menor ou igual a DT_FIM_VALIDADE da tabela RC_CONTRATO quando informada), se existir utilizar o mesmo método que é utilizado na Pesagem para encontrar o Contrato de Venda para a Produção vigente na data de geração da produção para o Local de Produção e Produto. Se não existir contrato é gerada a “Não há Contrato de Venda da Produção vigente nessa Data de Movimento para o Local de Produção e Produto.” e não será permitida a gravação. 

Sequência de Verificação se tem contrato pelo local de produção da ordem de colheita:

Sequência

Ocupação

Safra

Período de Produção

[Fazenda]

[Setor]

[Talhão]

1

√  

   

   

   

   

   

2

   

   

   

   

   

 

3

   

   

   

   

 

 

4

   

   

   

 

 

 

5

   

   

 

 

 

 

6

   

   

 

   

   

 

7

   

   

 

   

 

 

8

   

 

 

   

   

 

9

   

 

 

   

 

 

10

   

 

 

 

 

 

 

  • Se possuir contrato vigente será verificado se há algum Produto informado no contrato (ID_INSUMO recuperado deve ser igual ao ID_INSUMO da tabela RC_CONTRATO_PRO), se existir e for diferente, não permitir a gravação e gerar a ocorrência “Não há Contrato de Venda da Produção vigente nessa Data de Movimento para o Local de Produção e Produto.”. Se não existir nenhum produto informado no contrato será permitida a gravação.
  • Caso não tenha nenhuma ocorrência efetuar a geração da produção:

Tabela: BF_AP (Apontamento de Beneficiamento)

Campo

Tipo

Descrição

ID_BF_AP

NUMBER(38)

Identificador de BF_AP - uso interno

ID_BF_PRC

NUMBER(38)

Recuperar o ID_BF_PRC pelo código do Processo informado na tela, com o código do processo, recuperar ID_BF_PRC da tabela BF_PRC_PROD para a unidade administrativa corrente.

ID_UNIDADEADM

NUMBER(38)

Gerar com o ID_UNIDADEADM da unidade administrativa corrente.

NO_BOLETIM

VARCHAR2(20)

Número do Boletim gerado sequencialmente pelo sistema para o processo e unidade administrativa corrente.

DT_PROCESSO

Date

Data do Processo. Será gerado com o DT_OPERACAO da tabela MDO_BOLRUR.

DT_MOVIMENTO

Date

Data do Movimento. Será gerado com o DT_OPERACAO da tabela MDO_BOLRUR.

ID_ORDCOLHEITA

NUMBER(38)

Identificador do Ordem de Colheita recuperado.

ID_APPESAGEMMP

NUMBER(38)

Gerar Vazio

ID_BF_LOTE

NUMBER(39)

Gerar Vazio

ROWVERSION

NUMBER(38)

Controle Interno

LAST_UPDATE

Date

Última data de alteração

CHANGED_BY

VARCHAR2(60)

Último usuário de alteração

FG_STATUS_EAI

VARCHAR2(1)

Status de Processamento Integração. Gerar com “0” (zero)

FG_INTEGRAR

VARCHAR2(1)

Status para integrar novamente (S-Sim, N-Não) - quando o Boletim foi Liberado. Gerar com “S-Sim”

FG_STATUS_ANT

VARCHAR2(1)

Status Anterior de Processamento - Integração. Gerar sem valor (NULL)

ID_BF_PRC_PROD_FATOR

NUMBER(38)

Identificador de ID_BF_PRC_PROD_FATOR - uso interno

QT_FATOR

NUMBER(11,5)

Fator para conversão da quantidade apontada no Mão de Obra Rural

 

 

 

Tabela: BF_PRODUCAO (Produção Final - Classificado/Beneficiado)

ID_BF_PRODUCAO

NUMBER(38)

Identificador de BF_PRODUCAO - uso interno

ID_BF_AP

NUMBER(38)

Apontamento de Produção

ID_CLASOCUPACAO

NUMBER(38)

Código da Classificação. Gerar Vazio

ID_INSUMO

NUMBER(38)

Gerar com o identificador do produto recuperado

NO_LOTE

VARCHAR2(30)

Número do Lote. Gerar Vazio

DT_PROCESSO

Date

Data/Hora do Processo. Gerar com o DT_OPERACAO da tabela MDO_BOLRUR, recuperado.

DT_MOVIMENTO

Date

Data de Movimento. Gerar com o DT_OPERACAO da tabela MDO_BOLRUR_DE.

QT_KG_BRUTO

NUMBER(10,3)

Peso Bruto. Gerar com a soma da quantidade apontada na mão de obra rural (QT_TOTAL da tabela MDO_BOLRUR_DE) convertido pelo Fator e Operador, pelo ID_INSUMO, ID_VARIEDADE, ID_UPNIVEL3, ID_OPERACAO e ID_MDO_VERBA recuperado.

QT_KG_EMBALAGEM

NUMBER(10,3)

Peso da Embalagem. Gerar Vazio

QT_KG_LIQUIDO

NUMBER(10,3)

Peso Líquido (Bruto - Embalagem). Gerar com o QT_KG_BRUTO.

QT_KG_LIQUIDOF

NUMBER(10,3)

Peso Líquido Final (Líquido - Descontos). Gerar com o QT_KG_BRUTO.

QT_UNIDADES

NUMBER(10,3)

Quantidade. Gerar com o QT_KG_BRUTO.

ID_ORDCOLHEITA

NUMBER(38)

Número da Ordem de Colheita. Gerar com o identificador da Ordem de Colheita recuperado.

ID_APPESAGEMMP

NUMBER(38)

Número da Pesagem. Gera vazio

FG_ORIGEM

VARCHAR2(1)

Origem (M-Pesagem Matéria Prima, B -Beneficiamento). Gerar com “B”.

ID_DEPOSITO

NUMBER(38)

Recuperar o ID_DEPOSITO pelo código do Processo informado na tela, com o código do processo, recuperar ID_DEPOSITO da tabela BF_PRC_PROD para a unidade administrativa corrente.

ID_UNIRECEPTORA

NUMBER(38)

Código da Unidade Receptora. Gerar vazio

FG_STATUS_EAI

VARCHAR2(1)

Status de Processamento Integração. Gerar com “0” (zero)

NO_REF_ERP

VARCHAR2(32)

Número de Referência no ERP. Gerar vazio

QT_VALOR

NUMBER(20,10)

Custo unitário do produto (moeda corrente). Gerar Vazio

QT_VALOR1

NUMBER(20,10)

Custo unitário do produto (índice 1). Gerar Vazio

QT_VALOR2

NUMBER(20,10)

Custo unitário do produto (índice 2). Gerar Vazio

QT_VALOR3

NUMBER(20,10)

Custo unitário do produto (índice 3). Gerar Vazio

QT_VALOR4

NUMBER(20,10)

Custo unitário do produto (índice 4). Gerar Vazio

EAI_MSG

VARCHAR2(138)

Mensagem de retorno do ERP. Gerar Vazio

FG_STATUS_ANT

VARCHAR2(1)

Status Anterior à Liberação do Boletim. Gerar com “0” (zero)

FG_INTEGRAR

VARCHAR2(1)

Status para integrar novamente (S-Sim, N-Não) - quando o Boletim foi Liberado. Gerar com S-Sim

QT_VALOR_ANT

NUMEBER(16,10)

Custo unitário do produto, gerado através do valor do parâmetro. Gerar Vazio

VL_MEDIO

NUMBER(16,6)

Valor médio de venda do produto (moeda corrente). Gerar Vazio.

VL_MEDIO1

NUMBER(16,6)

Valor médio de venda do produto (índice 1). Gerar Vazio.

VL_MEDIO2

NUMBER(16,6)

Valor médio de venda do produto (índice 2). Gerar Vazio.

VL_MEDIO3

NUMBER(16,6)

Valor médio de venda do produto (índice 3). Gerar Vazio.

VL_MEDIO4

NUMBER(16,6)

Valor médio de venda do produto (índice 4). Gerar Vazio

DT_ESTOQUE

Date

Data de Movimentação de Estoque. Gerar Vazio

ROWVERSION

NUMBER(38)

Controle Interno

LAST_UPDATE

Date

Última data de alteração

CHANGED_BY

VARCHAR2(60)

Último usuário de alteração

 

 

 

Tabela: MDO_BOLRUR_SEQ (Produção Rural – Sequência)

ID_BF_AP

NUMBER(38)

Identificador de BF_AP - uso interno. Efetuar UPDATE com o identificador apontamento de beneficiamento que está sendo gerado com base no apontamento de mão de obra.

Quando marcar na grid “Integrar” recuperar na lista

-    Recuperar todos as produções geradas e que não foram integradas e ou que possuem erro na integração; (FG_STATUS_EAI igual a “0” da tabela BF_PRODUCAO e não possui informação da tabela BRG_BXMATERIAL_EMS) ou (FG_STATUS_EAI igual a “3” da tabela BF_PRODUCAO e FG_STATUS igual a “5” da tabela BRG_BXMATERIAL_EMS).

Quando for executar a integração recuperar novamente os dados e verificar se as informações estão com a mesma situação:

Tabela: BRG_BXMATERIAL_EMS (Tabela de Interface ERP - Baixa de Material (integração com EMS))

ID_BOLETIM

NUMBER(38)

Identificador do boletim (idêntico ao dado de origem). Será gerado com ID_BF_AP da tabela BF_AP.

ID_BOLETIM_DE

NUMBER(38)

Identificador do Detalhe do boletim. Será gerado com ID_BF_PRODUCAO da tabela BF_PRODUCAO a partir do ID_BF_AP.

FG_ORIGEM

VARCHAR2(1)

Tipo de Origem [TAB01]. Gerar com “X” Beneficiamento

DT_CONSUMO

Date

Data do Consumo. Gerar com o DT_MOVIMENTO da tabela BF_PRODUCAO.

CD_MATERIAL_ERP

VARCHAR2(20)

Código do Material no ERP. CD_INT_ERP da tabela INSUMO, a partir do ID_INSUMO da tabela BF_PRODUCAO, com o identificador do produto, recuperar CD_INT_ERP da tabela INSUMO.

QT_CONSUMO

NUMBER(38,4)

Quantidade de Consumo. QT_UNIDADES da tabela BF_PRODUCAO

CD_DEPOSITO

VARCHAR2(10)

Código do Deposito no ERP. Recuperar o CD_INT_ERP da tabela DEPOSITO, a partir do ID_DEPOSITO da tabela BF_PRODUCAO, com o identificador do deposito, recuperar o CD_INT_ERP da tabela DEPOSITO.

CD_CONTA

VARCHAR2(40)

Código da Conta no ERP. CD_CONTA_ERP da tabela INSUMO_ENTERP a partir do ID_INSUMO da tabela BF_PRODUCAO, com o identificador do produto, recuperar o CD_CONTA_ERP da tabela INSUMO_ENTERP para a unidade administrativa corrente.

CD_CCUSTO

VARCHAR2(20)

Código do Centro de Custo no ERP. CD_CCUSTO_ERP da tabela CCUSTO, a partir do ID_INSUMO da tabela BF_PRODUCAO, com o identificador do produto, recuperar o ID_CCUSTO da tabela INSUMO_ENTERP para a unidade administrativa corrente, com o identificador do centro de custo, recuperar CD_INT_ERP da tabela CCUSTO.

CD_UNI_MEDIDA

VARCHAR2(5)

Código da Unidade de Medida. CD_UNI_MEDIDA da tabela UNIMEDIDA, a partir do ID_INSUMO da tabela BF_PRODUCAO, com o identificador do produto, recuperar o ID_UNIMEDIDA da tabela INSUMO, com o identificador da unidade de medida, recuperar o CD_UNI_MEDIDA da tabela UNIMEDIDA.

CD_UADM_ERP

VARCHAR2(20)

Código da Unidade Administrativa ERP. CD_INT_ERP da tabela UNIDADEADM, a partir do ID_UNIADEADM da tabela BF_AP, com o identificador da unidade administrativa, recuperar o CD_INT_ERP da tabela UNIADADEADM

CD_ESTABELEC

VARCHAR2(20)

Código do Estabelecimento. CD_FILIAL da tabela FILIAL, a partir do ID_UNIDADEADM da tabela BF_AP, com o identificador da unidade administrativa, recuperar o ID_FILIAL da tabela UNIDADEADM, com o identificador da filial, recuperar o CD_FILIAL da tabela FILIAL.

QT_VALOR

NUMBER(16,6)

Valor do Consumo (informado pelo ERP). Gerar vazio

QT_VALOR1

NUMBER(16,6)

Valor do Consumo (informado pelo ERP - índice 1). Gerar vazio

QT_VALOR2

NUMBER(16,6)

Valor do Consumo (informado pelo ERP - índice 2). Gerar vazio.

QT_VALOR3

NUMBER(16,6)

Valor do Consumo (informado pelo ERP - índice 3). Gerar vazio

QT_VALOR4

NUMBER(16,6)

Valor do Consumo (informado pelo ERP - índice 4). Gerar Vazio

FG_TPMOVTO

VARCHAR2(6)

Tipo de Movimentação. Gerar da mesma maneira que é feito no Finalizar do Beneficiamento.

FG_TPDOCTO

VARCHAR2(2)

Tipo de Documento. Gerar da mesma maneira que é feito no Finalizar do Beneficiamento.

DE_MENSAGEM

VARCHAR2(500)

Mensagem de Retorno (sucesso/erro/aviso). Gerar da mesma maneira que é feito no Finalizar do Beneficiamento

FG_STATUS

VARCHAR2(1)

Status de Processamento [TAB02]. Gerar com “0” (zero)

FG_OPERACAO

VARCHAR2(1)

Tipo de Operação. Gerar vazio

DTHR_GERACAO

Date

Data/Hora de Geração

DTHR_PROCESSAMENTO

Date

Data/Hora de Processamento

NUM_TRANS

VARCHAR2(32)

Número da transação ESB. Gerar da mesma maneira que é feito no Finalizar do Beneficiamento.

NO_DOC_ERP

VARCHAR2(32)

Número do documento ERP

DT_ATUALIZACAO

Date

Data de Atualização

NO_LOTE

VARCHAR2(30)

Número do Lote. Gerar da mesma maneira que é feito no finalizar do Beneficiamento.

NO_OS

NUMBER(38)

Número da Ordem de Serviço de Campo. Gerar vazio

CD_UNI_NEGOCIO

VARCHAR2(10)

Código da Unidade de Negócio ERP (se aplicável). Gerar vazio

NO_BOLETIM

VARCHAR2(22)

Número do Boletim. NO_BOLETIM da tabela BF_AP

CD_REFERENCIA

VARCHAR2(20)

Código de Referência no ERP. Gerar vazio

CD_LOCALIZACAO

VARCHAR2(20)

Código da Localização no ERP. Gerar vazio

CD_INT_UUID

VARCHAR2(200)

Código de Identificação única da mensagem. Gerar vazio

DE_MSG_ERP

VARCHAR2(1000)

Mensagem Envio/Sucesso/Erro (Mensagem maiores). Gerar vazio

MOVEMENTINTERNALID

VARCHAR2(50)

Código de movimento retornado pelo ERP. Gerar vazio.

ID_UNIDADEADM

NUMBER(38)

Unidade Administrativa. ID_UNIDADEADM da tabela BF_AP

CD_ORDEM_ERP

VARCHAR2(20)

Código da Ordem de Produção Interna ERP. Gerar vazio.

DT_ESTOQUE

Date

Data de Movimentação de Estoque. Gerar vazio.

Quando marcar na grid “Reverter Integração” recuperar na lista

-    Recuperar na grid para reversão as produção geradas e processadas pelo ERP quando o status da tabela de produção (FG_STATUS_EAI igual a “15 da tabela BF_PRODUÇÃO e FG_STATUS igual a “2” da tabela BRG_BXMATERIAL_EMS) ou (FG_STATUS_EAI igual a “15” da tabela BF_PRODUCAO e FG_STATUS igual a “4” da tabela BRG_BXMATERIAL_EMS) ou (FG_STATUS_EAI igual a “4” da tabela BF_PRODUCAO ou FG_STAUTS igual a “6” da tabela BRG_BXMATERIAL_EMS) ou (FG_SATATUS_EAI igual a “12” da tabela BF_PRODUCAO e FG_STATUS igual a “12” da tabela BRG_BXMATERIAL_EMS).

Quando for executar a reversão recuperar novamente os dados e verificar se as informações estão com a mesma situação.

Caso consiga efetuar a reversão da integração, alterar o FG_STATUS_EAI da tabela BF_PRODUCAO para “11” e o FG_STATUS da tabela BRG_BXMATERIAL_EMS para “10”.

FG_STATUS da tabela BF_PRODUCAO

FG_STATUS da tabela BRG_BXMATERIAL_EMS

2 - Enviado para o ERP

0 - Aguardando execução

2 - Enviado para o ERP

1 - Em Execução

3 - Erro no Processamento pelo ERP

5 -  Erro atualizado pelo PIMS

15 - Processado com Sucesso pelo ERP

2 - Enviado para o ERP

15 - Processado com Sucesso pelo ERP

4 - Valorizado com Sucesso pelo ERP

4 - Valorizado com Sucesso pelo ERP

6 - Valorizado pelo PIMS

11 - Em execução do Estorno

10 - Aguardando Execução do Estorno

12 - Erro na execução do estorno pelo ERP

12 - Erro na execução do estorno pelo ERP

0 - Aguardando execução

Exclui BRG

Quando marcar na grid “Excluir” recuperar na lista

-    Recuperar na grid todas as produções geradas, que não foram processadas pelo ERP ou que possui erro no Processamento pelo ERP. (FG_STATUS_EAI igual a “0” da tabela BF_PRODUCAO e sem informação na tabela BRG_BXMATERIAL_EMS) ou (FG_STATUS_EAI igual “3” da tabela BF_PRODUCAO e FG_STATUS igual “5” da tabela BRG_BXMATERIAL_EMS). 

Quando for executar a exclusão recuperar novamente os dados e verificar se as informações estão com a mesma situação.

Caso consiga efetuar a exclusão, apagar as informações da tabela BF_AP, BF_PRODUCAO e BRG_BXMATERIAL_EMS e dar UPDATE no ID_BF_AP para vazio da tabela MDO_BOLRUR_SEQ).

FG_STATUS da tabela BF_PRODUCAO

FG_STATUS da tabela BRG_BXMATERIAL_EMS

2 - Enviado para o ERP

0 - Aguardando execução

2 - Enviado para o ERP

1 - Em Execução

3 - Erro no Processamento pelo ERP

5 -  Erro atualizado pelo PIMS

15 - Processado com Sucesso pelo ERP

2 - Enviado para o ERP

15 - Processado com Sucesso pelo ERP

4 - Valorizado com Sucesso pelo ERP

4 - Valorizado com Sucesso pelo ERP

6 - Valorizado pelo PIMS

11 - Em execução do Estorno

10 - Aguardando Execução do Estorno

12 - Erro na execução do estorno pelo ERP

12 - Erro na execução do estorno pelo ERP

0 - Aguardando execução

Exclui BRG

 

14-Alteração no Processamento de Custo para não permitir processar o custo, quando existir Produção sem gerar estoque.

 Objetivo: Alteração do Processamento de Custo para não permitir processar o custo, quando existir Produção sem gerar estoque

 Menu: Processamentos > Processamento de Custos > Processamento Custo

Entrada de Menu: CSTP0016

Esboço da tela:

Demais Validações:

-    Antes de iniciar o processamento de custo, verificar se existe Geração de Produção vigente definida em “Tabelas > Beneficiamento> Processo para Geração de Produção”, configurada para as Unidades Administrativas que serão processadas e que ainda não foram executadas ou pendente. Caso exista não iniciar o processamento e gerar a mensagem pop-up de lista com as ocorrêcia “Existem Processo de Geração de Produção, com operação/verba para o período, com critérios validos e que não foram geradas”.

Especificação técnica:

-    Inserir a descrição em vermelho no Manual do Sistema.

Demais Validações:

-    Verificar se existe Geração de Produção definida em “Tabelas > Beneficiamento > Processo para Geração de Produção” vigente, com operação/verba e com critérios validos da seguinte maneira:

  • O processamento do Custo é executado para o mês, mais para recuperar o processo de Geração de Produção deve ser verificado diariamente. Exemplo. Se for executar o processo para o mês Novembro, a verificação do cadastro de processo deve ser feita diariamente, primeiro para o 01/11, depois 02/11, depois 03/11 e assim por diante.
  • Recuperar os processos de Geração de Produção vigente com o Processo de Beneficiamento ativo para Unidade Administrativa que será processada o custo (recuperar ID_BF_PRC da tabela BF_PRC_PROD para a unidade administrativa que está processando o custo, com o identificador do processo de beneficiamento e da unidade administrativa, verificar se o processo está ativo, FG_ATIVO da tabela BF_PRC_ADM e com DT_INATIVACAO maior ou igual a Data de Geração).
  • Recuperar os processos vigentes no Período de Processamento do Custo, com a Data de Geração verificar se o processo está vigente (Data de Geração deve ser maior ou igual a DT_INI_BF_PRC_PROD_VG e menor ou igual a DT_FIM_BF_PRX_PROD_VG (quando informado), se o processo estiver vigente recuperar o ID_OPERACAO e ID_MDO_VERBA da tabela BF_PRC_PROD_OPVB), quando possui verba associado a operação buscar os apontamentos para a operação e verba e se não possuir verba associado a operação buscar os apontamentos para a operação sem a verba, porém não considerar nesta pesquisa a operação e verba que foi pesquisado anteriormente, se for a mesma operação, (recuperar ID_MDO_BOLRUR dos apontamentos para o dia DT_OPERACAO da tabela MDO_BOLRUR, com o identificador do dia e com o identificador da operação e verba, recuperar o ID_UPNIVEL3 com o ID_BF_AP vazio da tabela MDO_BOLRUR_SEQ). Caso existe apontamento de mão de obra que não foi gerado, não permitir o processo e gerar mensagem pop-up e lista “Existem Processo de Geração de Produção, com operação/verba para o período, com critérios validos e que não foram geradas”.

-    Verificar se existe processo de Geração de Produção que foi executado, mas não foi feito a integração da seguinte maneira:

  • Recuperar os Processos de Beneficiamento associado ao processo de Geração de Produção (ID_BF_PRC da tabela BF_PRC_PROD), com o identificador do processo de beneficiamento, recuperar os apontamento que foram gerados e que estão com status “0” na tabela de produção (FG_STATUS_EAI igual a “0” da tabela BF_PRODUCAO) ou com status “2” na tabela de produção e “0” na tabela intermediária (FG_STATUS_EAI igual a “2” da tabela BF_PRODUCAO e FG_STATUS igual a “0” da tabela BRG_BXMATERIAL_EMS) ou com status “2” na tabela de produção e com “1” na tabela intermediária (FG_STATUS_EAI igual a “2” da tabela BF_PRODUCAO e FG_STATUS igual “1” da tabela BRG_BXMATERIAL_EMS) ou com status “3” na tabela produção e com status “5” na tabela  intermediária (FG_STATUS_EAI igual a “3” da tabela BF_PRODUCAO e FG_STATUS igual a “5” da tabela BRG_BXMATERIAL_EMS) ou com status igual a “11” da tabela de produção e com status igual a “10”  da tabela intermediária (FG_STATUS_EAI igual a “11” da tabela BF_PRODUCAO e FG_STATUS igual a “10” da tabela BRG_BXMATERIAL_EMS) ou com status igual a “12”  da tabela de produção e com status igual a “12” da tabela intermediária (FG_STATUS_EAI da tabela BF_PRODUCAO e com FG_STATUS igual a “12” da tabela BRG_BXMATERIAL_EMS).
    • Caso encontre alguma produção nesta situação, não executar o processamento de custo e gerar a mensagem pop-up com a ocorrência “Existem Geração de Produções que foram geradas e ainda não foram integradas”.

 

15-Alteração no Apontamento de Beneficiamento para não permitir apontar e nem recuperar, quando o Processo de beneficiamento estiver associado ao Processo para Geração de Produção.

 Objetivo: Alteração no Apontamento de Beneficiamento para não permitir apontar e nem recuperar, quando o Processo e beneficiamento estiver associado ao Processo para Geração de Produção

 Menu: Apontamentos > Beneficiamento > Apontamento de Beneficiamento

Entrada de Menu: BNFM0005

Esboço da tela:

Campos Obrigatórios:

-    Processo: Processo de Beneficiamento. O Processo deve estar previamente cadastrado, Ativo para a Unidade Administrativa corrente (se a data do Beneficiamento for menor ou igual à Data de Inativação, será considerado como Ativo), Permitido para o usuário conectado ao sistema e não pode estar associado a um Processo para Geração de Produção em “Tabelas > Beneficiamento > Processos para Geração de Produção”.

Se possuir somente um Processo Ativo para Unidade Administrativa corrente e Permitido para o usuário corrente, esse Processo já será carregado automaticamente e permanecerá desabilitado.

Ao informar o Processo, a tela de Beneficiamento será atualizada com as informações (Processos Anteriores, Dados, Produtos e Características) configuradas para o Processo.

Filtros

Demais Filtros:

-    Processo: Processo de beneficiamento. Se informada a Ocupação, deverá filtrar os Processos da Cultura/Ocupação informada. Se informado não pode estar associado a um Processo de Geração de Produção em “Tabelas > Beneficiamento > Processo para Geração de Produção”.

Especificação técnica:

-    Inserir a descrição em vermelho no Manual do Sistema.

-    Não permitir informar um Processo que esteja associado a Processo para Geração de Produção em “Tabelas > Beneficiamento > Processos para Geração de Produção”. Com o código do Processo de beneficiamento informado na tela, recuperar o ID_BF_PRC da tabela BF_PRC, com o identificador do processo, recuperar o ID_BF_PRC_PROD da tabela BF_PRC_PROD, caso esteja associado não permitir informar e gerar a mensagem pop-up “Processo de Beneficiamento com código {0} não cadastrado ou não é valido para o usuário/Unidade Administrativa ou está associado a um Processo para Geração de Produção”.

-    Não permitir informar no Filtro um Processo de beneficiamento que esteja associado ao Processo para Geração de Produção em “Tabelas Beneficiamento > Processo para Geração de Produção”. Com o código do Processo de beneficiamento informado na tela, recuperar o ID_BF_PRC da tabela BF_PRC, com o identificador do processo, recuperar o ID_BF_PRC_PROD da tabela BF_PRC_PROD, caso esteja associado não permitir informar e gerar a mensagem pop-up “Processo de Beneficiamento com código {0} não cadastrado ou não é valido para o usuário/Unidade Administrativo ou está associado a um Processo para Geração de Produção”.

-    Não recuperar na lista da procura do processo, os Processos que estão associados a um Processo para Geração de Produção. Recuperar o ID_BF_PRC da tabela BF_PRC, com o identificador do processo, recuperar o ID_BF_PRC_PROD da tabela BF_PRC_PROD, se estiver na lista não recuperar.

-    Quando filtrar não recuperar os apontamentos que estão associado a um Processo de beneficiamento que esteja associado a um Processo para Geração de Produção. Recuperar ID_BF_PRC da tabela BF_AP, com o identificador do processo, recuperar o ID_BF_PRC_PROD da tabela BF_PRC_PROD, se estiver na lista não recuperar.

 

16-Alteração na Liberação de Boletins, para não permitir informar Processo de beneficiamento, quando estiver associado ao Processo para Geração de Produção.

 Objetivo: Alteração na Liberação de Boletins, para não permitir informar Processo de beneficiamento, quando estiver associado ao Processo para Geração de Produção

 Menu: Apontamentos > Controle de Boletins > Liberação de Boletins

 Entrada de Menu: CFCP0056

 Esboço da tela:

Filtros

Demais Campos:

-    Processo: Processo de Beneficiamento do boletim a ser liberado. Campo obrigatório quando o Tipo do Boletim a ser filtrado for Beneficiamento. Filtro disponível somente para boletins de Beneficiamento. Não permite informar um Processo de beneficiamento que esteja associado ao um Processo para Geração de Produção em “Tabelas > Beneficiamento > Processos para Geração de Produção”.

 Especificação técnica:

 -    Inserir a descrição em vermelho no Manual do Sistema.

 -    Não permitir informar um Processo que esteja associado ao Processo para Geração de Produção em “Tabelas > Beneficiamento > Processos para Geração de Produção”. Com o código do Processo de beneficiamento informado na tela, recuperar o ID_BF_PRC da tabela BF_PRC, com o identificador do processo, recuperar o ID_BF_PRC_PROD da tabela BF_PRC_PROD, caso esteja associado não permitir informar e gerar a mensagem pop-up “Processo de Beneficiamento com código {0} não cadastrado ou não é valido para o usuário/Unidade Administrativa ou está associado a um Processo para Geração de Produção”.

 

17-Alteração na Finalização de Boletim, para não permitir informar Processo de beneficiamento, quando estiver associado ao Processo para Geração de Produção.

 Objetivo: Alteração na Finalização de Boletim, para não permitir informar Processo de beneficiamento, quando estiver associado ao Processo para Geração de Produção

Menu: Apontamentos > Controle de Boletins > Finalização de Boletim

Entrada de Menu: CFCM0076

Esboço da tela:

Demais Campos:

-    Processo: Processo de Beneficiamento. Somente em apontamentos de Beneficiamento. Não permite informar um Processo de beneficiamento que esteja associado ao um Processo para Geração de Produção em “Tabelas > Beneficiamento > Processos para Geração de Produção”. 

Filtros:

-    Processo: Processo de Beneficiamento. Filtro somente disponível em apontamentos de Beneficiamento. Não permite informar um Processo de beneficiamento que esteja associado ao um Processo para Geração de Produção em “Tabelas > Beneficiamento > Processos para Geração de Produção”. 

Especificação técnica:

-    Inserir a descrição em vermelho no Manual do Sistema.

-    Não permitir informar um Processo que esteja associado ao Processo para Geração de Produção em “Tabelas > Beneficiamento > Processos para Geração de Produção”. Com o código do Processo de beneficiamento informado na tela, recuperar o ID_BF_PRC da tabela BF_PRC, com o identificador do processo, recuperar o ID_BF_PRC_PROD da tabela BF_PRC_PROD, caso esteja associado não permitir informar e gerar a mensagem pop-up “Processo de Beneficiamento com código {0} não cadastrado ou não é valido para o usuário/Unidade Administrativa ou está associado a um Processo para Geração de Produção”.

 

18-Alteração no Apontamento de Produção Rural, para não permitir Incluir/Alterar ou Excluir os apontamentos que foram utilizados no Processo para Geração de Produção.

 Objetivo: Alteração no Apontamento de Produção Rural, para não permitir incluir/Alterar ou Excluir os apontamentos que foram utilizados no Processo para Geração de Produção.

 Menu: Apontamentos > Mão de Obra Rural > Apontamento de Produção Rural

Entrada de Menu: MDOP0019

Esboço da tela:

Equipe

Demais Validações:

-    Não permite excluir uma Equipe/Dia, quando existe sequência que foi utilizado no Processo para Geração de Produção. Quando tentar excluir o apontamento, o sistema emite a mensagem pop-up “Operação não Permitida! Existe sequência utilizada no Processo para Geração de Produção”.

Sequência:

Demais Validações:

-    Não permite alterar/excluir a sequência que foi utilizado no Processo para Geração de Produção. Quando tentar excluir a sequência o sistema emite a mensagem pop-up “Operação não permitida! Sequência utilizada no Processo para Geração de Produção” 

Apontamento:

Demais Validações “Salvar”.

-    Não permite Salvar o Apontamento para a sequência que foi utilizado no Processo para Geração de Produção. Caso tente salvar, o sistema emite a mensagem pop-up “Operação não permitida! Sequência utilizada no Processo para Geração de Produção”.

Funcionário Outra Equipe

Demais Validações “Salvar”.

-    Não permite Salvar o Apontamento para a sequência que foi utilizado no Processo para Geração de Produção. Caso tente salvar, o sistema emite a mensagem pop-up “Operação não permitida! Sequência utilizada no Processo para Geração de Produção”. 

Especificação técnica: 

-    Inserir a descrição em vermelho no Manual do Sistema. 

Equipe:

-    Não permitir excluir o apontamento que possui sequência utilizado no Processo para geração de Produção. Para o dia/equipe selecionado recuperar o ID_MDO_BOLRUR da tabela MDO_BOLRUR, com o identificador do apontamento, recuperar o ID_BF_AP da tabela MDO_BOLRUR_SEQ, caso existe alguma sequência com o ID_BF_AP diferente de nulo (null) não permitir a exclusão e gerar a mensagem pop-up “Operação não permitida! Existem sequências utilizadas no Processo para Geração de Produção”. 

Sequência:

-    Não permitir alterar/excluir a sequência que foi utilizada no Processo para geração de Produção. Para a sequência selecionada recuperar o ID_BF_AP da tabela MDO_BOLRUR_SEQ, caso for diferente de nulo (null) não permitir a alteração ou exclusão e gerar a mensagem pop-up “Operação não Permitida! Sequência utilizada no Processo para Geração de Produção”. 

Apontamento:

-    Não permitir salvar o apontamento para a sequência que foi utilizada no Processo para Geração de Produção. Para sequência selecionada recuperar o ID_BF_AP da tabela MDO_BOLRUR_SEQ, caso for diferente de nulo (null) não permitir salvar o apontamento e gerar a mensagem pop-up “Operação não Permitida! Sequência utilizada no Processo para Geração de Produção”. 

Funcionário Outra Equipe:

-    Não permitir salvar o apontamento para a sequência que foi utilizada no Processo para Geração de Produção. Para sequência selecionada recuperar o ID_BF_AP da tabela MDO_BOLRUR_SEQ, caso for diferente de nulo (null) não permitir salvar o apontamento e gerar a mensagem pop-up “Operação não Permitida! Sequência utilizada no Processo para Geração de Produção”.

 

19-Alteração no Processamento de Mão de Obra Rural, para calcular a Quantidade Total quando os apontamentos não foram utilizados no Processo para Geração de Produção.

 Objetivo: Alteração no Processamento de Mão de Obra Rural, para calcular a Quantidade total quando os apontamentos não foram utilizados no Processo para Geração de Produção.

 Menu: Processamento > Mão de Obra Rural > Processamento de Mão de Obra Rural

 Entrada de Menu: MDOP0022

 Esboço da tela:

Funcionalidades

-    Buscar a Data do Último Processamento de Mão de Obra Rural e somar mais um dia nesta data e valorar os apontamentos diariamente até Data Final de Processamento informada para a Unidade Administrativa corrente.

  •  Selecionar os registros de apontamentos com data de operação igual ao dia a ser processado.
    •  Os apontamentos para este dia terão recalculados a quantidade total, o valor total e as verbas auxiliares para o Dia/Equipe/Funcionário. Quando for falta, será recalculado somente o valor total.
      •  Cálculo da Quantidade Total. (Somente calculado quando a sequência não foi utilizada no Processo para Geração de Produção).
        • Para cada Verba apontada na Sequência........

 Especificação técnica:

 -    Inserir a descrição em vermelho no Manual do Sistema.

 Cálculo do Quantidade Total:

-    Calcular a quantidade total quando a sequência não foi utilizada (ID_BF_AP vazio da tabela MDO_BOLRUR_SEQ) no Processo para Geração de Produção.

 

20-Alteração na pesquisa do produto associado a variedade no cadastro de Variedades.

Objetivo: Alteração no cadastro de Variedades, onde o produto da variedade deve pertencer aos Produtos Matéria Prima configurados na Cultura/Ocupação da Variedade.

Menu: Tabelas > Culturas > Variedade / Híbridos

Entrada de Menu: CFCM0022

Esboço da tela:

Demais Campos:

-    Produto: Produto referente à Matéria Prima relacionado à Variedade. Quando a Variedade não possuir Produto Matéria Prima relacionado utilizar o Produto relacionado à Cultura/Ocupação. No módulo de beneficiamento, quando o Processo estiver configurado para informar a Produção Colhida será assumido o Produto Matéria Prima configurado para a Variedade, se não possuir Produto Matéria Prima relacionado à Variedade será assumido o Produto Matéria Prima configurado na Cultura/Ocupação. O produto deve estar previamente cadastrado e pertencer aos Produtos Matéria Prima configurados na Cultura/Ocupação da Variedade.

 Especificação técnica:

 -    O produto informado ou a pesquisa do produto associado a variedade deve pertencer aos Produtos Matéria Prima configurados na Cultura/Ocupação (tabela OCUPACAO_PMPRIMA) da variedade.

-    Inserir os distintos produtos das variedades (campo ID_INSUMO tabela VARIEDADE) associadas à Cultura/Ocupação na tabela de Produtos Matéria Prima associados à Cultura/Ocupação (tabela OCUPACAO_PMPRIMA):

INSERT

INTO OCUPACAO_PMPRIMA

  (

    ID_OCUPACAO_PMPRIMA,

    ID_OCUPACAO,

    ID_INSUMO,

    ROWVERSION,

    LAST_UPDATE,

    CHANGED_BY

  )

SELECT ROWNUM*(SELECT ROUND(DBMS_RANDOM.VALUE(9999999999,9999999999999),0) FROM DUAL) ID_OCUPACAO_PMPRIMA,

  OPM.ID_OCUPACAO,

  OPM.ID_INSUMO,

  1,

  SYSDATE,

  'PRX'

FROM

  (SELECT DISTINCT V.ID_INSUMO,

    V.ID_OCUPACAO

  FROM VARIEDADE V

  WHERE V.ID_INSUMO IS NOT NULL

  ORDER BY V.ID_INSUMO) OPM

WHERE NOT EXISTS

  (SELECT OCP.ID_OCUPACAO_PMPRIMA

     FROM OCUPACAO_PMPRIMA OCP

     WHERE OCP.ID_INSUMO = OPM.ID_INSUMO

     AND OCP.ID_OCUPACAO = OPM.ID_OCUPACAO);    

     COMMIT;


 

Dicionário de Dados

 


 

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