Su entorno de diseño de Interact existente contiene un nivel de audiencia adicional denominado Unidad familiar. Para dar soporte a este nivel de audiencia, la base de datos del entorno de ejecución de
Interact contiene tablas denominadas
HH_CHStaging y
HH_RHStaging.
También debe revisar el SQL para dar soporte a cambio de tipo de datos de la columna SeqNum de la tabla
UACI_RHStaging. El valor de
SeqNum es un número secuencial en todas las tablas de preparación del historial de respuestas. El siguiente valor utilizado se rastrea mediante la columna
NextID en la tabla
UACI_IdsByType donde el
TypeID es
2. Por ejemplo, tiene tres niveles de audiencia, cliente, unidad familiar y cuenta. En la tabla de preparación del historial de respuestas de cliente el
SeqNum más alto es
50. En la tabla de preparación del historial de respuestas de unidad familiar el
SeqNum más alto es
75. En la tabla de preparación del historial de respuestas de cuenta el
SeqNum más alto es
100. Por lo tanto, debe modificar el SQL para establecer el
NextID para
TypeID = 2 en
UACI_IdsByType a
101.
Las siguientes sentencias SQL de ejemplo muestran las adiciones necesarias al script aci_runtab_upgrd_sqlsvr.sql para una base de datos de SQL Server que contenga el nivel de audiencia Unidad familiar. El texto que se ha modificado para dar soporte al nivel de audiencia Unidad familiar aparece en negrita:
ALTER TABLE UACI_CHStaging ADD RTSelectionMethod int NULL
go
ALTER TABLE UACI_RHStaging ADD RTSelectionMethod int NULL
go
ALTER TABLE HH_CHStaging ADD RTSelectionMethod int NULL
go
ALTER TABLE HH_RHStaging ADD RTSelectionMethod int NULL
goinsert into UACI_IdsByType (TypeID, NextID) (select 2,
IDENT_CURRENT('UACI_RHStaging')
+ IDENT_CURRENT('HH_RHStaging') + IDENT_INCR( 'UACI_RHStaging' ))
go
select * into UACI_RHStaging_COPY from UACI_RHStaging
go
select * into HH_RHStaging_COPY from HH_RHStaging
goDROP TABLE UACI_RHStaging
go
CREATE TABLE UACI_RHStaging (
SeqNum bigint NOT NULL,
TreatmentCode varchar(512) NULL,
CustomerID bigint NULL,
ResponseDate datetime NULL,
ResponseType int NULL,
ResponseTypeCode varchar(64) NULL,
Mark bigint NOT NULL
DEFAULT 0,
UserDefinedFields char(18) NULL,
RTSelectionMethod int NULL,
CONSTRAINT iRHStaging_PK
PRIMARY KEY (SeqNum ASC)
)
go
insert into UACI_RHStaging (SeqNum, TreatmentCode, CustomerID, ResponseDate,
ResponseType, ResponseTypeCode, Mark, UserDefinedFields, RTSelectionMethod)
(select SeqNum, TreatmentCode, CustomerID, ResponseDate, ResponseType,
ResponseTypeCode, Mark, UserDefinedFields, RTSelectionMethod from
UACI_RHStaging_COPY)
go
DROP TABLE UACI_RHStaging_COPY
go
DROP TABLE HH_RHStaging
go
CREATE TABLE HH_RHStaging (
SeqNum bigint NOT NULL,
TreatmentCode varchar(512) NULL,
HouseholdID bigint NULL,
ResponseDate datetime NULL,
ResponseType int NULL,
ResponseTypeCode varchar(64) NULL,
Mark bigint NOT NULL
DEFAULT 0,
UserDefinedFields char(18) NULL,
RTSelectionMethod int NULL,
CONSTRAINT iRHStaging_PK
PRIMARY KEY (SeqNum ASC)
)
go
insert into HH_RHStaging (SeqNum, TreatmentCode, HouseHoldID, ResponseDate,
ResponseType, ResponseTypeCode, Mark, UserDefinedFields, RTSelectionMethod)
(select SeqNum, TreatmentCode, HouseHoldID, ResponseDate, ResponseType,
ResponseTypeCode, Mark, UserDefinedFields, RTSelectionMethod from
HH_RHStaging_COPY)
go
DROP TABLE HH_RHStaging_COPY
go
Para bases de datos DB2® y Oracle, se utilizaría la sentencia siguiente para insertar valores en la tabla
UACI_IdsByType:
Si tiene diversas audiencias, deberá añadir secciones en el script SQL aci_usrtab_upgrd para cada nivel de audiencia como se muestra en el ejemplo siguiente. El ejemplo muestra únicamente las adiciones modificadas.