AVSAVEVALUEファンクション

LANSA RAMP-TS

AVSAVEVALUEファンクション


英数字値または数値をVLF 仮想クリップボードに保存します。

構文

AVSAVEVALUE(vValue, sID1, sID2, sID3, iInstance, sLanguage, bPersist)

パラメータ

vValue

必要。仮想クリップボードに保存する英数字または数値。 

このパラメータがタイプ文字列のJavaScript変数である場合、英数字値としてクリップボードに提示され、AVRESTOREAVALUEファンクション(または同等のもの)を使用して正確に検索されます。

タイプ数値の場合は、クリップボードにタイプ数値として提示され、AVRESTORENVALUEファンクション(または同等のもの)を使用して正確に検索されます。 

 

sID1

必要。仮想クリップボード識別子1を含む文字列。

sID2

任意。仮想クリップボード識別子2を含む文字列。

sID3

任意。仮想クリップボード識別子3を含む文字列。

iInstance

任意。インスタンス番号を含む整数。指定されない場合のデフォルトは1です。インスタンスは、通常、クリップボード値のリストの作成に使用され、現在リストにいくつのエントリが存在するのかを示す別のクリップボード値が付随します。

sLanguage

任意。言語コードを含む文字列。指定されない場合のデフォルトはすべての言語です。

bPersist

任意。保管されている値がRAMPアプリケーションの現在の実行を越えて存在する必要があるかどうかを示すブール値。デフォルトはtrueです。VLF仮想クリップボード値はWEBアプリケーションで持続して存在しないため、このパラメータはVLF-WEB RAMPアプリケーションでは何の意味もありません。

  

戻り値

なし

備考

·         VLF仮想クリップボードに値を保存するには、AVSAVEVALUEをRAMPスクリプトで使用します。仮想クリップボードに関する詳細は、フレームワーク・ガイドの「仮想クリップボード」に掲載されています。

·         パラメータ長の詳細については、「VF_SAVEAVALUEとVF_SAVENVALUE」を参照してください。

·         RAMPスクリプトからのクリップボード値の送信は、非同期です。値を送信するとき、RAMPスクリプトが実行を完了し、フレームワークに制御が戻されるまで、その値はクリップボード上で物理的には処理されません。

·          仮想クリップボードは、主にフィルター、コマンド・ハンドラーなどで実行されるRAMPスクリプトとRDML(X)コードの間で情報を受け渡すように設計されています。

·         仮想クリップボードは、主にRAMPスクリプト間で情報を受け渡すようには設定されていません。JavaScript objGlobalオブジェクトは、RAMPスクリプト間で排他的に情報を受け渡すより効率的な方法です。

·         Webブラウザ・アプリケーションで実行されるRAMPスクリプトが仮想クリップボードに値を送信するとき、フィルターまたはコマンド・ハンドラーで実行されるRDML(X)コードによる以降のアクセスのために、サーバーに送信される必要があります(これは、サーバー上で実行されるためです)。つまり、クリップボードに配置する情報のボリュームは、クライアントとサーバー間で送信される必要のある情報の量に影響を与えるということです。

·         この要求は非同期で処理されることがあります。現在アクティブなRAMP-TSスクリプトの実行が完了し、RAMP-TSマネージャに制御が戻されるまで、その呼び出しの結果は表示されないか、使用できない可能性があります。

使用例 

クリップボード値を保存/リストアする、フィルターまたはコマンド・ハンドラーのRDMLXコードは次のとおりです。

 * Save values onto the clipboard

 

Invoke #avFrameworkManager.avSaveValue WithID1(Test) WithID2(EMPNO) FromAValue(("A0090")

Invoke #avFrameworkManager.avSaveValue WithID1(Test) WithID2(SURNAME) FromAValue("FRED")

Invoke #avFrameworkManager.avSaveValue WithID1(Test) WithID2(GIVENAME) FromAValue("BLOGGS")

Invoke #avFrameworkManager.avSaveValue WithID1(Test) WithID2(POSTCODE) FromNValue(2150)

Invoke #avFrameworkManager.avSaveValue WithID1(Test) WithID2(SALARY) FromNValue(123456.78)

  

* Restore values from the clipboard

  

Invoke #avFrameworkManager.avRestoreValue WithID1(Test) WithID2(EMPNO) ToAValue(#EMPNO) UseAValueDefault("NA")

Invoke #avFrameworkManager.avRestoreValue WithID1(Test) WithID2(SURNAME) ToAValue(#SURNAME) UseAValueDefault("NA")

Invoke #avFrameworkManager.avRestoreValue WithID1(Test) WithID2(GIVENAME) ToAValue(#GIVENAME) UseAValueDefault("NA")

Invoke #avFrameworkManager.avRestoreValue WithID1(Test) WithID2(POSTCODE) ToNValue(#PostCode) UseNValueDefault(0)

Invoke #avFrameworkManager.avRestoreValue WithID1(Test) WithID2(SALARY) ToNValue(#Salary) UseNValueDefault(0)

  

 

同等の操作を実行するRAMP JavaScriptコードは、次のとおりです。 

 

/* Save values onto the clipboard – note POSTCODE and SALARY are numeric */

 

AVSAVEVALUE("A0090","TEST","EMPNO");

AVSAVEVALUE("FRED","TEST","SURNAME");

AVSAVEVALUE("BLOGGS","TEST","GIVENAME");

AVSAVEVALUE(2150,"TEST","POSTCODE");

AVSAVEVALUE(123456.78,"TEST","SALARY");

 

/* Restore values from the clipboard */

 

 

  var vEMPNO    = AVRESTOREAVALUE("NA","TEST","EMPNO");

  var vSURNAME  = AVRESTOREAVALUE("NA","TEST","SURNAME");

  var vGIVENAME = AVRESTOREAVALUE("NA","TEST","GIVENAME");

  var vPOSTCODE = AVRESTORENVALUE(0,"TEST","POSTCODE");

  var vSALARY   = AVRESTORENVALUE(0,"TEST","SALARY");