web-dev-qa-db-ja.com

数式フィールドの文字列への数値

数式フィールドを使用して、ダッシュで区切られた2つの10進数値を連結しています。ただし、両方の値について、不要な末尾のゼロと小数点をすべてトリムする結果が必要です。

たとえば、値10と8.5を「10-8.5」にする必要があります。これで、「10.00-8.50」と表示されます。

私が使用している式はCSTR({field1}) + " - " + CSTR({field2}).です

16
Mike Cole

私はこれがあなたが探しているものだと信じています:

10進数をゼロ以外の10進数のみを表示するテキストに変換

特に、次の行が役立つ場合があります。

StringVar text     :=  Totext ( {Your.NumberField} , 6 , ""  )  ;

最初のパラメーターは変換される小数、2番目のパラメーターは小数点以下の桁数、3番目のパラメーターは数千/百万などの区切り記号です。

33
Sam Trost
CSTR({number_field}, 0, '')

2番目のプレースホルダーは小数用です。

最後のプレースホルダーは、桁区切り記号です。

24
Paul Grimes

このための簡単な関数を書きました:

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);
)
1
Robert Niestroj