LINE/COL ERROR
-------- -----------------------------------------------------------------
17/4 PL/SQL: SQL Statement ignored
30/8 PL/SQL: ORA-00947: not enough values
CREATE OR REPLACE PROCEDURE prc_emprestimo_gf (
prc_con_num_est OUT NUMBER,
prc_principal_pago OUT NUMBER,
prc_juros_pago OUT NUMBER,
prc_mora_paga OUT NUMBER,
prc_iof_pago OUT NUMBER,
prc_multa_paga OUT NUMBER
)
IS
v_con_num_est NUMBER (14, 4);
v_principal_pago NUMBER (14, 4);
v_juros_pago NUMBER (14, 4);
v_mora_paga NUMBER (14, 4);
v_iof_pago NUMBER (14, 4);
v_multa_paga NUMBER (14, 4);
v_linha VARCHAR2 (2000) := '';
v_arquivo UTL_FILE.file_type;
BEGIN
SELECT c.con_num_est, TO_DATE (t.pgt_dat, 'DD-MM-YYYY'),
SUM (t.ppcvalpriantpgt - t.ppcvalpripospgt),
SUM (t.ppcvaljurantpgt - t.ppcvaljurpospgt),
SUM (t.ppcvalmorantpgt - t.ppcvalmorpospgt),
SUM (t.ppcvaliofantpgt - t.ppcvaliofpospgt), SUM
( t.ppcvalmulantpgt
- t.ppcvalmulpospgt
)
INTO v_con_num_est, v_principal_pago,
v_juros_pago,
v_mora_paga,
v_iof_pago,
v_multa_paga
from emptblppc t, tb_con c, tb_pgt p
WHERE t.con_num = c.con_num
AND t.ppcdthalt = c.con_dat_alt
AND t.con_num = p.con_num
AND t.ppcdthalt = p.pgt_dat_alt
AND t.pgt_dat = p.pgt_dat
AND t.ppcdthalt = '01 jan 1960'
AND TO_CHAR (p.DATA, 'DD-MM-YYYY') = '23-11-2007'
GROUP BY c.con_num_est, TO_DATE (t.pgt_dat, 'DD-MM-YYYY');
v_arquivo := UTL_FILE.fopen ('/backup/CPMF', 'EMPRESTIMO_GF.CSV', 'W');
UTL_FILE.put_line (v_arquivo, 'v_con_num_est : '||NVL (v_con_num_est, 0));
UTL_FILE.put_line (v_arquivo, 'v_principal_pago : '||NVL (v_principal_pago, 0));
UTL_FILE.put_line (v_arquivo, 'v_juros_pago : '||NVL (v_juros_pago, 0));
UTL_FILE.put_line (v_arquivo, 'v_mora_paga : '||NVL (v_mora_paga, 0));
UTL_FILE.put_line (v_arquivo, 'v_iof_pago : '||NVL (v_iof_pago, 0));
UTL_FILE.put_line (v_arquivo, 'v_multa_paga : '||NVL (v_multa_paga, 0));
UTL_FILE.fclose (v_arquivo);
END;
/