過去の桐井戸端BBS (桐ver.8)
7442 印字属性で数値が正の場合は"+"をつけ、負の場合は"−"を赤で印字したい ケント 2000/09/02-07:11
V8sp5のレポートの印字属性で質問です。

やりたいことは、数値が入るテキストオブジェクトで正の場合は"+"をつけ、負の場合は"−"をつけ赤で印字することです。

印字属性タブの正符号表示をオンにすると"+"は表示されるのですが、
次に属性式を設定すると属性式の設定のみが生きて"+"が表示されません。
つまり負の数のみ"−"がついて赤で印字されるのです。

どう対処したら良いのでしょうか。
7457 Re:レポートの印字属性 アックン 2000/09/04-10:53
記事番号7442へのコメント
ケントさん、こんにちは。
仕様かバグかよくわかりませんので、たちまち次のように対処しておいてはどうでしょう。
プラス値とマイナス値を別々のテキストオブジェクトに表示します。
ふたつのオブジェクトを重ねて、上のオブジェクトだけ背景を透明にします。

まず、現状のテキストオブジェクトtxt_1をコピーしてtxt_2を作成します。

(1)マイナス値を表示するtxt_1のオブジェクトの属性
・背景(タブ)
  背景色モード:透明
・印字属性(タブ)
  属性式:次のように2個設定します。
      条件式:[数量]<0
      文字色:赤色を選びます。
      負符号:(継承)

      条件式:[数量]>0
      文字色:背景色と同色を選びます。普通は白色ですね。
      負符号:(継承)
  正符号表示:OFF
・テキスト(タブ)
  ソース:[A]

(2)プラス値を表示するtxt_2のオブジェクトの属性
・背景(タブ)
  背景色モード:なし
・印字属性(タブ)
  属性式:未設定
  正符号表示:OFF
・テキスト(タブ)
  ソース:#cond([A]>0,#連結("+",#str([A])))

**----------
これでうまくいくかどうか試して、また書き込んでもらえますか。
それでは、がんばってくださいね。 アックン(=^・^=)
7465 Re:レポートの印字属性 ケント 2000/09/04-18:22
記事番号7457へのコメント
アックンさん アドバイスありがとうございます。

>プラス値とマイナス値を別々のテキストオブジェクトに表示します。
>ふたつのオブジェクトを重ねて、上のオブジェクトだけ背景を透明にします。

ところが、オブジェクトを重ねることができません。
フォームでは重ねられるけどレポートではできないのか、はたまた自分のやり方が悪いのか.....。
一覧表レポートの明細行に配置するテキストオブジェクトなのです。

でも
>ソース:#cond([A]>0,#連結("+",#str([A])))
が、そうか文字列にして操作すれば良いのかと、大ヒントになりました。

その結果 テキストオブジェクトを下記の設定にしたところうまく行きました。
・印字属性(タブ)
属性式:
条件式:[A]<0
文字色:赤
負符号:(継承)
正符号表示:off
・テキスト(タブ)
ソース:#cond([A]>0,"+"+#str([A]),[A]=<0,[A])

重ね重ねありがとうございます。
これで今週中にデータ表を出せるぞ。(工場の騒音測定をしていて、半年前のデータと比較する表を作成していたのです。)

ところで、アックンさんがおっしゃるように、これって仕様なんでしょうかバグなんでしょうか。
7472 Re:レポートの印字属性 アックン 2000/09/05-10:00
記事番号7465へのコメント
ケントさん>
おっ、なるほど。その設定でいけますか。
勉強になります。ありがとうございました。

アックン(=^・^=)
7480 Re:レポートの印字属性 ほりかわ 2000/09/05-17:45
記事番号7457へのコメント
お世話様です(突然横は入りです。ぺこり)。
報告がありました。


>仕様かバグかよくわかりませんので、たちまち次のように対処しておいてはどうでしょう。
^^^^^
現在は印字属性を指定すると正符号表示が無効になってしまいます。
SP6での修正は無理で次回のもので修正するようにします。
修正時及び正式リリース時にはCD-ROM(SP)を送付させていただきます。
堀川宛にご連絡先等をお知らせください。よろしくお願いします。


蛇足です。
印字属性指定箇所がここだけであればV8sp6ではレポートのファイル属性の表題等の
「新しい印字属性式を使用する」のチェックをoffにし、印字属性式として ex.項目名が[英語]であれば

#条件選択([英語]>0,"SP+",[英語]<0,CC3)

とし、印字属性の「正符号表示」のチェックをoffにすれば
値が>0 であれば+が付き(+20)、<0であれば赤色で-20のように
表示されます。

アックンさんご指摘ありがとうございました(感謝)。

以上
7512 Re:レポートの印字属性 ケント 2000/09/06-18:19
記事番号7480へのコメント
ほりかわさん こんにちは。
詳しい情報ありがとうございます。

>印字属性指定箇所がここだけであればV8sp6ではレポートのファイル
>属性の表題等の「新しい印字属性式を使用する」のチェックをoffに
>し、印字属性式として ex.項目名が[英語]であれば
>
>#条件選択([英語]>0,"SP+",[英語]<0,CC3)
>
>とし、印字属性の「正符号表示」のチェックをoffにすれば
>値が>0 であれば+が付き(+20)、<0であれば赤色で-20のように
>表示されます。

sp6の正式リリースを心待ちにしております。

戻る