ファイルからアクティブなデータベースに対して計算スクリプトを実行します。
構文
EsbCalcFile ( hDestCtx, hSrcCtx, AppName, DbName, FileName, isCalculate ) ByVal hDestCtx As Long ByVal hSrcCtx As Long ByVal AppName As String ByVal DbName As String ByVal FileName As String ByVal isCalculate As Integer
パラメータ | 説明 |
---|---|
hDestCtx |
サーバー上のターゲット・データベースのVB APIコンテキスト・ハンドル。 |
hSrcCtx |
計算スクリプト・ファイルの場所に対するVB APIコンテキスト・ハンドル。計算スクリプト・ファイルは、クライアント、またはターゲット・データベースと同一のサーバー上に配置できます。 |
AppName |
計算スクリプト・ファイルの場所のアプリケーション名。 |
DbName |
計算スクリプト・ファイルの場所のデータベース名。 |
FileName |
計算スクリプト・ファイル名。 |
isCalculate |
計算スクリプトの計算を制御します。TRUEの場合は、計算スクリプトが実行されます。 |
備考
計算スクリプトは、64KB未満にする必要があります。
この関数が正しく実行され、計算を開始すると、この呼出しから戻った後も、サーバー上で非同期プロセスとして続行します。呼出し元はESB_STATE_DONEが戻されるまでEsbGetProcessState()を呼び出して、プロセスが完了したことを定期的に確認する必要があります。
戻り値
なし。
アクセス
この関数を使用するには、呼出し元はアクティブなデータベースに対して計算権限(ESB_PRIV_CALC)を持っている必要があります。
例
Declare Function EsbCalcFile Lib "ESBAPIN" (ByVal hDestCtx As Long, ByVal hSrcCtx As Long, ByVal AppName As String, ByVal DbName As String, ByVal FileName As String, ByVal isCalculate As Integer) As Long Sub ESB_CalcFile () Dim sts As Long Dim AppName As String Dim DbName As String Dim FileName As String Dim Calculate As Integer Dim hSrcCtx As Long Dim ProcState As ESB_PROCSTATE_T AppName = "Sample" DbName = "Basic" '*************************************** ' Calc script is an object at the server * '*************************************** hSrcCtx = hCtx FileName = "calc" Calculate = ESB_YES '********** ' Calc File '********** sts = EsbCalcFile (hCtx, hSrcCtx, AppName, DbName, FileName, Calculate) '************************************ ' Check process state till it is done '************************************ sts = EsbGetProcessState (hCtx, ProcState) Do Until ProcState.State = ESB_STATE_DONE sts = EsbGetProcessState (hCtx, ProcState) Loop End Sub
関連トピック