Correlación de ofertas de respuesta entre sesiones
De forma predeterminada, la correlación del seguimiento de respuestas de sesiones cruzadas se realiza según los códigos de tratamiento o los códigos de oferta. El servicio crossSessionResponse utiliza comandos SQL para correlacionar códigos de tratamiento, códigos de oferta o un código personalizado de datos de sesión con tablas de historial de contactos y respuestas de Campaign. Puede editar estos comandos SQL para correlacionar las personalizaciones que se hayan realizado en los códigos de seguimiento, códigos de oferta o códigos personalizados.
Correlación por código de tratamiento
El SQL para correlacionar por código de tratamiento debe devolver todas las columnas de la tabla XSessResponse para este nivel de audiencia además de una columna denominada CorrelaciónIDOferta. El valor de la columna CorrelaciónIDOferta debe ser el offerId que va con el código de tratamiento del registro XSessResponse.
A continuación se muestra un ejemplo del comando SQL generado predeterminado que coincide con los códigos de tratamiento. Interact genera el SQL para utilizar los nombres de tabla correctos para el nivel de audiencia. Este SQL se utiliza si la propiedad Interact > services > crossSessionResponse > OverridePerAudience > nivelAudiencia > TrackingCodes > byTreatmentCode > SQL está establecida en Utilizar SQL generado por el sistema.
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
Los valores UACI_XsessResponse, UA_DtlContactHist, CustomerID y UA_ContactHistory los definen los valores de Interact. Por ejemplo, UACI_XsessResponse lo define la propiedad de configuración Interact > profile > Audience Levels > [NombreNivelAudiencia] > crossSessionResponseTable.
Si ha personalizado las tablas de historial de contactos y respuestas, es posible que necesite revisar este SQL para trabajar con las tablas. Puede definir sustituciones de SQL en la propiedad Interact > services > crossSessionResponse > OverridePerAudience > (NivelAudiencia) > TrackingCodes > byTreatmentCode > OverrideSQL. Si proporciona algún SQL de sustitución, debe cambiar también la propiedad SQL a SQL de sustitución.
Correlación por código de oferta
El SQL para correlacionar por código de oferta debe devolver todas las columnas de la tabla XSessResponse para este nivel de audiencia además de una columna denominada CorrelaciónCódigoTratamiento. El valor de la columna CorrelaciónCódigoTratamiento es el código de tratamiento que va con el ID de oferta (y código de oferta) en el registro XSessResponse.
A continuación se muestra un ejemplo del comando SQL generado predeterminado que correlaciona los códigos de oferta. Interact genera el SQL para utilizar los nombres de tabla correctos para el nivel de audiencia. Este SQL se utiliza si la propiedad Interact > services > crossSessionResponse > OverridePerAudience > NivelAudiencia > TrackingCodes > byOfferCode > SQL está establecida en Utilizar SQL generado por el sistema.
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
Los valores UACI_XsessResponse, UA_DtlContactHist, CustomerID y UA_ContactHistory los definen los valores de Interact. Por ejemplo, UACI_XsessResponse lo define la propiedad de configuración Interact > profile > Audience Levels > [NombreNivelAudiencia] > crossSessionResponseTable.
Si ha personalizado las tablas de historial de contactos y respuestas, es posible que necesite revisar este SQL para trabajar con las tablas. Puede definir sustituciones de SQL en la propiedad Interact > services > crossSessionResponse > OverridePerAudience > (NivelAudiencia) > TrackingCodes > byOfferCode > OverrideSQL. Si proporciona algún SQL de sustitución, debe cambiar también la propiedad SQL a SQL de sustitución.
Correlación por código alternativo
Puede definir un comando SQL para correlacionar por algún código alternativo que elija. Por ejemplo, podría tener códigos promocionales o códigos de producto además de los códigos de oferta o tratamiento.
Debe definir este código alternativo en la tabla UACI_TrackingType en las tablas de entorno de ejecución de Interact.
Debe proporcionar SQL o un procedimiento almacenado en la propiedad Interact > services > crossSessionResponse > OverridePerAudience > (nivelAudiencia) > TrackingCodes > byAlternateCode > OverrideSQL que devuelve todas las columnas de la tabla XSessResponse para este nivel de audiencia además de las columnas CorrelaciónIDTratamiento y CorrelaciónIDOferta. Opcionalmente, puede devolver el códigoOferta en lugar de CorrelaciónIDOferta (con el formato códigoOferta1, códigoOferta2, … códigoOfertaN para códigos de oferta de parte N). Los valores de la columna CorrelaciónCódigoTratamiento y CorrelaciónIDOferta (o columnas de código de oferta) deben corresponderse con el CódigoSeguimiento en el registro XSessResponse.
Por ejemplo, el siguiente pseudocódigo SQL de la columna CódigoAlternativo de la tabla XSessResponse.
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>
Donde <x> es el código de seguimiento definido en la tabla UACI_TrackingType.