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 | TOTVS 12 | Módulo | MLF |
Segmento Executor | MANUFATURA | ||
Projeto1 | BLOCO K - MELHORIAS | IRM1 | PCREQ-8542 |
Requisito1 | PCREQ-8543 | Subtarefa1 | PDRMAN-7104 |
País | (x ) Brasil ( ) Argentina ( ) Mexico ( ) Chile ( ) Paraguai ( ) Equador ( ) USA ( ) Colombia ( ) Outro _____________. |
Legenda: 1 – Inovação 2 – Manutenção (Os demais campos devem ser preenchidos para ambos os processos).
Objetivo
O objetivo deste desenvolvimento é promover a melhoria de funcionalidades dos programas OF0301 - Parâmetros Obrigações Fiscais, LF0228 - Geração Estrutura Item – Bloco K e LF0201 - Gerador de Arquivos do Layout, para atendimento ao Bloco K do SPED Fiscal EFD ICMS/IPI.
Definição da Regra de Negócio
Alterações Gerais
1) Alterar OF0301
Criar os campos de parâmetro a seguir, adequando às melhorias dos demais requisitos deste documento.
> Criar Grupo “Parâmetros Gerais Bloco K”
>> Criar flag “Considera Ordem Retrabalho/Reaproveitamento”
Define se as Ordens de Produção de Retrabalho e Reaproveitamento serão consideradas na geração da estrutura (LF0228) e geração do Bloco K (LF0201)
>> Criar flag “Gerar Item Fictício”
Define se as gerações de Item Fictício para cálculo da estrutura pela Movimentação da OP, Item A feito de A e Ordem Interna/Externa serão consideradas na geração da estrutura (LF0228) e geração do Bloco K (LF0201)
>> Criar Grupo Parâmetros Geração da Estrutura por Ordem de Produção
>>> Criar flag “Considerar % Perda da Engenharia”
Define se o % de Perda cadastrado na Engenharia será considerado para compor o campo % de Perda do registro 0210 quando efetuado o cálculo da estrutura pela média ponderada dos insumos consumidos.
2) Dicionário de dados
2.1) Aumentar o tamanho do campo IT-CODIGO para 25 posições na tabela dwf-cons-espec-padr
2.2) Criar novo índice SIMPLES para tabela dwf-cons-espec-padr
*Ordem | *Atributo | Descrição atributo | *Ascendente? |
10 | cod-estab | Código do Estabelecimento | 1 |
20 | dat-inic | Data Início | 1 |
30 | dat-fim | Data Final | 1 |
40 | it-codigo | Código do Item | 1 |
50 | es-codigo | Código do Insumo | 1 |
2.3) Criar tabela DWF Item Fictício (dwf-item-virt), desabilitado para edição no programa LF0203
banco: mgfis | label: DWF Item Fictício | módulo: MLF | ||||||
*Ordem | *Atributo | Formato | Valor inicial | *Mandatório? | Descrição | Label | Label coluna | Texto de ajuda |
10 | it-codigo | x(16) |
| 1 | Código do Item | Item | Item | Código do Item |
20 | item-cod-virt | x(25) |
| 1 | Código Fictício | Código Fictício | Código Fictício | Código Fictício |
30 | check-sum | x(20) |
| 1 | Check-sum | Check-sum | Check-sum | Verifica somatória |
40 | nr-seq-item | >>>>>>>>9 | 0 | 1 | Sequência | Sequência | Sequência | Sequência |
50 | dat-inic-valid | 99/99/9999 | today | 1 | Data Inicio Validade | Inicio Validade | Inicio Validade | Data Inicio Validade |
60 | dat-fim-valid | 99/99/9999 | ? | 0 | Data Fim Validade | Fim Validade | Fim Validade | Data Fim Validade |
CHAVE PRIMÁRIA/ÚNICO |
| SIMPLES | ||||||
*Ordem | *Atributo | Descrição atributo | *Ascendente? | *Ordem | *Atributo | Descrição atributo | *Ascendente? | |
10 | it-codigo | Código do Item | 1 | 10 | it-codigo | Código do Item | 1 | |
20 | item-cod-virt | Código Fictício | 1 | 20 | nr-seq-item | Sequência | 1 | |
30 | check-sum | Check-sum | 1 |
|
|
|
| |
40 | nr-seq-item | Sequência | 1 |
|
|
|
|
REQUISITO 1
Geração da Estrutura por Código Fictício
Prover alternativa à geração da estrutura pela média ponderada do consumo dos insumos, desenvolvida para atendimento ao Bloco K da obrigação fiscal EFD ICMS/IPI (SPED Fiscal).
ABRANGÊNCIA
Esta solução abrange os clientes que utilizem ou estejam na situação de:
- Configurador de Produtos
- Lista de Componentes
- Data de validade do insumo vencida no período
- Item por Referência
- Variação inadequada entre períodos nas estruturas geradas pela movimentação da Ordem de Produção
SITUAÇÃO
Atualmente, o cliente possui duas opções de geração da estrutura para o Bloco K pelo programa LF0228:
- Engenharia do Produto: gera a estrutura com base no cadastro da estrutura do produto e alternativos (EN0105) para os itens movimentados nas Ordens de Produção do período.
- Movimentação da Ordem de Produção: gera a estrutura com base nas reservas e movimentação, calculando uma estrutura de média ponderada dos insumos consumidos nas Ordens de Produção do período. Assim, é gerada uma estrutura para o item com todos os itens consumidos.
Exemplo: 4 OPs em JAN/2016 para o Produto A e 3 OPs em FEV/2016:
SOLUÇÃO
Com base na resposta 16.2.2.13 da FAQ do SPED, verificamos a opção de geração de estrutura, baseada na criação de códigos de itens fictícios para demonstração da produção das diferentes estruturas geradas no mês, utilizando o registro K220 como intermediador do item produzido (código fictício) com o item original (Nota Fiscal – Bloco C).
1) Alterar LF0228:
1.1) Modificar a geração da estrutura pela Engenharia do Produto para os casos de Lista de Componentes e com validade de estrutura terminada no período e a geração pela Movimentação da Ordem de Produção, utilizando a criação automática de itens fictícios (concatenado com identificação incremental) com os mesmos dados do produto original e TIPO DE ITEM = 03 (Em Processo) e sua estrutura de acordo com o cálculo da média ponderada dos insumos consumidos nas Ordens de Produção.
1.2) A geração da estrutura do item fictício fica condicionada ao parâmetro “Gerar Item Fictício” do programa OF0301. Caso o flag = FALSE, a geração da estrutura será efetuada conforme situação atual pela ENG - Engenharia do Produto ou MOP - Movimentação da Ordem de Produção, conforme seleção do usuário.
1.2.1) Parametrizado o flag “Gerar Item Fictício” = TRUE, registrar como origem de geração 'ENF' (Engenharia do Produto + Fictício) quando gerado pela Engenharia e 'OPF' (Movimentação da OP + Fictício) quando gerado pela Movimentação da Ordem de Produção.
1.3) Concatenar “_#F” + número de controle incremental com 6 posições (ex: CANETA_#F000001) [identificador "F": remete a situação Fictício]
1.4) Os dados serão armazenados na tabela dwf-item-virt e as estruturas fictícias criadas por concatenação dos insumos em ordem crescente e encriptado (Encode) para uso nos períodos posteriores. Os insumos consumidos nas OPs serão comparados com as estruturas fictícias existentes e utilizados com o mesmo código fictício caso existam ou será criado novo código fictício para a nova estrutura.
Exemplo:
1.5) Os insumos da primeira OP lida serão base para a estrutura do item Original para o qual não será criado item fictício.
2) Alterar LF0201:
2.1) Gera o registro K220, efetuando a transferência de saldo do produto fictício para o produto original.
2.2) Gera o registro de produção K230 / K250 demonstrando a produção do item fictício.
2.3) A geração do registro K230/K235 ou K250/K255 com item fictício fica condicionada ao parâmetro “Gerar Item Fictício” do programa OF0301. Caso o flag = FALSE, a geração dos registros do Bloco K permanecem apenas pelo cálculo médio ponderado de todos os insumos para o Item.
REQUISITO 2
Ordens de Retrabalho/Reaproveitamento
De acordo com a parametrização do programa OF0301, será definido se as Ordens de Retrabalho/Reaproveito serão consideradas na geração da estrutura (LF0228) e na geração do Bloco K (LF0201).
ABRANGÊNCIA
Esta solução abrange os clientes que utilizem ou estejam na situação de:
- Considera ou não Ordens de Retrabalho / Reaproveitamento
SITUAÇÃO
Atualmente, as Ordens de Retrabalho/Reaproveitamento são consideradas na geração da estrutura (0210) e geração dos registros K230 e K250 para os casos onde o código do ACA seja diferente do código da REQ. Existem divergências no entendimento dos clientes de que estas ordens devam ser consideradas, por conta do próprio fluxo de cada um.
SOLUÇÃO
A primeira solução, está na alteração do programa OF0301, conforme esta especificação, possibilitando ao usuário a opção por parâmetro de gerar Ordens de Retrabalho/Reaproveitamento e, também, o parâmetro de gerar o Item Fictício. Estes parâmetros serão as condições aplicadas nas alterações do programa LF0228 (geração da estrutura) e LF0201 (geração registros K)
1) Alterar LF0228:
1.1) A leitura da OP de Retrabalho ou Reaproveitamento fica condicionada ao parâmetro “Considera Ordem Retrabalho/Reaproveitamento” do programa OF0301. Caso o flag = FALSE, a OP será ignorada para a composição da estrutura.
1.2) Caso o parâmetro “Gerar Item Fictício” do programa OF0301 seja TRUE, serão consideradas as ordens de Retrabalho/Reaproveitamento que tenham ocorrência de código de ACA = código de REQ + Outro Insumo (detalhes no Requisito 3 da especificação). Se o flag = FALSE, apenas as Ordens de Retrabalho/Reaproveitamento que não tenham ocorrência de ACA = REQ serão consideradas para a geração do 0210.
2) Alterar LF0201:
2.1) A leitura da OP de Retrabalho ou Reaproveitamento fica condicionada ao parâmetro “Considera Ordem Retrabalho/Reaproveitamento” do programa OF0301. Caso o flag = FALSE, a OP será ignorada para a composição dos registros K230 e K250.
2.2) Caso o parâmetro “Gerar Item Fictício” do programa OF0301 seja TRUE, serão consideradas as ordens de Retrabalho/Reaproveitamento que tenham ocorrência de código de ACA = código de REQ + Outro Insumo (detalhes no Requisito 3 da especificação). Se o flag = FALSE, apenas as Ordens de Retrabalho/Reaproveitamento que não tenham ocorrência de ACA = REQ serão consideradas para a geração do K230 e K250.
REQUISITO 3
Fictício para Ordens com A feito de A + Outro Insumo
Com a utilização do K220 como auxílio de codificação por transferência de saldos, resolvemos a questão de Ordens de Produção que possuem código do ACA igual ao código da REQ, quando consumido outro código de insumo na OP. Assim, criamos um código de item fictício e efetuamos a produção deste item e, consequentemente, a transferência de saldo para o item original.
ABRANGÊNCIA
Esta solução abrange os clientes que utilizem ou estejam na situação de:
- Ordens de Produção de tipo Interna, Externa, Interna/Externa, Retrabalho ou Reaproveitamento com Código ACA = Código REQ (+ utilização de Outro Insumo na OP)
SITUAÇÃO
Atualmente, as Ordens de Produção de Interna, Externa, Interna/Externa, Retrabalho ou Reaproveitamento que contenham código do ACA = Código da REQ (A feito de A) são desconsideradas das gerações de estrutura (LF0228) e K230 ou K250 (LF0201)
SOLUÇÃO
1) Alterar LF0228:
1.1) Modificar a geração da estrutura pela Engenharia do Produto e a geração pela Movimentação da Ordem de Produção, utilizando a criação automática de itens fictícios (concatenado com identificação incremental) com os mesmos dados do produto original e TIPO DE ITEM = 03 (Em Processo) e sua estrutura de acordo com o cálculo da média ponderada dos insumos consumidos nas Ordens de Produção para os casos identificados na condição de código ACA = código REQ e que contenha a requisição de outro insumo com código diferente do insumo “A”, para as Ordens de Produção de tipo Interna, Externa, Interna/Externa, Retrabalho ou Reaproveitamento.
1.2) A leitura da OP na condição de Item A feito de A + Outro Insumo para considerar na geração da estrutura fica condicionada ao parâmetro “Considera Ordem Retrabalho/Reaproveitamento” do programa OF0301. Caso o flag = FALSE, a OP será ignorada.
1.3) A geração da estrutura do item fictício fica condicionada ao parâmetro “Gerar Item Fictício” do programa OF0301. Caso o flag = FALSE, a geração da estrutura será efetuada conforme situação atual pela ENG ou MOP, conforme seleção do usuário.
1.3.1) Parametrizado o flag “Gerar Item Fictício” = TRUE, registrar como origem de geração 'ENF' (Engenharia do Produto + Fictício) quando gerado pela Engenharia e 'OPF' (Movimentação da OP + Fictício) quando gerado pela Movimentação da Ordem de Produção.
1.4) Concatenar “_#A” + número de controle incremental com 6 posições (ex: CANETA_#A000001) [identificador "A": remete a situação A feito A]
1.5) Os dados serão armazenados na tabela dwf-item-virt e as estruturas fictícias criadas por concatenação dos insumos em ordem crescente e encriptado (Encode) para uso nos períodos posteriores. Os insumos consumidos nas OPs serão comparados com as estruturas fictícias existentes e utilizados com o mesmo código fictício caso existam ou será criado novo código fictício para a nova estrutura.
Exemplo:
2) Alterar LF0201:
2.1) A geração dos itens 2.2 e 2.3 fica condicionada ao parâmetro “Gerar Item Fictício” = YES do programa OF0301. Caso o flag = FALSE, a geração dos registros do Bloco K desconsidera as OPs com código de ACA = código de REQ e não gera K220 e K230/K250 fictício.
2.2) Gera o registro K220 automaticamente, efetuando a transferência de saldo dos produtos fictício para o produto original.
2.3) Gera o registro de produção K230/K250 demonstrando a produção do item fictício.
Exemplo:
OBS: As Ordens de Produção de tipo Interna, Externa, Interna/Externa, Retrabalho ou Reaproveitamento com item A feito de A, ou seja, apenas o movimento de REQ do mesmo código de item ACA, serão ignoradas.
REQUISITO 4
Ordem Interna/Externa
Com a utilização do K220 como auxílio de codificação por transferência de saldos, resolvemos a questão de Ordens de Produção Interna/Externa que passam a ser demonstradas nos registros K230 e K250. Assim, criamos um código de item fictício e efetuamos a produção deste item e, consequentemente, a transferência de saldo para o item original.
ABRANGÊNCIA
Esta solução abrange os clientes que utilizem ou estejam na situação de:
- Industrialização em Terceiro controlado por Ordem Interna/Externa
SITUAÇÃO
Atualmente, este tipo de ordem é informado apenas no registro K230/K235 (industrialização efetuada pelo contribuinte).
De acordo com a resposta obtida junto ao faleconosco do SPED (SP), esta situação deve ser apresentada no K230 e no K250 (industrialização efetuada por terceiros), porém, o insumo não pode ter o mesmo código do acabado.
SOLUÇÃO
1) Alterar LF0228:
1.1) Modificar a geração da estrutura pela Engenharia do Produto e a geração pela Movimentação da Ordem de Produção, utilizando a criação automática de itens fictícios (concatenado com identificação incremental) com os mesmos dados do produto original e TIPO DE ITEM = 03 (Em Processo) e sua estrutura de acordo com o cálculo da média ponderada dos insumos consumidos nas Ordens de Produção de tipo Interna/Externa e para os insumos identificados como operação Externa. Serão criados os registros: 0200 fictício, feito do produto original e 0200 original, feito da estrutura da Engenharia ou média ponderada pelo consumo da Movimentação da OP.
1.2) A geração do registro 0200 do item fictício fica condicionada ao parâmetro “Gerar Item Fictício” do programa OF0301. Caso o flag = FALSE, a geração da estrutura será efetuada apenas para o registro 0200/0210 original, conforme situação atual pela ENG ou MOP.
1.2.1) Parametrizado o flag “Gerar Item Fictício” = TRUE, registrar como origem de geração 'ENF' (Engenharia do Produto + Fictício) quando gerado pela Engenharia e 'OPF' (Movimentação da OP + Fictício) quando gerado pela Movimentação da Ordem de Produção.
1.3) Concatenar “_#E” + número de controle incremental com 6 posições (ex: CANETA_#E000001) [identificador "E": remete a situação Externa]
1.4) Os dados serão armazenados na tabela dwf-item-virt e as estruturas fictícias criadas por concatenação dos insumos em ordem crescente e encriptado (Encode) para uso nos períodos posteriores. Os insumos consumidos nas OPs serão comparados com as estruturas fictícias existentes e utilizados com o mesmo código fictício caso existam ou será criado novo código fictício para a nova estrutura.
Exemplo:
2) Alterar LF0201:
2.1) A geração dos itens 2.2 e 2.3 fica condicionada ao parâmetro “Gerar Item Fictício” = YES do programa OF0301. Caso o flag = FALSE, a geração dos registros do Bloco K considera apenas a geração do do registro K230/K235, como já é feito hoje, e não não gera o K220 e o K250 fictício.
2.2) Gera o registro K220 automaticamente, efetuando a transferência de saldo dos produtos fictício para o produto original.
2.3) Gera o Registro K230/K235 para os dados da OP e também um registro K250 do código fictício produzido com um K255 do insumo identificado como operação externa.
Exemplo:
REQUISITO 5
% de Perda
Tratamento do % de Perda na geração da estrutura pela Movimentação da Ordem de Produção.
ABRANGÊNCIA
Esta solução abrange os clientes que utilizem ou estejam na situação de:
- Geração da Estrutura pela Movimentação da Ordem de Produção
- Geração da Estrutura pela Engenharia, mas o Item possui Lista de Componentes
SITUAÇÃO
Atualmente, a quantidade de % de Perda está zerada na geração da estrutura (LF0228) quando efetuada a geração pela Movimentação da Ordem de Produção. Esta definição deixa alguns clientes desconfortáveis quanto ao valor informado no padrão da estrutura, dando a impressão ao Fisco de que nunca ocorre perda normal de insumos no processo.
SOLUÇÃO
Alterar LF0228:
Na geração da estrutura pela Movimentação da Ordem de Produção, condicionar a composição do campo % de Perda ao parâmetro “Considerar % Perda da Engenharia”.
Se FLAG = TRUE
Se Item possui Lista de Componentes
Então: calcular a média de % de Perda entre os Insumos das Listas para o Insumo referente ao Item pai cadastrado no EN0105 e preencher o campo Fator Perda da tabela dwf-cons-espec-padr
com o valor calculado. Para o insumo não encontrado, preencher com valor 0,0000.
Senão: preencher o campo Fator Perda da tabela dwf-cons-espec-padr com o valor encontrado para o Insumo referente ao Item pai cadastrado no EN0105 (campo % de Perda). Para o insumo
não encontrado, preencher com valor 0,0000.
Se FLAG = FALSE
preencher o campo % de Perda com o valor 0,0000.
REQUISITO 6
Co-produto com Tipo de Item diferente de 03 e 04 no K220
Criar o registro K220 (outras movimentações internas) automático para as movimentações de co-produto com tipo de item diferente de 03 e 04 quando efetuado o cálculo do co-produto.
ABRANGÊNCIA
Esta solução abrange os clientes que utilizem ou estejam na situação de:
- Co-produto
SITUAÇÃO
Atualmente, a movimentação de item com Tipo de Item diferente de 03 e 04 não faz parte do cálculo do rateio do co-produto e o material co-produzido não tem comprovação fiscal ou movimento no Bloco K.
SOLUÇÃO
1) Alterar LF0228:
1.1) Alterar a codificação para que a rotina do rateio considere todos os co-produtos/sobras
1.2) Converte os valores na Unidade de Medida do Item Pai para os co-produtos com unidade de medida diferente, conforme parametrizado na Unidade de Cálculo
1.3) Rateia o(s) produto(s) requisitado(s) (Leite) entre todos os produtos/co-produtos
1.4) Cria a estrutura para os co-produtos (Tipo 03 e 04), distribuindo o rateio do insumo requisitado para os itens produzidos e recalculando a distribuição do rateio para os itens convertidos através da fórmula
O cálculo do rateio do insumo requisitado também é efetuado para o tipo de item diferente de 03 e 04 e fica armazenado para utilização no registro K220
2) Alterar LF0201:
2.1) Para as sobras com tipo de item diferente de 03 e 04, criar um registro K220 efetuando a transferência do saldo do produto de origem requisitado (Leite) para a sobra produzida (Nata):
2.2) Caso a unidade de medida entre o item original (Leite) e o item Destino (Nata) seja diferente, é necessário o preenchimento do registro 0220 – Fatores da Conversão da Unidade para o item Destino, de acordo com a parametrização da DWF Unidade de Cálculo (regra de 3):
REQUISITO 7
Relatório LOG de Geração da Estrutura LF0228
Criar relatórios detalhados da geração da estrutura, facilitando o entendimento do usuário e analistas de suporte e atendimento Totvs. Os relatórios demonstrarão as ordens de produção, insumos envolvidos e o detalhamento do cálculo efetuado para a estrutura gerada.
SITUAÇÃO
Atualmente, a geração da estrutura é efetuada pelo programa LF0228 e não possui um relatório de demonstração dos Itens verificados quando a execução pela Engenharia do Produto ou detalhes de Ordens de Produção, Itens e Insumos que fazem parte do cálculo da média ponderada dos consumos quando a execução pela Movimentação da Ordem.
SOLUÇÃO
1) Cria flag “Demonstra Cálculo da Estrutura” na aba Parâmetro do programa LF0228 e disponibiliza local para salvar
2) Altera o LOG atual LF0228.tmp com a demonstração de Código de Insumo, Qtde Insumo e Fator Perda, agrupado por Unidade de Negócio e Item Pai e revisão de demonstração de decimais.
3) Cria o LOG LF0228_1.tmp para Estrutura gerada pela MOP, com a demonstração de Ordem de Produção, Indicador de co-produto, Qtde Acabado da OP e Total do Insumo (cálculo efetuado para a estrutura) agrupado por Unidade de Negócio, Item Pai, Insumo.
4) Cria o LOG LF0228_2.tmp para Estrutura gerada pela ENG, com a demonstração de Ordem de Produção e Indicador de co-produto agrupado por Unidade de Negócio e Item Pai.
5) Cria o LOG LF0228_3.tmp com a demonstração do cálculo do Co-produto, agrupado por Unidade de Negócio, Ordem de Produção e Insumo:
Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio |
OF0301 – Parâmetros Obrigações Fiscais | Alteração | N/A | - |
LF0201 – Gerador de Arquivos do Layout | Alteração | N/A | - |
LF0228 – Geração Estrutura Item – Bloco K | Alteração | Configurador Layout Fiscal > Tarefas |
Este documento é material de especificação dos requisitos de inovação, trata-se de conteúdo extremamente técnico. |
---|