4D Write Pro に表組みが導入されて以来、多くの新機能が追加されました。ヘッダー、フッター、並べ替えブレーク 、そして、データソースを表に関連付けて自動的にデータで埋める機能などです。
この最後の機能は、表あたりの最大行数 (1000行) にしばしば達する可能性があることを意味します。この点を考慮し、4D 20 R5 では、この上限は 4D Write Pro によって決定されるのではなく、利用可能なメモリによってのみ制限されるようになりました!
HDI: 4D Write Pro: 表組みの行数が無制限に
必要なだけの行数、列数
表組みに関連付けられたデータソースに関係なく、エンティティセレクション (またはコレクション) の各要素は 1行を生成します。表組みに並べ替えブレーク、下部のキャリーオーバー行、複数行のヘッダー、その他の行が含まれていても、問題にはなりません。長大な請求書、膨大な命名規則、大企業のディレクトリに関する懸念は、もう昔のことです!
なお、より大きなドキュメントを処理するために 4D Write Pro エリアが最適化され続けていても、効率的に表組みをデータで埋めることができるよう、テンプレートの使用がますます推奨されます。
大きな力=大きな責任
以前は、インターフェースのフリーズやメモリのオーバーフローを防ぐために、最大行数に制限がありました。この制限が廃止された今、マシンのパワー (特に使用可能なメモリ量) と、ドキュメントの印刷やエクスポート前に表に挿入したい行数との兼ね合いに注意を払うことが重要になります。行数が多ければ多いほど、インターフェースが重くなり応答性が落ちる危険性が高くなります。
そのため、今まで以上にテンプレートを使用し、制限されたデータセットでテストすることをお勧めします。そうすることで、インターフェースがフリーズする問題を引き起こすことなく、表組みの操作 (列のサイズ変更、スタイルの変更など) をおこなうことができます。
その後、印刷やエクスポートの際には、ワーカー (別プロセス) を使い、(コンテキストを利用して) “実際の” データを用いるようにすれば、ユーザーインターフェースへの直接の影響はありません。
固定化するかしないか?
テンプレートを使用するかどうかにかかわらず、ドキュメント内のフォーミュラは非常に重要です。そのため、インターフェース経由で固定化アクションが要求されたときに、確認ダイアログを追加しました。これにより、(たとえ元に戻す操作が可能であっても) 大切なフォーミュラを誤って削除することが防げます。
まとめ
今回の開発により、4D Write Pro を最大限に活用して、制限のないドキュメントを作成していただけると思います。テンプレートとワーカーの使用例は、HDIのプロジェクトで提供されています。インスピレーションの源として遠慮なくお使いください!