クロスセッション・レスポンス・オファーの照合
デフォルトでは、クロスセッション・レスポンス・トラッキングで処理コードまたはオファー・コードでの照合が行われます。crossSessionResponse サービスは SQL コマンドを使用して、セッション・データの処理コード、オファー・コード、またはカスタム・コードを Campaign のコンタクトおよびレスポンス履歴テーブルと照合します。これらの SQL コマンドは、カスタマイズしたトラッキング・コード、オファー・コード、またはカスタム・コードと照合するように編集することができます。
処理コードによる照合
処理コードで照合を行う SQL は、このオーディエンス・レベルの XSessResponse テーブルのすべての列と、OfferIDMatch と呼ばれる列を返す必要があります。 OfferIDMatch 列の値は、XSessResponse レコードの処理コードに対応した offerId でなければなりません。
以下に、処理コードを照合する、デフォルトで生成される SQL コマンドの例を示します。Interact は、オーディエンス・レベルの適切なテーブル名を使用する SQL を生成します。この SQL は、「Interact」>「services」>「crossSessionResponse」> 「OverridePerAudience」> 「AudienceLevel >「TrackingCodes」> 「byTreatmentCode」> 「SQL」プロパティーが「システム生成 SQL を使用 (Use System Generated SQL)」に設定されている場合に使用されます。
select   distinct treatment.offerId as OFFERIDMATCH, 
tx.*,
dch.RTSelectionMethod
from UACI_XSessResponse tx
Left Outer Join UA_Treatment treatment ON tx.trackingCode=treatment.treatmentCode
Left Outer Join UA_DtlContactHist dch ON tx.CustomerID = dch.CustomerID
Left Outer Join UA_ContactHistory ch ON tx.CustomerID = ch.CustomerID
AND treatment.cellID = ch.cellID
AND treatment.packageID=ch.packageID
where tx.mark=1
and tx.trackingCodeType=1
値の UACI_XsessResponseUA_DtlContactHistCustomerID、および UA_ContactHistory は、Interact の設定によって定義されます。 例えば、UACI_XsessResponse「Interact」>「プロファイル」>「オーディエンス・レベル」> [AudienceLevelName] >「crossSessionResponseTable」構成プロパティーで定義されます。
コンタクトおよびレスポンス履歴テーブルをカスタマイズした場合は、そのテーブルで使用できるようにこの SQL を変更する必要がある可能性があります。 SQL のオーバーライドを「Interact」> 「services」> 「crossSessionResponse」> 「OverridePerAudience」>「(AudienceLevel)」 > 「TrackingCodes」> 「byTreatmentCode」> 「OverrideSQL」プロパティーで定義してください。 オーバーライド SQL をいくつか指定した場合は、「SQL」プロパティーを「オーバーライド SQL (Override SQL)」に変更する必要もあります。
オファー・コードによる照合
オファー・コードで照合を行う SQL は、このオーディエンス・レベルの XSessResponse テーブルのすべての列と、TreatmentCodeMatch と呼ばれる列を返す必要があります。 TreatmentCodeMatch 列の値は、XSessResponse レコードのオファー ID (およびオファー・コード) を伴う処理コードです。
以下に、オファー・コードを照合する、デフォルトで生成される SQL コマンドの例を示します。Interact は、オーディエンス・レベルの適切なテーブル名を使用する SQL を生成します。この SQL は、「Interact」>「services」>「crossSessionResponse」> 「OverridePerAudience」> 「AudienceLevel >「TrackingCodes」> 「byOfferCode」> 「SQL」プロパティーが「システム生成 SQL を使用 (Use System Generated SQL)」に設定されている場合に使用されます。
select   treatment.treatmentCode as TREATMENTCODEMATCH, 
tx.*,
dch.RTSelectionMethod
from UACI_XSessResponse tx
Left Outer Join UA_DtlContactHist dch ON tx.CustomerID=dch.CustomerID
Left Outer Join UA_Treatment treatment ON tx.offerId = treatment.offerId
Left Outer Join
(
select max(dch.contactDateTime) as maxDate,
treatment.offerId,
dch.CustomerID
from UA_DtlContactHist dch, UA_Treatment treatment, UACI_XSessResponse tx
where tx.CustomerID=dch.CustomerID
and tx.offerID = treatment.offerId
and dch.treatmentInstId = treatment.treatmentInstId
group by dch.CustomerID, treatment.offerId
) dch_by_max_date ON tx.CustomerID=dch_by_max_date.CustomerID
and tx.offerId = dch_by_max_date.offerId
where tx.mark = 1
and dch.contactDateTime = dch_by_max_date.maxDate
and dch.treatmentInstId = treatment.treatmentInstId
and tx.trackingCodeType=2
union
select treatment.treatmentCode as TREATMENTCODEMATCH,
tx.*,
0
from UACI_XSessResponse tx
Left Outer Join UA_ContactHistory ch ON tx.CustomerID =ch.CustomerID
Left Outer Join UA_Treatment treatment ON tx.offerId = treatment.offerId
Left Outer Join
(
select max(ch.contactDateTime) as maxDate,
treatment.offerId, ch.CustomerID
from UA_ContactHistory ch, UA_Treatment treatment, UACI_XSessResponse tx
where tx.CustomerID =ch.CustomerID
and tx.offerID = treatment.offerId
and treatment.cellID = ch.cellID
and treatment.packageID=ch.packageID
group by ch.CustomerID, treatment.offerId
) ch_by_max_date ON tx.CustomerID =ch_by_max_date.CustomerID
and tx.offerId = ch_by_max_date.offerId
and treatment.cellID = ch.cellID
and treatment.packageID=ch.packageID
where tx.mark = 1
and ch.contactDateTime = ch_by_max_date.maxDate
and treatment.cellID = ch.cellID
and treatment.packageID=ch.packageID
and tx.offerID = treatment.offerId
and tx.trackingCodeType=2
値の UACI_XsessResponseUA_DtlContactHistCustomerID、および UA_ContactHistory は、Interact の設定によって定義されます。 例えば、UACI_XsessResponse「Interact」>「プロファイル」>「オーディエンス・レベル」> [AudienceLevelName] >「crossSessionResponseTable」構成プロパティーで定義されます。
コンタクトおよびレスポンス履歴テーブルをカスタマイズした場合は、そのテーブルで使用できるようにこの SQL を変更する必要がある可能性があります。 SQL のオーバーライドを「Interact」> 「services」> 「crossSessionResponse」> 「OverridePerAudience」> 「(AudienceLevel)」 > 「TrackingCodes」> 「byOfferCode」> 「OverrideSQL」プロパティーで定義してください。 オーバーライド SQL をいくつか指定した場合は、「SQL」プロパティーを「オーバーライド SQL (Override SQL)」に変更する必要もあります。
代替コードによる照合
選択したいくつかの代替コードで照合するように SQL コマンドを定義できます。例えば、オファー・コードまたは処理コードとは別の販促コードまたは製品コードを使用できます。
この代替コードは、Interact ランタイム環境テーブルの UACI_TrackingType テーブルに定義する必要があります。
SQL またはストアード・プロシージャーは、「Interact」>「services」>「crossSessionResponse」>「OverridePerAudience」> 「(AudienceLevel)」 >「TrackingCodes」>「byAlternateCode」>「OverrideSQL」プロパティーで指定する必要があります。これにより、このオーディエンス・レベルの XSessResponse テーブル内のすべての列、および TreatmentCodeMatch 列と OfferIDMatch 列が返されます。必要に応じて、OfferIDMatch の代わりに offerCode (offerCode1offerCode2、 … offerCodeN などの形式。ここで、N 部分はオファー・コードを表します) を返すこともできます。TreatmentCodeMatch column 列と OfferIDMatch 列 (またはオファー・コード列) の値は、XSessResponse レコードの TrackingCode に対応している必要があります。
例えば、以下の SQL 疑似コードは、XSessResponse テーブルの AlternateCode 列と一致しています。
Select m.TreatmentCode as TreatmentCodeMatch, m.OfferID as OfferIDMatch, tx.*
From MyLookup m, UACI_XSessResponse tx
Where m.customerId = tx.customerId
And m.alternateCode = tx.trackingCode
And tx.mark=1
And tx.trackingCodeType = <x>
ここで、<x>UACI_TrackingType テーブルに定義されているトラッキング・コードです。