Dans cette leçon, vous allez pousser la personnalisation créée dans l'environnement de création vers l'environnement opérationnel.
Procedure
Pour pousser l'index de l'environnement de création vers l'environnement de production, effectuez les étapes suivantes :
-
Activez les environnements de production avec Push to Live (PTL) de bout en bout. Cette étape part du principe que vous avez créé les connecteurs Push-to-Live. Si les connecteurs ne sont pas créés, voir l'étape 4 de Création d'un connecteur de service NiFi.
-
Déployez l'environnement de production Commerce en suivant les instructions dans le sujet Déploiement de HCL Commerce version 9.1 à l'aide de Docker Compose (pour une utilisation hors production).
-
Exécutez l'utilitaire stagingprop comme ci-dessous dans le Utility server Docker container de l'environnement de création :
./stagingprop.sh -scope all -dbtype db2 -sourcedb source_db_server:db_port/db_name -sourcedb_user AuthDbUsername -sourcedb_passwd AuthDbPassword -destdb dest_db_server:db_port/db_name -destdb_user LiveDbUsername -destdb_passwd livedbpassword -trace 1
-
Obtenir des indices de recherche à partir des valeurs de marge bénéficiaire dans l'environnement de production.
-
A l'aide d'un client REST, exécutez les commandes POST suivantes pour vérifier que les données de l'index de recherche sont disponibles.
http://ElasticSearchServerName:30200/live.storeId.product/_search
-
Assurez-vous que le contenu du corps contient le
<storeId>, <languageId>, <catalogId>, and <catentryId>.
-
Assurez-vous que les données de prix de coût sont disponibles pour le
<catentryId> que vous utilisez pour vérifier que la zone de marge bénéficiaire est indexée.
Par exemple, étudions le cas suivant :
{
"query": {
"term": {
"_id": "<storeId>-<languageId>-<catalogId>-<catentryId>"
}
}
}
Considérons les valeurs correspondantes comme :
- storeId = 1
- languageId = 1
- catalogId = 10001
- catentryId = 10001
Par conséquent, le produit final sera :
Example:
{
"query": {
"term": {
"_id": "1--1-10001-10001"
}
}
}
-
Vérifiez que la zone de marge bénéficiaire est indexée comme suit :
"prices": {
"offer": {
"usd": 50.0
}
"list": {
"usd": 50.0
}
"10001": {
"usd": 50.0
}
},
"custom": {
"x_profitMargin": 19.0
}
-
Modifiez le mappage du nom de la zone de données utilisateur pour mapper la zone de marge bénéficiaire à une donnée utilisateur à l'aide de l'API de configuration.
-
Redémarrez le service Query.
-
Depuis le client REST, exécutez la commande suivante :
POST: http:// ElasticSearchHostname:30920/search/resources/api/v2/configuration?nodeName=component&envType=live
Note: Utilisez
envType en tant qu'environnement de création ou
live (si vous utilisez un environnement de environnement de production).
-
Utilisez le nom d'utilisateur d'authentification de base comme spiuser et le mot de passe comme spiuserPassword.
Note: Le mot de passe par défaut de l'utilisateur spiuser est passw0rd pour HCL Commerce 9.1.0.0 à 9.1.8.0 et QxV7uCk6RRiwvPVaa4wdD78jaHi2za8ssjneNMdu3vgqi pour HCL Commerce version 9.1.9.0 ou ultérieure.
-
Pour le corps, utilisez le code suivant :
{
"valuemappingservice": {
"valuemapping": [
{
"internalName": "CatalogEntryUserDataFieldNameMapping",
"externalName": "CatalogEntryUserDataFieldNameMapping",
"valuemap": [
{
"externalValue": "ProfitMargin",
"internalValue": "custom.x_profitMargin"
}
]
}
]
}
}
Note: Le mot de passe par défaut de l'utilisateur spiuser est passw0rd pour HCL Commerce 9.1.0.0 à 9.1.8.0 et QxV7uCk6RRiwvPVaa4wdD78jaHi2za8ssjneNMdu3vgqi pour HCL Commerce version 9.1.9.0 ou ultérieure.
-
Cliquez sur Envoyer une requête. La configuration doit être ajoutée pour le composant.
-
Redémarrez le service Query.
-
Modifiez le magasin pour afficher la marge bénéficiaire uniquement dans l'aperçu du magasin.
-
Vérifier que la marge bénéficiaire est visible dans l'aperçu du magasin de l'environnement de production.
Note: Il n'est pas nécessaire de créer l'activité Web de marge bénéficiaire, car elle est déjà créée en exécutant l'utilitaire stagingprop et en la propageant à partir de la base de données de création.