0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[StaticTable編](6)改ページ

Last updated at Posted at 2018-12-25

このサンプルはStaticTableの改ページの設定方法です。

ステップ1:Static Tableの表示をする画面と関数を作成します。

ステップ2:Static Tableの表示を確認します。

ステップ1:Static Tableの表示をする画面と関数を作成します。

1-1.<画面>ー<画面レイアウト作成>の画面を開き、「新規」ボタンをクリックします。

image.png

1-2.「画面名」にStaticTable1を入力、「管理ID」にStaticTable1を入力し、ボタンタイプの項目数に1を入力し、「保存して次へ」ボタンをクリックします。

image.png

1-3.「フォルダ追加管理」ダイアログボックスが表示されます。画面の登録対象フォルダを選択して「登録」ボタンをクリックします。

image.png  

1-4.<画面>-<画面レイアウト作成>の画面を開き、画面レイアウト設計「StaticTable1」行の「編集」ボタンをクリックし、「画面レイアウト設計」画面を表示します。

image.png

1-5.「画面デザイン」画面が表示されます。この画面で項目の移動、変更などが自由に行えます。

image.png
「閉じる」ボタンを右クリックし削除を左クリックします。
image.png

「btn2」ボタンを右クリックします。「項目定義」をクリックし項目名「btn2」を「検索」変更します。「保存」ボタンをクリックして変更を保存します。
image.png
image.png

ツールバーで「項目追加」ボタンをクリックします。項目名と項目IDを入力し「表示種類」に「表」を選びます。そして、「保存」ボタンをクリックします。
image.png

image.png

表設定を行います。「表データ件数」に「複数件」を選択します。
image.png

作成した表に3列を追加します。「ITEM1」を左クリックし選択します。「ITEM1」を右クリックし「列の挿入」を左クリックします。
image.png
image.png

「ITEM1」を左クリックし選択します。「ITEM1」を右クリックし「コントロール設定」を左クリックします。
image.png

「項目名」を入力し、「保存」ボタンをクリックします。ほかのタイトルも同じように設定します。
image.png

下図の通りに設定します。
image.png

3行目の「ITEM1」を左クリックし選択します。「ITEM1」を右クリックし「行削除」を左クリックします。
image.png

削除した後「社員ID」下のセル「ITEM1」をダブルクリックします。
image.png

キーボードの「Backspace」で値を削除します。同じ行のセルも削除設定します。
image.png

「給料」下のセルを左クリックし選択します。セルを右クリックし「コントロール設定」を左クリックします。
image.png

項目名を入力、「書式設定->横寄せ」に「右」を選んで保存します。
image.png

キーボードの「Backspace」で項目名1を削除します。
image.png

ツールバーで「項目追加」ボタンをクリックします。
image.png

項目名を入力し、「表示種類」に「Textbox」を選びます。
image.png

ツールバーで「項目追加」ボタンをクリックします。
image.png
項目名を入力し、「表示種類」に「Textbox」を選びます。「デフォルト値」に1を入力して「保存」ボタンをクリックします。
image.png
ツールバーで「項目追加」ボタンをクリックします。
image.png
項目名を入力し、「表示種類」に「ボタン」を選びます。「保存」ボタンをクリックします。
image.png
自由に項目の移動、変更などができます。「保存」ボタンをクリックします。
image.png

1-6.関数作成
statictable_sample5
var st1 = getStaticTable("static4");
var strSql = new StringBuilder();
var strSqlCount = new StringBuilder();
var param = [1];
var al = null;
var b1 = null;
var row = null;
var userID = getObj('txt36'); //条件;
var week = "";
var yakushoku;
var stopFlg = false;
var pageChangeVal = getObj("txt38");
try {
    strSql.setLength(0);
    strSql.append("SELECT ID, NAME, DEPT, AGE, SALARY FROM EMPLOYEE ");
    //検索条件:社員ID
    if (userID != null && userID != "") {
        strSql.append(" WHERE ID  LIKE '%" + userID + "%'");
    }
    strSql.append(" ORDER BY ID");
    //検索のSQL文を追加
    if (pageChangeVal != "") {
        strSql.append(" LIMIT ").append(StringUtil.ChangeIntToString(parseInt((parseInt(pageChangeVal) - 1) * 2, 10))).append(",").append("2");
    }
    strSqlCount.setLength(0);
    strSqlCount.append("SELECT COUNT(*) FROM EMPLOYEE");
    // 日報承認データ取得
    al = exequeryarrylist(strSql.toString());
    b1 = exequery(strSqlCount.toString());
    //var dataNum = b1
    if (al != null && al.size() > 0) {
        var list = new ArrayList();
        //var strint = 0.0;
        for (var i = 0; i < al.size(); i++) {
            var maptimuzhou = new HashMap();
            var keibItemBean = new ItemBean();
            row = al.get(i);
            keibItemBean = new ItemBean();
            keibItemBean.setValue(row.get(0));
            // 社員ID
            maptimuzhou.put("lbl15", keibItemBean);
            keibItemBean = new ItemBean();
            keibItemBean.setValue(row.get(1));
            // 社員名
            maptimuzhou.put("lbl17", keibItemBean);
            keibItemBean = new ItemBean();
            keibItemBean.setValue(row.get(2));
            // 所属
            maptimuzhou.put("lbl35", keibItemBean);
            keibItemBean = new ItemBean();
            keibItemBean.setValue(row.get(3));
            // 年齢
            maptimuzhou.put("lbl29", keibItemBean);
            keibItemBean = new ItemBean();
            keibItemBean.setValue(row.get(4));
            // 給料
            maptimuzhou.put("lbl23", keibItemBean);
            list.add(maptimuzhou);
        }
        // 改ページボタンの実現
        pageChangeStr = getStaticTablePaging(b1, 2, pageChangeVal, "btn4", "txt38");
        ActStr += "$('#dragB40').html('" + pageChangeStr + "');";
        // 表のすべての項目情報を設定
        st1.setData(list);
        st1.addBreakConditionByParams("lbl35", "lbl35,lbl29");
        st1.addBreakCondition("lbl29", "lbl29");
        ActStr += "" + JsUtil.saasforce_item2js(st1, true, null);
    } else {
        var list = new ArrayList();
        var map = new HashMap();
        list.add(map);
        ActStr = "alert('該当データは存在しません。');";
    }
} catch (e) {
    trace(e);
    ActStr = "alert('検索時エラーが発生しました。システム管理者にご連絡してください。[" + e + "]');";
}

検索関数の作成:
<ツール>-<ユーザー定義関数>の画面を開き、中央上の「検索条件」ボタンをクリックします。左から2番目「新規」ボタンをクリックします。
image.png
「プロパティ定義」画面にて、「関数名称」を入力、「利用範囲」に「詳細画面利用関数」を選択、「関数利用画面」に「P00030-StaticTable1」を選択し、「処理方式」に「同期処理」をチェック、「実行場所」に「サーバー」をチェックします。
image.png

「関数編集」画面にて、関数をコピーします。関数コードvar userID行とvar pageChangeVal行のgetObject()の引数は右側の「項目ID」と同じです。 maptimuzhou.put()の引数「lbl15」はタイトル「社員ID」下の項目IDと同じです。maptimuzhou.put()他の引数も同じように設定します。改ページボタンの実現の所getStaticTablePaging()の引数「btn4」は「検索」ボタンの「項目ID」です。第二行目の「dragB40」は「改ページ」の番号です。「保存」ボタンをクリックして、「関数ID」を取得できます。
image.png

<画面>-<画面レイアウト作成>の画面を開き、「StaticTable1」行の「編集」ボタンをクリックします。
image.png

「画面デザイン」にて、検索ボタンを右クリックしてコード表示を左クリックします。
image.png

「関数タイプ」に「詳細画面利用関数」を選択し、関数名称が自動に表示されます。「保存」ボタンをクリックします。
image.png

ステップ2:Static Tableの表示を確認します。

image.png
image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?