式フィールドの文字列に数
-
22-08-2019 - |
質問
私はダッシュで区切られた2進値をconcatonateする式フィールドを使用しています。しかし、私は結果が両方の値のすべてのunneccesary後続ゼロと小数点をトリミングしたい。
たとえば、私が欲しい " - 8.5 10" であることを10と8.5値。今では "10.00から8.50" を示します。
私が使用しています式はCSTR({field1}) + " - " + CSTR({field2}).
である
解決
私は、これはあなたが探しているものであると信じています:
を示すテキストに小数点を含む数字を変換します特にこの行は役に立つかもしれません。
StringVar text := Totext ( {Your.NumberField} , 6 , "" ) ;
最初のパラメータが変換される小数である、第2のパラメータは、小数点以下の桁数であり、第3のパラメータは数千/百万人等用セパレータである
他のヒント
CSTR({number_field}, 0, '')
第二のプレースホルダは小数のためのものである。
最後のプレースホルダは、数千の区切りのためのものである。
私はこのための簡単な関数を書きました
Function (stringVar param)
(
Local stringVar oneChar := '0';
Local numberVar strLen := Length(param);
Local numberVar index := strLen;
oneChar = param[strLen];
while index > 0 and oneChar = '0' do
(
oneChar := param[index];
index := index - 1;
);
Left(param , index + 1);
)
また置き換える機能を使用して試すことができます:
を置き換えます( "10.00"、 "00"、 "")の
が、小数点以下の非ゼロの数字がある場合、それは動作しません。
所属していません StackOverflow