Painel de líderes
Conteúdo popular
Showing content with the highest reputation on 14-02-2024 em todas as áreas
-
Para fins históricos: Primeiro commit SVN no Source Forge foi em 2009-03-11: https://sourceforge.net/p/acbr/code/1/ (Caso saia do ar link https://web.archive.org/web/20240214150911/https://sourceforge.net/p/acbr/code/1/) Nele consta a primeira versão lançada (0.01a) de um componente ACBr (ACBrECF e ACBrCalculadora): Caso saia do ar, link no WayBack Machine: https://web.archive.org/web/20150801052647/https://www.devmedia.com.br/forum/classe-para-acesso-direto-a-ecf-em-linux-windows/2294744 pontos
-
Olá pessoal, Isso mesmo, após um longo período de espera, os Nugets voltaram para elevar o nível das soluções ACBr para a comunidade do c#. E voltaram com mais força, agora existem as opções MT e ST para todas as Libs disponíveis. Os nugets MT possuem o sufixo MT e os demais são os ST. Esperamos, como sempre, que os novos recursos possam melhorar a experiência de quem utiliza as Libs e se houverem sugestões de melhorias ou correções necessárias, estamos sempre disponíveis nos nossos canais para ajudá-los. Bom trabalho a todos e até mais!!!2 pontos
-
2 pontos
-
Lembrei disso hoje... e decidi procurar se o Post n.1 ainda existe... SIM, ele ainda está no Fórum da DevMedia, o qual eu frequentei por um bom tempo, e foi o espírito de cooperação dos usuários do fórum, que me motivou a criação do Projeto ACBr... Reparem no Post, que ainda não há menção do nome ACBr, e a ideia inicial, era fazer uma classe de Suportes a ECF (Emissor de Cupom Fiscal)... https://www.devmedia.com.br/forum/classe-para-acesso-direto-a-ecf-em-linux-windows/229474 Na abertura do último Dia do ACBr, eu menciono um pouco sobre a criação do Projeto... Classe para acesso Direto a ECF em Linux/Windows 03/05/2004 Ola, para todos.... Estou desenvolvendo uma Classe Multiplataforma para acesso direto a diversas Impressoras Fiscais. Na verdade o projeto ainda está engatinhando, mas já tive sucesso em Comunicação com a Bematech em Windows e Linux. Entretanto, como muitos programadores também necessitam ou já fazem acesso a ECF, resolvi usar a ideia de tornar isso um projeto OpenSource. P1 - Porque fazer mais uma biblioteca de acesso a ECF ? A ideia é fazer uma Classe que possa rodar em Linux / Windows. algo que nao existe hoje.... Alem de não exigir nenhuma DLL ou SO, a fim de evitar o ´inferno das DLL´s´ P2 - Como fazer acesso aos ECFs ? Como a classe deve rodar em Linux, fica descartado o uso de DLL´s... Todas as impressoras fiscais (pelo menos as que já programei) possuem manuais descrevendo os codigos de comandos e protocolos seriais. Atualmente acesso as impressoras: Bematech, Daruma, Schalter, Sweda, Mecaf (e compativeis) de forma direta, em DOS, usando a linguagem CLIPPER 5.02e.+Clipper Tools... O Executável não depende de nenhum arquivo externo ou device driver no CONFIG.SYS. A ideia é migrar as funçoes de Clipper para Delphi, usando um componente de acesso a Serial. P3 - Qual componente fará acesso a serial ? Dos que testei, apenas a classe SynaSer http://www.ararat.cz/synapse/ é multiplataforma (Kylix) P4 - Porque rodar em Linux ? Já pensou oferecer para os seus clientes uma solução de Aplicacação Comercial totalmente legalizada ? e sem pagar uma fortuna por isso ? Sem falar na estabilidade e segurança do Linux.... Qual usuário consegue apagar o sistema ? (alem do Root é claro Caracteristicas do projeto: - Deve ser OpenSource e com a distribuição dos fontes: - Deve ser Multi-plataforma (Windows ( CLX / VCL ) / Linux) - Nao deve depender de nehuma DLL ou SO. - Deve suportar as diferença entre os diversos modelos de ECF - As Classes Filhas devem tratar de forma transparente as pequenas diferenças na programaçao de Versoes diferente do mesmo Modelo de ECF. Ex: A classe TECFBematech deve ser capaz de trabalhar com todas as versoes da Bematech FI Vantagens do Projeto: - Total controle da Aplicação: Já vi DLL´s que simplesmente param o processamento do programa (Quem já homologou TEF discado, sabe o que eu quero dizer...) - Facil distribuição: Não precisa distribuir e instalar nenhuma DLL - Livre-se do Inferno das DLL´s Quando o usuário instala outro programa que usa a mesma DLL que você usa, porém em uma versão antiga (causando Bugs no seu programa) - Multiplataforma: Linux / Windows - Programação Limpa e Clara. Basta criar uma classe TECF com o modelo apropriado. O Codigo fonte sempre se refere a Classe criada, sem se preocupar com o Modelo Desvantagens do Projeto: - Se o hardware mudar, ficamos dependendo de novas informaçoes do fabricante, ou até mesmo de um modelo do equipamento para testes... - Geralmente as DLL´s incorporam novos Hardwares do mesmo fabricante.... Aqui teremos que implementar um novo filho da classe TECF para cada Hardware novo (somente se o novo hardware nao for compativel com o antigo) Estou lançando a ideia para ver a aceitação... Existe algum disposto a colaborar ? Posso enviar os fontes por e-mail para que estiver interessado... Em breve farei uma pagina para download do projeto... (Ou se alguem estiver disposto a fazer... ) A ser desenvolvido: - Terminar a implementação da Classe TECFBematech - Implementar as demais Classes (Daruma, Schalter, Sweda, Mecaf) - Criar Classe para Manupilação de TEF Discado para interagir com TECF Na verdade, nunca fiz nenhum projeto OpenSource... Gostaria de sugestões... Duvidas: - Como / Onde hospedar o projeto ? - Como cordernar ?.... - Como fica a questão legal de OpenSource ? É preciso registrar isso em cartório ? Ps: Srs Moderadores, desculpe postar essa msg em 2 áreas, mas acredito que seja do interesse...2 pontos
-
Olá pessoal! Recebemos relatos de membros da comunidade de que apesar da divulgação da norma, ao verificar no site www.fazenda.pr.gov.br, ambiente RECEITA/PR, serviço UPD. Local indicado para na própria normativa para obtenção do Código de Segurança do Responsável Técnico ainda não há nada relacionado para geração do mesmo.2 pontos
-
Boa noite, Obrigado pela contribuição. Foram enviadas correções ao SVN que devem resolver o problema relatado, Rev-32486 Por favor atualize os fontes, reinstale os componentes, verifique se o problema foi resolvido e, se possível, nos informe se foi o resultado esperado.1 ponto
-
Certo. Por hora, consegui imprimir a informação no PDF na propriedade "OutrasInformacoesImp", porém seria bom a informação constar na nota da prefeitura também. Fico no aguardo. Obrigado1 ponto
-
O erro estava no exemplo - Segue a correção. Demo VCL UntMain.pas procedure TFMain.btnOrderGetDetailsClick(Sender: TObject); var I: Integer; ItemOption: TACBrOpenDeliverySchemaOrderItemOption; // ... for I := 0 to Pred(ACBrOpenDelivery1.Order.items[0].options.Count) do begin ItemOption := ACBrOpenDelivery1.Order.items[0].options[I]; DM.cdsOptions.Append; DM.cdsOptionsID.AsString := ItemOption.id; DM.cdsOptionsName.AsString := ItemOption.name; DM.cdsOptionsexternalCode.AsString := ItemOption.externalCode; DM.cdsOptionsUnit.AsString := ItemOption._unit; DM.cdsOptionsQuantity.AsFloat := ItemOption.quantity; DM.cdsOptionsunitPriceValue.AsCurrency := ItemOption.unitPrice.value; DM.cdsOptionsunitPriceCurrency.AsString := ItemOption.unitPrice.currency; DM.cdsOptionstotalPriceValue.AsCurrency := ItemOption.totalPrice.value; DM.cdsOptionstotalPriceCurrency.AsString := ItemOption.totalPrice.currency; DM.cdsOptionsspecialInstructions.AsString := ItemOption.specialInstructions; DM.cdsOptions.Post; end; Explicação: O exemplo estava tentanto acessar um item inválido (só tem um). O indice do laço só é válido para os options, e não para o item.1 ponto
-
O campo era previsto apenas para o leiaute do padrão nacional. Conferi aqui e realmente há a possibilidade este outro campo específico. Adicionado na Rev-32484. Assim que houver a próxima compilação da Lib, lhe aviso para que possa realizar novo teste.1 ponto
-
1 ponto
-
isso dai é com eles mesmo. conforme falei vai precisar suporte deles. ligar e dar acesso a eles1 ponto
-
Bom dia. A rotina está funcionando perfeitamente em produção nos clientes. Pode encerrar o tópico.1 ponto
-
1 ponto
-
Exatamente. é eles quem tu deve acionar os mesmos avisa que quer usar o PIX pra testes e eles vão conectar e arrumar o demo1 ponto
-
Bom dia @mar1975, O provedor Ginfes segue a versão 1 do layout da ABRASF. Por favor leia o tópico a abaixo. Quando aparece a mensagem: Serviço não implementado pelo Provedor, isso significa que você esta tentando usar um serviço que o provedor não implementou em seu webservice, logo não tem nada haver com a versão da Lib que você esta usando. Um provedor que se utiliza da versão 1 ou 2 da ABRASF e que não implementou um determinado serviço que esta previsto no manual da ABRASF, pode no futuro vir a implementar, caso isso ocorra nós iremos fazer as devidas alterações para que você possa usar esse serviço. Mas até hoje eu não vi isso ocorrer.1 ponto
-
Bom dia, entre em contato com o provedor, verifique como poderia ser feito a conversão do código IBGE / TOM para esse código da prefeitura por favor.1 ponto
-
Bom dia @Souza, Analisando o seu XML notei o seguinte: 1. A série esta como zero, te aconselho a usar série 900. 2. Como o prestador é MEI (pelo menos foi informado no XML que é) então não informe a IM (inscrição municipal) do prestador. 3. A tag tribISSQN esta com o valor 1 deixe com o valor 4 (tiNaoIncidencia). Feita essas correções tente enviar novamente.1 ponto
-
Então existia ai algo que não é definido para o mesmo. portanto algo errado e que ele deve se atentar1 ponto
-
Se você estiver usando os schemas oficiais, com a libxml2, vai ter esse problema com qualquer string com menos de 3 dígitos. Nos schemas disponibilizados pelo ACBr foi feito um ajuste para contornar esse problema, então é só usar eles. https://svn.code.sf.net/p/acbr/code/trunk2/Exemplos/ACBrDFe/Schemas1 ponto
-
Obrigado por reportar. Fechando. Para novas dúvidas, criar um novo tópico.1 ponto
-
Boa noite, Criada a TK-5110 para avaliação. Obrigado pela contribuição.1 ponto
-
1 ponto
-
Sem quer, achei novamente esse Post... Acho que podemos considerar a data em destaque o dia de aniversário, do ACBr...1 ponto
-
@Daniel Simoes utilizando esse comando ele apenas imprime na bobina, não manda o comando para a gaveta. Fiz de outra forma deu certo. Estava utilizando assim: ACBrPosPrinter1.ativar; ACBrPosPrinter1.Buffer.Clear; acbrposprinter1.Buffer.Add('</abre_gaveta>'); acbrposprinter1.Buffer.Add('<abre_gaveta>'+StrAbriGaveta+'</abre_gaveta>'); ACBrPosPrinter1.Imprimir; ACBrPosPrinter1.Desativar; acbrposprinter1.Buffer.Clear; Mudei para essa forma: ACBrPosPrinter1.ativar; ACBrPosPrinter1.AbrirGaveta(2); ACBrPosPrinter1.Desativar;1 ponto
-
Alexandre Marcondes, foi o primeiro (e único) a responder a meu Post... ele me ajudou MUITO, na organização das Ideias, dos fontes, e me passou os fundamentos básicos sobre o funcionamento de um Projeto de código aberto, como Repositório de Fontes, licenças de código, Source forge, etc... Muito obrigado Alexandre...1 ponto
-
A Quem possa interessar: CaminhoCompletoArquivoEvento := ACBrNFe1.Configuracoes.Arquivos.GetPathEvento( ACBrNFe1.EventoNFe.Evento[0].InfEvento.tpEvento, ACBrNFe1.EventoNFe.Evento[0].InfEvento.CNPJ, ACBrNFe1.EventoNFe.Evento[0].InfEvento.dhevento ) + '\' + OnlyNumber(ACBrNFe1.EventoNFe.Evento[0].InfEvento.Id) + '-procEventoNFe.xml';1 ponto