過去の桐井戸端BBS (桐ver.8)
15723 レポートの集計行で小数点以下2桁表示、桁区切りカンマ付きでドル表示したい masa 2002/04/15-18:36
すみません。又よろしくお願いします。
データで
$1,111.45
$2,222.53
$3,333.62
とあった時、レポートでデータ行の表示は表の「項目属性」の「項目の表示条件」の表示幅の小数部表示桁数を2にすればいいのですが、
レポートの集計行だと$6,667.6となってしまいます。

下二桁を表示したくて、計算式に
#文字列( #合計( [項目名] ),-2)
としたら$6667.60とカンマがなくなります。
(印字属性の位置取りコンマはチェック印は付いたままです)
$6,667.60とするにはどうしたらいいのでしょうか?
よろしくお願いします。

15724 通貨文字列関数を使ってみては 今村 誠 2002/04/15-19:57
記事番号15723へのコメント
サンプル

1234567890 を通貨文字列に変換します。

#通貨文字列( 1234567890 , "" )  →  1,234,567,890

変換した通貨文字列の先頭に、通貨記号 $ をつけます。

#通貨文字列( 1234567890 , "$" )  →  $1,234,567,890
15725 Re:レポート集計行のドル表示について Ogo 2002/04/15-20:48
記事番号15723へのコメント

>データで
>$1,111.45
>$2,222.53
>$3,333.62
>とあった時、レポートでデータ行の表示は表の「項目属性」の「項目の表示条件」
>の表示幅の小数部表示桁数を2にすればいいのですが、レポートの集計行だと
>$6,667.6となってしまいます。

集計オブジェクトでも小数部表示桁数を2にできますけど?

ただし、レポートには「表示条件」なんてあり得ないので、
「印字属性」を設定するんですけどね。

何か根本的なカン違いをしてませんか?

# 通貨文字列関数を単独で使ってもダメでしょうね。

15726 Re:レポート集計行のドル表示について 今村 誠 2002/04/15-21:48
記事番号15725へのコメント
Ogoさんこんにちは

>集計オブジェクトでも小数部表示桁数を2にできますけど?
ありました。
しかも四捨五入や切り捨て等を選べます。

># 通貨文字列関数を単独で使ってもダメでしょうね。

#通貨文字列(#num(#STR(#SUM([標準価格]),-2)),"$")
こんな感じでできますが、レポートの設定が親切な気がします。
これを使うと必ず切り捨てられるので、#四捨五入も入れないと
希望に合わないかもしれません。
15727 Re:レポート集計行のドル表示について Ogo 2002/04/15-22:06
記事番号15726へのコメント

>># 通貨文字列関数を単独で使ってもダメでしょうね。
>#通貨文字列(#num(#STR(#SUM([標準価格]),-2)),"$")
>こんな感じでできますが、レポートの設定が親切な気がします。

#通貨文字列 を使うと、 x.00 との場合に小数桁が表示・印刷されなかったり、
x.y0 の場合には小数1桁のみが表示・印刷されたりした記憶があるんですが……


15728 Re:レポート集計行のドル表示について Ogo 2002/04/15-22:28
記事番号15725へのコメント

あれ? masa さん、下記と同じ主旨ですよね?

http://www.fuku3.com/~habata/kbbs/kakov8/14611.htm

やっぱり特定の条件でこの種の設定ができないという意味?




15729 Re:レポート集計行のドル表示について masa 2002/04/16-09:09
記事番号15726へのコメント
今村 誠さん おはよう御座います

>#通貨文字列(#num(#STR(#SUM([標準価格]),-2)),"$")

どうもありがとう御座います。
やってみたのですが、下1桁しか表示されませんでした。
Ogoさんの属性式に挑戦して見ます。

15730 Re:レポート集計行のドル表示について masa 2002/04/16-09:16
記事番号15728へのコメント
Ogoさん おはよう御座います。

>あれ? masa さん、下記と同じ主旨ですよね?
>
>http://www.fuku3.com/~habata/kbbs/kakov8/14611.htm
>
>やっぱり特定の条件でこの種の設定ができないという意味?
>
はい。この時はレポートの集計までは必要なくて、表の中のものを
そのまま一覧表印刷できていればOKだったのですが、
今回は集計が必要になりまして、やってみるとアレレと言う事になってしまったのです。
今、オブジェクトの集計の属性式の所で挑戦しています。ありがとう御座います。



15731 Re:ありがとう御座います。ようやく出来ました。 masa 2002/04/16-14:52
記事番号15723へのコメント
今村 誠さん Ogoさん ありがとう御座いました。

結局、集計のソースや属性式の所をあれこれ入れていて、
集計のソースに下記のように入れたらうまくいきました。 

#条件選択( #桁数( #文字列(#合計( [項目名] ) - #切り捨て(#合計( [項目名] ) , 0 ) ))≦3 , #通貨文字列(#num(#STR(#SUM([項目名]),-2)),"$")+"0" , 1, #通貨文字列(#num(#STR(#SUM([項目名]),-2)),"$") )

最初の今村さんの式から、小数点以下の桁数を求め、3桁以下なら”0”を加える事でうまくいきました。
属性式も色々試したのですが私にはうまく設定出来ませんでした。
長い式になりましたが、これより簡単な設定がありましたら又教えて下さい。
どうもありがとうございました。


15732 Re:ありがとう御座います。ようやく出来ました。 masa 2002/04/16-16:50
記事番号15731へのコメント
今村 誠さん Ogoさん ありがとう御座いました。


属性式という先入観がありましたが、属性式ではなく、印字属性の右上の「数値」の「丸め」を
「切り捨て」に「小数桁」を「2」にしましたら簡単に設定出来ました。
Ogoさんはこの事を言っておられたのですね?
どうもありがとうございました。


15733 Re:ありがとう御座います。ようやく出来ました。 今村 誠 2002/04/16-17:09
記事番号15731へのコメント
masaさんこんにちは、既に解決済みですが、長整数の範囲内であれば以下の式が簡単なようです。
切り捨ての場合もっと簡単に書けます。
それ以外ではmasaさんの式になると思います。
>#条件選択( #桁数( #文字列(#合計( [項目名] ) - #切り捨て(#合計( [項目名] ) ,
>0 ) ))≦3 , #通貨文字列(#num(#STR(#SUM([項目名]),-2)),"$")+"0" , 1, #通貨文
>字列(#num(#STR(#SUM([項目名]),-2)),"$") )

#cat(#通貨文字列(#長整数(#STR(#四捨五入(#SUM([標準価格]),2),-2)),"$"),#LAST(#STR(#四捨五入(#SUM([標準価格]),2),-2),3))
15734 これが正解! Ogo 2002/04/16-17:57
記事番号15732へのコメント

>属性式という先入観がありましたが、属性式ではなく、
>印字属性の右上の「数値」の「丸め」を「切り捨て」に
>「小数桁」を「2」にしましたら簡単に設定出来ました。
>Ogoさんはこの事を言っておられたのですね?

その通りです。 (^^)

解決できて良かったですね。


15735 Re:ありがとう御座います。ようやく出来ました。 masa 2002/04/16-18:34
記事番号15733へのコメント
今村 誠さん 今晩は

>#cat(#通貨文字列(#長整数(#STR(#四捨五入(#SUM([標準価格]),2),-2)),"$"),#LAST(#STR(#四捨五入(#SUM([標準
>価格]),2),-2),3))

小数点前と後を別々に出して連結させるという事ですね。
どうもありがとう御座いました。


戻る