Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 4166 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Boa tarde, não sei se alguem passou ou ta passando por isso.

 

No caso eu estou gravando o XML no banco de dados ( firebird 2.5 ) em um campo do tipo Blob Sub_type 1 size 4096

no caso se o XML for muito grande ( por exemplo com Muitos produtos ) , passando de 1014 caracteres , eu nao estou conseguindo recuperar do banco de dados ( que esta correto com todas as informacoes do xml completa ).

Alguem tem algum recurso para poder trazer o xml completo?

pode ser em um Memo ou algo do tipo.

 

aguardo.

 

 

 

  • Membros Pro
Postado

eu fiz um procedure assim

 

 

 

function CarregaXml(Campo: TBlobField): TStringStream;
var xmlStream : TMemoryStream;
    xmlStringStream : TStringStream;
begin

  xmlStream := TMemoryStream.Create;
  Campo.SaveToStream(xmlStream);
  xmlStringStream := TStringStream.Create;
  xmlStringStream.LoadFromStream(xmlStream);

  Result := xmlStringStream;
end;
 

 

ai chamo assim passando o campo blob


 

ACBrNFe.NotasFiscais.LoadFromStream(CarregaXml(ibqPesquisaXML_RETORNO)); 

 

espero ter ajudado.

 
 
  • Curtir 1
Postado

Bom dia ....

 

estou fazendo dessa maneira.

 

Pesquisando mais a fundo...descobri que ao utilizar o driver ODBC , no BDEAdministardor ( painel de controle ) tem uma propriedade que fica no registro da base chamado BLOB SIZE, que no caso esta 32 ( que seria o tamanho Max , por isso gerava so 32kb de arquivo ou 1024 caracteres). Basta alterar para por exemplo 128 que sera o suficiente para retornar todo conteudo de uma nota.

 

caso alguem passe por isso esta ai como resolver.

Obrigado a galera.

  • 3 meses depois ...
  • Membros Pro
Postado

Sidney, estava testando sua função para recuperar XML do banco

mas nao compilhar dar erro:

 

xmlStringStream.LoadFromStream(xmlStream);

não esta declarado, saber me dizer qual classe devo incluir no uses;

Erike Farias
Fone: (69) 9245-0707
E-mail:  [email protected]

 

  • Este tópico foi criado há 4166 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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.