EcmaScriptProvider

Overview

The EcmaScriptProvider class provides implementation of the Scripting engine used by the RemObjects DataAbstract Business Rules Scripting.

Usually there is no need to call any of the methods of this class directly.

Location

Implements

 

constructor

Creates a new instance of the EcmaScriptProvider class and initializes global script context.

 

constructor

 

EcmaScriptProvider()

 

Sub New

constructor (String)

Creates a new instance of the EcmaScriptProvider class and initializes global script context.

 

constructor(scriptName: String)

 

EcmaScriptProvider(String scriptName)

 

Sub New (scriptName As String)

Parameters:

  • scriptName: Script name. Used for debug purposes

add_ContextChanged

 

method add_ContextChanged(value: EventHandler<EcmaScriptContextChangedArgs>)

 

void add_ContextChanged(EventHandler<EcmaScriptContextChangedArgs> value)

 

Sub add_ContextChanged(value As EventHandler<EcmaScriptContextChangedArgs>)

Parameters:

  • value:

add_DebugFrameEnter

 

method add_DebugFrameEnter(value: EventHandler<ScriptFrameEnterEventArgs>)

 

void add_DebugFrameEnter(EventHandler<ScriptFrameEnterEventArgs> value)

 

Sub add_DebugFrameEnter(value As EventHandler<ScriptFrameEnterEventArgs>)

Parameters:

  • value:

add_DebugFrameExit

 

method add_DebugFrameExit(value: EventHandler<ScriptFrameExitEventArgs>)

 

void add_DebugFrameExit(EventHandler<ScriptFrameExitEventArgs> value)

 

Sub add_DebugFrameExit(value As EventHandler<ScriptFrameExitEventArgs>)

Parameters:

  • value:

add_DebugLog

 

method add_DebugLog(value: EventHandler<ScriptLogEventArgs>)

 

void add_DebugLog(EventHandler<ScriptLogEventArgs> value)

 

Sub add_DebugLog(value As EventHandler<ScriptLogEventArgs>)

Parameters:

  • value:

add_DebugTracePoint

 

method add_DebugTracePoint(value: EventHandler<ScriptTracePointEventArgs>)

 

void add_DebugTracePoint(EventHandler<ScriptTracePointEventArgs> value)

 

Sub add_DebugTracePoint(value As EventHandler<ScriptTracePointEventArgs>)

Parameters:

  • value:

add_DebugUnhandledException

 

method add_DebugUnhandledException(value: EventHandler<ScriptUnhandledExceptionEventArgs>)

 

void add_DebugUnhandledException(EventHandler<ScriptUnhandledExceptionEventArgs> value)

 

Sub add_DebugUnhandledException(value As EventHandler<ScriptUnhandledExceptionEventArgs>)

Parameters:

  • value:

add_Log

 

method add_Log(value: EventHandler<EcmaScriptLogArgs>)

 

void add_Log(EventHandler<EcmaScriptLogArgs> value)

 

Sub add_Log(value As EventHandler<EcmaScriptLogArgs>)

Parameters:

  • value:

add_ScriptError

 

method add_ScriptError(value: EventHandler<ScriptErrorEventArgs>)

 

void add_ScriptError(EventHandler<ScriptErrorEventArgs> value)

 

Sub add_ScriptError(value As EventHandler<ScriptErrorEventArgs>)

Parameters:

  • value:

AfterCommit

This method is called after a transaction (set of insert/update/delete operations) has been committed.

 

method AfterCommit

 

void AfterCommit()

 

Sub AfterCommit

AfterExecuteCommand

This method is called after an sql command is executed.

 

method AfterExecuteCommand(sql: String; commandName: String; parameters: array of DataParameter; rowsAffected: Int32)

 

void AfterExecuteCommand(String sql, String commandName, DataParameter[] parameters, Int32 rowsAffected)

 

Sub AfterExecuteCommand(sql As String, commandName As String, parameters As array of DataParameter, rowsAffected As Int32)

Parameters:

  • sql: Executed command SQL statement
  • commandName: Executed command name
  • parameters: Set of command parameters
  • rowsAffected: Number of rows affected by the command execution

AfterExecuteCommandImpl.ScriptFunctionCall

 

method AfterExecuteCommandImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; sql: String; commandName: String; parameters: array of DataParameter; rowsAffected: Int32)

 

void AfterExecuteCommandImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, String sql, String commandName, DataParameter[] parameters, Int32 rowsAffected)

 

Sub AfterExecuteCommandImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, sql As String, commandName As String, parameters As array of DataParameter, rowsAffected As Int32)

Parameters:

  • engine:
  • eventName:
  • sql:
  • commandName:
  • parameters:
  • rowsAffected:

AfterGetData

This method is called after data is retireved from database.

 

method AfterGetData(tables: array of String; requestInfo: array of TableRequestInfo)

 

void AfterGetData(String[] tables, TableRequestInfo[] requestInfo)

 

Sub AfterGetData(tables As array of String, requestInfo As array of TableRequestInfo)

Parameters:

  • tables: Table names
  • requestInfo: Corresponding TableRequestInfo instances. These instances contain additional request parameters

AfterLogin

This method is called after the user has logged in.

Relativity Server only.

 

method AfterLogin

 

void AfterLogin()

 

Sub AfterLogin

AfterProcessDelta

This method is called on database updates, after processing of each Delta instance

 

method AfterProcessDelta(delta: Delta)

 

void AfterProcessDelta(Delta delta)

 

Sub AfterProcessDelta(delta As Delta)

Parameters:

  • delta: Processed Delta instance

AfterProcessDeltaChange

This method is called on database updates, after processing of each DeltaChange instance.

 

method AfterProcessDeltaChange(delta: Delta; change: DeltaChange; refreshed: Boolean)

 

void AfterProcessDeltaChange(Delta delta, DeltaChange change, Boolean refreshed)

 

Sub AfterProcessDeltaChange(delta As Delta, change As DeltaChange, refreshed As Boolean)

Parameters:

  • delta: Processed Delta instance
  • change: Processed DeltaChange instance
  • refreshed: A flag indicating wheter the data was re-read from the database server after update. This operation is required to obtain values of server-calculated fields

AfterProcessDeltaChangeImpl.ScriptFunctionCall

 

method AfterProcessDeltaChangeImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; delta: Delta; change: DeltaChange; wasRefreshed: Boolean)

 

void AfterProcessDeltaChangeImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, Delta delta, DeltaChange change, Boolean wasRefreshed)

 

Sub AfterProcessDeltaChangeImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, delta As Delta, change As DeltaChange, wasRefreshed As Boolean)

Parameters:

  • engine:
  • eventName:
  • delta:
  • change:
  • wasRefreshed:

AfterRollback

This method if called after a transactions is rolled back (canceled).

 

method AfterRollback

 

void AfterRollback()

 

Sub AfterRollback

BeforeCommit

This method is called before a transaction is committed.

 

method BeforeCommit

 

void BeforeCommit()

 

Sub BeforeCommit

BeforeDelete

This method is called when a data row is going to be deleted.

 

method BeforeDelete(row: IRowHelper)

 

void BeforeDelete(IRowHelper row)

 

Sub BeforeDelete(row As IRowHelper)

Parameters:

  • row: Data row being deleted

BeforeExecuteCommand

This method is called before an sql command is executed.

 

method BeforeExecuteCommand(sql: String; commandName: String; parameters: array of DataParameter)

 

void BeforeExecuteCommand(String sql, String commandName, DataParameter[] parameters)

 

Sub BeforeExecuteCommand(sql As String, commandName As String, parameters As array of DataParameter)

Parameters:

  • sql: Command SQL statement
  • commandName: Command name
  • parameters: Set of command parameters

BeforeExecuteCommandImpl.ScriptFunctionCall

 

method BeforeExecuteCommandImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; sql: String; commandName: String; parameters: array of DataParameter)

 

void BeforeExecuteCommandImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, String sql, String commandName, DataParameter[] parameters)

 

Sub BeforeExecuteCommandImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, sql As String, commandName As String, parameters As array of DataParameter)

Parameters:

  • engine:
  • eventName:
  • sql:
  • commandName:
  • parameters:

BeforeGetData

This method is called before data is retireved from database.

 

method BeforeGetData(tables: array of String; requestInfo: array of TableRequestInfo)

 

void BeforeGetData(String[] tables, TableRequestInfo[] requestInfo)

 

Sub BeforeGetData(tables As array of String, requestInfo As array of TableRequestInfo)

Parameters:

  • tables: Table names
  • requestInfo: Corresponding TableRequestInfo instances. These instances contain additional request parameters

BeforeLogout

This method is called before the user has logged out.

Relativity Server only.

 

method BeforeLogout

 

void BeforeLogout()

 

Sub BeforeLogout

BeforePost

This method is called when a data row is going to be updated.

 

method BeforePost(row: IRowHelper)

 

void BeforePost(IRowHelper row)

 

Sub BeforePost(row As IRowHelper)

Parameters:

  • row: Data row being updated

BeforeProcessDelta

This method is called on database updates, before processing of each Delta instance.

 

method BeforeProcessDelta(delta: Delta)

 

void BeforeProcessDelta(Delta delta)

 

Sub BeforeProcessDelta(delta As Delta)

Parameters:

  • delta: Delta instance to process

BeforeProcessDeltaChange

This method is called on database updates, before processing of each DeltaChange instance.

 

method BeforeProcessDeltaChange(delta: Delta; change: DeltaChange; refreshed: Boolean; var canRemove: Boolean)

 

void BeforeProcessDeltaChange(Delta delta, DeltaChange change, Boolean refreshed, ref Boolean canRemove)

 

Sub BeforeProcessDeltaChange(delta As Delta, change As DeltaChange, refreshed As Boolean, ByRef canRemove As Boolean)

Parameters:

  • delta: Delta instance to process
  • change: DeltaChange instance to process
  • refreshed: Reserved
  • canRemove: Flag indicating wheter the current deltachange can be removed from its parent Delta after is is successfully processed

BeforeProcessDeltaChangeImpl.ScriptFunctionCall

 

method BeforeProcessDeltaChangeImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; delta: Delta; change: DeltaChange; wasRefreshed: Boolean; canRemove: Boolean): Boolean

 

Boolean BeforeProcessDeltaChangeImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, Delta delta, DeltaChange change, Boolean wasRefreshed, Boolean canRemove)

 

Function BeforeProcessDeltaChangeImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, delta As Delta, change As DeltaChange, wasRefreshed As Boolean, canRemove As Boolean) As Boolean

Parameters:

  • engine:
  • eventName:
  • delta:
  • change:
  • wasRefreshed:
  • canRemove:

BeforeRollback

This method is called before a transaction is rolled back (canceled).

 

method BeforeRollback

 

void BeforeRollback()

 

Sub BeforeRollback

Clear

Clears all internal caches of the script provide and resets its state.

 

method Clear

 

void Clear()

 

Sub Clear

ClearScriptCache

Clears the script cache.

For performance reasons Script Provider caches precompiled scripts for Schema entities. Is the server Schema is changed then this cache should be cleared to avoind possible inconsistencies.

 

method ClearScriptCache

 

void ClearScriptCache()

 

Sub ClearScriptCache

Context

Gets or sets the current script provider context.

 

property Context: IScriptContext read write;

 

IScriptContext Context { get; set; }

 

Property Context As IScriptContext

ContextChanged

Fires when Context property is changing.

 

event ContextChanged: EventHandler<EcmaScriptContextChangedArgs>;

 

delegate EventHandler<EcmaScriptContextChangedArgs> ContextChanged()

 

Event ContextChanged As EventHandler<EcmaScriptContextChangedArgs>

Continue

Continues script execution after it has been paused.

 

method Continue

 

void Continue()

 

Sub Continue

CreateScriptException  protected

Creates a new instance of the RemObjects.DataAbstract.Server.ScriptException exception and extracts all needed information form the original script exception and from the current script context, f.e. current line/row, event that the failed script belongs to etc.

 

method CreateScriptException(eventName: String; originalException: Exception): ScriptException

 

ScriptException CreateScriptException(String eventName, Exception originalException)

 

Function CreateScriptException(eventName As String, originalException As Exception) As ScriptException

Parameters:

  • eventName: Event that has been handled by the failed script
  • originalException: Original script exception

CreateScriptException.GetScriptException

 

method CreateScriptException.GetScriptException(eventName: String; originalException: Exception): ScriptException

 

ScriptException CreateScriptException.GetScriptException(String eventName, Exception originalException)

 

Function CreateScriptException.GetScriptException(eventName As String, originalException As Exception) As ScriptException

Parameters:

  • eventName:
  • originalException:

CreateTransaction

This method is called when a new transaction is created to fetch or update records.

 

method CreateTransaction

 

void CreateTransaction()

 

Sub CreateTransaction

Debug

Gets or seta a flag indicating whether script is executed in Debug mode.

The default value is true

 

property Debug: Boolean read write;

 

Boolean Debug { get; set; }

 

Property Debug As Boolean

DebugFrameEnter

This event is raised when new script scope (for example script method) is entered.

 

event DebugFrameEnter: EventHandler<ScriptFrameEnterEventArgs>;

 

delegate EventHandler<ScriptFrameEnterEventArgs> DebugFrameEnter()

 

Event DebugFrameEnter As EventHandler<ScriptFrameEnterEventArgs>

DebugFrameExit

This event is raised when current script scope (for example script method) is exited.

 

event DebugFrameExit: EventHandler<ScriptFrameExitEventArgs>;

 

delegate EventHandler<ScriptFrameExitEventArgs> DebugFrameExit()

 

Event DebugFrameExit As EventHandler<ScriptFrameExitEventArgs>

DebugLog

This event is raised when the script method log is executed.

 

event DebugLog: EventHandler<ScriptLogEventArgs>;

 

delegate EventHandler<ScriptLogEventArgs> DebugLog()

 

Event DebugLog As EventHandler<ScriptLogEventArgs>

DebugMode

Gets or sets the current debugger mode. Available debug modes are

{| class="dashed-table" style="width: 100%" ! style="width: 30% " |

Debug Mode
! style="width: 70% " |
Description
|- | None | No debug info is provided. This is the recommended mode for production servers due to its performance. |- | Continuous | Full debug info is generated. Script execution performance is degraded significantly. Script execution pauses only on the stop keyword or when an unhandled exception occurrs. |- | Step By Step | Script execution pauses after each script line execution. |- |}

 

property DebugMode: ScriptDebugMode read write;

 

ScriptDebugMode DebugMode { get; set; }

 

Property DebugMode As ScriptDebugMode

DebugTracePoint

This event is raised on every script line execution.

 

event DebugTracePoint: EventHandler<ScriptTracePointEventArgs>;

 

delegate EventHandler<ScriptTracePointEventArgs> DebugTracePoint()

 

Event DebugTracePoint As EventHandler<ScriptTracePointEventArgs>

DebugUnhandledException

This event is raised when an unhandled exception occurs during the script execution.

 

event DebugUnhandledException: EventHandler<ScriptUnhandledExceptionEventArgs>;

 

delegate EventHandler<ScriptUnhandledExceptionEventArgs> DebugUnhandledException()

 

Event DebugUnhandledException As EventHandler<ScriptUnhandledExceptionEventArgs>

DoLogin

Reserved.

 

method DoLogin(parameters: IDictionary): Boolean

 

Boolean DoLogin(IDictionary parameters)

 

Function DoLogin(parameters As IDictionary) As Boolean

Parameters:

  • parameters: Reserved

DoLogout

Reserved.

 

method DoLogout

 

void DoLogout()

 

Sub DoLogout

Fail  protected

Raises the ScriptFailException exception with message constructed using provided exception parameters.

 

method Fail(params args: array of Object): Object

 

Object Fail(params Object[] args)

 

Function Fail(ParamArray args As array of Object) As Object

Parameters:

  • args: Exception information

GetCommandScript  protected

Initialized the script events handler for the Schema command commandName and precompiles the Schema scripts.

Method result is internally cached.

 

method GetCommandScript(commandName: String): EcmaScriptComponent

 

EcmaScriptComponent GetCommandScript(String commandName)

 

Function GetCommandScript(commandName As String) As EcmaScriptComponent

Parameters:

  • commandName: Schema command name

GetCurrentDebuggerState  protected

Returns the current debugger state information, including current line/row, script engine state etc.

 

method GetCurrentDebuggerState: IScriptDebuggerState

 

IScriptDebuggerState GetCurrentDebuggerState()

 

Function GetCurrentDebuggerState As IScriptDebuggerState

GetCurrentDebuggerState.ConvertScriptVariable

 

method GetCurrentDebuggerState.ConvertScriptVariable(name: String; value: Object): IScriptDebuggerVariable

 

IScriptDebuggerVariable GetCurrentDebuggerState.ConvertScriptVariable(String name, Object value)

 

Function GetCurrentDebuggerState.ConvertScriptVariable(name As String, value As Object) As IScriptDebuggerVariable

Parameters:

  • name:
  • value:

GetDataImpl.ScriptFunctionCall

 

method GetDataImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; tables: array of String; requestInfo: array of TableRequestInfo)

 

void GetDataImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, String[] tables, TableRequestInfo[] requestInfo)

 

Sub GetDataImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, tables As array of String, requestInfo As array of TableRequestInfo)

Parameters:

  • engine:
  • eventName:
  • tables:
  • requestInfo:

GetTableClientScript  protected

Initialized the client-side script events handler for the Schema table tableName and precompiles the Schema scripts.

Method result is internally cached.

 

method GetTableClientScript(tableName: String): EcmaScriptComponent

 

EcmaScriptComponent GetTableClientScript(String tableName)

 

Function GetTableClientScript(tableName As String) As EcmaScriptComponent

Parameters:

  • tableName: Schema table name

GetTableServerScript  protected

Initialized the server-side script events handler for the Schema table tableName and precompiles the Schema scripts.

Method result is internally cached.

 

method GetTableServerScript(tableName: String): EcmaScriptComponent

 

EcmaScriptComponent GetTableServerScript(String tableName)

 

Function GetTableServerScript(tableName As String) As EcmaScriptComponent

Parameters:

  • tableName: Schema table name

HasAfterCommit

Returns true if the AfterCommit script function is defined.

 

property HasAfterCommit: Boolean read;

 

Boolean HasAfterCommit { get; }

 

Property ReadOnly HasAfterCommit As Boolean

HasAfterExecuteCommand

Returns true if the AfterExecuteCommand script function is defined.

 

property HasAfterExecuteCommand: Boolean read;

 

Boolean HasAfterExecuteCommand { get; }

 

Property ReadOnly HasAfterExecuteCommand As Boolean

HasAfterGetData

Returns true if the AfterGetData script function is defined.

 

property HasAfterGetData: Boolean read;

 

Boolean HasAfterGetData { get; }

 

Property ReadOnly HasAfterGetData As Boolean

HasAfterLogin

Returns true if the AfterLogin script function is defined.

 

property HasAfterLogin: Boolean read;

 

Boolean HasAfterLogin { get; }

 

Property ReadOnly HasAfterLogin As Boolean

HasAfterProcessDelta

Returns true if the AfterProcessDelta script function is defined.

 

property HasAfterProcessDelta: Boolean read;

 

Boolean HasAfterProcessDelta { get; }

 

Property ReadOnly HasAfterProcessDelta As Boolean

HasAfterProcessDeltaChange

Returns true if the AfterProcessDeltaChange script function is defined.

 

property HasAfterProcessDeltaChange: Boolean read;

 

Boolean HasAfterProcessDeltaChange { get; }

 

Property ReadOnly HasAfterProcessDeltaChange As Boolean

HasAfterRollback

Returns true if the AfterRollback script function is defined.

 

property HasAfterRollback: Boolean read;

 

Boolean HasAfterRollback { get; }

 

Property ReadOnly HasAfterRollback As Boolean

HasBeforeCommit

Returns true if the BeforeCommit script function is defined.

 

property HasBeforeCommit: Boolean read;

 

Boolean HasBeforeCommit { get; }

 

Property ReadOnly HasBeforeCommit As Boolean

HasBeforeDelete

Returns true if the BeforeDelete script function is defined for the Schema table tableName.

 

property HasBeforeDelete[table: String]: Boolean read;

 

Boolean HasBeforeDelete[String table] { get; }

 

Property ReadOnly HasBeforeDelete(table As String) As Boolean

HasBeforeExecuteCommand

Returns true if the BeforeExecuteCommand script function is defined.

 

property HasBeforeExecuteCommand: Boolean read;

 

Boolean HasBeforeExecuteCommand { get; }

 

Property ReadOnly HasBeforeExecuteCommand As Boolean

HasBeforeGetData

Returns true if the BeforeGetData script function is defined.

 

property HasBeforeGetData: Boolean read;

 

Boolean HasBeforeGetData { get; }

 

Property ReadOnly HasBeforeGetData As Boolean

HasBeforeLogout

Returns true if the BeforeLogout script function is defined.

 

property HasBeforeLogout: Boolean read;

 

Boolean HasBeforeLogout { get; }

 

Property ReadOnly HasBeforeLogout As Boolean

HasBeforePost

Returns true if the BeforePost script function is defined for the Schema table tableName.

 

property HasBeforePost[table: String]: Boolean read;

 

Boolean HasBeforePost[String table] { get; }

 

Property ReadOnly HasBeforePost(table As String) As Boolean

HasBeforeProcessDelta

Returns true if the BeforeProcessDelta script function is defined.

 

property HasBeforeProcessDelta: Boolean read;

 

Boolean HasBeforeProcessDelta { get; }

 

Property ReadOnly HasBeforeProcessDelta As Boolean

HasBeforeProcessDeltaChange

Returns true if the BeforeProcessDeltaChange script function is defined.

 

property HasBeforeProcessDeltaChange: Boolean read;

 

Boolean HasBeforeProcessDeltaChange { get; }

 

Property ReadOnly HasBeforeProcessDeltaChange As Boolean

HasBeforeRollback

Returns true if the BeforeRollback script function is defined.

 

property HasBeforeRollback: Boolean read;

 

Boolean HasBeforeRollback { get; }

 

Property ReadOnly HasBeforeRollback As Boolean

HasCreateTransaction

Returns true if the CreateTransaction script function is defined.

 

property HasCreateTransaction: Boolean read;

 

Boolean HasCreateTransaction { get; }

 

Property ReadOnly HasCreateTransaction As Boolean

HasDoLogin

Reserved

 

property HasDoLogin: Boolean read;

 

Boolean HasDoLogin { get; }

 

Property ReadOnly HasDoLogin As Boolean

HasDoLogout

Reserved

 

property HasDoLogout: Boolean read;

 

Boolean HasDoLogout { get; }

 

Property ReadOnly HasDoLogout As Boolean

HasOnNewRow

Returns true if the OnNewRow script function is defined for the Schema table tableName.

 

property HasOnNewRow[table: String]: Boolean read;

 

Boolean HasOnNewRow[String table] { get; }

 

Property ReadOnly HasOnNewRow(table As String) As Boolean

HasProcessError

Returns true if the ProcessError script function is defined.

 

property HasProcessError: Boolean read;

 

Boolean HasProcessError { get; }

 

Property ReadOnly HasProcessError As Boolean

HasUnknownSqlMacroIdentifier

Returns true if the onUnknownSqlMacroIdentifier script function is defined.

 

property HasUnknownSqlMacroIdentifier: Boolean read;

 

Boolean HasUnknownSqlMacroIdentifier { get; }

 

Property ReadOnly HasUnknownSqlMacroIdentifier As Boolean

HasValidateCommandAccess

Returns true if the ValidateCommandAccess script function is defined.

 

property HasValidateCommandAccess: Boolean read;

 

Boolean HasValidateCommandAccess { get; }

 

Property ReadOnly HasValidateCommandAccess As Boolean

HasValidateDataTableAccess

Returns true.

 

property HasValidateDataTableAccess: Boolean read;

 

Boolean HasValidateDataTableAccess { get; }

 

Property ReadOnly HasValidateDataTableAccess As Boolean

HasValidateDirectSQLAccess

Returns true.

 

property HasValidateDirectSQLAccess: Boolean read;

 

Boolean HasValidateDirectSQLAccess { get; }

 

Property ReadOnly HasValidateDirectSQLAccess As Boolean

InvokeGlobalScriptFunction  protected

Executes the requested script function. It is assumed that the requested script function doesn't require any arguments.

Script function is always executed in the root Schema context.

 

method InvokeGlobalScriptFunction(name: String)

 

void InvokeGlobalScriptFunction(String name)

 

Sub InvokeGlobalScriptFunction(name As String)

Parameters:

  • name: Script method name

InvokeScript  protected

Executes the provided delegate. It is assumed that this delegate in turns executes a script method.

This method handles script exceptions and limits the script calls nesting.

 

method InvokeScript(implementation: ParamsDelegate; params arguments: array of Object): Object

 

Object InvokeScript(ParamsDelegate implementation, params Object[] arguments)

 

Function InvokeScript(implementation As ParamsDelegate, ParamArray arguments As array of Object) As Object

Parameters:

  • implementation: Delegate that should execute the script method
  • arguments: Script method arguments

InvokeScriptFunction  protected

Executes script function with provided parameters.

The purpose of this ,ethod is to properly set the Script Debugger context if needed.

 

method InvokeScriptFunction(engine: EcmaScriptComponent; name: String; params arguments: array of Object): Object

 

Object InvokeScriptFunction(EcmaScriptComponent engine, String name, params Object[] arguments)

 

Function InvokeScriptFunction(engine As EcmaScriptComponent, name As String, ParamArray arguments As array of Object) As Object

Parameters:

  • engine: Script engine containing precompiled script
  • name: Script function name
  • arguments: Script function parameters

IsDebuggerAttached  protected

Gets a flag indicating whether a debugger is attached to the current script engine instance.

 

property IsDebuggerAttached: Boolean read;

 

Boolean IsDebuggerAttached { get; }

 

Property ReadOnly IsDebuggerAttached As Boolean

IsGlobalVariableDefined  protected

Returnas true if the global script context contains the requested variable.

 

method IsGlobalVariableDefined(name: String): Boolean

 

Boolean IsGlobalVariableDefined(String name)

 

Function IsGlobalVariableDefined(name As String) As Boolean

Parameters:

  • name: Global variable name

IsNestedEvent  protected

Gets true if the currently executing script has nesting level bigger than 1.

 

property IsNestedEvent: Boolean read;

 

Boolean IsNestedEvent { get; }

 

Property ReadOnly IsNestedEvent As Boolean

IsTableFunctionDefined  protected

Returns true if the Schema table script has definition for the requested script function.

 

method IsTableFunctionDefined(table: String; function: String): Boolean

 

Boolean IsTableFunctionDefined(String table, String function)

 

Function IsTableFunctionDefined(table As String, function As String) As Boolean

Parameters:

  • table: Schema table name
  • function: Script function name

LoadScript (EcmaScriptComponent, String)  protected

Loads and precompiles provided script source.

 

method LoadScript(engine: EcmaScriptComponent; script: String)

 

void LoadScript(EcmaScriptComponent engine, String script)

 

Sub LoadScript(engine As EcmaScriptComponent, script As String)

Parameters:

  • engine:
  • script: Script source code

LoadScript (String)

 

method LoadScript(script: String)

 

void LoadScript(String script)

 

Sub LoadScript(script As String)

Parameters:

  • script:

Log

Fires when script execute function LogMessage to log specified information.

 

event Log: EventHandler<EcmaScriptLogArgs>;

 

delegate EventHandler<EcmaScriptLogArgs> Log()

 

Event Log As EventHandler<EcmaScriptLogArgs>

LogMessage  protected

Logs specified information.

 

method LogMessage(params args: array of Object): Object

 

Object LogMessage(params Object[] args)

 

Function LogMessage(ParamArray args As array of Object) As Object

Parameters:

  • args: Specified collection with information need to log.

NewGuid  protected

Creates and returns new Guid value.

 

method NewGuid(params args: array of Object): Object

 

Object NewGuid(params Object[] args)

 

Function NewGuid(ParamArray args As array of Object) As Object

Parameters:

  • args: are not used.

NewGuidString  protected

Creates and returns new Guid value as string.

 

method NewGuidString(params args: array of Object): Object

 

Object NewGuidString(params Object[] args)

 

Function NewGuidString(ParamArray args As array of Object) As Object

Parameters:

  • args: are not used.

OnContextChanged  protected

Raises the ContextChanged event.

 

method OnContextChanged(e: EcmaScriptContextChangedArgs)

 

void OnContextChanged(EcmaScriptContextChangedArgs e)

 

Sub OnContextChanged(e As EcmaScriptContextChangedArgs)

Parameters:

  • e: Event arguments

OnDebugDebugger  protected

Internal method used to initialize the sub-script execution in the step-by-step mode.

 

method OnDebugDebugger

 

void OnDebugDebugger()

 

Sub OnDebugDebugger

OnDebugFrameEnter  protected

Raises the DebugFrameEnter event.

 

method OnDebugFrameEnter(e: ScriptFrameEnterEventArgs)

 

void OnDebugFrameEnter(ScriptFrameEnterEventArgs e)

 

Sub OnDebugFrameEnter(e As ScriptFrameEnterEventArgs)

Parameters:

  • e: Event arguments

OnDebugFrameExit  protected

Raises the DebugFrameExit event.

 

method OnDebugFrameExit(e: ScriptFrameExitEventArgs)

 

void OnDebugFrameExit(ScriptFrameExitEventArgs e)

 

Sub OnDebugFrameExit(e As ScriptFrameExitEventArgs)

Parameters:

  • e: Event arguments

OnDebugLog  protected

Raises the DebugLog event.

 

method OnDebugLog(e: ScriptLogEventArgs)

 

void OnDebugLog(ScriptLogEventArgs e)

 

Sub OnDebugLog(e As ScriptLogEventArgs)

Parameters:

  • e: Event arguments

OnDebugTracePoint  protected

Raises the DebugTracePoint event.

 

method OnDebugTracePoint(e: ScriptTracePointEventArgs)

 

void OnDebugTracePoint(ScriptTracePointEventArgs e)

 

Sub OnDebugTracePoint(e As ScriptTracePointEventArgs)

Parameters:

  • e: Event arguments

OnDebugUnhandledException  protected

Raises the DebugUnhandledException event.

 

method OnDebugUnhandledException(e: ScriptUnhandledExceptionEventArgs)

 

void OnDebugUnhandledException(ScriptUnhandledExceptionEventArgs e)

 

Sub OnDebugUnhandledException(e As ScriptUnhandledExceptionEventArgs)

Parameters:

  • e: Event arguments

OnLog  protected

Raises the Log event.

 

method OnLog(e: EcmaScriptLogArgs)

 

void OnLog(EcmaScriptLogArgs e)

 

Sub OnLog(e As EcmaScriptLogArgs)

Parameters:

  • e: Event arguments

OnNewRow

Called when creating new rows. Can be used to pre-initialize new records data.

 

method OnNewRow(row: IRowHelper)

 

void OnNewRow(IRowHelper row)

 

Sub OnNewRow(row As IRowHelper)

Parameters:

  • row: New data row

OnScriptError  protected

Raises the ScriptError event.

 

method OnScriptError(e: ScriptErrorEventArgs)

 

void OnScriptError(ScriptErrorEventArgs e)

 

Sub OnScriptError(e As ScriptErrorEventArgs)

Parameters:

  • e: Event arguments

ProcessDeltaImpl.ScriptFunctionCall

 

method ProcessDeltaImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; delta: Delta)

 

void ProcessDeltaImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, Delta delta)

 

Sub ProcessDeltaImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, delta As Delta)

Parameters:

  • engine:
  • eventName:
  • delta:

ProcessError

This method is called when an error occurs during applying data changes to the database.

This method should return either the current value of the canContinue argument or false to break the Delta processing and roll back the transaction.

 

method ProcessError(delta: Delta; change: DeltaChange; var canContinue: Boolean; var error: Exception)

 

void ProcessError(Delta delta, DeltaChange change, ref Boolean canContinue, ref Exception error)

 

Sub ProcessError(delta As Delta, change As DeltaChange, ByRef canContinue As Boolean, ByRef error As Exception)

Parameters:

  • delta: Delta instance containing failed data change
  • change: DeltaChange instance that cannot be applied to the database
  • canContinue: Flag indicating wthether Data Abstract should process other Class instances instead of rolling back the transaction immediately
  • error: Exception raised by the data change attempt

ProcessErrorImpl.ScriptFunctionCall

 

method ProcessErrorImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; delta: Delta; change: DeltaChange; canContinue: Boolean; ex: Exception): Boolean

 

Boolean ProcessErrorImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, Delta delta, DeltaChange change, Boolean canContinue, Exception ex)

 

Function ProcessErrorImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, delta As Delta, change As DeltaChange, canContinue As Boolean, ex As Exception) As Boolean

Parameters:

  • engine:
  • eventName:
  • delta:
  • change:
  • canContinue:
  • ex:

remove_ContextChanged

 

method remove_ContextChanged(value: EventHandler<EcmaScriptContextChangedArgs>)

 

void remove_ContextChanged(EventHandler<EcmaScriptContextChangedArgs> value)

 

Sub remove_ContextChanged(value As EventHandler<EcmaScriptContextChangedArgs>)

Parameters:

  • value:

remove_DebugFrameEnter

 

method remove_DebugFrameEnter(value: EventHandler<ScriptFrameEnterEventArgs>)

 

void remove_DebugFrameEnter(EventHandler<ScriptFrameEnterEventArgs> value)

 

Sub remove_DebugFrameEnter(value As EventHandler<ScriptFrameEnterEventArgs>)

Parameters:

  • value:

remove_DebugFrameExit

 

method remove_DebugFrameExit(value: EventHandler<ScriptFrameExitEventArgs>)

 

void remove_DebugFrameExit(EventHandler<ScriptFrameExitEventArgs> value)

 

Sub remove_DebugFrameExit(value As EventHandler<ScriptFrameExitEventArgs>)

Parameters:

  • value:

remove_DebugLog

 

method remove_DebugLog(value: EventHandler<ScriptLogEventArgs>)

 

void remove_DebugLog(EventHandler<ScriptLogEventArgs> value)

 

Sub remove_DebugLog(value As EventHandler<ScriptLogEventArgs>)

Parameters:

  • value:

remove_DebugTracePoint

 

method remove_DebugTracePoint(value: EventHandler<ScriptTracePointEventArgs>)

 

void remove_DebugTracePoint(EventHandler<ScriptTracePointEventArgs> value)

 

Sub remove_DebugTracePoint(value As EventHandler<ScriptTracePointEventArgs>)

Parameters:

  • value:

remove_DebugUnhandledException

 

method remove_DebugUnhandledException(value: EventHandler<ScriptUnhandledExceptionEventArgs>)

 

void remove_DebugUnhandledException(EventHandler<ScriptUnhandledExceptionEventArgs> value)

 

Sub remove_DebugUnhandledException(value As EventHandler<ScriptUnhandledExceptionEventArgs>)

Parameters:

  • value:

remove_Log

 

method remove_Log(value: EventHandler<EcmaScriptLogArgs>)

 

void remove_Log(EventHandler<EcmaScriptLogArgs> value)

 

Sub remove_Log(value As EventHandler<EcmaScriptLogArgs>)

Parameters:

  • value:

remove_ScriptError

 

method remove_ScriptError(value: EventHandler<ScriptErrorEventArgs>)

 

void remove_ScriptError(EventHandler<ScriptErrorEventArgs> value)

 

Sub remove_ScriptError(value As EventHandler<ScriptErrorEventArgs>)

Parameters:

  • value:

RemoveGlobalVariable  protected

Removes variable from the global script context.

 

method RemoveGlobalVariable(name: String)

 

void RemoveGlobalVariable(String name)

 

Sub RemoveGlobalVariable(name As String)

Parameters:

  • name: Global variable name

ScriptError

The ScriptError event is raised when a script execution is broken dur e to an unhandler error.

 

event ScriptError: EventHandler<ScriptErrorEventArgs>;

 

delegate EventHandler<ScriptErrorEventArgs> ScriptError()

 

Event ScriptError As EventHandler<ScriptErrorEventArgs>

ScriptName

Gets or sets current script name.

Script name is used by the Script Debugger to identify the script source.

 

property ScriptName: String read write;

 

String ScriptName { get; set; }

 

Property ScriptName As String

StepInto

Steps into a method.

 

method StepInto

 

void StepInto()

 

Sub StepInto

StepOut

Steps out from the current script method. Script execution will be paused again after workflow exit from the current script.

 

method StepOut

 

void StepOut()

 

Sub StepOut

StepOver

Steps over the current script line.

 

method StepOver

 

void StepOver()

 

Sub StepOver

Stop

Breaks script execution.

 

method Stop

 

void Stop()

 

Sub Stop

SupportsLanguage

Returns true if provided language is supported by the current Script Provider.

Returns true if languageName equals one of js, javascript, jscript, ecmascript, rsljavascript.

 

method SupportsLanguage(languageName: String): Boolean

 

Boolean SupportsLanguage(String languageName)

 

Function SupportsLanguage(languageName As String) As Boolean

Parameters:

  • languageName: Script language name

UnknownSqlMacroIdentifier

This method is called when an unknown macro is found in the SQL statement processed by Data Abstract.

 

method UnknownSqlMacroIdentifier(identifier: String; var value: String)

 

void UnknownSqlMacroIdentifier(String identifier, ref String value)

 

Sub UnknownSqlMacroIdentifier(identifier As String, ByRef value As String)

Parameters:

  • identifier: Macro identifier
  • value: Macro value

UpdateOrDeleteRowImpl.ScriptFunctionCall

 

method UpdateOrDeleteRowImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; row: IRowHelper)

 

void UpdateOrDeleteRowImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, IRowHelper row)

 

Sub UpdateOrDeleteRowImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, row As IRowHelper)

Parameters:

  • engine:
  • eventName:
  • row:

ValidateCommandAccess

This method is called before a SQL command is executed.

Returns true if command execution is allowed.

 

method ValidateCommandAccess(commandName: String; parameterNames: array of String; parameterValues: array of Object; var isAllowed: Boolean)

 

void ValidateCommandAccess(String commandName, String[] parameterNames, Object[] parameterValues, ref Boolean isAllowed)

 

Sub ValidateCommandAccess(commandName As String, parameterNames As array of String, parameterValues As array of Object, ByRef isAllowed As Boolean)

Parameters:

  • commandName: Command name
  • parameterNames: Command parameter names
  • parameterValues: Command parameter values
  • isAllowed: Flag indicating whether command execution is allowed

ValidateCommandAccessImpl.ScriptFunctionCall

 

method ValidateCommandAccessImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; commandName: String; parameterNames: array of String; parameterValues: array of Object; isAllowed: Boolean): Boolean

 

Boolean ValidateCommandAccessImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, String commandName, String[] parameterNames, Object[] parameterValues, Boolean isAllowed)

 

Function ValidateCommandAccessImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, commandName As String, parameterNames As array of String, parameterValues As array of Object, isAllowed As Boolean) As Boolean

Parameters:

  • engine:
  • eventName:
  • commandName:
  • parameterNames:
  • parameterValues:
  • isAllowed:

ValidateDataTableAccess

This method is called when data request is validated.

Returns true if access to the data table is allowed.

 

method ValidateDataTableAccess(tableName: String; parameterNames: array of String; parameterValues: array of Object; var isAllowed: Boolean)

 

void ValidateDataTableAccess(String tableName, String[] parameterNames, Object[] parameterValues, ref Boolean isAllowed)

 

Sub ValidateDataTableAccess(tableName As String, parameterNames As array of String, parameterValues As array of Object, ByRef isAllowed As Boolean)

Parameters:

  • tableName: Table name
  • parameterNames: Command parameter names
  • parameterValues: Command parameter values
  • isAllowed: Flag indicating whether data access is allowed

ValidateDataTableAccessImpl.ScriptFunctionCall

 

method ValidateDataTableAccessImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; tableName: String; parameterNames: array of String; parameterValues: array of Object; isAllowed: Boolean): Boolean

 

Boolean ValidateDataTableAccessImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, String tableName, String[] parameterNames, Object[] parameterValues, Boolean isAllowed)

 

Function ValidateDataTableAccessImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, tableName As String, parameterNames As array of String, parameterValues As array of Object, isAllowed As Boolean) As Boolean

Parameters:

  • engine:
  • eventName:
  • tableName:
  • parameterNames:
  • parameterValues:
  • isAllowed:

ValidateDirectSQLAccess

This method is called when a raw SQL statement sent by client application is executed.

 

method ValidateDirectSQLAccess(sql: String; parameterNames: array of String; parameterValues: array of Object; var isAllowed: Boolean)

 

void ValidateDirectSQLAccess(String sql, String[] parameterNames, Object[] parameterValues, ref Boolean isAllowed)

 

Sub ValidateDirectSQLAccess(sql As String, parameterNames As array of String, parameterValues As array of Object, ByRef isAllowed As Boolean)

Parameters:

  • sql: SQL statement
  • parameterNames: Command parameter names
  • parameterValues: Command parameter values
  • isAllowed: Flag indicating whether SQL statement execution is allowed

 

Context

Gets or sets the current script provider context.

 

property Context: IScriptContext read write;

 

IScriptContext Context { get; set; }

 

Property Context As IScriptContext

Debug

Gets or seta a flag indicating whether script is executed in Debug mode.

The default value is true

 

property Debug: Boolean read write;

 

Boolean Debug { get; set; }

 

Property Debug As Boolean

DebugMode

Gets or sets the current debugger mode. Available debug modes are

{| class="dashed-table" style="width: 100%" ! style="width: 30% " |

Debug Mode
! style="width: 70% " |
Description
|- | None | No debug info is provided. This is the recommended mode for production servers due to its performance. |- | Continuous | Full debug info is generated. Script execution performance is degraded significantly. Script execution pauses only on the stop keyword or when an unhandled exception occurrs. |- | Step By Step | Script execution pauses after each script line execution. |- |}

 

property DebugMode: ScriptDebugMode read write;

 

ScriptDebugMode DebugMode { get; set; }

 

Property DebugMode As ScriptDebugMode

HasAfterCommit

Returns true if the AfterCommit script function is defined.

 

property HasAfterCommit: Boolean read;

 

Boolean HasAfterCommit { get; }

 

Property ReadOnly HasAfterCommit As Boolean

HasAfterExecuteCommand

Returns true if the AfterExecuteCommand script function is defined.

 

property HasAfterExecuteCommand: Boolean read;

 

Boolean HasAfterExecuteCommand { get; }

 

Property ReadOnly HasAfterExecuteCommand As Boolean

HasAfterGetData

Returns true if the AfterGetData script function is defined.

 

property HasAfterGetData: Boolean read;

 

Boolean HasAfterGetData { get; }

 

Property ReadOnly HasAfterGetData As Boolean

HasAfterLogin

Returns true if the AfterLogin script function is defined.

 

property HasAfterLogin: Boolean read;

 

Boolean HasAfterLogin { get; }

 

Property ReadOnly HasAfterLogin As Boolean

HasAfterProcessDelta

Returns true if the AfterProcessDelta script function is defined.

 

property HasAfterProcessDelta: Boolean read;

 

Boolean HasAfterProcessDelta { get; }

 

Property ReadOnly HasAfterProcessDelta As Boolean

HasAfterProcessDeltaChange

Returns true if the AfterProcessDeltaChange script function is defined.

 

property HasAfterProcessDeltaChange: Boolean read;

 

Boolean HasAfterProcessDeltaChange { get; }

 

Property ReadOnly HasAfterProcessDeltaChange As Boolean

HasAfterRollback

Returns true if the AfterRollback script function is defined.

 

property HasAfterRollback: Boolean read;

 

Boolean HasAfterRollback { get; }

 

Property ReadOnly HasAfterRollback As Boolean

HasBeforeCommit

Returns true if the BeforeCommit script function is defined.

 

property HasBeforeCommit: Boolean read;

 

Boolean HasBeforeCommit { get; }

 

Property ReadOnly HasBeforeCommit As Boolean

HasBeforeDelete

Returns true if the BeforeDelete script function is defined for the Schema table tableName.

 

property HasBeforeDelete[table: String]: Boolean read;

 

Boolean HasBeforeDelete[String table] { get; }

 

Property ReadOnly HasBeforeDelete(table As String) As Boolean

HasBeforeExecuteCommand

Returns true if the BeforeExecuteCommand script function is defined.

 

property HasBeforeExecuteCommand: Boolean read;

 

Boolean HasBeforeExecuteCommand { get; }

 

Property ReadOnly HasBeforeExecuteCommand As Boolean

HasBeforeGetData

Returns true if the BeforeGetData script function is defined.

 

property HasBeforeGetData: Boolean read;

 

Boolean HasBeforeGetData { get; }

 

Property ReadOnly HasBeforeGetData As Boolean

HasBeforeLogout

Returns true if the BeforeLogout script function is defined.

 

property HasBeforeLogout: Boolean read;

 

Boolean HasBeforeLogout { get; }

 

Property ReadOnly HasBeforeLogout As Boolean

HasBeforePost

Returns true if the BeforePost script function is defined for the Schema table tableName.

 

property HasBeforePost[table: String]: Boolean read;

 

Boolean HasBeforePost[String table] { get; }

 

Property ReadOnly HasBeforePost(table As String) As Boolean

HasBeforeProcessDelta

Returns true if the BeforeProcessDelta script function is defined.

 

property HasBeforeProcessDelta: Boolean read;

 

Boolean HasBeforeProcessDelta { get; }

 

Property ReadOnly HasBeforeProcessDelta As Boolean

HasBeforeProcessDeltaChange

Returns true if the BeforeProcessDeltaChange script function is defined.

 

property HasBeforeProcessDeltaChange: Boolean read;

 

Boolean HasBeforeProcessDeltaChange { get; }

 

Property ReadOnly HasBeforeProcessDeltaChange As Boolean

HasBeforeRollback

Returns true if the BeforeRollback script function is defined.

 

property HasBeforeRollback: Boolean read;

 

Boolean HasBeforeRollback { get; }

 

Property ReadOnly HasBeforeRollback As Boolean

HasCreateTransaction

Returns true if the CreateTransaction script function is defined.

 

property HasCreateTransaction: Boolean read;

 

Boolean HasCreateTransaction { get; }

 

Property ReadOnly HasCreateTransaction As Boolean

HasDoLogin

Reserved

 

property HasDoLogin: Boolean read;

 

Boolean HasDoLogin { get; }

 

Property ReadOnly HasDoLogin As Boolean

HasDoLogout

Reserved

 

property HasDoLogout: Boolean read;

 

Boolean HasDoLogout { get; }

 

Property ReadOnly HasDoLogout As Boolean

HasOnNewRow

Returns true if the OnNewRow script function is defined for the Schema table tableName.

 

property HasOnNewRow[table: String]: Boolean read;

 

Boolean HasOnNewRow[String table] { get; }

 

Property ReadOnly HasOnNewRow(table As String) As Boolean

HasProcessError

Returns true if the ProcessError script function is defined.

 

property HasProcessError: Boolean read;

 

Boolean HasProcessError { get; }

 

Property ReadOnly HasProcessError As Boolean

HasUnknownSqlMacroIdentifier

Returns true if the onUnknownSqlMacroIdentifier script function is defined.

 

property HasUnknownSqlMacroIdentifier: Boolean read;

 

Boolean HasUnknownSqlMacroIdentifier { get; }

 

Property ReadOnly HasUnknownSqlMacroIdentifier As Boolean

HasValidateCommandAccess

Returns true if the ValidateCommandAccess script function is defined.

 

property HasValidateCommandAccess: Boolean read;

 

Boolean HasValidateCommandAccess { get; }

 

Property ReadOnly HasValidateCommandAccess As Boolean

HasValidateDataTableAccess

Returns true.

 

property HasValidateDataTableAccess: Boolean read;

 

Boolean HasValidateDataTableAccess { get; }

 

Property ReadOnly HasValidateDataTableAccess As Boolean

HasValidateDirectSQLAccess

Returns true.

 

property HasValidateDirectSQLAccess: Boolean read;

 

Boolean HasValidateDirectSQLAccess { get; }

 

Property ReadOnly HasValidateDirectSQLAccess As Boolean

IsDebuggerAttached  protected

Gets a flag indicating whether a debugger is attached to the current script engine instance.

 

property IsDebuggerAttached: Boolean read;

 

Boolean IsDebuggerAttached { get; }

 

Property ReadOnly IsDebuggerAttached As Boolean

IsNestedEvent  protected

Gets true if the currently executing script has nesting level bigger than 1.

 

property IsNestedEvent: Boolean read;

 

Boolean IsNestedEvent { get; }

 

Property ReadOnly IsNestedEvent As Boolean

ScriptName

Gets or sets current script name.

Script name is used by the Script Debugger to identify the script source.

 

property ScriptName: String read write;

 

String ScriptName { get; set; }

 

Property ScriptName As String

 

constructor

Creates a new instance of the EcmaScriptProvider class and initializes global script context.

 

constructor

 

EcmaScriptProvider()

 

Sub New

constructor (String)

Creates a new instance of the EcmaScriptProvider class and initializes global script context.

 

constructor(scriptName: String)

 

EcmaScriptProvider(String scriptName)

 

Sub New (scriptName As String)

Parameters:

  • scriptName: Script name. Used for debug purposes

add_ContextChanged

 

method add_ContextChanged(value: EventHandler<EcmaScriptContextChangedArgs>)

 

void add_ContextChanged(EventHandler<EcmaScriptContextChangedArgs> value)

 

Sub add_ContextChanged(value As EventHandler<EcmaScriptContextChangedArgs>)

Parameters:

  • value:

add_DebugFrameEnter

 

method add_DebugFrameEnter(value: EventHandler<ScriptFrameEnterEventArgs>)

 

void add_DebugFrameEnter(EventHandler<ScriptFrameEnterEventArgs> value)

 

Sub add_DebugFrameEnter(value As EventHandler<ScriptFrameEnterEventArgs>)

Parameters:

  • value:

add_DebugFrameExit

 

method add_DebugFrameExit(value: EventHandler<ScriptFrameExitEventArgs>)

 

void add_DebugFrameExit(EventHandler<ScriptFrameExitEventArgs> value)

 

Sub add_DebugFrameExit(value As EventHandler<ScriptFrameExitEventArgs>)

Parameters:

  • value:

add_DebugLog

 

method add_DebugLog(value: EventHandler<ScriptLogEventArgs>)

 

void add_DebugLog(EventHandler<ScriptLogEventArgs> value)

 

Sub add_DebugLog(value As EventHandler<ScriptLogEventArgs>)

Parameters:

  • value:

add_DebugTracePoint

 

method add_DebugTracePoint(value: EventHandler<ScriptTracePointEventArgs>)

 

void add_DebugTracePoint(EventHandler<ScriptTracePointEventArgs> value)

 

Sub add_DebugTracePoint(value As EventHandler<ScriptTracePointEventArgs>)

Parameters:

  • value:

add_DebugUnhandledException

 

method add_DebugUnhandledException(value: EventHandler<ScriptUnhandledExceptionEventArgs>)

 

void add_DebugUnhandledException(EventHandler<ScriptUnhandledExceptionEventArgs> value)

 

Sub add_DebugUnhandledException(value As EventHandler<ScriptUnhandledExceptionEventArgs>)

Parameters:

  • value:

add_Log

 

method add_Log(value: EventHandler<EcmaScriptLogArgs>)

 

void add_Log(EventHandler<EcmaScriptLogArgs> value)

 

Sub add_Log(value As EventHandler<EcmaScriptLogArgs>)

Parameters:

  • value:

add_ScriptError

 

method add_ScriptError(value: EventHandler<ScriptErrorEventArgs>)

 

void add_ScriptError(EventHandler<ScriptErrorEventArgs> value)

 

Sub add_ScriptError(value As EventHandler<ScriptErrorEventArgs>)

Parameters:

  • value:

AfterCommit

This method is called after a transaction (set of insert/update/delete operations) has been committed.

 

method AfterCommit

 

void AfterCommit()

 

Sub AfterCommit

AfterExecuteCommand

This method is called after an sql command is executed.

 

method AfterExecuteCommand(sql: String; commandName: String; parameters: array of DataParameter; rowsAffected: Int32)

 

void AfterExecuteCommand(String sql, String commandName, DataParameter[] parameters, Int32 rowsAffected)

 

Sub AfterExecuteCommand(sql As String, commandName As String, parameters As array of DataParameter, rowsAffected As Int32)

Parameters:

  • sql: Executed command SQL statement
  • commandName: Executed command name
  • parameters: Set of command parameters
  • rowsAffected: Number of rows affected by the command execution

AfterExecuteCommandImpl.ScriptFunctionCall

 

method AfterExecuteCommandImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; sql: String; commandName: String; parameters: array of DataParameter; rowsAffected: Int32)

 

void AfterExecuteCommandImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, String sql, String commandName, DataParameter[] parameters, Int32 rowsAffected)

 

Sub AfterExecuteCommandImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, sql As String, commandName As String, parameters As array of DataParameter, rowsAffected As Int32)

Parameters:

  • engine:
  • eventName:
  • sql:
  • commandName:
  • parameters:
  • rowsAffected:

AfterGetData

This method is called after data is retireved from database.

 

method AfterGetData(tables: array of String; requestInfo: array of TableRequestInfo)

 

void AfterGetData(String[] tables, TableRequestInfo[] requestInfo)

 

Sub AfterGetData(tables As array of String, requestInfo As array of TableRequestInfo)

Parameters:

  • tables: Table names
  • requestInfo: Corresponding TableRequestInfo instances. These instances contain additional request parameters

AfterLogin

This method is called after the user has logged in.

Relativity Server only.

 

method AfterLogin

 

void AfterLogin()

 

Sub AfterLogin

AfterProcessDelta

This method is called on database updates, after processing of each Delta instance

 

method AfterProcessDelta(delta: Delta)

 

void AfterProcessDelta(Delta delta)

 

Sub AfterProcessDelta(delta As Delta)

Parameters:

  • delta: Processed Delta instance

AfterProcessDeltaChange

This method is called on database updates, after processing of each DeltaChange instance.

 

method AfterProcessDeltaChange(delta: Delta; change: DeltaChange; refreshed: Boolean)

 

void AfterProcessDeltaChange(Delta delta, DeltaChange change, Boolean refreshed)

 

Sub AfterProcessDeltaChange(delta As Delta, change As DeltaChange, refreshed As Boolean)

Parameters:

  • delta: Processed Delta instance
  • change: Processed DeltaChange instance
  • refreshed: A flag indicating wheter the data was re-read from the database server after update. This operation is required to obtain values of server-calculated fields

AfterProcessDeltaChangeImpl.ScriptFunctionCall

 

method AfterProcessDeltaChangeImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; delta: Delta; change: DeltaChange; wasRefreshed: Boolean)

 

void AfterProcessDeltaChangeImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, Delta delta, DeltaChange change, Boolean wasRefreshed)

 

Sub AfterProcessDeltaChangeImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, delta As Delta, change As DeltaChange, wasRefreshed As Boolean)

Parameters:

  • engine:
  • eventName:
  • delta:
  • change:
  • wasRefreshed:

AfterRollback

This method if called after a transactions is rolled back (canceled).

 

method AfterRollback

 

void AfterRollback()

 

Sub AfterRollback

BeforeCommit

This method is called before a transaction is committed.

 

method BeforeCommit

 

void BeforeCommit()

 

Sub BeforeCommit

BeforeDelete

This method is called when a data row is going to be deleted.

 

method BeforeDelete(row: IRowHelper)

 

void BeforeDelete(IRowHelper row)

 

Sub BeforeDelete(row As IRowHelper)

Parameters:

  • row: Data row being deleted

BeforeExecuteCommand

This method is called before an sql command is executed.

 

method BeforeExecuteCommand(sql: String; commandName: String; parameters: array of DataParameter)

 

void BeforeExecuteCommand(String sql, String commandName, DataParameter[] parameters)

 

Sub BeforeExecuteCommand(sql As String, commandName As String, parameters As array of DataParameter)

Parameters:

  • sql: Command SQL statement
  • commandName: Command name
  • parameters: Set of command parameters

BeforeExecuteCommandImpl.ScriptFunctionCall

 

method BeforeExecuteCommandImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; sql: String; commandName: String; parameters: array of DataParameter)

 

void BeforeExecuteCommandImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, String sql, String commandName, DataParameter[] parameters)

 

Sub BeforeExecuteCommandImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, sql As String, commandName As String, parameters As array of DataParameter)

Parameters:

  • engine:
  • eventName:
  • sql:
  • commandName:
  • parameters:

BeforeGetData

This method is called before data is retireved from database.

 

method BeforeGetData(tables: array of String; requestInfo: array of TableRequestInfo)

 

void BeforeGetData(String[] tables, TableRequestInfo[] requestInfo)

 

Sub BeforeGetData(tables As array of String, requestInfo As array of TableRequestInfo)

Parameters:

  • tables: Table names
  • requestInfo: Corresponding TableRequestInfo instances. These instances contain additional request parameters

BeforeLogout

This method is called before the user has logged out.

Relativity Server only.

 

method BeforeLogout

 

void BeforeLogout()

 

Sub BeforeLogout

BeforePost

This method is called when a data row is going to be updated.

 

method BeforePost(row: IRowHelper)

 

void BeforePost(IRowHelper row)

 

Sub BeforePost(row As IRowHelper)

Parameters:

  • row: Data row being updated

BeforeProcessDelta

This method is called on database updates, before processing of each Delta instance.

 

method BeforeProcessDelta(delta: Delta)

 

void BeforeProcessDelta(Delta delta)

 

Sub BeforeProcessDelta(delta As Delta)

Parameters:

  • delta: Delta instance to process

BeforeProcessDeltaChange

This method is called on database updates, before processing of each DeltaChange instance.

 

method BeforeProcessDeltaChange(delta: Delta; change: DeltaChange; refreshed: Boolean; var canRemove: Boolean)

 

void BeforeProcessDeltaChange(Delta delta, DeltaChange change, Boolean refreshed, ref Boolean canRemove)

 

Sub BeforeProcessDeltaChange(delta As Delta, change As DeltaChange, refreshed As Boolean, ByRef canRemove As Boolean)

Parameters:

  • delta: Delta instance to process
  • change: DeltaChange instance to process
  • refreshed: Reserved
  • canRemove: Flag indicating wheter the current deltachange can be removed from its parent Delta after is is successfully processed

BeforeProcessDeltaChangeImpl.ScriptFunctionCall

 

method BeforeProcessDeltaChangeImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; delta: Delta; change: DeltaChange; wasRefreshed: Boolean; canRemove: Boolean): Boolean

 

Boolean BeforeProcessDeltaChangeImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, Delta delta, DeltaChange change, Boolean wasRefreshed, Boolean canRemove)

 

Function BeforeProcessDeltaChangeImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, delta As Delta, change As DeltaChange, wasRefreshed As Boolean, canRemove As Boolean) As Boolean

Parameters:

  • engine:
  • eventName:
  • delta:
  • change:
  • wasRefreshed:
  • canRemove:

BeforeRollback

This method is called before a transaction is rolled back (canceled).

 

method BeforeRollback

 

void BeforeRollback()

 

Sub BeforeRollback

Clear

Clears all internal caches of the script provide and resets its state.

 

method Clear

 

void Clear()

 

Sub Clear

ClearScriptCache

Clears the script cache.

For performance reasons Script Provider caches precompiled scripts for Schema entities. Is the server Schema is changed then this cache should be cleared to avoind possible inconsistencies.

 

method ClearScriptCache

 

void ClearScriptCache()

 

Sub ClearScriptCache

Continue

Continues script execution after it has been paused.

 

method Continue

 

void Continue()

 

Sub Continue

CreateScriptException.GetScriptException

 

method CreateScriptException.GetScriptException(eventName: String; originalException: Exception): ScriptException

 

ScriptException CreateScriptException.GetScriptException(String eventName, Exception originalException)

 

Function CreateScriptException.GetScriptException(eventName As String, originalException As Exception) As ScriptException

Parameters:

  • eventName:
  • originalException:

CreateScriptException  protected

Creates a new instance of the RemObjects.DataAbstract.Server.ScriptException exception and extracts all needed information form the original script exception and from the current script context, f.e. current line/row, event that the failed script belongs to etc.

 

method CreateScriptException(eventName: String; originalException: Exception): ScriptException

 

ScriptException CreateScriptException(String eventName, Exception originalException)

 

Function CreateScriptException(eventName As String, originalException As Exception) As ScriptException

Parameters:

  • eventName: Event that has been handled by the failed script
  • originalException: Original script exception

CreateTransaction

This method is called when a new transaction is created to fetch or update records.

 

method CreateTransaction

 

void CreateTransaction()

 

Sub CreateTransaction

DoLogin

Reserved.

 

method DoLogin(parameters: IDictionary): Boolean

 

Boolean DoLogin(IDictionary parameters)

 

Function DoLogin(parameters As IDictionary) As Boolean

Parameters:

  • parameters: Reserved

DoLogout

Reserved.

 

method DoLogout

 

void DoLogout()

 

Sub DoLogout

Fail  protected

Raises the ScriptFailException exception with message constructed using provided exception parameters.

 

method Fail(params args: array of Object): Object

 

Object Fail(params Object[] args)

 

Function Fail(ParamArray args As array of Object) As Object

Parameters:

  • args: Exception information

GetCommandScript  protected

Initialized the script events handler for the Schema command commandName and precompiles the Schema scripts.

Method result is internally cached.

 

method GetCommandScript(commandName: String): EcmaScriptComponent

 

EcmaScriptComponent GetCommandScript(String commandName)

 

Function GetCommandScript(commandName As String) As EcmaScriptComponent

Parameters:

  • commandName: Schema command name

GetCurrentDebuggerState  protected

Returns the current debugger state information, including current line/row, script engine state etc.

 

method GetCurrentDebuggerState: IScriptDebuggerState

 

IScriptDebuggerState GetCurrentDebuggerState()

 

Function GetCurrentDebuggerState As IScriptDebuggerState

GetCurrentDebuggerState.ConvertScriptVariable

 

method GetCurrentDebuggerState.ConvertScriptVariable(name: String; value: Object): IScriptDebuggerVariable

 

IScriptDebuggerVariable GetCurrentDebuggerState.ConvertScriptVariable(String name, Object value)

 

Function GetCurrentDebuggerState.ConvertScriptVariable(name As String, value As Object) As IScriptDebuggerVariable

Parameters:

  • name:
  • value:

GetDataImpl.ScriptFunctionCall

 

method GetDataImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; tables: array of String; requestInfo: array of TableRequestInfo)

 

void GetDataImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, String[] tables, TableRequestInfo[] requestInfo)

 

Sub GetDataImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, tables As array of String, requestInfo As array of TableRequestInfo)

Parameters:

  • engine:
  • eventName:
  • tables:
  • requestInfo:

GetTableClientScript  protected

Initialized the client-side script events handler for the Schema table tableName and precompiles the Schema scripts.

Method result is internally cached.

 

method GetTableClientScript(tableName: String): EcmaScriptComponent

 

EcmaScriptComponent GetTableClientScript(String tableName)

 

Function GetTableClientScript(tableName As String) As EcmaScriptComponent

Parameters:

  • tableName: Schema table name

GetTableServerScript  protected

Initialized the server-side script events handler for the Schema table tableName and precompiles the Schema scripts.

Method result is internally cached.

 

method GetTableServerScript(tableName: String): EcmaScriptComponent

 

EcmaScriptComponent GetTableServerScript(String tableName)

 

Function GetTableServerScript(tableName As String) As EcmaScriptComponent

Parameters:

  • tableName: Schema table name

InvokeGlobalScriptFunction  protected

Executes the requested script function. It is assumed that the requested script function doesn't require any arguments.

Script function is always executed in the root Schema context.

 

method InvokeGlobalScriptFunction(name: String)

 

void InvokeGlobalScriptFunction(String name)

 

Sub InvokeGlobalScriptFunction(name As String)

Parameters:

  • name: Script method name

InvokeScript  protected

Executes the provided delegate. It is assumed that this delegate in turns executes a script method.

This method handles script exceptions and limits the script calls nesting.

 

method InvokeScript(implementation: ParamsDelegate; params arguments: array of Object): Object

 

Object InvokeScript(ParamsDelegate implementation, params Object[] arguments)

 

Function InvokeScript(implementation As ParamsDelegate, ParamArray arguments As array of Object) As Object

Parameters:

  • implementation: Delegate that should execute the script method
  • arguments: Script method arguments

InvokeScriptFunction  protected

Executes script function with provided parameters.

The purpose of this ,ethod is to properly set the Script Debugger context if needed.

 

method InvokeScriptFunction(engine: EcmaScriptComponent; name: String; params arguments: array of Object): Object

 

Object InvokeScriptFunction(EcmaScriptComponent engine, String name, params Object[] arguments)

 

Function InvokeScriptFunction(engine As EcmaScriptComponent, name As String, ParamArray arguments As array of Object) As Object

Parameters:

  • engine: Script engine containing precompiled script
  • name: Script function name
  • arguments: Script function parameters

IsGlobalVariableDefined  protected

Returnas true if the global script context contains the requested variable.

 

method IsGlobalVariableDefined(name: String): Boolean

 

Boolean IsGlobalVariableDefined(String name)

 

Function IsGlobalVariableDefined(name As String) As Boolean

Parameters:

  • name: Global variable name

IsTableFunctionDefined  protected

Returns true if the Schema table script has definition for the requested script function.

 

method IsTableFunctionDefined(table: String; function: String): Boolean

 

Boolean IsTableFunctionDefined(String table, String function)

 

Function IsTableFunctionDefined(table As String, function As String) As Boolean

Parameters:

  • table: Schema table name
  • function: Script function name

LoadScript (EcmaScriptComponent, String)  protected

Loads and precompiles provided script source.

 

method LoadScript(engine: EcmaScriptComponent; script: String)

 

void LoadScript(EcmaScriptComponent engine, String script)

 

Sub LoadScript(engine As EcmaScriptComponent, script As String)

Parameters:

  • engine:
  • script: Script source code

LoadScript (String)

 

method LoadScript(script: String)

 

void LoadScript(String script)

 

Sub LoadScript(script As String)

Parameters:

  • script:

LogMessage  protected

Logs specified information.

 

method LogMessage(params args: array of Object): Object

 

Object LogMessage(params Object[] args)

 

Function LogMessage(ParamArray args As array of Object) As Object

Parameters:

  • args: Specified collection with information need to log.

NewGuid  protected

Creates and returns new Guid value.

 

method NewGuid(params args: array of Object): Object

 

Object NewGuid(params Object[] args)

 

Function NewGuid(ParamArray args As array of Object) As Object

Parameters:

  • args: are not used.

NewGuidString  protected

Creates and returns new Guid value as string.

 

method NewGuidString(params args: array of Object): Object

 

Object NewGuidString(params Object[] args)

 

Function NewGuidString(ParamArray args As array of Object) As Object

Parameters:

  • args: are not used.

OnContextChanged  protected

Raises the ContextChanged event.

 

method OnContextChanged(e: EcmaScriptContextChangedArgs)

 

void OnContextChanged(EcmaScriptContextChangedArgs e)

 

Sub OnContextChanged(e As EcmaScriptContextChangedArgs)

Parameters:

  • e: Event arguments

OnDebugDebugger  protected

Internal method used to initialize the sub-script execution in the step-by-step mode.

 

method OnDebugDebugger

 

void OnDebugDebugger()

 

Sub OnDebugDebugger

OnDebugFrameEnter  protected

Raises the DebugFrameEnter event.

 

method OnDebugFrameEnter(e: ScriptFrameEnterEventArgs)

 

void OnDebugFrameEnter(ScriptFrameEnterEventArgs e)

 

Sub OnDebugFrameEnter(e As ScriptFrameEnterEventArgs)

Parameters:

  • e: Event arguments

OnDebugFrameExit  protected

Raises the DebugFrameExit event.

 

method OnDebugFrameExit(e: ScriptFrameExitEventArgs)

 

void OnDebugFrameExit(ScriptFrameExitEventArgs e)

 

Sub OnDebugFrameExit(e As ScriptFrameExitEventArgs)

Parameters:

  • e: Event arguments

OnDebugLog  protected

Raises the DebugLog event.

 

method OnDebugLog(e: ScriptLogEventArgs)

 

void OnDebugLog(ScriptLogEventArgs e)

 

Sub OnDebugLog(e As ScriptLogEventArgs)

Parameters:

  • e: Event arguments

OnDebugTracePoint  protected

Raises the DebugTracePoint event.

 

method OnDebugTracePoint(e: ScriptTracePointEventArgs)

 

void OnDebugTracePoint(ScriptTracePointEventArgs e)

 

Sub OnDebugTracePoint(e As ScriptTracePointEventArgs)

Parameters:

  • e: Event arguments

OnDebugUnhandledException  protected

Raises the DebugUnhandledException event.

 

method OnDebugUnhandledException(e: ScriptUnhandledExceptionEventArgs)

 

void OnDebugUnhandledException(ScriptUnhandledExceptionEventArgs e)

 

Sub OnDebugUnhandledException(e As ScriptUnhandledExceptionEventArgs)

Parameters:

  • e: Event arguments

OnLog  protected

Raises the Log event.

 

method OnLog(e: EcmaScriptLogArgs)

 

void OnLog(EcmaScriptLogArgs e)

 

Sub OnLog(e As EcmaScriptLogArgs)

Parameters:

  • e: Event arguments

OnNewRow

Called when creating new rows. Can be used to pre-initialize new records data.

 

method OnNewRow(row: IRowHelper)

 

void OnNewRow(IRowHelper row)

 

Sub OnNewRow(row As IRowHelper)

Parameters:

  • row: New data row

OnScriptError  protected

Raises the ScriptError event.

 

method OnScriptError(e: ScriptErrorEventArgs)

 

void OnScriptError(ScriptErrorEventArgs e)

 

Sub OnScriptError(e As ScriptErrorEventArgs)

Parameters:

  • e: Event arguments

ProcessDeltaImpl.ScriptFunctionCall

 

method ProcessDeltaImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; delta: Delta)

 

void ProcessDeltaImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, Delta delta)

 

Sub ProcessDeltaImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, delta As Delta)

Parameters:

  • engine:
  • eventName:
  • delta:

ProcessError

This method is called when an error occurs during applying data changes to the database.

This method should return either the current value of the canContinue argument or false to break the Delta processing and roll back the transaction.

 

method ProcessError(delta: Delta; change: DeltaChange; var canContinue: Boolean; var error: Exception)

 

void ProcessError(Delta delta, DeltaChange change, ref Boolean canContinue, ref Exception error)

 

Sub ProcessError(delta As Delta, change As DeltaChange, ByRef canContinue As Boolean, ByRef error As Exception)

Parameters:

  • delta: Delta instance containing failed data change
  • change: DeltaChange instance that cannot be applied to the database
  • canContinue: Flag indicating wthether Data Abstract should process other Class instances instead of rolling back the transaction immediately
  • error: Exception raised by the data change attempt

ProcessErrorImpl.ScriptFunctionCall

 

method ProcessErrorImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; delta: Delta; change: DeltaChange; canContinue: Boolean; ex: Exception): Boolean

 

Boolean ProcessErrorImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, Delta delta, DeltaChange change, Boolean canContinue, Exception ex)

 

Function ProcessErrorImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, delta As Delta, change As DeltaChange, canContinue As Boolean, ex As Exception) As Boolean

Parameters:

  • engine:
  • eventName:
  • delta:
  • change:
  • canContinue:
  • ex:

remove_ContextChanged

 

method remove_ContextChanged(value: EventHandler<EcmaScriptContextChangedArgs>)

 

void remove_ContextChanged(EventHandler<EcmaScriptContextChangedArgs> value)

 

Sub remove_ContextChanged(value As EventHandler<EcmaScriptContextChangedArgs>)

Parameters:

  • value:

remove_DebugFrameEnter

 

method remove_DebugFrameEnter(value: EventHandler<ScriptFrameEnterEventArgs>)

 

void remove_DebugFrameEnter(EventHandler<ScriptFrameEnterEventArgs> value)

 

Sub remove_DebugFrameEnter(value As EventHandler<ScriptFrameEnterEventArgs>)

Parameters:

  • value:

remove_DebugFrameExit

 

method remove_DebugFrameExit(value: EventHandler<ScriptFrameExitEventArgs>)

 

void remove_DebugFrameExit(EventHandler<ScriptFrameExitEventArgs> value)

 

Sub remove_DebugFrameExit(value As EventHandler<ScriptFrameExitEventArgs>)

Parameters:

  • value:

remove_DebugLog

 

method remove_DebugLog(value: EventHandler<ScriptLogEventArgs>)

 

void remove_DebugLog(EventHandler<ScriptLogEventArgs> value)

 

Sub remove_DebugLog(value As EventHandler<ScriptLogEventArgs>)

Parameters:

  • value:

remove_DebugTracePoint

 

method remove_DebugTracePoint(value: EventHandler<ScriptTracePointEventArgs>)

 

void remove_DebugTracePoint(EventHandler<ScriptTracePointEventArgs> value)

 

Sub remove_DebugTracePoint(value As EventHandler<ScriptTracePointEventArgs>)

Parameters:

  • value:

remove_DebugUnhandledException

 

method remove_DebugUnhandledException(value: EventHandler<ScriptUnhandledExceptionEventArgs>)

 

void remove_DebugUnhandledException(EventHandler<ScriptUnhandledExceptionEventArgs> value)

 

Sub remove_DebugUnhandledException(value As EventHandler<ScriptUnhandledExceptionEventArgs>)

Parameters:

  • value:

remove_Log

 

method remove_Log(value: EventHandler<EcmaScriptLogArgs>)

 

void remove_Log(EventHandler<EcmaScriptLogArgs> value)

 

Sub remove_Log(value As EventHandler<EcmaScriptLogArgs>)

Parameters:

  • value:

remove_ScriptError

 

method remove_ScriptError(value: EventHandler<ScriptErrorEventArgs>)

 

void remove_ScriptError(EventHandler<ScriptErrorEventArgs> value)

 

Sub remove_ScriptError(value As EventHandler<ScriptErrorEventArgs>)

Parameters:

  • value:

RemoveGlobalVariable  protected

Removes variable from the global script context.

 

method RemoveGlobalVariable(name: String)

 

void RemoveGlobalVariable(String name)

 

Sub RemoveGlobalVariable(name As String)

Parameters:

  • name: Global variable name

StepInto

Steps into a method.

 

method StepInto

 

void StepInto()

 

Sub StepInto

StepOut

Steps out from the current script method. Script execution will be paused again after workflow exit from the current script.

 

method StepOut

 

void StepOut()

 

Sub StepOut

StepOver

Steps over the current script line.

 

method StepOver

 

void StepOver()

 

Sub StepOver

Stop

Breaks script execution.

 

method Stop

 

void Stop()

 

Sub Stop

SupportsLanguage

Returns true if provided language is supported by the current Script Provider.

Returns true if languageName equals one of js, javascript, jscript, ecmascript, rsljavascript.

 

method SupportsLanguage(languageName: String): Boolean

 

Boolean SupportsLanguage(String languageName)

 

Function SupportsLanguage(languageName As String) As Boolean

Parameters:

  • languageName: Script language name

UnknownSqlMacroIdentifier

This method is called when an unknown macro is found in the SQL statement processed by Data Abstract.

 

method UnknownSqlMacroIdentifier(identifier: String; var value: String)

 

void UnknownSqlMacroIdentifier(String identifier, ref String value)

 

Sub UnknownSqlMacroIdentifier(identifier As String, ByRef value As String)

Parameters:

  • identifier: Macro identifier
  • value: Macro value

UpdateOrDeleteRowImpl.ScriptFunctionCall

 

method UpdateOrDeleteRowImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; row: IRowHelper)

 

void UpdateOrDeleteRowImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, IRowHelper row)

 

Sub UpdateOrDeleteRowImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, row As IRowHelper)

Parameters:

  • engine:
  • eventName:
  • row:

ValidateCommandAccess

This method is called before a SQL command is executed.

Returns true if command execution is allowed.

 

method ValidateCommandAccess(commandName: String; parameterNames: array of String; parameterValues: array of Object; var isAllowed: Boolean)

 

void ValidateCommandAccess(String commandName, String[] parameterNames, Object[] parameterValues, ref Boolean isAllowed)

 

Sub ValidateCommandAccess(commandName As String, parameterNames As array of String, parameterValues As array of Object, ByRef isAllowed As Boolean)

Parameters:

  • commandName: Command name
  • parameterNames: Command parameter names
  • parameterValues: Command parameter values
  • isAllowed: Flag indicating whether command execution is allowed

ValidateCommandAccessImpl.ScriptFunctionCall

 

method ValidateCommandAccessImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; commandName: String; parameterNames: array of String; parameterValues: array of Object; isAllowed: Boolean): Boolean

 

Boolean ValidateCommandAccessImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, String commandName, String[] parameterNames, Object[] parameterValues, Boolean isAllowed)

 

Function ValidateCommandAccessImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, commandName As String, parameterNames As array of String, parameterValues As array of Object, isAllowed As Boolean) As Boolean

Parameters:

  • engine:
  • eventName:
  • commandName:
  • parameterNames:
  • parameterValues:
  • isAllowed:

ValidateDataTableAccess

This method is called when data request is validated.

Returns true if access to the data table is allowed.

 

method ValidateDataTableAccess(tableName: String; parameterNames: array of String; parameterValues: array of Object; var isAllowed: Boolean)

 

void ValidateDataTableAccess(String tableName, String[] parameterNames, Object[] parameterValues, ref Boolean isAllowed)

 

Sub ValidateDataTableAccess(tableName As String, parameterNames As array of String, parameterValues As array of Object, ByRef isAllowed As Boolean)

Parameters:

  • tableName: Table name
  • parameterNames: Command parameter names
  • parameterValues: Command parameter values
  • isAllowed: Flag indicating whether data access is allowed

ValidateDataTableAccessImpl.ScriptFunctionCall

 

method ValidateDataTableAccessImpl.ScriptFunctionCall(engine: EcmaScriptComponent; eventName: String; tableName: String; parameterNames: array of String; parameterValues: array of Object; isAllowed: Boolean): Boolean

 

Boolean ValidateDataTableAccessImpl.ScriptFunctionCall(EcmaScriptComponent engine, String eventName, String tableName, String[] parameterNames, Object[] parameterValues, Boolean isAllowed)

 

Function ValidateDataTableAccessImpl.ScriptFunctionCall(engine As EcmaScriptComponent, eventName As String, tableName As String, parameterNames As array of String, parameterValues As array of Object, isAllowed As Boolean) As Boolean

Parameters:

  • engine:
  • eventName:
  • tableName:
  • parameterNames:
  • parameterValues:
  • isAllowed:

ValidateDirectSQLAccess

This method is called when a raw SQL statement sent by client application is executed.

 

method ValidateDirectSQLAccess(sql: String; parameterNames: array of String; parameterValues: array of Object; var isAllowed: Boolean)

 

void ValidateDirectSQLAccess(String sql, String[] parameterNames, Object[] parameterValues, ref Boolean isAllowed)

 

Sub ValidateDirectSQLAccess(sql As String, parameterNames As array of String, parameterValues As array of Object, ByRef isAllowed As Boolean)

Parameters:

  • sql: SQL statement
  • parameterNames: Command parameter names
  • parameterValues: Command parameter values
  • isAllowed: Flag indicating whether SQL statement execution is allowed

 

ContextChanged

Fires when Context property is changing.

 

event ContextChanged: EventHandler<EcmaScriptContextChangedArgs>;

 

delegate EventHandler<EcmaScriptContextChangedArgs> ContextChanged()

 

Event ContextChanged As EventHandler<EcmaScriptContextChangedArgs>

DebugFrameEnter

This event is raised when new script scope (for example script method) is entered.

 

event DebugFrameEnter: EventHandler<ScriptFrameEnterEventArgs>;

 

delegate EventHandler<ScriptFrameEnterEventArgs> DebugFrameEnter()

 

Event DebugFrameEnter As EventHandler<ScriptFrameEnterEventArgs>

DebugFrameExit

This event is raised when current script scope (for example script method) is exited.

 

event DebugFrameExit: EventHandler<ScriptFrameExitEventArgs>;

 

delegate EventHandler<ScriptFrameExitEventArgs> DebugFrameExit()

 

Event DebugFrameExit As EventHandler<ScriptFrameExitEventArgs>

DebugLog

This event is raised when the script method log is executed.

 

event DebugLog: EventHandler<ScriptLogEventArgs>;

 

delegate EventHandler<ScriptLogEventArgs> DebugLog()

 

Event DebugLog As EventHandler<ScriptLogEventArgs>

DebugTracePoint

This event is raised on every script line execution.

 

event DebugTracePoint: EventHandler<ScriptTracePointEventArgs>;

 

delegate EventHandler<ScriptTracePointEventArgs> DebugTracePoint()

 

Event DebugTracePoint As EventHandler<ScriptTracePointEventArgs>

DebugUnhandledException

This event is raised when an unhandled exception occurs during the script execution.

 

event DebugUnhandledException: EventHandler<ScriptUnhandledExceptionEventArgs>;

 

delegate EventHandler<ScriptUnhandledExceptionEventArgs> DebugUnhandledException()

 

Event DebugUnhandledException As EventHandler<ScriptUnhandledExceptionEventArgs>

Log

Fires when script execute function LogMessage to log specified information.

 

event Log: EventHandler<EcmaScriptLogArgs>;

 

delegate EventHandler<EcmaScriptLogArgs> Log()

 

Event Log As EventHandler<EcmaScriptLogArgs>

ScriptError

The ScriptError event is raised when a script execution is broken dur e to an unhandler error.

 

event ScriptError: EventHandler<ScriptErrorEventArgs>;

 

delegate EventHandler<ScriptErrorEventArgs> ScriptError()

 

Event ScriptError As EventHandler<ScriptErrorEventArgs>

See Also