Histórico da Página
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.
- Ramal:
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”.
- 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:
- 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 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}”.
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........
- Cálculo da Quantidade Total. (Somente calculado quando a sequência não foi utilizada no Processo para Geração de Produção).
- 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.
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. |
---|