Ir para conteúdo
  • Cadastre-se

dev botao

Dúvida: "Como configurar corretamente a pasta de schemas"


Ver Solução Respondido por OlavoJr,

Recommended Posts

Postado

Estou trocando o componente do ACBRNFSe pelo ACBRNFSeX, eu procurei e li uns tópicos referente a como configurar o path para buscar o devido "Schemas do Provedor", mas a solução é copiar um único schema de um provedor e deixar ele em uma pasta fixa e apontar para ela, mas tem a opção de "Montar automaticamente o Path dos Schemas" no próprio exemplo, conforme abaixo as funções: 

procedure TACBrNFSeXProvider.ValidarSchema(Response: TNFSeWebserviceResponse; aMetodo: TMetodo);
var
...

  if TACBrNFSeX(FAOwner).Configuracoes.Geral.MontarPathSchema then
    Schema := PathWithDelim(GetSchemaPath) + Schema
  else
    Schema := FAOwner.Configuracoes.Arquivos.PathSchemas + Schema;
...

Que faz chamada a outra função abaixo:

function TACBrNFSeXProvider.GetSchemaPath: string;
begin
  with TACBrNFSeX(FAOwner).Configuracoes do
  begin
    Result := PathWithDelim(Arquivos.PathSchemas + Geral.xProvedor);
    Result := PathWithDelim(Result + VersaoNFSeToStr(Geral.Versao));
  end;
end;
 

O problema, vem no trecho abaixo se marcado a opção de montar automaticamente, da erro porque a principio não tem a pasta com o numero da versão:

procedure TACBrNFSeXProvider.ValidarSchema(Response: TNFSeWebserviceResponse; aMetodo: TMetodo);
var
...

  if TACBrNFSeX(FAOwner).Configuracoes.Geral.MontarPathSchema then
    Schema := PathWithDelim(GetSchemaPath) + Schema
  else
    Schema := FAOwner.Configuracoes.Arquivos.PathSchemas + Schema;
 

Minha duvida é porque colocar a versão "Geral.Versao" no path? Senão tivesse ela, daria para referenciar a pasta ...\Exemplos\ACBrDFe\ACBrNFSe\Schemas e ficaria dinamico mudar de provedor já que dentro da pasta não tem este numero de versão e parece ser mantido sem o numero de versão, poderiam me explicar melhor como eu faria para ficar dinamico essa mudança de provedor e não ter de trabalhar com este numero de versão, como disse ele nem parece ser mantido na pasta de schemas?

  • Solution
Postado

Falta de atenção da minha parte, estava observando a pasta errada:

...\Exemplos\ACBrDFe\ACBrNFSe\Schemas\..

a sua orientação esta correta é:

...\Exemplos\ACBrDFe\Schemas\NFSe\...

Obrigado pela atenção, @Juliomar Marchetti.

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.