如何使用 %n - 字段值在信息中插入标签?

How to insert label in the info with %n - field's values?

我必须在视频中标记一个简单的字符串,其中包含 标签 和字段值。

我有这个代码:

 info (strFmt (" @SYS334481: %1 , @SYS4569: %2 " , myTable.AliasUser, myTable.Day) );

我的输出看起来像这样:

Alias user , Day

我没有该字段的值。我也试过用这种方式,但是语法错误:

info (strFmt (" "@SYS334481": %1 , "@SYS4569": %2 " , myTable.AliasUser, myTable.Day ));

正确的方法是什么?

我找到了一个可能的解决方案,就是创建一个新的 标签,里面有 %n。

我创建了一个标签:

@xx00000 = "Alias User: %1 - Day: %2"

我使用了这个语法:

info (strFmt ("@xx00000" , myTable.AliasUser, myTable.Day) );

我不知道这是否是更好的解决方案,但效果很好。

如果有其他解决办法,写的好,会多一些资料,谢谢这个社区。

尽情享受吧!

虽然可以制作特定的标签,但我更喜欢更简单的标签:

info(strFmt('%1: %2, %3: %4', fieldPname(myTable,AliasUser), myTable.AliasUser, fieldPname(myTable,Day), myTable.Day));

我经常将此技术与 setPrefix 一起使用:

setPrefix(strFmt('%1: %2, %3: %4', fieldPname(myTable,AliasUser), myTable.AliasUser, fieldPname(myTable,Day), myTable.Day));
info("More specific message here");

如果只有一个字段使用PrefixField宏:

setPrefix(#PrefixField(myTable,AliasUser));
info("More specific message here");

PrefixFieldValue姐姐:

setPrefix(#PrefixField(myTable, AliasUser, myTable.AliasUser+':'));
info("More specific message here");