| Symfoware Server WebDBtoolsユーザーズガイド - FUJITSU - |
目次
索引
![]()
|
| 第3部 リファレンス編 | > 第14章 WebDBtools画面のカストマイズ |
WebDBtoolsの画面のカストマイズ例を説明します。
表定義画面のデフォルトの値である以下の値を変更します。
プライマリキーを“あり”から“なし”に変更します。
列数を10から20に変更します。
表定義のフォーマットファイルを処理概要から検索します。
対象フォーマットファイル:WebDBtools_DefinitionOperationAddTable01.html
対象フォーマットファイルを調査します。
元のフォーマットファイルをバックアップします。
プライマリキーを“あり”から“なし”に変更します。
<!VAR PrimaryKey scope="LOCAL" VALUE="yes">
<!VAR PrimaryKey scope="LOCAL" VALUE="no">
列数を10から20に変更します。
<!VAR ColumnNum scope="LOCAL" VALUE="10">
↓
<!VAR ColumnNum scope="LOCAL" VALUE="20">
データ操作のデフォルトの値である以下の値を変更します。
一度に表示する検索件数の上限値を変更します。
データ操作のフォーマットファイルを処理概要から検索します。
対象フォーマットファイル:WebDBtools_DataOperationSelect02.html
対象フォーマットファイルを調査します。
元のフォーマットファイルをバックアップします。
一度に表示する件数の上限値を50から100件に変更します。
<!SETVAR breakcontrol '50'>
↓
<!SETVAR breakcontrol '100'>
データ操作の検索での画面の表示方法を変更します。
標準画面では、一画面ごとに検索したデータを表形式で表示しています。検索したすべてのデータを記憶しておき、検索行の指定に従って一件をカード形式で表示するように変更します。なお、簡単な処理にするために、BLOB型の列は表示しません。
データ操作の検索結果のフォーマットファイルを処理概要から探します。
対象フォーマットファイル:WebDBtools_DataOperationSelect02.html
対象フォーマットファイルの処理内容を調査します。一画面ごとに検索したデータを表形式で表示しています。一画面に表示できない場合は、[次ページ]ボタンをクリックしたときに、再検索したデータを表形式で表示しています。

変更後の処理を検討します。
検索したデータを記憶させておき、表示したい行を指定することにより、対象の一件をカード形式で表示させるよう変更します。

元のフォーマットファイルをバックアップします。
フォーマットファイルを変更します。
初回のみ検索させるために、フラグの設定と判定を変更します。
<!elseif '(formmode eq "initial" && execoption eq "submit") || (formmode eq "action" && execoption eq "confirm")'>
・・・
<!setvar execoption "submit"> <!-- ← 修正前(1) -->
<!else>
<!setvar rslt "success">
<!/if>
<!if 'execoption eq "submit"'> <!-- ← 修正前(2) --> |
<!elseif '(formmode eq "initial" && execoption eq "submit") || (formmode eq "action" && execoption eq "confirm")'>
・・・
<!setvar execoption "select"> <!-- ← 修正後(1) -->
<!else>
<!setvar rslt "success">
<!/if>
<!if 'execoption eq "select"'> <!-- ← 修正後(2) --> |
データを表形式で表示させる処理を削除し、データを記憶させる処理を追加します。
<!-- ↓ 修正前(3) -->
<B>結果</B>
<BR>
<!-- ↑ 修正前(3) -->
<!if 'rslt eq "success"'>
<!-- ↓ 修正前(4) -->
<!hreplace totalcount>件 検索されました。<BR><BR>
<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="1">
・・・
</TABLE>
<!-- ↑ 修正前(4) -->
<!do "COMMIT WORK">
<!if 'SYSTEM::DB_ERRORCODE ne "00000"'>
・・・
<!else>
<!-- ↓ 修正前(5) -->
<!setvar rslt "success">
<!if 'nextpage ne "" && nextpage ne "none"'>
<TABLE BORDER="0">
・・・
</TABLE>
<!/if>
<BR><BR>
<TABLE BORDER="0">
・・・
</TABLE>
<!-- ↑ 修正前(5) -->
<!/if> |
<!-- 修正後(3) 処理なし -->
<!if 'rslt eq "success"'>
<!-- ↓ 修正後(4) -->
<!if 'defined(Dat_SelectData)'>
<!undefvar Dat_SelectData>
<!/if>
<!if 'defined(Dat_SelectCol)'>
<!undefvar Dat_SelectCol>
<!/if>
<!var Dat_SelectData scope="GLOBAL">
<!var Dat_SelectCol scope="GLOBAL">
<!setvar Dat_SelectData SelResult>
<!for lcnt 0 'listlen(SelResult[0])-1'>
<!setvar Dat_SelectCol[lcnt] key(SelResult[0],lcnt)>
<!/for>
<!-- ↑ 修正後(4) -->
<!do "COMMIT WORK">
<!if 'SYSTEM::DB_ERRORCODE ne "00000"'>
・・・
<!else>
<!-- ↓ 修正後(5) -->
<!setvar rslt "success">
<!setvar line '1'>
<!setvar execoption "display">
<!-- ↑ 修正後(5) -->
<!/if> |
データをカード形式で表示させる処理を追加します。
<!elseif 'execoption eq "confirm"'> ・・・ <!-- 修正前(6) 処理なし --> <!/if> <!-- 修正前(7) 処理なし --> |
<!elseif 'execoption eq "confirm"'>
・・・
<!-- ↓ 修正後(6) -->
<!elseif 'execoption eq "submit"'>
<!setvar line 'QUERY::PrintLine'>
<!setvar execoption "display">
<!-- ↑ 修正後(6) -->
<!/if>
<!-- ↓ 修正後(7) -->
<!if 'execoption eq "display"'>
<!setvar lineMax 'listlen(Dat_SelectData)'>
<!if '1 > line || line > lineMax'>
<TABLE BORDER="0">
<TR>
<TD> </TD>
<TD>(<!replace line>/<!replace lineMax>) 範囲外です。</TD>
</TR>
</TABLE>
<!else>
<TABLE BORDER="0" CELLSPACING="1" CELLPADDING="1">
<TR>
<TD> </TD>
<TD>(<!replace line>/<!replace lineMax>)</TD>
</TR>
<!for lcnt 0 'listlen(Dat_SelectData[line-1])-1'>
<!setvar col Dat_SelectCol[lcnt]>
<!if 'col eq "ROW_ID"'>
<!continue>
<!/if>
<TR>
<TD> </TD>
<TD CLASS="DatTableColor5" NOWRAP><B><!hreplace
col></B></TD>
<TD CLASS="DatTableColor7" NOWRAP><!hreplace
Dat_SelectData[line-1][lcnt]></TD>
</TR>
<!/for>
</TABLE>
<!/if>
<TABLE BORDER="0">
<TR>
<TD> </TD>
<TD>
<INPUT TYPE="text" NAME="PrintLine" VALUE="$line" SIZE="5">
<INPUT TYPE="submit" VALUE="表示" CLASS="ButtonSize4"
WIDTH="62" HEIGHT="26">
<!setvar prevLine 'line-1'>
<!setvar nextLine 'line+1'>
<INPUT TYPE="submit" VALUE="<<" CLASS="ButtonSize4" WIDTH="62"
HEIGHT="26" OnClick="PrintLine.value='$prevLine'">
<INPUT TYPE="submit" VALUE=">>" CLASS="ButtonSize4" WIDTH="62"
HEIGHT="26" OnClick="PrintLine.value='$nextLine'">
</TD>
</TR>
</TABLE>
<BR>
<TABLE BORDER="0">
<TR>
<TD> </TD>
<TD><INPUT TYPE="submit" VALUE="終了" CLASS="ButtonSize1"
WIDTH="62" HEIGHT="26" onClick="SetCloseForm()"></TD>
</TR>
</TABLE>
<!/if>
<!-- ↑ 修正後(7) --> |
目次
索引
![]()
|