1.4.13.0 の変更点
リリース日: 2025年2月12日。1.4.12.0 からの変更です。機能追加・仕様変更と不具合修正を分けて記載します。
機能追加・仕様変更
- 実行環境・DB — プリザンターのDBをSQL ServerからMySQLに移行できるようになった。
- API・拡張 — サーバスクリプトでインポート・エクスポートの機能が加わった。
- API・拡張 — サーバスクリプトでhttpClient.Get() 以外のメソッドでも httpResponseHeader を取得できるように ResponseHeaders プロパティを利用できるようになった。
- 利用者・権限 — ユーザに「管理者」「ログイン有効期限」「無効化までの日数」項目を利用できるようになった。
- API・拡張 — APIリクエストで送信するJSONデータにレコード取得件数を指定可能なPageSizeプロパティを利用できるようになった。
- その他 — 「管理者」「担当者」項目でもルックアップを使用できるように機能が加わった。
- 運用・設定 — 「バックグラウンドサーバスクリプト」とダッシュボードの「カスタムHTML」をコードエディタで入力できるようになった。
- 利用者・権限 — サイト作成時にサイトのアクセス制御の権限を継承しない機能が加わった。
不具合修正
- その他 — 「プロセス」の「入力検証」で「置換」や「無し」を指定した場合でもエディタで登録したサーバ側の入力検証が実行される不具合を修正。
- その他 — プロセスボタンの条件でNull許容が判定されない不具合を修正。
実装を読む
API の取得件数を小さく指定する
レコード取得の本文に PageSize が追加されました。指定値が正数で、Parameters.Api.PageSize より小さい場合に採用します。それ以外はパラメータの値を使います(Api.cs、ResultUtilities.cs)。
{
"ApiVersion": 1.1,
"ApiKey": "YOUR_API_KEY",
"Offset": 0,
"PageSize": 20
}サーバー側の上限より大きな件数を要求する機能ではありません。ページングの開始位置は従来の Offset、1 回の取得件数は PageSize として分けて指定できます。
サーバスクリプトのファイル取り込み・出力
ファイル操作のオブジェクトに Import() と Export() の実装が追加されました。基準ディレクトリ内のファイルを、テーブルのインポート・エクスポート処理へ渡す構成です。ファイル操作の有効化と基準ディレクトリの指定は 1.4.12.0 の設定を使用します(ServerScriptFile.cs、ServerScriptFile.cs)。
HTTP クライアントの ResponseHeaders も GET 以外に対応しました。取得結果のヘッダーをメソッドごとに同じプロパティへ格納する変更です(ServerScriptModelHttpClient.cs)。
DB 移行元の種類を指定する
CodeDefiner の DB 移行には、移行元の DB 種別 Dbms、Provider、ServiceName、接続文字列が追加されました。移行先に MySQL を選ぶ対応と合わせて、SQL Server のデータを移す構成を扱います。既定の移行元は SQLServer、除外テーブルは SysLogs、AbortWhenException は false です(Migration.json)。
DB の種別を変更するだけで移行元の接続先まで指定されるわけではありません。移行元は Migration.json、アプリの接続先は Rds.json として分けて設定します。
利用者のログイン期限
ユーザーには LoginExpirationLimit と LoginExpirationPeriod が追加されました。前者は日時による期限、後者は最終ログインからの日数で判定します。日数は 0 の場合にこの条件を適用しません(UserModel.cs)。
管理者・担当者のルックアップ、サイト作成時にアクセス権を継承しない設定、SQL Server から MySQL への DB 移行も加わっています。DB 移行は 1.4.9.0 の MySQL 対応と別の段階です。
Extensions API の導入時の実行条件
この版の Extensions API は、認証済みのテナント管理者または特権ユーザーが対象です。後の AllowExtensionsApi と特権ユーザー限定の条件は、まだ導入されていません(ExtensionUtilities.cs)。
環境の判定もあるため、商用ライセンスの有無だけでは実行可否を決められません。導入版と 1.4.16.0 の違いは Web API 仕様書 にまとめています。