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 paralelasejam executados paralelamente.
Objetivo
específicoEspecífico
Possibilitar o usuário visualizar os a visualização dos percentuais de execução dos processos de separação, conferência, pesagem e embarque; quando processado paralelamente.
Mapa Mental
Na sequencia, será exibida sequência é apresentada 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 |
LOG00086 - Menu de parâmetrosParâmetros | [Alteração] | Manutenção de parâmetros | - |
WMSR136 - Regra de negócio referente a expedição paralela | [Criação] | - | - |
WMS6325 - Solicitação de cargaCarga | [Alteração] | - | - |
WMS60013 - Contrato do Depositante | [Alteração] | - | - |
WMS60018 - Contrato - Expedição - Separação/Conferência | [Alteração] | - | -WMS6258 - Conferência de expedição - |
DesktopWMS60029 - Contrato - Expedição - Pesagem | [Alteração] | - | - |
WMS60019 - Contrato - Expedição - Embarque/Fiscal | [Alteração] | - | - |
WMS6242 - Conferência de Expedição - Coletor de dados | [Alteração] | - | - |
WMS6258 - Conferência de Expedição - Desktop | [Alteração] | - | - |
Para atingir o resultado esperado detalhado acima, as seguintes alterações Para atingir o resultado esperado detalhado acima, as seguintes alteração de funções e programas serão são necessárias:
LOG00086 -
Menu de
parâmetrosParâmetros
Manutenção de
Parâmetros > Logix WMS > Logix WMS > Expedição
Criar um novo parâmetro no LOG00086, da seguinte forma:
- Descrição:Permite iniciar a conferência antes de finalizar a separação? Exibe o percentual disponível para a conferência?
- Informação do parâmetro: Indica se será permitido iniciar exibido o percentual de mercadorias disponíveis para a conferência da expedição, antes de concluir a separação de todos os produtos.
- Valor padrão: N (Não).
Valores: S (Sim) ou N (Não).
Criar um novo parâmetro no LOG00086, da seguinte forma:
Descrição: Permite iniciar a pesagem antes de finalizar a conferência Exibe o percentual disponível para o embarque?
Informação do parâmetro: Indica se será permitido iniciar a pesagem, antes de concluir a conferência de todos os produtosexibido o percentual de mercadorias disponíveis para o embarque.
Valor padrão: N (Não).
Valores: S (Sim) ou N (Não).
Descrição: Permite iniciar o embarque antes de finalizar a conferência/pesagem?
Informação do parâmetro: Indica se será permitido iniciar o embarque, antes de concluir a conferência/pesagem de todos os produtos.
Valor padrão: N (Não).
Valores: S (Sim) ou N (Não).
Validação: Não permitir alterar este parâmetro, caso exista algum depositante configurado com conferência automática de volumes, e possua a sua atividade em andamento. Se o sistema encontrar algum registro no sql abaixo, não permitir alterar o parâmetro:
WMSR136 - Regra de Negócio Para a Expedição Paralela
Função wmsr136_calcula_percentual_disponível_conferencia().
Responsável por calcular o percentual de estoque disponível para conferir.
Receberá: Empresa, Solicitação de Carga e Modo de exibição.
Retornará: Percentual de estoque disponível para conferir.
No início desta função, o sistema deverá consultar a quantidade de itens que já foram separados:
Bloco de código | ||||
---|---|---|---|---|
|
| |||
SELECT |
SUM(estoque_loc_reser.qtd_reservada) FROM wms |
_solic_carga_item_reserva ,wms |
_item_onda_plano ,estoque_loc_reser ,wms_ |
processo_ |
moviment WHERE wms |
_solic_carga_item_reserva.empresa = [empresa] AND wms_ |
solic_carga_item_reserva.trans_solicitacao_carga_mestre = [Solicitação de carga] AND wms_ |
item_ |
onda_ |
plano.empresa = wms |
_solic_carga_item_reserva.empresa AND wms_ |
item_ |
onda_ |
plano. |
reserva = wms |
_solic_carga_item_reserva.reserva AND |
estoque_ |
loc_ |
reser.cod_ |
empresa = wms_ |
item_ |
onda_ |
plano.empresa AND |
estoque_ |
loc_ |
reser. |
num_ |
reserva = wms_ |
item_ |
onda_ |
plano. |
reserva AND wms_ |
processo_moviment.empresa = wms_item_onda_plano.empresa AND wms_processo_moviment.processo_moviment = wms_ |
item_ |
onda_ |
plano. |
processo_moviment AND wms_ |
processo_ |
moviment.tip_processo_moviment = 'C' AND wms_ |
processo_ |
moviment.sit_processo_moviment = 'FI' |
- Após consultar a quantidade de itens separados, o sistema deverá pesquisar a quantidade de itens conferidos:
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
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, 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 as quantidades, o sistema deverá calcular o percentual de mercadorias pendentes de conferência, da seguinte forma:
(((Quantidade de itens separados - Quantidade de itens que já foram conferidos) x 100) / (Quantidade de itens solicitados - Quantidade de itens que já foram conferidos))
WMS6325 - Solicitação de Carga
Criar 4 novos campos na pasta Dados Complementares, na qual serão apresentados os status dos seguintes processos: Separação, Conferência, Pesagem e Embarque.
Criar 3 novos campos na pasta Dados Complementares, para que seja informado se permite executar paralelamente a expedição ou não. Ao incluir uma Solicitação de Carga, o sistema deverá carregar os valores padrão cadastrados no Contrato do depositante. Após confirmar a inclusão da Solicitação de Carga, esses campos deverão ser armazenados na tabela wms_solicitacao_carga_mestre.
Função wms6325_carrega_status_processos()
Função responsável por carregar o status de cada processo de expedição.
Receberá: Empresa, Solicitação de Carga, Sequencial do item e Modo de exibição.
Retornará: status (TRUE ou FALSE).
Observação: Essa função deverá estar preparada para receber o campo Sequencial do Item; caso a informação não seja enviada, deverá ser considerado todos os itens da solicitação de carga.
Durante o processamento dessa função, o sistema deverá consultar o percentual de execução de cada etapa da expedição:
Nota | ||
---|---|---|
| ||
|
Se a situação da solicitação de carga for igual a S, o sistema deverá realizar a seguinte pesquisa (Separação):
Consultar a quantidade total de itens que devem ser separados:
Se a Solicitação de Carga possuir controle de granel:
Se o documento for mestre:
Bloco de código language js title SQL - Granel mestre collapse true SELECT SUM(wms_solicitacao_carga_item.qtd_solicitada) FROM wms_expedicao_granel ,wms_expedicao_granel_veiculo ,wms_solicitacao_carga_item WHERE wms_expedicao_granel.empresa = [empresa] AND wms_expedicao_granel.solicitacao_carga = [Solicitação de carga] AND wms_expedicao_granel_veiculo.empresa = wms_expedicao_granel.empresa AND wms_expedicao_granel_veiculo.transacao_expedicao_granel = wms_expedicao_granel.transacao_expedicao_granel AND wms_solicitacao_carga_item.empresa = wms_expedicao_granel_veiculo.empresa AND wms_solicitacao_carga_item.trans_solicitacao_carga_mestre = wms_expedicao_granel_veiculo.solicitacao_carga_liberacao
Se o documento for filho:
Bloco de código language js title SQL - Granel filho collapse true SELECT SUM(wms_solicitacao_carga_item.qtd_solicitada) FROM wms_expedicao_granel_veiculo ,wms_solicitacao_carga_item WHERE wms_expedicao_granel_veiculo.empresa = [empresa] AND wms_expedicao_granel_veiculo.solicitacao_carga_liberacao = [Solicitação de carga] AND wms_solicitacao_carga_item.empresa = wms_expedicao_granel_veiculo.empresa AND wms_solicitacao_carga_item.trans_solicitacao_carga_mestre = wms_expedicao_granel_veiculo.solicitacao_carga_liberacao
Se a Solicitação de Carga não possuir controle de granel
- Criar um novo parâmetro no LOG00086, da seguinte forma:
- Descrição: Exibe o percentual disponível para a conferência?
- Informação do parâmetro: Indica se será exibido o percentual de mercadorias disponíveis para a conferência da expedição.
- Valor padrão: N (Não).
Valores: S (Sim) ou N (Não).
- Criar um novo parâmetro no LOG00086, da seguinte forma:
Descrição: Exibe o percentual disponível para o embarque?
Informação do parâmetro: Indica se será exibido o percentual de mercadorias disponíveis para o embarque.
Valor padrão: N (Não).
Valores: S (Sim) ou N (Não).
WMS6325 - Solicitação de carga
Criar 4 novos campos na aba Dados complementares, aonde serão apresentados os status dos seguintes processos: Separação, Conferência, Pesagem e Embarque.
Função wms6325_carrega_status_processos()
- Função responsável por carregar o status de cada processo de expedição.
- Retornará: status (TRUE ou FALSE). Durante o processamento desta função, o sistema deverá consultar o percentual de execução de cada etapa da expedição:
- Se a situação da solicitação de carga for igual a: A, B, C, D, I, L, M, O:
- O sistema deverá considerar o status dos processos de separação, conferência e embarque; igual a 0% (Não iniciado).
- Para o processo de pesagem, o sistema deverá verificar se o depositante possui essa etapa configurada:
- Se possuir, deverá ser considerado o status da pesagem igual a 0% (Não iniciado), retornando para a função de origem.
- Se não possuir, deverá ser considerado o o status da pesagem igual a -%, exibindo a cor cinza conforme o protótipo 1, retornando para a função de origem.
- Se a situação da solicitação de carga for igual a: 1, 2, 3, 4, U, R, V, X, N, E:
- O sistema deverá considerar o status dos processos de separação, conferência e embarque; igual a 100% (Concluído).
- Para o processo de pesagem, o sistema deverá verificar se o depositante possui essa etapa configurada:
- Se possuir, deverá ser considerado o status da pesagem igual a 100% (Concluído), retornando para a função de origem.
- Se não possuir, deverá ser considerado o o status da pesagem igual a -%, exibindo a cor cinza conforme o protótipo 1, retornando para a função de origem.
Se a situação da solicitação de carga for igual a S, o sistema deverá realizar a seguinte pesquisa (Separação): :
Bloco de código language js title SQL - Quantidade de itens que devem ser separados. collapse true 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’
- Consultar a quantidade de itens que
já foram separados- foram separados:
Se a Solicitação de Carga possuir controle de granel:
Se o documento for mestre:
Bloco de código language js title SQL -
- foram separados:
Quantidade de itens que já foram separados.Granel mestre collapse true SELECT SUM(
estoquewms_expedicao_
locgranel_
reserendereco.qtd_
reservadareal_separacao) FROM wms
_solic_carga_item_reserva_expedicao_granel ,wms_expedicao_granel_veiculo ,wms_
itemexpedicao_
ondagranel_
planoendereco WHERE wms_expedicao_granel.empresa = [empresa]
,estoque_loc_reser
,wms_processo_moviment
WHERE wms_solic_carga_item_reservaAND wms_expedicao_granel.solicitacao_carga = [Solicitação de carga] AND wms_expedicao_granel_veiculo.empresa =
[empresa]wms_expedicao_granel.empresa AND wms_
solicexpedicao_
cargagranel_
item_reservaveiculo.
transtransacao_
solicitacaoexpedicao_
carga_mestregranel =
[Solicitação de carga]wms_expedicao_granel.transacao_expedicao_granel AND wms_
itemexpedicao_
ondagranel_
planoendereco .empresa = wms_
solic_cargaexpedicao_
itemgranel_
reservaveiculo.empresa
AND wms_
itemexpedicao_
ondagranel_
plano.reserva endereco .trans_expedicao_granel_veiculo= wms_
solicexpedicao_
cargagranel_
item_reserva.reserva
AND estoque_loc_reser.cod_empresa = wms_item_onda_plano.empresa
AND estoque_loc_reser.num_reserva = wms_item_onda_plano.reserva
AND wms_processo_moviment.empresa = wms_item_onda_plano.empresa
AND wms_processo_moviment.processo_moviment = wms_item_onda_plano.processo_movimentveiculo.trans_expedicao_granel_veiculo
Se o documento for filho:
Bloco de código language js title SQL - Granel filho collapse true SELECT SUM(wms_expedicao_granel_endereco.qtd_real_separacao) FROM wms_expedicao_granel_veiculo ,wms_expedicao_granel_endereco WHERE wms_expedicao_granel_veiculo.empresa = [empresa] AND wms_expedicao_
processogranel_
movimentveiculo.
tipsolicitacao_
processocarga_
movimentliberacao =
'C'[Solicitação de carga] AND wms_
processo_moviment.sit_processo_moviment = 'FI'Após consultar os dois valores, o sistema deverá calcular o percentual de produtos separados.
- Caso a situação seja diferente de S, o sistema deverá considerar o status da separação igual a 100% (Concluído). Se a situação da solicitação de carga for igual a S ou F, o sistema deverá realizar a seguinte pesquisa (Conferência):
- Utilizar a mesma quantidade consultada no item 3.A. Consultar a quantidade de itens que já foram conferidos
expedicao_granel_endereco .empresa = wms_expedicao_granel_veiculo.empresa AND wms_expedicao_granel_endereco .trans_expedicao_granel_veiculo= wms_expedicao_granel_veiculo.trans_expedicao_granel_veiculo
Se a Solicitação de Carga não possuir controle de granel:
Bloco de código language js title SQL - Quantidade de itens que já foram
conferidosseparados. collapse
true SELECT SUM(estoque_loc_reser.qtd_reservada) FROM wms_solic_carga_item_reserva ,wms_item_onda_plano ,estoque_loc_reser ,wms_processo_moviment WHERE wms_solic_carga_item_reserva.empresa = [empresa] AND wms_solic_carga_item_reserva.trans_solicitacao_carga_mestre = [Solicitação de carga] AND wms_item_onda_plano.empresa = wms_solic_carga_item_reserva.empresa AND wms_item_onda_plano.reserva = wms_solic_carga_item_reserva.reserva AND estoque_loc_reser.cod_empresa = wms_item_onda_plano.empresa AND estoque_loc_reser.num_reserva = wms_item_onda_plano.reserva AND wms_processo_moviment.empresa = wms_item_onda_plano.empresa
Após consultar os dois valores, o sistema deverá calcular o percentual de produtos conferidos.
Caso a situação seja diferente de S ou F, o sistema deverá considerar o status da conferência igual a 100% (Concluído).
- Verificar se na tabela wms_pesagem, possui registro para a solicitação de carga consultada:
- Se tiver, o sistema deverá executar o item B, C e D.
- Se não tiver, o sistema deverá apresentar o seguinte valor -%, exibindo a cor cinza conforme o protótipo 1, passando para o item 9.
- Utilizar a mesma quantidade consultada no item 3.A. Consultar a quantidade de itens que já foram pesados:
AND wms_
volumeprocesso_
expedmoviment.
trans_solicitacao_carga_mestre = [Solicitação de carga]
AND wms_volume_exped.peso_balanca IS NOT NULLprocesso_moviment = wms_item_onda_plano.processo_moviment AND wms_
volume_item_exped.empresa = wms_volume_exped.empresaprocesso_moviment.tip_processo_moviment = 'C' AND wms_
volume_item_exped.volume_exped = wms_volume_exped.volume_expedApós consultar os dois valores, o sistema deverá calcular o percentual de produtos pesados.
processo_moviment.sit_processo_moviment = 'FI'
Após consultar os dois valores, o sistema deverá calcular o percentual de produtos separados.
- Caso a situação seja igual a: F, P, Q, V, X, N, Z; o sistema deverá considerar o status da separação igual a 100% (Concluído).
- Se a situação da solicitação de carga for igual a S ou F, deverá ser verificado se o documento possui controle de granel:
- Se controlar granel, deverá ser considerado o o status da conferência igual a -%, exibindo a cor cinza conforme o Protótipo 1.
- Se não controlar granel, o sistema deverá realizar a seguinte pesquisa (Conferência):
- Utilizar a mesma quantidade consultada no item 1.A.
- Consultar a quantidade de itens que já foram conferidos:
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
- Caso a situação seja diferente de S, F, P, o sistema deverá considerar o status da pesagem igual a 100% (Concluído). Se a situação da solicitação de carga for igual a: S, F, P, Q, Z; o sistema deverá realizar a seguinte pesquisa (Embarque):
- Utilizar a mesma quantidade consultada no item 3.A. Consultar a quantidade de itens que já foram embarcados:
Bloco de código language js title SQL - Quantidade de itens que já foram embarcados (Volume). collapse true 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.tip_processo_moviment = 'E' 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
.trans_solicitacao_carga_mestre = [Solicitação de
de carga]
AND wms_volume_exped.empresa = wms_volume_palete.empresa
AND wms_volume_exped.trans_solicitacao_carga_mestre = wms_volume_palete.trans_solicitacao_carga_mestre
AND wms_volume_exped.volume_palete = wms_volume_palete.volume_palete
AND carga])
Após consultar os dois valores, o sistema deverá calcular o percentual de produtos conferidos.
Caso a situação seja igual a: P, Q, V, X, N, Z; o sistema deverá considerar o status da conferência igual a 100% (Concluído).
Se a situação da solicitação de carga for igual a: S, F, P; deverá ser verificado se o documento possui controle de granel:
- Se controlar granel, deverá ser considerado o status da pesagem igual a -%, exibindo a cor cinza conforme Protótipo 1.
- Se não controlar granel, o sistema deverá realizar a seguinte pesquisa (Pesagem):
- Verificar se na tabela wms_pesagem, possui registro para a solicitação de carga consultada:
- Se tiver, o sistema deverá executar o item B, C e D.
- Se não tiver, o sistema deverá apresentar o seguinte valor -%, exibindo a cor cinza conforme Protótipo 1, passando para o item 7.
- Utilizar a mesma quantidade consultada no item 1.A.
- Consultar a quantidade de itens que foram pesados:
Bloco de código language js title SQL - Quantidade de itens que já foram pesados. collapse true SELECT SUM(wms_volume_item_exped.
- Verificar se na tabela wms_pesagem, possui registro para a solicitação de carga consultada:
empresa = wms_volume_exped.empresaqtd_item) FROM
AND wms
_volume_item_
exped.volume_exped
=,wms_volume_item_exped
.empresaWHERE
AND wms_
processo_moviment.volume_exped.empresa = [empresa] AND wms_volume_exped.
volume_expedtrans_solicitacao_carga_mestre = [Solicitação de carga] AND wms_
processovolume_
movimentexped.
tip_processo_moviment = 'E'peso_balanca IS NOT NULL AND wms_
processovolume_item_
moviment.sit_processo_moviment = 'FI'Após consultar os dois valores, o sistema deverá calcular o percentual de produtos embarcados.
Consultar a quantidade total de itens que devem ser separados
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]
Se a situação da solicitação de carga for igual a: S, F, P; o sistema deverá realizar a seguinte pesquisa (Pesagem):
language | js |
---|---|
title | SQL - Quantidade de itens que já foram pesados. |
collapse | true |
language | js |
---|---|
title | SQL - Quantidade de itens que já foram embarcados (Palete). |
collapse | true |
Função wms6325_exibe_dados()
- Função responsável por carregar as variáveis e apresentar os seus valores em tela, durante a pesquisa da solicitação de carga.
- Ao final desta função, o sistema deverá chamar a função wms6325_carrega_status_processos, para que as situações da solicitação de carga sejam carregadas.
WMS6242 - Conferência de expedição - Coletor de dados
Alterar o campo que apresenta o documento pendente de conferência de expedição, para que seja exibido o percentual de estoque disponível para conferir, conforme o protótipo 02.
Função wms6242_calcula_percentual_documento()
exped.empresa = wms_volume_exped.empresa AND wms_volume_item_exped.volume_exped = wms_volume_exped.volume_exped
Após consultar os dois valores, o sistema deverá calcular o percentual de produtos pesados.
- Caso a situação seja igual a: Q, V, X, N, Z; o sistema deverá considerar o status da pesagem igual a 100% (Concluído).
- Se a situação da solicitação de carga for igual a: S, F, P, Q, V, X, N, Z; deverá ser verificado se o documento possui controle de granel:
- Se controlar granel, deverá ser considerado o o status do embarque igual ao status da separação.
- Se não controlar granel, o sistema deverá realizar a seguinte pesquisa (Embarque):
- Utilizar a mesma quantidade consultada no item 1.A.
- Consultar
- Função responsável por calcular o percentual de estoque disponível para conferir.
- Receberá: Solicitação de carga.
- Retornará: Percentual de estoque disponível para conferir. No inicio desta função, o sistema deverá consultar
- a quantidade de itens que já foram
separados- embarcados:
Bloco de código language js title SQL - Quantidade de itens que já foram
- embarcados:
separadosembarcados (Volume). collapse true
SELECT SUM(estoque_loc_reser.qtd_reservada)
FROM wms_solic_carga_item_reserva
,wms_item_onda_plano
,estoque_loc_reserSELECT SUM(wms_volume_item_exped.qtd_item) FROM wms_volume_exped ,wms_
processo_moviment
WHERE wms_solic_carga_item_reserva.empresa = [empresa]
AND wms_solic_carga_item_reserva.trans_solicitacao_carga_mestre = [Solicitação de carga]
AND wms_item_onda_plano.empresa = wms_solic_carga_item_reserva.empresa volume_item_exped ,wms_processo_moviment WHERE wms_volume_exped.empresa = [empresa] AND wms_
itemvolume_
onda_plano.reserva = wms_solic_carga_item_reserva.reserva exped.trans_solicitacao_carga_mestre = [Solicitação de carga] AND
estoquewms_
locvolume_
reserexped.
codvolume_
empresapalete
= wms_item_onda_plano.empresaIS NULL AND
estoquewms_
locprocesso_
resermoviment.
num_reservaempresa = wms_
itemvolume_
onda_planoexped.
reservaempresa AND wms_processo_moviment.
empresavolume_exped = wms_
itemvolume_
onda_plano.empresaexped.volume_exped AND wms_processo_moviment.tip_processo_moviment = 'E' AND wms_
itemprocesso_
ondamoviment.sit_
plano.processo_moviment = 'FI' AND wms_volume_
processoitem_
moviment.tip_processo_moviment = 'C'exped.empresa = wms_volume_exped.empresa AND wms_volume_
processoitem_
movimentexped.
sitvolume_
processo_moviment = 'FI'Após consultar a quantidade de itens separados, o sistema deverá pesquisar a quantidade de itens conferidos:exped = wms_volume_exped.volume_exped
Bloco de código language js title SQL - Quantidade de itens que já foram
conferidosembarcados (Palete). collapse true SELECT SUM(wms_
conferenciavolume_
separacaoitem_
itemexped.qtd_
conferidaitem) FROM wms_volume_
conferenciapalete,wms_
separacaovolume_
itemexped
WHERE,wms_
conferenciavolume_
separacao_item.empresa = [empresa]
item_exped
AND,wms_
conferencia_separacao_item.trans_solicitacao_carga_mestre = [Solicitação de carga]Após consultar a quantidade de itens conferidos, o sistema deverá pesquisar a quantidade de itens solicitados:processo_moviment WHERE wms_volume_palete.empresa = [empresa] AND wms_volume_palete.trans_solicitacao_carga_mestre = [Solicitação de carga] AND wms_volume_exped.empresa = wms_volume_palete.empresa AND wms_volume_exped.trans_solicitacao_carga_mestre = wms_volume_palete.trans_solicitacao_carga_mestre AND wms_
solicitacaovolume_
carga_itemexped.
trans_solicitacao_carga_mestrevolume_palete =
[Solicitação de carga]- Depois de consultar as quantidades, o sistema deverá calcular o percentual de mercadorias pendentes de conferência, da seguinte forma:
((Quantidade de itens separados - Quantidade de itens que já foram conferidos) x 100) / Quantidade de itens solicitados
language | js |
---|---|
title | SQL - Quantidade de itens solicitados. |
collapse | true |
Função wms6242_tela_inicial()
- Função responsável por apresentar a tela principal da rotina de conferência via coletor de dados.
- No inicio desta função, o sistema deverá pesquisar o valor do parâmetro "Exibe o percentual disponível para a conferência?", armazenando essa informação em uma variável modular.
Função wms6242_carrega_solicitacao_carga()
- Função responsável por carregar os documentos pendentes de conferência da expedição.
- Ao montar o cursor cq_conferencias, deverá ser verificado se o parâmetro "Permite iniciar a conferência antes de finalizar a separação?", está ativo:
- Se estiver, além de buscar solicitações de carga com a situação em conferência (F), o sistema deverá encontrar documentos com a situação em separação (S), caso o documento possua itens que não foram conferidos.
- Se não estiver, deverá continuar com o processamento padrão.
- Durante a execução do cursor cq_conferencias, o sistema deverá chamar a função wms6242_calcula_percentual_documento, caso o parâmetro "Permite iniciar a conferência antes de finalizar a separação?" esteja habilitado, aonde será retornado o percentual de estoque disponível para conferir. 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 é feito 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 conferência?":
- Se estiver igual a N, o sistema não deverá realizar a ordenação e nem apresentar o percentual calculado.
- Se estiver igual a S, o sistema deverá ordenar os documentos, apresentando o percentual de estoque disponível para conferir.
WMS6258 - Conferência de expedição - Desktop
Criar um novo campo na tela principal, que apresente o percentual de estoque disponível para conferir, conforme o protótipo 03.
Função wms6258_calcula_percentual_documento()
- Função responsável por calcular o percentual de estoque disponível para conferir.
- Receberá: Solicitação de carga.
- Retornará: Percentual de estoque disponível para conferir.
- No inicio desta função, o sistema deverá consultar a quantidade de itens que já foram separados:
Bloco de código language js title SQL - Quantidade de itens que já foram separados. collapse true SELECT SUM(estoque_loc_reser.qtd_reservada) FROM wms_solic_carga_item_reserva ,wms_item_onda_plano ,estoque_loc_reser ,wms_processo_moviment WHERE wms_solic_carga_item_reserva.empresa = [empresa] AND wms_solic_carga_item_reserva.trans_solicitacao_carga_mestre = [Solicitação de carga] AND wms_item_onda_plano.empresa = wms_solic_carga_item_reserva.empresa AND wms_item_onda_plano.reserva = wms_solic_carga_item_reserva.reserva AND estoque_loc_reser.cod_empresa = wms_item_onda_plano.empresa AND estoque_loc_reser.num_reserva = wms_item_onda_plano.reserva AND wms_processo_moviment.empresa = wms_item_onda_plano.empresa AND wms_processo_moviment.processo_moviment = wms_item_onda_plano.processo_moviment AND wms_processo_moviment.tip_processo_moviment = 'C' AND wms_processo_moviment.sit_processo_moviment = 'FI'
- Após consultar a quantidade de itens separados, o sistema deverá pesquisar a quantidade de itens conferidos:
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]
- Depois de consultar as quantidades, o sistema deverá executar uma regra de 3, para calcular o percentual de mercadorias pendentes de conferência.
Função wms6258_before_menu()
- Função responsável por inicializar as variáveis antes da execução da rotina.
- No fim desta função, o sistema deverá pesquisar o valor do parâmetro "Exibe o percentual disponível para a conferência?", armazenando essa informação em uma variável modular.
Função wms6258_carrega_solicitacao_carga()
- Se estiver, além de buscar solicitações de carga com a situação em conferência (F), o sistema deverá encontrar documentos com a situação em separação (S), caso o documento possua itens que não foram conferidos.
- Se não estiver, deverá continuar com o processamento padrão.
wms_volume_palete.volume_palete AND wms_volume_item_exped.empresa = wms_volume_exped.empresa AND wms_volume_item_exped.volume_exped = wms_volume_exped.volume_exped AND wms_processo_moviment.empresa = wms_volume_exped.empresa AND wms_processo_moviment.volume_exped = wms_volume_exped.volume_exped AND wms_processo_moviment.tip_processo_moviment = 'E' AND wms_processo_moviment.sit_processo_moviment = 'FI'
Após consultar os dois valores, o sistema deverá calcular o percentual de produtos embarcados.
Função wms6325_exibe_dados()
Função responsável por carregar as variáveis e apresentar os seus valores em tela, durante a pesquisa da Solicitação de Carga.
Ao final desta função, o sistema deverá chamar a função wms6325_carrega_status_processos, para que as situações da Solicitação de Carga sejam carregadas.
WMS60013 - Contrato do Depositante
Alterar a descrição da opção Pesagem para Expedição-Pesagem.
Na cópia do Contrato do depositante (WMS60030), prever a inclusão destes novos parâmetros para o depositante destino.
WMS60018 - Contrato - Expedição - Separação/Conferência
Criar um novo campo, que permita indicar qual o valor padrão para o parâmetro: Permite conferir antes de finalizar a separação?.
Este campo deverá ser armazenado na tabela wms_parametro_complementar, onde será carregado automaticamente na inclusão de uma Solicitação de Carga, na rotina WMS6325.
WMS60029 - Contrato - Expedição - Pesagem
Criar um novo campo, que permita indicar qual o valor padrão para o parâmetro: Permite pesar antes de finalizar a conferência?.
Este campo deverá ser armazenado na tabela wms_parametro_complementar, onde será carregado automaticamente na inclusão de uma Solicitação de Carga, na rotina WMS6325.
WMS60019 - Contrato - Expedição - Embarque/Fiscal
Criar um novo campo, que permita indicar qual o valor padrão, para o parâmetro: Permite embarcar antes de finalizar conf/pesagem?.
Este campo deverá ser armazenado na tabela wms_parametro_complementar, onde será carregado automaticamente na inclusão de uma Solicitação de Carga, na rotina WMS6325.
WMS6242 - Conferência de Expedição - Coletor de Dados
Alterar o campo que apresenta o documento pendente de conferência de expedição, para que seja exibido o percentual de estoque disponível para conferir, conforme o Protótipo 02.
Função wms6242_tela_inicial()
- Função responsável por apresentar a tela principal da rotina de conferência via coletor de dados.
- No inicio dessa função, o sistema deverá pesquisar o valor do parâmetro Exibe o percentual disponível para a conferência?, armazenando essa informação em uma variável modular.
Função wms6242_carrega_solicitacao_carga()
Função responsável por carregar os documentos pendentes de conferência da expedição.
Ao montar o cursor cq_conferencias deverá ser verificado se o parâmetro Permite iniciar a conferência antes de finalizar a separação? está ativo.
Durante a execução do cursor cq_conferencias, o sistema deverá chamar a função wmsr136_calcula_percentual_disponivel_conferencia.
Se o parâmetro Exibe o percentual disponível para a conferência? estiver habilitado será retornado o percentual de estoque disponível para conferir.
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 é realizado na rotina WMS6214:
- Se estiver, além de buscar as Solicitações de Carga com a situação em Conferência (F), o sistema deverá encontrar documentos com a situação em Separação (S), caso o documento possua itens que não foram conferidos.
- Se não estiver, deverá continuar com o processamento padrão.
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 conferência?:
- Se estiver igual a N, o sistema não deverá realizar a ordenação e nem apresentar o percentual calculado.
- Se estiver igual a S, o sistema deverá ordenar os documentos, apresentando o percentual de estoque disponível para conferir.
WMS6258 - Conferência de Expedição - Desktop
Criar um novo campo na tela principal, que apresente o percentual de estoque disponível para conferir, conforme Protótipo 03.
Função wms6258_before_menu()
Função responsável por inicializar as variáveis antes da execução da rotina.
No fim desta função, o sistema deverá pesquisar o valor do parâmetro Exibe o percentual disponível para a conferência?, armazenando essa informação em uma variável modular.
Função wms6258_carrega_solicitacao_carga()
Função responsável por carregar os documentos pendentes de conferência da expedição.
Ao montar o cursor cq_conferencias, deverá ser verificado se o parâmetro Permite iniciar a conferência antes de finalizar a separação? está ativo.
Durante a execução do cursor cq_conferencias, o sistema deverá chamar a função wmsr136_calcula_percentual_disponivel_conferencia, se o parâmetro Exibe o percentual disponível para a conferência? estiver habilitado, onde será retornado o percentual de estoque disponível para conferir. 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 é realizado na rotina WMS6214.
- Se estiver, além de buscar solicitações de carga com a situação em conferência (F), o sistema deverá encontrar documentos com a situação em separação (S), caso o documento possua itens que não foram conferidos.
- Se não estiver, deverá continuar com o processamento padrão.
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 conferência?:
Se estiver igual a N, o sistema não deverá realizar a ordenação e nem apresentar o percentual calculado.
Se estiver igual a S, o sistema deverá ordenar os documentos, apresentando o percentual de estoque disponível para conferir.
Protótipo de Tela
Protótipo 01
Tela principal da Solicitação de Carga, onde será apresentado o status de cada processo de expedição.
Protótipo 02
Tela principal da conferência de expedição via coletor de dados, onde será apresentado o percentual de mercadorias disponíveis para conferir, se o parâmetro no LOG00086 estiver ativo.
Protótipo 03
Tela principal da conferência de expedição via desktop, onde será apresentado o percentual de mercadorias disponíveis para conferir, se o parâmetro no LOG00086 estiver ativo.
Protótipo 04
Tela principal do Contrato do depositante, na qual será incluída a descrição Expedição na opção Pesagem.
Protótipo 05
Tela do Contrato, opção Expedição - Separação/Conferência, onde será incluído o campo: Permite conferir antes de finalizar a separação?.
Protótipo 06
Tela do Contrato, opção Expedição - Pesagem, onde será incluído o campo: Permite pesar antes de finalizar a conferência?.
Protótipo 07
- Tela do Contrato, opção Expedição - Embarque/Fiscal, onde será incluído o campo: Permite embarcar antes de finalizar a conf/pesagem?.
Dicionário de Dados
Protótipo de Tela
Protótipo 01
Tela principal da solicitação de carga, aonde será apresentado o status de cada processo de expedição.
Protótipo 02
Tela principal da conferência de expedição via coletor de dados, aonde será apresentado o percentual de mercadorias disponíveis para conferir, caso o parâmetro no LOG00086 esteja ativo.
Protótipo 03
Tela principal da conferência de expedição via desktop, aonde será apresentado o percentual de mercadorias disponíveis para conferir, caso o parâmetro no LOG00086 esteja ativo.
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|