Q186:テーブルデータの文字にカンマと¥マークを入れて帳票に出したい。
Q186-1:
テーブルデータの文字をカンマと¥マークを入れて帳票に出したいと思いますが、そちらのホームページ上の質問FAQ通りしましたが、うまくいきませんでした。No462のサブルーチンの方でNo463の数値フィールドで「表示したい文字列を設定する」でNo460帳票のラベル5355となりカンマが入りません。
A186-1:
カンマを表示する方法ですが、[サブルーチン(ID:462)]に繋がっている[数値入力フィールド(ID:463)]ですが、表示形式を「グループあり」にする必要があります。
変更の方法は、画面に配置し、
右クリック>[表示形式(実数)]>[グループ]>[あり]を選んで頂くのが簡単ですが、画面に配置しない場合には、コンポーネント属性情報設定の窓から「GroupingUsed=true」をお選び下さい。
¥マークも併せて表示したい場合には、[数値入力フィールド]だけでは実現できませんので、[文字列格納変数]も使う必要があります。
例えば
@[文字列格納変数]「文字列を設定する(String)」
<引数>取得方法:固定値、メソッド/値:¥
A[文字列格納変数]「指定した文字列と連結して置き換える(String)」
<引数>取得方法:メソッド戻り値、コンポーネント:数値入力フィールド
メソッド/値:表示されている文字列を取得する
として[文字列格納変数]を[帳票]の[ラベル要素]のデータ取得対象コンポーネントとします。
また、帳票の1P目(ID:95)の帳票編集の内容で気が付いたのですが、[バーコード要素]や[ラベル要素]のデータ設定方法が、[テーブル]の「テーブルデータを取得する()」となっていますが、今のままではテーブルデータ全体が設定されていることになり、きちんと表示されていません。
[バーコード要素]や[ラベル要素]の描画属性設定で「繰返し印刷」にチェックマークを入れて下さい。
さらに、データ取得設定の窓に、「データ取得列インデックス」の項が現れますので、[テーブル]の何列目のデータを使用するか選んで下さい。
Q186-2:
ご指導通りしましたが、うまくいきませんでした。添付しておきます。どこがおかしいのか ご指導宜しくお願いします。
A186-2:
[サブルーチン(ID:462)]に繋がっている[数値入力フィールド(ID:463)]にデータを設定するメソッドですが、「表示したい文字列を設定する(String)」ではなく、「表示したい文字列を設定した後、その文字列で値を確定する(String)」をお選び下さい。
見落としがあり、大変失礼致しました。
「表示したい文字列を設定する(String)」ではいけない理由ですが、[数値入力フィールド]には、キーボードから入力しただけでは、入力した文字列は値として確定されていません。Enterキーを押して確定となります。
入力だけでしたら、数字以外の文字列「ABCDE」なども入れられます。
ただし画面上の[数値入力フィールド]からフォーカスが動いた時点で、デフォルトでは数字はそのまま確定し、数字以外の文字列「ABCDE」などは受け付けられず、先に確定済みの値に表示が変わります。
「表示したい文字列を設定する(String)」では、値としては設定されておらず、入力だけが行われた状態と考えて下さい。