You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ofbiz.apache.org by madppiper <pa...@mutschler.ch> on 2009/05/19 19:28:23 UTC
Confused over Size & Color
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?
--
View this message in context: http://www.nabble.com/Confused-over-Size---Color-tp23620869p23620869.html
Sent from the OFBiz - User mailing list archive at Nabble.com.
Re: Confused over Size & Color
Posted by madppiper <pa...@mutschler.ch>.
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?
BJ Freeman wrote:
>
> 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.
>
>
>
--
View this message in context: http://www.nabble.com/Confused-over-Size---Color-tp23620869p23629680.html
Sent from the OFBiz - User mailing list archive at Nabble.com.