帳票印刷時のラベルのnull表示について

MZ Platformとは 掲示板 MZプラットフォームユーザー会掲示板 帳票印刷時のラベルのnull表示について

タグ: 

  • このトピックには2件の返信、2人の参加者があり、最後にcosmoにより1ヶ月、 1週前に更新されました。
3件の投稿を表示中 - 1 - 3件目 (全3件中)
  • 投稿者
    投稿
  • #7427
    cosmo
    参加者

    お世話になっております。
    帳票印刷時のラベルのnull表示について質問がございます。

    FAQ30-3のA30-3及び関連ファイル:帳票_ラベル印刷を参考に、データベースから作成したテーブルの帳票印刷を試みたのですが、テーブルに空欄が存在する場合にラベルにnullと印刷されることがあるのですが、解決法はございますでしょうか?
    主に、日付(java.util.Date)が空欄の場合に起きるようです。

    テーブルといたしましては、データベースから必要なデータだけを抜き出したもの(仮テーブル)には、
    ・文字列
    ・日付
    ・整数
    などの列型が存在しており、ラベル印刷用テーブル(仮テーブルを1列にしたもの)の列型は、文字列で作っております。

    ご教示いただけますと幸いです。
    よろしくお願いいたします。

    #7428
    MZPlatformユーザー会
    キーマスター

    ご連絡ありがとうございます。
    確かに繰り返し処理を設定した[ラベル要素]にNULL値を設定すると、NULLと表示されてしまうようです。
    [テーブル]の文字列型の列の場合、通常空欄には空白文字列が入っていますが、日付型や数値型の場合NULL値が入っていることで空欄となります。

    一番簡単に変更するにはデータ取得の際にメソッド「指定セルの値を取得する(int,int)」ではなく「指定セルの表示文字列を取得する(int,int)」で[テーブル]からセルデータ取得時に文字列としてしまうことです。

    ただ表示文字列の取得だと処理上都合が悪い場合や、元のテーブルデータを[テーブル]に表示せずに変数に入れて編集したい場合には、別の方法も考えられます。
    日付列に関しては編集領域を右クリック>[複合コンポーネント追加]>[テーブル]>[テーブル日付データ文字列変換.mzcx]を追加し、この複合コンポーネントで日付型列を文字列型に変換することができます。
    また他の数値型列等の列型の場合は[NULL判定]を使って、NULL値が入っていた場合は代わりに空白文字列を取得することが考えられます。

    上記確認のためのサンプルファイルを添付いたしますので、ご覧いただき、ご不明な点がございましたら、再度ご連絡いただければ幸いです。
    どうぞよろしくお願い申し上げます。

    添付ファイル:
    #7430
    cosmo
    参加者

    お世話になっております。

    アドバイスをいただいた通りに「指定セルの値を取得する」から「指定セルの表示文字列を取得する」に変更することで、無事に解決いたしました。

    誠にありがとうございます。

3件の投稿を表示中 - 1 - 3件目 (全3件中)
  • このトピックに返信するにはログインが必要です。