Personal tools
You are here: Home サポート PASSCELL Personal 入門用マニュアル 4. 計算や処理を行わせる 4. 計算や処理を行わせる: 7) 高度なスクリプト記述 (4) refer() 関数:親子関係に無いノードを参照
Document Actions

4. 計算や処理を行わせる: 7) 高度なスクリプト記述 (4) refer() 関数:親子関係に無いノードを参照

← [4. 計算や処理を行わせる: 7) 高度なスクリプト記述 (3) 修飾子 ノードのNameプロパティ+".":複数の親ノードの識別]へ戻る | ↑ [目次]へ戻る | [4. 計算や処理を行わせる: 7) 高度なスクリプト記述 (5) 日付・時刻の処理]へ進む →


■このページで説明している内容

e) 親子関係に無いノードを参照するrefer() 関数



e) 親子関係に無いノードを参照するrefer() 関数

ここまでは、修飾子によって親子関係にあるノードを特定し、そのノードが持つエレメントを参照可能にしていました。しかし、親子関係に無いノードのエレメントの値を参照したい場合には、どのようにすればよいでしょうか?

修飾子ではありませんが、関数 refer() を利用することで、親子関係にあるかどうかに関係なく、任意のノードのエレメントを参照することができます。
実際の例を見てみましょう。

このプロジェクトには、お互いに接続していない2つのノードツリーがあります。

図4.7.e-1.jpg

(図4.7.e-1) 「仕様」ノードの定義

一つ目のツリーは、

    [手順1] - [手順2] - [手順3]

もう一方のツリーは、

    [仕様] - [詳細]

というノードからそれぞれ構成されています。



図4.7.e-2.jpg

(図4.7.e-2) 「詳細」ノードの定義



このように「手順3」ノードから、接続していない「仕様」ノードや「詳細」ノードのエレメントを参照するためには、以下のように記述します。

    数量=refer("仕様", "数量");
    加工寸法=refer("仕様.詳細","寸法C");


図4.7.e-3.jpg

(図4.7.e-3) 「手順3」ノードの定義

refer()関数は2つの引数を取ります。

最初の引数は、ノードのフルネーム
2番目の引数は、参照したいエレメント名
です。

この例では、
    ・「仕様」ノードからはエレメント"数量"の値を
    ・「詳細」ノードからはエレメント"寸法C"の値を
それぞれ取得しています。



← [4. 計算や処理を行わせる: 7) 高度なスクリプト記述 (3) 修飾子 ノードのNameプロパティ+".":複数の親ノードの識別]へ戻る | ↑ [目次]へ戻る | [4. 計算や処理を行わせる: 7) 高度なスクリプト記述 (5) 日付・時刻の処理]へ進む →



Powered by Plone, the Open Source Content Management System

This site conforms to the following standards: