AD (728x60)

Tecnologia do Blogger.

Followers

Total de visualizações

quinta-feira, 6 de março de 2014

Sintegra - Erro registro 54

Erro na validação do SITEGRA
Número do item duplicado para o registro 54















Vá no banco de dados, e no CTRL+F12 rode a seguinte SQL:


CREATE OR ALTER procedure SINTEGRA_R54 (
    COD_EMP integer,
    DATAINI date,
    DATAFIM date)
returns (
    CNPJ varchar(15),
    MODELO varchar(2),
    SERIE varchar(3),
    COD_PAIS integer,
    NUMERO integer,
    CFO varchar(5),
    CST integer,
    ITEMNF integer,
    COD_PROD integer,
    QTDE numeric(15,3),
    VLR_BRUTO numeric(15,2),
    DESCONTOS numeric(15,2),
    BAS_ICM numeric(15,2),
    BAS_ICM_SUB numeric(15,2),
    VLR_IPI numeric(15,2),
    PER_ICMS numeric(15,2),
    VLR_EXTRA numeric(15,2),
    METIPO char(1),
    DATAEMIS date,
    TIPO char(1),
    EMPRESA integer,
    SEQUENCIA integer,
    GERABASE char(1))
as
declare variable XFRETE numeric(15,2);
declare variable XSEGURO numeric(15,2);
declare variable XDESPESAS numeric(15,2);
declare variable XVLRICMSUB numeric(15,2);
declare variable CST_TRIB char(1);
declare variable CST_ST char(1);
declare variable CST_CREDITO char(1);
begin
  VLR_EXTRA = 0;
  FOR
  SELECT R.cnpj,R.Modelo, r.serie, r.cod_pais, r.numero, r.cfo, r.cst, r.itemnf,
  r.cod_prod, r.qtde, r.vlr_bruto, r.descontos, r.bas_icm,
  r.bas_icm_sub, r.vlr_ipi, r.per_icms, R.metipo, r.data, R.tipo,
  r.empresa, r.sequencia
  FROM sintegra_r50_base(:cod_emp, :dataini, :datafim) R
  WHERE ((R.nforigem NOT IN ('C','A')) or (R.emuf = 'PR'))  AND R.SITUACAO = 'N'
  INTO
    :CNPJ, :MODELO, :SERIE, :COD_PAIS, :NUMERO, :CFO, :CST, :ITEMNF,
    :COD_PROD, :QTDE, :VLR_BRUTO, :DESCONTOS, :BAS_ICM,
    :BAS_ICM_SUB, :VLR_IPI, :PER_ICMS, :METIPO,
    :DATAEMIS, :TIPO, :EMPRESA, :SEQUENCIA
  DO BEGIN
    vlr_extra = :descontos;
    suspend;
  END
  CST = 0;
  COD_PROD = 0;
  QTDE = 0;
  VLR_BRUTO = 0;
  DESCONTOS = 0;
  BAS_ICM = 0;
  BAS_ICM_SUB = 0;
  VLR_IPI = 0;
  PER_ICMS = 0;
  For
  SELECT distinct
  r.cnpj, r.Modelo, r.serie, r.cod_pais, r.numero, r.frete, r.seguro, r.despesas,
  r.data, r.tipo, r.empresa, r.sequencia,
  sum(r.vlricmsub_reg54)
  -- , r.cfgerabase, r.cst_trib, r.cst_st, r.cst_credito
  FROM sintegra_r50_base(:cod_emp, :dataini, :datafim) r
  WHERE ((R.nforigem NOT IN ('C','A')) or (R.emuf = 'PR')) AND R.SITUACAO = 'N'
  group by
  r.cnpj, r.Modelo, r.serie, r.cod_pais, r.numero, r.frete, r.seguro, r.despesas,
  r.data, r.tipo, r.empresa, r.sequencia
  --,r.cfgerabase, r.cst_trib, r.cst_st, r.cst_credito
  INTO :CNPJ, :MODELO, :SERIE, :COD_PAIS, :NUMERO, :XFRETE, :XSEGURO, :XDESPESAS,
  :dataemis, :tipo, :empresa, :sequencia, :XVLRICMSUB
  --,:gerabase, :cst_trib, :cst_st, :cst_credito
  DO BEGIN
    if (not ((:tipo = 'E') and ((:gerabase <> 'S') or (:per_icms = 0) or (:cst_trib <> 'S') or (:metipo = 'S') or (:cst_credito <> 'S')))) then
    begin
      XVLRICMSUB = 0;
    end
    if ((:xfrete + :xseguro + :xdespesas + :xvlricmsub) > 0) then
    begin
      select first 1 R.CFO from sintegra_r50_base(:cod_emp, :dataini, :datafim) R
      where tipo = :tipo and empresa = :empresa and sequencia = :sequencia
          and ((R.nforigem NOT IN ('C','A')) or (R.emuf = 'PR')) AND R.SITUACAO = 'N'
      into :cfo;
      IF (:XFRETE > 0) then
      BEGIN
        ITEMNF = 991;
        VLR_EXTRA = :XFRETE;
        SUSPEND;
      END
      if (:XSEGURO > 0) then
      BEGIN
        ITEMNF = 992;
        VLR_EXTRA = :XSEGURO;
        SUSPEND;
      END
      if (:XVLRICMSUB > 0) then
      BEGIN
        ITEMNF = 997;
        VLR_EXTRA = :XVLRICMSUB;
        SUSPEND;
      END
      if (:XDESPESAS > 0) then
      BEGIN
        ITEMNF = 999;
        VLR_EXTRA = :XDESPESAS;
        SUSPEND;
      END
    end
  END
end
Se o erro persistir, contate um facilitador.
Tags: , , ,

Postado por

Um novo sistema que auxilia técnicos da SoftPlus a executarem um trabalho mais rápido e fácil. Desenvolvido e alimentado pelos próprios técnicos.

0 comentários:

Postar um comentário

 

Mais Vistos

Adicionados Recentes

Copyright © SoftFácil | Desenvolvido por Rahel William