Correção do Valor do Inventário
Ao aplicar está correção vai corrigir o valor do relatório – 10 “inventário” e deixa-lo igual ou aproximado ao valor do relatório 14 – “análise de inventário“.
Obs.: Caso os valores ainda fiquem divergentes após esta correção ter sido aplicada, abra um chamado na Próton.
Resolução: Abra o PL/SQL como appuser e coloque o seguinte comando:
delete from tfis_registro74 t
where t.tfis_data_pk ='31/12/2018' and t.tfis_unidade_fk_pk=&und
Ao dar F8 coloque a unidade em que o ajuste será efetuado e commit, depois de aplicado apague o último comando e cole o próximo:
DECLARE V_SITTRIB VARCHAR2(1); BEGIN FOR I IN (SELECT m.*, appuser.fest_busca_estoque(&und,&filial,m.tmer_codigo_pri_pk,m.tmer_codigo_sec_pk,'&datamov') as qtde, (SELECT t.tmer_custo_medio FROM tmer_movimentacao t WHERE t.tmer_sequencia_pk = appuser.fest_busca_movimentacao(&und,&filial,m.tmer_codigo_pri_pk, m.tmer_codigo_sec_pk,'&datamov')) as custmedio, --- appuser.fest_busca_custo(&und,&filial,m.tmer_codigo_pri_pk,m.tmer_codigo_sec_pk,'&datamov',2) as custmedio, e.tmer_grupo_icms_saida_fk as gicmcsai, e.tmer_fornecedor_principal_fk as fornprinc, c.tloc_uf_fk as undfed FROM TMER_MERCADORIA M, TMER_ESTOQUE E, TUND_UNIDADE U, TLOC_CIDADE_CEP C WHERE E.TMER_UNIDADE_FK_PK = &und AND E.TMER_CODIGO_PRI_FK_PK = M.TMER_CODIGO_PRI_PK AND E.TMER_CODIGO_SEC_FK_PK = M.TMER_CODIGO_SEC_PK AND E.TMER_UNIDADE_FK_PK = U.TUND_UNIDADE_PK AND U.TUND_CIDADE_CEP_FK = C.TLOC_CIDADE_CEP_PK ORDER BY M.TMER_CODIGO_PRI_PK, M.TMER_CODIGO_SEC_PK) LOOP IF i.qtde > 0 THEN BEGIN v_sittrib := '*'; SELECT TBAS_ALIQUOTA_ICMS.TBAS_SITUACAO_TRIBUTARIA INTO v_sittrib FROM TBAS_ALIQUOTA_ICMS WHERE TBAS_ALIQUOTA_ICMS.TBAS_UNIDADE_FK_PK = &und AND TBAS_ALIQUOTA_ICMS.TBAS_UF_ORIGEM_FK_PK = i.undfed AND TBAS_ALIQUOTA_ICMS.TBAS_UF_DESTINO_FK_PK = i.undfed AND TBAS_ALIQUOTA_ICMS.TBAS_TIPO_MOVIMENTACAO_PK = 'VM' AND TBAS_ALIQUOTA_ICMS.TBAS_CLASSIFICACAO_FISCAL_PK = 'NO' AND TBAS_ALIQUOTA_ICMS.TBAS_GRUPO_ICMS_FK_PK = i.gicmcsai; --// Se Gerar uma exceção, é porque não encontrou então situação recebe Normal (T) EXCEPTION WHEN NO_DATA_FOUND THEN BEGIN SELECT TBAS_ALIQUOTA_ICMS.TBAS_SITUACAO_TRIBUTARIA INTO v_sittrib FROM TBAS_ALIQUOTA_ICMS WHERE TBAS_ALIQUOTA_ICMS.TBAS_UNIDADE_FK_PK = &und AND TBAS_ALIQUOTA_ICMS.TBAS_UF_ORIGEM_FK_PK = i.undfed AND TBAS_ALIQUOTA_ICMS.TBAS_UF_DESTINO_FK_PK = i.undfed AND TBAS_ALIQUOTA_ICMS.TBAS_TIPO_MOVIMENTACAO_PK = 'VM' AND TBAS_ALIQUOTA_ICMS.TBAS_CLASSIFICACAO_FISCAL_PK = 'EC' AND TBAS_ALIQUOTA_ICMS.TBAS_GRUPO_ICMS_FK_PK = i.gicmcsai; END; END; INSERT INTO tfis_registro74 ( TFIS_UNIDADE_FK_PK, TFIS_DATA_PK, TFIS_CODIGO_PRI_FK_PK, TFIS_CODIGO_SEC_FK_PK, TFIS_QUANTIDADE, TFIS_VALOR_PRODUTO, TFIS_CODIGO_POSSE, TFIS_NUMERO_DOCUMENTO, TFIS_INSCRICAO_ESTADUAL, TFIS_UF, TFIS_EXPORTADA, TFIS_UNIDADE_FISICA_FK, TFIS_QTDE_EMB_VENDA, TFIS_MERCADORIA_COMPRA, TFIS_SITUACAO_TRIBUTARIA, TFIS_NOME_MERCADORIA, TFIS_REFERENCIA, TFIS_GRUPO_MERCADORIA_FK, TFIS_SUBGRUPO_MERCADORIA_FK, TFIS_TIPO_MERCADORIA_FK, TFIS_FORNECEDOR_PRINCIPAL_FK, TFIS_GRUPO_ICMS_SAIDA_FK, TFIS_KIT_VENDA, TFIS_ANTEC_PISCOF) VALUES ( &und, --1 - TFIS_UNIDADE_FK_PK - N '&data', --2 - TFIS_DATA_PK - N I.TMER_CODIGO_PRI_PK, --3 - TFIS_CODIGO_PRI_FK_PK - N I.TMER_CODIGO_SEC_PK, --4 - TFIS_CODIGO_SEC_FK_PK - N I.Qtde, --5 - TFIS_QUANTIDADE - N I.CUSTMEDIO, --6 - TFIS_VALOR_PRODUTO - N '1', --7 - TFIS_CODIGO_POSSE - N '00000000000000', --8 - TFIS_NUMERO_DOCUMENTO - N ' ', --9 - TFIS_INSCRICAO_ESTADUAL - N 'BA', --10 - TFIS_UF - N 'N', --11 - TFIS_EXPORTADA - N i.tmer_unidade_fisica_fk, --12 - TFIS_UNIDADE_FISICA_FK - N i.tmer_qtde_emb_venda, --13 - TFIS_QTDE_EMB_VENDA - N 'S', --14 - TFIS_MERCADORIA_COMPRA - N v_sittrib, --15 - TFIS_SITUACAO_TRIBUTARIA - Y i.tmer_nome, --16 - TFIS_NOME_MERCADORIA - Y i.tmer_referencia, --17 - TFIS_REFERENCIA - Y i.tmer_grupo_mercadoria_fk, --18 - TFIS_GRUPO_MERCADORIA_FK - Y i.tmer_subgrupo_mercadoria_fk, --19 - TFIS_SUBGRUPO_MERCADORIA_FK - Y i.tmer_tipo_mercadoria_fk, --20 - TFIS_TIPO_MERCADORIA_FK - Y i.fornprinc, --21 - TFIS_FORNECEDOR_PRINCIPAL_FK - Y i.gicmcsai, --22 - TFIS_GRUPO_ICMS_SAIDA_FK - Y i.tmer_kit_venda, --23 - TFIS_KIT_VENDA - Y i.tmer_antec_piscof); --24 - TFIS_ANTEC_PISCOF - Y END IF; END LOOP; END;
Ao aplicar irá aparecer uma tela coloque:
Unidade: Coloque a unidade em que o inventário será corrigida
Filial: 1
Data do último dia do mês que o inventário será gerado (em muitos casos é no final de ano). Ex.: 31/12/xxxx
No campo abaixo do anterior coloque a mesma data. Ex.: 31/12/xxxx
Depois aplique o seguinte comando e commit:
delete tfis_registro74 t
where t.tfis_quantidade > 0
and t.tfis_valor_produto = 0;
Aplique depois esse comando e commit:
update tfis_registro74 t
set t.tfis_kit_venda='N'
where t.tfis_kit_venda='S';
Ao terminar de aplicar os comandos, gere o inventário novamente e verifique se os valores
batem, se não baterem abra um chamado na Próton.