Hey everybody,
I created a new product with locales and attributes just fine and wanted to add two new features/attributes to it: size & color. Just like in WG-9943. I am doing the following steps, but neither color nor size show up: 1) check if product with detailed information exists, if not create 2) check if product is set to Virtual = Y, if not, edit and add Virtual Variant Method = varianttree 3) create a new product with id similar to originalproduct (eg: productIdcolor) with Virtual = No, Variant = Y 4) create ProductAssoc with createProductI18nRollup.productIdTo = productIdColor, productId = productId, productAssocTypeId= PRODUCT_VARIANT 5) create ProductFeatureCategory if needed 6) create ProductFeature with productFeatureTypeId = COLOR, productFeatureId= FproductIdcolor 7) create ProductFeatureAppl with productFeatureApplTypeId = SELECTABLE_FEATURE & productId = productIdColor 8) iterate through available sizes do 8a) create ProductFeature with productFeatureTypeId=SIZE, productId= productIdColor, productFeatureId=FproductIdColorSize 8b) create ProductFeatureIactn with productFeatureIactnTypeId = FEATURE_IACTN_INCOMP, productFeatureIdTo = FproductIdColor, productFeatureId=FproductIdColorSize 8c) create ProductFeatureAppl with productFeatureId= FproductIdColorSize, productFeatureApplTypeId=STANDARD_FEATURE, productId= productIdColor 8d) create ProductAssoc with productAssocTypeId= PRODUCT_VARIANT, productIdTo= productIdColor, productId = product As I do here: <entity-and entity-name="Product" list="resourceList"> <field-map field-name="productId" from-field="parameters.productId"/> </entity-and> <first-from-list entry="resource" list="resourceList"/> <if-not-empty field="resource"> <log level="warning" message="Updating ${parameters.productId}"></log> <set field="createProductI18nRollup.productId" value="${parameters.productId}"/> <set field="createProductI18nRollup.isVirtual" value="Y"/> <set field="createProductI18nRollup.isVariant" value="N"/> <set field="createProductI18nRollup.virtualVariantMethodEnum" value="VV_VARIANTTREE"/> <set-service-fields map="createProductI18nRollup" service-name="editProductI18n" to-map="createProductI18nMap"/> <call-service service-name="editProductI18n" in-map-name="createProductI18nMap" break-on-error="true" /> </if-not-empty> <call-bsh> <![CDATA[ color = parameters.get("color"); if(color != null && color !=""){ parameters.put("colorId", color.substring(0, 3).replace(" ","_")); } ]]></call-bsh> <map-to-map map="parameters" to-map="createProductI18nRollup"/> <set field="createProductI18nRollup.taxable" value="Y"/> <set field="createProductI18nRollup.chargeShipping" value="Y"/> <set field="createProductI18nRollup.isVirtual" value="N"/> <set field="createProductI18nRollup.isVariant" value="Y"/> <log level="warning" message="COLORID : ${parameters.colorId}"/> <set field="createProductI18nRollup.productId" value="${parameters.productId}${parameters.colorId}"/> <set field="createProductI18nRollup.productTypeId" value="FINISHED_GOOD"/> <set-service-fields map="createProductI18nRollup" service-name="createProductI18n" to-map="createProductI18nMap"/> <entity-and entity-name="Product" list="resourceList"> <field-map field-name="productId" from-field="createProductI18nRollup.productId"/> </entity-and> <first-from-list entry="resource" list="resourceList"/> <if-empty field="resource"> <call-service service-name="createProductI18n" in-map-name="createProductI18nMap"/> <else> <call-service service-name="editProductI18n" in-map-name="createProductI18nMap"/> </else> </if-empty> <now-timestamp field="createProductI18nRollup.fromDate"/> <set field="createProductI18nRollup.productIdTo" value="${createProductI18nRollup.productId}"/> <set field="createProductI18nRollup.productId" value="${parameters.productId}"/> <set field="createProductI18nRollup.productAssocTypeId" value="PRODUCT_VARIANT"/> <entity-and entity-name="ProductAssoc" list="resourceList"> <field-map field-name="productId" from-field="createProductI18nRollup.productId"/> <field-map field-name="productIdTo" from-field="createProductI18nRollup.productIdTo"/> <field-map field-name="productAssocTypeId" from-field="createProductI18nRollup.productAssocTypeId"/> </entity-and> <first-from-list entry="resource" list="resourceList"/> <if-empty field="resource"> <set-service-fields map="createProductI18nRollup" service-name="createProductAssocI18n" to-map="createProductFeatureCategoryI18nMap"/> <call-service service-name="createProductAssocI18n" in-map-name="createProductFeatureCategoryI18nMap"/> <else> <set field="createProductI18nRollup.fromDate" value="${resource.fromDate}"/> <set-service-fields map="createProductI18nRollup" service-name="editProductAssocI18n" to-map="createProductFeatureCategoryI18nMap"/> <call-service service-name="editProductAssocI18n" in-map-name="createProductFeatureCategoryI18nMap"/> </else> </if-empty> <set field="createProductI18nRollup.productId" value="${createProductI18nRollup.productIdTo}"/> <set field="createProductI18nRollup.productFeatureCategoryId" value="BPfeatcat"/> <set field="createProductI18nRollup.description" value="Brandsparadise Features"/> <entity-and entity-name="ProductFeatureCategory" list="resourceList"> <field-map field-name="productFeatureCategoryId" from-field="createProductI18nRollup.productFeatureCategoryId"/> </entity-and> <first-from-list entry="resource" list="resourceList"/> <if-empty field="resource"> <set-service-fields map="createProductI18nRollup" service-name="createProductFeatureCategoryI18n" to-map="createProductFeatureCategoryI18nMap"/> <call-service service-name="createProductFeatureCategoryI18n" in-map-name="createProductFeatureCategoryI18nMap"/> <else> <set-service-fields map="createProductI18nRollup" service-name="editProductFeatureCategoryI18n" to-map="createProductFeatureCategoryI18nMap"/> <call-service service-name="editProductFeatureCategoryI18n" in-map-name="createProductFeatureCategoryI18nMap"/> </else> </if-empty> <set field="createProductI18nRollup.productFeatureTypeId" value="COLOR"/> <set field="createProductI18nRollup.description" value="${parameters.color}"/> <set field="createProductI18nRollup.productFeatureId" value="F${parameters.productId}${parameters.colorId}"/> <entity-and entity-name="ProductFeature" list="resourceList"> <field-map field-name="productFeatureId" from-field="createProductI18nRollup.productFeatureId"/> </entity-and> <first-from-list entry="resource" list="resourceList"/> <if-empty field="resource"> <set-service-fields map="createProductI18nRollup" service-name="createProductFeatureI18n" to-map="createProductFeatureI18nMap"/> <call-service service-name="createProductFeatureI18n" in-map-name="createProductFeatureI18nMap"/> <else> <set-service-fields map="createProductI18nRollup" service-name="editProductFeatureI18n" to-map="createProductFeatureI18nMap"/> <call-service service-name="editProductFeatureI18n" in-map-name="createProductFeatureI18nMap"/> </else> </if-empty> <set field="createProductI18nRollup.productFeatureApplTypeId" value="SELECTABLE_FEATURE"/> <entity-and entity-name="ProductFeatureAppl" list="resourceList"> <field-map field-name="productId" from-field="createProductI18nRollup.productId"/> <field-map field-name="productFeatureId" from-field="createProductI18nRollup.productFeatureId"/> <field-map field-name="productFeatureApplTypeId" from-field="createProductI18nRollup.productFeatureApplTypeId"/> </entity-and> <first-from-list entry="resource" list="resourceList"/> <if-empty field="resource"> <set-service-fields map="createProductI18nRollup" service-name="createProductFeatureApplI18n" to-map="createProductFeatureI18nMap"/> <call-service service-name="createProductFeatureApplI18n" in-map-name="createProductFeatureI18nMap"/> <else> <set-service-fields map="createProductI18nRollup" service-name="editProductFeatureApplI18n" to-map="createProductFeatureI18nMap"/> <call-service service-name="editProductFeatureApplI18n" in-map-name="createProductFeatureI18nMap"/> </else> </if-empty> <set field="newMap.colorId" from-field="parameters.colorId"/> <iterate entry="size" list="parameters.size" > <call-bsh> <![CDATA[ color = parameters.get("color"); if(color != null && color !=""){ parameters.put("colorId", color.substring(0, 3).replace(" ","_")); } ]]></call-bsh> <set field="createProductI18nRollup.productId" value="${parameters.productId}${newMap.colorId}"/> <set field="createProductI18nRollup.productFeatureTypeId" value="SIZE"/> <set field="createProductI18nRollup.description" value="${size}"/> <set field="createProductI18nRollup.productFeatureId" value="F${parameters.productId}${parameters.colorId}${size}"/> <entity-and entity-name="ProductFeature" list="resourceList"> <field-map field-name="productFeatureId" from-field="createProductI18nRollup.productFeatureId"/> </entity-and> <first-from-list entry="resource" list="resourceList"/> <if-empty field="resource"> <set-service-fields map="createProductI18nRollup" service-name="createProductFeatureI18n" to-map="createProductFeatureI18nMap"/> <call-service service-name="createProductFeatureI18n" in-map-name="createProductFeatureI18nMap"/> <else> <set-service-fields map="createProductI18nRollup" service-name="editProductFeatureI18n" to-map="createProductFeatureI18nMap"/> <call-service service-name="editProductFeatureI18n" in-map-name="createProductFeatureI18nMap"/> </else> </if-empty> <log level="warning" message="createProductI18nRollup.productId is now ${createProductI18nRollup.productId}"></log> <set field="createProductI18nRollup.productFeatureIdTo" value="F${parameters.productId}${parameters.colorId}"/> <set field="createProductI18nRollup.productFeatureIactnTypeId" value="FEATURE_IACTN_INCOMP"/> <set field="createProductI18nRollup.productFeatureId" value="F${parameters.productId}${parameters.colorId}${size}"/> <entity-and entity-name="ProductFeatureIactn" list="resourceList"> <field-map field-name="productFeatureId" from-field="createProductI18nRollup.productFeatureId"/> <field-map field-name="productFeatureIdTo" from-field="createProductI18nRollup.productFeatureIdTo"/> </entity-and> <first-from-list entry="resource" list="resourceList"/> <if-empty field="resource"> <now-timestamp field="createProductI18nRollup.fromDate"/> <set field="createProductI18nRollup.productId" value="${createProductI18nRollup.productId}"/> <set-service-fields map="createProductI18nRollup" service-name="createProductFeatureIactnI18n" to-map="createProductFeatureI18nMap"/> <call-service service-name="createProductFeatureIactnI18n" in-map-name="createProductFeatureI18nMap"/> <else> </else> </if-empty> <log level="warning" message="createProductI18nRollup.productId is now ${createProductI18nRollup.productId}"></log> <set field="createProductI18nRollup.productFeatureApplTypeId" value="STANDARD_FEATURE"/> <now-timestamp field="createProductI18nRollup.fromDate"/> <entity-and entity-name="ProductFeatureAppl" list="resourceList"> <field-map field-name="productId" from-field="createProductI18nRollup.productId"/> <field-map field-name="productFeatureId" from-field="createProductI18nRollup.productFeatureId"/> </entity-and> <first-from-list entry="resource" list="resourceList"/> <if-empty field="resource"> <set-service-fields map="createProductI18nRollup" service-name="createProductFeatureApplI18n" to-map="createProductFeatureI18nMap"/> <call-service service-name="createProductFeatureApplI18n" in-map-name="createProductFeatureI18nMap"/> <else> <set field="createProductI18nRollup.fromDate" value="${resource.fromDate}"/> <set-service-fields map="createProductI18nRollup" service-name="editProductFeatureApplI18n" to-map="createProductFeatureI18nMap"/> <call-service service-name="editProductFeatureApplI18n" in-map-name="createProductFeatureI18nMap"/> </else> </if-empty> <log level="warning" message="createProductI18nRollup.productId is now ${createProductI18nRollup.productId}"></log> <now-timestamp field="createProductI18nRollup.fromDate"/> <set field="createProductI18nRollup.productIdTo" value="${createProductI18nRollup.productId}"/> <set field="createProductI18nRollup.productId" value="${parameters.productId}"/> <set field="createProductI18nRollup.productAssocTypeId" value="PRODUCT_VARIANT"/> <log level="warning" message="Adding ProductAssoc for Product_Variant ${createProductI18nRollup.productId} to ${createProductI18nRollup.productIdTo}"></log> <entity-and entity-name="ProductAssoc" list="resourceList"> <field-map field-name="productId" from-field="createProductI18nRollup.productId"/> <field-map field-name="productIdTo" from-field="createProductI18nRollup.productIdTo"/> <field-map field-name="productAssocTypeId" from-field="createProductI18nRollup.productAssocTypeId"/> </entity-and> <first-from-list entry="resource" list="resourceList"/> <if-empty field="resource"> <set-service-fields map="createProductI18nRollup" service-name="createProductAssocI18n" to-map="createProductFeatureCategoryI18nMap"/> <call-service service-name="createProductAssocI18n" in-map-name="createProductFeatureCategoryI18nMap"/> <else> <set field="createProductI18nRollup.fromDate" value="${resource.fromDate}"/> <set-service-fields map="createProductI18nRollup" service-name="editProductAssocI18n" to-map="createProductFeatureCategoryI18nMap"/> <call-service service-name="editProductAssocI18n" in-map-name="createProductFeatureCategoryI18nMap"/> </else> </if-empty> <set field="createProductI18nRollup.productId" value="${createProductI18nRollup.productIdTo}"/> </iterate> I tried to follow the steps for WG-9943 in ProductDemo.xml carefully, but the variants won't show up on my application. What am I missing? |
This is problem in your code that is custom if I understand the email.
I suggest you follow the code that does use it, in ofbiz, to compare what you are doing to what ofbiz does. and after that why not use the ofbiz code? you can start from the page that displays it and work backwards. madppiper sent the following on 5/19/2009 10:28 AM: > Hey everybody, > > I created a new product with locales and attributes just fine and wanted to > add two new features/attributes to it: size & color. Just like in WG-9943. I > am doing the following steps, but neither color nor size show up: > > 1) check if product with detailed information exists, if not create > 2) check if product is set to Virtual = Y, if not, edit and add Virtual > Variant Method = varianttree > 3) create a new product with id similar to originalproduct (eg: > productIdcolor) with Virtual = No, Variant = Y > 4) create ProductAssoc with createProductI18nRollup.productIdTo = > productIdColor, productId = productId, productAssocTypeId= PRODUCT_VARIANT > 5) create ProductFeatureCategory if needed > 6) create ProductFeature with productFeatureTypeId = COLOR, > productFeatureId= FproductIdcolor > 7) create ProductFeatureAppl with productFeatureApplTypeId = > SELECTABLE_FEATURE & productId = productIdColor > 8) iterate through available sizes do > 8a) create ProductFeature with productFeatureTypeId=SIZE, productId= > productIdColor, productFeatureId=FproductIdColorSize > 8b) create ProductFeatureIactn with productFeatureIactnTypeId = > FEATURE_IACTN_INCOMP, productFeatureIdTo = FproductIdColor, > productFeatureId=FproductIdColorSize > 8c) create ProductFeatureAppl with productFeatureId= FproductIdColorSize, > productFeatureApplTypeId=STANDARD_FEATURE, productId= productIdColor > 8d) create ProductAssoc with productAssocTypeId= PRODUCT_VARIANT, > productIdTo= productIdColor, productId = product > > > As I do here: > > > > > <entity-and entity-name="Product" list="resourceList"> > <field-map field-name="productId" > from-field="parameters.productId"/> > </entity-and> > > <first-from-list entry="resource" list="resourceList"/> > <if-not-empty field="resource"> > > <log level="warning" message="Updating > ${parameters.productId}"></log> > <set field="createProductI18nRollup.productId" > value="${parameters.productId}"/> > <set field="createProductI18nRollup.isVirtual" value="Y"/> > <set field="createProductI18nRollup.isVariant" value="N"/> > <set field="createProductI18nRollup.virtualVariantMethodEnum" > value="VV_VARIANTTREE"/> > <set-service-fields map="createProductI18nRollup" > service-name="editProductI18n" to-map="createProductI18nMap"/> > > <call-service service-name="editProductI18n" > in-map-name="createProductI18nMap" break-on-error="true" /> > </if-not-empty> > > > <call-bsh><![CDATA[ > color = parameters.get("color"); > if(color != null && color !=""){ > > parameters.put("colorId", color.substring(0, 3).replace(" > ","_")); > } > ]]></call-bsh> > > > > <!-- Create the basic item --> > > <map-to-map map="parameters" to-map="createProductI18nRollup"/> > > <set field="createProductI18nRollup.taxable" value="Y"/> > <set field="createProductI18nRollup.chargeShipping" > value="Y"/> > <set field="createProductI18nRollup.isVirtual" value="N"/> > <set field="createProductI18nRollup.isVariant" value="Y"/> > > <log level="warning" message="COLORID : ${parameters.colorId}"/> > <set field="createProductI18nRollup.productId" > value="${parameters.productId}${parameters.colorId}"/> > <set field="createProductI18nRollup.productTypeId" > value="FINISHED_GOOD"/> > > > <set-service-fields map="createProductI18nRollup" > service-name="createProductI18n" to-map="createProductI18nMap"/> > > > <entity-and entity-name="Product" list="resourceList"> > <field-map field-name="productId" > from-field="createProductI18nRollup.productId"/> > </entity-and> > > <first-from-list entry="resource" list="resourceList"/> > <if-empty field="resource"> > > <call-service service-name="createProductI18n" > in-map-name="createProductI18nMap"/> > <else> > <call-service service-name="editProductI18n" > in-map-name="createProductI18nMap"/> > </else> > </if-empty> > > > <!-- Create Assoc --> > > > <now-timestamp field="createProductI18nRollup.fromDate"/> > <set field="createProductI18nRollup.productIdTo" > value="${createProductI18nRollup.productId}"/> > <set field="createProductI18nRollup.productId" > value="${parameters.productId}"/> > <set field="createProductI18nRollup.productAssocTypeId" > value="PRODUCT_VARIANT"/> > > <entity-and entity-name="ProductAssoc" list="resourceList"> > <field-map field-name="productId" > from-field="createProductI18nRollup.productId"/> > <field-map field-name="productIdTo" > from-field="createProductI18nRollup.productIdTo"/> > <field-map field-name="productAssocTypeId" > from-field="createProductI18nRollup.productAssocTypeId"/> > </entity-and> > > <first-from-list entry="resource" list="resourceList"/> > <if-empty field="resource"> > <set-service-fields map="createProductI18nRollup" > service-name="createProductAssocI18n" > to-map="createProductFeatureCategoryI18nMap"/> > <call-service service-name="createProductAssocI18n" > in-map-name="createProductFeatureCategoryI18nMap"/> > <else> > <set field="createProductI18nRollup.fromDate" > value="${resource.fromDate}"/> > <set-service-fields map="createProductI18nRollup" > service-name="editProductAssocI18n" > to-map="createProductFeatureCategoryI18nMap"/> > <call-service service-name="editProductAssocI18n" > in-map-name="createProductFeatureCategoryI18nMap"/> > </else> > </if-empty> > > <set field="createProductI18nRollup.productId" > value="${createProductI18nRollup.productIdTo}"/> > > > <!-- Create the ProductFeatureCategory if needed --> > > <set field="createProductI18nRollup.productFeatureCategoryId" > value="BPfeatcat"/> > <set field="createProductI18nRollup.description" > value="Brandsparadise Features"/> > > <entity-and entity-name="ProductFeatureCategory" > list="resourceList"> > <field-map field-name="productFeatureCategoryId" > from-field="createProductI18nRollup.productFeatureCategoryId"/> > </entity-and> > > <first-from-list entry="resource" list="resourceList"/> > <if-empty field="resource"> > <set-service-fields map="createProductI18nRollup" > service-name="createProductFeatureCategoryI18n" > to-map="createProductFeatureCategoryI18nMap"/> > <call-service > service-name="createProductFeatureCategoryI18n" > in-map-name="createProductFeatureCategoryI18nMap"/> > <else> > <set-service-fields map="createProductI18nRollup" > service-name="editProductFeatureCategoryI18n" > to-map="createProductFeatureCategoryI18nMap"/> > <call-service service-name="editProductFeatureCategoryI18n" > in-map-name="createProductFeatureCategoryI18nMap"/> > </else> > </if-empty> > > > > <!-- Create Product Feature Color --> > <set field="createProductI18nRollup.productFeatureTypeId" > value="COLOR"/> > <set field="createProductI18nRollup.description" > value="${parameters.color}"/> > <set field="createProductI18nRollup.productFeatureId" > value="F${parameters.productId}${parameters.colorId}"/> > > <entity-and entity-name="ProductFeature" > list="resourceList"> > <field-map field-name="productFeatureId" > from-field="createProductI18nRollup.productFeatureId"/> > </entity-and> > > <first-from-list entry="resource" list="resourceList"/> > <if-empty field="resource"> > <set-service-fields map="createProductI18nRollup" > service-name="createProductFeatureI18n" > to-map="createProductFeatureI18nMap"/> > <call-service service-name="createProductFeatureI18n" > in-map-name="createProductFeatureI18nMap"/> > <else> > <set-service-fields map="createProductI18nRollup" > service-name="editProductFeatureI18n" to-map="createProductFeatureI18nMap"/> > <call-service service-name="editProductFeatureI18n" > in-map-name="createProductFeatureI18nMap"/> > </else> > </if-empty> > > > > <!-- Create Product Feature Appl --> > > <set field="createProductI18nRollup.productFeatureApplTypeId" > value="SELECTABLE_FEATURE"/> > > <entity-and entity-name="ProductFeatureAppl" > list="resourceList"> > <field-map field-name="productId" > from-field="createProductI18nRollup.productId"/> > <field-map field-name="productFeatureId" > from-field="createProductI18nRollup.productFeatureId"/> > <field-map field-name="productFeatureApplTypeId" > from-field="createProductI18nRollup.productFeatureApplTypeId"/> > </entity-and> > > <first-from-list entry="resource" > list="resourceList"/> > <if-empty field="resource"> > <set-service-fields map="createProductI18nRollup" > service-name="createProductFeatureApplI18n" > to-map="createProductFeatureI18nMap"/> > <call-service service-name="createProductFeatureApplI18n" > in-map-name="createProductFeatureI18nMap"/> > <else> > <set-service-fields map="createProductI18nRollup" > service-name="editProductFeatureApplI18n" > to-map="createProductFeatureI18nMap"/> > <call-service service-name="editProductFeatureApplI18n" > in-map-name="createProductFeatureI18nMap"/> > </else> > </if-empty> > > > <set field="newMap.colorId" from-field="parameters.colorId"/> > > <!-- Create Product Feature Size --> > > <iterate entry="size" list="parameters.size" > > > <call-bsh><![CDATA[ > color = parameters.get("color"); > if(color != null && color !=""){ > > parameters.put("colorId", color.substring(0, > 3).replace(" ","_")); > } > ]]></call-bsh> > > <set field="createProductI18nRollup.productId" > value="${parameters.productId}${newMap.colorId}"/> > <set field="createProductI18nRollup.productFeatureTypeId" > value="SIZE"/> > <set field="createProductI18nRollup.description" value="${size}"/> > <set field="createProductI18nRollup.productFeatureId" > value="F${parameters.productId}${parameters.colorId}${size}"/> > > <entity-and entity-name="ProductFeature" > list="resourceList"> > <field-map field-name="productFeatureId" > from-field="createProductI18nRollup.productFeatureId"/> > </entity-and> > > <first-from-list entry="resource" list="resourceList"/> > <if-empty field="resource"> > <set-service-fields map="createProductI18nRollup" > service-name="createProductFeatureI18n" > to-map="createProductFeatureI18nMap"/> > <call-service service-name="createProductFeatureI18n" > in-map-name="createProductFeatureI18nMap"/> > <else> > <set-service-fields map="createProductI18nRollup" > service-name="editProductFeatureI18n" to-map="createProductFeatureI18nMap"/> > <call-service service-name="editProductFeatureI18n" > in-map-name="createProductFeatureI18nMap"/> > </else> > </if-empty> > > > <log level="warning" message="createProductI18nRollup.productId is > now ${createProductI18nRollup.productId}"></log> > > <!-- Link to color --> > > <set field="createProductI18nRollup.productFeatureIdTo" > value="F${parameters.productId}${parameters.colorId}"/> > <set field="createProductI18nRollup.productFeatureIactnTypeId" > value="FEATURE_IACTN_INCOMP"/> > <set field="createProductI18nRollup.productFeatureId" > value="F${parameters.productId}${parameters.colorId}${size}"/> > <entity-and entity-name="ProductFeatureIactn" > list="resourceList"> > <field-map field-name="productFeatureId" > from-field="createProductI18nRollup.productFeatureId"/> > <field-map field-name="productFeatureIdTo" > from-field="createProductI18nRollup.productFeatureIdTo"/> > </entity-and> > > > <first-from-list entry="resource" > list="resourceList"/> > <if-empty field="resource"> > > <now-timestamp > field="createProductI18nRollup.fromDate"/> > <set field="createProductI18nRollup.productId" > value="${createProductI18nRollup.productId}"/> > <set-service-fields map="createProductI18nRollup" > service-name="createProductFeatureIactnI18n" > to-map="createProductFeatureI18nMap"/> > <call-service > service-name="createProductFeatureIactnI18n" > in-map-name="createProductFeatureI18nMap"/> > <else> > <!-- > <set field="createProductI18nRollup.productFeatureId" > value="${resource.productFeatureId}"/> > <set field="createProductI18nRollup.productFeatureIdTo" > value="${resource.productFeatureIdTo}"/> > > <set-service-fields map="createProductI18nRollup" > service-name="editProductFeatureIactnI18n" > to-map="createProductFeatureI18nMap"/> > <call-service service-name="editProductFeatureIactnI18n" > in-map-name="createProductFeatureI18nMap"/> --> > </else> > </if-empty> > > <log level="warning" message="createProductI18nRollup.productId is > now ${createProductI18nRollup.productId}"></log> > > <!-- Product Feature Appl --> > > <set field="createProductI18nRollup.productFeatureApplTypeId" > value="STANDARD_FEATURE"/> > <now-timestamp field="createProductI18nRollup.fromDate"/> > <entity-and entity-name="ProductFeatureAppl" > list="resourceList"> > <field-map field-name="productId" > from-field="createProductI18nRollup.productId"/> > <field-map field-name="productFeatureId" > from-field="createProductI18nRollup.productFeatureId"/> > </entity-and> > > <first-from-list entry="resource" > list="resourceList"/> > <if-empty field="resource"> > <set-service-fields map="createProductI18nRollup" > service-name="createProductFeatureApplI18n" > to-map="createProductFeatureI18nMap"/> > <call-service > service-name="createProductFeatureApplI18n" > in-map-name="createProductFeatureI18nMap"/> > <else> > <set field="createProductI18nRollup.fromDate" > value="${resource.fromDate}"/> > > <set-service-fields map="createProductI18nRollup" > service-name="editProductFeatureApplI18n" > to-map="createProductFeatureI18nMap"/> > <call-service service-name="editProductFeatureApplI18n" > in-map-name="createProductFeatureI18nMap"/> > </else> > </if-empty> > > > <log level="warning" message="createProductI18nRollup.productId is > now ${createProductI18nRollup.productId}"></log> > > <!-- Create Assoc --> > > > <now-timestamp field="createProductI18nRollup.fromDate"/> > <set field="createProductI18nRollup.productIdTo" > value="${createProductI18nRollup.productId}"/> > <set field="createProductI18nRollup.productId" > value="${parameters.productId}"/> > <set field="createProductI18nRollup.productAssocTypeId" > value="PRODUCT_VARIANT"/> > <log level="warning" message="Adding ProductAssoc for > Product_Variant ${createProductI18nRollup.productId} to > ${createProductI18nRollup.productIdTo}"></log> > <entity-and entity-name="ProductAssoc" list="resourceList"> > <field-map field-name="productId" > from-field="createProductI18nRollup.productId"/> > <field-map field-name="productIdTo" > from-field="createProductI18nRollup.productIdTo"/> > <field-map field-name="productAssocTypeId" > from-field="createProductI18nRollup.productAssocTypeId"/> > </entity-and> > > <first-from-list entry="resource" > list="resourceList"/> > <if-empty field="resource"> > <set-service-fields map="createProductI18nRollup" > service-name="createProductAssocI18n" > to-map="createProductFeatureCategoryI18nMap"/> > <call-service service-name="createProductAssocI18n" > in-map-name="createProductFeatureCategoryI18nMap"/> > <else> > <set field="createProductI18nRollup.fromDate" > value="${resource.fromDate}"/> > <set-service-fields map="createProductI18nRollup" > service-name="editProductAssocI18n" > to-map="createProductFeatureCategoryI18nMap"/> > <call-service service-name="editProductAssocI18n" > in-map-name="createProductFeatureCategoryI18nMap"/> > </else> > </if-empty> > > <set field="createProductI18nRollup.productId" > value="${createProductI18nRollup.productIdTo}"/> > > > > </iterate> > > > > > > > > > > I tried to follow the steps for WG-9943 in ProductDemo.xml carefully, but > the variants won't show up on my application. What am I missing? -- BJ Freeman http://www.businessesnetwork.com/automation http://bjfreeman.elance.com http://www.linkedin.com/profile?viewProfile=&key=1237480&locale=en_US&trk=tab_pro Systems Integrator. |
Yup, my code is custom. Perhaps I was missing out on a service that was already available for this? Or what am I missing here?
As said: I tried to follow the ProductDemo.xml code, but couldn't get it all right. If there is no such service available, are my steps correct that I described above?
|
Free forum by Nabble | Edit this page |