You will no longer receive e-mail notifications from this forum.
Log-In to post
Today I installed the new 12.12 non-Beta version, i.e. 126.96.36.199.
And now it's giving me access errors.Here's the error log:
Kind regards,Abe Kornelis==========
I'm currently on Toad 188.8.131.52.
Within an IF statement, I'm doing two calls to a single routine (parms are different).Strange enough, the code gets formatted quite differently:
if lower(p_debug) = 'debug' then utl_krg.msg_log.log_debug_msg(p_schema => g_my_schema , p_package => g_my_package , p_routine => l_my_routine , p_msg_id => g_my_msg_prefix || '0022D' , p_message => 'Queue ' || coalesce(g_mqget_queue, '<*Null>') || ' opened ' || case when l_errmsg = 'OK' then 'successfully' else ' with error: ' || l_errmsg end ); utl_krg.msg_log.log_debug_msg( p_schema => g_my_schema , p_package => g_my_package , p_routine => l_my_routine , p_msg_id => g_my_msg_prefix || '0023D' , p_message => 'g_mqget_status=' || coalesce(g_mqget_status, '<*Null>') || ', g_mqget_retry_time=' || coalesce(trim(to_char(g_mqget_retry_time, 'yyyy-mm-dd hh24:mi:ss')), '<*Null>') ); end if;
Q1: Why are they being formatted differently?
Q2: I don't mind the reduced indentation of the p_message parameter, but I really hate all the other parameters being spread out over two lines where there is no need to do so. Would it be possible to make this configurable?
Latest beta and latest prod version of Toad.
If you open partition grid you have pic like:
no matter you do you cannot see real order of partitions because you need partition_position column.
Could you plase introduce that column in this grid as well?
Once again, the Toad team would like to thank each and every one of you for your participation. Every question, discussion, idea, bug report, etc. is crucial to our success. The users have always and will always drive this product.
Guess I am missing something obvious, but I did not manage to open a Read Only connection without selecting it from the list.
Once I have connected the connection is in the list, so I can change the "Read Only" flag, but is there a way to do so while connecting for the first time?
this relates to Toad for Oracle Beta, version 184.108.40.206.
The following statement is an example of incorrectly aligned AS clauses on a select list:insert into iib_krg.gen_table_columns select host_env , 'poll_defaults' as short_name , 'SLEEP_INTERVAL' as column_name , 5 as column_seq , 'NUMBER' as data_type , 5 as data_length , 0 as decimals , 'N' as key_column , '' as key_lookup_type , 'Y' as modifiable_column , 'N' as start_column , 'N' as end_column , 'N' as status_column , '' as completion_criterion , 'Y' as reference_column , '' as default_value , 'NOTNULL' as content_check , '' as retrieval_query , '' as xml_pathname , 'N' as treat_column_as_new , 'Nr of seconds to wait when no data is available; use -1 to exit instead of going to sleep' as column_description from iib_krg.gen_tables group by host_env;
I think either all AS clauses should align properly, or (even better, but probably more complex) the long line should be excepted from determination of the alignment column, making all AS clauses align on column 29.
Good idea? Bad idea?
In the Edior on 220.127.116.11, I have this:
create or replace view test_view as select t.abc, u.def from tablet t outer join tableu u
But Toad Insight doesn't like the word "join" here, where expects the keyword "APPLY". If I remove the "t" table alias, it doesn't like the word "outer", saying I shouldn't use a reserved word as a table alias.
The statement (it's real-life counterpart) executes fine.
In 18.104.22.168, I'm doing a Database->Export->Generate Schema Script. In the "Source and Output" tab, I check two schemas. I then check "User's Roles" at the top of the Object Types tab, as well as Tables. In Script Options, I have "Sort for Creation" checked. The resulting code has the roles generated, but some object GRANTs are generated before the objects are created. e.g.:
CREATE ROLE MY_ROLE NOT IDENTIFIED;GRANT ALTER ON SCHEMA2.TABLE2 TO MY_ROLE;CREATE TABLE SCHEMA1.TABLE1 (BLEAH1 NUMBER);GRANT ALTER ON SCHEMA1.TABLE1 TO MY_ROLE;CREATE TABLE SCHEMA2.TABLE2 (BLARF2 NUMBER);GRANT ALTER ON SCHEMA2.TABLE2 TO MY_ROLE;
Both SCHEMA1 and SCHEMA2 have the MY_ROLE granted. So it seems the generator forgets that SCHEMA2 also needs objects created before granting to the role while it's dealing with SCHEMA1 objects.
The workaround is obvious and easy...
This relates to Toad for Oracle, Beta 22.214.171.124.
I was editing a query, hitting F2, F5, F9 - I forgot the exact sequence. It's probably immaterial anyway.
What I first got was an error message like "Out of system resources"After that I got "Invalid Handle" messages. Lots of them. Trying to close Toad resulted only in more pop-ups with "Invalid Handle".
I had to resort to the Windows task manager to kill the Toad session :-(
As a consequence, no information is available in Toad.el. Too bad.
If you would like any additional info, please do ask!
I was trying to run this block
begininsert into table values (null, null);insert into table values (null, null);insert into table values (null, null);insert into table values (null, null);insert into table values (null, null);end;
In older version of toad, whole block was executed, with current beta only insert where cursor is located gets executed
I'm currently on 126.96.36.199.
In the formatter options, list arrangements, parameters, I have set:- List arrangement: Stacked on overflow or more than 3- Parentheses:option 2- On overflow on 1, 2, 3 then use: option 5
With the current code this results in parameter sprawl over an excessive number of lines,reducing readability and maintainability of the code :-(
For example I now get: if lower(p_debug) = 'debug' then utl_krg.msg_log.log_debug_msg( p_schema => g_my_schema , p_package => g_my_package , p_routine => l_my_routine , p_action => l_action , p_msg_id => g_my_msg_prefix || '0035D' , p_message => 'reread check: l_app=' || coalesce(l_app, '<*null>') || ', g_getkrg_last_app=' || coalesce(g_getkrg_last_app, '<*null>') || ', g_mqget_retry_time=' || coalesce(trim(to_char(g_mqget_retry_time)), '<*null>') || ', localtimestamp=' || coalesce(trim(to_char(localtimestamp)), '<*null>') ); end if;
Where the formatter in 188.8.131.52 gives me: if lower(p_debug) = 'debug' then utl_krg.msg_log.log_debug_msg( p_schema => g_my_schema , p_package => g_my_package , p_routine => l_my_routine , p_action => l_action , p_msg_id => g_my_msg_prefix || '0035D' , p_message => 'resend check: l_app=' || coalesce(l_app, '<*null>') || ', g_putkrg_last_app=' || coalesce(g_putkrg_last_app, '<*null>') || ', g_mqput_retry_time=' || coalesce(trim(to_char(g_mqput_retry_time)), '<*null>') || ', localtimestamp=' || coalesce(trim(to_char(localtimestamp)), '<*null>') ); end if;
Which is more both compact and better readable.
I assume some customer(s) have asked questions that have prompted the change in formatter behavior,so I'm not going to ask for a reversal of the change. But could we have a formatting parameter,to force or not force all parameters onto a separate line if any parameter overflows?
While I'm at it, we'd also like a distinction between Oracle supplied functions, and user-defined ones.Would it be possible to have separate formatting rules for these two categories of functions?
Kind regards,Abe Kornelils==========
A simple question of readability and maintainability of code.This is an example of a call to our exception handler as formatted in 12.11 and up with Dynamic arrangement: exception when others then -- log the error and re-raise exception to inform caller utl_krg.msg_log.standard_exception_handler( p_schema => g_my_schema , p_package => g_my_package , p_routine => l_my_routine , p_action => l_action , p_msg_code => sqlcode , p_local_msg_prefix => g_my_msg_prefix , p_message => 'On ' || ora_database_name || ': ' || sqlerrm || ' - p_item_name=' || coalesce(p_item_name, '<*Null>') || ', p_item_key=' || coalesce(p_item_key, '<*Null>') || ', p_timestamp=' || coalesce(trim(to_char(p_timestamp, 'yyyy-mm-dd hh24:mi:ss.ff')), '<*Null>') , p_row_count => l_row_count );
The same code by the 12.10 formatter: exception when others then -- log the error and re-raise exception to inform caller utl_krg.msg_log.standard_exception_handler( p_schema => g_my_schema , p_package => g_my_package , p_routine => l_my_routine , p_action => l_action , p_msg_code => sqlcode , p_local_msg_prefix => g_my_msg_prefix , p_message => 'On ' || ora_database_name || ': ' || sqlerrm || ' - p_item_name=' || coalesce(p_item_name, '<*Null>') || ', p_item_key=' || coalesce(p_item_key, '<*Null>') || ', p_timestamp=' || coalesce(trim(to_char(p_timestamp, 'yyyy-mm-dd hh24:mi:ss.ff')), '<*Null>') , p_row_count => l_row_count );
The latter is - at least to my mind and eyes - much better readable.1) is has a clear distinction between parmnames area and parmvalues area2) is uses far fewer lines, which helps in maintaining a view of the statement within its context. (screens are always too small)
My issue with the new formatter is not that it uses parmname area for holding parmvalues when a parameter value specification is very long, but I do object to reusing the parmname area for *all* parmvalues as soon as any one of them uses it. It causes visual clutter on the left-hand side, leaves available space at the right-hand side unused and unnecessarily stretches the block of code vertically.
Just my opinion. Please be invited to share your thoughts.
I'm on Toad 184.108.40.206.
The formatter seems to be trying to align the => signs in my list of named parameters.But it is breaking lines when it should not.E.g. it breaks p_debug => 'Nodebug' into two separate code lines :-(
This is the sample query:
select category_old as category_economical , category_new as category_physical , count(*) as aantalfrom (select r.partno , r.compno , substr(r.category_with_repl_reason, 1, 1) as category_new , substr(stock_stats.summarize.determine_category( /* turnover = sales (of parts+kits) - returns, include turnover of replaced parts */ p_partno => r.partno , p_synonym_of => r.synonym_of , p_value_lines => coalesce(r.value_lines, 0) + coalesce(r.repl_value_lines, 0) , p_qty_on_stock => coalesce(r.qty_on_stock_economical, 0) + coalesce(r.repl_qty_on_stock_economical, 0) , p_turnover_12m => coalesce(r.qty_sold_1yr, 0) + coalesce(r.qty_uninvoiced, 0) - coalesce(r.qty_returned_1yr, 0) - coalesce(r.qty_uninvoiced_returns, 0) + coalesce(r.repl_qty_sold_1yr, 0) + coalesce(r.repl_qty_uninvoiced, 0) - coalesce(r.repl_qty_returned_1yr, 0) - coalesce(r.repl_qty_uninvoiced_returns, 0) , p_turnover_24m => coalesce(r.qty_sold_2yr, 0) + coalesce(r.qty_uninvoiced, 0) - coalesce(r.qty_returned_2yr, 0) - coalesce(r.qty_uninvoiced_returns, 0) + coalesce(r.repl_qty_sold_2yr, 0) + coalesce(r.repl_qty_uninvoiced, 0) - coalesce(r.repl_qty_returned_2yr, 0) - coalesce(r.repl_qty_uninvoiced_returns, 0) , p_qty_reserved => coalesce(r.qty_reserved, 0) + coalesce(r.repl_qty_reserved, 0) , p_create_mon => case when r.linetype = 'G' then coalesce(r.created_global, 200301) else coalesce(r.created_psbase , r.created_local , r.created_global , 200301 ) end , p_current_period => r.mon_code , p_debug => 'Nodebug' ) , 1 , 1 ) as category_old from results r where r.mon_code = 201612 and r.linetype = 'D' and r.redundancy_code = 'N' and r.compno > 0)group by category_old, category_neworder by category_old, category_new;
As you can see, some parameter values are calculated using a lengthy expression.Those are formatted okay, but the short ones that should fit on a single code lineare broken into two lines as well.
I would like the => symbols to be aligned, but rather not this way!
Kind regards,Abe Kornelis.==========
In 220.127.116.11 SB LHS synonym tab for a schema other than the one logged in, I click on the Create Synonym button to bring up the wizard. After selection, the Show SQL window leaves off the schema in the synonym name. Sure enough, it created the synonym in the logged in schema instead of the one the SB is pointing to. I didn't see anywhere to change that behavior, but it's always possible I missed it.
Disclaimer: This message thankfully has absolutely nothing to do with politics.
This relates to Toad for Oracle, Beta 18.104.22.168
I just noticed the spacing that the formatter applies between real code and -- comments or /* commentshas increased from 1 to 2 positions. The same applies between a column name and its type definition.
Some_Column Varchar2(5 char)
now has an additional space...
Was this done on purpose? Would it be feasible to create a parameter for this behavior in the spacing tab?
In 22.214.171.124, I have this happy scenario against one of my 126.96.36.199 databases I'm prepping for an upgrade:
CREATE TABLE tester (col1 VARCHAR2(16), col2 NVARCHAR2(16));INSERT INTO tester VALUES ('one byte',n'two bytes');COMMIT;SELECT LISTAGG(col1,',') WITHIN GROUP (ORDER BY 1) FROM tester;SELECT LISTAGG(col2,',') WITHIN GROUP (ORDER BY 1) FROM tester;
The result of the first SELECT is correct, but the second one shows up as NULL in the grid. Yes, this is likely due to Oracle BUG 19461687, but the output should show the same-yet-incorrect results as SQL*Plus, with the extra space between each character of the "two bytes" data. If I had to guess, the leading zero-byte in the LISTAGG output is triggering the NULL (and why are the Oracle internal datatype codes for VARCHAR2 and NVARCHAR2 the same???).
Phew! If I had had hair before I started debugging my original LISTAGG that this example was cooked down from.....well, I'd still be baldish-like, I guess. Oh well.
I have a simple SQL statement that generates insert and update statements - just over 370,000 of them.
So I run the query, export the result column, paste that into a separate editor window on a different connection.
Then I select the first statement, which happens to be an update statement, and hit F9 in order to test the generated update statement.Toad goes into a hang. In the lower right corner the progress bar does not show anything in progress.
Inserting a blank line in between the highlighted statement and the rest of the script makes no difference.Also, Ctrl-Enter behaves the same as F9: Toad hangs and shows no progress at all.
Is this a known issue?
Getting a slow response in Toad for Oracle 12.5.1, 12.10 and now with Beta Version 12.11.- When I am trying to open Schema Browser | Script Tab| It takes a lot of time to show the DDL. in some cases almost 2 minutes. I'm using 64 bit environment (Windows, Database Server 12c, Toad for Oracle and Oracle Client 12.1)
I'm on Toad for Oracle, Beta 188.8.131.52.
I've just encountered another case where Toad simply disappears.Here's what happened (in a nutshell):
While running a lengthy script using F5, the script encounters an issue and raises ORA-20001I click "Ignore" on the pop-upScript continues for a few secondsThen just before the script ends, Toad disappears without a trace.
I just checked my trace table - indeed the script did not complete, it just disappearedin the midst of its activities.
The following line:@..\Packages\sys_utils.pks -- pre-declare because it's used by install package
is reformatted as follows:@..\Packages\sys_utils.pks - - pre-declare because it 's used by install package
Two undeserved spaces are inserted:1) between the two dashes, causing the comment to be turn into 'code' :-(2) before the single quote in "it's"
The problem is of course the space in between the two dashes.IT causes the single quote in the comment to be treated as part of the code,turning everything that follows the quote into a long literal :-(
Changing the comment dashes into /**/ does not work either:the formatter will insert a space between the initial slash and star, with the same detrimental effect on my code.
Would you please fix this?