Perguntas Exportar XML de notas de Importação

Mais
9 anos 6 meses atrás #28242 por roverson
Prezados,

Não sei se alguém já passou por isso, mas a TOTVS não tem nenhuma solução para que eu possa exportar XML de notas de importação pois os clientes não possuem CNPJ no cadastrado eles são do tipo EX , e por este motivo no filtro padrão deles você só consegue colocar Nota inicial e final, Data inicial e final, CNPJ do cliente ou fornecedor.
Portando não e possível exportar as notas sem customização, estou tentando fazer via oracle e consegui converter o campo BLOB para ler o XML e o resulto e a query abaixo:

SELECT R_E_C_N_O_,Trim(NFE_ID)
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,00001)) XML_SIG01
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,02001)) XML_SIG02
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,04001)) XML_SIG03
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,06001)) XML_SIG04
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,08001)) XML_SIG05
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,10001)) XML_SIG06
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,12001)) XML_SIG07
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,14001)) XML_SIG08
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,16001)) XML_SIG09
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,18001)) XML_SIG10
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,20001)) XML_SIG11
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,22001)) XML_SIG12
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,24001)) XML_SIG13
,Utl_Raw.CAST_TO_VARCHAR2(Dbms_Lob.SubStr(XML_SIG, 2000,26001)) XML_SIG14
FROM SPED050
WHERE ID_ENT = '000049'
AND NFE_ID = 'SP1062063'
ORDER BY r_e_c_n_o_ DESC;



A minha dúvida agora e a seguinte, como eu faço para salvar o resultado de cada campo da XML_SIG em um arquivo .xml ?

eu encontrei a seguinte função no SQL porém não consegui fazer funcionar.

SQL> declare
2 v_arquivo utl_file.file_type;
3 begin
4 v_arquivo := utl_file.fopen('ARQUIVO_DIR', 'arq_teste.txt', 'W');
5 utl_file.put_line(v_arquivo, 'linha 1');
6 utl_file.put_line(v_arquivo, 'linha 2');
7 utl_file.put_line(v_arquivo, 'linha 3');
8 utl_file.put_line(v_arquivo, 'linha 4');
9 utl_file.put_line(v_arquivo, 'linha 5');
10 utl_file.fclose(v_arquivo);
11 exception
12 when utl_file.invalid_path then
13 raise_application_error(-20000, 'Atenção! O diretório informado não existe.');
14 end;
15 /



Alguém consegue me ajudar a montar a query ?

Obrigado a todos

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.116 segundos
Joomla templates by a4joomla