Formatter seems to handle nearly identical DDL statements differently

All,

this relates to Beta 13.0.0.44 of Toad for Oracle.

I have a file with a bunch of create sequence statements. The statements are generated, so they follow a single pattern.
When formatting the file, it seems different statements are handled differently, especially when looking at spacing.

I’ll put the unformatted file below.
You can check by formatting the file. When I reformat the file, two definitions stand out:
those for localpart_message_seq and purchase_order_ie_seq are formatted slightly differently:

  • trailing spaces are not removed
  • multiple spaces before comments are not reduced to a single space
  • the start keyword is not indented to its proper position.

Kind regards,
Abe Kornelis

The file:

/* ************************************** *

  • WARNING! This DDL script is generated! *
  • Template: create_sequence *
  • Filename: customer_message_seq.sql *
  • ************************************** */

create sequence iib_krg.customer_message_seq /******************************************************************************
NAME: CUSTOMER_MESSAGE_SEQ
REF: –

PURPOSE: Generate a unique identifier for each customer message

REVISIONS: n.a. Sequence definition is generated

NOTES:
******************************************************************************/
start with 1 increment by 1;

/* ************************************** *

  • WARNING! This DDL script is generated! *
  • Template: create_sequence *
  • Filename: item_message_seq.sql *
  • ************************************** */

create sequence iib_krg.item_message_seq /******************************************************************************
NAME: ITEM_MESSAGE_SEQ
REF: –

PURPOSE: Generate a unique identifier for each item message

REVISIONS: n.a. Sequence definition is generated

NOTES:
******************************************************************************/
start with 1 increment by 1;

/* ************************************** *

  • WARNING! This DDL script is generated! *
  • Template: create_sequence *
  • Filename: leadtime_message_seq.sql *
  • ************************************** */

create sequence iib_krg.leadtime_message_seq /******************************************************************************
NAME: LEADTIME_MESSAGE_SEQ
REF: –

PURPOSE: Generate a unique identifier for each leadtime and leadtime_xa message

REVISIONS: n.a. Sequence definition is generated

NOTES:
******************************************************************************/
start with 1 increment by 1;

/* ************************************** *

  • WARNING! This DDL script is generated! *
  • Template: create_sequence *
  • Filename: localpart_message_seq.sql *
  • ************************************** */

create sequence iib_krg.localpart_message_seq /******************************************************************************
NAME: LOCALPART_MESSAGE_SEQ
REF: –

                                           PURPOSE:   Generate a unique identifier for each publishable message

                                           REVISIONS: n.a. Sequence definition is generated

                                           NOTES:    
                                                ******************************************************************************/
                             start with 1 increment by 1;

/* ************************************** *

  • WARNING! This DDL script is generated! *
  • Template: create_sequence *
  • Filename: part_message_seq.sql *
  • ************************************** */

create sequence iib_krg.part_message_seq /******************************************************************************
NAME: PART_MESSAGE_SEQ
REF: –

PURPOSE: Generate a unique identifier for each part message

REVISIONS: n.a. Sequence definition is generated

NOTES:
******************************************************************************/
start with 1 increment by 1;

/* ************************************** *

  • WARNING! This DDL script is generated! *
  • Template: create_sequence *
  • Filename: partdesc_message_seq.sql *
  • ************************************** */

create sequence iib_krg.partdesc_message_seq /******************************************************************************
NAME: PARTDESC_MESSAGE_SEQ
REF: –

PURPOSE: Generate a unique identifier for each partsalesdesc message

REVISIONS: n.a. Sequence definition is generated

NOTES:
******************************************************************************/
start with 1 increment by 1;

/* ************************************** *

  • WARNING! This DDL script is generated! *
  • Template: create_sequence *
  • Filename: purchase_order_ie_seq.sql *
  • ************************************** */

create sequence iib_krg.purchase_order_ie_seq /******************************************************************************
NAME: PURCHASE_ORDER_IE_SEQ
REF: –

                                           PURPOSE:   Generate a unique identifier for each po_ie, so_ie, ie_adj, ie_mov message

                                           REVISIONS: n.a. Sequence definition is generated

                                           NOTES:    
                                           ******************************************************************************/
                                           start with 1 increment by 1;

/* ************************************** *

  • WARNING! This DDL script is generated! *
  • Template: create_sequence *
  • Filename: purchase_order_msg_seq.sql *
  • ************************************** */

create sequence iib_krg.purchase_order_msg_seq /******************************************************************************
NAME: PURCHASE_ORDER_MSG_SEQ
REF: –

PURPOSE: Generate a unique identifier for each po_full and po_partial message

REVISIONS: n.a. Sequence definition is generated

NOTES:
******************************************************************************/
start with 1 increment by 1;

/* ************************************** *

  • WARNING! This DDL script is generated! *
  • Template: create_sequence *
  • Filename: sales_order_msg_seq.sql *
  • ************************************** */

create sequence iib_krg.sales_order_msg_seq /******************************************************************************
NAME: SALES_ORDER_MSG_SEQ
REF: –

PURPOSE: Generate a unique identifier for each calloff_full, so_partial, and 2 more message

REVISIONS: n.a. Sequence definition is generated

NOTES:
******************************************************************************/
start with 1 increment by 1;

/* ************************************** *

  • WARNING! This DDL script is generated! *
  • Template: create_sequence *
  • Filename: vendor_message_seq.sql *
  • ************************************** */

create sequence iib_krg.vendor_message_seq /******************************************************************************
NAME: VENDOR_MESSAGE_SEQ
REF: –

PURPOSE: Generate a unique identifier for each vendor message

REVISIONS: n.a. Sequence definition is generated

NOTES:
******************************************************************************/
start with 1 increment by 1;

My Formatter options:

296
5.315.0
5.324
2
2
140
<LF_ConsecLFLimit>1</LF_ConsecLFLimit>
2
2
2
2
1
1
1
2
1
0
2
0
1
0
0
0
1
S
1
1
1
S
1
1
1
SO
1
1
S
1
S
1
1
1
S
1
1
1
S
S
1
1
1
1
1
1
3
1
1
S
S
1
1
S
&nb

Hello Abe,

This is a rather old bug which unfortunately is still in the queue (QP-901). I’ll see if I can find a quick fix.

Thanks,
Andre