Toad World® Forums

Problems with beta4 of sqlnav 7.1

although more stable than 7.0.1 production there seems to be some problems with this beta

There is a bug with 7.0.1 that when you close some editor tabs you end up on a tab with different title than the actual content. This happens usually when you dont close first the last one, but you close editors randomly. The workaround is to click on a different tab and everything gets normal. This seems fixed with 7.1.0 but there are some cases that the problem reapears. I am afraid I cannot reproduce the propblem but did occur with this beta but not following the 7.0.1 pattern.

Issue 2

Editor reports errors when there are not any when running scripts.

The problem appeared twice. I extracted ddl for a number of packages using sqlnavigatior 7.1 and then run the script on a different db. Navigator 7.1 complained for syntax errors and refused to execute the script. The script was then run with sqlplus with no problem.

Next day I tried to execute a script and navigator complained that

9:14:00 πμ line 2: ORA-06550: line 130, column 13:
9:14:00 πμ PLS-00103: Encountered the symbol “end-of-file” when expecting one of the following:
9:14:00 πμ
9:14:00 πμ ( begin case declare end exception exit for goto if loop mod
9:14:00 πμ null pragma raise return select update while with
9:14:00 πμ
9:14:00 πμ
<< continue close current delete fetch lock
9:14:00 πμ insert open rollback savepoint set sql execute commit forall
9:14:00 πμ merge pipe purge

However when I execute the script with 7.0.1 on same schema and db it is executed correctly. I include a simplified version of the script but I am afraid I cannot simply the query and reproduce the problem

/* Formatted on 30-Μαϊ-2014 08:31:31 (QP5 v5.262) /
DECLARE
newid NUMBER;
newref_cd VARCHAR2 (20 BYTE);
newautonet_flg VARCHAR2 (1);
newaccounttype NUMBER;
newprcp_cd VARCHAR2 (10);
newclr_sacc_cd VARCHAR2 (10);
newclr_sys_cd VARCHAR2 (4);
saccsufix VARCHAR2 (1);
tr_m VARCHAR2 (12);
located BOOLEAN;
cnt NUMBER := 0;
avoidthis BOOLEAN := FALSE;
nodouble BOOLEAN := FALSE;
BEGIN
FOR c
IN (SELECT z.
, tpr.prcp_cd tr_prcp_cd, cpr.prcp_cd cl_prcp_cd
FROM (SELECT a.customer tr_member,
a.acc_id tradingcode,
TO_DATE (SUBSTR (a.CREATED, 1, 14),
‘yyyymmddhh24miss’)
tr_acv_dt,
DECODE (
a.a_state,
2, TO_DATE (SUBSTR (a.T_STAMP, 1, 14),
‘yyyymmddhh24miss’),
TO_DATE (NULL))
tr_dacv_dt,
NVL (b.customer, a.customer) clrmemebr,
NVL (b.acc_id, a.acc_id) clearingcode,
NVL (b.auto_netting, a.auto_netting) auto_netting,
NVL (b.DIARY_NBR, a.DIARY_NBR) accs_cd,
TO_DATE (
SUBSTR (NVL (b.CREATED, a.CREATED), 1, 14),
‘yyyymmddhh24miss’)
cl_acv_dt,
DECODE (
NVL (b.a_state, a.a_state),
2, TO_DATE (
SUBSTR (NVL (b.T_STAMP, a.T_STAMP),
1,
14),
‘yyyymmddhh24miss’),
4, TO_DATE (
SUBSTR (NVL (b.T_STAMP, a.T_STAMP),
1,
14),
‘yyyymmddhh24miss’),
TO_DATE (NULL))
cl_dacv_dt
FROM (SELECT *
FROM mp_deriv_accounts@surv4deriv.helex.gr
WHERE A_STATE <> 1 AND acc_type <> ‘DA’) a,
(SELECT *
FROM mp_deriv_accounts@surv4deriv.helex.gr
WHERE A_STATE <> 1 AND acc_type <> ‘DA’) b
WHERE --a.acc_type=‘TA’ AND
a.position_resp = b.ACCOUNT(+)) Z,
zb_adex_prcps tpr,
zb_adex_prcps cpr
WHERE z.clrmemebr = cpr.cd
AND z.tr_member = tpr.cd
AND (NOT EXISTS
(SELECT 1
FROM cla_trd_cd_maps
WHERE cla_trd_cd_maps.trd_cd =
z.tradingcode
AND cla_trd_cd_maps.trd_prcp_cd =
tpr.prcp_cd))
UNION
SELECT z.*, tpr.prcp_cd tr_prcp_cd, cpr.prcp_cd cl_prcp_cd
FROM (SELECT a.customer tr_member,
a.acc_id tradingcode,
TO_DATE (SUBSTR (a.CREATED, 1, 14),
‘yyyymmddhh24miss’)
tr_acv_dt,
DECODE (
a.a_state,
2, TO_DATE (SUBSTR (a.T_STAMP, 1, 14),
‘yyyymmddhh24miss’),
TO_DATE (NULL))
tr_dacv_dt,
NVL (b.customer, a.customer) clrmemebr,
NVL (b.acc_id, a.acc_id) clearingcode,
NVL (b.auto_netting, a.auto_netting) auto_netting,
NVL (b.DIARY_NBR, a.DIARY_NBR) accs_cd,
TO_DATE (
SUBSTR (NVL (b.CREATED, a.CREATED), 1, 14),
‘yyyymmddhh24miss’)
cl_acv_dt,
DECODE (
NVL (b.a_state, a.a_state),
2, TO_DATE (
SUBSTR (NVL (b.T_STAMP, a.T_STAMP),
1,
14),
‘yyyymmddhh24miss’),
4, TO_DATE (
SUBSTR (NVL (b.T_STAMP, a.T_STAMP),
1,
14),
‘yyyymmddhh24miss’),
TO_DATE (NULL))
cl_dacv_dt
FROM (SELECT *
FROM mp_deriv_accounts@surv4deriv.helex.gr
WHERE A_STATE <> 1 AND acc_type <> ‘DA’) a,
(SELECT *
FROM mp_deriv_accounts@surv4deriv.helex.gr
WHERE A_STATE <> 1 AND acc_type <> ‘DA’) b
WHERE --a.acc_type=‘TA’ AND
a.position_resp = b.ACCOUNT(+)) Z,
zb_adex_prcps tpr,
zb_adex_prcps cpr
WHERE z.clrmemebr = cpr.cd
AND z.tr_member = tpr.cd
AND NOT EXISTS
(SELECT 1
FROM cla_pos_accs
WHERE ref_cd = z.clearingcode
AND cla_pos_accs.prcp_cd = cpr.prcp_cd))
LOOP
IF c.auto_netting <> 1
THEN
newautonet_flg := 0;
ELSE
newautonet_flg := 1;
END IF;

END LOOP;
END;

(sql navigator 7.0.1 results

9:03:14 πμ End Script Execution
9:16:28 πμ Start Script Execution …
9:16:28 πμ **** SCRIPT STARTED: 30/5/2014 9:16:28 πμ ****
9:16:28 πμ DECLARE
9:16:28 πμ newid NUMBER;
9:16:28 πμ …
9:16:36 πμ PL/SQL block executed
9:16:36 πμ **** SCRIPT ENDED 30/5/2014 9:16:36 πμ ****
9:16:36 πμ End Script Execution)

Hi Mastorakis,

Thank you a lot for reporting this error. It was indeed caused by one of the changes we made in v7.1. SQLNAV-1641 is created for this error. We will fix it
for v7.1.

Thanks,

Vincent

Hi Mastorakis,

This has been verified fixed in the latest beta we just posted. Thanks again for reporting this error. We really appreciate your feedbacks.

Thanks,

Vincent