Ir para conteúdo
  • Cadastre-se

madalozzo

Membros
  • Total de ítens

    70
  • Registro em

  • Última visita

Posts postados por madalozzo

  1. 18 minutos atrás, madalozzo disse:

    Tive um problema com essa atualização... alguns clientes não utilizam protesto, mas após a atualização esta vindo a mensagem:

    "O número de dias a protestar / negativar deve ser mínimo 05 a máximo 55 dias".

    Não entendi essa parte da logica:

     

          if (iInstrucao1 = 0) then
            if (DiasDeProtesto > 0) then
              case TipoDiasProtesto of
                diCorridos: iInstrucao1 := 1;
                diUteis:    iInstrucao1 := 2;
              end
            else if (DiasDeNegativacao > 0) then
                iInstrucao1 := 7 // Negativar dias corridos
            else
                iInstrucao1 := 3; // sem protesto -> aqui indica que o resultado fica "3" que seria sem protesto

          {Pegando campo Intruções}
          //01, 02, 07 [05..55]
          case iInstrucao1 of
            1    :   aIdentificacaoOcorrencia := IntToStrZero(DaysBetween(Vencimento,DataProtesto), 2);
            2    :   aIdentificacaoOcorrencia := IntToStrZero(WorkingDaysBetween(Vencimento,DataProtesto), 2);
            7    :   aIdentificacaoOcorrencia := IntToStrZero(DaysBetween(Vencimento,DataNegativacao), 2);
            3,99 :   aIdentificacaoOcorrencia := '00'; -> aqui identifica a ocorrencia sem protesto
            else
                iInstrucao1 := 0;
                aIdentificacaoOcorrencia := '00';
          end;


          if (StrToIntDef(aIdentificacaoOcorrencia,0) < 5) or (StrToIntDef(aIdentificacaoOcorrencia,0) > 55) then -> aqui não deixa passar menos que 5 que no caso esta vindo sem protesto = 3
             raise Exception.Create(ACBrStr('O número de dias a protestar / negativar '+
                                           'deve ser mínimo 05 a máximo 55 dias'));

  2. Isso que retorna 

     

    <?xml version="1.0" encoding="UTF-8" ?>
    - <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
    - <env:Header xmlns:env="http://www.w3.org/2003/05/soap-envelope">
    - <nfeCabecMsg xmlns="http://www.portalfiscal.inf.br/nfe">
      <cUF>41</cUF>
      <versaoDados>3.10</versaoDados>
      </nfeCabecMsg>
      </env:Header>
    - <env:Body xmlns:env="http://www.w3.org/2003/05/soap-envelope">
    - <nfeStatusServicoNFResult xmlns="http://www.portalfiscal.inf.br/nfe/wsdl/NfeStatusServico3">
    - <retConsStatServ versao="3.10" xmlns="http://www.portalfiscal.inf.br/nfe">
      <tpAmb>1</tpAmb>
      <verAplic>PR-v3_4_3</verAplic>
      <cStat>999</cStat>
      <xMotivo>Erro não catalogado</xMotivo>
      <cUF>41</cUF>
      <dhRecbto>2015-10-17T16:26:30-03:00</dhRecbto>
      <xObs>gov.pr.fazenda.nfe.modelo.exception.ParserXMLException: Não foi possível localizar o esquema: consStatServ_v3.10.xsd</xObs>
      </retConsStatServ>
      </nfeStatusServicoNFResult>
      </env:Body>
      </env:Envelope>
  3. Bom dia...

     

    Pelo que eu estava conversando com o pessoal do banco, posso ter cobrança registrada com forma de cadastramento sem registro como posso ter com registro, por esse motivo optei por criar um campo separado. Posso ter interpretado errado, mais consegui homologar tanto com registro quanto sem registro, estou analisando o retorno agora.

     

    Obrigado pela atenção.

  4. Quando é sem registro posso manda a forma de cadastramento '1' conforme estava no codigo do componente... mais como eu tenho clientes com e sem registro, precisei criar essa opção para definir dentro do cadastro da carteira.

    ...
        case ACBrTitulo.FormaCadastramento of
          fcRegistrada  : sFormaCadastramento:= '1'; {Forma de Cadastramento Registrada}
          fcSemRegistro : sFormaCadastramento:= '2'; {Forma de Cadastramento Sem Registro}
        end;
    ...
    
    
    -> Estava dessa forma 
        {SEGMENTO P}
        Result := '033'                                            + // 001 - 003 / Código do Banco na compensação
                  '0001'                                           + // 004 - 007 / Numero do lote remessa
                  '3'                                              + // 008 - 008 / Tipo de registro
                  IntToStrZero(ISequencia ,5)                      + // 009 - 013 / Número seqüencial do registro no lote
                  'P'                                              + // 014 - 014 / Cód. Segmento do registro detalhe
                  Space(1)                                         + // 015 - 015 / Reservado (uso Banco)
                  sCodMovimento                                    + // 016 - 017 / Código de movimento remessa
                  Copy(sAgencia, 1, 4)                             + // 018 – 021 / Agência do Cedente
                  Copy(sAgencia, 5, 1)                             + // 022 – 022 / Dígito da Agência do Cedente
                  Copy(sCCorrente, 1, 9)                           + // 023 - 031 / da conta corrente
                  Copy(sCCorrente, 10, 1)                          + // 032 – 032 / Dígito verificador da conta
                  Copy(sCCorrente, 1, 9)                           + // 033 - 041 / Conta cobrança
                  Copy(sCCorrente, 10, 1)                          + // 042 - 042 / Dígito da conta cobrança
                  Space(2)                                         + // 043 - 044 / Reservado (uso Banco)
                  NossoNumero + sDigitoNossoNumero                 + // 045 – 057 / Identificação do título no Banco (Nosso Número
                  sTipoCobranca                                    + // 058 - 058 / Tipo de cobrança
                  '1'                                              + // 059 - 059 / Forma de Cadastramento = 1 Registrada / 2 Sem Registro
                  sTipoDocto                                       + // 060 - 060 / Tipo de documento
                  Space(1)                                         + // 061 - 061 / Reservado (uso Banco)
                  Space(1)                                         + // 062 - 062 / Reservado (uso Banco)
                  PadL(Copy(SeuNumero, 1, 15), 15)                 + // 063 - 077 / Nº do documento
                  FormatDateTime('ddmmyyyy',Vencimento)            + // 078 - 085 / Data de vencimento do título
                  IntToStrZero(round(ValorDocumento * 100), 15)    + // 086 - 100 / Valor nominal do título
                  PadR('0', 4, '0')                                + // 101 - 104 / Agência encarregada da cobrança
                  '0'                                              + // 105 - 105 / Dígito da Agência encarregada da cobrança
                  Space(1)                                         + // 106 - 106 / Reservado (uso Banco)
                  sEspecie                                         + // 107 – 108 / Espécie do título
                  ifThen(Aceite = atSim,  'S', 'N')                + // 109 - 109 / Identif. de título Aceito/Não Aceito
                  FormatDateTime('ddmmyyyy',DataDocumento)         + // 110 - 117 / Data da emissão do título
                  STipoJuros                                       + // 118 - 118 / Código do juros de mora
                  sDataMoraJuros                                   + // 119 - 126 / Data do juros de mora
                  IntToStrZero(round(ValorMoraJuros * 100), 15)    + // 127 - 141 / Valor da mora/dia ou Taxa mensal
                  sTipoDesconto                                    + // 142 - 142 / Código do desconto 1
                  sDataDesconto                                    + // 143 - 150 / Data de desconto 1
                  IntToStrZero(round(ValorDesconto * 100), 15)     + // 151 - 165 / Valor ou Percentual do desconto concedido
                  IntToStrZero(round(ValorIOF * 100), 15)          + // 166 - 180 / Valor do IOF a ser recolhido
                  IntToStrZero(round(ValorAbatimento * 100), 15)   + // 181 - 195 / Valor do abatimento
                  padL(NossoNumero, 25)                            + // 196 - 220 / Identificação do título na empresa
                  Instrucao1                                       + // 221 - 221 / Código para protesto
                  sDiasProtesto                                    + // 222 - 223 / Número de dias para protesto
                  Instrucao2                                       + // 224 - 224 / Código para Baixa/Devolução
                  '0'                                              + // 225 - 225 / Reservado (uso Banco)
                  '00'                                             + // 226 - 227 / Número de dias para Baixa/Devolução
                  '00'                                             + // 228 - 229 / Código da moeda
                  Space(11)                                        ; // 230 – 240 / Reservado (uso Banco)
        {SEGMENTO P - FIM}
    <-
    
    -> Ficou assim
        {SEGMENTO P}
        Result := '033'                                            + // 001 - 003 / Código do Banco na compensação
                  '0001'                                           + // 004 - 007 / Numero do lote remessa
                  '3'                                              + // 008 - 008 / Tipo de registro
                  IntToStrZero(ISequencia ,5)                      + // 009 - 013 / Número seqüencial do registro no lote
                  'P'                                              + // 014 - 014 / Cód. Segmento do registro detalhe
                  Space(1)                                         + // 015 - 015 / Reservado (uso Banco)
                  sCodMovimento                                    + // 016 - 017 / Código de movimento remessa
                  Copy(sAgencia, 1, 4)                             + // 018 – 021 / Agência do Cedente
                  Copy(sAgencia, 5, 1)                             + // 022 – 022 / Dígito da Agência do Cedente
                  Copy(sCCorrente, 1, 9)                           + // 023 - 031 / da conta corrente
                  Copy(sCCorrente, 10, 1)                          + // 032 – 032 / Dígito verificador da conta
                  Copy(sCCorrente, 1, 9)                           + // 033 - 041 / Conta cobrança
                  Copy(sCCorrente, 10, 1)                          + // 042 - 042 / Dígito da conta cobrança
                  Space(2)                                         + // 043 - 044 / Reservado (uso Banco)
                  NossoNumero + sDigitoNossoNumero                 + // 045 – 057 / Identificação do título no Banco (Nosso Número
                  sTipoCobranca                                    + // 058 - 058 / Tipo de cobrança
                  sFormaCadastramento                              + // 059 - 059 / Forma de Cadastramento = 1 Registrada / 2 Sem Registro
                  sTipoDocto                                       + // 060 - 060 / Tipo de documento
                  Space(1)                                         + // 061 - 061 / Reservado (uso Banco)
                  Space(1)                                         + // 062 - 062 / Reservado (uso Banco)
                  PadL(Copy(SeuNumero, 1, 15), 15)                 + // 063 - 077 / Nº do documento
                  FormatDateTime('ddmmyyyy',Vencimento)            + // 078 - 085 / Data de vencimento do título
                  IntToStrZero(round(ValorDocumento * 100), 15)    + // 086 - 100 / Valor nominal do título
                  PadR('0', 4, '0')                                + // 101 - 104 / Agência encarregada da cobrança
                  '0'                                              + // 105 - 105 / Dígito da Agência encarregada da cobrança
                  Space(1)                                         + // 106 - 106 / Reservado (uso Banco)
                  sEspecie                                         + // 107 – 108 / Espécie do título
                  ifThen(Aceite = atSim,  'S', 'N')                + // 109 - 109 / Identif. de título Aceito/Não Aceito
                  FormatDateTime('ddmmyyyy',DataDocumento)         + // 110 - 117 / Data da emissão do título
                  STipoJuros                                       + // 118 - 118 / Código do juros de mora
                  sDataMoraJuros                                   + // 119 - 126 / Data do juros de mora
                  IntToStrZero(round(ValorMoraJuros * 100), 15)    + // 127 - 141 / Valor da mora/dia ou Taxa mensal
                  sTipoDesconto                                    + // 142 - 142 / Código do desconto 1
                  sDataDesconto                                    + // 143 - 150 / Data de desconto 1
                  IntToStrZero(round(ValorDesconto * 100), 15)     + // 151 - 165 / Valor ou Percentual do desconto concedido
                  IntToStrZero(round(ValorIOF * 100), 15)          + // 166 - 180 / Valor do IOF a ser recolhido
                  IntToStrZero(round(ValorAbatimento * 100), 15)   + // 181 - 195 / Valor do abatimento
                  padL(NossoNumero, 25)                            + // 196 - 220 / Identificação do título na empresa
                  Instrucao1                                       + // 221 - 221 / Código para protesto
                  sDiasProtesto                                    + // 222 - 223 / Número de dias para protesto
                  Instrucao2                                       + // 224 - 224 / Código para Baixa/Devolução
                  '0'                                              + // 225 - 225 / Reservado (uso Banco)
                  '00'                                             + // 226 - 227 / Número de dias para Baixa/Devolução
                  '00'                                             + // 228 - 229 / Código da moeda
                  Space(11)                                        ; // 230 – 240 / Reservado (uso Banco)
        {SEGMENTO P - FIM}
    <-
    
    
×
×
  • 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.