- Fórum
- Protheus/Microsiga/Totvs
- Módulos do Protheus
- Módulo Faturamento
- Exportar XML de notas de Importação
Perguntas Exportar XML de notas de Importação
- roverson
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 5
- Obrigados Recebidos: 0
9 anos 6 meses atrás #28242
por roverson
Exportar XML de notas de Importação foi criado 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
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.
- Fórum
- Protheus/Microsiga/Totvs
- Módulos do Protheus
- Módulo Faturamento
- Exportar XML de notas de Importação
Tempo para a criação da página:0.116 segundos