4D Write Proでヘッダーとフッターをプログラム的に管理する

Deeplからの自動翻訳

4D Write Pro テンプレートにヘッダーとフッターを付けて、このテンプレ ートに基づいて他のドキュメントを作成する機能を提供して欲しいという 要望を、お客様から何度かいただきました。4D v16 R5では、この機能を利用することができます。

4D Write Proに新しいコマンド群が追加され、このニーズを満たすことができます。これらのコマンドのいくつかは、ドキュメント内のヘッダー、ボディ、フッターの参照を取得するために使用することができます。その他は、現在カーソルがあるフレーム(ヘッダー、フッターなど)の参照を取得したり、カーソルを特定のフレームに設定したりするのに便利です。

データベース例

ヘッダー、フッター、ボディへの参照を取得する

新しい4Dコマンド WP Get header, WP Get body WP Get footer– が追加され、開発者がドキュメントや特定のセクションのヘッダーやフッターへの参照を取得できるようになりました。

これらの参照は、関連する範囲の取得、ドキュメントの作成などに利用できます。最終的な目標は、任意のフレームの内容を(全部または部分的に)コピーし、同じドキュメントの他のフレームや、他の新規または既存のフレーム内に貼り付けることです。

コードサンプル

// Get the header from a template and put it in the header of the main document
$source:=WP Get header(mytemplate;1)// first section
$rangeSource :=WP Get range($source;wk start text;wk end text)
$tempoc :=WP New($rangeSource)

$target :=WP Get header(myDocument;1)// first section
$rangeTarget :=WP Get range($target;wk start text;wk end text)
WP INSERT DOCUMENT ($rangeTarget;$tempoc;wk replace)

カーソルを特定のフレームに移動させる

プログラミングで複雑な文書を作成する際、ある情報をまずヘッダーに、次にフッターに、そして最後に本文に戻したいと思うことがあるかもしれません。このような場合、カーソルを特定のフレームに移動させる機能が必要になります。

コマンドは WP Get frameコマンドは、現在カーソルがあるフレームへの参照を取得するために使用します:header, first header, body, first footer, etc.この WP SET FRAMEコマンドは、その逆の働きをします。このコマンドは、ドキュメントにフレームが存在する限り、カーソルを特定のフレーム 内に配置します。

コードサンプル

例えば、カーソルをメインヘッダーに移動させたいとします。

WP SET FRAME(*; "WParea";wk current section default header)

ユーザーがヘッダーまたはフッターにカーソルを設定したことを確認したい場合。

$frame:=WP Get frame(*; "WParea")
If ($frame=wk body)
ALERT ("Please select a footer or a header")
End if

Roland Lannuzel
- プロダクトオーナー&4Dエキスパート -電子工学を学んだ後、産業用ITの分野で開発者兼コンサルタントとして、さまざまなデータベースやテクノロジーを使って顧客のためのソリューションを構築。80年代後半に4Dに惚れ込み、会計、請求書作成、メールシステムなどのビジネスアプリケーションの作成に4Dを使用してきました。現在も、新機能やデータベース開発ツールの定義など、4Dの未来を積極的に切り開いています。