Painel de líderes
Conteúdo popular
Showing content with the highest reputation on 23-05-2018 em todas as áreas
-
Bom dia, Primeiramente, não entendo essa historia de usar o componente pela metade. Estou pensando sinceramente de quando eu for escrever o próximo componente não inclui as rotinas para gerar o XML e deixar a cargo de cada desenvolvedor. Gastamos um baita tempo e fazer um componente completo para depois... só quero carregar o XML que a minha aplicação gera e usar o componente para assinar e enviar.2 pontos
-
É com prazer que anunciamos que o Dia do ACBr já tem data para acontecer. Em virtude das eleições que deverão ocorrer em outubro, sendo o primeiro turno no dia 07/10 e o segundo no dia 28/10, foi decidido que nosso encontro passará a ocorrer no dia 10/11/2018, desta forma todos poderão realizar seu voto e participar de nosso evento. O Dia do ACBr será realizado nas dependências do Parque Tecnológico de Sorocaba (PTS) situado na cidade de Sorocaba-SP, o qual conta com um amplo e moderno espaço. Vocês não podem perder, reserve esta data na sua agenda. O Evento Contaremos com palestras e workshops com diversos assuntos relacionados aos componentes ACBr, Object Pascal(Delphi/Lazarus), além do ACBrMonitorPlus e nossa novidade, a ACBrLib, entre outros temas relacionados ao nosso universo. Abaixo estão relacionados os palestrantes já confirmados: Daniel S. de Almeida (Fundador do Projeto ACBr) Italo Jurisato Jr (Responsável pelos componentes ACBrNFSe, ACBrBPe, ACBrCTe e ACBrMDFe) Rafael Teno Dias (Responsável pelo ACBrFramework e ACBr libs) José M. S. Junior (Responsável pelo ACBrBoleto e atual mantenedor do ACBrMonitorPlus) Juliomar Marchetti (MVP Embarcadero) Régys Borges da Silveira (MVP Embarcadero) Marcos Douglas B. Santos, responsável pelo blog Object Pascal Programming. Um momento que deverá ser bastante interessante é o Pergunte ao Desenvolvedor, no qual os participantes terão a oportunidade de realizar perguntas diretamente a vários moderadores do projeto ACBr. Além da oportunidade de um dia focado no universo ACBr, será uma grande oportunidade para conhecer os principais mantenedores do projeto, além de ampliar ainda mais seu Networking e conhecer casos de sucesso com o projeto ACBr. Sugestões de Palestras e Palestrantes Os usuários do fórum podem se candidatar para realizar palestras ou sugerir temas que gostariam que fossem abordados durante o evento, assim como indicação de palestrantes. Para se candidatar a palestras você deverá: Enviar resumo do assunto da palestra Descrever a relevância do tema proposto para a comunidade Opcionalmente enviar vídeo e outros materiais sobre o tema proposto Breve Currículo pessoal Para sugerir um tema/palestrante você deverá: Descrever a relevância do tema para a comunidade. Indicar o palestrante que gostaria que realizasse a palestra* (opcional). *Nota: As sugestões de palestrantes não garantem que os mesmos estarão palestrando no evento, somente sinaliza a equipe de organização o interesse da comunidade em ouvir o mesmo. Fique atento, em breve lançaremos nossa página para inscrições e noticias do Dia do ACBr.1 ponto
-
Sim, seria um JPG, na verdade eu não fiz nenhum modo que deu certo ainda. O que eu fiz foi transformar a imagem em Hexadecimal e Salvar no banco e depois trazer do banco e transformar em JPG mas, em alguns casos, a imagem fica preta ou corta. Não sei mais o que fazer.1 ponto
-
Oi Juliomar, pronto, esvaziei a mente e me deparo com um código assim: Abaixo o do arquivo ACBrReinf.pas function TEventos.LoadFromString(AXMLString: String): Boolean; var AXML: AnsiString; P, N: integer; function PosReinf: integer; begin Result := pos('</Reinf>', AXMLString); end; begin Result := False; N := PosReinf; while N > 0 do begin P := pos('</Reinf>', AXMLString); if P > 0 then begin AXML := copy(AXMLString, 1, P + 9); AXMLString := Trim(copy(AXMLString, P + 10, length(AXMLString))); end else begin AXML := copy(AXMLString, 1, N + 6); AXMLString := Trim(copy(AXMLString, N + 6, length(AXMLString))); end; Result := Self.ReinfEventos.LoadFromString(AXML); N := PosReinf; end; end; o mesmo código se replica em TLoteEventos, em ACBrReinfLoteEventos.pas. E eu fiquei me perguntando se havia alguma explicação pra essas variáveis N e P, ou eu simplesmente poderia reescrever o código assim (já comentado para usar com o pasdoc): {Alimentação de XML em TItemLoteEventos com o conteúdo de evento XML já assinado para posterior envio. IMPORTANTE: o conteúdo de AXMLString já deverá estar assinado e desprovido de cabeçalhos} function TLoteEventos.LoadFromString(AXMLString: String): Boolean; Const ReinfSearchTag = '</Reinf>'; var AXML: AnsiString; P: integer; begin P := pos(ReinfSearchTag, AXMLString); while N > 0 do begin AXML := copy(AXMLString, 1, ifthen(p>0,p+9,6) ); AXMLString := Trim(copy(AXMLString, ifthen(p>0,P + 10,6) length(AXMLString))); Add.FXML := AXML; P := pos(ReinfSearchTag, AXMLString); end; Result := Self.Count > 0; end; O projeto já é muito grande, e cheio de copia-e-cola, sinal claro que a documentação era necessária e não foi usada. O Código é confuso, no exemplo que citei, é inclusive deselegante, salvo se o código acima não puder ser reduzido e N e P realmente tinham alguma razão de ser que eu desconhecia. E sem os devidos comentários, é mais confuso ainda, porque temos que recorrer ao fórum para entender a intenção do desenvolvedor, porque o código pode ainda não estár concluído, certo? PS: Redigir a documentação base para o pasdoc pode ser um bom exercício para a criatividade literária, veja isso como algo positivo! Quanto à citação " quer melhor documentação que os fontes? " minha resposta seria: Quero fontes passiveis de serem documentadas, por exemplo, pelo pasdoc, portanto sim: a documentação ideal estaria nos fontes ?. Logo, se você discorda, é porque eu me expressei mal, desculpe-me mais uma vez. Voltando ao assunto original: note que eu ainda estou no campo da opinião, o comentário (cabeçalho para pasdoc) que eu fiz na reescrita da função é meramente especulativa, pode não ser isso, por isso estou pedindo ajuda para entender o que são essas funções, e o que a variável N e P representam. Já tive retorno de 3 moderadores e ainda não consegui me expressar ? de modo a conseguir me fazer entender. Mas fica o agradecimento pelo pronto atendimento, é raro encontrar uma equipe tão dedicada!1 ponto
-
Senhores obrigado agora conseguir compreender as diferenças. Deu certo em 2 clientes já. O erro principal que estava ocorrendo na SEFAZ de GO era falta de atualização do Windows (isso resultou em diversas mensagens de erro diferentes) Forcei o Windows atualizar até ficar 100% e funcionou com WinCrypt no A1 e A3.1 ponto
-
Também estava com mesmo erro. Entrei em contato com a sefaz e este foi o retorno: FALE CONOSCO Ref. a mensagem: 178.345 Senhor(a), Conforme parecer da superintendência responsável, informamos que a correção já foi realizada em homologação e será disponibilizada em produção até 13:00h, e quanto ao erro 999 será corrigido até o final da tarde. Gentileza tentar novamente após este horário. Desculpe-nos os transtornos. "Qualquer outra informação ou esclarecimento sobre dispositivos da legislação tributária, que não se revista das características e dos requisitos próprios de consulta (RPTA/MG, artigo 37, aprovada pelo Decreto nº. 44.747 de 03 de março de 2008), será prestado verbalmente ao interessado pela Administração Fazendária do município de circunscrição do contribuinte, conforme disposto no art. 48 do diploma legal citado”. *As dúvidas esclarecidas por esta mensagem têm caráter de orientação não gerando o efeito decorrente da consulta formal. Atenciosamente, FALE CONOSCO - SEF/MG Superintendência de Arrecadação e Informações Fiscais Tel.: 155 para todo o Estado de Minas Gerais (31) 3303-7995 para outros estados e países1 ponto
-
1 ponto
-
Para a manifestação use o comando NFe.EnviarEvento. Para obter o XML completo após a manifestação execute novamente o comando NFe.DistribuicaoDFe. Você também pode obter o XML de uma NFe específica pelo comando NFe.DistribuicaoDFePorChaveNFe.1 ponto
-
isso afeta outros dbs tambem tem a ver com a versao do SMB do servidor onde esta o db https://firebase.com.br/artigo.php?id=3080 pare o windowsdefender1 ponto
-
Bom Dia Willians Eu resolvi problema parecido com o seu só que o meu certificado é A1 e1 ponto
-
O grupo Dup teve sua descrição alterada de Duplicata para Parcela assim como as demais tags desse grupo. Estou fazendo testes tem Homologação nos servidores do RS e está aceitando sempre que houver pagamento.1 ponto
-
Italo, Na altura do campeonato, não há condições nenhuma de migrar todo o sistema, que é uma API restfull em Delphi rodando em cima do IIS, para utilizar o ACBr em toda a sua capacidade funcional. Acredito que seria muito mais simples, inclusive. Porém, consegui resolver o problema da assinatura dos arquivos. O erro, na verdade, era uma exceção tratando a inexistência de um nó específico. Obrigado pelo feedback.1 ponto
-
Bom dia a todos, O componente aborta o enviar se o lote possuir mais de 50 RPS isso se tratando dos métodos Enviar e EnviarSincrono, pois o método Gerar só é permitido o envio de um único RPS. E a checagem com relação ao tamanho em Kbytes o componente também faz e aborta o envio caso o tamanho seja maior que 500 Kbytes.1 ponto
-
Bom dia Luis, Como o componente esta sendo melhorado (pelo menos estamos tentando) a cada dia, pode ser que algumas coisas acabaram ficando para traz.1 ponto
-
O limite não é 50? nesse caso não teria que ser 2 lotes? Atente também ao tamanho do arquivo, não pode exceder 500 kbytes1 ponto
-
É windows 7 né? Você vai precisar dos seguintes updates: KB976932 (SP1 se já não tiver) KB3020369 (UPD para conseguir instalar o SP2) KB3140245 (UPD para liberar o TLS) KB3172605 (UPD para conseguir instalar o SP2) KB3125574-v4 (SP2) MicrosoftEasyFix51044 (Um mini exec da microsoft que altera os registros para habilitar o TLS) Você encontra esses arquivos em: http://www.catalog.update.microsoft.com/Home.aspx https://support.microsoft.com/en-us/help/3140245/update-to-enable-tls-1-1-and-tls-1-2-as-a-default-secure-protocols-in1 ponto
-
Só uma retificação... NÃO é necessário usar o MinGW com OpenSSL. O vídeo que citei em outro tópico é o citado acima pelo Daniel, ele vai elucidar essas e outras muitas dúvidas que surgirão.1 ponto
-
assim que tiver uma posição, por favor me passa, pois utilizamos o caminho do arquivo para muitas coisas e está dando alguns problemas quanto a isso. desde já lhe agradeço pela atenção. abc Claudio1 ponto
-
Italo, Consegui enviar com sucesso. Tive que retirar do exemplo algumas tags que não são obrigatórias.1 ponto
-
1 ponto
-
Boa tarde a todos, Lendo com mais atenção o Manual de Orientação ao Desenvolvedor-REINF v1.3.02 notei que no retorno de um envio de evento sempre teremos o evento R5001 e este poderá aparecer "N" vezes nesse retorno e o motivo é simples, se enviarmos um lote contendo 10 eventos, teremos no retorno 10 R5001, ou seja, um para cada evento enviado no lote. Como podemos enviar até 100 eventos por lote, o retorno poderá conter 100 eventos R5001. Já no retorno de uma consulta sempre vai retornar o evento R5011 e ele é único no retorno. Com base nessas informações fiz algumas modificações no que diz respeito ao retorno. Da forma atual é preciso estanciar o R5001 e R5011 para poder ler o retorno, agora não será mais necessário. Alterei as Units responsáveis pela leitura dos retornos e também o programa exemplo para demonstrar a leitura de alguns dados. Essas modificações só serão enviadas para o repositório na segunda-feira dia 21. Logo peço que façam cópias dos fontes por questões de segurança. Espero contar com a compreensão de todos. Outra coisa importante: O componente ainda esta em fase de desenvolvimento, apesar de ser possível o envio de eventos e a realização de consulta.1 ponto
-
O que é combinado não é caro... Se eles prometeram, então irão cumprir... O que sei que a logística de entrega sai de Manaus, e isso leva algumas semanas... Estou informando meu contato na Elgin, a respeito desse tópico...1 ponto
-
1 ponto
-
Use a força... leia os fontes... ACBrNFe1.SSL.SSLXmlSignLib := xsLibXml2; Enviei para o SVN...1 ponto
-
O método de leitura do Xml atualmente lê apenas o evento e salva em uma lista para enviar, o xml já tem que estar assinado e pronto para o envio. Este método não preenche a lista de eventos e não adiciona eventos na lista, ou seja não é possível carregar o seu xml e assinar. Mas se você quiser ajudar a fazer os 40 métodos de leitura de Xml ficaremos muito grato, lembrando que o mesmo tem que ser compatível com o Delphi(D7+) e o Lazaurs.0 pontos