Ir para conteúdo
  • Cadastre-se

dsv2

Membros
  • Total de ítens

    3
  • Registro em

  • Última visita

Posts postados por dsv2

  1. Pessoal,

     

    No fonte Fontes\PCN2\pcnEventoNFe.pas

     

     

    Na seguinte linha:

     

     

    function TInfEvento.getcOrgao: integer;
    //  (AC,AL,AP,AM,BA,CE,DF,ES,GO,MA,MT,MS,MG,PA,PB,PR,PE,PI,RJ,RN,RS,RO,RR,SC,SP,SE,TO);
    //  (12,27,16,13,29,23,53,32,52,21,51,50,31,15,25,41,26,22,33,24,43,11,14,42,35,28,17);
    begin
      if FcOrgao <> 0 then
        Result := FcOrgao
      else
      begin
        case fTpEvento of
          teCCe,teCancelamento:
          begin
            Result := StrToInt(copy(FChave,1,2));
            {Estados que utilizam a SVAN: ES, MA, PA, PI, RN => Devem utilizar 90}
            if Result in [32,21,15,22,24] then
              Result := 90;  // aqui tem um erro.. não é 90 e sim 91. "Conforme nota técnica NT2011.006b"
          end
          else
            Result := 91;
        end;
      end;
    end;
     
     
     
  2. Na Procedure

    procedure TBloco_C.WriteRegistroC100(RegC001: TRegistroC001) ;

    temos um validação desta forma:

    Check(not((COD_MOD = '55') and (Trim(CHV_NFE) = '')), '(C-C100) Nota: %s' +sLineBreak+

    ' Série: %s'+sLineBreak+

    ' Emitida no dia: %s'+sLineBreak+

    ' Modelo: %s' +sLineBreak+

    ' ChaveNF: %s'+sLineBreak, [NUM_DOC, SER, FormatDateTime('dd/mm/yyyy', DT_DOC), COD_MOD, CHV_NFE]);

    Infelizmente acho que temos um problema ae. Se for uma nota inutilizada, não devemos fazer esse teste, pois a mesma não é obrigatório o preenchimento do campo chv_nfe.. Fica a dica!

    Abraços

  3. Pessoal,

    Estou no layout Versão_104 e com a versão do validador 1.0.7.

    Mesmo assim ocorre o erro. Olhando os fontes me deparei com erro:

    03 IND_APRO_CRED

    Código indicador de método de apropriação de créditos

    comuns, no caso de incidência no regime nãocumulativo

    (COD_INC_TRIB = 1 ou 3):

    1 – Método de Apropriação Direta;

    2 – Método de Rateio Proporcional (Receita Bruta)

    Ou seja, só informar o campo se o indicador for 1 ou 3, mas no meu caso o meu indicador foi 2 (codEscrOpIncCumulativo "Cumulativo").

    Olhando o fonte temos:

    if (COD_INC_TRIB = codEscrOpIncCumulativo) then

    //Nota: Só a versão 2.0 ou superior do PVA vai estar pronta para validar esse arquivo.

    Add( LFill('0110') +

    LFill( strCOD_INC_TRIB ) +

    LFill( strIND_APRO_CRED ) + // Aqui está o problema. se o tipo for 2, não podemos informar este campo. Total de campos = 5, sendo que deve ser 4

    LFill( strCOD_TIPO_CONT ) +

    lFill( strIND_REG_CUM ) );

    Correto:

    if FRegistro0000.COD_VER >= vlVersao101 then

    begin

    //Verificar a necessidade desse if abaixo quando sair a versão 2.0 do PVA PisCofins

    if (COD_INC_TRIB = codEscrOpIncCumulativo) then

    //Nota: Só a versão 2.0 ou superior do PVA vai estar pronta para validar esse arquivo.

    Add( LFill('0110') +

    LFill( strCOD_INC_TRIB ) +

    //LFill( strIND_APRO_CRED ) +

    LFill( strCOD_TIPO_CONT ) +

    lFill( strIND_REG_CUM ) )

×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.