Ir para conteúdo
  • Cadastre-se

dev botao

Erro Ao Dar Um Build E Compilar O No Meu Projeto Com Acbrnfe2


karlouchoa
  • Este tópico foi criado há 3659 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Senhores, sou novo por aquí, antes de tentar o usar o Componente ACBrNfe2 eu compilava meu projeto no delphi 7.

 

Como tive dificuldades para encontrar o quickreport 5 para esta versao do delphi, e por isso nao conseguia compilar de jeito nenhum meu projeto, resolvi compilar o projeto no delphi 2010, já com quick report 5, fortes report, qrbarcode e tudo o mais...

 

Pensei que conseguiria compilar no delphi 2010... puro engano:

 

Ao compilar recebo a msg de : "[DCC Error] sswin32.inc(1074): E2010 Incompatible types: 'PSockAddr' and 'Pointer'"

 

e o debug do delphi para na funçao abaixo:

 

function Bind(s: TSocket; const addr: TVarSin): Integer;
begin
  Result := ssBind(s, @addr, SizeOfVarSin(addr));
end;

 

que me parece fazer parte de uma unit chamada: sswin32.inc

 

 

Ao tentar executar um Build recebo a msg de "[DCC Error] qrpdffilt.pas(1398): E2010 Incompatible types: 'Array' and 'Char'" e/ou "[DCC Warning] qrpdffilt.pas(1500): W1047 Unsafe code '@ operator''"

 

Parando o debug na linha :

 

K:=MultiByteToWideChar(CodePage, 0, PansiChar(charString), 255, @charCodes, 255);

 

da procedure abaixo:

 

      procedure SetEncoding;
      var
        encodestr: string;
        I,
        K: Integer;
      begin
        // custom encoding
        //encodestr := CZECH_ENC;
        encodestr:=FCustomEncodings.Value(PDFFontName);
        if encodestr<>'' then begin
          encoding:=' <</Type/Encoding /Differences [ '+encodestr+' ]>>';
          Exit;
        end;
        // get the encoding string
        case TmpCanvas.Font.Charset of
               BALTIC_CHARSET: CodePage:=1257;
          CHINESEBIG5_CHARSET: CodePage:=950;
           EASTEUROPE_CHARSET: CodePage:=1250;
               GB2312_CHARSET: CodePage:=936;
                GREEK_CHARSET: CodePage:=1253;
                  OEM_CHARSET: CodePage:=CP_OEMCP;
              RUSSIAN_CHARSET: CodePage:=1251;
             SHIFTJIS_CHARSET: CodePage:=932;
              TURKISH_CHARSET: CodePage:=1254;
               HEBREW_CHARSET: CodePage:=1255;
               ARABIC_CHARSET: CodePage:=1256;
                 THAI_CHARSET: CodePage:=874;
           VIETNAMESE_CHARSET: CodePage:=1258;
        else
            CodePage:=1252;
        end;
        charString:='';
              for I := 1 to 255 do charString:=charString+AnsiChar(Chr(I));  // TF
        K:=MultiByteToWideChar(CodePage, 0, PansiChar(charString), 255, @charCodes, 255);
        if K<>0 then
        begin
          encoding:=' <</Type/Encoding /Differences [ '+IntToStr(PDFFont.FirstChar+2)+' ';
          for I := 1 to 255 do // loop in charcodes
          begin
            if I<PDFFont.FirstChar then Continue;
            Found:=False;
            for K := 0 to High(UniGlyphs) do
            begin
              if charCodes=UniGlyphs[K].ID then
              begin
                encoding:=encoding+'/'+UniGlyphs[K].Name;
                Found:=True;
                Break;
              end;
            end;
            if not Found then
            begin
                encoding:=encoding+'/space'
            {
              if charCodes<256 then
                encoding:=encoding+'/space'
              else
                encoding := encoding + '/uni' + WordToHex(charCodes);
                }
            end;
          end;
          encoding:=encoding+']';
        end
        else
        begin
          encoding:=encoding+'/BaseEncoding /WinAnsiEncoding';
        end;
        encoding:=encoding+'>>';
      end;
 

P.S.: Este procedimento esta na unit QRPDFFilt.

 

 

 

Por favor, este sao meus primeiros passos na utilização do Componente ACBR. Eu preciso implantar em minha aplicação a tal da NFe-C.

 

Preciso de uma ajudinha dos amigos.

 

Obrigado.

 

Link para o comentário
Compartilhar em outros sites

Neste momento nao tenho mais o delphi 7 instalado na maquina.

 

Tenho o Delphi 2007 onde compilo um projeto de Emissão de Nota fiscal Eletronica que fiz antes de conhecer o projeto ACBr e

o delphi 2010 onde estou tentando compilar o meu programa de retaguarda (Compras, Estoque, Vendas, Entregras, Pagar e Receber) e caixa, onde pretendo inserir a NFC-e.

 

Obrigado.

Link para o comentário
Compartilhar em outros sites

Olá Juliomar, blz?

 

Meu nobre eu lí o artigo do nosso amigo Isaque e fiz a configuração sugerida por ele nas minhas duas versões do Delphi nesta máquina.

 

Mas continuo com erro citado acima

 

Ao compilar recebo a msg de : "[DCC Error] sswin32.inc(1074): E2010 Incompatible types: 'PSockAddr' and 'Pointer'"

 

e o debug do delphi para na funçao abaixo:

 

function Bind(s: TSocket; const addr: TVarSin): Integer;
begin
  Result := ssBind(s, @addr, SizeOfVarSin(addr));
end;

 

que me parece fazer parte de uma unit chamada: sswin32.inc

 

 

Ao tentar executar um Build recebo a msg de "[DCC Error] qrpdffilt.pas(1398): E2010 Incompatible types: 'Array' and 'Char'" e/ou "[DCC Warning] qrpdffilt.pas(1500): W1047 Unsafe code '@ operator''"

 

Parando o debug na linha :

 

K:=MultiByteToWideChar(CodePage, 0, PansiChar(charString), 255, @charCodes, 255);

 

da procedure abaixo:

 

      procedure SetEncoding;
      var
        encodestr: string;
        I,
        K: Integer;
      begin
        // custom encoding
        //encodestr := CZECH_ENC;
        encodestr:=FCustomEncodings.Value(PDFFontName);
        if encodestr<>'' then begin
          encoding:=' <</Type/Encoding /Differences [ '+encodestr+' ]>>';
          Exit;
        end;
        // get the encoding string
        case TmpCanvas.Font.Charset of
               BALTIC_CHARSET: CodePage:=1257;
          CHINESEBIG5_CHARSET: CodePage:=950;
           EASTEUROPE_CHARSET: CodePage:=1250;
               GB2312_CHARSET: CodePage:=936;
                GREEK_CHARSET: CodePage:=1253;
                  OEM_CHARSET: CodePage:=CP_OEMCP;
              RUSSIAN_CHARSET: CodePage:=1251;
             SHIFTJIS_CHARSET: CodePage:=932;
              TURKISH_CHARSET: CodePage:=1254;
               HEBREW_CHARSET: CodePage:=1255;
               ARABIC_CHARSET: CodePage:=1256;
                 THAI_CHARSET: CodePage:=874;
           VIETNAMESE_CHARSET: CodePage:=1258;
        else
            CodePage:=1252;
        end;
        charString:='';
              for I := 1 to 255 do charString:=charString+AnsiChar(Chr(I));  // TF
        K:=MultiByteToWideChar(CodePage, 0, PansiChar(charString), 255, @charCodes, 255);
        if K<>0 then
        begin
          encoding:=' <</Type/Encoding /Differences [ '+IntToStr(PDFFont.FirstChar+2)+' ';
          for I := 1 to 255 do // loop in charcodes
          begin
            if I<PDFFont.FirstChar then Continue;
            Found:=False;
            for K := 0 to High(UniGlyphs) do
            begin
              if charCodes=UniGlyphs[K].ID then
              begin
                encoding:=encoding+'/'+UniGlyphs[K].Name;
                Found:=True;
                Break;
              end;
            end;
            if not Found then
            begin
                encoding:=encoding+'/space'
            {
              if charCodes<256 then
                encoding:=encoding+'/space'
              else
                encoding := encoding + '/uni' + WordToHex(charCodes);
                }
            end;
          end;
          encoding:=encoding+']';
        end
        else
        begin
          encoding:=encoding+'/BaseEncoding /WinAnsiEncoding';
        end;
        encoding:=encoding+'>>';
      end;
 

P.S.: Este procedimento esta na unit QRPDFFilt.

 

 

Por via das dúvidas eu instalei o Delphi 2010 isoladamente em uma nova maquina (sem nenhuma outra versão do Delphi). Consegui compilar todos os pacotes do ACBrInstall com exceção do  pacote ACBr_BoletoFC_Quick.dpk, neste tive que descomentar uma linha na cláusula uses {webfilters}, ou algo assim, após este procedimento todos os pacotes instalaram sem problema algum.

 

Ainda assim recebi a mesma msg de erro, tanto na compilação como no Build, o que me dá a certeza de o problema não eram as duas versões do delphi na mesma máquina.

 

Amigão, você pode me dar alguma outra dica? preciso muito passar esta etapa.

 

 

Obs.: o Erro ao compilar só aparece quando adiciono ao meu projeto o Componente TACBrNFe. quando retiro ele e suas classes do projeto este erro na compilação deixa de aparecer. O erro do Build continua mesmo assim.

Link para o comentário
Compartilhar em outros sites

Exclua a versão do ACBr que tem  e baixe tudo novamente, uso o D2010 em produção a desde seu lançamento e nunca tiver problema com compilação com o ACBr, o que da mais problema são os pacotes de geradores de relatório, mas acredito que para quem usa delphi não tem problema algum em ajustar o pacote que escolheu para ser o de impressão.

 

Só observe que o pacote escolhido, antes você tem que ter a suite do gerador instalada no seu Delphi.

 

Os que o ACBr usa são:

QuickReport (5.02)

FortesReport

Rave

FastReport

  • Curtir 1

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

Link para o comentário
Compartilhar em outros sites

Olá Isaque,

 

Já fiz isto que vc esta recomendando. Inclusive neste momento estou testando em uma nova instalação do Delphi 2010. Fiz anteriormente a remoção total das instalações do delphi 2010 e delphi 2007 que estavam na maquina (Inclusive excluindo as pastas de program files  e as chaves de registro).

 

Estou com o Fortes Report, Rave Report 7.7  instalados.

 

A única diferença no que você recomendou é a versão do meu QuickReport, vc recomendou 5.02 e eu estou com 5.04.2.

 

Você acha que devo remove-la e tentar encontrar a 5.02?

 

 

Obrigado.

Link para o comentário
Compartilhar em outros sites

Acredito que não haja necessidade, mas só testando.

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

Link para o comentário
Compartilhar em outros sites

  • 6 meses depois ...

Olá a todos!

 

Resolvi o problema pesquisando e assuntando aqui no fórum.

 

Eis o que fiz:

 

1) Compilei o pacote SYNAPSE.

 

Ao abrir o projeto, o erro que dava antes no synapse parou, porém, começou a dar erro na unit ACBrEAD. Continuei pesquisando no fórum e então:

 

2) Compilei o pacote ACBrComum.

 

Problema resolvido.

 

Obrigado a todos que postaram ajuda sobre o problema.

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Olá a todos!

 

Resolvi o problema pesquisando e assuntando aqui no fórum.

 

Eis o que fiz:

 

1) Compilei o pacote SYNAPSE.

 

Ao abrir o projeto, o erro que dava antes no synapse parou, porém, começou a dar erro na unit ACBrEAD. Continuei pesquisando no fórum e então:

 

2) Compilei o pacote ACBrComum.

 

Problema resolvido.

 

Obrigado a todos que postaram ajuda sobre o problema.

Viu respondendo em um local e postando o link já estaria de bom tamanho!

assim não ficaria post repetido em todo o fórum!

  • Curtir 1
Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 3659 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

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