Ir para conteúdo
  • Cadastre-se

Ivan Orosco

Membros
  • Total de ítens

    63
  • Registro em

  • Última visita

Tudo que Ivan Orosco postou

  1. Boa tarde, então, antes de implementar isso pesquisei e vi esse PDFToolkit, ele é pago... outras soluções disponíveis dependem da instalação da aplicação para abrir o pdf na maquina do usuário e não funcionaram muito bem, por isso acabei implementando a exportação de imagem mesmo. No entanto... entendo que faz sentido ter o mesmo recurso de uma engine de relatório para os outros já existentes, mas também entendo que uma coisa não exclui a outra, se alguém tiver a necessidade de fazer a mesma coisa que eu fiz para outro engine como o fast, que implemente, ja tem até o exemplo do código funcional pra isso... afinal eh um código aberto. Enfim, é uma pequena contribuição que fiz para o Fortes, um recurso a mais para o ACBRNFSeX, mas se não for aceita vou viver fazendo merge aqui só
  2. Sim claro, tenho um pequeno sistema de controle de cobrança do qual existe uma funcionalidade que gera uma "previsão" de envio de cobrança, onde ele apresenta a mensagem que será enviada por e-mail "traduzida" de acordo com uma configuração de tags dinâmicas na mensagem original, e também apresenta a imagem do boleto gerado e a imagem da nota fiscal, tudo de uma maneira bastante simples, separado por 3 abas (Mensagem, Boleto, NFSe) para que o usuário visualize rapidamente essas informações antes de fazer o envio por e-mail. Se eu fosse utilizar o método de pré-visualização do componente de impressão não seria possível obter o mesmo resultado, nem mesmo utilizando o arquivo PDF gerado, que me forçaria a utilizar componentes externos para visualizar o seu conteúdo, por isso utilizei a implementação de geração de imagem de boleto que já existia e a refiz no ACBRNFSeX, pois inclusive quando a nota fiscal é gerada eu já gravo a imagem da mesma no banco para ser utilizada nessa pré-visualização de cobrança, resultando em uma operação muito mais rápida do que executar novamente o componente do ACBRNFSeX para montar a exibição da nota fiscal. []'s
  3. Olá, tive a necessidade de implementar um método para gerar a NFSe em formato de imagem BMP, gostaria que fosse anexado aos fontes do projeto, segue abaixo as alterações que realizei e os arquivos anexados: ACBrNFSeXDANFSeClass.pas: ///declaração procedure SalvarDANFSeBMP(NFSe: TNFSe = nil); overload; virtual; ///implementação procedure TACBrNFSeXDANFSeClass.SalvarDANFSeBMP(NFSe: TNFSe); begin ErroAbstract('SalvarDANFSeBMP'); end; ACBrNFSeXDANFSeRLClass.pas ///declaração procedure SalvarDANFSeBMP(NFSe: TNFSe = nil); overload; override; ///implementação procedure TACBrNFSeXDANFSeRL.SalvarDANFSeBMP(NFSe: TNFSe); var i: integer; begin TfrlXDANFSeRLRetrato.QuebradeLinha(TACBrNFSeX(ACBrNFSe).Provider.ConfigGeral.QuebradeLinha); if NFSe = nil then begin for i := 0 to TACBrNFSeX(ACBrNFSe).NotasFiscais.Count - 1 do begin if Trim(self.NomeDocumento) <> '' then FPArquivoPDF := PathWithDelim(Self.PathPDF) + self.NomeDocumento + '.bmp' else FPArquivoPDF := PathWithDelim(Self.PathPDF) + TACBrNFSeX(ACBrNFSe).NumID[TACBrNFSeX(ACBrNFSe).NotasFiscais.Items[i].NFSe] + '.bmp'; TfrlXDANFSeRLRetrato.SalvarBMP(Self, TACBrNFSeX(ACBrNFSe).NotasFiscais.Items[i].NFSe, FPArquivoPDF); end; end else begin if Trim(self.NomeDocumento) <> '' then FPArquivoPDF := PathWithDelim(Self.PathPDF) + self.NomeDocumento + '.bmp' else FPArquivoPDF := PathWithDelim(Self.PathPDF) + TACBrNFSeX(ACBrNFSe).NumID[NFSe] + '.bmp'; TfrlXDANFSeRLRetrato.SalvarBMP(Self, NFSe, FPArquivoPDF); end; end; ACBrNFSeXDANFSeRL.pas ///declaração class procedure SalvarBMP(ADANFSe: TACBrNFSeXDANFSeRL; ANFSe: TNFSe; AFile: String); overload; ///implementação class procedure TfrlXDANFSeRL.SalvarBMP(ADANFSe: TACBrNFSeXDANFSeRL; ANFSe: TNFSe; AFile: String); var DANFSeReport: TfrlXDANFSeRL; Bitmap: TBitmap; i: integer; NomeArquivo: string; begin DANFSeReport := Create(nil); try DANFSeReport.fpNFSe := ANFSe; DANFSeReport.fpDANFSe := ADANFSe; if ADANFSe.AlterarEscalaPadrao then begin DANFSeReport.Scaled := False; DANFSeReport.ScaleBy(ADANFSe.NovaEscala , Screen.PixelsPerInch); end; TDFeReportFortes.AjustarReport(DANFSeReport.RLNFSe, DANFSeReport.fpDANFSe); DANFSeReport.RLNFSe.Prepare; for i := 0 to DANFSeReport.RLNFSe.Pages.PageCount - 1 do begin Bitmap := NeedAuxBitmap; Bitmap.Width := DANFSeReport.RLNFSe.Pages[i].Width; Bitmap.Height := DANFSeReport.RLNFSe.Pages[i].Height; Bitmap.PixelFormat := pf32bit; Bitmap.Canvas.Brush.Color := clWhite; Bitmap.Canvas.Brush.Style := bsSolid; Bitmap.Canvas.FillRect(Rect(0, 0, Bitmap.Width, Bitmap.Height)); DANFSeReport.RLNFSe.Pages[i].PaintTo(Bitmap.Canvas, Rect(0, 0, Bitmap.Width, Bitmap.Height)); NomeArquivo := ChangeFileExt(AFile, ''); Bitmap.SaveToFile(NomeArquivo + FormatCurr('000', I+1) + '.bmp'); end; finally FreeAndNil(DANFSeReport); end; end; []'s ACBrNFSeXDANFSeClass.pas ACBrNFSeXDANFSeRL.pas ACBrNFSeXDANFSeRLClass.pas
  4. UIA !!!!! RAPAIZ !!! Resolveu meu problema !!! tenho vários clientes que só usam POS, valeu Daniel, muito bom !!! Obrigado !!
  5. Pesquisei aqui e vi que a REDE, CIELO e GETNET também dispõem dessas API para integração, aliás a da Cielo parece ser mais bem detalhada, será que não seria a hora de criar um novo componente ?ACBrPOS talvez ?
  6. Ah sim, concordo que não apenas para uma, a idéia da stone foi apenas um exemplo onde temos uma API e um caso já implementado (vhsys) para "talvez" servir de base, vejo que assim como foi feito com o TEF e vários outros componentes, para cada adquirente existiria sua propria unit com os seus endereços das API para consumo. Não sei nem como seria o nome disso, acredito que não poderia ser TEF pois a aplicação apenas se integra ao POS, não realiza as transações financeias... por outro lado, as coisas são mais fáceis para o cliente final que apenas faz uso deste POS sem intermediários, além da flexibilidade de uso do POS de forma independente (fora do uso da aplicação) e também poder capturar essas transações. Enfim, fica a idéia
  7. Entendi... então essa integração com a stone (por exemplo) não está cogitada então... na verdade, esse exemplo que dei é uma automatização da aplicação em utilizar as máquinas independentes da stone... nem sei dizer se isso se categoriza como TEF... pois pelo o que eu entendi a própria maquininha faz tudo com a operadora e apenas devolve o estado que pode ser capturado pela aplicação através de consulta da API no webservice deles né... Será que isso não vai se tornar uma tendência das operadoras e componentizar isso seria algo interessante ?
  8. Daniel, aproveitando o gancho, vi no fórum dois posts seus comentando sobre o ACBrTEFAPI, que pelo que entendi ainda não está utilizável, por acaso seria algo que funcione conforme a API da stone ? descrita no link: https://connect.stone.com.br/docs e https://connect.stone.com.br/reference/token (métodos da API) Vi uma aplicação que já faz uso desta API, segue https://suporte.vhsys.com.br/integracao-com-stone/ Vai ser algo nesta linha ? []'s
  9. Rapaiz, era isso mesmo !!! Muito Obrigado !!! []'s
  10. Prezados, boa noite... Utilizo XE7 aqui e mandei atualizar meu ACBR hoje logo cedo, dai executei o instalador sem problemas, ele compila e instala tudo com sucesso, mas ao abrir o delphi recebo o erro de falha ao carregar os componentes recém instalados. Inclusive se eu for no Install Packages e selecionar o ACBr - Biblioteca Designtime Comum (que é o ACBr_Comum e está desmarcado devido a falha na carga), ele apenas retorna o erro de "Resource ACBR not found", como consequência nenhum outro pacote mais funciona já que os que dependem dele não carregam. Já removi todos os componente do ACBR manualmente do Install Packages, já executei o apagarAcbr.bat para excluir tudo o que foi criado dele e até já exclui a pasta do ACBR e baixei ela inteira novamente, porém o problema persiste. Também já tentei limpar tudo de novo e compilar manualmente, dai compilo o pacote synapse, compilo o ACBr_Comum e ao tentar INSTALAR (compilar vai) o pacote DCLACBr_Comum ele já me dá o erro "Resource ACBR not found". Me parece estar faltando alguma configuração específica de alguma coisa... Alguém teria alguma dica ?
  11. Pessoal, boa tarde, estou tendo problemas para utilizar o servidor Smarapd, esta retornando a mensagem de "Senha Invalida", vi que este problema já foi discutido neste tópico porém sem explicação de como resolvê-lo. Já acessei o site com o login e senha normalmente, porém utilizando o ACBRNFSe ele simplesmente retorna o erro, o cliente diz que não acessa por certificado digital, então fico na dúvida de como configurar o componente. Configurei a propriedade SSLLIB como libWinCrypt, também testei como Capicom e SSLType como LT_all, porém o erro permanece, alguém tem algum exemplo de configuração para este provedor para a cidade de SERRA (3205002) ?
  12. Apenas para tentar contribuir... eu estava com este problema ontem, resolvi configurando diretamente no componente as seguinte propriedades: ACBrNFe1.Configuracoes.Geral.SSLCryptLib com cryWinCrypt ACBrNFe1.Configuracoes.Geral.SSLHttpLibe com httpWinHttp ACBrNFe1.Configuracoes.Geral.SSLLib com libCustom ACBrNFe1.Configuracoes.Geral.SSLXmlSignLib com xsMsXml Detalhe que quando se seta a propriedade SSLCrypt para o valor WinCrypt ele já ajusta as outras propriedades porém na SSLXmsSignLib ele atribui xsMsXml2, dai dava o erro, foi eu trocar ele para xsMsXml e passou a validar e transmitir corretamente para o webservice de SP, acho que tem a ver com as bibliotes de validações de xml gerenciadas pelo windows. Espero que ajude. []'s
  13. Pessoal, para ajudar quem estiver passando pela mesma situação, consegui "resolver" o meu problema aqui (graças a umas dicas valiosas do Regys), não sei se é a melhor maneira, mas funcionou, basicamente configurei diretamente no meu componente as propriedades da seguinte maneira: //estes configurei diretamente no componente ACBrNFe1.Configuracoes.Geral.SSLCryptLib := cryWinCrypt; ACBrNFe1.Configuracoes.Geral.HttpLib := httpWinHttp; ACBrNFe1.Configuracoes.Geral.SSLLib := libCustom; ACBrNFe1.Configuracoes.Geral.SSLXmlSignsLib := xsMsXml; ACBrNFe1.Configuracoes.WebServices.SSLType:=LT_TLSv1_2; //estes foram diretamente via código ACBrNFe1.Configuracoes.WebServices.TimeOut := 15000; ACBrNFe1.Configuracoes.WebServices.AguardarConsultaRet := 5000; ACBrNFe1.Configuracoes.WebServices.IntervaloTentativas := 5000; ACBrNFe1.Configuracoes.WebServices.Tentativas := 10; ACBrNFe1.Configuracoes.WebServices.AjustaAguardaConsultaRet := True; ACBrNFe1.SSL.SSLType:=LT_TLSv1_2; Dai foi !!! Como disse, não sei se é a melhor ou a maneira mais correta, se alguém tiver alguma observação fique a vontade para comentar e contribuir. []'s
  14. Bom dia, estou com 2 clientes que estão com este mesmo problema de erro em branco e não conseguem emitir nenhuma nota. Notei que se simplesmente mandar consultar o status do serviço pelo componente também ocorre o mesmo erro, já segui as orientações do Regys mais acima e também já fiz o teste utilizando sleep sugerido pelo Jakson, porém, depurando eu vejo que o problema sempre ocorre com o retorno da chamada do webservice voltando em branco sempre mesmo antes de passar pelo sleep. Este cliente estava emitindo notas normalmente até dia 31/07/2018 e não houve nenhuma alteração de versão, ambiente, nada, simplesmente começou a retornar este erro em branco. Será que teria a ver com alguma definição nova que passou a vigorar a partir de 01/08 pela Receita de SP ? Curiosamente tenho outros clientes que continuam emitindo nota normalmente, apenas estes dois não conseguem emitir de maneira nenhuma e já comparei as configurações e estão todas idênticas. Alguém teria alguma sugestão ? []'s
  15. Pessoal, boa tarde, estou implementando a geração de NFSe através de nossa aplicação, estou na região de Presidente Prudente - SP, provedor SimpliSS, atualizei meu ACBR e configurei o componente seguindo rigorosamente o exemplo do mesmo, copiei os arquivos INI e pasta Schemas, configurei tudo conforme a emissão que faço através do site do simpliss. O Webservice do Simpliss dipoe do método de envio apenas, e utilizando ele, observei que o ABCRNFse se conecta ao webservice, envia o RPS, gera um protocolo de recebimento com sucesso e exibe uma janela com as informações: Método........ : Enviar Lote Numero do Lote : 17 Recebimento... : 09/06/2016 15:42:06 Protocolo..... : 123294 Provedor...... : SimplISS O que indica que está tudo sendo enviado e recebido corretamente, tanto que se eu tentar enviar outra nota com mesmo nro de lote ele acusa que já existe. Porém, após a mensagem de recebido acima, o componente não está retornando nenhum XML ou referência do arquivo salvo em disco (ACBrNFSe1.NotasFiscais.Items.NomeArq em branco), dai, ativei a configuração de ACBrNFSe1.Configuracoes.Geral.ConsultaLoteAposEnvio:=true, conforme vi em um post aqui no fórum, e então ele passou a apresentar uma tela de mensagem de erro em branco mas ainda não traz o xml de resposta. Ativei também a config para salvar arquivos de envio e resposta, vi que ele gera os arquivos xml para comunicação com o webservice, mas nenhum deles possui alguma informação relacionada a erro, apenas lotes de envio e recebimento de protocolos e status. Configurei o exemplo do acbr e ajustei o fonte para fazer uso das mesmas codificações de CNAE (9511800) e Enquadramento de serviço (1.07) para simular o teste corretamente, e utilizando o botão de "Gerar e Enviar Lote RPS" ocorre exatamente o mesmo erro. Estou utilizando webservice de homologação do Simpliss, onde é necessário se cadastrar para poder usá-lo através do endereço http://homologacaonovo.simplissweb.com.br Também estou anexando o rps gerado e os arquivos de envio e retorno durante a comunicação. Alguma sugestão ? 17UNICA-rps.xml 123294-con-sit.xml 123294-con-sit-soap.xml 123294-sit.xml 123294-sit-soap.xml
  16. Pessoal, comigo ocorreu o mesmo problema, depois de dois dias inteiros desinstalando e reinstalando componente e quebrando muito a cabeça (só não formatei a maquina), também declarei alterei a declaração das units do ACBrNFeDANFeRL.pas de {$IFDEF BORLAND} DBClient, {$ELSE} BufDataset, {$ENDIF} DB; para {$IFDEF BORLAND} DBClient, midaslib, {$ELSE} BufDataset, {$ENDIF} DB; e então passou a funcionar. Utilizo Delphi XE7, gostaria de sugerir esta alteração no projeto. []'s
  17. Sim, concordo, mas é por isso mesmo, toda vez que executo o ACBRInstall ele dé erro de compilação do pacote ACBr_synapse.dpk mas se eu abri-lo diretamente e mandar compilar vai, dai tenho que fazer a instalação toda na mão, toma bastante tempo, se houver uma alternativa ajudaria bastante...
  18. Sim, cheguei, por isso perguntei se só resolve reinstalando o ACBR, o problema é que estou com uma urgência aqui com diversos clientes e vai ser bem complicado desinstalar e reinstalar novamente o componente, não seria alguma dll para excluir de algum lugar ou alguma configuração ?
  19. Estou exatamente com o mesmo problema, a única forma de resolver é desinstalando e reinstalando todo o ACBR novamente ?
  20. Kimba, estou com o mesmo problema, você não chegou a detalhar como resolveu e o que era exatamente, poderia nos dizer ? Detalhe, eu uso o ACBRNFe e tenho a mesma aplicação sendo executada por outros clientes e funcionando normalmente, apena em um cliente está ocorrendo o erro: [nro da nota]->Rejeicao: Duplicidade de NF-e, com diferença na Chave de Acesso [chNFe:][nRec:] Independente do nro da nota que eu coloque ocorre o mesmo erro, já verifiquei o XML e a tag <nNF> esta sendo enviada corretamente, detalhe que o sistema gera a chave normalmente e quando tenta transmitir a sefaz devolve uma chave diferente, exemplo, gerou a chave 35131038874095000145550010000000091000000091 e quando ocorre o erro, a critica devolveu a chave 35110638874095000145550010000000091800007096 Alguma idéia ? []'s
  21. Opa, consegui aqui... o cfop naturalmente no produto como ja estava fazendo e identificar o Ide.indPag como ipOutras para nao exibir o campo de faturas na danfe. Valeu pela ajuda
  22. Desculpe a ignorância, pois creio que a resposta esteja na minha frente mas não consigo identificar, então eu pergunto... como configuro no componente ? CFOP é só na tag do produto ou tem alguma propriedade pra ele na nota? Estou utilizando a danfe pelo Rave (que está no exemplo do acbrnfe), o layout da nota de devolução é o mesmo ? não precisa retirar nada ou utilizar um outro relatório ? ou configurando o cfop correto o bloco de duplicatas fica desabilitado ?
  23. Boa tarde, Já estou utilizando o componente ACBRNFe e gerando notas de vendas corretamente, mas agora um cliente informou da necessidade de gerar NFe para envio de mercadoria para Conserto, Troca ou Devolução. Nos exemplos do componente não tem nada do tipo, também pesquisei no Fórum mas não encontrei nada muito relevante e pesquisando na internet vi que o layout da Danfe muda um pouco (como a área de duplicatas que não é impresso), como devo tratar essa situação pelo ACBRNFe ? Tem algum exemplo ? []'s
  24. Pessoal, temos essa classe em andamento de alguma forma ? []'s
×
×
  • 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.