Created
April 6, 2019 01:09
-
-
Save MyCueCards/b2d6965159c0d5f14c39f85d91286141 to your computer and use it in GitHub Desktop.
Example of loops in Salesforce Marketing Cloud AMPscript
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!-- AMPscript block above <HTML> --> | |
%%[ | |
VAR @string | |
SET @string = 'PositionA1[|]PositionA2[|]PositionA3[|]PositionA4a,PositionA4b|PositionA4c,PositionA4d[^]PositionB1[|]PositionB2[|]PositionB3[|]PositionB4a,PositionB4b|PositionB4c' | |
SET @Array = BuildRowsetFromString(@string,"[^]") | |
]%% | |
<!-- Start HTML, Email Snippet --> | |
<html> | |
<body> | |
%%[ | |
FOR @i=1 TO ROWCOUNT(@array) DO | |
SET @outputArray = BuildRowsetFromString(FIELD(ROW(@array,@i),1),"[|]") | |
]%% | |
<p> | |
%%=FIELD(ROW(@outputArray,1),1)=%% <br> | |
%%=FIELD(ROW(@outputArray,2),1)=%% <br> | |
%%=FIELD(ROW(@outputArray,3),1)=%% <br> | |
</p> | |
%%[NEXT @i]%% | |
%%[ | |
SET @innerLoop = BuildRowsetFromString(FIELD(ROW(@outputArray,4),1),"|") | |
IF ROWCOUNT(@innerLoop) > 0 THEN | |
FOR @j=1 TO ROWCOUNT(@innerLoop) DO | |
SET @outputInnerLoop = BuildRowsetFromString(FIELD(ROW(@innerLoop,@j),1),",") | |
]%% | |
<p> | |
%%=IIF(ROWCOUNT(@outputInnerLoop)>0,FIELD(ROW(@outputInnerLoop,1),1),"")=%% - %%=IIF(ROWCOUNT(@outputInnerLoop)>1,FIELD(ROW(@outputInnerLoop,2),1),"Does Not Exist")=%% | |
</p> | |
%%[NEXT @j ENDIF]%% | |
</body> | |
</html> | |
<!-- Output Shown Below --> | |
PositionA1 | |
PositionA2 | |
PositionA3 | |
PositionB1 | |
PositionB2 | |
PositionB3 | |
PositionB4a - PositionB4b | |
PositionB4c - Does Not Exist |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment