Ir para conteúdo
  • Cadastre-se

dev botao

Arquivo de Configuração Serviços.ini


Ver Solução Respondido por Italo Giurizzato Junior,

Recommended Posts

Boa tarde pessoal.

Estou em um projeto de criação de uma DLL para importação de NFS-e, de acordo com o padrão nacional ou padrão de acordo com o provedor. Conseguimos realizar o que a gente queria, que era retornar todos os dados em json de um xml importado utilizando AcbrNfsex no Delphi 11.

Porém, nossa idéia a princípio, como a chave de ativação do nosso Delphi é temporária, não gostariamos de depender do Delphi cada vez que um provedor ou algum serviço seja incluido ou modificado, já que na versão AcbrNfsex não é mais necessário alterar os arquivos de .ini. e toda vez que este é modificado,é necessário a reinstalação do Acbr e recompilação do projeto de DLL.

Uma alternativa seria o uso do Lazarus já que é uma IDE livre, porém, ao tentar trazer o json completo utilizando a biblioteca fpjson e outras que já tentei anteriormente, caso tenha objetos encadeados, não está funcionando  e isso já consegui com o Delphi utilizando a biblioteca própria REST.Json.

Outra alternativa, seria tornar o arquivo AcbrNfseServicos.ini acessível ou suas propriedades configurável de alguma forma no meu projeto.

Qualquer uma das alternativas seria válida, seja um componente json que me retorne todos os objetos dentro de outro em formato de string para que eu possa utilizar essa DLL dentro de um outro programa em fox, ou mesmo tornar esse arquivo ou configurações de provedores e cidades acessíveis.

Conseguem me dar alguma dica para resolver esta questão?

Abraços!

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde @IOB Tecnologia,

No componente ACBrNFSeX nós usamos a unit ACBrJson para realizar tanto a escrita quanto a leitura de um Json.

E ela funciona tanto para o Delphi quanto para o Lazarus.

A titulo de estudo veja as units Bauhaus.LerJson e Bauraus.GravarJson

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Passe a ser assinante do PRO e tenha a compilação

pelo que entendi tu não programa em delphi nem lazarus então ajude o projeto que já está lhe ajudando e terá mais ajuda ainda pois não precisa ficar se preocupando em mexer em algo que não conhece

 

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Bom dia @IOB Tecnologia,

Toda vez que o arquivo ACBrNFSeXServicos.ini sofre uma alteração (troca de provedor, troca de URL, uma cidade que não tinha um provedor vinculado e passou a ter, entre outras alterações) eu aconselho que o arquivo INI seja compilado e o ACBr reinstalado e a aplicação em Delphi ou Lazarus seja compilada novamente e no caso da DLL idem.

Mas você pode alterar o arquivo INI e copia-lo para a pasta que esta o EXE da aplicação, neste caso não precisa realizar todo o processo mencionado acima.

No inicio do arquivo INI tem uma explicação sobre o que fazer quando alteramos ele.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

@Italo Giurizzato Junior, Tentei por exemplo, alterar um codigo de municipio pelo outro no arquivo .ini:

image.thumb.png.174b7525dd4940fae1378bcffdfeec93.png

Observe que troquei o codigo de Campo Alegre de Lourdes p/ o de Campo Formoso para apenas teste, e ao tentar capturar a propriedade ACBrNFSeX.Configuracoes.Geral.xProvedor, continua aparecendo "Saatri" sendo que eu passei como cod de município como parâmetro o código: 2906006.

Falta algum detalhe que estou deixando passar, estou tentando observar os códigos e programas de exemplo porém, não consigo achar uma resposta.

@Juliomar Marchetti Desculpe, mas pelo o que me passaram, já somos assinantes PRO, mas do jeito que você falou nos tratando como não assinantes ou alguém que nunca contribuiu com o projeto do ACBr, pedi para o meu gestor verificar a assinatura se está realmente ativa no momento.

Obrigado.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Moderadores
10 minutos atrás, IOB Tecnologia disse:

@Italo Giurizzato Junior, Tentei por exemplo, alterar um codigo de municipio pelo outro no arquivo .ini:

image.thumb.png.174b7525dd4940fae1378bcffdfeec93.png

Observe que troquei o codigo de Campo Alegre de Lourdes p/ o de Campo Formoso para apenas teste, e ao tentar capturar a propriedade ACBrNFSeX.Configuracoes.Geral.xProvedor, continua aparecendo "Saatri" sendo que eu passei como cod de município como parâmetro o código: 2906006.

Falta algum detalhe que estou deixando passar, estou tentando observar os códigos e programas de exemplo porém, não consigo achar uma resposta.

@Juliomar Marchetti Desculpe, mas pelo o que me passaram, já somos assinantes PRO, mas do jeito que você falou nos tratando como não assinantes ou alguém que nunca contribuiu com o projeto do ACBr, pedi para o meu gestor verificar a assinatura se está realmente ativa no momento.

Obrigado.

Bom dia

nosso controle é pelo usuário. não temos como saber de todos e menos ainda tratamentos diferentes

verifica junto ao comercial ou se tu tiver um usuário PRO sempre use ele e poste no subforum do PRO para assim fazer parte do SLA

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Transparent-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Consultores

Boa tarde @IOB Tecnologia,

No inicio do arquivo ACBrNFSeXServicos.ini existe uma orientação do que deve ser feito ao efetuar alteração no arquivo, veja.

; #####################################################################
; O que fazer após a alteração deste arquivo?
;
; Resposta:
; Após a alteração salve este arquivo, execute o Compila_RES que se encontra na mesma pasta.
; Reinstale o ACBr, abra a aplicação e compile ela com a opção Build.
; Por fim realize os testes de preferencia com o programa exemplo do componente ACBrNFSeX.
;
; Opcionalmente você pode apenas fazer o seguinte (apenas para testes):
; Faça uma cópia deste arquivo para dentro da pasta que tem o EXE do programa exemplo ou
; da sua aplicação.
; Altere a cópia.
; Execute o programa exemplo ou a sua aplicação e faça os testes.
;
; Estando tudo OK, crie um tópico no fórum com a sua alteração para que possamos validar e 
; caso esteja tudo correto enviaremos para o SVN.
; No fórum não precisa anexar este arquivo, apenas anexe a sua alteração.

Qual foi o procedimento que você fez?

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

@Italo Giurizzato Junior 1 - Primeiramente copiei o arquivo ACBrNFSeXServicos.ini para a mesma pasta da minha solução (que é uma dll).

image.png.a4628b9d356649fd8b0ec3d46559b25d.png

2 - Alterei o arquivo e executei a dll chamando por um programa em visual fox pro, que também está na mesma pasta.

image.png.313b167526bed89b4bb37de108244671.png

3 - Através de uma variável de output, setei para visualizar a propriedade ACBrNFSeX.Configuracoes.Geral.xProvedor para ver qual era o provedor que estava sendo puxado, já que eu tinha alterado dentro do arquivo, o cod do municipio de Campo Alegre de Lourdes para o codigo de Campo Formoso e como resultado, obtive "Saatri".

image.thumb.png.733bfb81b136291cbbc3c25d07c1bbd5.png

4 - Depois, tentei fazendo a alteração e executando o arquivo Compila_RES.Bat, compilando novamente a minha dll, mas ainda sem sucesso.  

Com as configurações que eu fiz (de teste) , eu não deveria ter tido um output "ISSCamari" se eu inseri o cod. de municipio ?
 

Segue uma imagem do código da DLL em Delphi:

image.png.c19deab5e3218da3b7bcec7bc61ce662.png

Link para o comentário
Compartilhar em outros sites

  • Consultores
  • Solution

@IOB Tecnologia,

Dica, não precisa configurar a propriedade Provedor, pois esta é configurada automaticamente quando configuramos o CodigoMunicipio.

Experimenta configurar a propriedade IniServicos com o path+"ACBrNFSeXServicos.ini" antes de configurar o CodigoMunicipio.

ACBrNFSeX.Configuracoes.Arquivos.IniServicos := 'C:\Aplicacao\ACBrNFSeXServicos.ini'; (por exemplo)

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.