19

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

たとえば、値10と8.5を「10-8.5」にします。これで、「10.00-8.50」と表示されます。

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

4

3 に答える 3

34

これがあなたが探しているものだと思います:

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

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

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

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

于 2009-05-15T16:58:59.207 に答える
27
CSTR({number_field}, 0, '')

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

最後のプレースホルダーは千単位の区切り記号です。

于 2012-04-12T18:05:42.220 に答える
1

私はこれのために簡単な関数を書きました:

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);
)
于 2012-07-27T13:30:52.680 に答える