112
Views
2
Comments
Can I enable SYSTEM_VERSIONING on the SQL tables in the database directly 
Question

Hi Team,

I attempted to enable auditing in my SQL database by configuring SQL temporal tables in one of the table in my application. I tested by updating & inserting records into the table and it works fine in SQL server management studio. But when I try to publish the module which has the entity corresponding to the SQL table, I got an error "internal error - unimplemented". Later I turned off the feature on the SQL table and then attempted to publish the module, it worked well.

What is causing this issue ? Are there any restrictions to use the feature of SQL server to audit my backend data in Outsystems ?

Anyone has a solution for this issue? 

Thanks,

KJ

2022-09-20 06-28-12
Nitish Kumar

Hi Karthik,

In one of the project I also face this type of issue and I solve it by removing T_TIME_START and T_TIME_END (SQL server add these columns to the table once we enable versioning for a specific table) columns from the outsystems entity.

2018-11-19 10-10-13
Miguel Tiago Sá

Hi, 

I have the same problem and after I did what you write I can't publish the espace. 

This is the error:

Internal Error

Not implemented.

Exception Details:
[1] Internal Error: Not implemented.
at OutSystems.HubEdition.Compiler.Database.EntitySchema.DbSchemaTableDiff.DropColumn(DbSchemaFieldDef oldFldDef, DBScriptsWriter sqlStatChangeNull)
   at OutSystems.HubEdition.Compiler.Database.EntitySchema.DbSchemaTableDiff.Dump(DBScriptsWriter sqlDropConstraints, DBScriptsWriter sqlDropTriggers, DBScriptsWriter sqlUpdateTables, DBScriptsWriter sqlCreateForeignKeys, DBScriptsWriter sqlUpdateDefaultValues, DBScriptsWriter sqlCreateTriggers, MultiDBScriptsWriter sqlCreateTriggersMetaInfo)
   at OutSystems.HubEdition.Compiler.Database.EntitySchema.EntitySchemaUpdater.DumpEspaceEntities(Boolean forceFullIntrospection)
   at OutSystems.HubEdition.Compiler.Database.EntitySchema.EntitySchemaUpdater.Dump(CompilationContext compilationContext)
   at OutSystems.HubEdition.Compiler.ESpace.DumpUpdateDatabaseScript()
   at OutSystems.HubEdition.Compiler.Compiler.InnerGenerateDatabaseScripts(ESpace eSpace, CompilationContext context)
   at OutSystems.HubEdition.Compiler.Utils.CompilerUtils.TrapExceptionsInContext(Action action, CompilationContext context)
   at OutSystems.HubEdition.Compiler.Compiler.<>c__DisplayClass21_0.<InvokeCompilerAPI>b__1()
   at OutSystems.HubEdition.Compiler.Compiler.<>c__DisplayClass21_0.<InvokeCompilerAPI>b__0()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()


Does anyone know the best way for using the temporal tables in OutSystens platform?

Tks.

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.