![Deprecated feature](../../base/images/deprecated.png)
Configuración de la búsqueda paramétrica para buscar datos personalizados
Para poder utilizar nuevas propiedades como condiciones de búsqueda en una plantilla de consulta, debe configurar la búsqueda paramétrica para definir la correlación de vías de acceso de objeto de modo que la consulta pueda identificar la columna correspondiente en la tabla de base de datos.
Por qué y cuándo se efectúa esta tarea
El archivo de configuración de componentes, wc-component.xml, contiene una sección para la capa de servicios de datos. Se puede dividir en 3 subsecciones principales:
- Información de mediador de datos
- Información de contexto
- Información de correlación de atributos
Procedimiento
- Abra HCL Commerce Developer.
-
Si todavía no lo ha hecho, cree el archivo de configuración de componentes. Cuando se crea un módulo de servicio personalizado, este archivo se genera automáticamente y puede saltarse este paso. Sin embargo, para los módulos de servicio de HCL Commerce predeterminados, no debe modificar directamente el archivo predeterminado wc.component.xml.
-
Abra el archivo de configuración de componentes en cualquier editor de texto o XML:
- Para módulos de servicio personalizados, abraworkspace_dir/WC/xml/config/servicemodulename/wc-component.xml
- Para los módulos de servicio predeterminados HCL Commerce, abra workspace_dir/WC/xml/config/servicemodulename-ext/wc-component.xml
-
Añada correlaciones de vías de acceso de objetos para los datos personalizados. El ejemplo siguiente muestra una tabla asociada, XWARRANTY, que se define como asociada con la tabla CATENTRY. Dos columnas, WARTERM y WARTYPE, se correlacionan con el área UserData, como
UserData/UserDataField/Warterm
yUserData/UserDataField/Wartype
<_config:dataservice dataMediatorType="JDBC" metadataClass="com.mycompany.commerce.catalog.facade.server.metadata.MyCompanyMetaData"> <_config:mapping> <_config:key name="CatalogEntry" /> <_config:basetable name="CATENTRY" useAllColumns="false"> <_config:associatedtable name="XWARRANTY" useAllColumns="false"> <_config:columns name="WARTERM" propertyName="UserData/UserDataField/Warterm" caseSensitive="false" /> <_config:columns name="WARTYPE" propertyName="UserData/UserDataField/Wartype" caseSensitive="false" /> </_config:associatedtable> </_config:basetable> </_config:mapping> </_config:dataservice>
-
Guarde y cierre el archivo. El ejemplo siguiente es un archivo completo de wc-component.xml de muestra:
<?xml version="1.0" encoding="UTF-8"?> <_config:DevelopmentComponentConfiguration xmlns:_config="http://www.ibm.com/xmlns/prod/commerce/foundation/config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ibm.com/xmlns/prod/commerce/foundation/config ../xsd/wc-component.xsd "> <_config:dataservice dataMediatorType="JDBC" metadataClass="com.mycompany.commerce.catalog.facade.server.metadata.MyCompanyMetaData"> <_config:mapping> <_config:key name="CatalogEntry" /> <_config:basetable name="CATENTRY" useAllColumns="false"> <_config:associatedtable name="XWARRANTY" useAllColumns="false"> <_config:columns name="WARTERM" propertyName="UserData/UserDataField/Warterm" caseSensitive="false" /> <_config:columns name="WARTYPE" propertyName="UserData/UserDataField/Wartype" caseSensitive="false" /> </_config:associatedtable> </_config:basetable> </_config:mapping> </_config:dataservice> </_config:DevelopmentComponentConfiguration>