PDF/A3添付ファイルの抽出
添付ファイルが埋め込まれた PDF/A3形式の PDFファイルから、これらを抽出するための専用コンポーネント 4D-QPDF が公開されました。この HDI ではその使い方を紹介しています。
このコンポーネントは、コンポーネントマネージャーを使って簡単に追加することが可能です。コンポーネントマネージャーについての詳細はこちらのブログ記事を参照ください。
ブログ記事: PDF/A3添付ファイルの抽出
RESTとQodlyによるシングルトンのサポート
4D 20 R5 で シングルトン が導入されました。4D 20 R6 では、REST で共有シングルトンの公開関数を直接呼び出すことができます。
※ Qodly Studio の例題も含まれています。
ブログ記事: シングルトンのRESTとQodlyサポート
4D NetKit: OAuth2.0接続インターフェースのカスタマイズ
4D 20 R6 以降、authenticateURI を使うことで、接続インターフェースを好きな場所に表示できるようになりました。
ブログ記事: 4D Netkit:OAuth 2.0接続インターフェースのカスタマイズ
4D Write Pro: 空のデータソースの表組みを管理
新しい属性 (wk empty datasource
) の追加により、リンクされたデータソースが空の場合、その表組みをどのように描画するかを定義できるようになりました。
ブログ記事: 4D Write Pro: 空のデータソースを管理する!
HTTPエージェントによる HTTPリクエストの管理
新しく追加された HTTPAgent
クラスを使って、HTTPRequest クラス を使ったサーバー接続の持続性と再利用を管理することができます。
ブログ記事: HTTPエージェントによる HTTPリクエストの管理
エンティティセレクションから未定義エンティティを取り除く
エンティティセレクションからエンティティを削除すると、削除された要素は未定義のままエンティティセレクション内に存在し続けます。これを取り除くため、新しい EntitySelection.clean()
関数が使用できるようになりました。REST API では $entityset
に $clean パラメーターを渡すことで同様のことをおこなえます。
ブログ記事: ORDA - 歯抜けのエンティティセレクションにさよならを
セッションストレージの取得
セッションを識別する一意のIDから、そのセッションのストレージを取得する新しいコマンド Session storage by ID
が追加されました。共有オブジェクトをセッションストレージに保存して、セッション間で情報を共有する例題も含まれています。
ブログ記事: セッションストレージへのアクセスを強化
セッションの権限確認
セッションが持つ権限を確認するための session.getPrivileges()
関数が追加されました。また、REST API $info/privileges
も利用可能です。
ブログ記事: セッション権限を検査してデバッグを容易に
コンポーネントマネージャー
4D 20 R5 では、プロジェクトの依存関係を確認するための新しいインターフェース、コンポーネントマネージャーが追加されました。また、dependencies.json
ファイル、および environment4d.json
ファイルを使用した、プロジェクトの依存関係を定義するための柔軟で新しい方法が導入されました。
ブログ記事: 4Dにおけるコンポーネント管理の簡素化
Qodly Studio for 4D: 認証とセッション終了
強制ログインモードの導入により、認証ステップでクライアントライセンスが消費されるのを避けられるようになりました。また、セッションを終了することで、4Dクライアントライセンスを即座に解放できます。
ブログ記事: Qodly Studio for 4D による 4Dクライアントライセンス消費方法の改善
4D View Pro: カスタムファンクションとコレクション/オブジェクト引数
4D View Pro のカスタムファンクションに、セルレンジに基づいたコレクション/オブジェクト引数を渡せるようになりました。
ブログ記事: 4D View Pro: カスタムファンクションの強化
4D Write Pro: 表組みの行数が無制限に
4D Write Pro の表組みの最大行数 (1000件) の制限が廃止されました。これに伴い、膨大なデータを扱う場合に起こりうる問題を避けるため、HDI で紹介しているベストプラクティスに沿って作業することが推奨されます。
ブログ記事: 4D Write Pro: 制限のない表組み!
4D Write Pro: テキストの回り込み
新しいアンカーモード wk anchor layout が追加され、アンカーされた画像とテキストボックスにテキストを回り込ませることができるようになりました。
ブログ記事: 4D Write Pro: アンカー画像とテキストボックスの表示オプションが増えました!
4D Write Pro: 用紙サイズの設定
4D Write Pro にドキュメントの用紙サイズを設定するための新しい wk page size
属性が追加されました。これに伴い、新しい標準アクション pageSize
も追加されています。
ブログ記事: 便利な新しい 4D Write Pro属性: wk page size!
リモートセッションオブジェクト
Sessionコマンドの対象がクライアント/サーバー接続とストアドプロシージャーに拡張されました。
ブログ記事: クライアント/サーバー接続とストアドプロシージャーに対応した新しい 4Dリモートセッションオブジェクト
ORDA: データの制限
ORDAによって取得されるデータを制限できるようになりました。この制限は Session オブジェクトを使用します。クライアントサーバーと Webサーバー (リモートデータストア、Qodly Studio含む) のコンテキストで利用可能です。
※ Qodly Studio の例題も含まれています。
ブログ記事: ORDA - 取得データを制限する方法
新しいウィンドウタイプで外観をカスタマイズ
新しいウィンドウタイプの追加により、ウィンドウの外観が完全にカスタマイズできるようになりました。また、次の新しいコマンドが追加されました:
日付と時間のフォーマット
日付と時間のフォーマットを細かにカスタマイズできるようになりました。
ブログ記事: 日付と時間のカスタマイズ
4D Write Pro: 電子インボイスの作成
4D Write Pro を使って、XMLファイルが埋め込まれた PDF/A3形式の PDFファイルを出力できるようになりました。
ブログ記事: 4D Write Pro:電子インボイスの作成
Gmail API: ラベルの管理
Google API を使って Gmailアカウントのラベルを作成・編集・削除できるようになりました。
※ SVGを使って簡単なアイコンを作る例題も含まれています。
ブログ記事: 4D Netkit:Gmailラベルの作成・削除・更新
Gmail API: メールの管理
Google API を使って Gmailアカウントのメールのラベルを変更できるようになったほか、複数のメールを一括取得できるようになりました。
※ SVGを使って、簡単なアイコンを作る例題も含まれています。このアイコンを階層リストやリストボックス内に表示できます。
ブログ記事: 4D Netkit:Gmail API によるラベル割り当て&複数メールの取得
ピクチャー/Blob属性にファイル参照を代入する
ピクチャーまたは Blob属性に 4D.File オブジェクトまたはパスを渡すことで、ファイルへの参照を代入できるようになりました。
参照: ピクチャーまたは Blob属性にファイルを代入する
ブログ記事: ORDA: Blob/ピクチャー属性へのパスの割り当て
データ変更の追跡
データベースにおけるデータ変更を追跡するための グローバルスタンプ が導入されました。また、これを管理するための新しい関数 ds.getGlobalStamp()
、 ds.setGlobalStamp()
が追加されました。
ブログ記事: データベースのデータ変更を追跡
Gmail API: メールの受信
Google API を使って Gmailアカウントからメールを受信できるようになりました。
ブログ記事: 4D Netkit: Gmail からラベルや Eメールを取得
複数コレクションの同期ソート
複数のコレクションを同期的にソートするための新しい Collection.multiSort()
関数が追加されました。
ブログ記事: 複数コレクションの同期ソート
4D Write Pro: フォーミュラに名前を付ける
4D Write Pro ドキュメントのフォーミュラに名前が付けられるようになりました。これにより、複雑なフォーミュラを役割名などで表せるようになり、エンドユーザーにとってドキュメントの可読性が向上します。
これにともない、次の 2つのコマンドが拡張されました: WP Get formulas
、 WP INSERT FORMULA
参考: フォーミュラの管理>参照を名前で表示
ブログ記事: 4D Write Pro: フォーミュラに名前を付ける
4D Write Pro: PDF/A への書き出し
4D Write Pro ドキュメントを PDF/Aに書き出せるようになりました。
ブログ記事: 4D Write Pro : PDF/A形式での書き出しが可能になりました!
4D Write Pro: 表ウィザード
データソース付きの表組みを作成し、4D Write Pro ドキュメントに挿入するのを助ける表ウィザードが実装されました。このウィザードはエンドユーザーも利用できるもので、デベロッパーによるテンプレートや表示名などの設定が可能です。
参考: 4D WritePro Interface
ブログ記事: 4D Write Pro – データソース付き表組みの作成ウィザード
エラーのスロー
v20R2 では、新しい throw
コマンドを使って、エラーをスローできるようになりました。
ブログ記事: 4Dコードのエラー管理を強化
4D NetKit: OAuth2.0サーバーへの接続
4D NetKit を使って、Microsoft や Google 以外の OAuth2.0 サーバーにも接続することができます。ここでは、GitHubへの接続を紹介します。
ブログ記事: 4D NetKit: OAuth2認証の強化
Gmail API: メール送信
Google API を使って Gmailアカウントからメール送信ができるようになりました。
ブログ記事: Gmail API を使ったメール送信
4D Write Pro: 表組みのセル結合
4D Write Pro の表組みのセルを結合できるようになりました。これに伴い、WP TABLE MERGE CELLS
および WP TABLE SPLIT CELLS
コマンドも追加されています。
ブログ記事: 4D Write Pro: 表組みのセル結合
WebSocketクライアント
4D v20 R2 では、4D で WebSocketクライアント接続するための WebSocket クラス が追加されました。簡単なチャットを例に使い方を紹介します。
ブログ記事: WebSocketクライアント
4D Write Pro: 表組みのブレーク行
4D Write Pro の表組みに ブレーク行 (小計行) を設定できるようになりました。
ブログ記事: 4D Write Pro: 表組みにブレーク行を追加!
WebSocketサーバー
4D v20 より、4D は WebSocketサーバーを作成するためのコマンドを提供します。この HDI では、簡単なチャットを例に WebSocketサーバーの使い方を紹介します。
参照: WebSocketServer クラス、 WebSocketConnection クラス
ブログ記事: 新しいビルトイン WebSocketサーバー
Office365: フォルダーの作成・削除・名前の変更
Microsoft の Graph API を使用してメールフォルダーを作成・削除・名前変更する方法を紹介します。
ブログ記事: Microsoft 365: Microsoft Graph APIによるメールフォルダーの作成・削除・名前の変更
4D Write Pro: テキストボックスの docx読み込み/書き出し
4D v19 R8 で追加されたテキストボックスが、docx の読み込み/書き出しにも対応するようになりました。これに伴い、読み込み/書き出しのオプションも新たに追加されています。
ブログ記事: 4D Write Pro: テキストボックスの docx 読み込み/書き出し
コレクションの操作 v2
Collectionクラスに追加された新しい関数の紹介です:
first()
コレクションの先頭要素を返します
last()
コレクションの最終要素を返します
at()
指定インデックスにある要素を返します
flat()
ネストされたコレクションを平坦化します
includes()
指定した式の値がコレクション内で見つかれば true を返します
reduceRight()
reverse().reduce() と同じ効果
flatMap()
map().flat() と同じ効果
ブログ記事: コレクションに便利な関数を追加しました!
ボタン等の新しいプロパティ
ボタン・チェックボックス・ラジオボタンにタイトルの 横揃え および タイトルと画像を隣接させる プロパティが追加されました。また、チェックボックスとラジオボタンについては、画像の 状態の数 の最大が 6 に拡張されました。
いずれもボタンスタイルによってはプロパティが適用されない場合があります。詳しくは各プロパティのドキュメントを参照ください。
ブログ記事: フォームオブジェクトの進化
Office365: メールのコピー・移動・返信・削除 (v19r8)
Microsoft の Graph API を使用してメールをコピー・移動・返信・削除する方法を紹介します。
参照: 4D NetKit
ブログ記事: Microsoft 365: Microsoft Graph API でメールをコピー、移動、返信、削除する
Office365: メールの受信 (v19r8)
Microsoft の Graph API を使用してメールを受信する方法を紹介します。
参照: 4D NetKit
ブログ記事: Microsoft 365: Microsoft Graph API でメールを受信する
Webセッションとアクセス権限 (v19r8)
4D のスケーラブルWebセッションに権限を付与することで、データへのアクセスを詳細に管理できるようになりました。
参照: ORDA > 権限
ブログ記事: 完全な権限システムでデータアクセスをフィルタリングする
4D View Pro: 表組みとテーマ (v19r8)
4D View Pro の表組みにテーマを適用できるようになりました。 VP SET TABLE THEME
コマンドが追加されたほか、 VP CREATE TABLE
コマンドが拡張され、テーマオプションをサポートするようになりました。
ブログ記事: 4D View Pro: 表組みのスタイルをカスタマイズ
4D Write Pro: テキストボックス (v19r8)
4D Write Pro でテキストボックスを利用できるようになりました。それにともない、2つの新しいコマンドも追加されています: WP New text box
、WP DELETE TEXT BOX
参照: テキストボックスの管理
ブログ記事: 4D Write Pro : フローティングテキストボックス!
リストボックス: コレクション/エンティティセレクション型での自動行高 (v19r8)
コレクション/エンティティセレクション型のリストボックスでも自動行高が設定できるようになりました。
ブログ記事: コレクション型のリストボックスにおける自動行高
4D Write Pro: 下部キャリーオーバー行 (v19r7)
データソースに紐づいた表組みを使用する際、表が複数ページに分割される場合に 下部キャリーオーバー行 を表示できるようになりました。これは通常、小計を表示するのに使用します。
ブログ記事: 4D Write Pro: キャリーオーバー行を導入
4D Write Pro: フォーミュラの簡略表示 (v19r7)
新しく追加された フォーミュラソースを記号として表示 プロパティを使って、ドキュメントのフォーミュラを ⓕ 記号として簡略に表示することができます。これは、エンドユーザーがフォーミュラの詳細な定義を知る必要がない場合に便利です。
ブログ記事: 4D Write Pro: ユーザーフレンドリーな式表示
4D Write Pro: ドキュメントの変更検知 (v19r7)
新しい .modified
プロパティを使って、ドキュメントが変更されたかどうかを検知できます。
ブログ記事: 4D Write Pro – ドキュメントの変更を検知
リストボックス: 複数行のドラッグ&ドロップ (v19r7)
リストボックスから複数行をドラッグ&ドロップする際、”alt” キーを使わなくても自然に操作できるようになりました。
ブログ記事: リストボックス – Altキーよ、さようなら!
4D View Pro: 表組みの列の管理 (v19r7)
新しく追加された VP INSERT TABLE COLUMNS
、
VP REMOVE TABLE COLUMNS
、
VP SET TABLE COLUMN ATTRIBUTES
、
VP Get table column index
を使って表組に列を追加・削除する方法を紹介します。
ブログ記事: 4D View Pro: 行と列を管理する新しいコマンド
フォームオブジェクトの角の丸み (v19r7)
静的テキストおよび入力オブジェクトのプロパティに 角の半径
が追加され、角の丸みを設定できるようになりました。
ブログ記事: 角の丸み、登場!
FileHandle クラス (v19r7)
新しく追加された FileHandle クラス
で、ファイルを毎回開いたり閉じたりする必要なく、書き込み・読み取りが容易にできるようになりました。
ブログ記事: ファイル、フォルダー…そしてファイルハンドル!
4D Write Pro: 空ピクチャーの非表示化 (v19r6)
4D Write Pro ドキュメントに含まれる空ピクチャーを非表示にできるようになりました (デフォルトでは空の四角を表示)。
参照: 空のピクチャー
ブログ記事: 4D Write Pro: 空ピクチャーの非表示化
メール: OAuth2を使って、Microsoftアカウントからメールを送信する (v19r6)
4D NetKit が提供する OAuth2Provider クラス、および Office365クラスを使って、Microsoftアカウントと連携してメールを送信する方法を紹介します。
参照: 4D NetKit、HDI “メール: Microsoft ID プラットフォームから Oauth2.0アクセストークンを取得“
ブログ記事: Microsoft 365: 電子メールの送信
4D View Pro: 表組みとデータコンテキスト (v19r6)
新しく追加された VP CREATE TABLE
と VP REMOVE TABLE
コマンドを使って、表組みの作成と削除ができるようになりました。この表組みにデータコンテキストを関連付けることで、コレクションやオブジェクトに格納されたデータを簡単に表示できます。
ブログ記事: 4D View Pro: コレクションを表組みとして表示
4D Write Pro: 表組みとデータソースの関連付け (v19r6)
4D Write Pro ドキュメントの表組みに、コレクションやエンティティセレクションをデータソースとして関連づけられるようになりました。
参照: データソースに基づくテーブル
ブログ記事: 4D Write Pro: エンティティセレクションやコレクションで表組みを動的に埋める
リストボックス: プロパティの取得・設定 (v19r6)
LISTBOX SET PROPERTY
、および
LISTBOX Get property
コマンドを使って、リストボックスのプロパティを設定する方法を紹介します。
4D v19 R6 では “横方向パディング” および “縦方向パディング” プロパティが新たに追加され、内マージンの設定が可能になりました。
ブログ記事: リストボックス: もっと美しく、もっと便利に
フォーミュラを関数やコマンド内で使う (v19r6)
コードを呼び出す Collectionクラス関数は、formula 引数として Formulaオブジェクトをサポートするようになりました。
また、
EXECUTE METHOD IN SUBFORM
、
CALL FORM
、
CALL WORKER
コマンドも Formulaオブジェクトをサポートするようになりました。
ブログ記事: コレクションとコールバックコマンドにおけるフォーミュラの使用
HTTPRequest クラス (v19r6)
新しい HTTPRequest
クラスを使って、HTTPRequest オブジェクト を扱うことができます。このオブジェクトは、HTTPサーバーへのリクエストの設定と送信、および HTTPサーバーのレスポンスを処理するのに使用します。
ブログ記事: HTTPクラス: 非同期の HTTPリクエストを実行する新しい方法
ORDAキャッシュの管理とRESTリクエストの最適化 (v19r5)
パフォーマンスのさらなる向上のため、ORDAキャッシュを管理する機能とRESTリクエストを最適化する機能が追加されました。
dataClass.setRemoteCacheSettings()
、
dataClass.getRemoteCache()
、
dataClass.clearRemoteCache()
、
entitySelection.getRemoteContextAttributes()
、
entity.getRemoteContextAttributes()
、
dataStore.getRemoteContextInfo()
、
dataStore.getAllRemoteContexts()
、
dataStore.clearAllRemoteContexts()
、
dataStore.setRemoteContextInfo()
ブログ記事: ORDA - RESTリクエストの管理によるパフォーマンスの最適化
親フォームとサブフォーム間の通信 (v19r5)
新しく追加された OBJECT Get subform container value
および OBJECT SET SUBFORM CONTAINER VALUE
コマンドを使い、親フォームとサブフォーム間でスカラー型の変数あるいは式を同期させることができます。
参考: サブフォーム
ブログ記事: フォームとサブフォームの通信を簡単に
4D View Pro: データコンテキストの利用 (v19r5)
4D View Pro ドキュメントのシートにデータコンテキストを関連付けることができるようになりました。オブジェクトまたはコレクションをバインドすることで、それらの内容をシートのセルに自動で表示することができます。
参考: VP SET DATA CONTEXT
、
VP Get data context
、
VP SET BINDING PATH
、
VP Get binding path
ブログ記事: 4D View Pro: データコンテキストを使ったデータ表示
4D Write Pro: データコンテキストの利用 (v19r5)
4D v19R5 より、4D Write Pro ドキュメントにデータコンテキストを関連付けることができるようになりました。これにより、テンプレートドキュメント内で、エンティティやエンティティセレクションといった ORDAデータのほか、任意のオブジェクトデータを利用することができます。
参考: WP SET DATA CONTEXT
、WP Get data context
ブログ記事: ORDA と 4D Write Pro : パワーカップル!
4D Write Pro: 段落のリンク (v19r5)
4D Write Pro の段落を、次の段落とリンクするための新しい wk keep with next
属性が追加されました。これを設定すると、改ページやカラムブレークにより、離してはいけない段落同士が分離されてしまうことを防げます。
参考: 段落ブレーク>自動ブレークを管理する>次の段落につなげる
ブログ記事: 4D Write Pro - 段落リンクでレイアウト改善
Write Pro: 繰り返し表示される表組みのヘッダー行 (v19r5)
4D v19R5 より、4D Write Pro の表組みは、最大5行までのヘッダー行を持てるようになりました。
参考: テーブルの管理>繰り返し表示されるヘッダー行
ブログ記事: 4D Write Pro: 表組みのヘッダー行
Copy Parameters (v19r5)
新しく追加された Copy parameters
コマンドを使い、関数/メソッドから関数/メソッドへと引数を転送することができます。
ブログ記事: パラメーターを簡単に管理する方法
システムワーカー (v19r4)
新しい SystemWorker
クラスを使って、外部プロセスを非同期に実行することができます。
ブログ記事: 外部プロセスを非同期で起動する
View Pro: ワークブックオプションの管理 (v19r4)
新しい VP SET WORKBOOK OPTIONS
コマンドを使って、様々なワークブックオプションを管理することができます。
ブログ記事: 4D View Pro:ワークブックオプション
Write Pro: 表組みの行内部の自動改ページ (v19r4)
4D Write Pro に新しい wk page break inside row
属性が追加され、表組みの行内部の自動改ページができるようになりました。
参考: 表のページ分け
ブログ記事: 4D Write Pro - ページレイアウトをより詳細に管理
ORDAクラス: エイリアス属性 (v19r4)
ORDAクラスに エイリアス属性 を定義できるようになりました。
ブログ記事: ORDA - エイリアス属性
メール: Microsoft ID プラットフォームから Oauth2.0アクセストークンを取得 (v19r3)
Microsoft ID プラットフォームから Oauth2.0アクセストークンを取得し、IMAP および SMTP transporter を作成するサンプルです。
ブログ記事: Microsoft 365へのアクセス
Webエリア: Webカメラの使用 (v19r3)
Webエリアの 埋め込みWebレンダリングエンジンを使用
プロパティを有効にすることで、コードを書くことなく Webカメラが
使用できることを紹介します。
ブログ記事: Webエリアが Webカメラに対応
Write Pro: SVGへの書き出し (v19r3)
WP EXPORT DOCUMENT
および WP EXPORT VARIABLE
コマンドの機能が拡張され、4D Write Pro ドキュメントを SVG に書き出せるようになりました。
参考:SVG フォーマットへの書き出し
ブログ記事: 4D Write Pro ドキュメントをSVG形式で書き出す
Write Pro: 継続セクションブレーク (v19r3)
4D Write Pro に、改ページを強制しない 継続したセクションブレーク が追加されました。これにより、ページ内で複数のセクションを管理できるようになり、同じページ上で異なる段組の設定ができるようになりました。
ブログ記事: 4D Write Pro - 継続セクションブレーク
Write Pro: フォーミュラのハイライト (v19r3)
4D Write Pro に新しい表示オプションが追加され、ドキュメントに含まれるフォーミュラを、値表示・参照表示のいずれの場合でもハイライトすることができるようになりました。
ハイライトは wk formula highlight
および wk formula highlight color
を使って設定します。
参照: 4D Write Pro標準アクションの使用
ブログ記事: 4D Write Pro: フォーミュラはいずこ
ORDAクラス: 計算属性 (v19r3)
ORDAクラスに 計算属性 が追加できるようになりました。それぞれ専用の関数を設定することで、計算属性値を取得・設定・クエリ・並べ替えすることが可能です。
ブログ記事: ORDAの計算属性によるマジックショー!
クラス: 計算プロパティ (v19r3)
Function get
および Function set
キーワードを使って、クラスに 計算プロパティ が追加できるようになりました。
ブログ記事: クラスに計算プロパティが登場!
4D Write Pro: ピクチャーフォーマットの変更 (v19r2)
4D Write Pro に新しく wk image display mode
属性が追加され、インラインおよびアンカーピクチャーのフォーマットが変更できるようになりました。また、新しい wk background display mode
の追加によって、背景画像のフォーマットも簡単に変更できるようになりました。これらの属性の値として使用できる定数は 4D Write Pro > ピクチャーを管理する > 背景画像 の章にて説明しています。
ブログ記事: 4D Write Pro - 新しいピクチャーフォーマット
Position
コマンドにおいて、強力なオプションとして使用することができます。また、重複の検出や並べ替えをおこなう目的で文字列を比較するための新しい Compare strings
コマンドも追加されています。4DEACH
が新たに変換タグとして追加されました。Encrypt data BLOB
Decrypt data BLOB
コマンドを使って、パスフレーズとソルト付与によるBLOBの暗号化・復号化ができます。外部保存の機密文書(PDFファイル)を暗号化・復号化するサンプルアプリケーションを使って、この機能を紹介します。Compile project
コマンドを使って、プロジェクトをプログラムからコンパイルできるようになりました。このコマンドを使うと、カレントプロジェクト以外のプロジェクトもコンパイルすることが可能です。WP Import document
コマンド、 .docx フォーマットのファイルの読み込み方 。WP Get breaks
コマンドを使って、ドキュメント内にあるブレークの種類と位置を取得できるようになりました。IMAP_transporter
クラスの関数
.createBox()
、
.deleteBox()
、
.renameBox()
、
.subscribe()
、
.unsubscribe()
を使ってメールボックスを操作する方法を紹介します。on VP Range Changed
と on Timer
イベントを組み合わせて利用します。VP Run offscreen area
の 例題2IMAP_transporter.searchMails( )
を使って、メールサーバー上で選択されているメールボックス内のメールを検索することができます。IMAP_transporter.append( )
を使って、ローカルで作成したメールをメールサーバーに保存することができます。VP Find
コマンドを使って、4D View Pro ドキュメント内の値を検索・置換できるようになりました。このコマンドにはさまざまな検索条件を追加することができます。Session
コマンドは、カレントのスケーラブル Web セッションに対応した Session オブジェクト
を返します。storage
プロパティ を使って、同セッション内で共有したいデータを保存することができます。On Before Keystroke
イベントが発生するようになりました。このイベントを利用してクエリやハイライトなどの操作をおこなうことができます。Is editing text
コマンドが追加され、これにより On Before Keystroke
イベントが生成されたときに進行中の入力があるかどうかを検知することができるようになりました。IMAP_transporter.copy( )
、
IMAP_transporter.move( )
、
IMAP_transporter.expunge( )
を使って、サーバー上のメールをコピー・移動・削除する方法を紹介します。entitySelection.copy()
を使った場合で、共有可能 (追加不可) エンティティセレクションを追加可能 (共有不可) にしたり、その逆が可能です。entitySelection.isAlterable()
を使って、エンティティセレクションの特性が共有可能か追加可能かを確認することができます。WP SET ATTRIBUTES
コマンドで
wk tab decimal separator
セレクターを使用して、4D Write Pro ドキュメントの小数点揃えの設定を変更できるようになりました。点基準、カンマ基準、最初の点またはカンマ基準、システム設定基準で小数点を揃えることができます。entitySelection.copy()
コマンドや、拡張された OB Copy
コマンドを使って、共有可能なエンティティセレクションとしてコピーすることが可能です。VP SET CUSTOM FUNCTIONS
を使って、4D View Pro で使用できるカスタムファンクションを作成することができます。local
および exposed
) が使えるようになりました。LISTBOX SET PROPERTY
、および
LISTBOX Get property
コマンドを使って、リストボックスのプロパティを設定する方法を紹介します。4D v18 R4 では “行の移動可” プロパティが新たに追加され、配列型のリストボックスに対して適用することができます。VP SUSPEND COMPUTING
、
VP RESUME COMPUTING
、および
VP RECOMPUTE FORMULAS
コマンドを使って、4D View Pro エリアの計算を停止・再開・強制することができます。wk break paragraphs in formulas
が追加されました。WP SET ATTRIBUTES
コマンドを使ってこれを指定することで、4D Write Pro ドキュメント内のフォーミュラが返すキャリッジリターン文字を改行・改段落のどちらとして認識するか選択することができます。WP EXPORT DOCUMENT
コマンドを使って、4D Write Pro ドキュメントを PDF のファイルまたは BLOB 変数にエクスポートできるようになりました。VP Run offscreen area
コマンドを使って、オフスクリーンの (メモリにしか存在せず、表示されない) 4D View Pro エリアが作成できるようになりました。このオフスクリーンエリアはドキュメントのエクスポートなどに利用できます。WA Run offscreen area
コマンドを使って、オフスクリーンの (メモリにしか存在せず、表示されない) Web エリアが作成できるようになりました。この Web エリアは Web ページを自動的に読み込んで解析するといったことに使用できます。wk protected
属性を使ってドキュメント要素に対して保護の有無を設定し、ドキュメント属性であるwk protection enabled
を使うことで、保護を有効化・無効化することができます。START MONITORING ACTIVITY
コマンドを使って、指定以上の時間を要した 4Dランゲージ実行、ネットワークリクエスト、4D データなどのオペレーションを記録することができます。また、このコマンドと連携して使われる Get Monitored Activity
と STOP MONITORING ACTIVITY
コマンドも追加されました。WEB Server
コマンドを使って、WebServer オブジェクトを取得し、Webサーバーを操作することができます。WEB Server list
コマンドも追加されました。VP SET SHEET OPTIONS
コマンドを使って、4D View Pro のシートオプション (セルデータの領域外表示、枠線やヘッダーの表示、シートの保護、枠線・タブ・選択の色指定など) を設定することができます。LISTBOX SELECT ROWS
コマンドは、エンティティセレクション型リストボックスおよびコレクション型リストボックスにおいて、選択行を指定するエンティティセレクションおよびコレクションを引数として受け取ります。また、現在の選択行に対するアクション (置換・追加・削除) も指定することができます。WP DELETE PICTURE
コマンドを使って、4D Write Pro ドキュメントに含まれる画像を削除できます。VP SET FROZEN PANES
コマンド使って、4D View Pro ドキュメントのカラムや行を固定化することができます。WP Get formulas
WP INSERT FORMULA
WP COMPUTE FORMULAS
WP FREEZE FORMULAS
VP DELETE ROWS
VP DELETE COLUMNS
VP INSERT ROWS
VP INSERT COLUMNS
VP SET ROW COUNT
VP SET COLUMN COUNT
VP SET ROW ATTRIBUTES
VP SET COLUMN ATTRIBUTES
VP ROW AUTOFIT
VP COLUMN AUTOFIT
FORM Event
コマンド使い、リストボックスのイベントが提供する詳細情報の活用例を紹介します。MAIL Convert from MIME
コマンドでメールオブジェクトに変換し、メールの本文として送信することができます。ZIP Create archive
およびZIP Read archive
を使って、ファイルやフォルダーを圧縮したり、圧縮されたアーカイブを読み取ったりすることができます。FORM Event
コマンド使って、4D View Pro エリア内で発生するイベント の情報を取得する方法を紹介します。Form event
コマンドは Form event code
に名称変更されています。Form event code
と FORM Event.code
が返す値は同じです。WP Table insert rows
WP Table insert columns
WP TABLE DELETE ROWS
WP TABLE DELETE COLUMNS
WP Table get rows
WP Table get columns
WP Table get cells
VP Convert to picture
コマンドは、4D View Pro ドキュメントを SVG ピクチャーに変換します。このピクチャーをフォームに読み込んで印刷したり、他の (4D Write Pro などの) ドキュメントに埋め込んだりすることができます。WP New style sheet
コマンドで新規のスタイルシートを作成し、WP Get style sheet
コマンドで既存のスタイルシートを取得できます。WP IMPORT STYLE SHEETS
WP Get style sheets
WP DELETE STYLE SHEET
VP SET PRINT INFO
コマンドを使って、4D View Pro ドキュメントの印刷属性を設定し、VP PRINT
コマンドおよび VP EXPORT DOCUMENT
コマンドを使った印刷やPDF出力機能の紹介です。Open datastore
コマンドを使って、RESTリソースとして公開されている外部の 4D データベースをリモートデータストアの形で取得し、操作することができます。ds
コマンドおよび dataStore.getInfo( )
メンバーメソッドが拡張されています。folder.files( )
folder.folders( )
folder.parent
entitySelection.orderByFormula( )
メンバーメソッドが追加され、エンティティセレクションの並べ替えにフォーミュラを使えるようになりました。OBJECT SET RGB COLORS
、
LISTBOX SET ROW COLOR
、
LISTBOX SET GRID COLOR
VP Get default style
、
VP SET DEFAULT STYLE
、
VP ADD STYLESHEET
、
VP Get cell style
、
VP SET CELL STYLE
、
VP SET BORDER
query()
メンバーメソッドが拡張され、フォーミュラを扱えるようになりました。VP Get values
およびVP Get formulas
で値やフォーミュラの一括取得、VP SET VALUES
およびVP SET FORMULAS
で値やフォーミュラの一括設定ができます。entity.getDataClass( )
およびentitySelection.getDataClass( )
のほか、値と属性パスのプレースホルダー、dataClass.{attributeName}
オブジェクトを活用した、データクラスに依存しない汎用的なコードや、動的なクエリインターフェースの例を紹介します。WP SET ATTRIBUTES
コマンドに、新しく追加された定数wk tab default
またはwk tabs
を指定することで、4D Write Pro ドキュメントのデフォルトタブ・任意のタブが定義できます。WP SET VIEW PROPERTIES
コマンドを使って、4D Write Pro ドキュメントのビュープロパティをプログラムにより制御できるようになりました。ビュープロパティを取得するための、WP Get view properties
コマンドも追加されています。WP SET LINK
コマンドを使って、4D Write Pro ドキュメントに様々な種類のリンクが貼れるようになりました:Web URL、4Dメソッド、4D Write Pro ドキュメント、開いているドキュメント内のブックマーク。リンク内容を取得するための、WP Get links
コマンドも追加されています。WP SELECT
WP SET TEXT
WP SET ATTRIBUTES
WP INSERT DOCUMENT
WP INSERT PICTURE
WP Insert table
WP INSERT BREAK
VP Get selection
VP Get active cell
VP SET SELECTION
VP SET ACTIVE CELL
VP RESET SELECTION
VP SHOW CELL
dataClass.getInfo( )
entity.getDataClass( )
entitySelection.getDataClass( )
SET USER ALIAS
コマンドを使って、カレントユーザーのエイリアスが設定できるようになりました。これにともない、Current user
コマンドも拡張され、定数パラメーターを受け渡せるようになりました。Encrypt data file
Data file encryption status
Register data key
New data key
Discover data key
ds.provideDataKey( )
ds.encryptionStatus( )
dataClass.query( )
およびentitySelection.query( )
のメンバーメソッドを使う際に、属性パスのプレースホルダーが使えるようになりました。dataClass.query( )
およびentitySelection.query( )
のメンバーメソッドを使う際に、値の命名プレースホルダーが使えるようになりました。File
コマンドとFolder
コマンド、およびその戻り値であるファイルオブジェクトとフォルダーオブジェクトを使って、ファイルやフォルダーの操作がオブジェクト記法で簡単にできるようになりました。SET FIELD TITLES
およびSET TABLE TITLES
コマンドで定義したバーチャルストラクチャーが 4D Write Pro 内で利用できるようになりました。WP Get position
コマンドが拡張され、4D Write Pro ドキュメント内の任意のレンジについて、ページ上の座標を取得できるようになりました。VP SET VALUE
およびVP Get value
コマンドによって、4D View Pro ドキュメントのセルの値を設定・取得することができます。SMTP New transporter
コマンドによって生成した SMTP transporter オブジェクトを使ってメールを送信することができます。WP EXPORT DOCUMENT
およびWP EXPORT VARIABLE
コマンドを使って、4D Write Pro ドキュメントから.docx形式への書き出しをすることができます。Get application info
コマンドを使って、アクティブデータベースと、そのネットワーク設定に関する情報を取得することができます。FORM Convert to dynamic
コマンドを使って、4DBファイルに保存された従来の 4DフォームをJSONファイルに変換し、ダイナミックフォームとして使用することができます。VP IMPORT DOCUMENT
およびVP EXPORT DOCUMENT
コマンドを使って、XLSXファイルをインポート・エクスポートすることができます。New formula
コマンドを使って、メソッドをオブジェクト化することができます。オブジェクト化されたメソッドは引数として受け渡すことができます。WP Get section
WP Get sections
WP SET ATTRIBUTES
WP Create subsection
WP Get subsection
VP IMPORT FROM OBJECT
entitySelection.sum( )
entitySelection.min( )
entitySelection.max( )
entitySelection.count( )
entitySelection.average( )
entitySelection.distinct( )
entitySelection.and( )
entitySelection.or( )
entitySelection.minus( )
dataClass.newSelection( )
entitySelection.add( )
entitySelection.first( )
entity.first( )
entitySelection.last( )
entity.last( )
entity.previous( )
entity.next( )
entitySelection.contains( )
entity.indexOf( )
entitySelection.isOrdered( )
entitySelection.slice( )
entity.save( )
entity.clone( )
entity.reload( )
entity.drop( )
entity.touchedAttributes( )
entity.touched( )
entity.diff( )
entity.lock( )
entity.unlock( )
entity.toObject( )
entitySelection.toCollection( )
entity.fromObject( )
dataClass.fromCollection( )
Create entity selection
USE ENTITY SELECTION
entitySelection.query( )
dataClass.query( )
WP Get elements
コマンドを使って、ドキュメントの要素をすべて、あるいは種類別に一度に取得することができます。取得要素はコレクションに格納されて返されます。WP Get position
コマンドを使って、ドキュメント要素の位置情報を取得することができます。WP Get text
およびWP SET TEXT
コマンドを使って、テキストの取得や挿入をすることができます。For each...End for each
ループの使用例です。コレクション内の各要素、エンティティセレクション内の各エンティティ、オブジェクト内の各プロパティの反復処理が可能です。DIALOG
コマンドには、フォームデータを引数として渡すことができるようになりました。渡したオブジェクトはフォームにおいてForm
コマンドによって呼び出すことができます。EXPORT STRUCTURE
コマンド使って、データベースストラクチャー定義をXMLフォーマットで書き出します。dataClass.new( )
entity.save( )
entity.drop( )
entitySelection.drop( )
collection.query( )
メンバーメソッドを使ったコレクションのクエリ方法を紹介します。プレースホルダーを使った例、使わない例、比較演算子や、文字列をクエリする際の”@”の扱いなど。Split string
文字列をコレクションに分割しますcollection.join( )
コレクション要素を文字列にしますCOLLECTION TO ARRAY
コレクションを配列に変換しますARRAY TO COLLECTION
配列をコレクションに変換しますcollection.unshift( )
コレクションの先頭に要素を挿入しますcollection.shift( )
先頭要素を取り出しますcollection.push( )
コレクションの末尾に要素を追加しますcollection.pop( )
コレクションの最終要素を取り出しますcollection.map( )
コレクションの各要素にメソッドを適用しますcollection.average( )
collection.sum( )
collection.min( )
collection.max( )
統計用のメンバーメソッドですcollection.insert( )
コレクションに要素を挿入しますcollection.extract( )
コレクションの各要素の特定のプロパティ値を抽出しますcollection.find( )
指定メソッドに引数として渡すとtrueを返す最初の要素を返しますcollection.filter( )
指定メソッドに引数として渡すとtrueを返すすべての要素を返しますcollection.query( )
クエリ文字列で指定した条件に合致するすべての要素を返しますcollection.findIndex( )
指定メソッドに引数として渡すとtrueを返す最初の要素のインデックスを返しますcollection.indices( )
クエリ文字列の条件に合致するすべての要素のインデックスを返しますcollection.indexOf( )
式と一致する最初の要素のインデックスを返しますcollection.lastIndexOf( )
式と一致する最後の要素のインデックスを返しますcollection.count( )
Nullでない要素の数、オブジェクトプロパティを指定した場合はそれを含む要素の数を返しますcollection.length
コレクションの要素の数を返します(これはメンバーメソッドではなく、コレクションのプロパティです)collection.countValues( )
指定した値がコレクション内で見つかった回数を返しますcollection.copy( )
コレクションインスタンスのディープ・コピーを返しますcollection.slice( )
指定した開始インデックスから、指定した終了インデックスの一つ前までの要素を返しますcollection.distinct( )
重複しない要素のみを格納したコレクションを返しますcollection.equal( )
二つのコレクションを比較し、要素に相違ない場合はtrueを返しますcollection.concat( )
コレクションの末尾に要素を追加します(二つのコレクションを一つにまとめることができます)collection.every( )
指定メソッドに引数として渡すとtrueを返す要素だけで構成されたコレクションの場合にtrueを返しますcollection.some( )
指定メソッドに引数として渡すとtrueを返す要素が一つ以上コレクションに含まれていればtrueを返しますcollection.reverse( )
すべての要素を逆順に並べ替えますcollection.orderBy( )
指定した順番でコレクションの要素を並べ替えますcollection.orderByMethod( )
指定したメソッドが定義する順番でコレクションの要素を並べ替えますStorage
コマンドより取得することができます。WP Add picture
コマンドを使って、4D Write Pro ドキュメントのテキストレイヤーの前面および背面に、アンカー画像を追加することができます。HTTP Request
コマンドを使って Twitter のアカウント認証と文字列検索を行う方法の紹介です。JSON Resolve pointers
コマンドは、引数として渡されたオブジェクトに含まれるすべての JSON ポインターを解決します。WP SET ATTRIBUTES
コマンドで背景属性のwk background clip
とwk background origin
をwk paper box
に指定します。WP Get header
WP Get body
WP Get footer
WP Get frame
WP SET FRAME
Get process activity
コマンドを使って、セッションやプロセスの情報をモニタリングする方法を紹介します。OBJECT SET HELP TIP
およびLISTBOX GET CELL POSITION
コマンドが拡張され、リストボックス内に個別のヘルプTipsを追加できるようになりました。WP SET ATTRIBUTES
コマンドで任意のレンジにwk link url
を設定し、リンクを挿入する方法を紹介します。VP NEW DOCUMENT
VP EXPORT DOCUMENT
VP Export to object
VP IMPORT DOCUMENT
VP IMPORT FROM OBJECT
WP Insert table
WP Table append row
WP Table get columns
WP Table get rows
WP Table get cells
JSON Validate
を使って、任意のJSONオブジェクトが、あらかじめ定義したJSONスキーマに適合するかをチェックすることができます。また、適合しなかった場合のデバッグ用に、要素の位置を特定できるようJSON Parse
コマンドが拡張されました。FORM GET ENTRY ORDER
FORM SET ENTRY ORDER
によってフォーム上のタブ移動による入力順を動的に指定できるようになりました。SET DATABASE PARAMETER
でTips enabled
、Tips delay
、Tips duration
の新パラメーターが設定できるようになりました。OBJECT SET HELP TIP
INVOKE ACTION
の使用含め、標準アクションを利用する方法を紹介します。Get action info
コマンドを使って、任意の標準アクションについて、特定のコンテキストにおける利用可能性やステータスなどの情報を取得することができます。New object
が追加されました。従来のコードと新コマンドを使ったコードを比較します。LISTBOX SET PROPERTY
を使って、リストボックスのプロパティをプログラミングにより設定するデモンストレーションです。ORDER BY ATTRIBUTE
を使って、オブジェクトフィールド内のプロパティに基づいてセレクションを並べ替えることができます。QUERY BY ATTRIBUTE
QUERY SELECTION BY ATTRIBUTE
コマンドが拡張され、オブジェクト配列が含まれているオブジェクトフィールドのクエリが便利になりました。WP CREATE BOOKMARK
WP GET BOOKMARKS
WP Get bookmark range
WP DELETE BOOKMARK
SET ALLOWED METHODS
によって許可されている必要があります。WP New
ドキュメントの新規作成WP INSERT DOCUMENT
ドキュメントの挿入WP INSERT BREAK
ブレークの挿入WP Get page count
総ページ数の取得WP INSERT PICTURE
コマンドを使って 4D Write Pro ドキュメントにピクチャーを挿入します。WP PRINT
WP USE PAGE SETUP
コマンドを使った、4D Write Proドキュメントの印刷機能の紹介です。DISTINCT ATTRIBUTE PATHS
DISTINCT ATTRIBUTE VALUES
GET PICTURE FORMATS
でピクチャーのファイル形式を取得することができます。On Column Resize
がカラムリサイズ中にリアルタイムで発生するようになりました。LISTBOX SET ROW HEIGHT
およびLISTBOX Get row height
を使って、あるいは行高さ配列を関連付けることで、リストボックスの各行の高さを個別に指定することができます。Cache info
Get cache size
SET CACHE SIZE
On Mouse Up
イベントの紹介です。Print settings to BLOB
BLOB to print settings