チャネルメンバー名と ID の取得

AMPscript を使用して、チャネルメンバーの ID と名前をエンタープライズアカウントから取り込みます。この例のランディングページには、エンタープライズアカウント内のすべてのエンティティのチャネルメンバー名と ID が表示されます。この情報を SOAP API 呼び出しの一部として使用して、必要な呼び出しを実行します。以下の AMPscript をランディングページに挿入し、ページを更新して情報を表示してください。AMPscript 内の ParentID を親アカウントに一致するように変更し、情報を保持するために必要なデータエクステンションを作成する必要があります。

前提条件 

この例を使用するには、AMPscript に習熟している必要があります。また、マイクロサイトまたはランディングページで有効になっているエンタープライズアカウントを使用する必要があります。

例 

1%%[
2SET @param = RequestParameter("p")
3IF @param == 1 THEN
4SET @rr = CreateObject("RetrieveRequest")
5SetObjectProperty(@rr,"ObjectType","Account")
6AddObjectArrayItem(@rr,"Properties","ParentID")
7AddObjectArrayItem(@rr,"Properties","PartnerKey")
8AddObjectArrayItem(@rr,"Properties","Name")
9AddObjectArrayItem(@rr,"Properties","ID")
10AddObjectArrayItem(@rr,"Properties","Client.PartnerClientKey")
11AddObjectArrayItem(@rr,"Properties","AccountType")
12SetObjectProperty(@rr,"QueryAllAccounts",1)
13SET @sfp = CreateObject("SimpleFilterPart")
14SetObjectProperty(@sfp,"Property","ParentID")
15SetObjectProperty(@sfp,"SimpleOperator","equals")
16AddObjectArrayItem(@sfp,"Value","InsertYourMIDValueHere")
17SetObjectProperty(@rr,"Filter",@sfp)
18SET @results = InvokeRetrieve(@rr)
19FOR @i = 1 TO RowCount(@results) DO
20SET @row = Row(@results,@i)
21SET @id = Field(@row,"ID")
22SET @name = Field(@row,"Name")
23SET @date = NOW()
24SET @ud = UpsertData("Query Mapping",1,"ChannelMemberName",@name,"ChannelMemberID",@id,"Date",@date)
25NEXT @i
26ENDIF
27]%%%%=RowCount(@results)=%%

この AMPscript を実行する場合、検索ボットや他の同様のメカニズムによる処理を防止するように、文字列「&p=1」をマイクロサイトまたはランディングページの末尾に追加します。この処理を許可するには、URL からこの文字列を外し、この例から IF および ENDIF ステートメントを削除します。