Forguncy 3の新機能「Excelデータの一括インポート」「PDFエクスポート」「セル分割」を試してみる:特集: Forguncy 3新機能解説(3/3 ページ)
Excelライクな操作性で簡単にWebアプリを作成できることで有名なForguncyの最新バージョンにはどんな機能が追加されたのか、目玉機能を幾つか見てみよう。
PDF形式での帳票出力
これまでのForguncyでは帳票出力機能としてExcelワークシートへのエクスポートをサポートしていたが、Forguncy 3ではPDFへ帳票出力を行えるようになった。ここでは、Forguncyの[売上明細書の管理]テンプレートを用いて、それにPDF形式での帳票出力機能を加えてみよう。といっても、先ほどの「Excelデータの一括インポート」と同様に、マウスクリックを何度か行うだけで終了だ。
以下に[売上明細書の管理]テンプレートを基に作成したForguncyアプリを示す。ここでは[請求書印刷]ページを複製して[請求書PDF]ページを作成し、ヘッダ部分のデータ連結を[請求書印刷]ページから少し(手抜きで)改変している(筆者が試したところでは[請求書印刷]ページのデータ指定のままではうまくいかなかったため)。また、[請求書PDF]ページの[ページ設定]タブでは[ページロード時の設定]で[印刷]を行わないようにコマンドを削除して、[エクスポートの印刷設定]で[次のページ数に合わせて印刷]ラジオボタンを選択している(ページ遷移時に複製元の[請求書印刷]ページで行われていた印刷関連の処理が行われないようにするためと、PDFが複数ページに分割されないようにするため)。
メイン画面となる[請求書一覧]ページには、リストビューに表示される各項目に[PDF]ボタンと[PDFエクスポート]リンクを作成した。
最初のボタンから見ていこう。これをクリックすると、対応する項目の請求書がPDF化されるようにする。それには[PDF]ボタンを選択して、[セル型]タブで[コマンド]を選択する。そして、[コマンドの選択]から[PDFエクスポート]を選択する。
[コマンド]ダイアログでは[エクスポートするページ]に[請求書PDF]を選択するだけだ。その下にある[複数レコードをエクスポートする]チェックボックスは、この次に設定を行う[PDFエクスポート]リンクで使用する。
この状態でアプリを実行して、[PDF]ボタンのいずれかをクリックすると、次の画面のようにいとも簡単にPDFへのエクスポートが実現できる。
これは請求書1枚をPDF化するには便利だが、まとめてPDF化したいという場合もある。それに使うのが、先ほど紹介した[複数レコードをエクスポートする]チェックボックスだ。[PDFエクスポート]リンクで実際にこれを指定したのが、以下に示す画像だ。
このチェックボックスをオンにしたら、対象となるリストビューと、全レコードをPDF化するか/選択したレコードのみをPDF化するかを指定する。ここでは全レコードをPDFにエクスポートするように指定している。
実行画面は割愛するが、このリンクをクリックすると、2件のレコードについてはそれぞれ請求書がPDFファイル化されるようになる。
最後にセル分割機能について見ておこう。
セル分割
セル分割とは、セル結合の反対で指定したセルを列方向あるいは行方向に分割するというものだ。Webアプリ全体のレイアウトを崩すことなく、少しだけレイアウトを修正したいといった場合に使用する。
以下はForguncyの[弁当注文システム]テンプレートに含まれているマスターページ(Forguncyアプリの全ページで共通に表示されるテンプレートページ。中央のグレーの部分に個々のページが子ページとして表示される)。
例えば、このページで左側の[管理者メニュー]をもう少しだけ上に表示したいとしよう。だが、この行を少し上に移動しようにも「Excel方眼紙」的には上の行(10行目)にしか移動できない。このような場合にセル分割を使用できる。ここでは行を分割している。
このようにセルを分割することで、細かなレイアウトの修正が手軽に行えるようになっている。この例では、よく分からないが、これにより全体のレイアウトが崩れることもないので、アプリ作成の終盤で細かな調整の必要が出てきたときに便利に使えるだろう。また、この場合はその下にある[本日の注文一覧]なども本来は移動しなければならないのだが、これについてはあくまでもサンプルとして考えてほしい。
今回はForguncy 3で追加された機能のうち、目玉ともいえる3つの機能を紹介した。次回は、もう少し細かい、しかしForguncy 3の使い勝手をさらに高める機能を幾つか紹介していこう。
Copyright© Digital Advantage Corp. All Rights Reserved.