Páginas filhas
  • ER_LOGWMS01-1621_ME15.5-Convocação_Ativa-Armazenagem_Transferencia

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

 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

LOGWMS01

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

Gerar Especificação - ME 15.5

País

( x  ) Brasil  (  ) Argentina  (  ) Mexico  (  ) Chile  (  ) Paraguai  (  ) Equador

(  ) USA  (  ) Colombia   (  ) Outro _____________.

Aviso
titleATENÇÃO!

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

  1. Objetivos gerais: 
    1. Gerar, atualizar, excluir e finalizar pendência de convocação ativa para as atividades de armazenagem e transferência de endereço.
    2. 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

RotinaTipo de OperaçãoRegras de Negócio
WMSR139CriaçãoFunção de regra de negócio para geração e atualização de pendencia de convocação ativa.
WMS6378AlteraçãoGeração automática de planejamento de armazenagem
WMS6177AlteraçãoPlanejamento de armazenagem via desktop
WMS6178AlteraçãoPlanejamento de armazenagem e transferência via coletor
WMS6077AlteraçãoFunção responsável pela execução efetiva de um programa para uma determinada atividade
WMS6743AlteraçãoGerenciamento da convocação ativa
WMS6180AlteraçãoPrograma responsável pela armazenagem e transferência de endereço de palete
WMS6185AlteraçãoCancelamento do recebimento.

Definição da Regra de Negócio

Para atingir os objetivos gerais, as implementações abaixo são necessárias:

    1. Alterar dicionário de dados
      1. Incluir a coluna processo_moviment INTEGER NULL, nas tabelas wms_conv_ativa e wms_conv_ativa_historico.


    2. WMSR139 - RNL Geração/Exclusão e Atualização de pendência de convocação ativa.
      1. Objetivo das alterações a serem realizadas: 
        1. Criar funções para geração, exclusão e finalização de pendência de convocaçãoa tiva para os processos de armazenagem e transferência de endereço.

      2. 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.
        1. Criar 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 processo de movimento de armazenagem com situação PE-Pendente relacionado ao CESV que ainda não esteja na wms_conv_ativa. Utilizar consulta SQL nas tabelas wms_processo_moviment, 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_ativaRetornar status do processamento(l_status) 
          1. Expandir
            titleNOTA: Origem das informações para gravação na wms_conv_ativ:
            1. wms_conv_ativ.empresa = p_cod_empresa;
            2. wms_conv_ativ.trans_conv_ativa = Gerado automaticamente. Apenas pegar retorno;
            3. wms_conv_ativ.ctr_ent_sai_veic_docum= wms_ordem_servico.ctr_ent_sai_veic_docum;
            4. wms_conv_ativ.ordem_servico= wms_processo_moviment.ordem_servico;
            5. wms_conv_ativ.aitv= wms_processo_moviment.ativ;
            6. wms_conv_ativ.tip_classe_operacao = wms_clas_operacao.tip_clas_operacao;
            7. wms_conv_ativ.conv_ativa_operacao = wms_tip_processo.conv_ativa_operacao;
            8. wms_conv_ativ.tip_processo = wms_tip_processo.tip_processo;
            9. wms_conv_ativ.dat_hor_inclusao = Data e hora da execução da operação;
            10. wms_conv_ativ.usuario_alocacao = SE wms_processo_moviment.usuario_executor IS NOT NULL ENTÃO wms_processo_moviment.usuario_inclusao SENÃO NULL;
            11. wms_conv_ativ.dat_hor_alocacao_executor = wms_processo_moviment.data_atribuicao_executor;
            12. wms_conv_ativ.usuario_executor = wms_processo_moviment.usuario_executor;
            13. wms_conv_ativ.deposit = wms_ordem_servico.deposit;
            14. wms_.conv_ativa.endereco_origem = wms_processo_moviment.endereco_origem;
            15. wms_.conv_ativa.endereco_destino = wms_processo_moviment.endereco_destino.
        2. Criar 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 todos os processos de movimento de armazenagem com situação PE-Pendente relacionado ao CESV.
        3. Criar função wmsr139_gera_pendencia_conv_ativa_transf_armzEsta 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á gerar um novo registro na wms_conv_ativa. Utilizar consulta SQL nas tabelas wms_processo_moviment, 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.
          1. Expandir
            titleNOTA: Origem das informações para gravação na wms_conv_ativ:
            1. wms_conv_ativ.empresa = p_cod_empresa;
            2. wms_conv_ativ.trans_conv_ativa = Gerado automaticamente. Apenas pegar retorno;
            3. wms_conv_ativ.ctr_ent_sai_veic_docum= wms_ordem_servico.ctr_ent_sai_veic_docum;
            4. wms_conv_ativ.ordem_servico= wms_processo_moviment.ordem_servico;
            5. wms_conv_ativ.aitv= wms_processo_moviment.ativ;
            6. wms_conv_ativ.tip_classe_operacao = wms_clas_operacao.tip_clas_operacao;
            7. wms_conv_ativ.conv_ativa_operacao = wms_tip_processo.conv_ativa_operacao;
            8. wms_conv_ativ.tip_processo = wms_tip_processo.tip_processo;
            9. wms_conv_ativ.dat_hor_inclusao = Data e hora da execução da operação;
            10. wms_conv_ativ.usuario_alocacao = SE wms_processo_moviment.usuario_executor IS NOT NULL ENTÃO wms_processo_moviment.usuario_inclusao SENÃO NULL;
            11. wms_conv_ativ.dat_hor_alocacao_executor = wms_processo_moviment.data_atribuicao_executor;
            12. wms_conv_ativ.usuario_executor = wms_processo_moviment.usuario_executor;
            13. wms_conv_ativ.deposit = wms_ordem_servico.deposit;
            14. wms_.conv_ativa.endereco_origem = wms_processo_moviment.endereco_origem;
            15. wms_.conv_ativa.endereco_destino = wms_processo_moviment.endereco_destino.
        4. Criar uma nova função wmsr139_exclui_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á excluir o(s) registro(s) da wms_conv_ativa para o processo de movimento recebido por parâmetro. RetornarTRUE quando sucesso e FALSE caso ocorra alguma falha durante o processamento.
        5. Criar uma nova função wmsr139_finaliza_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á:
          1. Validar se situação do processo de movimento está FI-Finalizado. Caso não esteja, retornar FALSE e a mensagem "Processo de movimento não está finalizado, pendência de convocação ativa não pode ser finalizada."
          2. Estando o processo de movimento FI-Finalizado, 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.
          3. Após inclusão do registro na wms_conv_ativa_historico, o registro deve ser excluído da wms_conv_ativa.
          4. Por fim, a função deverá retornar TRUE quando sucesso e FALSE caso ocorra alguma falha durante o processamento.
        6. 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. 
          1. Expandir
            titleNOTA: Campos a serem atualizados com sua respectiva origem
            1. wms_conv_ativ.usuario_alocacao = SE wms_processo_moviment.usuario_executor IS NOT NULL ENTÃO wms_processo_moviment.usuario_inclusao SENÃO NULL;
            2. wms_conv_ativ.dat_hor_alocacao_executor = wms_processo_moviment.data_atribuicao_executor;
            3. wms_conv_ativ.usuario_executor = wms_processo_moviment.usuario_executor;
            4. wms_.conv_ativa.endereco_destino = wms_processo_moviment.endereco_destino.

    3. WMS6378 - Planejamento automático da armazenagem. (Chamado do WMS6190 - Conferência do recebimento)
      1. Objetivo das alterações a serem realizadas: 
        1. Ao realizar o planejamento da armazenagem e criar cada processo de movimento, gerar um registro de pendência de convocação ativa vinculado com os processos de movimento recém gerados. 

      2. 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.
        1. Criar variável modular m_utiliza_conv_ativa para que seja armazenado o valor do parâmetro utiliza_conv_ativa.
        2. Alterar a função wms6378_confirmacao_planejamento_auto 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.
        3. Alterar a função wms6378_confirmacao_planejamento_auto para que logo após a inclusão dos processos de movimento realizados pela função wms6378_incluir_processo_moviment as pendências de convocação ativa sejam geradas. Para isso realizar chamada para a função wmsr139_gera_pendencia_conv_ativa_armz_cesvCondicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S'


    4. WMS6177 - Planejamento de armazenagem desktop
      1. Objetivo das alterações a serem realizadas: 
        1. Ao realizar o planejamento da armazenagem e criar cada processo de movimento do planejamento da armazenagem, gerar um registro de pendência de convocação ativa vinculado com o processo de movimento recém gerado. Obter atividade, ordem de serviço, e CESV da ordem de serviço e vincular ao registro de convocação ativa. 
        2. Ao cancelar o planejamento da armazenagem e excluir cada processo de movimento do planejamento de armazenagem, excluir o registro de pendência de convocação ativa vinculado.  

      2. 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.
        1. Criar variável modular m_utiliza_conv_ativa para que seja armazenado o valor do parâmetro utiliza_conv_ativa.
        2. 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.
        3. 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_armz_cesv. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S'
        4. Alterar a função wms6177_excluir_os_reserva_processo para que logo após a exclusão dos processos de movimentos realizado no cursor a pendência de convocação ativa seja excluída. Para isso realizar chamada para a função wmsr139_exclui_pendencia_conv_ativa_armz_cesvCondicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S').


    5. WMS6178 - Planejamento de Armazenagem / Transferência de endereço coletor de dados. (Chamado de WMS6281 - Planejamento Armazenagem e WMS6282 - Planejamento Transferência)
      1. Objetivo das alterações a serem realizadas: 
        1. Ao realizar o planejamento da armazenagem ou transferência e criar cada processo de movimento, gerar um registro de pendência de convocação ativa vinculado com o processo de movimento recém gerado. 

      2. 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.
        1. Criar variável modular m_utiliza_conv_ativa para que seja armazenado o valor do parâmetro utiliza_conv_ativa.
        2. 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. 
        3. 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_armzCondicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S'


    6. WMS6077 - Função de controle para execução de atividades. (Chamado de WMS6070 lista pública e WMS6069 lista particular)
      1. Objetivo das alterações a serem realizadas: 
        1. 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. 

      2. 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.
        1. Criar variável modular m_processo_moviment 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ço.
        2. Criar função wms6077_set_processo_moviment. Esta função deverá receber como parâmetro um código de processo de movimento(l_processo_moviment INTEGER) e armazenar este valor na modular m_processo_moviment.
        3. 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 (m_processo_moviment).Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S'


    7. WMS6743 - Convocação ativa
      1. Objetivo das alterações a serem realizadas: 
        1. Alterar a busca por atividades a serem executadas considerando:
          1. O novo campo referente ao processo de movimento.
          2. 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:
            1. AT e IT > "Em andamento." .
            2. PE e NI > "Pendente."
            3. Outros status, o processo de movimento não está pronto para execução.
          3. Considerar "usuário_executor" do processo de movimento para considerar atividade  "Alocado" ou "Não alocado". Sendo:
            1. wms_processo_movimento.usuario_executor IS NOT NULL > "Alocado";
            2. wms_processo_movimento.usuario_executor IS NULL > "Não Alocado";
        2. 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.
        3. Ao encontrar atividade para execução, exibir em tela os campos abaixo. 
          1. Armazenagem
            1. Identificador 1 = CESV.
            2. Identificador 2 = Palete do processo de movimento.
          2. Transferência
            1. Identificador 1 = Processo de movimento.
            2. Identificador 2 = Palete.
          3. 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.
        4. Ao executar a chamada para execução da atividade de Armazenagem ou Transferência, enviar o código do processo de movimento.

      2. 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.
        1. 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.
        2. 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.


    8. WMS6180 - Armazenagem / Transferência de endereço. (Chamado da lista pública WMS6070 ou particular WMS6069)
      1. Objetivo das alterações a serem realizadas: 
        1. Permitir receber por parâmetro o código de um determinado processo de movimento para execução. Este código de processo de movimento será enviado pelo programa de convocação ativa.
        2. Validar se o palete informado pelo usuário corresponde ao palete do processo de movimento recebido do programa de convocação ativa.
        3. Ao acionar a função F6/CTRL-E - End/Palt exibir apenas o endereço e o palete do processo de movimento recebido do programa de convocação ativa.
        4. Gerar pendência de convocação ativa ao depositar palete em endereço drop-point ou ao liberar equipamento e depositar palete em endereço diferente de armazém.
        5. 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.

      2. 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.
        1. Criar variável modular m_utiliza_conv_ativa para que seja armazenado o valor do parâmetro utiliza_conv_ativa.
        2. Alterar o record mr_parametros para incluir duas novas variáveis: pocesso de movimento(processo_moviment) e palete(palete). 
        3. Criar função wms6180_retorna_palete. Esta função deverá receber como parâmetro empresa e processo de movimento e retornar o palete do processo de movimento recebido como parâmetro.
        4. Alterar a função wms6180_movimentacao_armazenamento para que:
          1. 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.
          2. Seja lido o processo de movimento recebido como parâmetro. O código do processo de movimento será o sexto parâmetro recebido pela rotina (arg_val(6)) e seu valor deverá ser armazenado na nova variável mr_parametro.processo_moviment.
          3. Logo em seguida seja chamada a função wms6180_retorna_palete para obter o palete do processo de movimento(mr_parametro.processo_moviment). O palete obtido deve ser armazenado na nova variável mr_parametros.palete
          4. As alterações (b) e (c) devem estar condicionadas a utilização da convocação ativa (m_utiliza_conv_ativa = 'S').
          5. Caso a convocação ativa não seja utilizada (m_utiliza_conv_ativa = 'N') ou não tenha sido recebido um processo de moviment como parâmetro, as novas varíaveis deverão possuir seu valor NULL.
        1. Alterar a função wms6180_entrada_etiqueta na estrutura de input de dados, no after field do campo m_etiq_mov. Logo após as validações existentes que verificam se o palete informado não é nulo e se o palete existe, alterar para verificar também se o palete informado (mr_movimento.identif_palete) é igual ao palete do processo movimento que o usuário foi convocado para realizar armazenagem (mr_parametro.palete). Caso não seja igual, usuário deve ser notificado "Palete informado difere do palete convocado para armazenagem." Estas implementações devem estar condicionadas 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).
        2. Alterar a função wms6180_entrada_etiqueta na estrutura de input de dados, na função F6/CTRL-E - End/Palt. Passar o palete (mr_parametro.palete) do processo de movimento recebido como parâmetro para a função wms6236_mostra_endereco_palete. Na função wms6236_mostra_endereco_palete o palete é o último parâmetro, atualmente é passado NULL.
        3. 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_armzCondicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S'
        4. 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).
        5. Alterar a função wms6180_gera_nova_seq_processo_movtcao 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_armzCondicionar 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 o processo de movimento gerado 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.


    9. WMS6185 - Cancelamento do recebimento
      1. Objetivo das alterações a serem realizadas: 
        1. 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.
        2. 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.

      2. 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.
        1. Criar variável modular m_utiliza_conv_ativa para que seja armazenado o valor do parâmetro utiliza_conv_ativa.
        2. 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.
        3. 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_armzCondicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S'
        4. 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_armzCondicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S'
        5. 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_armzCondicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S'
        6. 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_armzCondicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S'


    10. WMS6430 - Central do planejador 
      1. Objetivo das alterações a serem realizadas: 
        1. 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.

      2. 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.
        1. 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_atualiza_pendencia_conv_ativa_transf_armz. Condicionar esta alteração a utilização da convocação ativa (m_utiliza_conv_ativa = 'S'
        2. 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'
        3. 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'


    1. WMS6631 - Alocação de recurso
      1. Objetivo das alterações a serem realizadas: 
        1. 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.

      2. 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.
        1. 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'
        2. 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'
        3. 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'


Dicionário de Dados

Alteração da tabela wms_conv_ativa e wms_conv_ativa_historico para inclusão de nova coluna.

NomeTipoObrigatória
processo_movimentINTNão

 

 

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