Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

Anchortoptop

 

Yellowfinには、そのまま利用できる数多くのパラメーター実装があります。これらは、列挙型InputTypeで定義されます。以下に、利用可能なすべてのタイプとそのオプションを、コードサンプルとともに示します。

 

...

テキスト入力ボックスです。

Image Removed

...

  • textClassName:HTML入力要素に追加するclassを指定します。
  • style:HTML入力要素に追加されたCSSスタイルです。
  • numericOnly:テキストボックスに数字のみを許可する場合は「true」に設定します。
  • numericType:小数値を許可しない場合は「INTEGER」に設定します。numericOnlyは、trueにしなくてはいけません。
  • unsignedOnly:負の値を許可しない場合は「true」に設定します。numericOnlyがtrueに設定されている時のみ機能します。
  • thousandSeparatorOn:numericOnlyがtrueに設定されている時に、千単位区切り文字を表示する場合に「true」に設定します。
  • decimalPlaces:numericOnlyがtrue、numericTypeがINTEGERではない時の小数点以下桁数です。
  • minValue/maxValue:入力可能な最小値と最大値です。
  • maxStringLength:numericOnlyがfalseに設定されている時の最大入力長です。
  • readonly:HTML入力要素の「readOnly」プロパティを設定します。
  • disabled:trueに設定することで、HTML入力要素の「disabled」プロパティを設定します。
  • name:HTML入力要素の「name」プロパティを設定します。
  • tooltip:HTML入力要素の「title」プロパティを設定します。
  • disableBrowserAutoComplete:そのフィールドのブラウザのオートコンプリートを無効にします。
  • placeholder:値が入力されるまで表示されるプレースホルダーテキストです。
  • placeholderCss:プレースホルダーのスタイルです。
  • placeholderAccountForScroll:プレースホルダーからスクロール位置を差し引く場合は「true」に設定します。
  • suffix:実際の値の最後に追加されて表示されるべき接尾辞の表示です。
  • width:カスタマイズした幅でこちらの入力値の幅の値を上書きます。注意:これはcssプロパティのため、好きな表示単位を定義することができます。単位のデフォルトはpxではありません。

...

Code Block
themeEclipse
languagejava
ParameterImpl parameter = new ParameterImpl();
parameter.setProperty("DECIMALS");
parameter.setInputType(InputType.TEXTBOX);
parameter.setName("Decimal Places");
parameter.setMinAllowed(0);
parameter.addViewOption("numericOnly", true);
parameter.addViewOption("numericType", "INTEGER");

...

ドロップダウンリストです。値と説明は、こちらのパラメーターに追加された可能な値から取得されます。

Image Removed

...

  • width:カスタマイズした幅でこちらの入力値の幅の値を上書きます。注意:これはcssプロパティのため、好きな表示単位を定義することができます。単位のデフォルトはpxではありません。
  • style:HTML入力要素に追加されたCSSスタイルです。

  • size:ドロップダウンリストのサイズ属性を設定します。デフォルトは「1」です。これを高い数値に設定することで、スクロール可能な一覧になります。

  • multiSelect:スクロール可能な複数選択一覧にする場合は「truen」に設定します。

  • selectAllAvailable:すべての選択肢を選択、および選択解除する制御を追加します。こちらを使用するには、multiSelectをtrueに設定します。

  • multiJoinString:こちらを「|」に設定した場合、複数選択で選択されたすべての値は、間にひとつの文字として「|」を挟み結合されます。

  • disabled:入力を無効にする場合は「true」に設定します。

  • showOptionTitle:選択肢のツールチップを表示する場合は「true」に設定します。

...

Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.setProperty("DATE_FORMAT");
p.setName("Format");
p.setInputType(InputType.SELECT);
  
List<CustomValue<?>> optValues = new ArrayList<>();
optValues.add(new CustomValue(""," - - Select - - ");
optValues.add(new CustomValue("YEAR","Year"));
optValues.add(new CustomValue("YEAR_START","Year Start Date"));
optValues.add(new CustomValue("YEAR_END","Year End Date"));
  
p.setPossibleValues(optValues);

...

ラジオボタンのグループです。各選択肢にラジオボタンを持ちます。

Image Removed

...

  • alignment:「right」に設定すると、ラベルの右側にラジオボタンが表示します。デフォルトは「left」です。
  • fullDescription:各選択肢に説明を表示する場合は「true」に設定します。
  • descriptions:これは形式のオブジェクトである必要があります:{value: ‘description’ }

    例:

    Code Block
    themeEclipse
    languagejava
    {
    "LEFT": "Align Left",
    "RIGHT": "Align Right",
    "MIDDLE": "Centre Align"
    }

    これは、fullDescriptionがtrueに設定されている場合にのみ機能します。

     

  • textAlign:text-align CSSプロパティを設定します。これはalignmentプロパティが設定されている場合にのみ適用されます。
  • valign:この要素のvalign CSSプロパティを指定します。
  • radioColour:赤いラジオボタンを表示する場合は、こちらを「red」に設定します。これはラベルには反映されません。
  • disabled:入力を無効にする場合は「true」に設定します。
  • tooltip:選択肢にツールチップを表示する場合「true」に設定します。
  • maxRows:利用可能な選択肢は、この複数ロウ(行)に表示されます。

...

Code Block
themeEclipse
languagejava
ParameterImpl parameter = new ParameterImpl();
parameter.setProperty("STARTING_POINT");
parameter.setInputType(InputType.RADIO);
parameter.addPossibleValue("LEFT", "Left");
parameter.addPossibleValue("RIGHT", "Right");
parameter.addPossibleValue("MIDDLE", "Middle");

...

日付/タイムスタンプ入力要素です。これらはほぼ同様で、同一のビューオプションを持ちます。

キーは入力値を保存するsetPropertyを使用して設定します。

形式:

静的日付は「yyyy-MM-dd」として保存されます。

静的タイムスタンプは「yyyy-MM-dd hh:mm:ss」として保存されます。

 

動的日付:

動的日付の場合、単位はビューオプション「unitCodeProperty」で指定されたキーに対して保存されます。

動的日付値は、「STSDATE+」として保存されます。例えば、「property=STARTDATE」、「unitCodeProperty=STARTUNIT」の場合、

Today -1 Yearは、以下のように保存されます。

STARTDATE: SYSDATE-1

STARTUNIT: YEAR

Image Removed

...

Anchor
top
top

 

Yellowfinには、そのまま利用できる数多くのパラメーター実装があります。これらは、列挙型InputTypeで定義されます。以下に、利用可能なすべてのタイプとそのオプションを、コードサンプルとともに示します。

 

FieldObject("3", "Field 3", textDataTypeFieldObjectfield4FieldObject("4", "Field 4", numericDataType//ThisisametricFieldObjectfield5 FieldObject5, "Field 5textDataType FieldObject field6 FieldObject6, "Field 6numericDataType//Thisisametric foListB.add(field3); foListB.add(field4); foListB.add(field5); foListB.add(field6); p.addViewOption("fieldListA", foListAaddViewOption("fieldListB", foListB); //Input 1addViewOption("titleA", "Input 1"); //Input 2titleB"Input 2"
タイプ説明オプションコードサンプル
TEXTBOX

テキスト入力ボックスです。

Image Added

  • textClassName:HTML入力要素に追加するclassを指定します。
  • style:HTML入力要素に追加されたCSSスタイルです。
  • numericOnly:テキストボックスに数字のみを許可する場合は「true」に設定します。
  • numericType:小数値を許可しない場合は「INTEGER」に設定します。numericOnlyを、trueに設定する必要があります。
  • unsignedOnly:負の値を許可しない場合は「true」に設定します。numericOnlyがtrueに設定されている時のみ機能します。
  • thousandSeparatorOn:numericOnlyがtrueに設定されている時に、千単位区切り文字を表示する場合は「true」に設定します。
  • decimalPlaces:numericOnlyがtrue、numericTypeがINTEGERではない時の小数点以下桁数です。
  • minValue/maxValue:入力可能な最小値と最大値です。
  • maxStringLength:numericOnlyがfalseに設定されている時の最大入力長です。
  • readonly:HTML入力要素の「readOnly」プロパティを設定します。
  • disabled:trueに設定することで、HTML入力要素の「disabled」プロパティを設定します。
  • name:HTML入力要素の「name」プロパティを設定します。
  • tooltip:HTML入力要素の「title」プロパティを設定します。
  • disableBrowserAutoComplete:そのフィールドのブラウザのオートコンプリートを無効にします。
  • placeholder:値が入力されるまで表示されるプレースホルダーテキストです。
  • placeholderCss:プレースホルダーのスタイルです。
  • placeholderAccountForScroll:プレースホルダーからスクロール位置を差し引く場合は「true」に設定します。
  • suffix:実際の値の最後に付加されて表示されるべき接尾辞の表示です。
  • width:カスタマイズした幅でこちらの入力値の幅の値を上書きます。注意:これはcssプロパティのため、好きな表示単位を定義することができます。単位のデフォルトはpxではありません。
Code Block
themeEclipse
languagejava
ParameterImpl parameter = new ParameterImpl();
parameter.setProperty("DECIMALS");
parameter.setInputType(InputType.TEXTBOX);
parameter.setName("Decimal Places");
parameter.setMinAllowed(0);
parameter.addViewOption("numericOnly", true);
parameter.addViewOption("numericType", "INTEGER");
SELECT

ドロップダウンリストです。値と説明は、こちらのパラメーターに追加された可能な値から取得されます。

Image Added

  • width:カスタマイズした幅でこちらの入力値の幅の値を上書きます。注意:これはcssプロパティのため、好きな表示単位で記述することができます。単位のデフォルトはpxではありません。
  • style:HTML入力要素に追加されたCSSスタイルです。

  • size:ドロップダウンリストのサイズ属性を設定します。デフォルトは「1」です。これを高い数値に設定することで、スクロール可能な一覧になります。

  • multiSelect:スクロール可能な複数選択一覧にする場合は「true」に設定します。

  • selectAllAvailable:すべての選択肢を選択、および選択解除する制御を追加します。こちらを使用するには、multiSelectをtrueに設定します。

  • multiJoinString:こちらを「|」に設定した場合、複数選択で選択されたすべての値は、間にひとつの文字として「|」を挟み結合されます。

  • disabled:入力を無効にする場合は「true」に設定します。

  • showOptionTitle:選択肢にツールチップを表示する場合は「true」に設定します。

Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.setProperty("DATE_FORMAT");
p.setName("Format");
p.setInputType(InputType.SELECT);
  
List<CustomValue<?>> optValues = new ArrayList<>();
optValues.add(new CustomValue(""," - - Select - - ");
optValues.add(new CustomValue("YEAR","Year"));
optValues.add(new CustomValue("YEAR_START","Year Start Date"));
optValues.add(new CustomValue("YEAR_END","Year End Date"));
  
p.setPossibleValues(optValues);
RADIO

ラジオボタンのグループです。各選択肢にラジオボタンを持ちます。

Image Added

  • alignment:こちらを「right」に設定することで、ラベルの右側にラジオボタンを表示します。デフォルトは「left」です。
  • fullDescription:各選択肢に説明を表示する場合は「true」に設定します。
  • descriptions:これは形式のオブジェクトである必要があります:{value: ‘description’ }

    例:

    Code Block
    themeEclipse
    languagejava
    {
    "LEFT": "Align Left",
    "RIGHT": "Align Right",
    "MIDDLE": "Centre Align"
    }

    これは、fullDescriptionがtrueに設定されている場合にのみ機能します。

  • textAlign:text-align CSSプロパティを設定します。これはalignmentプロパティが設定されている場合にのみ適用されます。
  • valign:この要素のvalign CSSプロパティを指定します。
  • radioColour:赤いラジオボタンを表示する場合は、こちらを「red」に設定します。これはラベルには反映されません。
  • disabled:入力を無効にする場合は「true」に設定します。
  • tooltip:選択肢にツールチップを表示する場合は「true」に設定します。
  • maxRows:利用可能な選択肢は、この多数のロウ(行)に表示されます。
Code Block
themeEclipse
languagejava
ParameterImpl parameter = new ParameterImpl();
parameter.setProperty("STARTING_POINT");
parameter.setInputType(InputType.RADIO);
parameter.addPossibleValue("LEFT", "Left");
parameter.addPossibleValue("RIGHT", "Right");
parameter.addPossibleValue("MIDDLE", "Middle");
DATE, TIMESTAMP

日付/タイムスタンプ入力要素です。これらはほぼ同様で、同一のビューオプションを持ちます。

setPropertyを使用するキーセットは、入力値を保存します。

形式:

  • 静的日付は「yyyy-MM-dd」として保存されます。
  • 静的タイムスタンプは「yyyy-MM-dd hh:mm:ss」として保存されます。

 

動的日付:

動的日付の場合、単位はビューオプション「unitCodeProperty」で指定されたキーに対して保存されます。

動的日付値は、「SYSDATE+x」として保存されます。例えば、「property=STARTDATE」、「unitCodeProperty=STARTUNIT」の場合、

Today -1 Yearは、以下のように保存されます。

STARTDATE: SYSDATE-1

STARTUNIT: YEAR

Image Added

  • useCurrentDate:動的日付を使用する場合は「true」に設定します。これは、特定の日付/タイムスタンプ使用するよう切り替えることのできるトグルを表示します。
  • unitCodeProperty:動的日付の場合、選択された日付単位を識別するために使用します。
  • width:テキストボックスのデフォルト幅を上書きます。
  • disabled:入力を無効にする場合は「true」に設定します。
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.setProperty("STARTDATE");
p.addViewOption("useCurrentDate", "true");
p.addViewOption("unitCodeProperty", "STARTUNIT");
p.setInputType(InputType.DATE);
TIME

時間データ入力を検証するテキスト入力要素です。

有効な時間入力は、指定されたプロパティに対してhh:mm:ss(24時間)形式で保存されます。

このウィジェットにはスタイリングオプションがありません。

Image Added

  • showSeconds:秒を入力するテキストボックスを表示する場合は「true」に設定します。これはデフォルトで「false」です。
  • disabled:無効にするためには「true」に設定します。
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.setProperty("RUN_TIME");
p.setInputType(InputType.TIME);
CHECKBOX

ひとつ以上のYellowfinチェックボックスを表示します。

Image Added

  • alignment:こちらをright」に設定すると、ラベルの右側にチェックボックスを表示します。デフォルトは「left」です。
  • checkboxColour:赤いチェックボックスを表示する場合は、こちらを「red」に設定します。これはラベルには反映されません。
  • tooltip:選択肢にツールチップを表示する場合は「true」に設定します。
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.setInputType(InputType.CHECKBOX);
p.setProperty("INCLUDED_FIELDS");
p.setParameterClassName("included-fields");
p.addViewOption("tooltip", true);
 
p.addPossibleValue("field001", "PERSONID");
p.addPossibleValue("field002", "CAMPID");
p.addPossibleValue("field003", "INVOICEDAMOUNT");
BUTTON

標準的なYellowfinのボタンを表示します。

Image Added

  • text:ボタンに表示するテキストラベルです。
  • img:ボタンに表示するイメージです。「img」と「text」の両者を指定した場合、イメージのみが表示され、「テキスト」の値はボタンのツールチップとして使用されることに注意してください。イメージはURL、またはイメージタイプのBase64文字列になります。

data:<MIME Type>;base64, <base64 String>

  • activeImg:マウスオーバーした時にボタンに表示するイメージです。
  • imgCss:ボタンのイメージに適用するスタイルです(有効、または無効)。
  • style:ボタンの色です。「red」、「blue」、「redhover」、「grey」、「medgrey」、「darkgrey」のいずれかひとつになります。
  • flat:3D効果無しにボタンを表示する場合は「true」に設定します。
  • tooltip:ボタンにマウスオーバーした時のHTMLツールチップです。
  • css:ボタンに適用するスタイルです。
  • cssClass:ボタンに追加されるclassです。
  • width:ボタンの幅です。
  • height:ボタンの高さです。
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.setProperty("apply");
p.setInputType(InputType.BUTTON);
p.addViewOption("text", "Apply");
p.addViewOption("flat", true);
p.addViewOption("style", "blue");
p.addViewOption("width", "50px");
p.addViewOption("height", "40px");
STATIC

静的テキストのブロックを表示します。

Image Added

  • text:表示されるコンテンツです。
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.addViewOption("text", "This is some text");
p.setInputType(InputType.STATIC);
COLOURPICKER

標準的なYellowfinのカラーピッカーです。

Image Added

なし
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.setInputType(
InputType.COLOURPICKER);
SLIDERANDTEXT

どちら方法でも入力が可能な、リンクされたテキストボックス付きのスライダー入力です。

Image Added

  • maxValue:パラメーターのプロパティに対して保存されるスライダーの最大値です。デフォルトは「100」です。
  • textMaxValue:テキストボックスに入力可能な最大値です。
  • minValue:パラメーターのプロパティに対して保存されるスライダーの最小値です。デフォルトは「0」です。
  • textMinValue:テキストボックスに入力可能な最小値です。
  • sliderWidth:スライダー要素のデフォルト幅を上書きます。
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.setName("Group Size");
p.setProperty("size");
p.setInputType(InputType.SLIDERANDTEXT);
p.addViewOption("textMaxValue", "20");
p.addViewOption("maxValue", "20");
p.setDefaultValue(5);
TOGGLE

On/Offトグルスライダーを表示します。

Image Added

  • onValue:トグルスライダーが有効の場合に保存する値です。デフォルトは「true」です。
  • offValue:トグルスライダーが無効の場合に保存する値です。デフォルトは「false」です。
  • disabled:無効にする場合は「true」に設定します。
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.setProperty("FIRST_ROW_HEADER");
p.setName("First row contains unique titles");
p.setDefaultValue(true);
p.setInputType(InputType.TOGGLE);
FIELDMATCHDROPDOWN

お互いに一致するFieldObject(詳細は、ヘルパーオブジェクト項目を参照)の2つの一覧を受け付けます。ひとつ以上の一致を含めることができます。結果の関係は、以下のような配列で返されます。

Code Block
themeEclipse
languagejava
{
  'from': fieldA.id,
  'to': fieldB.id
}

Image Added

  • fieldListA:フィールドの最初の一覧です。
  • fieldListB:フィールドの二番目の一覧です。
  • titleA:フィールド一覧Aのタイトルです。
  • titleB:フィールド一覧Bのタイトルです。
  • titleClassA:フィールド一覧Aのタイトルに形式を設定するオプションCSS classです。
  • titleClassB:上記と同様ですが、フィールド一覧Bのタイトルに適用します。
  • viewOptionsA:ドロップダウンリストAに渡されるオプションです。
  • viewOptionsB:ドロップダウンリストBに渡されるオプションです。
Code Block
ParameterImpl p = new ParameterImpl();
p.setProperty("fieldMatchProperty");
p.setList(true); //List of matches
ListOptions lo = new ListOptions();
lo.setAddButtonText("Match More");
p.setListOptions(lo);
  
FieldObjectDataType textType = FieldObjectDataType.TEXT;
FieldObjectDataType numericType = FieldObjectDataType.NUMERIC;
 
// LIST A
List<FieldObject> fieldListA = new LinkedList<>();
FieldObject field1 = new FieldObject("1", "", "Field 1", textType);
FieldObject field2 = new FieldObject("2", "", "Field 2", numericType);
fieldListA.add(field1);
fieldListA.add(field2);
 
// LIST B
List<FieldObject> fieldListB = new LinkedList<>();
FieldObject field3 = new FieldObject("3", "", "Field 3", textType);
FieldObject field4 = new FieldObject("4", "", "Field 4", numericType);
FieldObject field5 = new FieldObject("5", "", "Field 5", textType);
FieldObject field6 = new FieldObject("6", "", "Field 6", numericType);
fieldListB.add(field3);
fieldListB.add(field4);
fieldListB.add(field5);
fieldListB.add(field6);
 
// Add the lists to the Match widget
p.addViewOption("fieldListA", fieldListA);
p.addViewOption("fieldListB", fieldListB);
  
p.addViewOption("titleA", "Left Field");
p.addViewOption("titleB", "Right Field");
  
p.setInputType(InputType.FIELDMATCHDROPDOWN);
FIELDMATCH

これは、FIELDMATCHDROPDOWNと同様の機能を提供します。ドラッグをすることでフィールドを一致させます。フィールドはデータ型により一致し、色でコーディングされています。一致しないフィールドはフラグ付けされます。

一方のフィールドは、「除外」ゾーンにドラッグすることで除外することができます。結果の関係は、FIELDMATCHDROPDOWNと同様の形式で返されます。

 

ひとつのカラム(列)からフィールドが除外された場合、そのロウ(行)に一致するオブジェクトは、対応する「from」や「to」属性を持たないことになります。例えば、以下の画像のADDRESSIDのオブジェクトは、下記のようになります。

Code Block
themeEclipse
languagejava
{ 
  'to': ADDRESSID.id
}

Image Added

 

  • fieldListA:フィールドの最初の一覧です。
  • fieldListB:フィールドの二番目の一覧です。
  • titleA:フィールド一覧Aのタイトルです。
  • titleB:フィールド一覧Bのタイトルです。
  • titleClassA:フィールド一覧Aのタイトルに形式を設定するオプションCSS classです。
  • titleClassB:上記と同様ですが、フィールド一覧Bのタイトルに適用します。
  • viewOptionsA:ドロップダウンリストAに渡されるオプションです。
  • viewOptionsB:ドロップダウンリストBに渡されるオプションです。
  • includeUnmatched:一方の一覧からのフィールドが、他方の一覧からのどのフィールドとも一致しない場合に、エラーを表示しません。デフォルトは「false」です。
  • roughMatch:日付とテキストフィールドの一致を許可します。デフォルトは「false」です。
  • imageMap:マップ内の様々なイメージを指定します。利用可能なキーは、以下の通りです。
  • primary:プライマリーキー形式のフィールド用です。
  • dragHandle:フィールドをドラッグするためのハンドルです。
  • error:フィールド一致エラーイメージです。
  • forceAllConnections:接続が返されている時にtrueに設定すると、警告がある場合、部分的に接続された一覧の代わりに空の一覧が返されます。デフォルトは「false」です。
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl(();
p.setInputType(InputType.FIELDMATCH);
p.setProperty("STARTDATEUNION_FIELD_MATCH");
p.addViewOption("useCurrentDateincludeUnmatched", "true");
p.addViewOption("unitCodeProperty",
"STARTUNIT"); p.setInputType(InputType.DATE);
TIME

時間データ入力を検証するテキスト入力要素です。

有効な時間入力は、hh:mm:ss形式(24時間)の指定されたプロパティに対して保存されます。

このウィジェットにはスタイリングオプションがありません。

Image Removed

  • showSeconds:秒を入力するテキストボックスを表示する場合は「true」に設定します。これはデフォルトで「false」です。
  • disabled:無効にするためには「true」に設定します。
Code Block
themeEclipse
languagejava
ParameterImpl p
=//Match new ParameterImpl();exact types
p.setPropertyaddViewOption("RUN_TIME");
p.setInputType(InputType.TIME);
CHECKBOX

ひとつ以上のYellowfinチェックボックスを表示します。

Image Removed

  • alignment:「right」に設定すると、ラベルの右側にチェックボックスを表示します。デフォルトは「left」です。
  • checkboxColour:赤いチェックボックスを表示する場合は、こちらを「red」に設定します。これはラベルには反映されません。
  • tooltip:選択肢にツールチップを表示する場合「true」に設定します。
Code Block
themeEclipse
languagejava
ParameterImpl proughMatch", false);
  
List<FieldObject> foListA = new ArrayList<>();
List<FieldObject> foListB = new ParameterImplArrayList<>();
p.setInputType(InputType.CHECKBOX);
p.setProperty("INCLUDED_FIELDS");
p.setParameterClassName("included-fields");
p.addViewOption("tooltip", true);
 
p.addPossibleValue("field001", "PERSONID");
p.addPossibleValue("field002", "CAMPID");
p.addPossibleValue("field003", "INVOICEDAMOUNT");
BUTTON

標準的なYellowfinのボタンを表示します。

Image Removed

  • text:ボタンに表示するテキストラベルです。
  • img:ボタンに表示するイメージです。「img」と「text」の両者を指定した場合、イメージのみが表示され、「テキスト」の値はボタンのツールチップとして使用されることに注意してください。イメージはURL、またはイメージタイプのBase64文字列になります。

data:<MIME Type>;base64, <base64 String>

  • activeImg:マウスオーバーした時にボタンに表示するイメージです。
  • imgCss:ボタンのイメージに適用するスタイルです(有効、または無効)。
  • style:ボタンの色です。「red」、「blue」、「redhover」、「grey」、「medgrey」、「darkgrey」のいずれかひとつになります。
  • flat:3D効果無しにボタンを表示する場合は「true」に設定します。
  • tooltip:ボタンにマウスオーバーした時のHTMLツールチップです。
  • css:ボタンに適用するスタイルです。
  • cssClass:ボタンに追加されるclassです。
  • width:ボタンの幅です。
  • height:ボタンの高さです。
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.setProperty("apply");
p.setInputType(InputType.BUTTON);
p.addViewOption("text", "Apply");
p.addViewOption("flat", true);
p.addViewOption("style", "blue");
p.addViewOption("width", "50px");
p.addViewOption("height", "40px");
STATIC

静的テキストのブロックを表示します。

Image Removed

text:表示されるコンテンツです。
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.addViewOption("text", "This is some text");
p.setInputType(InputType.STATIC);
COLOURPICKER

標準的なYellowfinのカラーピッカーです。

Image Removed

なし
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.setInputType(
InputType.COLOURPICKER);
SLIDERANDTEXT

どちら方法でも入力が可能なリンクテキストボックス付きのスライダー入力です。

Image Removed

  • maxValue:パラメーターのプロパティに対して保存されるスライダーの最大値です。デフォルトは「100」です。
  • textMaxValue:テキストボックスに入力可能な最大値です。
  • minValue:パラメーターのプロパティに対して保存されるスライダーの最小値です。デフォルトは「0」です。
  • textMinValue;テキストボックスに入力可能な最小値です。
  • sliderWidth:スライダー要素のデフォルト幅を上書きます。
Code Block
themeEclipse
languagejava
ParameterImpl p = new ParameterImpl();
p.setName("Group Size");
p.setProperty("size");
p.setInputType(InputType.SLIDERANDTEXT);
p.addViewOption("textMaxValue", "20");
p.addViewOption("maxValue", "20");
p.setDefaultValue(5);
TOGGLE

On/Offトグルスライダーを表示します。

Image Removed

  • onValue:トグルスライダーが有効の場合に保存する値です。デフォルトは「true」です。
  • offValue:トグルスライダーが無効の場合に保存する値です。デフォルトは「false」です。
  • disabled:無効にする場合は「true」に設定します。
    
      
    FieldObjectDataType textDataType = FieldObjectDataType.TEXT;
    FieldObjectDataType numericDataType = FieldObjectDataType.NUMERIC;
      
    // LIST A
    FieldObject field1 = new FieldObject("1", "primary", "Field 1", textDataType); //Primary Key
    FieldObject field2 = new FieldObject("2", "", "Field 2", numericDataType);//This is a metric
      
    foListA.add(field1);
    foListA.add(field2);
     
    // LIST A
    FieldObject field3 = new FieldObject("3", "", "Field 3", textDataType);
    FieldObject field4 = new FieldObject("4", "", "Field 4", numericDataType);//This is a metric
    FieldObject field5 = new FieldObject("5", "", "Field 5", textDataType);
    FieldObject field6 = new FieldObject("6", "", "Field 6", numericDataType);//This is a metric
     
    foListB.add(field3);
    foListB.add(field4);
    foListB.add(field5);
    foListB.add(field6);
      
    p.addViewOption("fieldListA", foListA);
    p.addViewOption("fieldListB", foListB);
      
    //Input 1
    p.addViewOption("titleA", "Input 1");
      
    //Input 2
    p.addViewOption("titleB", "Input 2");

     

    上記のコードは、以下を生成します。

    Image Added

    AUTOCOMPLETEBOX

    検索可能なドロップダウンリストを表示します。

    Image Added

    検索可能なアイテムは、パラメーターの「possibleValues」として追加されたCustomValueオブジェクトである必要があります。

    • initialValue:入力の初期値です。これは、CustomValueオブジェクトでなくてはならず、設定は以下のようになります。
      value = 検索文字列
      description = 検索文字列
    • width:ビューの幅を設定します。
    • maxDisplayItems:一覧の下に表示される最大アイテム数です。デフォルトは「4」です。
    • isDataGrouped:データはグループを持つことができます。
    • resultListStyle:結果一覧を含むHTML要素に指定されたclassを追加します。
    Code Block
    themeEclipse
    languagejava
    ParameterImpl p = new ParameterImpl();
    p.setProperty("TABLETEXTBOX");
    p.setName("New Table Name");
    p.setInputType(InputType.AUTOCOMPLETETEXTBOX);
    p.addViewOption("width", 200);
    p.setProperty("FIRST_ROW_HEADER
      
    CustomValue<String> initialValue = new CustomValue<String>("all_objects", "all_objects");
    p.setNameaddViewOption("First row contains unique titles");
    p.setDefaultValue(true);
    p.setInputType(InputType.TOGGLE);
    FIELDMATCHDROPDOWN

    お互いに一致するFieldObject(詳細は、ヘルパーオブジェクト項目を参照)の2つの一覧を受け付けます。ひとつ以上の一致を含めることができます。結果の関係は、以下のような配列で返されます。

    Code Block
    themeEclipse
    languagejava
    {
      'from': fieldA.id,
      'to': fieldB.id
    }

    Image Removed

    • fieldListA:フィールドの最初の一覧です。
    • fieldListB:フィールドの二番目の一覧です。
    • titleA:フィールド一覧Aのタイトルです。
    • titleB:フィールド一覧Bのタイトルです。
    • titleClassA:フィールド一覧Aのタイトルに形式を設定するオプションCSS classです。
    • titleClassB:上記と同様ですが、フィールド一覧Bのタイトルに適用されます。
    • viewOptionsA:ドロップダウンリストAに渡されるオプションです。
    • viewOptionsB:ドロップダウンリストBに渡されるオプションです。
    Code Block
    ParameterImpl p = new ParameterImpl();
    p.setProperty("fieldMatchProperty");
    p.setList(true); //List of matches
    ListOptions lo = new ListOptions();
    lo.setAddButtonText("Match More");
    p.setListOptions(lo);
      
    FieldObjectDataType textType = FieldObjectDataType.TEXT;
    FieldObjectDataType numericType = FieldObjectDataType.NUMERIC;
     
    // LIST A
    List<FieldObject> fieldListA = new LinkedList<>();
    FieldObject field1 = new FieldObject("1", "", "Field 1", textType);
    FieldObject field2 = new FieldObject("2", "", "Field 2", numericType);
    fieldListA.add(field1);
    fieldListA.add(field2);
     
    // LIST B
    List<FieldObject> fieldListB = new LinkedList<>();
    FieldObject field3 = new FieldObject("3", "", "Field 3", textType);
    FieldObject field4 = new FieldObject("4", "", "Field 4", numericType);
    FieldObject field5 = new FieldObject("5", "", "Field 5", textType);
    FieldObject field6 = new FieldObject("6", "", "Field 6", numericType);
    fieldListB.add(field3);
    fieldListB.add(field4);
    fieldListB.add(field5);
    fieldListB.add(field6);
     
    // Add the lists to the Match widget
    p.addViewOption("fieldListA", fieldListA);
    p.addViewOption("fieldListB", fieldListB);
      
    p.addViewOption("titleA", "Left Field"initialValue", initialValue);
      
    List<CustomValue<?>> possibleValues = new ArrayList<>();
    possibleValues.add(new CustomValue<String>("all_columns", "all_columns"));
    possibleValues.add(new CustomValue<String>("all_parameters", "all_parameters"));
    possibleValues.add(new CustomValue<String>("all_sql_modules", "all_sql_modules"));
    possibleValues.add(new CustomValue<String>("all_tables", "all_tables"));
      
    p.setPossibleValues(possibleValues);
      
    p.addViewOption("width", 200);
    p.addViewOption("resultListStyle", "outputStepAutoCompleteList");
    SHOWADVANCED

    他のユーザーインターフェイス要素を表示/非表示する展開可能なウィジェットです。これは、ParameterDisplayRulesとともに使用しなくてはいけません。

    Image Added

    Image Added

    • showText:設定を展開するリンクのテキストです。
    • hideText:展開を元に戻すリンクのテキストです。
    Code Block
    themeEclipse
    languagejava
    Boolean value = true;
    Boolean negative = false;
      
    // SHOW_ADVANCED_SETTINGS == true
    ParameterDisplayRule advancedSettingsDisplayRule = new ParameterDisplayRule("AND", "SHOW_ADVANCED_SETTINGS", value, negative);
      
    ParameterImpl p = new ParameterImpl();
    p.setProperty("ALL_ROWS");
    p.setName("All Rows");
    p.setDefaultValue(true);
    p.setInputType(InputType.TOGGLE);
    p.addDisplayRule(advancedSettingsDisplayRule);
    paramList.add(p);
     
    p = new ParameterImpl();
    p.setProperty("SEPARATOR");
    p.setName("Separator");
    p.setInputType(InputType.TEXTBOX);
    p.addViewOption("width", "40px");
    p.addDisplayRule(advancedSettingsDisplayRule);
    paramList.add(p);
    p = new ParameterImpl();
    p.setProperty("SHOW_ADVANCED_SETTINGS");
    p.setInputType(InputType.SHOWADVANCED);
      
    p.setDefaultValue(false);
    p.addViewOption("showText", "Advanced Settings &darr;");
    p.addViewOption("hideText", "Less &uarr;");
    p.addViewOption("width", "150px");
    paramList.add(p);
    PAIRCOLUMNS

    対になったデータを2つのカラム(列)に表示します。ロウ(行)を削除する制御があります。

     

    パラメーターデータが変更される度に、カラム(列)は新しいデータを再表示します。データは、形式のオブジェクトを持つ配列である必要があります。

    Code Block
    themeEclipse
    languagejava
    { 
      column1Key: dataRow1Col1
      column2Key: dataRow2Col2
    }

    Image Added

     

    • column1Header:最初のカラム(列)の見出しです。
    • column2Header:二番目のカラム(列)の見出しです。
    • column1Key:最初のカラム(列)のデータを識別するキーです。
    • column2Key:二番目のカラム(列)のデータを識別するキーです。
    Code Block
    themeEclipse
    languagejava
    ParameterImpl p = new ParameterImpl();
    p.setProperty("RULES_PARAM");
    p.setName("Rules");
    p.setInputType(InputType.PAIRCOLUMNS);
    p.addViewOption("titleBcolumn1Header", "Right FieldFind");
      
    p.setInputType(InputType.FIELDMATCHDROPDOWN);
    FIELDMATCH

    これは、FIELDMATCHDROPDOWNと同様の機能を提供します。ドラッグをすることでフィールドを一致させます。フィールドはデータ型により一致し、色でコーディングされています。一致しないフィールドはフラグ付けされます。

    一方のフィールドは、「除外」ゾーンにドラッグすることで除外することができます。結果の関係は、FIELDMATCHDROPDOWNと同様の形式で返されます。

     

    ひとつのカラム(列)からフィールドが除外された場合、そのロウ(行)に一致するオブジェクトは、対応する「from」や「to」属性を持たないことになります。例えば、以下の画像のADDRESSIDのオブジェクトは、下記のようになります。

    Code Block
    themeEclipse
    languagejava
    { 
      'to': ADDRESSID.id
    }

    Image Removed

    • fieldListA:フィールドの最初の一覧です。
    • fieldListB:フィールドの二番目の一覧です。
    • titleA:フィールド一覧Aのタイトルです。
    • titleB:フィールド一覧Bのタイトルです。
    • titleClassA:フィールド一覧Aのタイトルに形式を設定するオプションCSS classです。
    • titleClassB:上記と同様ですが、フィールド一覧Bのタイトルに適用されます。
    • viewOptionsA:ドロップダウンリストAに渡されるオプションです。
    • viewOptionsB:ドロップダウンリストBに渡されるオプションです。
    • includeUnmatched:一方の一覧からのフィールドが、他方の一覧からのフィールドと一致しない場合に、エラーを表示しません。デフォルトは「false」です。
    • roughMatch:日付とテキストフィールドの一致を許可します。デフォルトは「false」です。
    • imageMap:マップ内の様々なイメージを指定します。利用可能なキーは、以下の通りです。
    • primary:プライマリーキー形式のフィールド用です。
    • dragHandle:フィールドをドラッグするためのハンドルです。
    • error:フィールド一致エラーイメージです。
    • forceAllConnections:接続が返されている時にtrueに設定すると、警告がある場合、部分的に接続された一覧の代わりに空の一覧が返されます。デフォルトは「false」です。
    Code Block
    themeEclipse
    languagejava
    ParameterImpl paddViewOption("column2Header", "Replace");
    p.addViewOption("column1Key", "FIND_PARAMETER");
    p.addViewOption("column2Key", "REPLACE_PARAMETER");
     
    List<Map<String, String>> defaults = new ParameterImplArrayList<>();
    p.setInputType(InputType.FIELDMATCH);
    p.setProperty("UNION_FIELD_MATCH");
    p.addViewOption("includeUnmatched", true);
      
    //Match exact types
    p.addViewOption("roughMatch", false);
      
    List<FieldObject> foListA = new ArrayList<>();
    List<FieldObject> foListB
      
    Map<String, String> row = new HashMap<>();
    row.put("FIND_PARAMETER", "Farenheit");
    row.put("REPLACE_PARAMETER", "Celsius");
    defaults.add(row);
      
    row = new ArrayList<>HashMap<>();
    row.put("FIND_PARAMETER", "miles");
    
    FieldObjectDataType textDataType = FieldObjectDataType.TEXT;
    FieldObjectDataType numericDataType = FieldObjectDataType.NUMERIC;
      
    // LIST A
    FieldObject field1row.put("REPLACE_PARAMETER", "km");
    defaults.add(row);
      
    p.setDefaultValue(defaults);
    DELIMITEREXAMPLE

    区切り文字を適用して一行のデータを分割する場合の出力例を表示します。

    Image Added

    • text:区切り文字データを持つロウ(行)のサンプルです。
    Code Block
    themeEclipse
    languagejava
    ParameterImpl p = new FieldObject("1", "primary", "Field 1", textDataType); //Primary Key
    FieldObject field2 = new FieldObject("2ParameterImpl();
    p.setProperty("DELIMITER");
    p.addViewOption("text", "",7 "Field 2", numericDataType);//This is a metric
      
    foListA.add(field1);
    foListA.add(field2);
     
    // LIST A
    FieldObject field3Rosella Avenue;Boronia;3155;Victoria");
    p.setInputType(InputType.DELIMITEREXAMPLE);
    INPUTLIST 
    • inputOptions:ビューのコレクションを自動的に表示するInputListViewを許可するオプションの一覧です。各入力オプションは、以下を持ちます。
      • controlType:そのビューの制御タイプです。(TEXTBOX、TOGGLE、CHECKBOX、SELECTなど)
      • viewOptuons:その特定の制御のビューオプションです。

     

    Code Block
    themeEclipse
    languagejava
    Map<String, String> viewOptions1 = new 
    HashMap<>();
    viewOptions1.put("property", "
    FIND");
    Map<String, 
    String> 
    viewOptions2 = new 
    HashMap<>();
    viewOptions2.put("property", "
    REPLACE");
    
      
    
    
    Map<String, 
    Map<String, 
    String>> 
    inputOption1 = new
     HashMap<>();
    inputOption1.put("
    controlType", "TEXTBOX"
    );
    inputOption1.put("viewOptions", 
    viewOptions1);
    
     
    Map<String, Map<String, String>> inputOption2 = new
     HashMap<>();
    inputOption2.put("
    controlType", "TEXTBOX"
    );
    inputOption2.put("viewOptions", 
    viewOptions2);
    
     
     
    
    
    List<Map<String, Map<String, 
    String>> inputOptions = new ArrayList<>();
      
    ParameterImpl p = new ParameterImpl();
    p.
    setInputType(InputType.INPUTLIST);
    p.
    setProperty("FIND_AND_REPLACE_INPUTS");
    p.addViewOption("
    inputOptions", 
    inputOptions);

     

    ...

     

    ...

     

    ...

    特別な実装

    ...

    一般的に定義されるパラメーターの他に、いくつかの特別な実装があります。以下にそれを示します。

    ...

     

    ...

    検索可能なアイテムは、パラメーターの「possibleValues」として追加されたCustomValueオブジェクトでなくてはいけません。
  • showText:設定を展開するリンクのテキストです。
  • hideText:展開を元に戻すリンクのテキストです。
    実装
    • initialValue:入力の初期値です。これは、CustomValueオブジェクトでなくてはならず、設定は以下のようになります。
      value = search string
      description = search string
    • width:ビューの幅を設定します。
    • maxDisplayItems:一覧の下に表示される最大アイテム数です。デフォルトは「4」です。
    • isDataGrouped:データはグループを持つことができます。
    • resultListStyle:結果一覧を含むHTML要素を指定されたclassに追加します。
    Code Block
    themeEclipse
    languagejava
    ParameterImpl p = new ParameterImpl();
    p.setProperty("TABLETEXTBOX");
    p.setName("New Table Name");
    p.setInputType(InputType.AUTOCOMPLETETEXTBOX);
    p.addViewOption("width", 200);
      
    CustomValue<String> initialValue = new CustomValue<String>("all_objects", "all_objects");
    p.addViewOption("initialValue", initialValue);
      
    List<CustomValue<?>> possibleValues = new ArrayList<>();
    possibleValues.add(new CustomValue<String>("all_columns", "all_columns"));
    possibleValues.add(new CustomValue<String>("all_parameters", "all_parameters"));
    possibleValues.add(new CustomValue<String>("all_sql_modules", "all_sql_modules"));
    possibleValues.add(new CustomValue<String>("all_tables", "all_tables"));
      
    p.setPossibleValues(possibleValues);
      
    p.addViewOption("width", 200);
    p.addViewOption("resultListStyle", "outputStepAutoCompleteList");
    SHOWADVANCED

    他のユーザーインターフェイス要素を表示/非表示する展開可能なウィジェットです。これは、ParameterDisplayRulesとともに使用しなくてはいけません。

    Image Removed

    Image Removed

    説明メソッドビューオプションコードサンプル
    FileUploaderParameter

    ファイルアップロード時のユーザーインターフェイスを生成するために使用します。アップロードされたファイルの削除もします。

    Image AddedImage Added

    1. public FileUploadParameter(String property、String fileType、String typeCode、String uploadEvent)

      propertyは、Yellowfinドキュメントストアに保存されているアップロードされたファイルの数値IDに関連する名前です。プロパティとファイルIDは、トランスフォーメーションステップの設定として保存することができます。
      fileTypeは、アップロードされるファイルの拡張子を定義します(csv、xmlなど)。すべてのファイルをアップロード可能にする場合は「*」を使用します。
      typeCodeは、Yellowfinドキュメントストアでファイルを分類する際に使用するファイルタイプコードを定義します。
      uploadEventは、アップロード完了時にパネルコレクションによりトリガーされるイベントです。これは、nullにすることができます。

    2. public void setUploadWidgetText(String text)
      ファイルアップロードウィジェットに表示されるテキストです。

    3. public voidsetUploadImageBase64(String base64, String imgType)
      アップロードウィジェットに表示されるBase64イメージを指定するために使用します。そのタイプもまた指定しなくてはいけません。

    4. public void setUploadImageHoverBase64(String base64, String imgType)
      マウスオーバーした時のウィジェットの見た目を指定するために使用します。

    • inputName:ファイル入力HTML要素の名前です。

    • showProcessingBar:ファイルがYellowfinリポジトリデータベースに保存されている時にバーを表示します。これはデフォルトで「true」です。

    Image Added


    • processingText:処理バーの上に表示されるテキストです。これは、showProcessingBarがtrueに設定されている時に使用することができます。

    • width:アップロードウィジェットの幅を設定します。デフォルトは「100%」です。

    • height:アップロードウィジェットの高さを設定します。デフォルトは「100%」です。

    • styleClass:アップロードウィジェットにCSS class名を追加します。

    Code Block
    themeEclipse
    languagejava
    FileUploadParameter p = new FileUploadParameter("UPLOAD_FILE_KEY", "*", "FILE", null);
    p.setParameterClassName("left-param");
    p.setUploadImageBase64(getBase64OffImage(), "image/svg+xml");
    p.setUploadImageHoverBase64(getBase64OnImage(), "image/svg+xml");
    p.setUploadWidgetText("Drag File Here");

    アップロードされたファイルは、以下を使用することで、データトランスフォーメーションステップからアクセスすることができます。

     

    Code Block
    themeEclipse
    languagejava
    byte[] rawData = this.getFile("UPLOAD_FILE_KEY");
    PasswordParameter

    パスワード項目のユーザーインターフェイスを生成するために使用します。項目に入力された文字はマスクされ、フレームワークにより暗号化/復号化することができます。データトランスフォーメーションで使用する際、現在の値が以前にステップオプションとして保存された値と異なる場合、Yellowfinは自動的に値を暗号化します。パラメーターを使用するコンポーネントは、使用前にパスワードを復号化することが期待されています。

    Image Added

    1. public PasswordParameter(String property, String value)
      propertyは、Yellowfinリポジトリデータベースに保存されるパスワードに関連する名前です。
      valueは、暗号化、または復号化される文字列です。

    2. public String getValue

    3. public void setValue(String value)
      パスワードパラメーターの現在の値を取得/設定します。

    4. public String encrypt() throwsException
      パスワードパラメーターの値セットを暗号化します。

    5. public String decrypt() throwsException
      パスワードパラメーターの値セットを復号化します。

    • textClassName:HTML入力要素に追加するclassを指定します。

    • style:HTML入力要素に追加されるCSSスタイルです。

    • disabled:HTML入力要素のプロパティを「無効」にする場合は「true」に設定します。

    • placeholder:値を入力するまで表示するプレースホルダーテキストです。

    • width:カスタマイズした幅でこちらの入力の幅の値を上書きます。注意:これはcssプロパティのため、好きな表示単位で記述することができます。単位のデフォルトはpxではありません。

    パスワードパラメーターの定義:

    Code Block
    themeEclipse
    languagejava
    Boolean value = true;
    Boolean negative = false;
      
    // SHOW_ADVANCED_SETTINGS == true
    ParameterDisplayRule advancedSettingsDisplayRulePasswordParameter apiKey = new ParameterDisplayRulePasswordParameter("ANDAPI_KEY", "SHOW_ADVANCED_SETTINGS", value, negative);
      
    ParameterImpl p = new ParameterImpl();
    p.setProperty("ALL_ROWS");
    p.setName("All Rows");
    p.setDefaultValue(true);
    p.setInputType(InputType.TOGGLE);
    p.addDisplayRule(advancedSettingsDisplayRule);
    paramList.add(p);
     
    p = new ParameterImpl();
    p.setProperty("SEPARATOR");
    p.setName("Separator");
    p.setInputType(InputType.TEXTBOX);
    p.addViewOption("width", "40px");
    p.addDisplayRule(advancedSettingsDisplayRule);
    paramList.add(p);
    p = new ParameterImpl();
    p.setProperty("SHOW_ADVANCED_SETTINGS");
    p.setInputType(InputType.SHOWADVANCED);
      
    p.setDefaultValue(false);
    p.addViewOption("showText", "Advanced Settings &darr;");
    p.addViewOption("hideText", "Less &uarr;");
    p.addViewOption("width", "150px");
    paramList.add(p);
    PAIRCOLUMNS   
        
        

     

    myApiKey");
    apiKey.setName("API Key");
    apiKey.addViewOption("width", "190px");

     

    パスワードパラメーターの使用:

    Code Block
    themeEclipse
    languagejava
    List<Parameter> paramsList = getPanelCollection().getSectionMap().get("passwordSection").getParameters();
     
    for (Parameter parameter : paramsList){
        if ("API_KEY".equals(parameter.getProperty())){
            PasswordParameter pwd = ((PasswordParameter) parameter;
            pwd.setValue(getStepOption("API_KEY"));
            try {
                apiKey = pwd.decrypt();
      
            } catch (Exception e) {
                throwUnhandledETLException(e);
            }
        }
    }