Symfoware Server WebDBtoolsユーザーズガイド - FUJITSU - |
目次
索引
![]() ![]() |
第6章 WebScript拡張タグ | > 6.5 変数タグ |
<!SETVAR>は、変数およびリスト要素の値を更新するタグです。
<!VAR>で定義していない変数に対して、<!SETVAR>で変数に値を設定すると、ローカル変数が定義されます。
グローバル変数の場合、変数名をパッケージ名で修飾することで、カレントパッケージ以外のグローバル変数の値を更新することができます。
<!SETVAR name value [ REF ] >
name :
更新する変数またはリストの要素を指定してください。
評価方法は、「左辺値」です。
value :
name に指定した変数またはリストの要素に設定する値を指定してください。
評価方法は、「一般データ」です。
REF :
REFパラメタを指定しない場合は、name にvalue の値が設定されます。
REFパラメタを指定した場合、valueは存在する変数または存在するリストの要素になります。この場合は、name がvalueと同一のデータを指すようになります。
valueは、存在する変数または存在するリストの要素になるようにしてください。
(1) 単純な入力
<!SETVAR X 100> Xの値は100 <!SETVAR Y '100 + 300'> Yの値は400 <!SETVAR Z X> Zの値は100 <!SETVAR X 50> Xの値は50となるがZの値は100のまま |
(2) REFパラメタ
<!SETVAR X 100> <!SETVAR Y 200> <!SETVAR P X REF> PはXと同じデータを指す PとXの値は100 <!SETVAR X 300> PとXの値はともに300 <!SETVAR P 400> PとXの値はともに400 <!SETVAR P Y REF> PはYと同じデータを指す PとYの値は200、Xの値は400のまま <!SETVAR P 500> PとYの値は500 <!SETVAR A '(0,1,2)'> <!SETVAR B[0] A[0] REF> <!SETVAR B[1] A[10] REF> <誤り>要素A[10]は存在しない <!SETVAR B[2] 200 REF> <誤り>200は変数でもリスト要素でもない |
(3) REFの用途:構造データ
<!SETVAR 'PERSON1{Name}' "山田"> <!SETVAR 'PERSON1{Age}' 25> <!SETVAR 'PERSON2{Name}' "田中"> <!SETVAR 'PERSON2{Age}' 23> <!SETVAR 'PERSON1{Wife}' PERSON2 REF> <!SETVAR 'PERSON2{Husband}' PERSON1 REF> |
(4) REFの用途:効率の問題
<!DO "SELECT * FROM SCM.TBL1" RESULT=r> rに大量のデータが入っている <!SETVAR a r> aにr全体のデータがコピーされる 時間と大量のメモリが消費される <!SETVAR b r REF> bはrと同じデータを指す 時間もメモリもほとんど消費しない |
目次
索引
![]() ![]() |