【值更新】【实体服务规则】字符串拼接表达式举例

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

【值更新】【实体服务规则】字符串拼接表达式举例

分隔符

  • 问题:

用值更新事件 或 实体服务规则,计算定义公式的值并填写到指定的列,实现功能:

将4个文本控件中的字符串拼接起来,用'/'分隔,填到另一个文本控件。要求4个文本有空值时,'/'不重复。

即'a'、''、'c'、'd'拼接成'a/c/d'。


  • 解决方案:

使用如图表达式:

downloadfile (1).webp


结果如下:

downloadfile.webp


表达式:

F_MOB_Text_Result  = '/'.join(x for x in ( (F_MOB_Text OR '').strip() , (F_MOB_Text1 OR '').strip() , (F_MOB_Text2 OR '').strip() , (F_MOB_Text3 OR '').strip() ) if x != '')
  1. str.join(sequence) 方法,将 sequence 中的元素连接起来,以 str 分隔,返回新字符串。

  2. (F_MOB_Text OR '').strip(),F_MOB_Text 字段为空则返回 '',否则返回 F_MOB_Text 的值的字符串,并去掉头尾空格。

  3. ( (F_MOB_Text OR '').strip() , (F_MOB_Text1 OR '').strip() , (F_MOB_Text2 OR '').strip() , (F_MOB_Text3 OR '').strip() ),() 初始化一个 tuple,其中有4个元素,即4个文本控件中的字符串。tuple 是一个 sequence。

  4. (x for x in ( tuple ) if x != ''),过滤 tuple 中的元素,返回不为 '' 的元素,组成一个 sequence。

  5. 总结起来就是,将4个文本控件中的字符串,不为空的取出来,以 '/' 分隔连接起来。



老师好,

如果是一个明细字段有多行,怎么把多行信息拼接到另外一个字段中


怎样实现满足条件返回一个固定值呢



你好,请问字段拼接的时候能否把字段名也拼接上呢


好贴好贴,看了社区的其他的方法都不行,就这个可以
【emoji】


没看懂呀  能再多讲讲嘛


优秀


【emoji】


两个图看不到呢,能重新发下嘛

【值更新】【实体服务规则】字符串拼接表达式举例

分隔符问题:用值更新事件 或 实体服务规则,计算定义公式的值并填写到指定的列,实现功能:将4个文本控件中的字符串拼接起来,用'/'分隔...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息