Páginas filhas
  • ER_PCREQ-10482_Realizar_baixa_de_componentes_ligados_a_OP

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Migration of unmigrated content due to installation of a new plugin

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

  

(Obrigatório)

Informações Gerais

 


Especificação

Produto

Logix

Módulo

WMS

Segmento Executor

Distribuição e Logística

Projeto1

L_DL_WMS002

IRM1

PCREQ-6437

Chamado

TRZCZE

Subtarefa1

 

Release de Entrega Planejada

12.1.12

País

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

(  ) USA  (  ) Colombia   (  ) Outro _____________.

Réplica

Sim

   Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos). 

(Obrigatório)

Objetivo

 

Na baixa de estoque efetuada durante um apontamento de produção ele não está efetuando a baixa A partir da ativação de um novo parâmetro o sistema passará a efetuar o controle dos componentes que foram transferidos para aquela OP (Destino) específico e sim de qualquer OP que já tenha seu estoque de componentes transferido para o local de produção, sendo assim, impede o rastreamento da Matéria-Prima X Acabado.

O Objetivo desse desenvolvimento é que a baixa de estoque deve ser efetuada para os componentes que foram transferidos especificamente para a OP.

reservados para consumo especificamente de uma Ordem de Produção, possibilitando assim efetuar a rastreabilidade dos mesmos.

(Obrigatório)

Definição da Regra de Negócio

 

Atualmente quando um produto é colocado na área de produção qualquer OP em Ordem de Produção em que este componente seja necessário poderá utilizar o saldo disponível, independente de qual seja a OP Ordem de Produção de origem do saldo que encontra-se neste local.

Segundo cliente: Quando é liberado um componente do almoxarifado para o local de produção, aquele componente mesmo sendo igual ao necessário para outra ordem de produção ele foi separado especificamente para aquela OP, e será consumido fisicamente para aquela OP a qual ele foi separada e não para nenhuma outra. Se eu puder apontar uma OP quando o material dela não foi totalmente separado ainda e ela consumir no sistema a matéria prima de outra OP, ocorre no cliente problemas de rastreamento da Materia Prima X Acabado, além disso, essa situação causa muita confusão no operacional pois a matéria prima foi separada especificamente para uma OP e se eu não há tenho não deveria conseguir apontar.

Porém com isso não é possível ter uma rastreabilidade dos componentes que foram consumidos para aquela Ordem de produção. Assim serão descritas algumas alterações em programas, para que seja possível efetuar essa rastreabilidade e os componentes que foram consumidos especificamente para cada Ordem de Produção.

O Fluxo principal do processo será o mesmo, com a diferença que agora, as reservas estarão relacionadas diretamente com a Ordem de produção, possibilitando rastreabilidade. 

No coletor ao efetuar o ressuprimento do endereço de produção, o usuário deverá selecionar a ordem de produção, filtrando assim somente os processos referente a esta. O Objetivo desse desenvolvimento é que a baixa de estoque deve ser efetuada para os componentes que foram transferidos especificamente para a OP.

Para que esse controle seja possível, deve ser criado novo parâmetro "baixawms_controle_comp_ligados_op".

Alterações de Programas

Criação de novo parâmetro

LOG00086 - Parâmetros

  • Criar novo parâmetro no sistema:
    • Conversor: wms00537.cnv
  • Parâmetro:
    • Código: wms_controle_comp_op
    • Descrição: "Realizar controle de componentes relacionados com a Ordem de Produção"
    • Área: 9 - LOGIX WMS
    • Sistema: 407 - LOGIX WMS
    • Rotina: 292
    • Tipo
de Operação

Opção de Menu

Regras de Negócio

wmsr112

Alteração

-

-

Alterações de Programas

1)      Criação de novo parâmetro para controlar se as identificações a dar baixa tem que ser as que foram reservadas para a OP. “baixa_comp_ligados_op”

    • conteúdo: F - Flag
    • Permitir nulo?: S
    • Case sensitive: NULL
  • Auto-incremento: N
  • Situação: A – Ativo
  • Efetuar replicação: N
  • Replicação opcional: N
  • Cliente: 105 – TOTVS
  • Valor padrão: N
  • Comentário rodapé: NULL
  • Help: Caso o parâmetro esteja ativo ( "S" para ativo ou "N" para inativo), o controle de reservas será por Ordem de produção. Obs: É imprescindível utilizar um identificador visual no ato da separação para que seja possível relacionar fisicamente as matérias primas com a Ordem de produção no ato do consumo.

Validação do novo parâmetro

       No 2)      No momento da ativação do novo parâmetro, deve  deve ser verificado se não há algum processo em andamento. Caso haja alguma OP em Ordem de Produção em andamento não deve permitir ativar o parâmetro, e mostrar mensagem ao usuário informando que primeiro todos os processos devem ser encerrados para depois ativar o novo parâmetro. Perguntar para alguém do MAN.

“””[28/03/2016 09:18] Fabio David Cortes:

da uma olhada no MAN0515 pra ver o q executa do WMSr112. Acho que chama algumas funções lá.
A tabela é "ORDENS". o campos é o IES_SITUA

sendo 4 = LIBERADA (em andamento)”””

 

 

3)      Dentro da função wmsr112_gera_devolucao, buscar o novo parâmetro através da função:

CALL log2250_busca_parametro(l_empresa, baixa_comp_ligados_op), caso retorne ‘S ‘ e gravar em uma variável

4)      Em todos os 2 selects do fonte, onde busca SELECT SUM(estoque_loc_reser.qtd_reservada) e tem o where

.

        Para efetuar essa validação efetuar o SELECT ABAIXO:

           SELECT DISTINCT 1
              FROM estoque_loc_reser a,
                          est_loc_reser_end b,
                          sup_par_resv_est c
           WHERE a.cod_empresa = p_cod_empresa
                 AND b.cod_empresa = a.cod_empresa
                 AND b.num_reserva = a.num_reserva
                 AND c.empresa = a.cod_empresa
                 AND c.reserva = a.num_reserva
                 AND c.parametro = 'integracao_man'
                 AND a.qtd_reservada > 0
                 AND b.deposit IS NOT NULL

       Caso encontre algum registro não deve permitir marcar o parâmetro e mostrar a mensagem: "Há reservas de estoque para processos de produção, alteração não permitida."


Alteração no Wmsr112

     

  1.  Nas chamadas da função wmsr105_atualiza_sup_par_resv_est  sempre gravar o numero da Ordem de produção, independente do parâmetro;
  2. Em todos os selects do fonte, onde relaciona a tabela sup_par_resv_est com o parâmetro de integração com o Manufatura, através do where_clause sup_par_resv_est.parametro = 'integracao_man' caso o parâmetro esteja como “S” deve adicionar a condição AND sup_par_resv_est. parametro_val = l_destino (variável vem preenchida com o
NR
  1. Número da
OP
  1. Ordem de Produção).
5)     
  1. Verificar as chamadas da função wmsr105_atualiza_sup_par_resv_est que está gravando o parâmetro ‘integracao_man’, para passar como parâmetro o
nr
  1. número da
OP
  1. Ordem de Produção.
6)     
  1. Na função wmsr112_gera_reservas_atendimento após a chamada da função wmsr112_split_reserva Atualizar a tabela sup_par_resv_est, atualizando o campo
parametro
  1. parâmetro_val com o número da
OP
  1. Ordem de Produção

Exemplo de Aplicação:

  • Criar o campo “% Mínimo Espécie” (AAA_PERESP) onde o usuário informará o % que o aluno pagará em dinheiro. Esse % poderá ser alterado durante a negociação.
  • Criar o campo “Referência Mínima para Cálculo” (AAA_REFCAL) onde o usuário informará um dos 4 valores disponíveis para pagamento das mensalidades  como a referência mínima para calcular o débito total do aluno.
  • Criar o parâmetro MV_ACPARNE que definirá se as informações de “% Mínimo Espécie” e “Referência Mínima para Cálculo” serão obrigatórias.
  • O parâmetro MV_ACPARNE deve ter as seguintes opções: 1=Obrigatório e 2=Opcional. Deve ser inicializado como opcional>.

 

Tabelas Utilizadas

  • SE2 – Cadastro de Contas a Pagar
  • FI9 – Controle de Emissão de DARF>.

Opcional

Protótipo de Tela

 

<Caso necessário inclua protótipos de telas com o objetivo de facilitar o entendimento do requisito, apresentar conceitos e funcionalidades do software>.

 

Protótipo 01

 

 

 Image Removed

 

 

 

 

 

 

Opcional

Fluxo do Processo

 

<Nesta etapa incluir representações gráficas que descrevam o problema a ser resolvido e o sistema a ser desenvolvido. Exemplo: Diagrama - Caso de Uso, Diagrama de Atividades, Diagrama de Classes, Diagrama de Entidade e Relacionamento e Diagrama de Sequência>. 

Opcional

Dicionário de Dados

 

Arquivo ou Código do Script: AAA – Negociação Financeira / *Versao=CP.2014.12_03*/

  

Índice

Chave

01

<FI9_FILIAL+FI9_IDDARF+FI9_STATUS>

02

<FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_EMISS+FI9_IDDARF>

03

<FI9_FILIAL+FI9_FORNEC+ FI9_LOJA+FI9_PREFIX+FI9_NUM+FI9_PARCEL+FI9_TIPO>

Campo

<AAA_PERESP>

Tipo

<N>

Tamanho

<6>

Valor Inicial

<Varia de acordo com o tipo informado. Por exemplo, quando o campo “tipo” for date, neste campo pode ser informado uma data>. 

Mandatório

Sim (  ) Não (  )

Descrição

<Referência Mínima para Cálculo>

Título

<Ref.Calc.>

Picture

<@E999.99>

Help de Campo

<Informar o % que o aluno pagará em dinheiro. Esse % poderá ser alterado durante a negociação>

 

(Opcional)

Grupo de Perguntas

 

<Informações utilizadas na linha Protheus>.

 

Nome: FINSRF2

X1_ORDEM

01

X1_PERGUNT

Emissão De

X1_TIPO

D

X1_TAMANHO

8

X1_GSC

G

X1_VAR01

MV_PAR01

X1_DEF01

Comum

X1_CNT01

'01/01/08'

X1_HELP

Data inicial do intervalo de emissões das guias de DARF a serem consideradas na seleção dos dados para o relatório 

 

(Opcional)

Consulta Padrão

<Informações utilizadas na linha Protheus>

 

Consulta: AMB

Descrição

Configurações de Planejamento

Tipo

Consulta Padrão

Tabela

“AMB”

Índice

“Código”

Campo

“Código”; ”Descrição”

Retorno

AMB->AMB_CODIGO

 
  1. Dentro da função wmsr112_separacao_picking é chamada a função wmsr105_atualiza_sup_par_resv_est. Adicionar um select antes para buscar a Ordem de produção e passar como parâmetro.
  2. Quando ocorrer de o programa não encontrar quantidade para baixa naquela Ordem de Produção especificamente no endereço de produção.É necessário verificar os retornos de mensagens para que deixem claro essa situação e a mensagem precisa evidenciar isso.
  3. É necessário prever para que só permita fazer reservas para números de Ordens de Produção que realmente existam, e que na baixa do componente isso seja considerado.

 

Alteração na consulta de saldo de estoque wms6170

 

No programa wms6170 na opção "Reservas", alterar para que estando ativo o novo parâmetro,  no campo "Documento" traga o número da ordem de produção que originou a reserva.

Image Added

 

Alteração no Wms6794

1) Antes de mostrar os movimentos, caso o novo parâmetro esteja ativo, mostrar uma lista com ordens de produção, e ao selecionar a Ordem de Produção, mostrar somente os movimentos relacionados a Ordem de Produção.

Image Added

Alteração na Requisição de Estoque wms6791

1) Caso o novo parâmetro esteja ativo, validar a ordem de produção informada(situação, e existência). Além disso na devolução via WMS6791 deverá selecionar somente os itens que possuírem saldo para aquela Ordem de Produção no endereço de produção (essas validações são efetuadas dentro do wmsr112).

2) Retirar a opção "Manual" do campo "Origem"

3)Ao lado do campo requisição incluir um checkbox "É manual?".

4) Criar um novo campo na tabela wms_requisicao_estoque chamado "Manual".

5) Ao clicar em incluir, alterar para que seja possível modificar o campo "Origem". Deixar marcado o campo "É Manual?" e não permitir que ele seja alterado, 6) Caso o novo parâmetro esteja ativo, verificar o segmento da empresa, e caso seja Industria trazer o campo "Origem" selecionado o campo "Produção", caso seja Operador logístico, trazer marcado "Montagem/desmontagem kit".

7) Alterar Select principal, para quando encontrar uma Requisição onde o campo Origem esteja = "M", marcar o campo É Manual.

8) No Affer_load do programa, chamar uma nova função para atualizar as requisições onde o campo Origem_requisicao esteja como 'M'. 

9) Nessa nova função, primeiro fazer um select distinct 1 na tabela wms_requisicao_estoque, filtrando por empresa e origem_Requisicao = 'M', caso encontre algum registro, efetuar update na tabela wms_requisicao_estoque, atualizando o campo origem_requisicao, caso não encontre registros, abrir o programa normalmente sem atualizar a tabela, pois essa atualização deve ocorrer somente uma única vez. Update:

UPDATE wms_requisicao_estoque
SET origem_requisicao = l_origem,
manual = 'S'
WHERE empresa = p_cod_empresa
AND trans_requisicao = mr_requisicao.trans_requisicao

10) Para a variável l_origem, verificar o segmento da empresa, caso seja industria atualizar o campo "Origem" como "P" - Produção, caso seja Operador logístico, atualizar como "K" - Montagem\Desmontagem kit.

SET origem_requisicao = l_origem,

11) Incluir na Toolbar nova opção, Detalhes Ordem. Ao clicar nessa nova opção deverá abrir o programa wms6804 - Detalhes Rastreabilidade Ordem de Produção. Essa nova opção deverá estar disponível somente se o novo parâmetro estiver ativo, e além disso a requisição de estoque que está sendo pesquisada deve ser de origem Produção e do tipo Separação :

 

Image Added

Wms6804 - Detalhes Rastreabilidade Ordem de Produção

Novo programa para detalhamento das requisições relacionadas a Ordens de produção:

Image Added1)No after_load do programa, verificar se o novo parâmetro está ativo, e só permitir a abertura do novo programa caso esteja ativo. Caso o parâmetro esteja desativado exibir mensagem: "Apenas é possível efetuar a rastreabilidade da Ordem de Produção quando utilizado o parâmetro: 'Realizar controle de componentes relacionados com a Ordem de Produção' "

2)No campo Ordem de produção, incluir Zoom para buscar as Ordens de Produção geradas no MAN.

3)Para o campo Ordem de produção, validar com o campo destino da tabela wms_Requisicao_estoque.

4) Ao clicar em informar deve ser habilitado o campo Ordem de produção, Ao clicar em confirmar, deve trazer os dados.

 5 Não deve trazer informações provenientes de requisições de estoque de devolução

6) No campo item, mostrar a descrição reduzida do item

7)Para buscar os dados, utilizar o SELECT:

SELECT est_loc_reser_end.identif_estoque,
estoque_loc_reser.cod_item,
estoque_loc_reser.qtd_reservada,
estoque_loc_reser.qtd_atendida,
wms_endereco.des_endereco
FROM sup_par_resv_est,
estoque_loc_reser,
est_loc_reser_end,
wms_endereco
WHERE estoque_loc_reser.cod_empresa = sup_par_resv_est.empresa
AND estoque_loc_reser.num_reserva = sup_par_resv_est.reserva
AND est_loc_reser_end.cod_empresa = estoque_loc_reser.cod_empresa
AND est_loc_reser_end.num_reserva = estoque_loc_reser.num_reserva
AND wms_endereco.empresa = est_loc_reser_end.cod_empresa
AND wms_endereco.endereco = est_loc_reser_end.endereco
AND sup_par_resv_est.empresa = p_cod_empresa
AND sup_par_resv_est.parametro = 'integracao_man'
AND (estoque_loc_reser.qtd_reservada > 0 OR estoque_loc_reser.qtd_atendida > 0)
AND (sup_par_resv_est.parametro_val= mr_detalhe_rastreab_ordem.destino
OR sup_par_resv_est.reserva IN (SELECT loc_reser.num_reserva
FROM est_loc_reser_end reser_end
INNER JOIN estoque_loc_reser loc_reser
ON loc_reser.cod_empresa = reser_end.cod_empresa
AND loc_reser.num_reserva = reser_end.num_reserva
INNER JOIN wms_requisicao_estoque_reserva req_est_reser
ON req_est_reser.empresa = reser_end.cod_empresa
AND req_est_reser.reserva_estoque = reser_end.num_reserva
INNER JOIN wms_requisicao_estoque req_estoq
ON req_estoq.empresa = req_est_reser.empresa
AND req_estoq.trans_requisicao = req_est_reser.trans_requisicao
INNER JOIN wms_endereco
ON wms_endereco.empresa = req_estoq.empresa
aNd wms_endereco.endereco = req_estoq.endereco
WHERE reser_end.cod_empresa = p_cod_empresa
AND req_estoq.destino = mr_detalhe_rastreab_ordem.destino
AND req_estoq.origem_requisicao = 'P'
AND req_estoq.tip_requisicao = 'S') )
UNION ALL
SELECT man_comp_consumido.identificacao_estoque,
man_comp_consumido.item_componente,
man_comp_consumido.qtd_baixa_prevista,
man_comp_consumido.qtd_baixa_real,
wms_endereco.des_endereco
FROM man_apo_mestre,
man_comp_consumido,
wms_endereco
WHERE man_comp_consumido.empresa = p_cod_empresa
AND man_comp_consumido.empresa = man_apo_mestre.empresa
AND man_comp_consumido.seq_reg_mestre = man_apo_mestre.seq_reg_mestre
AND man_apo_mestre.ordem_producao = mr_detalhe_rastreab_ordem.destino
AND wms_endereco.empresa = man_comp_consumido.empresa
AND wms_endereco.endereco = man_comp_consumido.endereco

 

Rotina

Tipo de Operação

Opção de Menu

Regras de Negócio

wmsr112

Alteração

-

-

wms6170Alteração--
wms6791Alteração--
wms6794Alteração--
wms6804InclusãoDetalhes Rastreabilidade Ordens de Produção-

Estrutura de Menu

Sistema"315" (WMS)
Área de aplicação9 - Logística
Nível 1"05" Movimentação armazém
Sequência16
Processowms6804
Tipo Processo2
TransaçãoWMS6804
DescriçãoDetalhes Rastreabilidade Ordem de Produção

 

 

 

 

 

(Opcional)

Estrutura de Menu

 

<Informações utilizadas na linha Datasul>.

 

Procedimentos

 

Procedimento

 

 

 

Descrição

(Max 40 posições)

(Max 40 posições)

(Max 40 posições)

Módulo

 

 

 

Programa base

 

 

 

Nome Menu

(Max 32 posições)

(Max 32 posições)

(Max 32 posições)

Interface

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

Registro padrão

Sim

Sim

Sim

Visualiza Menu

Sim/Não

Sim/Não

Sim/Não

Release de Liberação

 

 

 

 

 

 

Programas

 

Programa

 

 

 

Descrição

(Max 40 posições)

(Max 40 posições)

(Max 40 posições)

Nome Externo

 

 

 

Nome Menu/Programa

(Max 32 posições)

(Max 32 posições)

(Max 32 posições)

Nome Verbalizado[1]

(Max 254 posições)

(Max 254 posições)

(Max 254 posições)

Procedimento

 

 

 

Template

(Verificar lista de opções no man01211)

(Verificar lista de opções no man01211)

(Verificar lista de opções no man01211)

Tipo[2]

Consulta/Manutenção/ Relatório/Tarefas

Consulta/Manutenção/ Relatório/Tarefas

Consulta/Manutenção/ Relatório/Tarefas

Interface

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

GUI/WEB/ChUI/Flex

Categoria[3]

 

 

 

Executa via RPC

Sim/Não

Sim/Não

Sim/Não

Registro padrão

Sim

Sim

Sim

Outro Produto

Não

Não

Não

Visualiza Menu

Sim/Não

Sim/Não

Sim/Não

Query on-line

Sim/Não

Sim/Não

Sim/Não

Log Exec.

Sim/Não

Sim/Não

Sim/Não

Rotina (EMS)

 

 

 

Sub-Rotina (EMS)

 

 

 

Localização dentro da Sub Rotina (EMS)

 

 

 

Compact[4]

Sim/Não

Sim/Não

Sim/Não

Home[5]

Sim/Não

Sim/Não

Sim/Não

Posição do Portlet[6]

0 – Top Left

1 – Top Right

2 – Bottom Left

3 – Bottom Right

0 – Top Left

1 – Top Right

2 – Bottom Left

3 – Bottom Right

0 – Top Left

1 – Top Right

2 – Bottom Left

3 – Bottom Right

Informar os papeis com os quais o programa deve ser vinculado

 

 

 

 

Cadastro de Papéis

<O cadastro de papéis é obrigatório para os projetos de desenvolvimento FLEX a partir do Datasul 10>.

<Lembrete: o nome dos papeis em inglês descrito neste ponto do documento, devem ser homologados pela equipe de tradução>.

 

Código Papel

(máx 3 posições)

Descrição em Português*

 

Descrição em Inglês*

 

[1] Nome Verbalizado é obrigatório para desenvolvimentos no Datasul 10 em diante.

[2] Tipo é obrigatório para desenvolvimento no Datasul 10 em diante

[3] Categorias são obrigatórias para os programas FLEX.

[4] Obrigatório quando o projeto for FLEX

[5] Obrigatório quando o projeto for FLEX

[6] Obrigatório quando o projeto for FLEX

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