DioDocs では、帳票テンプレートから Excel 帳票を作成する際、まず空白行を挿入し、その後にデータとスタイルを設定して、最終的な Excel 帳票を生成します。帳票テンプレートに固定レイアウトが定義されている場合、この固定レイアウトの範囲にデータを適切に連結するために使用できる2つのプロパティがあります。
FillMode(省略形:FM)プロパティは、Insert、Overwrite、OverwriteWithFormat のいずれかを設定します。
以下の例では、FillMode プロパティを「overwrite」に設定し、売上の明細を出力する帳票テンプレートを作成しています。
データソースには 8 行のデータがあります。生成される Excel 帳票は以下のようになります。
メモ:テンプレートフィールドに FillMode プロパティが定義されていない場合、デフォルトの動作に従い、最初に空白行が挿入されます。なお、FillMode プロパティに OverwriteWithFormat を設定した場合の出力結果については、デモをご参照ください。
FillRange(省略形:FR)プロパティは、FillMode プロパティに「overwrite」が設定されており、データソースのデータが帳票テンプレート内の固定レイアウトの範囲を超える場合に使用します。これにより、データがオーバーフローした場合、FillRange プロパティで指定した範囲が複製され、溢れたデータがそこに連結されます。
たとえば、データソースには 20 行のデータがあり、FillRange プロパティでセル範囲「A1:A8」を指定した場合、セル範囲「A1:A8」(8 行)は、まず 8 行分複製(合計 16 行)され、さらに 8 行分複製(合計 24 行)されてから、20 行のデータが連結されます。
以下の例では、売上の明細を出力する帳票テンプレートを作成しています。オーバーフローするデータに対応するために、FillMode プロパティに「overwrite」を設定し、FillRange プロパティにセル範囲を設定しています。
データソースには 26 行のデータがあります。FillRange プロパティにて 12 行分のセル範囲を指定したため、そのセル範囲を 2 回複製してすべてのデータを連結します。最終的に生成される Excel 帳票は以下のようになります。