Toad World® Forums

12.12.0.39 formatter having trouble with procedure parameter alignment


#1

Just got Toad for Oracle 12.12.0.39,and it is changing the function/procedure parameter alignment of my previously formatted code from

BEGIN
DBMS_SCHEDULER.create_job ( job_name => v_job_name,
job_type => ‘STORED_PROCEDURE’,
job_action => ‘app_disa_ca.process_cas’,
start_date => v_start_date,
repeat_interval => NULL, – run once
enabled => TRUE,
comments => 'Retry session for scheduler job ’
|| app_disa_ca.pk_database_job_name);
END;

to

BEGIN
DBMS_SCHEDULER.create_job (
job_name =>
v_job_name,
job_type =>
‘STORED_PROCEDURE’,
job_action =>
‘app_disa_ca.process_cas’,
start_date =>
v_start_date,
repeat_interval =>
NULL, – run once
enabled =>
TRUE,
comments =>
'Retry session for scheduler job ’ || app_disa_ca.pk_database_job_name);
END;

In formatter, Right Margin is 95, Parameter Alignment is Dynamic with 3 spaces


#2

I could not reproduce that, given both latest formatter and formatter used in 12.12.0.39 (QP5.dll version 5.318).

Was this snippet aligned near the left hand margin, or was it taken from some indented spot?

Can you pass me the full options data? (Go to Options -> top tab -> Copy Options to Clipboard)

Thanks,
Andre


#3

post deleted


#4

I could not reproduce this either in my 12.12 Toad version.

Can you verify that the formatting options that control the Attributes listing, or Columns and Variables are set to a List Arrangement of something like a “stacked on more than … x… columns”?


#5

Hi Chad,

The copy/paste must have go wrong. The data should have been something like this:

296 5.298.0 5.55555 4 77 ....... multiple lines like these .....

Could you please have another try?

Thanks,
Andre


#6

Sorry, I was replying to the email. Let’s try this instead

296 5.315.0 5.318 4 4 1 1 95 1 2 2 43 1 1 0 0 1 1 3 SO 1 D D D 1 D 99 0 0 CEFMS/CEEMIS Opts v 1.1

#7

Something more for you to consider. The TO_CHAR is the only difference between the two contained calls to audit_on below. The format o fthe second call to audit_on is in question.

BEGIN
audit_on (i_procedure_name => k_proc_name,
i_message_text => 'Supervisor code: ’
|| i_supv_code
|| '; Timekeeper code: ’
|| i_timekeeper_code
|| '; Pay Prd End: ’
|| TO_CHAR (i_pay_prd_end_date,
‘dd-Mon-yyyy’)
|| '; PKI Access ID: ’
|| i_pki_access_id
|| '; User Id: ’
|| i_user_id_no
|| '; v_user_id_no: ’
|| v_user_id_no
|| '; Prior/Current: ’
|| i_prior_or_current,
i_next => TRUE);

audit_on (
i_procedure_name =>
k_proc_name,
i_message_text =>
'Supervisor code: ’
|| i_supv_code
|| '; Timekeeper code: ’
|| i_timekeeper_code
|| '; Pay Prd End: ’
|| '; PKI Access ID: ’
|| i_pki_access_id
|| '; User Id: ’
|| i_user_id_no
|| '; v_user_id_no: ’
|| v_user_id_no
|| '; Prior/Current: ’
|| i_prior_or_current,
i_next =>
TRUE);
END;


#8

Gary and Andre,

Thanks for looking into this. Were either of you able to reproduce my results with the supplied information?

All of our code changes go through a code review process, and such drastic formatting changes from the prior version we used makes the review process more difficult than it needs to be. Any insight you might provide would be greatly appreciated.


#9

Sorry Chad I must have missed a notification. Here are my findings:

Version 5.318 of parser/formatter component is used by Toad version around 12.12.0.39. You must be using such 12.x version. The overzealous folding is a bug of 5.318. It was fixed in 5.319. Toad version 13, released around Oct 30, 2017 was the first Toad to use the newer component (actually using 5.320).

So the folding should look like this:

BEGIN
DBMS_SCHEDULER.create_job (
job_name => v_job_name,
job_type => ‘STORED_PROCEDURE’,
job_action => ‘app_disa_ca.process_cas’,
start_date => v_start_date,
repeat_interval => NULL, – run once
enabled => TRUE,
comments =>
'Retry session for scheduler job ’ || app_disa_ca.pk_database_job_name);
END;

BEGIN
DBMS_SCHEDULER.create_job (
job_name => v_job_name,
job_type => ‘STORED_PROCEDURE’,
job_action => ‘app_disa_ca.process_cas’,
start_date => v_start_date,
repeat_interval => NULL, – run once
enabled => TRUE,
comments =>
'Retry session for scheduler job ’ || app_disa_ca.pk_database_job_name);
END;

Hope this helps,
Andre