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 | ||
Projeto1 | IRM1 | LOGWMS01-545 - [WMS] - ELLECE - FASE 2 - WMS para Operador Logístico | |
Requisito1 | [WMS] - ME 15.5 - Convocação ativa - Armazenagem e Transferência | Subtarefa1 | |
País | ( x ) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( ) Outro _____________. |
Aviso | ||
---|---|---|
| ||
Os requisitos tratados por esta especificação fazem parte de um conjunto de requisitos destinados a atender a funcionalidade de Convocação Ativa. O desenvolvimento será realizado de forma incremental, sendo assim, cada requisito incrementará a funcionalidade da convocação ativa, que será considerada como completa quando todos os requisitos estiverem concluídos. Esta especificação trata dos requisito 5 de um total de 13 requisitos. Sendo que as especificações dos requisitos anteriores estão em: Introdução & Requisito 1 → ER_LOGWMS01-845_ME_15.1-Convocação_Ativa-Grupo_de_Endereços Requisito 2 → ER_LOGWMS01-942_ME_15.2-Convocação_Ativa-Configuração Requisito 3 → ER_LOGWMS01-826_ME_15.3-Convocação_Ativa-Gerenciamento Requisito 4 → ER_LOGWMS01-827_ME_15.4-Convocação_Ativa-Recebimento |
Objetivo
- Objetivos gerais:
- Gerar, atualizar, excluir e finalizar pendência de convocação ativa para as atividades de armazenagem e transferência de endereço.
- Permitir que as atividades de armazenagem e transferência possam ser executada a partir do programa WMS6743 - Convocação ativa.
Resumo dos Programas e Funções Criadas e Alteradas
Rotina | Tipo de Operação | Regras de Negócio |
WMSR139 | Criação | Função de regra de negócio para geração e atualização de pendencia de convocação ativa. |
WMS6378 | Alteração | Geração automática de planejamento de armazenagem |
WMS6177 | Alteração | Planejamento de armazenagem via desktop |
WMS6178 | Alteração | Planejamento de armazenagem e transferência via coletor |
WMS6077 | Alteração | Função responsável pela execução efetiva de um programa para uma determinada atividade |
WMS6743 | Alteração | Gerenciamento da convocação ativa |
WMS6180 | Alteração | Programa responsável pela armazenagem e transferência de endereço de palete |
WMS6185 | Alteração | Cancelamento do recebimento. |
Definição da Regra de Negócio
Para atingir os objetivos gerais, as implementações abaixo são necessárias:
- WMSR139 - RNL Geração/Exclusão e Atualização de pendência de convocação ativa.
- Objetivo das alterações a serem realizadas:
- Criar funções para:
- Geração de pendência de convocação ativa de armazenagem
- Com base em CESV.
- Uma pendência de convocação para cada Ordem de Serviço/Atividade relacionada ao CESV.
- Com base em CESV.
- Geração de pendência de convocação ativa de armazenagem ou transferência.
- Com base em Ordem de Serviço/Atividade.
- Uma para cada Ordem de Serviço/Atividade.
- Com base em Ordem de Serviço/Atividade.
- Exclusão de pendência de convocação ativa de armazenagem.
- Com base em CESV.
- Todas pendências de convocação relacionadas a Ordens de Serviço/Atividade de um CESV.
- Com base em CESV.
- Exclusão de pendência de convocação ativa de armazenagem ou transferência.
- Com base em Ordem de Serviço/Atividade
- Todas as pendências de convocação relacionadas a Ordem de Serviço/Atividade
- Com base em Ordem de Serviço/Atividade
- Finalização de pendência de convocação ativa com base em Ordem de Serviço/Atividade.
- Identificar que não existem mais processos de movimento não finalizados e realizar a inclusão no histórico do controle de convocação ativa e a exclusão do controle de convocação ativa.
- Também deve realizar uma verificação para auto-ajuste no sentido de gerar um novo registro de convocação ativa ao identificar que existem processos de movimento não finalizados e mais nenhum registro de convocação ativa não alocado.
- Geração de pendência de convocação ativa de armazenagem
- Criar funções para:
- Sugestão de implementação para atender os objetivos mencionados acima. Esta sugestão de implementação tem o objetivo de sugerir um caminho a ser seguido sendo que ajustes podem ser necessários para que os objetivos mencionados acima possam ser 100% atendidos. Este item (e) será considerado concluído se os objetivos acima mencionados forem alcançados.
Criar uma nova função wmsr139_gera_pendencia_conv_ativa_armz_cesv.Esta função deverá receber como parâmetro empresa(l_empresa), cesv(l_cesv), e modo de exibição de mensagem(l_modo_exibicao_msg). Com base no código do CESV recebido por parâmetro a função deverá gerar novos registros na wms_conv_ativa, um para cada ordem de serviço/atividade de armazenagem que possua algum processo de movimento com situação PE-Pendente relacionado ao CESV que ainda não possua pendência de convocação ativa (wms_conv_ativa). Utilizar consulta SQL nas tabelas wms_ordem_servico, wms_clas_operacao, wms_ordem_servico_ativ, wms_ativ, wms_tip_processo para obter todas as informações necessárias para inclusão dos novos registros na wms_conv_ativa. Retornar TRUE em caso de sucesso e FALSE em caso de erro.Expandir title NOTA: Origem das informações para gravação na wms_conv_ativ: - wms_conv_ativ.empresa = p_cod_empresa;
- wms_conv_ativ.trans_conv_ativa = Gerado automaticamente. Apenas pegar retorno;
- wms_conv_ativ.ctr_ent_sai_veic_docum= wms_ordem_servico.ctr_ent_sai_veic_docum;
- wms_conv_ativ.ordem_servico= wms_ordem_servico_ativ.ordem_servico;
- wms_conv_ativ.aitv= wms_ordem_servico_ativ.ativ;
- wms_conv_ativ.tip_classe_operacao = wms_clas_operacao.tip_clas_operacao;
- wms_conv_ativ.conv_ativa_operacao = wms_tip_processo.conv_ativa_operacao;
- wms_conv_ativ.tip_processo = wms_tip_processo.tip_processo;
- wms_conv_ativ.dat_hor_inclusao = Data e hora da execução da operação;
- wms_conv_ativ.usuario_alocacao = NULL
- wms_conv_ativ.dat_hor_alocacao_executor = NULL
- wms_conv_ativ.usuario_executor = NULL
- wms_conv_ativ.deposit = wms_ordem_servico.deposit;
- wms_.conv_ativa.endereco_origem = wms_ordem_servico.endereco_origem
- wms_.conv_ativa.endereco_destino = NULL.
Criar uma nova função wmsr139_exclui_pendencia_conv_ativa_armz_cesv. Esta função deverá receber como parâmetro empresa(l_empresa), cesv(l_cesv), e modo de exibição de mensagem(l_modo_exibicao_msg). Com base no código do CESV recebido por parâmetro a função deverá excluir todas as pendências de convocação ativa relacionados ao CESV.- Criar uma nova função wmsr139_gera_pendencia_conv_ativa_transf_armz_os. Esta função deverá receber como parâmetro empresa(l_empresa), ordem de serviço(l_ordem_servico), atividade(l_ativ), e modo de exibição de mensagem(l_modo_exibicao_msg). Com base no código da ordem de serviço e atividade recebido por parâmetro a função deverá gerar um novo registro na wms_conv_ativa (caso já não exista). Utilizar consulta SQL nas tabelas wms_ordem_servico, wms_clas_operacao, wms_ordem_servico_ativ, wms_ativ, wms_tip_processo para obter todas as informações necessárias para inclusão de um novo registro na wms_conv_ativa. Retornar status do processamento(l_status) e o código da transação criada na wms_conv_ativa (l_trans_conv_ativa). Em caso de erro, retornar 0 para o código da transação.
Expandir title NOTA: Origem das informações para gravação na wms_conv_ativ: - wms_conv_ativ.empresa = p_cod_empresa;
- wms_conv_ativ.trans_conv_ativa = Gerado automaticamente. Apenas pegar retorno;
- wms_conv_ativ.ctr_ent_sai_veic_docum= wms_ordem_servico.ctr_ent_sai_veic_docum;
- wms_conv_ativ.ordem_servico= wms_ordem_servico_ativ.ordem_servico;
- wms_conv_ativ.aitv= wms_ordem_servico_ativ.ativ;
- wms_conv_ativ.tip_classe_operacao = wms_clas_operacao.tip_clas_operacao;
- wms_conv_ativ.conv_ativa_operacao = wms_tip_processo.conv_ativa_operacao;
- wms_conv_ativ.tip_processo = wms_tip_processo.tip_processo;
- wms_conv_ativ.dat_hor_inclusao = Data e hora da execução da operação;
- wms_conv_ativ.usuario_alocacao = NULL
- wms_conv_ativ.dat_hor_alocacao_executor = NULL
- wms_conv_ativ.usuario_executor = NULL
- wms_conv_ativ.deposit = wms_ordem_servico.endereco_origem
- wms_.conv_ativa.endereco_origem = NULL
- wms_.conv_ativa.endereco_destino = NULL
- Criar uma nova função wmsr139_exclui_pendencia_conv_ativa_transf_armz_os. Esta função deverá receber como parâmetro empresa(l_empresa), ordem de serviço(l_ordem_servico), atividade(l_ativ), e modo de exibição de mensagem(l_modo_exibicao_msg). Com base no código da ordem de serviço e atividade recebido por parâmetro a função deverá excluir o(s) registro(s) da wms_conv_ativ. Retornar TRUE quando sucesso e FALSE caso ocorra alguma falha durante o processamento.
Criar uma nova função wmsr139_possui_pendencia_conv_ativa_nao_alocada_os. Esta função deverá receber como parâmetro empresa(l_empresa), ordem de serviço(l_ordem_servico), atividade(l_ativ), e modo de exibição de mensagem(l_modo_exibicao_msg). Com base no código da ordem de serviço e atividade recebido por parâmetro a função deverá verificar se existem registros na wms_conv_ativa com usuário_executor = NULL. Retornar TRUE caso encontre registro e FALSE caso não encontre.- Criar uma nova função wmsr139_gera_nova_pendencia_conv_ativa. Esta função deverá receber como parâmetro empresa(l_empresa), transação da convocação ativa (l_trans_conv_ativa), (l_usuario_executor) e modo de exibição de mensagem(l_modo_exibicao_msg).
- Criar uma nova função wmsr139_ajusta_movimentos_ospossui_movimento_sem_pendencia_conv_ativa. Esta função deverá receber como parâmetro empresa(l_empresa), ordem de serviço(l_ordem_servico), atividade(l_ativ), e modo de exibição de mensagem(l_modo_exibicao_msg).Com base no código da ordem de serviço e atividade recebido por parâmetro a função deverá verificar:
- Se existem processos de movimento com situação(sit_processo_moviment) diferente de "FI-Finalizado" e "CA-Cancelado" sem executor(wms_processo_moviment.usuario_executor = IS NULL) e sem pendência de convocação ativa sem alocação executor (wms_conv_ativa.usuario_executor IS NULL). Neste caso deve-se gerar uma nova pendência de convocação ativa sem executor . Retornar TRUE ao atender todas as situações mencionadas acima ou FALSE caso alguma situação não seja atendida.
- (wmsr139_gera_nova_pendencia_conv_ativa
- ). VERIFICAR POSSIBILIDADE DE DETALHAR MAIS
- Se existem processos de movimento com situação(sit_processo_moviment) diferente de "FI-Finalizado" e "CA-Cancelado" com executor(usuario_executor IS NOT NULL) e sem pendência de convocação ativa para o mesmo executor do movimento. Neste caso deve-se gerar uma nova pendência de convocação ativa para cada executor "orfão" (wmsr139_gera_nova_pendencia_conv_ativa). VERIFICAR POSSIBILIDADE DE DETALHAR MAIS
- Se existem processos de movimento com situação(sit_processo_moviment) diferente de "FI-Finalizado" e "CA-Cancelado" sem executor(wms_processo_moviment.usuario_executor = IS NULL) e sem pendência de convocação ativa sem alocação executor (wms_conv_ativa.usuario_executor IS NULL). Neste caso deve-se gerar uma nova pendência de convocação ativa sem executor . Retornar TRUE ao atender todas as situações mencionadas acima ou FALSE caso alguma situação não seja atendida.
- Criar uma nova função wmsr139_finaliza_pendencia_conv_ativa_transf_armz. Esta função deverá receber como parâmetro empresa(l_empresa), ordem de serviço(l_ordem_servico), atividadeparâmetro empresa(l_ativempresa), usuáriotransação da convocação ativa (l_usuariotrans_conv_ativa) e modo de exibição de mensagem(l_modo_exibicao_msg). Com base no código da ordem de serviço e atividade recebido na transação da convocação ativa recebida por parâmetro a função deverá:
- Validar se existe algum processo de movimento alocado para o usuário(usuario_executor = p_user) com situação(sit_processo_moviment) diferente de "CA-Cancelado" e "FI-Finalizado".
- Não existindo registro com as condições acima, incluir novo registro na wms_conv_ativa_historico com base no registro da wms_conv_ativa. O campo wms_conv_ativa_historico.dat_hor_fim deve ser a data em que o processamento está sendo realizado.
- Em seguida, a função deverá verificar se existem processos de movimento pendentes e sem pendência de convocação ativa(wmsr139_possui_movimento_sem_pendencia_conv_ativa). Existindo, uma nova pendência de convocação ativa deverá ser gerada (wmsr139_gera_nova_pendencia_conv_ativa).
- Por fim o registro de controle de convocação ativa deve ser excluído da wms_conv_ativa.
- Por fim, a função deverá retornar TRUE quando sucesso e FALSE caso ocorra alguma falha durante o processamento.
NOTA: Criar transação de banco de dados para englobar todos os passos acima.
Criar uma nova função wmsr139_atualiza_pendencia_conv_ativa_transf_armz. Esta função deverá receber como parâmetro empresa(l_empresa), processo de movimento(l_processo_moviment), e modo de exibição de mensagem(l_modo_exibicao_msg).Com base no código do processo de movimento recebido por parâmetro a função deverá atualizar os campos referente a alocação do usuário na pendência de convocação ativa.Expandir title NOTA: Campos a serem atualizados com sua respectiva origem - wms_conv_ativ.usuario_alocacao = SE wms_processo_moviment.usuario_executor IS NOT NULL ENTÃO wms_processo_moviment.usuario_inclusao SENÃO NULL;
- wms_conv_ativ.dat_hor_alocacao_executor = wms_processo_moviment.data_atribuicao_executor;
- wms_conv_ativ.usuario_executor = wms_processo_moviment.usuario_executor;
- wms_.conv_ativa.endereco_destino = wms_processo_moviment.endereco_destino.
- Objetivo das alterações a serem realizadas:
- WMS6378 - Planejamento automático da armazenagem. (Chamado do WMS6190 - Conferência do recebimento)
- Objetivo das alterações a serem realizadas:
- Ao realizar o planejamento da armazenagem, gerar uma pendência de convocação ativa para a ordem de serviço criada durante o planejamento da armazenagem.
- Ao realizar o planejamento da armazenagem, gerar uma pendência de convocação ativa para a ordem de serviço criada durante o planejamento da armazenagem.
- Sugestão de implementação para atender os objetivos mencionados acima. Esta sugestão de implementação tem o objetivo de sugerir um caminho a ser seguido sendo que ajustes podem ser necessários para que os objetivos mencionados acima possam ser 100% atendidos. Este item (e) será considerado concluído se os objetivos acima mencionados forem alcançados.
- Alterar a função wms6378_incluir_processo_moviment, criar variável l_utiliza_conv_ativa para que seja armazenado o valor do parâmetro utiliza_conv_ativa.
- Alterar a função wms6378_incluir_processo_moviment para que seja feita leitura do parâmetro utiliza_conv_ativa e seu valor seja armazenado na variável l_utiliza_conv_ativa. Implementar alteração logo no início da função.
- Alterar a função wms6378_incluir_processo_moviment para que logo após a inclusão dos processos de movimento realizados, após liberar o cursor (cq_incluir_processo_palete) as pendências de convocação ativa sejam geradas. Para isso realizar chamada para a função wmsr139_gera_pendencia_conv_ativa_transf_armz_os. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Alterar a função wms6378_incluir_processo_moviment, criar variável l_utiliza_conv_ativa para que seja armazenado o valor do parâmetro utiliza_conv_ativa.
- Objetivo das alterações a serem realizadas:
- WMS6177 - Planejamento de armazenagem desktop
- Objetivo das alterações a serem realizadas:
- Ao realizar o planejamento da armazenagem, gerar uma pendência de convocação ativa para a ordem de serviço criada durante o planejamento da armazenagem.
- Ao cancelar o planejamento da armazenagem excluir o(s) registro(s) de pendência de convocação ativa vinculado a(s) ordem(ns) de serviço(s) do(s) processo(s) de movimento.
- Sugestão de implementação para atender os objetivos mencionados acima. Esta sugestão de implementação tem o objetivo de sugerir um caminho a ser seguido sendo que ajustes podem ser necessários para que os objetivos mencionados acima possam ser 100% atendidos. Este item (e) será considerado concluído se os objetivos acima mencionados forem alcançados.
- Criar variável modular m_utiliza_conv_ativa para que seja armazenado o valor do parâmetro utiliza_conv_ativa.
- Alterar a função wms6177_after_load para que seja feita leitura do parâmetro utiliza_conv_ativa e seu valor seja armazenado na variável m_utiliza_conv_ativa. Logo no início da função.
- Alterar a função wms6177_incluir_processo_moviment para que logo após a inclusão dos processos de movimentos realizados no cursor cq_incluir_processo_palete as pendências de convocação ativa sejam geradas. Para isso realizar chamada para a função wmsr139_gera_pendencia_conv_ativa_transf_armz_os. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Alterar a função wms6177_excluir_os_reserva_processo para que logo após a exclusão dos processos de movimentos e a verificação de que não existem mais processos de movimento relacionados a OS (IF l_contador = 0 THEN), a pendência de convocação ativa seja excluída. Para isso realizar chamada para a função wmsr139_exclui_pendencia_conv_ativa_transf_armz_os (dentro e ao final do bloco condicional F l_contador = 0 THEN). Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S').
- Objetivo das alterações a serem realizadas:
- WMS6178 - Planejamento de Armazenagem / Transferência de endereço coletor de dados. (Chamado de WMS6281 - Planejamento Armazenagem e WMS6282 - Planejamento Transferência)
- Objetivo das alterações a serem realizadas:
- Ao realizar o planejamento da armazenagem ou transferência e criar o processo de movimento, gerar um registro de pendência de convocação ativa para a ordem de serviço/atividade.
- Ao realizar o planejamento da armazenagem ou transferência e criar o processo de movimento, gerar um registro de pendência de convocação ativa para a ordem de serviço/atividade.
- Sugestão de implementação para atender os objetivos mencionados acima. Esta sugestão de implementação tem o objetivo de sugerir um caminho a ser seguido sendo que ajustes podem ser necessários para que os objetivos mencionados acima possam ser 100% atendidos. Este item (e) será considerado concluído se os objetivos acima mencionados forem alcançados.
- Criar variável modular m_utiliza_conv_ativa para que seja armazenado o valor do parâmetro utiliza_conv_ativa.
- Alterar a função wms6178_before_menu para que seja feita leitura do parâmetro utiliza_conv_ativa e seu valor seja armazenado na variável m_utiliza_conv_ativa.
- Alterar a função wms6178_gera_tabelas_processo_movimentacao para que logo após a inclusão de cada processo de movimento realizado pela função wmsr19_grava_processo_moviment uma nova pendência de convocação ativa seja gerada. Para isso realizar chamada para a função wmsr139_gera_pendencia_conv_ativa_transf_armz_os. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Criar variável modular m_utiliza_conv_ativa para que seja armazenado o valor do parâmetro utiliza_conv_ativa.
- Objetivo das alterações a serem realizadas:
- WMS6077 - Função de controle para execução de atividades. (Chamado de WMS6070 lista pública e WMS6069 lista particular)
- Objetivo das alterações a serem realizadas:
- Atualmente para abrir o programa de execução de uma determinada atividade são recebidos os parâmetros de empresa, ordem de serviço, atividade, usuário, recurso. Para que seja possível convocar o usuário para um determinado processo de movimento, deve também ser possível passar o código do processo de movimento a ser executado. identificar que determinada atividade foi chamada da convocação ativa, passar por parâmetro também o código da transação da convocação ativa que originou a chamada ao programa.
- Atualmente para abrir o programa de execução de uma determinada atividade são recebidos os parâmetros de empresa, ordem de serviço, atividade, usuário, recurso. Para que seja possível convocar o usuário para um determinado processo de movimento, deve também ser possível passar o código do processo de movimento a ser executado. identificar que determinada atividade foi chamada da convocação ativa, passar por parâmetro também o código da transação da convocação ativa que originou a chamada ao programa.
- Sugestão de implementação para atender os objetivos mencionados acima. Esta sugestão de implementação tem o objetivo de sugerir um caminho a ser seguido sendo que ajustes podem ser necessários para que os objetivos mencionados acima possam ser 100% atendidos. Este item (e) será considerado concluído se os objetivos acima mencionados forem alcançados.
- Criar variável modular m_trans_processoconv_moviment ativa INTEGER que será responsável por armazenar o código do processo de movimento a ser executado pelas rotinas de armazenagem e transferência de endereçoda transação da pendência de convocação ativa.
- Criar função wms6077_set_processotrans_conv_movimentativa. Esta função deverá receber como parâmetro um código de processo de movimentotransação (l_trans_processoconv_moviment ativa INTEGER) e armazenar este valor na modular m_trans_processoconv_movimentativa.
- Alterar a função wms6077_consultar_programa para que ao alimentar a variável l_caminho quando m_programa <> 'SUP2065', seja passado como último parâmetro o código do processo de movimento da transação da convocação ativa (m_processotrans_conv_movimentativa ).Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Criar variável modular m_trans_processoconv_moviment ativa INTEGER que será responsável por armazenar o código do processo de movimento a ser executado pelas rotinas de armazenagem e transferência de endereçoda transação da pendência de convocação ativa.
- Objetivo das alterações a serem realizadas:
- WMS6743 - Convocação ativa
- Objetivo das alterações a serem realizadas:
- Ao alocar verificar necessidade de gerar novas pendências de convocoção
Alterar a busca por atividades a serem executadas considerando:O novo campo referente ao processo de movimento.A situação do processo de movimento para identificar se processo está "Em andamento", ou "Pendente" para definição da ordenação para convocação. Sendo:AT e IT > "Em andamento." .PE e NI > "Pendente."Outros status, o processo de movimento não está pronto para execução.
Considerar "usuário_executor" do processo de movimento para considerar atividade "Alocado" ou "Não alocado". Sendo:wms_processo_movimento.usuario_executor IS NOT NULL > "Alocado";wms_processo_movimento.usuario_executor IS NULL > "Não Alocado";
Ao abrir o programa, adicionar nas funções de ajuste da tabela wms_conv_ativa e wms_conv_ativa_historico a verificação de existencia de algum processo de movimento FI-Finalizado porém com algum registro na wms_conv_ativa. Nesta situação, realizar a finalização das pendências de convocação ativa.Ao encontrar atividade para execução, exibir em tela os campos abaixo.. Ao executar a chamada para execução da atividade de Armazenagem ou Transferência, enviar o código do processo de movimento.- Armazenagem
- Identificador 1 = Depositante.
- Identificador 2 = CESV (pode existir casos da CESV estar em branco).
- Transferência
- Identificador 1 = Depositante
- Identificador 2 = CESV (pode existir casos da CESV estar em branco).
- NOTA: No item 9 da especificação do requisito 15.3 é possível verificar o protótipo de tela onde estas informações devem ser apresentadas.
Ao executar a chamada para execução da atividade de Armazenagem ou Transferência, enviar o código do processo de movimento.- Armazenagem
- Sugestão de implementação para atender os objetivos mencionados acima. Esta sugestão de implementação tem o objetivo de sugerir um caminho a ser seguido sendo que ajustes podem ser necessários para que os objetivos mencionados acima possam ser 100% atendidos. Este item (e) será considerado concluído se os objetivos acima mencionados forem alcançados.
- Para o objeivo 1 e 2, não é possível determinar o ponto de alteração pois o programa ainda encontra-se em desenvolvimento. As indicações acabam se limitando ao objetivo final, ficando a cargo do programador definir durante o desenvolvimento junto ao analista o melhor ponto para alteração.
Para o objetivo 3, realizar chamada a nova função wms6077_set_processo_moviment, passando o processo de movimento, e em seguida realizar chamada a função wms6077_administra_os.
- Objetivo das alterações a serem realizadas:
- WMS6180 - Armazenagem / Transferência de endereço. (Chamado da lista pública WMS6070 ou particular WMS6069)
- Objetivo das alterações a serem realizadas:
- Gerar pendência de convocação ativa ao depositar palete em endereço drop-point.
- Gerar pendência de convocação ativa ao liberar equipamento e depositar palete em endereço diferente de armazém.
- Não permitir o usuário concluir sua participação na ordem de serviço/atividade de armazenagem/transferência com processo de movimentos alocados para o usuário. Nesta situação o usuário só deverá conseguir interromper a atividade.
- Ao concluir a armazenagem do palete do processo de movimento recebido do programa de convocação ativa, encerrar o programa de armazenagem encerrando a atividade do usuário e a pendência da convocação ativa.
- Sugestão de implementação para atender os objetivos mencionados acima. Esta sugestão de implementação tem o objetivo de sugerir um caminho a ser seguido sendo que ajustes podem ser necessários para que os objetivos mencionados acima possam ser 100% atendidos. Este item (e) será considerado concluído se os objetivos acima mencionados forem alcançados.
- Criar variável modular m_utiliza_conv_ativa para que seja armazenado o valor do parâmetro utiliza_conv_ativa.
- Alterar a função wms6180_movimentacao_armazenamento para que seja feita leitura do parâmetro utiliza_conv_ativa e seu valor seja armazenado na variável m_utiliza_conv_ativa. Esta alteração deverá estar já no início da função.
- Criar uma nova função wms6180_possui_processo_moviment_os_pendente_usuario. Esta função deverá verificar se existem processos de movimento alocados para o usuário(wms_processo_moviment.usuario_execucao=p_user) na ordem de serviço/atividade que ainda não foram executados (wms_processo_moviment.sit_processo_moviment NOT IN('FI','CA'))
- Alterar a função wms6180_entrada_etiqueta para que ao acionar a opção F4 (ON KEY (f4, control-k)), já no início do bloco condicional (IF l_processou_palete THEN) seja verificado se existem processos de movimento pendentes para o usuário através da função wms6180_possui_processo_moviment_os_pendente_usuario. Caso existam o usuário deverá ser notificado "Usuário possui outros movimentos pendentes de conclusão" e o cursor deverá voltar ao campo palete (NEXT FIELD m_etiq_mov). Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S').
Alterar a função wms6180_gera_tabelas_processo_movimentacao logo após o bloco de código condicional de chamada a fução wmsr40_desbloqueia_separacao. Neste ponto o processo de movimento está finalizado, sendo assim a pendência da convocação ativa poderá ser concluída. Para isso, realizar chamada a função wmsr139_finaliza_pendencia_conv_ativa_transf_armz. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')Alterar a função wms6180_entrada_finaliza_processo imediatamente antes do COMMIT da conclusão do processo de armazenagem do palete no endereço destino. Verificar se não existem movimentos em abertos com o usuário (wms6180_verifica_processos_movtcao_em_aberto() = FALSE) e em seguida se existem movimentos ainda pendentes para a ordem de serviço (wms6180_verifica_processos_movtcao_pendentes() = TRUE). Atendendo essas duas situações realizar o encerramento da execução da atividade para o usuário. Para isso alterar o valor da variável m_status_encer para "F" e m_finaliza_apenas_usuario para "S". Em seguida chamar a função wms6180_prepara_retorno. Condicionar estas alterações a utilização da convocação ativa (m_utiliza_conv_ativa = 'S') e a existência de um processo de movimento recebido por parâmetro (mr_parametro.processo_movimento IS NOT NULL). O objetivo desta alteração é que o processamento do programa wms6180 seja concluído voltando a execução do programa chamador (convocação ativa).- Alterar a função wms6180_gera_nova_seq_processo_movtcao para que logo após a inclusão do processo de movimento realizado pela função wmsr19_grava_processo_moviment uma nova pendência de convocação ativa seja gerada. Para isso realizar chamada para a função wmsr139_gera_pendencia_conv_ativa_transf_armz_os. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S'). Estas alterações tem o objetivo de gerar uma nova pendênca de convocação ativa para a ordem de serviço gerada quando o palete é armazenado em um endereço drop-point ou quando o equipamento é liberado e o palete é depositado em um endereço de picking.
- Objetivo das alterações a serem realizadas:
- WMSR22 - Função de controle de execução de ordem de serviço
- WMS6185 - Cancelamento do recebimento
- Objetivo das alterações a serem realizadas:
- Excluir pendência de convocação ativa para as atividades de armazenagem quando o cancelamento é realizado e os processos de movimento de armazenagem ainda se encontram pendentes/não iniciados.
- Gerar pendência de convocação ativa para a atividade de transferência de endereço para os paletes já armazenados com destino a doca de recebimento para posterior cancelamento do recebimento.
- Sugestão de implementação para atender os objetivos mencionados acima. Esta sugestão de implementação tem o objetivo de sugerir um caminho a ser seguido sendo que ajustes podem ser necessários para que os objetivos mencionados acima possam ser 100% atendidos. Este item (e) será considerado concluído se os objetivos acima mencionados forem alcançados.
- Criar variável modular m_utiliza_conv_ativa para que seja armazenado o valor do parâmetro utiliza_conv_ativa.
- Alterar a função wms6185_before_menu para que seja feita leitura do parâmetro utiliza_conv_ativa e seu valor seja armazenado na variável m_utiliza_conv_ativa. Adicionar a leitura do parâmetro logo após a leitura e validação existente para o parâmetro oper_confer_entrada_normal.
- Alterar a função wms6185_cancela_processo_armazenagem para que logo após a exclusão de cada processo de movimento realizado pela função wmsm151_wms_processo_moviment_exclui a pendência de convocação ativa seja excluída. Para isso realizar chamada para a função wmsr139_exclui_pendencia_conv_ativa_transf_armz. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Alterar a função wms6185_cancela_processo_armazenagem_por_aviso para que logo após a exclusão de cada processo de movimento realizado pela função wmsm151_wms_processo_moviment_exclui a pendência de convocação ativa seja excluída. Para isso realizar chamada para a função wmsr139_exclui_pendencia_conv_ativa_transf_armz. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Alterar a função wms6185_gera_movimentacao_palete_doca para que logo após a inclusão de cada processo de movimento realizado pela função wmsr19_grava_processo_moviment uma nova pendência de convocação ativa seja gerada. Para isso realizar chamada para a função wmsr139_gera_pendencia_conv_ativa_transf_armz. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Alterar a função wms6185_gera_movimentacao_palete_doca_por_aviso para que logo após a inclusão de cada processo de movimento realizado pela função wmsr19_grava_processo_moviment uma nova pendência de convocação ativa seja gerada. Para isso realizar chamada para a função wmsr139_gera_pendencia_conv_ativa_transf_armz. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Objetivo das alterações a serem realizadas:
- WMS6430 - Central do planejador
- Objetivo das alterações a serem realizadas:
- Atualizar pendência de convocação ativa ou realizar alocação direta ou distribuída, desalocação e realocação direta ou distribuída para as atividades de Transferência, Armazenagem e Cancelamento do Recebimtno.
- Atualizar pendência de convocação ativa ou realizar alocação direta ou distribuída, desalocação e realocação direta ou distribuída para as atividades de Transferência, Armazenagem e Cancelamento do Recebimtno.
- Sugestão de implementação para atender os objetivos mencionados acima. Esta sugestão de implementação tem o objetivo de sugerir um caminho a ser seguido sendo que ajustes podem ser necessários para que os objetivos mencionados acima possam ser 100% atendidos. Este item (e) será considerado concluído se os objetivos acima mencionados forem alcançados.
- Alterar a função wms6435a_atualiza_dados_alocacao (alocação & realocação) para que ao final da função seja chamada a função wmsr139_wmsr139_gera_pendencia_conv_ativa_transf_armztiva_transf_armz. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Alterar a função wms6435b_desalocar_movimento (desaloação) para que ao final da função seja chamada a função wmsr139_atualiza_pendencia_conv_ativa_transf_armz. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Alterar a função wms6435c_confirmar (alocação & realocação direta) para que logo após realizar a atualização (UPDATE) do processo de movimento seja chamada a função wmsr139_atualiza_pendencia_conv_ativa_transf_armz. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Objetivo das alterações a serem realizadas:
- WMS6631 - Alocação de recurso
- Objetivo das alterações a serem realizadas:
- Atualizar pendência de convocação ativa ou realizar alocação direta ou distribuída, desalocação e realocação direta ou distribuída para as atividades de Transferência, Armazenagem e Cancelamento do Recebimtno.
- Atualizar pendência de convocação ativa ou realizar alocação direta ou distribuída, desalocação e realocação direta ou distribuída para as atividades de Transferência, Armazenagem e Cancelamento do Recebimtno.
- Sugestão de implementação para atender os objetivos mencionados acima. Esta sugestão de implementação tem o objetivo de sugerir um caminho a ser seguido sendo que ajustes podem ser necessários para que os objetivos mencionados acima possam ser 100% atendidos. Este item (e) será considerado concluído se os objetivos acima mencionados forem alcançados.
- Alterar a função wms663108a_atualiza_dados_alocacao (alocação & realocação) para que ao final da função seja chamada a função wmsr139_atualiza_pendencia_conv_ativa_transf_armz. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Alterar a função wms663108b_desalocar_movimento (desaloação ) para que ao final da função seja chamada a função wmsr139_atualiza_pendencia_conv_ativa_transf_armz. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Alterar a função wms663108c_confirmar (alocação & realocação direta) para que logo após realizar a atualização (UPDATE) do processo de movimento seja chamada a função wmsr139_atualiza_pendencia_conv_ativa_transf_armz. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S')
- Objetivo das alterações a serem realizadas:
- WMSR139 - RNL Geração/Exclusão e Atualização de pendência de convocação ativa.
Dicionário de Dados
Alteração da tabela wms_conv_ativa e wms_conv_ativa_historico para inclusão de nova coluna.
Nome | Tipo | Obrigatória |
---|---|---|
processo_moviment | INT | Não |
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|