【发布时间】:2019-07-05 04:16:01
【问题描述】:
我的问题:如何删除一个值并替换一个新值
InvGTSSummary中的我的字段值:
值 1:
"- 0%,19291.76,0.00"
“SE 0%,1068.39,0.00”
“ST 6%,2000.00,120.00”
文本列表的顺序可能每次都会改变,
价值 2:
“SE 0%,1068.39,0.00”
"- 0%,19291.76,0.00"
“ST 6%,2000.00,120.00”
我为测试编写的示例公式如下:
InvGTSumCode = @Word(InvGTSummary; ","; 1)
- 问题是我可以知道如何将前 2 个字符是 "SE" 到 将最后 3 个值修改为(使用 1068.39 * 6%=64.1034),比 将最后 3 个值替换为 64.1034
最终结果的值应该是:
"- 0%,19291.76,0.00"
“SE 0%,1068.39,64.10”
“ST 6%,2000.00,120.00”
新更新项目:2019 年 8 月 7 日
抱歉,我的问题可能不清楚。实际上我想问的是可以循环在“字段”[文本列表]上获取条件(如果找到“SE”)值,而不仅仅是重做其他计算页面。
新的更新项目:10/07/2019
提取原始值和替换值的公式
FullSummary := @Trim(@Replace("SE" + @Right(InvGSTSummary; "SE"); "SE"; ""));
STCode := @Word(FullSummary; ","; 1);
Price := @Word(FullSummary; ","; 2);
SST:=@TextToNumber(Price) * 0.06;
CompVal:= STCode +","+Price+","+@Text(SST; "F2");
CompVal
【问题讨论】:
-
这 6% 是从哪里来的?该行仍然以 SE 0% 开头...并且您的代码将在以逗号作为小数分隔符的国家/地区使用吗?
-
逗号 "," 来自另一个公式(使用 dbcolumn 和 dblookup)以获取值,但客户希望我特别(计数 6 % 到 SE(特殊要求),最初为 0 % )