Error: itgeneor003 Object metadata could not be retrieved for 'customers1' when creating table

60 views Asked by At

When trying to execute the query below with the Exact Online Adapter in the Excel 2016 for Windows on Windows 10. We get the error Object metadata could not be retrieved for 'customers'. with error code itgeneor003.

create or replace table customers@inmemorystorage
as
select act.id ctr_id
,      act.code ctr_code
,      act.name ctr_name
,      prt.code parent_code
,      prt.name parent_name
from   exactonlinerest..Accounts act
left
outer
join   exactonlinerest..accounts prt
on     prt.id = act.parent

We got the stacktrace exception below:

Type: Invantive.Configuration.InvantiveSystemException
bij Invantive.Configuration.ValidationException..ctor(String errorCode, String errorMessage, String kindRequest, String localStackTrace, String nk, Exception innerException)
bij Invantive.Configuration.InvantiveSystemException..ctor(String validationCode, String errorMessage, String kindRequest, String stackTrace, String nk, Exception innerException)
bij Invantive.Data.ExactOnlineProvider.GetObjectMetadataForCall(EntityFieldCollection entityFields, EntityFieldCollection& correctedEntityFields)
bij Invantive.Data.ExactOnlineProvider.InsertReturnAffectedCount(EntityFieldCollection entityFields, ParameterList values, Int32& result)
bij Invantive.Data.ConnectionManager.ExecuteProviderInsertReturnAffectedCount(EntityFieldCollection entityFields, ParameterList values, String& handlingPath)
bij Invantive.Data.ConnectionManager.InsertQueryWithAffectedCount(EntityFieldCollection entityFields, ParameterList values)
bij Invantive.Sql.DdlStatementTree.OnExecute(ParameterList parameters, ExpressionParser expressionParser)
bij Invantive.Sql.QueryTree.Execute(ParameterList parameters, ExpressionParser expressionParser)
bij Invantive.Sql.QueryPlan.ForcePlan()
bij Invantive.Sql.QueryPlan.get_Fields()
bij Invantive.Data.ConnectionManager.ExecuteProviderPassthroughSqlActionTable(String actionSql, ParameterList parameters, String& handlingPath)
bij Invantive.Data.ConnectionManager.PassthroughSqlActionTable(String actionSql, ParameterList parameters)
bij Invantive.Data.ActionProceduresBase.PassthroughSqlActionTable(String actionSql, ParameterList parameters)
bij Invantive.Producer.Windows.Forms.QueryTool.ExecuteStatement(IProgressNotifier notifier, String statement, ParameterList bindVariables, Boolean showResultsInGrid, Boolean showStatistics, Boolean memorizeStatisticsInSqlHistory, Boolean allowPaging)
bij Invantive.Producer.Windows.Forms.QueryTool.FetchResultsFromSql()
bij Invantive.Producer.Windows.Forms.QueryTool.<>c__DisplayClass109_0.<FetchData>b__0()
bij System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bij System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
bij System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
bij System.Threading.ThreadHelper.ThreadStart()
bij Invantive.Data.ExactOnlineProvider.GetObjectMetadataForCall(EntityFieldCollection entityFields, EntityFieldCollection& correctedEntityFields) in File299:regel 1791
bij Invantive.Data.ExactOnlineProvider.InsertReturnAffectedCount(EntityFieldCollection entityFields, ParameterList values, Int32& result) in File299:regel 1054
bij Invantive.Data.ConnectionManager.ExecuteProviderInsertReturnAffectedCount(EntityFieldCollection entityFields, ParameterList values, String& handlingPath) in File39:regel 3413
bij Invantive.Data.ConnectionManager.InsertQueryWithAffectedCount(EntityFieldCollection entityFields, ParameterList values) in File39:regel 1529
bij Invantive.Sql.DdlStatementTree.OnExecute(ParameterList parameters, ExpressionParser expressionParser) in File121:regel 216
bij Invantive.Sql.QueryTree.Execute(ParameterList parameters, ExpressionParser expressionParser) in File141:regel 100
bij Invantive.Sql.QueryPlan.ForcePlan() in File140:regel 77
bij Invantive.Sql.QueryPlan.get_Fields() in File140:regel 65
bij Invantive.Data.ConnectionManager.ExecuteProviderPassthroughSqlActionTable(String actionSql, ParameterList parameters, String& handlingPath) in File39:regel 4021
--- Einde van stacktracering vanaf vorige locatie waar uitzondering is opgetreden ---
bij System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
bij Invantive.Data.ConnectionManager.ExecuteProviderPassthroughSqlActionTable(String actionSql, ParameterList parameters, String& handlingPath) in File39:regel 4053
bij Invantive.Data.ConnectionManager.PassthroughSqlActionTable(String actionSql, ParameterList parameters) in File39:regel 2093
--- Einde van stacktracering vanaf vorige locatie waar uitzondering is opgetreden ---
bij System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
bij Invantive.Data.ConnectionManager.PassthroughSqlActionTable(String actionSql, ParameterList parameters) in File39:regel 2107
bij Invantive.Data.ActionProceduresBase.PassthroughSqlActionTable(String actionSql, ParameterList parameters) in File29:regel 134
bij Invantive.Producer.Windows.Forms.QueryTool.ExecuteStatement(IProgressNotifier notifier, String statement, ParameterList bindVariables, Boolean showResultsInGrid, Boolean showStatistics, Boolean memorizeStatisticsInSqlHistory, Boolean allowPaging) in File949:regel 2825
bij Invantive.Producer.Windows.Forms.QueryTool.FetchResultsFromSql() in File949:regel 2451
1

There are 1 answers

0
Guido Leenders On

The error can be reproduced when the InMemoryStorage provider is not available. Although the message is confusing, it signals that an error occurred during creation of the in memory table.

Please make sure that the InMemoryStorage provider is available and licensed. Some ways to do this:

Look at the list of available objects in the Query Tool of Invantive Control, it should list the InMemoryStorage provider as shown below:

Available objects

Note that the Conversion provider is probably not available on your PC; it is only for complex data conversions between platforms.

Or query the availability using:

select * 
from   exactonlinerest..systemproviders 

The resulting list should display it:

resulting list

When not available please check which product you are using. With Invantive Control it should be available always (see Help -> License -> Components), but for instance with Invantive Query Tool it is not available. Use a product that has it and ensure your license includes it too.