Itgenclr008 error / dbms_output / QueryTool 20.2.27

Dear Invantive team,

it seems that the dbms_output.put_line() is not working as expected on QueryTool 20.2.27.

It pops up an itgenclr008 error like the one here: Itgenclr008: Value cannot be null bij aanmelden Excel op Exact Online administraties - 6 van rml

but in my case clearly it is dbms_output() that makes Query Tool unhappy.

That statement is this one:

declare
  l_test integer := 0;
begin
  for i in 1..10 loop
    l_test := l_test + 1;
    dbms_output.put_line(l_test);
  end loop;
end;

Stack:

    itgenclr008: La valeur ne peut pas être null.
Nom du paramètre : method.
Bericht ID: 04882e4e-d2d3-4762-bb67-b4fe99a31810
Opgetreden (UTC): 24/09/2021 10:56:54
declare
     l_test integer := 0;
begin
      for i in 1..10 loop
      l_test := l_test + 1;
      dbms_output.put_line(l_test);
      end loop;
end;
System.ArgumentNullException
   à System.Linq.Expressions.Expression.Call(Expression instance, MethodInfo method, IEnumerable`1 arguments)   à System.Linq.Expressions.Expression.Call(MethodInfo method, Expression[] arguments)   à Invantive.Sql.V1.DefaultPSqlPackages.SK.U(GlobalState , ExecutionOptions , Expression[] , PSqlScope )
   à Invantive.Sql.V1.PSqlParser.ParseCallProcedure(GlobalState owner, ExecutionOptions executionOptions, PSqlCallProcedureStatementContext ctx, PSqlScope scope, AH queryPlanState)
   à Invantive.Sql.V1.PSqlParser.ParsePSqlStatement(GlobalState owner, ExecutionOptions executionOptions, PSqlStatementContext statement, PSqlScope parentScope, AH queryPlanState)
   à Invantive.Sql.V1.PSqlParser.ParsePSqlBlockOrStatement(GlobalState owner, ExecutionOptions executionOptions, PSqlBlockOrStatementContext input, PSqlScope parentScope, AH queryPlanState)
   à Invantive.Sql.V1.PSqlParser.ParsePSqlBlockOrStatements(GlobalState owner, ExecutionOptions executionOptions, PSqlBlockOrStatementsContext input, PSqlScope parentScope, AH queryPlanState)
   à Invantive.Sql.V1.PSqlParser.ParseLoop(GlobalState owner, ExecutionOptions executionOptions, PSqlLoopStatementContext loop, PSqlScope scope, AH queryPlanState)
   à Invantive.Sql.V1.PSqlParser.ParsePSqlStatement(GlobalState owner, ExecutionOptions executionOptions, PSqlStatementContext statement, PSqlScope parentScope, AH queryPlanState)
   à Invantive.Sql.V1.PSqlParser.ParsePSqlBlock(GlobalState owner, ExecutionOptions executionOptions, PSqlDeclareSectionContext declareSection, PSqlBodyNoBatchSeparatorContext body, PSqlScope parentScope, AH queryPlanState)
   à Invantive.Sql.V1.PSqlStatementTree.OnExecute(GlobalState owner, ExecutionOptions executionOptions, ParameterList parameters, ExpressionParser expressionParser)
   à Invantive.Sql.V1.QueryTree.Execute(GlobalState owner, ExecutionOptions executionOptions, ParameterList parameters, ExpressionParser expressionParser)
   à Invantive.Sql.V1.QueryPlan.ForcePlan(GlobalState owner, ExecutionOptions executionOptions)
   à Invantive.Sql.V1.QueryPlan.Fetch(GlobalState owner, ExecutionOptions executionOptions, ObjectDefinition objectDefinition, String sqlStatement)
   à Invantive.Data.ConnectionManager.HB.T(QueryPlan )
   à System.Linq.Enumerable.WhereSelectArrayIterator`2.MoveNext()
   à System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   à System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   à Invantive.Data.ConnectionManager.ExecuteAndCombineQueryPlansV1(GlobalState owner, ExecutionOptions executionOptions, QueryPlan[] queryPlans, String sqlStatement, ParameterList parameters)
   à Invantive.Data.ConnectionManager.ExecuteProviderPassthroughSqlActionTable(GlobalState owner, ExecutionOptions executionOptions, String actionSql, ParameterList parameters, String callSafeNameOverrule)
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à Invantive.Data.ConnectionManager.ExecuteProviderPassthroughSqlActionTable(GlobalState owner, ExecutionOptions executionOptions, String actionSql, ParameterList parameters, String callSafeNameOverrule)
   à Invantive.Data.ConnectionManager.PassthroughSqlActionTable(GlobalState owner, ExecutionOptions executionOptions, String actionSql, ParameterList parameters, String callSafeNameOverrule)
--- Fin de la trace de la pile à partir de l'emplacement précédent au niveau duquel l'exception a été levée ---
   à System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   à Invantive.Data.ConnectionManager.PassthroughSqlActionTable(GlobalState owner, ExecutionOptions executionOptions, String actionSql, ParameterList parameters, String callSafeNameOverrule)
   à Invantive.Data.ActionProceduresBase.PassthroughSqlActionTable(GlobalState owner, ExecutionOptions executionOptions, String actionSql, ParameterList parameters)
   à Invantive.Producer.Windows.Forms.QueryToolResults.STQ(GlobalState , ExecutionOptions , IProgressNotifier , String , ParameterList , Boolean , Boolean , Boolean , Boolean ) dans C:\Users\gle3.WS212\Documents\ws-master\Invantive.Producer\src\Invantive.Producer.Windows.Forms\QueryTool\QueryToolTraceViewModel.cs:ligne 17
   à Invantive.Producer.Windows.Forms.QueryToolResults.QTQ(GlobalState , ExecutionOptions , String , ParameterList ) dans C:\Users\gle3.WS212\Documents\ws-master\Invantive.Producer\src\Invantive.Producer.Windows.Forms\QueryTool\QueryToolDbmsOutputViewModel.cs:ligne 126

The ArgumentNullException was a regretful problem that was included in a production release.

It has been resolved now from 20.2.68 onward:

itgenclr008 resolved