Histórico da Página
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|
Informações Gerais
Especificação | |||
Produto | Logix | Módulo | WMS |
Segmento Executor | Supply Chain - InovaçãoLogística | ||
Projeto1 | IRM1 | ||
Requisito1 | Subtarefa1 | ||
Chamado2 |
| ||
País | ( x ) Brasil ( ) Argentina ( ) Mexico México ( ) Chile ( ) Paraguai ( ) EquadorEquador ( ) USA ( ) Colombia Colômbia ( ) Outro _____________. | ||
Outros | <Caso necessário informe outras referências que sejam pertinentes a esta especificação. Exemplo: links de outros documentos ou subtarefas relacionadas>. |
Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos).
Objetivo
geralGeral
Possibilitar o usuário executar que os processos de separação, conferência, pesagem e embarque ; de forma paralela.sejam executados paralelamente.
Objetivo
específicoEspecífico
Possibilitar o usuário executar os processos de pesagem e embarque de forma paralela, retirando a obrigatoriedade de concluir a etapa anterior.
Mapa Mental
Na sequencia, sequência será exibida a imagem do mapa mental Mapa Mental utilizado como base para a definição desse processo.
Definição da Regra de Negócio
Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio | |||||||
[ACAA040 – Parâmetros]WMS6222 - Pesagem da Expedição | [Alteração] | [Atualizações -> Acadêmico | -> Tesouraria] | |||||||
WMSR136 - Regra de negócio referente a expedição paralela | [ | ACAA050 – Negociação Financeira][Envolvida] | [Atualizações -> Acadêmico-> Tesouraria] | - | [ACAA060 – Cadastro de Pedidos] | [Criação] | [Atualizações -> Acadêmico-> Cadastros] | -Alteração] | - | - |
WMS6370 - Embarque de Volumes | [Alteração] | - | - | |||||||
WMS6327 - Embarque de Volumes Simplificado | [Alteração] | - | - |
Para atingir o resultado esperado detalhado acima, as seguintes alterações de funções e programas serão necessárias: WMSR136 - Regra de negócio referente a expedição paralela
WMS6222 - Pesagem da Expedição
Função
wmsr136wms6222_
validaconsiste_
processocod_
expedicaobarras_
pendenteinformado()
Função responsável por validar se
a solicitação de carga possui processos de embarque/pesagem pendentes.- Receberá: Empresa, Solicitação de carga, Volume e Modo de exibição.
- Retornará: Status (TRUE ou FALSE).
- Ao executar esta função, o sistema deverá pesquisar todos os volumes relacionados ao documento, filtrando essa informação caso seja enviada por parâmetro. Após consultar os volumes, será realizada as seguintes validações:
- Verificar se o volume já foi embarcado:
- Se foi embarcado, obrigar que o usuário desembarque o volume, retornando o status FALSE.
- Se não foi embarcado, executar o item 2.
- Verificar se o volume possui movimento de embarque:
- Se possuir movimento, o sistema deverá excluir automaticamente este processo e a pesagem, pesquisando o próximo volume.
- Se não possuir movimento, executar o item 3.
- Verificar se o volume já foi pesado:
- Se foi pesado, o sistema deverá excluir automaticamente a pesagem, pesquisando o próximo volume.
- Se não foi pesado, pesquisar pelo próximo volume.
- Após validar todos os volumes, o sistema deverá retornar para a função de origem com o status igual a TRUE.
- Verificar se o volume já foi embarcado:
Protótipo de Tela
Protótipo 01
Opcional
Fluxo do Processo
<Nesta etapa incluir representações gráficas que descrevam o problema a ser resolvido e o sistema a ser desenvolvido. Exemplo: Diagrama - Caso de Uso, Diagrama de Atividades, Diagrama de Classes, Diagrama de Entidade e Relacionamento e Diagrama de Sequência>.
o código de barras do volume foi informado corretamente.
No final do processamento desta função é realizada uma validação para saber se o documento de expedição está com a conferência finalizada.
Esta validação deverá ser alterada, para que seja executada da seguinte forma:
- Verificar se o parâmetro Permite iniciar a pesagem antes de finalizar a conferência? da Solicitação de Carga está ativo:
- Se estiver, o sistema deverá dar continuidade no processamento, sem apresentar a validação.
- Se não estiver, o sistema deverá executar o processamento padrão do Logix WMS.
Função wms6222_processa_atualizacoes()
Função responsável por atualizar as situações e valores do processo de pesagem.
Durante o processamento desta função, o sistema verificará se existe mais algum volume pendente de pesagem (wms_volume_exped).
Se não existir, é considerado que a pesagem pode ser finalizada. Caso esta situação ocorra, deverá ser executado o seguinte processamento:
- Verificar se a situação da Solicitação de Carga é diferente de P:
- Se sim, manter o processo de pesagem em aberto (l_sit_pesagem = 'E').
- Se não, finalizar o processo de pesagem (l_sit_pesagem = 'F').
Função wms6222_reinicia_pesagem_todos_volumes()
Função responsável por reiniciar a pesagem de todos os volumes da Solicitação de Carga.
Durante o processamento desta função, o sistema permitirá dar continuidade na execução somente quando a situação da Solicitação de Carga for igual a P.
Esta validação deverá ser alterada, para que permita que o usuário reinicie a pesagem dos volumes, caso o parâmetro Permite iniciar a pesagem antes de finalizar a conferência? da Solicitação de Carga esteja ativo e a sua situação seja F ou S.
WMSR136 - Regra de Negócio Referente a Expedição Paralela
Função wmsr136_calcula_percentual_disponivel_embarque()
Função responsável por calcular o percentual de estoque disponível para embarcar.
Receberá: Empresa, Planejamento de embarque e Modo de exibição.
Retornará: Percentual de estoque disponível para embarcar.
No início desta função, o sistema deverá criar um cursor que retorne todas as Solicitações de Carga relacionadas ao planejamento de embarque.
A cada Solicitação de Carga, o sistema deverá consultar/armazenar os seguintes valores:
Verificar se a Solicitação de Carga possui o processo de pesagem, realizando uma consulta na tabela wms_pesagem:
Se possuir registro (Tem pesagem), o sistema deverá executar a seguinte SQL:
Bloco de código language js title SQL - Quantidade de itens que já foram pesados. collapse true SELECT SUM(wms_volume_item_exped.qtd_item) FROM wms_volume_exped ,wms_volume_item_exped WHERE wms_volume_exped.empresa = [empresa] AND wms_volume_exped.trans_solicitacao_carga_mestre = [Solicitação de carga] AND wms_volume_exped.peso_balanca IS NOT NULL AND wms_volume_item_exped.empresa = wms_volume_exped.empresa AND wms_volume_item_exped.volume_exped = wms_volume_exped.volume_exped
Se não possuir registro (Não tem pesagem), o sistema deverá executar a seguinte SQL:
Bloco de código language js title SQL - Quantidade de itens que já foram conferidos. collapse true SELECT SUM(wms_conferencia_separacao_item.qtd_conferida) FROM wms_conferencia_separacao_item WHERE wms_conferencia_separacao_item.empresa = [empresa] AND wms_conferencia_separacao_item.trans_solicitacao_carga_mestre = [Solicitação de carga] AND wms_conferencia_separacao_item.sequencial_conferencia = (SELECT MAX(wms_conferencia_separacao.sequencial_conferencia) FROM wms_conferencia_separacao WHERE wms_conferencia_separacao.empresa = [empresa] AND wms_conferencia_separacao.trans_solicitacao_carga_mestre = [Solicitação de carga])
- Após consultar a quantidade de itens conferidos/pesados, o sistema deverá pesquisar a quantidade de itens embarcados:
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
SELECT SUM(wms_volume_item_exped.qtd_item)
FROM wms_volume_exped
,wms_volume_item_exped
,wms_processo_moviment
WHERE wms_volume_exped.empresa = [empresa]
AND wms_volume_exped.trans_solicitacao_carga_mestre = [Solicitação de carga]
AND wms_processo_moviment.empresa = wms_volume_exped.empresa
AND wms_processo_moviment.volume_exped = wms_volume_exped.volume_exped
AND wms_processo_moviment.sit_processo_moviment = 'FI'
AND wms_volume_item_exped.empresa = wms_volume_exped.empresa
AND wms_volume_item_exped.volume_exped = wms_volume_exped.volume_exped |
- Após consultar a quantidade de itens conferidos, o sistema deverá pesquisar a quantidade de itens solicitados:
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
SELECT SUM(wms_solicitacao_carga_item.qtd_solicitada)
FROM wms_solicitacao_carga_item
WHERE wms_solicitacao_carga_item.empresa = [empresa]
AND wms_solicitacao_carga_item.trans_solicitacao_carga_mestre = [Solicitação de carga]
AND wms_solicitacao_carga_item.sit_item <> ‘C’ |
- Depois de consultar/somar as quantidades das Solicitações de Carga, o sistema deverá calcular o percentual de mercadorias pendentes de embarque, da seguinte forma:
((((Quantidade de itens conferidos ou pesados) - Quantidade de itens que já foram embarcados) x 100) / (Quantidade de itens solicitados - Quantidade de itens que já foram embarcados))
WMS6370 - Embarque de Volumes
Função wms6370_carrega_lista_planos_embarque()
Função responsável por carregar os planejamento de embarque pendentes.
Durante a execução do cursor cq_embarque_cargas, o sistema chamará a função wmsr136_calcula_percentual_disponivel_embarque, caso o parâmetro Exibe o percentual disponível para o embarque?esteja habilitado, onde será retornado o percentual de estoque disponível para embarcar.
Este percentual deverá ser armazenado em uma tabela temporária, para que seja realizada uma ordenação dos documentos pelo seu percentual, da mesma forma como é efetuado na rotina WMS6214.
Ao executar a função DISPLAY ARRAY dos documentos pendentes, o sistema deverá verificar o valor do parâmetro Exibe o percentual disponível para a embarque?:
- Se estiver igual a N, não será realizada a ordenação e nem apresentado o percentual calculado.
- Se estiver igual a S, deverá ordenar os documentos e apresentar o percentual de estoque disponível para embarcar.
Função wms6370_processa_embarque()
- Função responsável por processar o embarque.
- Ao final do processamento, o sistema executa a função wms6370_verifica_finaliza_embarque, onde é verificado se ainda existem documentos pendentes.
- Se existir, ao invés de apresentar a mensagem: "Embarque finalizado, mas ha documentos aguardando conferencia/pesagem.", o sistema deverá exibir a seguinte mensagem: "Todos os volumes disponíveis foram embarcados, mas há documentos aguardando conferência/pesagem.".
Função wms6370_entrada_planejamento_cesv()
Função responsável pela entrada dos dados do planejamento de embarque.
No before field do campo cod_barras_endereco, o sistema executa a função wms6370_verifica_finaliza_embarque, aonde é verificado se ainda existem documentos pendentes.
Se existir, ao invés de apresentar a mensagem: "Embarque finalizado, mas ha documentos aguardando conferencia/pesagem.", o sistema deverá exibir a seguinte mensagem: "Todos os volumes disponíveis foram embarcados, mas há documentos aguardando conferência/pesagem.".
Função wms6370_entrada_depositante_plano_embarque()
Função responsável por selecionar o planejamento de embarque pendente.
Durante o processamento, o sistema executa a função wms6370_verifica_finaliza_embarque, onde é verificado se ainda existem documentos pendentes.
Se existir, ao invés de apresentar a mensagem: "Embarque finalizado, mas ha documentos aguardando conferencia/pesagem.", o sistema deverá exibir a seguinte mensagem: "Todos os volumes disponíveis foram embarcados, mas há documentos aguardando conferência/pesagem.".
WMS6327 - Embarque de Volumes Simplificado
Função wms6327_verifica_finaliza_embarque()
Função responsável por verificar se é possível finalizar o embarque.
Durante a execução do cursor cq_deposit_final, o sistema deverá processar uma nova validação, onde será verificado se existe alguma Solicitação de Carga pendente de embarque para o planejamento informado.
Na rotina WMS6370, essa validação já é realizada pela função wms6370_verifica_finaliza_embarque.
Se o sistema encontrar alguma solicitação de carga, com a situação: A,L,O,S,F ou P; não deverá ser permitido concluir o embarque, apresentando a seguinte mensagem para o usuário: "Todos os volumes disponíveis foram embarcados, mas há documentos aguardando conferência/pesagem.".
Protótipo de Tela
Protótipo 01
Tela principal do processo de embarque, onde será apresentado o percentual de mercadorias disponíveis para embarcar, caso o parâmetro no LOG00086 esteja ativo.
Opcional
Dicionário de Dados
Arquivo ou Código do Script: AAA – Negociação Financeira / *Versao=CP.2014.12_03*/
Índice | Chave |
01 | <FI9_FILIAL+FI9_IDDARF+FI9_STATUS> |
02 | <FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_EMISS+FI9_IDDARF> |
03 | <FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_PREFIX+FI9_NUM+FI9_PARCEL+FI9_TIPO> |
Campo
<AAA_PERESP>
Tipo
<N>
Tamanho
<6>
Valor Inicial
<Varia de acordo com o tipo informado. Por exemplo, quando o campo “tipo” for date, neste campo pode ser informado uma data>.
Mandatório
Sim ( ) Não ( )
Descrição
<Referência Mínima para Cálculo>
Título
<Ref.Calc.>
Picture
<@E999.99>
Help de Campo
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|