Ir para conteúdo
  • Cadastre-se

Luiz Neto

Membros
  • Total de ítens

    47
  • Registro em

  • Última visita

Tudo que Luiz Neto postou

  1. Ok, estou tentando relacionar agora o protocolo recebido com a instancia do evento que gerou o XML (pelo ID) para poder gravar no log, eu teria que buscar no XML de retorno ou existe um jeito de pegar o ID em ACBreSocial1.WebServices.EnvioLote.RetEnvioLote?
  2. Muito obrigado pela ideia, estou tentando desenvolver um modulo que outros desenvolvedores chamam de Modulo de Mensageria, para acompanhamento das transmissões, será bom termos um modulo assim na ACBr pois dada a complexidade do eSocial acredito ser interessante algo dedicado, o ACBr Monitor Plus é muito eficiente para NFe, mas acredito que precisamos de mais alguns avanços para atender o eSocial e a integração com os ERPs. Mais uma vez, obrigado pela contribuição.
  3. Obrigado Ítalo, fiz o teste, havia um erro de minha parte, pois chamava uma rotina que lia o S1000 do banco de dados de geração que além de outros dados retornava o ID e como antes de gerar o XML o ID ainda estava vazio, atrapalhava a sequencia. Já consigo usar o ID, agora estou tentando associar o protocolo retornado no botão Envia a instância do evento correto, Add('dadosRecepcaoLote'); Add(' - dhRecepcao..............: ' + DateTimeToStr(dadosRecLote.dhRecepcao)); Add(' - versaoAplicativoRecepcao: ' + dadosRecLote.versaoAplicRecepcao); Add(' - protocoloEnvio..........: ' + dadosRecLote.Protocolo); Tem como pegar algo tipo assim? mCadMsgeSocialAux.eSocialProtocolo := ACBreSocial1.Eventos.Iniciais.S1000.evtInfoEmpregador[?] Protocolo
  4. Seria bom se algum usuario que ja consegue transmitir integrado ao seu sistema, dispor de um mini roteiro de como transmitir e acompanhar a transmissao, não contribuí com isto por não estar seguro dos passos e não quero confundir, mas imaginei que deveria preencher as instancias dos objetos do ACBr.Eventos, gerar os arquivos XML, registrar cada ID de cada evento para log e chamar o metodo Enviar, deixar em loop de monitoramento e receber o protocolo de envio para cada evento transmitido (já que é assíncrono), registrar na tabela de log se foi aceito, com o recibo de transmissao, ou se nao, o motivo, ao final atualizar o status no seu banco de dados de seu ERP. O exemplo fornecido com ACBr apenas mostra os passos iniciais, da a opcao de transmitir e visualizar um Memo com o retorno, mas não parece fazer muita interação entre as instâncias que geraram os registros ou mesmo como repassar para as tabelas do ERP do desenvolvedor. Uma humilde opinião. O curioso é que não foi possível encontrar nem um vídeo simples que fosse, ou apostila, pago ou não, de como utilizar o componente no ACBr.
  5. Como recuperar pra qual ID de evento se refere o protocolo retornado então? em nenhuma das propriedades da sequencia ACBreSocial.WebServices.EnvioLote.RetEnvioLote.dadosRecLote.Protocolo consegui identificar uma propriedade do ID para poder gravar no banco de log da transmissao. Devo transmitir cada Lote com apenas um evento, em sua opinião? Minha tabela de rubricas tem 300 rubricas que eu gostaria de registrar o status da transmissao de cada já que alguma pode não ser aceita pelo eSocial.
  6. Boa dia Ítalo, meu objetivo é criar um modulo de acompanhamento dos XML gerados, gravar o status que foi iniciado o processo para o usuario saber que nao precisa mais gerar esta informação, salvar o XML e gravar o status que foi gerado e está aguardando a transmissao, fazer a transmissao, pegar o protocolo de envio e atualizar o status que foi transmitido e está aguardando resposta, a cada 10 minutos ir atualizando para pegar o retorno, quando receber Ok, ou erro, atualizar o status, isto tudo no modulo Monitor de Transmissao e no modulo de Folha de Pagamento, pretendo usar uma tabela para monitoramento e repassar o resultado para o banco do Folha de Pagamento, em cada rubrica, funcionario, verbas, etc. mCadMsgeSocialAux.eSocialIDXML := ExtractFileName(Eventos.Iniciais.S1000.Items.NomeXML+'.xml'); mCadMsgeSocialAux.eSocialDataStatus := Now; mCadMsgeSocialAux.eSocialStatus := eSocGeradoXML; mCadMsgeSocialAux.Codigo := mClasseCadEmpresa.Codigo; mCadMsgeSocialAux.InsereRegistro; mCadMsgeSocialAux.GravaRegistro; Eu estou tentando usar o nome do XML como referencia para acompanhamento, pois ACBreSocial1.Eventos.Iniciais.S1000.Items.evtInfoEmpregador.Id estava retornando vazio.
  7. Anderson, estou tentando fazer uma rotina de acompanhamento da transmissao também e estou tendo dificuldades em rastrear o progresso da transmissao, se voce puder disponibilizar mesmo em Harbour poderia dar uma luz, acho que devemos aperfeiçoar um modulo para transmissao e acompanhamento dos status para a ACBr. Luiz Neto
  8. Consegui fazer a ligação. Estou verificando se há mais alguma necessidade de configuracao. A propriedade só deverá ser usada após a rotina de salvar os XMLs para fazer sentido, pois será possivel repassar o S1000, 1005... que geraram o XML. Estou fazendo testes. Msg_Erro('Teste:4.3.2.4-'+TevtInfoEmpregador(Eventos.Gerados.Items.EventoQueOriginou).infoEmpregador.infoCadastro.NmRazao); ACBreSocialEventos.pas pcesIniciais.pas
  9. TGeradosCollectionItem = class(TCollectionItem) private FTipoEvento: TTipoEvento; FPathNome: String; FXML: String; TGeradosCollectionItem guarda apenas o TipoEvento, nenhuma referencia a instancia que originou o item, para que eu possa repassar o no nome do XML ou um ID.
  10. Obrigado por responder Italo, mas, como faço pra associar o Gerados.Items com a instancia dos eventos selecionados que foram preparados em ACBreSocial1.Eventos.Tabelas.S1010 das rubricas por exemplo, que tem varios registros? Eu gostaria de poder guardar em um FDB de monitoramento da transmissao o nome do XML gerado, um ID e registrar o recibo ou protocolo devolvido. Já foi prevista uma forma de eu poder pegar estes dados ou devo desenvolver e alterar os fontes da ACBr? Assisti videos de empresas desenvolvedoras e elas tem modulos muito bons de transmissao e acompanhamento do processo e eu gostaria de contribuir com a ACBr trazendo estas ideias, mas não quero reinventar a roda se o ACBr com o Monitor Plus já oferecerem algo semelhante, mas me parece que ela está apenas transmitindo sem muito acompanhamento do status e facilidade para gravacao no banco de dados que originou os dados, de forma diferente da versão da ACBr para NFe, onde ao transmitir ela ja foi gravada no BD e precisa apenas saber se foi aceita pelo site do Governo ou não.
  11. Boa tarde, por que não existe relação (ligação) entre a a instancia dos eventos selecionados para geração e o atributo Gerados que é uma nova array (TCollection)? assim não é possivel pegar com segurança o nome do XML salvo, ou o ID, ou protocolo e gravar no FDB sem fazer muitas POGs. Estou tentando criar um atributo paralelo Gerado, em S1000 e cada vez estou improvisando mais. TS1000CollectionItem = class(TCollectionItem) private FTipoEvento: TTipoEvento; FevtInfoEmpregador: TevtInfoEmpregador; //Luiz: FGerado: TGeradosCollectionItem; ... Gostaria de saber, se existe jeito mais facil de associar o nome do XML gerado ou o ID, ao evento S1000, quando crio e seleciono os eventos no programa exemplo, mais precisamente a rotina do botão [Gerar e Enviar] para monitorar o status da transmissao e repassar para o banco de dados o log do acompanhamento.
  12. Agradeceria muito a alguém que pudesse dar um roteiro de como se deve proceder para transmissão e acompanhamento dos XMLs, o exemplo disponivel nao demonstra o fluxo dentro de uma aplicação real em que temos que gravar e acompanhar o envio para não haver duplicidade de envio, apenas enviar e ver um log, manualmente. Se alguém puder orientar..mesmo que seja pago.
  13. Alguem pode ajudar? estou tendo dificuldade em pegar o recibo ou protcolo de envio a associar com os registros em meu FDB, pois eu teria que colocar o dados no atributo Eventos, depois chamar GerarXMLs e SaveToFiles, mas nao vi como recuperar a informação do XML gerado ou recibo para repassar para os atributos de Eventos.Iniciais pois nao encontrei alguma ligacao entre as instancias de Eventos.Gerados e Eventos.Iniciais.
  14. Boa noite, como faço para pegar a chave (identificação única do evento) ou nome do XML gerado, pois no exemplo do ACBr ao clicar no botao Gerar procedure btnGerarClick, primeiro ele adiciona os eventos a instancia da classe no SelecionaEventos; TFExemploEsocial.GerareSocial1000 por exemplo e depois chama a procedure ACBreSocial1.Eventos.GerarXMLs; ACBreSocial1.Eventos.SaveToFiles; Eu gostaria de ir gravando no banco FDB o nome no XML gerado e a (identificação única do evento) ao adicionar a instancia cada rubrica para acompnhar depois o status.
  15. Já fiz. Não consegui gerar, dá erro. Quero saber se existe alguma opcao, ou flag que posso usar para conseguir gerar sem o certificado e sem assinar, pois o certificado nao fica comigo na minha maquina de desenvolvimento e gostaria de usar o Exemplo para ir gerando e conferindo os arquivos.
  16. Tem como gerar o arquivo de exemplo sem assinar com o certificado so para testar e ver o arquivo gerado?
  17. Ja existe uma versao pelo SVN da ACBrHTMLToXML.pas que reconheça CSOSN?
  18. Há um post que diz que a linha de parsing do IPI esta faltando um espaco no final, a correta é assim: if LerCampo(Grupo,'|&|IMPOSTO SOBRE PRODUTOS INDUSTRIALIZADOS |&|')<>'' then Pesquise pelo post ou altere o ACBrHTMLToXML.
  19. Luiz Neto

    Sped FCont

    Ok, vou testar, vi que vc havia alterado extamente as linhas que apresentavam erro, acredito vai funcionar ok. Manterei contato
  20. Luiz Neto

    Sped FCont

    Vc conseguiu validar com lancamentos no registro I? aqui apresenta List Index Out Of Bounds(0) na geracao dos registros I155, I156 e I256,I356. Quando altero a variavel na linha 370 passa porem na me senti seguro quanto a uso da variavel que usei. (Testei com meus arquivos e com o exemplo da ACBr) Luiz Neto
  21. Luiz Neto

    Sped FCont

    Alterei a linha 370 do arquivo ACBrFContBloco_I_Class.pas // Registro Filho strRegistroI155 := strRegistroI155 + //Luiz: WriteRegistroI156(RegistroI155.Items[intFor] ); WriteRegistroI156(RegI150.RegistroI155.Items[intFor] ); Não entendi direito a funcao do parametro RegistroI155, desta forma ele não acusa mais 'List Index Out of Bounds(0)' para o registro I155-I156, porem o erro persiste para os registros I250, e I356. Se altero as linhas equivalentes posso afetar a geracao destes registros, se alguem souber a função dos atributos das linha 470 //Luiz: WriteRegistroI256(FRegistroI250.Items[intFor] ); WriteRegistroI256(RegI200.RegistroI250.Items[intFor] ); e puder revisar estas linhas;
  22. Luiz Neto

    Sped FCont

    Simons, modifiquei o exemplo do FCont da propria ACBr pois nao gravava o campo IND_SIT_INI_PER, não entendi como estavam testando, com os fontes da ACBr nao gera os registros 156, 256 e 356, com seus fontes esta apresentando erro List Index Out Bounds(0) na gravacao do registro I-155 em diante, voce conseguiu gerar o exemplo?
×
×
  • 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.

The popup will be closed in 10 segundos...