Teria como eu gerar um arquivo txt positional com 43000 linhas e cada linha com 119 posições via sqlplus na minha máquina local?
Gerei o seguinte SQL :
DECLARE
CURSOR S1 IS
SELECT tp_reg
,funcao
,cnpj_emis
,cnpj_dest
,num_invoice
,serie_invoice
,date_invoice
,tot_linha_invoice
,tot_desc_invoice
,tot_invoice
,date_invoice_cd
,num_par_invoice
,date_par_invoice
,vl_par_invoice
,date_pag_par_inv
,tp_retencao
,invoice_id
,vendor_site_id
FROM B2W_NFAP_MERC_CONTROL
order by invoice_id,tp_reg,num_invoice,num_par_invoice;
BEGIN
for r1 in s1 loop
if r1.tp_reg = '02' then
DBMS_OUTPUT.put_line( R1.TP_REG || -- 01. Tipo Registro
R1.FUNCAO || -- 02. Função Mensagem
R1.CNPJ_EMIS || -- 03. CNPJ Emissor da NF
R1.CNPJ_DEST || -- 04. CNPJ Destinatário da NF
RPad(R1.NUM_INVOICE,17,' ') || -- 05. Número da Nota Fiscal
R1.SERIE_INVOICE || -- 06. Série da NF
R1.date_invoice || -- 07. Data e Hora da Emissão NF
R1.tot_linha_invoice || -- 08. Valor Total das Linhas da NF
LPad('0',15,'0') || -- 09. Valot Total dos Descontos
R1.TOT_INVOICE || -- 10. Valor Total da NF
R1.date_invoice_cd); -- 11. Data de Entrega no CD
elsif r1.tp_reg = '20' then
DBMS_OUTPUT.put_line (
R1.TP_REG || -- 01. Tipo Registro
R1.num_par_invoice || -- 02. Número da Parcela
R1.date_par_invoice || -- 03. Data de Vencimento Parcela
R1.vl_par_invoice || -- 04. Valor Parcela da NF
LPad('0',8,'0') || -- 05. Data Pagamento Parcela
R1.tp_retencao); -- 06. Tipo Retenção
end if;
end loop;
END;