
Giquieu
Membros Pro-
Total de ítens
65 -
Registro em
-
Última visita
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Tudo que Giquieu postou
-
Integracao API BlueSoft Cosmos
Giquieu replied to Daniel Paixão-Cascavel's tópico in Object Pascal - Delphi & Lazarus
Pedro, na documentação da API não existe nada sobre trazer as informações de tributações. Logo, nessa versão da API não é possível acessar as tributações ou eles não documentaram. Mas creio que a BlueSoft deve estar fazendo alguma coisa pra disponibilizar esses dados... Acompanho a API do Cosmos faz um tempo, lembro que no inicio era disponibilizado apenas a descrição e alguma coisa de NCM. Hoje já dá até pra pegar a imagem do produto (quando existe rsrss). -
Integracao API BlueSoft Cosmos
Giquieu replied to Daniel Paixão-Cascavel's tópico in Object Pascal - Delphi & Lazarus
Se vc estiver usando Delphi XE7+ usa os componentes da REST.* Vc vai precisar 3 componentes: REST: TRESTClient; Request: TRESTRequest; Response: TRESTResponse; E vai montar o código parecido com esse: REST.BaseURL := ' http://cosmos.bluesoft.com.br/api'; Request.Client := REST; Request.Response := Response; Request.Method := rmGet; Request.Resource := '/gtins/{codigo}'; Request.Params.AddHeader('X-Cosmos-Token', 'SEU_TOKEN'); Request.Set Params.ParameterByName('codigo').Value := 'GTIN_DO_PRODUTO'; Request.Execute; if (Response.StatusCode = 200) then begin Meu_Objeto_Que_Representa_o_JSON_do_Cosmos := Meu_Parser_De_Json_Para_Algo_Que_Meu_Sistema_Entende(Response.JSONValue); end; Meu_Parser_De_Json_Para_Algo_Que_Meu_Sistema_Entende Aqui vc pode usar xSuperObject como o Renato falou ou outra biblioteca que lê JSON. Recomendo usar as do próprio Delphi System.JSON. Meu_Objeto_Que_Representa_o_JSON_do_Cosmos Aqui pode ser algo que o seu sistema conheça, um Objeto, um DataSet. Algo que represente o retorno do Cosmos. Um pequeno exemplo pra vc pegar valores do retorno do Cosmos usando a System.JSON: ResponseCosmos: TJSONValue; // Para pegar a description que está de exemplo no site: ResponseCosmos.GetValue<TJSONString>('description').Value; // Para pegar a o code do NCM que está de exemplo no site: ResponseCosmos.GetValue<TJSONObject>('ncm').GetValue<TJSONString>('code').Value; ResponseCosmos.GetValue<TJSONObject>('ncm').GetValue<TJSONString>('description').Value; ResponseCosmos.GetValue<TJSONObject>('ncm').GetValue<TJSONString>('full_description').Value; // Note que os Parametros estao em minusculos, é CASESENSITIVE... -
Pis E Cofins No Nfc-E
Giquieu replied to Carlos Jorge Junior's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
Provavelmente teu código deve estar saindo do fluxo da geração das tags PIS/COFINS, se vc informar tudo zero, as tags não serão geradas. Veja o código abaixo retirado do pcnNFeW: procedure TNFeW.GerarDetImpostoPIS(const i: Integer); begin if (nfe.Ide.modelo <> 55) and ((nfe.Det[i].Imposto.PIS.vBC = 0) and (nfe.Det[i].Imposto.PIS.pPIS = 0) and (nfe.Det[i].Imposto.PIS.vPIS = 0) and (nfe.Det[i].Imposto.PIS.qBCProd = 0) and (nfe.Det[i].Imposto.PIS.vAliqProd = 0) and (not (nfe.Det[i].Imposto.PIS.CST in [pis04, pis05, pis06, pis07, pis08, pis09, pis49]))) then //No caso da NFC-e, o grupo de tributação do PIS e o grupo de tributação da COFINS são opcionais. exit; procedure TNFeW.GerarDetImpostoCOFINS(const i: Integer); begin if (nfe.Ide.modelo <> 55) and ((nfe.Det[i].Imposto.COFINS.vBC = 0) and (nfe.Det[i].Imposto.COFINS.pCOFINS = 0) and (nfe.Det[i].Imposto.COFINS.vCOFINS = 0) and (nfe.Det[i].Imposto.COFINS.qBCProd = 0) and (nfe.Det[i].Imposto.COFINS.vAliqProd = 0) and (not (nfe.Det[i].Imposto.COFINS.CST in [cof04, cof05, cof06, cof07, cof08, cof09, cof49]))) then //No caso da NFC-e, o grupo de tributação do PIS e o grupo de tributação da COFINS são opcionais. exit; -
Olá, Ao vender um produto com desconto estou recebendo a seguinte rejeição: 531 - Total da BC ICMS (id:W03) difere do somatório do valor dos itens (id:N15). O produto que esta sendo vendido é Isento, então no evento QuandoVenderItem faço o seguinte tratamento: with Det.Imposto do begin ICMS.pICMS := 0; ICMS.vICMS := 0; ICMS.vBC := 0 end; Porém, após esse tratamento está sendo chamado o DescontoAcrescimoItemAnteriorVirtual: procedure TACBrECFVirtualNFCeClass.DescontoAcrescimoItemAnteriorVirtual(ItemCupom: TACBrECFVirtualClassItemCupom; PorcDesc: Double); var Det: TDetCollectionItem; begin ..... if fsACBrNFCe.NotasFiscais.Items[0].NFe.Emit.CRT <> crtSimplesNacional then begin Det.Imposto.ICMS.vBC := RoundABNT((ItemCupom.Qtd*ItemCupom.ValorUnit)+ItemCupom.DescAcres,2); Det.Imposto.ICMS.vICMS := RoundABNT( Det.Imposto.ICMS.vBC*(Det.Imposto.ICMS.pICMS/100),2); end; end; Nesse caso, se o emitente não for do Simples, está sendo recalculado o vBC, vICMS, porém meu produto é Isento. vBC e vICMS não deveriam ir vazios no XML? Que procedimento deve-se fazer nesse caso? []'s
-
Olá, fiz alguns ajustes corrigindo dois probleminhas que encontrei ao usar o demo do ECF configurado para emitir NFCe OpenSSL usando o PosPrinter. "\Fontes\ACBrDFe\ACBrNFe\ACBrECFVirtualNFCe\ACBrECFVirtualNFCe.pas" "\Exemplos\ACBrSerial\ACBrECF\Lazarus\ecfteste1.pas" Segue alguns comentários: ACBrECFVirtualNFCe.pas Neste fonte basicamente corrigi o TACBrECFVirtualNFCeClass.GravaArqINIVirtual(ConteudoINI: TStrings); Quando não informado nada para o NomeArqINI, que nesse caso será gerado um nome automaticamente. Este nome é gerado através do TACBrECFVirtualClass.CalculaNomeArqINI, que pega o path da aplicação + acbrecf + .ini. Ao chamar o TACBrECFVirtualNFCeClass.GravaArqINIVirtual, o ACBr irá gravar o XML através do GravarTXT, passando como nome do arquivo o fsNomeArqTempXML. (fsNomeArqTempXML é valorizado em TACBrECFVirtualNFCeClass.AtivarVirtual com o valor de NomeArqINI apenas mudando a extensão de .txt para .xml.) Nesse caso, o CalcularNomeArquivoCompleto que é chamado dentro do NotaFiscal.GravarTXT retorna por exemplo o seguinte valor: 'H:\ACBr\Exemplos\ACBrSerial\ACBrECF\Lazarus\Docs\H:ACBr\Exemplos\ACBrSerial\ACBrECF\Lazarus\acbrecf001.xml' Quando o ACBr tenta salvar o .txt, ocasiona o erro, pois esse path não existe. ecfteste1.pas Ajuste na propriedade quando usado com OpenSSL: ACBrNFe1.Configuracoes.Certificados.Certificado para ACBrNFe1.Configuracoes.Certificados.ArquivoPFX []'s ACBrECFVirtualNFCe.pas ecfteste1.pas
-
Opnião sobre Operadoras qual utilizar para o TEF
Giquieu replied to SisComp - Proc. de Dados's tópico in Dúvidas sobre TEF
SAT ainda não implementei... Apenas com ECF, NFCe, e nos outros recebimentos do sistema, por ex: as contas a receber. -
Opnião sobre Operadoras qual utilizar para o TEF
Giquieu replied to SisComp - Proc. de Dados's tópico in Dúvidas sobre TEF
Gostei muito de integrar com a Software Express (CliSitef). ACBrTEF é o cara, dá pra fazer a integração muito fácil !!! -
Existe algumas opções: 1. Extrato direto com as Adquirentes. 2. Arquivo Retorno de Alguma VAN. 3. Ou como nosso amigo Marcelo comentou o Arquivo Retorno da Software Express. 1. Extrato direto com as Adquirentes. O mais trabalhoso... rsrs Provavelmente vc vai precisar solicitar para seu cliente o layout, estuda-lo e implementa-lo no seu sistema. Terá que fazer o download do Extrato Adquirente por Adquirente. Cada Adquirente tem seu próprio modelo/layout, normalmente são dois Arquivos, tem Adquirente que chega a enviar 5 arquivos... 2. Arquivo(s) Retorno de Alguma VAN. Vc vai fechar o contrato com uma VAN, e está fará o processo de realizar o download dos Extratos das Adquirentes, disponibilizando em um único lugar. Facilita pq os extratos estarão em apenas um lugar... Vc também terá o trabalho de interpretar Extrato por Extrato, quero dizer, a CIELO trabalha com um layout, a REDE é outro layout, e por ai vai... 3. Arquivo Retorno da Software Express Procure o comercial deles solicitando informações sobre o módulo de Conciliação. Mas basicamente, a SE irá te retornar um ÚNICO extrato, contento todas as transações. Apenas um layout para vc integrar... show né? xD
-
Olá, pessoal, como tenho em algumas classes que herdam de classes do ACBR, e ainda não fiz download do trunk2, seria possível listar os principais fontes que receberam refactoring? ou os fontes que tiverem um refactoring considerável grande?
-
Abertura Da Nfce Offline E O Envio Normal
Giquieu replied to Giquieu's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
Boa William, Fiz as seguinte alterações, conforme vc sugeriu: Ide.dhCont := DateZero; Alterei para Ide.dhCont := 0; pra não ocorrer nenhum resulta inesperado aqui (Self.Items[i].NFe.Ide.dhCont <> 0). E também adicionei ACBr.NotasFiscais.Items[0].NFe.infNFe.ID := ''; E funcionou perfeitamente! Muito obrigado pela ajuda... []'s -
Abertura Da Nfce Offline E O Envio Normal
Giquieu replied to Giquieu's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
Exatamente, porém, olhe esse fluxo: Ide.tpEmiss = teOffline | teContingencia; (Sem conexão com a SEFAZ) Ide.dhCont = now; Ide.xJust = 'JUSTIFICATIVA'; VendeItem VendeItem Voltou a Conexão com a SEFAZ: Ide.tpEmiss = teNormal; Ide.dhCont = DateZero; Ide.xJust = ''; VendeItem VendeItem Validar <- Aqui Retorna que devo informar uma Valor para Ide.xJust... Assinar ACBrNFe1.Enviar(...) Esse fluxo deveria funcionar sem problemas, ou não posso mais alterar o Ide.tpEmiss após abrir a NFCe? -
Abertura Da Nfce Offline E O Envio Normal
um tópico no fórum postou Giquieu NFC-e - Nota Fiscal do Consumidor Eletrônica
Olá pessoal, Imaginem o seguinte cenário: O PDV está sem comunicação com a SEFAZ, então, a NFCe é aberta em modo offline (contingência). Durante a venda o PDV restabelece a conexão com a SEFAZ, logo, tenho a possibilidade de enviar essa NFCe normalmente. Quando abro a NFCe offline a chave é formada. (41150513284396000198650100000010009000001005) com o digito 9, identificando que é offline. O que estou fazendo é o seguinte: ao abrir a NFCe offline, informo o motivo e a data/hora, e no momento de enviar, se a conexão estiver OK, limpo os campos Ide.xJust e Ide.dhCont, e mudo o Ide.tpEmis para teNormal, Gero o xml, valido e assino. Porém ao validar o xml, o mesmo retorna que o campo xJust deve ter um valor, creio que seja pq a chave ainda esteja como offline (digito 9). É possível executar esse cenário? Abrir a NFCe em contingência (chave 41150513284396000198650100000010009000001005) e depois enviar normalmente (chave 41150513284396000198650100000010001000001005)? []'s -
O emulador da Bematech-MP4200 TH FI, é Fiscal, e o ACBrNFeDANFEEscPos, se comunica apenas com impressoras Não Fiscal via protocolo Esc/Pos. Até onde sei a Bematech não tem nenhum emulador de impressora não fiscal. Vc pode implementar NFCe com o DANFE Fortes ou outro para impressora a jato/laser.
-
Ajuda, Acbrnfedanfeescpos
Giquieu replied to DSilva's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
Veja a Revision 8786, nela foi implementado algumas coisas referente a cabeçalho e impressão de Sangria/Suprimento. O Link é esse: -
Implementações Em Tacbrnfedanfeescpos
Giquieu replied to Solivan's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
Olá, Solivan e Juliomar, Alguém já implementou TEF com a NFCe usando ACBr? Eu implementei mas estou com problemas para imprimir o comprovante de credito e debito. No inicio consegui contornar usando uma técnica encontrada aqui: Que é, desativar a ESC/POS e ativar a Não Fiscal, assim, imprimiu o CDC, porém com um layout bem desagradável... Então, caso alguém tenha implementado e queira compartilhar. Mas, caso ninguém tenha implementado... Eu comecei implementar uma classe que irá imprimir Cupom Vinculado/Relatório Gerencial via ESC/POS. A primeira coisa que fiz foi separar as propriedades de Comando da TACBrNFeDANFeESCPOS, são as variáveis que começam com "cCmd...", pra facilitar o uso em outras classes que irão usar ESC/POS como impressão. Preciso de um conselho, de onde colocar essa classe, onde ativa-la? Pois atualmente instancio e realizo o controle dela na mão. Pensei em criar uma propriedade (HabilitaImpESCPOS True/False) no ACBrECFVirtualNFCe, mas fico com duvida em relação as outras classes de ECF virtual que ja existem (Nao Fiscal, SAT). Em anexo, deixei um CDC emitido via ESC/POS na Bematech MP-4200 TH -
tchuck, realmente isso está ocorrendo... Pode haver mais de uma vez o mesmo Item? Não seira melhorar comparara o Index do Item? var I: Integer; begin for I := NotasFiscais.Items[0].NFe.Det.Count -1 downto 0 do begin if (I = NumItem-1) then begin NotasFiscais.Items[0].NFe.Det.Delete(I); Break; end; end;
-
Olá pessoal, Implementei o evento QuandoCancelarDocumento do componente TACBrECFVirtualNFCe, dessa maneira: procedure TFPDV.DoQuandoCancelarDocumento(Justificativa: String); begin Justificativa := JustCancNFCeDao.FindDescJustCancNFCePadrao; end; E percebi que a Justificativa não estava mudando, então mudei a assinatura do Método para: TACBrECFVirtualNFCeQuandoCancelarDocumento = procedure(out Justificativa : String) of object; Acrescentei o out na assinatura, e funcionou, talvez esteja se perdendo em passar a referência da String entre os Métodos. Poderiam acrescentar essa pequena alteração no SVN? []'s
-
Olá pessoal, o tópico é antigo, mas alguém conseguiu calcular o DigestValue sem usar o Certificado Digital?
-
Olá pessoal, Também estou com o mesmo problema enfrentado pelo Rafael. As alterações foram avaliadas? Baixei a última revisão e não encontrei as alteações. []'s
-
Digest Value Nfc-E Em Contingência
Giquieu replied to Giquieu's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
Acabei de ligar pra SEFAZ/PR, e me comunicaram que não é possível gerar o DigestValue sem assinar o xml, então, cada ponto de venda obrigatoriamente deverá ter um certificado digital instalado. Mas li em vários lugares que uma das funções do CSC - Código de Segurança do Contribuinte (O Token) é a possibilidade de não necessitar a instalação de certificado em todas os pontos de venda. Alguém implementou NFCe no cenário que comentei no primeiro post?- 7 replies
-
- NFCe
- Contingência
-
(e 1 mais)
Tags: