Ampscript builddrowsetfromstring()在单个项目上失败



我被指派了一个exactttarget任务,它使用了Ampscript。试着边走边学。参见下面的代码片段:

%%[
    Var @testString, @testOutput
    Set @testString = Qwerty
    Set @testOutput = BuildRowsetFromString(@testString,"~")
]%%
TestOutput:%%= v(@testOutput) =%%

如果testString中包含~,则正常输出,如果字符串中不包含~,则输出为空。这是设计正确的吗?我是否需要添加一个条件来检查~字符的存在?

这是预期的行为。BuildRowsetFromString()函数单独显示时不会返回任何值,您将需要使用Row()Field()以便将值拉出来。

使用你的例子:

%%[
    Var @testString, @testOutput
    Set @testString = "Qwerty"
    Set @testOutput = BuildRowsetFromString(@testString,"~")
]%%
RowCount: %%=RowCount(@testOutput)=%%
TestOutput: %%=v(@testOutput)=%%
RowCount()函数返回值1,基本上表示它知道那里至少有一个"行"。要显示该值,需要用Field()Row(): 包装该值
TestOutput: %%=Field(Row(@testOutput,1),1)=%%

如果你想在字符串中显示其他值,比如你正在传递"Qwerty~Second~Third",你需要在Row()函数中更改数字或执行循环。

引用

使用循环

BuildRowsetFromString()函数

相关内容

  • 没有找到相关文章

最新更新