> (DBFLUTE-366){Java/C#}: > データエクセルのテンプレートをダンプする https://www.seasar.org/issues/browse/DBFLUTE-366 データ作る前に、「カラム名定義付きのエクセル」を作るのが面倒です。 そこで、その「カラム名定義付きのエクセル」をDBFluteで生成してしまいます。
[documentDefinitionMap.dfprop] map:{ ; dataXlsTemplateRecordLimit = 0 }
この設定を記載して、Docタスクを実行すると、 「DBFluteクライアント/output/doc/data-xls-template.xls」 に、テーブル名をシート名としたカラム定義付きのエクセルが生成されます。 DB設計直後でデータがまだ無いときに、ReplaceSchemaやってDocやって データエクセルのテンプレートをもとにマスタデータとかテストデータを 作っていくというのが有効な使い方の一つです。 もし、データベースに既にデータが入っている場合は、 そのデータ付きで生成することが可能です。 dataXlsTemplateRecordLimitが「10」であれば、先頭の「10」件を 出力します。もし、マイナス値であれば無制限に出力します。 要はダンプみたいなことも可能です。
[documentDefinitionMap.dfprop] map:{ ; dataXlsTemplateRecordLimit = 10 }
共通カラムはデフォルトで出力されないので注意してください。 ReplaceSchemaの機能で共通カラムの値を一律に設定する 機能があるため、エクセル上では共通カラムの定義は不要なのです。 もし、共通カラムも含めて生成したい場合は、以下のように指定します。
[documentDefinitionMap.dfprop] map:{ ; dataXlsTemplateRecordLimit = 10 ; dataXlsTemplateContainsCommonColumn = true }
別のツールでカラム定義とか生成できると思いますが、 一応DBFluteでも対応というところです。 いろんな用途が出来るんではないかと思います。 既にdbflute-mysql-exampleにて実際に設定しています。 https://www.seasar.org/svn/sandbox/dbflute/trunk/dbflute-mysql-example もし、ご利用されたい方は、チェックアウトして参考にしてみて下さい。