[]
        
(Showing Draft Content)

ForguncyPage

ForguncyPage クラス

ページオブジェクトを表します。

目次

コンストラクタ

プロパティ

メソッド

コンストラクタ

new ForguncyPage()

new ForguncyPage(): ForguncyPage

戻り値

ForguncyPage

プロパティ

AutoDisconnectTimeout

AutoDisconnectTimeout: number

本プロパティを使用することで、特定のページだけタイムアウト値を変更できます。タイムアウト値とは、ユーザーが一定期間Forguncyアプリケーションを操作しなかった場合に、Forguncyアプリケーションが自動切断され、同時接続数としてカウントされなくなる場合の時間です。

設定する数値の単位は分で、「0」を設定した場合タイムアウトによる切断は行われません。既定値は「0」です。

たとえば「30」を設定した場合、そのページ上でユーザーが30分以上操作を行わなければ、自動切断の対象となります。

使用例

// 現在のページのタイムアウト値を30分に設定する。
Forguncy.Page.AutoDisconnectTimeout = 30;

メソッド

bind()

bind(eventType, data?, fn?, targetPage?): void

ページが持つイベントに対してイベントハンドラーを関連付けます。

イベントへのデータの受け渡し

イベントハンドラーにデータを受け渡すには、第2パラメーターに指定します。その場合、イベントハンドラーは第3パラメーターに指定します。 受け渡されたデータは、イベントハンドラーにおける第1パラメーターのdataプロパティから参照できます。

引数

eventType: string

関連付けするイベントを表す文字列。ページでサポートされているイベントについては、PageEventsクラスを参照してください。

data?: any

イベントハンドラーに渡すデータ。関数では第1パラメーターのdataプロパティから参照します。本パラメーターは省略可能です。

fn?: any

イベント発生時に実行される関数。

targetPage?: string

ページ名。すべてのページのイベントをバインドする場合は、「*」を使用します。 省略すると、現在のページにバインドされます。

戻り値

void

使用例

// 「ページ1」と「ページ2」の2つのページがある場合の例を示します。
var loadedEvent = Forguncy.PageEvents.Loaded;
// 変数を定義する。
var text = "ready";

// 現在のページは「ページ1」です。ページの準備が整うと、ダイアログボックス上に現在のページ名である「ページ1」が表示されます。
Forguncy.Page.bind("loaded", function (arg1, arg2) {
    alert(arg2.pageName);
});

// パラメーターのページ名に明示的に「ページ1」を指定します。ページの準備が整うと、ダイアログボックス上に指定したページの名称「ページ1」が表示されます。
Forguncy.Page.bind("loaded", function (arg1, arg2) {
    alert(arg2.pageName);
}, "ページ1");

// 「ページ1」の準備ができると、ダイアログボックス上にパラメーターのデータとして渡された文字列「ready」が表示されます。
var text = "ready";
Forguncy.Page.bind("loaded", text, function (arg1, arg2) {
    alert(arg1.data);
}, "Page1");

// 「ページ1」、もしくは「ページ2」のいずれかのページの準備ができると、ダイアログボックス上にそのページ名が表示されます。
Forguncy.Page.bind("loaded", function (arg1, arg2) {
    alert(arg2.pageName);
}, "*");

getCell()

getCell(name, includeSubPage?): Cell

名前を指定してセル(Cellのインスタンス)を取得します。

引数

name: string

取得したいセルの名前。

includeSubPage?: boolean

コンテナーやタブコントロールのサブページ内を検索するかどうかを指定します。 true:検索します。既定値です。 false:検索しません。

戻り値

Cell

使用例

// 本サンプルコードでは、セルインスタンスを取得し、getCellメソッドによってセルの値を設定します。
// 現在のページを取得する。
var page = Forguncy.Page;
// セルオブジェクトを取得する。
var cell = page.getCell("myCell");
// セルの値を設定する。
cell.setValue("Forguncy");

getCellArray()

getCellArray(name, includeSubPage?): Cell[]

名前を指定してセル範囲(Cell[]のインスタンス)を取得します。

引数

name: string

取得したいセル範囲の名前。

includeSubPage?: boolean

コンテナーやタブコントロールのサブページ内を検索するかどうかを指定します。 true:検索します。既定値です。 false:検索しません。

戻り値

Cell[]

使用例

// 現在のページを取得する。
var page = Forguncy.Page;
// セルオブジェクトを取得する。
var cell = page.getCellArray("myCell");
// セルのインスタンス数を取得する。
var len = cell.length;
// セルのインスタンス数をダイアログボックスに表示する。
alert(len);

getCellByLocation()

getCellByLocation(cellLocation, printError?): Cell

セルの位置を指定してセル(Cellのインスタンス)を取得します。

引数

cellLocation: CellLocationInfo

取得したいセルの位置。

printError?: boolean

エラーメッセージをコンソールに出力するかどうか。

戻り値

Cell

使用例

// 本サンプルコードでは、セルオブジェクトを取得し、getCellByLocationメソッドによってセルの背景色を設定します。
// 現在のページを取得する。
var page = Forguncy.Page;
// セルオブジェクトを取得する。
var cell = page.getCellByLocation({
    Row: 2,
    Column: 3,
    PageName: "ページ1"
});
// セルの背景色を赤に設定します。
var setColor = cell.setBackColor("red");

getContainerCells()

getContainerCells(includeSubPage?): ContainerCellBase[]

すべてのコンテナーやタブコントロールのセル(Cell[]のインスタンス)を取得します。

引数

includeSubPage?: boolean

コンテナーやタブコントロールのサブページ内を検索するかどうかを指定します。 true:検索します。既定値です。 false:検索しません。

戻り値

ContainerCellBase[]

使用例

var containerCells = Forguncy.Page.getContainerCells();
var subPage = containerCells[0].getContentPage();

getListView()

getListView(name, includeSubPage?): ListView

名前を指定してリストビュー(ListViewのインスタンス)を取得します。

引数

name: string

取得したいリストビューの名前。

includeSubPage?: boolean

コンテナーやタブコントロールのサブページ内を検索するかどうかを指定します。 true:検索します。デフォルトです。 false:検索しません。

戻り値

ListView

使用例

// 本サンプルコードでは、名前を指定してページ内のリストビューを取得します。
// 現在のページを取得する。
var page = Forguncy.Page;
// リストビューオブジェクトを取得する。
var listview = page.getListView("リストビュー1");
// リストビューの名前を取得する。
var name = listview.getName();
// リストビューの名前をダイアログボックスに表示する。
alert(name);

getListViews()

getListViews(includeSubPage?): ListView[]

ページ内のすべてのリストビューを取得します。

引数

includeSubPage?: boolean

コンテナーやタブコントロールのSubPage内を検索するかどうかを指定します。 true:検索します。デフォルトです。 false:検索しません。

戻り値

ListView[]

使用例

// 本サンプルコードでは、ページ内のすべてのリストビューを取得します。
// 現在のページを取得する。
var page = Forguncy.Page;
// ページ内のすべてのリストビューを取得する。
var listview = page.getListViews();
// リストビューのインスタンス数を取得する。
var len = listview.length;
// リストビューのインスタンス数をダイアログボックスに表示する。
alert(len);

getMasterPageName()

getMasterPageName(): string

ページのマスターページ名を取得します。ページにマスターページが設定されていない場合は「null」が返ります。

戻り値

string

使用例

// 本サンプルコードでは、getMasterPageNameメソッドを使用して現在のページのマスターページの名前を取得します。 
// 現在のページを取得する。
var page = Forguncy.Page;
// 現在のページのマスターページ名を取得する。
var masterPageName = page.getMasterPageName();
// マスターページ名をダイアログボックスに表示する。
alert(masterPageName);

getPageName()

getPageName(): string

現在のページ名を取得します。

戻り値

string

使用例

// 本サンプルコードでは、getPageNameメソッドを使用して現在のページ名を取得します。
// 現在のページを取得する。
var page = Forguncy.Page;
// 現在のページ名を取得する。
var pageName = page.getPageName();
// 現在のページ名をダイアログボックスに表示する。
alert(pageName);

getSubPageInfoByPageID()

getSubPageInfoByPageID(pageID): SubPage

ページのIDからサブページ(SubPageのインスタンス)を取得します。戻り値はContentContainerCell.getContentPageメソッドやtabControlCell.getTabPageメソッドの戻り値と同様です。 アプリケーションの実行時には、各親ページ、サブページは一意なIDを持っています。 CellTypeBase.getFormulaCalcContextメソッド、およびCommandBase.getFormulaCalcContextメソッドを使用してページのIDを取得できます。

引数

pageID: string

ページのID

戻り値

SubPage


getUserInfo()

getUserInfo(): UserInfo

getUserNameでは、ユーザー名のみを取得しますが、getUserInfoではロールなどのユーザーの詳細情報を取得できます。

戻り値

UserInfo

使用例

// 本サンプルコードでは、getUserInfoメソッドを使用して現在のログインユーザーの詳細を取得します。
// 現在のページを取得する。
var page = Forguncy.Page;
// 現在ログインしているユーザーの詳細を取得する。
var userInfo = page.getUserInfo();
// 現在ログインしているユーザーの詳細をダイアログボックスに表示する。
alert(JSON.stringify(userInfo, null, " "));

// 現在ログインしているユーザーのユーザー名を取得する。
var name = userInfo.UserName;
// 現在ログインしているユーザーのロールを取得する。
var role = userInfo.Role;
// 現在ログインしているユーザーの氏名を取得する。
var fullName = userInfo.FullName;

getUserName()

getUserName(): string

ログイン中のユーザー名を取得します。ログインしていない場合には空文字が返されます。

戻り値

string

使用例

// 本サンプルコードでは、getUserNameメソッドを使用してユーザー名を取得します。
// 現在のページを取得する。
var page = Forguncy.Page;
// 現在ログインしているユーザーのユーザー名を取得する。
var userName = page.getUserName();
// 現在ログインしているユーザーのユーザー名をダイアログボックスに表示する。
alert(userName);

ready()

ready(fn): void

ページの準備ができた時点で、指定したコールバック関数を実行します。

引数

fn: Function

ページ読み込み完了時に実行するコールバック関数。

戻り値

void

使用例

// 本サンプルコードでは、readyメソッドを使用し、コールバック関数内で現在ログインしているユーザーのユーザー名を取得します。
// 現在のページを取得する。
var page = Forguncy.Page;
// readyメソッドのコールバック関数にページ処理を記述する。
page.ready(function () {
        // ボタン型セルのクリック時のイベントをバインドする。
        page.getCell("button").bind("click", function () {
                // 現在ログインしているユーザーのユーザー名をダイアログボックスに表示する。
                alert(page.getUserName());
        })
});

recalc()

recalc(): void

ページ内に設定されているすべての数式を再計算させます。

戻り値

void

使用例

// 本サンプルコードでは、recalcメソッドを使用して、ページ上のすべての数式を強制的に再計算させます。
// 現在のページを取得する。
var page = Forguncy.Page;
// ページ上のすべての数式を強制的に再計算する。
page.recalc();

reloadBindingData()

reloadBindingData(tableName?): void

現在のページで使用されているテーブルとビューからデータを再読み込みします。

引数

tableName?: string

テーブル名。このパラメーターを省略すると、すべてのテーブルのデータが再読み込みされます。

戻り値

void

使用例

// 本サンプルコードでは、reloadBindingDataメソッドを使用してデータベースからデータを再読み込みします。
// 現在のページを取得する。
var page = Forguncy.Page;
// データベースからデータを再読み込みする。
page.reloadBindingData("テーブル1");

resumeCalc()

resumeCalc(): void

ページ内に設定されているすべての数式の計算を再開します。suspendCalcメソッドで数式の計算を中止している場合に、このメソッドを実行して数式の計算を再開させます。

戻り値

void

使用例

// 本サンプルコードでは、resumeCalcメソッドを使用して、ページ上のすべての数式の計算を再開します。
// 現在のページを取得する。
var page = Forguncy.Page;
// ページ上の数式の計算を再開する。
page.resumeCalc();

setCurrentRow()

setCurrentRow(currentRowParam): void

カレントレコードを設定します。たとえば、テーブル1のカレントレコードを1行目に設定することで、ページ上でテーブル1にデータ連結している個所に1行目のデータが表示されます。

引数

currentRowParam: CurrentRowInfoParam | CurrentRowInfoPluginParam

テーブル名とクエリー条件から成るカレントレコードを指定する情報

戻り値

void

使用例

// 本サンプルコードでは、パラメーターCurrentRowInfoParamを指定してカレントレコードを設定します。
// 現在のページを取得する。
var page = Forguncy.Page;
// カレントレコードを設定する。
page.setCurrentRow(
{
        // カレントレコードを設定するテーブル名。
        TableName: " テーブル1",
        // カレントレコードを特定するクエリー条件。
        PrimaryKey: {
            ID: 1
        }
});
    
// 本サンプルコードは、主にプラグイン開発で使用されるパラメーターCurrentRowInfoPluginParamを指定する方法を示します。たとえば、プラグインコマンドSetCurrentRowCommandの一部として次のコードが実装されます。
SetCurrentRowCommand.prototype.execute = function () {
        Forguncy.Page.setCurrentRow({
                QueryCondition: this.CommandParam.CurrentRowInfo,
                FormulaCalcContext: this.getFormulaCalcContext()
        });
}

suspendCalc()

suspendCalc(): void

ページ内に設定されているすべての数式の計算を中止します。このメソッドを実行するとresumeCalcメソッドを実行するまでは、数式の計算は行われません。

戻り値

void

使用例

// 本サンプルコードでは、suspendCalcメソッドを使用して、ページ上のすべての数式の計算を一時的に停止します。
// 現在のページを取得する。
var page = Forguncy.Page;
// ページ上の数式の計算を一時停止する。
page.suspendCalc();

unbind()

unbind(eventType, fn?, targetPage?): void

ページから指定したイベントハンドラの関連付けを解除します。第2パラメーターを省略した場合、指定イベントに関連付けされたすべてのイベントハンドラの関連付けが解除されます。

引数

eventType: any

関連付けを削除するイベントを表す文字列。ページでサポートされているイベントについては、PageEventsクラスを参照してください。

fn?: Function

関連付けを解除するイベントハンドラーの関数。 本パラメーターを省略した場合、ページ上のすべてのそのイベントの種類のイベントハンドラーの関連付けを解除します。本パラメーターは省略可能です。

targetPage?: string

対象ページ名。すべてのページのイベントに対する関連付けを解除する場合は、「*」を指定します。省略した場合、現在のページに対してイベントに対する関連付け解除を行います。本パラメーターは省略可能です。

戻り値

void

使用例

// 本サンプルコードでは、unbindメソッドを使用してページイベントの関連付けを解除する方法をいくつか示します。
// 「ページ1」と「ページ2」の2つのページがある場合の例を示します。現在のページは「ページ1」です。
var eventHandler = function (arg1, arg2) {
    alert(arg2.pageName);
};
// イベントハンドラーの関連付けを行う。
Forguncy.Page.bind("Loaded", eventHandler);

// 対象ページ名を指定して、そのページにおける特定のイベントハンドラーの関連付けを解除する。
Forguncy.Page.unbind("Loaded", eventHandler, "ページ1");

// 現在のページにおける特定のイベントハンドラーの関連付けを解除する。
Forguncy.Page.unbind("Loaded", eventHandler);

// 現在のページにおいて指定したイベントに対するすべてのイベントハンドラーの関連付けを解除する。
Forguncy.Page.unbind("Loaded");

// すべてのページにおいて指定したイベントに対する特定のイベントハンドラーの関連付けを解除する。
Forguncy.Page.unbind("Loaded", eventHandler, "*");

unbindAll()

unbindAll(targetPage?): void

ページ上のすべてのイベントハンドラーの関連付けを解除します。

引数

targetPage?: string

対象ページ名。すべてのページのイベントに対する関連付けを解除する場合は、「*」を指定します。省略した場合、現在のページに対してイベントに対する関連付け解除を行います。

戻り値

void

使用例

// 本サンプルコードでは、unbindメソッドを使用してページイベントの関連付けを解除する方法をいくつか示します。
// 「ページ1」と「ページ2」の2つのページがある場合の例を示します。現在のページは「ページ1」です。
var eventHandler = function (arg1, arg2) {
    alert(arg2.pageName);
};
// イベントハンドラーの関連付けを行う。
Forguncy.Page.bind("Loaded", eventHandler);

// 現在のページからすべてのイベントハンドラーの関連付けを解除する。
Forguncy.Page.unbindAll();

// 指定したページにおけるすべてのイベントハンドラーの関連付けを解除する。
Forguncy.Page.unbindAll("ページ1");

// 全ページにおけるすべてのイベントハンドラーの関連付けを解除する。
Forguncy.Page.unbindAll("*");