我正在研究如何使用确切的目标发送电子邮件附件:(可能是多个)
http://help.exacttarget.com/en-US/documentation/exacttarget/content/email_attachments/
我无法按照以下说明进行硬编码:
%%=AttachFile("Portfolio","Example1")=%%
%%=AttachFile("Portfolio","Example2")=%%
%%=AttachFile("Portfolio","Example3")=%%
%%=AttachFile("Portfolio","Example4")=%%
%%=AttachFile("Portfolio","Example5")=%%
因为我需要发送的附件数量各不相同。
有没有人知道如何以编程方式实现这一目标?
非常感谢!
答案 0 :(得分:0)
%% [IF Condition1 THEN] %%
%% = AttachFile( “组合”, “例1”)= %%
%% [ELSEIF Condition2 THEN] %%
%% = AttachFile( “组合”, “例1”)= %%
%% = AttachFile( “组合”, “示例2”)= %%
%% [ELSEIF Condition3 THEN] %%
%% = AttachFile( “组合”, “示例3”)= %%
%% [ELSEIF Condition4 THEN] %%
%% = AttachFile( “组合”, “示例3”)= %%
%% = AttachFile( “组合”, “范例4”)= %%
%% [ELSEIF Condition5 THEN] %%
%% = AttachFile( “组合”, “例1”)= %%
%% = AttachFile( “组合”, “例5”)= %%
%% [ELSE ENDIF] %%
答案 1 :(得分:0)
快速link以获取有关AMPScript中附件功能的更深入信息
在没有更多信息的情况下,我能想到的最好方法是在数据扩展中包含“附件1”,“附件2”等字段,并将这些字段填入位置,然后将位置包含为变量在attachfile中。
e.g。 %% = AttachFile(“投资组合”,[附件1])= %%
然后只使用IF Not EMPTY()等条件来决定应该执行哪些函数。
这样,您可以跨每个收件人动态编辑位置以及调用AttachFile的次数。这有点麻烦和麻烦,但再次没有更多信息这是我能做的最好。
答案 2 :(得分:0)
您如何知道附件的数量?在发送时间之前是否已知此预发送?这是触发发送还是用户启动?
根据这些答案,您可以通过多种方式实现这一目标。
我将探索的主要解决方案路径是执行某种LookupRows()或LookupOrderedRows()来检索要附加的文件,然后遍历这些行并附加文件。另外,需要注意的是AttachFile()函数需要在内联AMP脚本中执行,%% = AttachFile()= %%,而不是在AMP代码块中,%% [......] %%。
因此,您的代码可能类似于以下内容(我包含了托管在外部站点,ET FTP和产品组合中的文件示例):
%%[ VAR @sub, @fileDe, @files, @file, @fileUrl, @fileName, @fileExternalKey
SET @sub = [_subscriberkey]
SET @fileDE = "Name Data Extension holding attachment filename/url"
/*LookupRows() from DE. Assumes data extension uses SubscriberKey as the foreign key*/
SET @files = LookupRows(@fileDe,"SubscriberKey",@sub)
/*Validate files were returned*/
IF Rowcount(@files) > 0 THEN
FOR @i = 1 TO Rowcount(@files) DO
SET @file = Row(@files,@i)
/*If you are using files hosted at an external HTTP/HTTPS location*/
SET @fileUrl = Field(@file,"FileURL")
]%%
%%=AttachFile("HTTP",@fileUrl)=%%
%%[
/*If you are using files hosted in the Import folder of the ExactTarget FTP*/
SET @fileName = Field(@file,"FileName")
]%%
%%=AttachFile("FTP",@fileName)=%%
%%[
/*If you are using files hosted in the ExactTarget Portfolio*/
SET @fileName = Field(@file,"PortfolioFileExternalKey")
]%%
%%=AttachFile("Portfolio",@fileExternalKey)=%%
%%[
NEXT @i
ELSE
/*No records returned for @files*/
ENDIF
]%%