Ir para conteúdo
  • Cadastre-se

Wendel Fassarela

Membros
  • Total de ítens

    6
  • Registro em

  • Última visita

Posts postados por Wendel Fassarela

  1. Boa tarde glr. Minha dúvida é simples.

    Toda vez que faço um evento, ou de cancelamento, inutilização e CCe. Eu guardo o XML gerado (não é o de retorno) dentro da minha tabela.

    Mas pelo ACBr eu não sei pegar o XML depois de chamar o método WebServices.Inutiliza ou Cancelar. Eu queria o XML preenchido com as informações que eu passo.

    Ou seja, o XML que é enviado para a receita.

    teria como?

  2. Boa tarde,

    Vejo um problema nos arquivos do ACBrBoleto referente ao Banco do Brasil.

    No método CalcularTamMaximoNossoNumero, o valor padrão é 10, mas se olhar nos arquivos do cnab240, o valor padrão é 20. E em nenhum dos cáculos costantes no método, o valor é setado para 20. 

    Isso causa um erro de leitura do arquivo.

    function TACBrBancoBrasil.CalcularTamMaximoNossoNumero(
      const Carteira: String; const NossoNumero : String = ''; const Convenio: String = ''): Integer;
    var
      wCarteira   : String;
      wTamConvenio: Integer;
    begin
       Result := 20; //estava 10 antes
    
       if (ACBrBanco.ACBrBoleto.Cedente.Convenio = '') then
          raise Exception.Create(ACBrStr('Banco do Brasil requer que o Convênio do Cedente '+
                                         'seja informado.'));
    
       if (Carteira = '') then
          raise Exception.Create(ACBrStr('Banco do Brasil requer que a carteira seja '+
                                         'informada antes do Nosso Número.'));
    
       wCarteira:= Trim(Carteira);
       wTamConvenio:= Length(Trim(ACBrBanco.ACBrBoleto.Cedente.Convenio));
    
       if (Length(trim(NossoNumero)) > 10) and
          (((wTamConvenio = 6) and ((wCarteira = '16') or (wCarteira = '18'))) or
          ((wTamConvenio = 7) and (wCarteira = '18'))) then
          Result:= 17
       else if (wTamConvenio <= 4) then
          Result := 7
       else if ((wTamConvenio > 4) and (wTamConvenio < 6)) or
               ((wTamConvenio = 6) and ((wCarteira = '12') or (wCarteira = '15') or
                (wCarteira = '17') or (wCarteira = '18'))) then
          Result := 5
       else if (wTamConvenio = 6) then
          Result := 11
       else if (wTamConvenio = 7) then
          Result := 10;
    end;

     

  3. Está me dando esse problema na classe httpsend : [dcc32 Error] httpsend.pas(356): E2003 Undeclared identifier: 'SNIHost'

    function THTTPSend.InternalDoConnect(needssl: Boolean): Boolean;
    begin
      Result := False;
      FSock.CloseSocket;
      FSock.Bind(FIPInterface, cAnyPort);
      if FSock.LastError <> 0 then
        Exit;
      FSock.Connect(FTargetHost, FTargetPort);
      if FSock.LastError <> 0 then
        Exit;
      if needssl then
      begin
        if (FSock.SSL.SNIHost='') then
          FSock.SSL.SNIHost:=FTargetHost;
        FSock.SSLDoConnect;
        FSock.SSL.SNIHost:=''; //don't need it anymore and don't wan't to reuse it in next connection
        if FSock.LastError <> 0 then
          Exit;
      end;
      FAliveHost := FTargetHost;
      FAlivePort := FTargetPort;
      Result := True;
    end;

    alguém consegue me ajudar?

    Já copiei as dlls do OpenSLL 0.9.x pra dentro da pasta do projeto e do windows/system32 e syswow64 e já apaguei as dcus pela apagar acbr e reinstalei o trunck2. Também apaguei todo o ACBr e baixei dnv. Não sei mais o que fazer.

×
×
  • 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.