[Characteristics]Add Characteristics Description field.
authorGorka Ion Damián <gorkaion.damian@openbravo.com>
Wed, 17 Apr 2013 17:25:30 +0200
changeset 20879 f68318bd66b5
parent 20878 b644aab15bfe
child 20880 1defa4288122
[Characteristics]Add Characteristics Description field.
src-db/database/model/tables/M_PRODUCT.xml
src-db/database/sourcedata/AD_COLUMN.xml
src-db/database/sourcedata/AD_ELEMENT.xml
src-db/database/sourcedata/AD_FIELD.xml
src-db/database/sourcedata/AD_MENU.xml
src-db/database/sourcedata/AD_MODEL_OBJECT.xml
src-db/database/sourcedata/AD_PROCESS.xml
src-db/database/sourcedata/AD_PROCESS_PARA.xml
src-db/database/sourcedata/AD_TREENODE.xml
src/org/openbravo/materialmgmt/VariantChDescUpdateProcess.java
--- a/src-db/database/model/tables/M_PRODUCT.xml	Tue Apr 16 12:48:36 2013 +0200
+++ b/src-db/database/model/tables/M_PRODUCT.xml	Wed Apr 17 17:25:30 2013 +0200
@@ -337,6 +337,10 @@
         <default/>
         <onCreateDefault/>
       </column>
+      <column name="CHARACTERISTIC_DESC" primaryKey="false" required="false" type="NVARCHAR" size="2000" autoIncrement="false">
+        <default/>
+        <onCreateDefault/>
+      </column>
       <foreign-key foreignTable="AD_ORG" name="AD_ORG_MPRODUCT">
         <reference local="AD_ORG_ID" foreign="AD_ORG_ID"/>
       </foreign-key>
--- a/src-db/database/sourcedata/AD_COLUMN.xml	Tue Apr 16 12:48:36 2013 +0200
+++ b/src-db/database/sourcedata/AD_COLUMN.xml	Wed Apr 17 17:25:30 2013 +0200
@@ -313154,6 +313154,40 @@
 <!--DA765BB9E57446E38A71F6085AD52DB8-->  <ISUSEDSEQUENCE><![CDATA[N]]></ISUSEDSEQUENCE>
 <!--DA765BB9E57446E38A71F6085AD52DB8--></AD_COLUMN>
 
+<!--DA77D45513798AC2E040007F010002E3--><AD_COLUMN>
+<!--DA77D45513798AC2E040007F010002E3-->  <AD_COLUMN_ID><![CDATA[DA77D45513798AC2E040007F010002E3]]></AD_COLUMN_ID>
+<!--DA77D45513798AC2E040007F010002E3-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--DA77D45513798AC2E040007F010002E3-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--DA77D45513798AC2E040007F010002E3-->  <NAME><![CDATA[Characteristic Description]]></NAME>
+<!--DA77D45513798AC2E040007F010002E3-->  <HELP><![CDATA[Text with the concatenation of the characteristics and its values assigned to the product.]]></HELP>
+<!--DA77D45513798AC2E040007F010002E3-->  <COLUMNNAME><![CDATA[Characteristic_Desc]]></COLUMNNAME>
+<!--DA77D45513798AC2E040007F010002E3-->  <AD_TABLE_ID><![CDATA[208]]></AD_TABLE_ID>
+<!--DA77D45513798AC2E040007F010002E3-->  <AD_REFERENCE_ID><![CDATA[14]]></AD_REFERENCE_ID>
+<!--DA77D45513798AC2E040007F010002E3-->  <FIELDLENGTH><![CDATA[2000]]></FIELDLENGTH>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISKEY><![CDATA[N]]></ISKEY>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISPARENT><![CDATA[N]]></ISPARENT>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISMANDATORY><![CDATA[N]]></ISMANDATORY>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISUPDATEABLE><![CDATA[Y]]></ISUPDATEABLE>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISIDENTIFIER><![CDATA[N]]></ISIDENTIFIER>
+<!--DA77D45513798AC2E040007F010002E3-->  <SEQNO><![CDATA[460]]></SEQNO>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISTRANSLATED><![CDATA[N]]></ISTRANSLATED>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISENCRYPTED><![CDATA[N]]></ISENCRYPTED>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISSELECTIONCOLUMN><![CDATA[N]]></ISSELECTIONCOLUMN>
+<!--DA77D45513798AC2E040007F010002E3-->  <AD_ELEMENT_ID><![CDATA[DA9043B34A024B13E040007F010048FD]]></AD_ELEMENT_ID>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISSESSIONATTR><![CDATA[N]]></ISSESSIONATTR>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISSECONDARYKEY><![CDATA[N]]></ISSECONDARYKEY>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISDESENCRYPTABLE><![CDATA[N]]></ISDESENCRYPTABLE>
+<!--DA77D45513798AC2E040007F010002E3-->  <DEVELOPMENTSTATUS><![CDATA[RE]]></DEVELOPMENTSTATUS>
+<!--DA77D45513798AC2E040007F010002E3-->  <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--DA77D45513798AC2E040007F010002E3-->  <POSITION><![CDATA[85]]></POSITION>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISTRANSIENT><![CDATA[N]]></ISTRANSIENT>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISAUTOSAVE><![CDATA[Y]]></ISAUTOSAVE>
+<!--DA77D45513798AC2E040007F010002E3-->  <VALIDATEONNEW><![CDATA[Y]]></VALIDATEONNEW>
+<!--DA77D45513798AC2E040007F010002E3-->  <IMAGESIZEVALUESACTION><![CDATA[N]]></IMAGESIZEVALUESACTION>
+<!--DA77D45513798AC2E040007F010002E3-->  <ISUSEDSEQUENCE><![CDATA[N]]></ISUSEDSEQUENCE>
+<!--DA77D45513798AC2E040007F010002E3--></AD_COLUMN>
+
 <!--DAC4572C7363492CADB4742107D17F18--><AD_COLUMN>
 <!--DAC4572C7363492CADB4742107D17F18-->  <AD_COLUMN_ID><![CDATA[DAC4572C7363492CADB4742107D17F18]]></AD_COLUMN_ID>
 <!--DAC4572C7363492CADB4742107D17F18-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
--- a/src-db/database/sourcedata/AD_ELEMENT.xml	Tue Apr 16 12:48:36 2013 +0200
+++ b/src-db/database/sourcedata/AD_ELEMENT.xml	Wed Apr 17 17:25:30 2013 +0200
@@ -30844,6 +30844,19 @@
 <!--DA64BA4D7BAC470DE040007F0100463D-->  <ISGLOSSARY><![CDATA[N]]></ISGLOSSARY>
 <!--DA64BA4D7BAC470DE040007F0100463D--></AD_ELEMENT>
 
+<!--DA9043B34A024B13E040007F010048FD--><AD_ELEMENT>
+<!--DA9043B34A024B13E040007F010048FD-->  <AD_ELEMENT_ID><![CDATA[DA9043B34A024B13E040007F010048FD]]></AD_ELEMENT_ID>
+<!--DA9043B34A024B13E040007F010048FD-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--DA9043B34A024B13E040007F010048FD-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--DA9043B34A024B13E040007F010048FD-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--DA9043B34A024B13E040007F010048FD-->  <COLUMNNAME><![CDATA[Characteristic_Desc]]></COLUMNNAME>
+<!--DA9043B34A024B13E040007F010048FD-->  <NAME><![CDATA[Characteristic Description]]></NAME>
+<!--DA9043B34A024B13E040007F010048FD-->  <PRINTNAME><![CDATA[Characteristic Description]]></PRINTNAME>
+<!--DA9043B34A024B13E040007F010048FD-->  <HELP><![CDATA[Text with the concatenation of the characteristics and its values assigned to the product.]]></HELP>
+<!--DA9043B34A024B13E040007F010048FD-->  <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--DA9043B34A024B13E040007F010048FD-->  <ISGLOSSARY><![CDATA[N]]></ISGLOSSARY>
+<!--DA9043B34A024B13E040007F010048FD--></AD_ELEMENT>
+
 <!--DB1DD8906C2F4881AC73CF445EDD2092--><AD_ELEMENT>
 <!--DB1DD8906C2F4881AC73CF445EDD2092-->  <AD_ELEMENT_ID><![CDATA[DB1DD8906C2F4881AC73CF445EDD2092]]></AD_ELEMENT_ID>
 <!--DB1DD8906C2F4881AC73CF445EDD2092-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
--- a/src-db/database/sourcedata/AD_FIELD.xml	Tue Apr 16 12:48:36 2013 +0200
+++ b/src-db/database/sourcedata/AD_FIELD.xml	Wed Apr 17 17:25:30 2013 +0200
@@ -266796,6 +266796,7 @@
 <!--D71921761B37AFB9E040007F01001265-->  <SHOWINRELATION><![CDATA[Y]]></SHOWINRELATION>
 <!--D71921761B37AFB9E040007F01001265-->  <ISFIRSTFOCUSEDFIELD><![CDATA[N]]></ISFIRSTFOCUSEDFIELD>
 <!--D71921761B37AFB9E040007F01001265-->  <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--D71921761B37AFB9E040007F01001265-->  <GRID_SEQNO><![CDATA[75]]></GRID_SEQNO>
 <!--D71921761B37AFB9E040007F01001265-->  <STARTINODDCOLUMN><![CDATA[N]]></STARTINODDCOLUMN>
 <!--D71921761B37AFB9E040007F01001265-->  <STARTNEWLINE><![CDATA[N]]></STARTNEWLINE>
 <!--D71921761B37AFB9E040007F01001265-->  <ISSHOWNINSTATUSBAR><![CDATA[N]]></ISSHOWNINSTATUSBAR>
@@ -268287,6 +268288,34 @@
 <!--DA650293D9E24A63852A35E270E0CF12-->  <EM_OBUIAPP_SHOWSUMMARY><![CDATA[N]]></EM_OBUIAPP_SHOWSUMMARY>
 <!--DA650293D9E24A63852A35E270E0CF12--></AD_FIELD>
 
+<!--DA77D45513848AC2E040007F010002E3--><AD_FIELD>
+<!--DA77D45513848AC2E040007F010002E3-->  <AD_FIELD_ID><![CDATA[DA77D45513848AC2E040007F010002E3]]></AD_FIELD_ID>
+<!--DA77D45513848AC2E040007F010002E3-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--DA77D45513848AC2E040007F010002E3-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--DA77D45513848AC2E040007F010002E3-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--DA77D45513848AC2E040007F010002E3-->  <NAME><![CDATA[Characteristic Description]]></NAME>
+<!--DA77D45513848AC2E040007F010002E3-->  <HELP><![CDATA[Text with the concatenation of the characteristics and its values assigned to the product.]]></HELP>
+<!--DA77D45513848AC2E040007F010002E3-->  <ISCENTRALLYMAINTAINED><![CDATA[Y]]></ISCENTRALLYMAINTAINED>
+<!--DA77D45513848AC2E040007F010002E3-->  <AD_TAB_ID><![CDATA[180]]></AD_TAB_ID>
+<!--DA77D45513848AC2E040007F010002E3-->  <AD_COLUMN_ID><![CDATA[DA77D45513798AC2E040007F010002E3]]></AD_COLUMN_ID>
+<!--DA77D45513848AC2E040007F010002E3-->  <IGNOREINWAD><![CDATA[N]]></IGNOREINWAD>
+<!--DA77D45513848AC2E040007F010002E3-->  <ISDISPLAYED><![CDATA[N]]></ISDISPLAYED>
+<!--DA77D45513848AC2E040007F010002E3-->  <DISPLAYLENGTH><![CDATA[2000]]></DISPLAYLENGTH>
+<!--DA77D45513848AC2E040007F010002E3-->  <ISREADONLY><![CDATA[Y]]></ISREADONLY>
+<!--DA77D45513848AC2E040007F010002E3-->  <SEQNO><![CDATA[960]]></SEQNO>
+<!--DA77D45513848AC2E040007F010002E3-->  <ISSAMELINE><![CDATA[N]]></ISSAMELINE>
+<!--DA77D45513848AC2E040007F010002E3-->  <ISFIELDONLY><![CDATA[N]]></ISFIELDONLY>
+<!--DA77D45513848AC2E040007F010002E3-->  <ISENCRYPTED><![CDATA[N]]></ISENCRYPTED>
+<!--DA77D45513848AC2E040007F010002E3-->  <SHOWINRELATION><![CDATA[Y]]></SHOWINRELATION>
+<!--DA77D45513848AC2E040007F010002E3-->  <ISFIRSTFOCUSEDFIELD><![CDATA[N]]></ISFIRSTFOCUSEDFIELD>
+<!--DA77D45513848AC2E040007F010002E3-->  <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--DA77D45513848AC2E040007F010002E3-->  <GRID_SEQNO><![CDATA[140]]></GRID_SEQNO>
+<!--DA77D45513848AC2E040007F010002E3-->  <STARTINODDCOLUMN><![CDATA[N]]></STARTINODDCOLUMN>
+<!--DA77D45513848AC2E040007F010002E3-->  <STARTNEWLINE><![CDATA[N]]></STARTNEWLINE>
+<!--DA77D45513848AC2E040007F010002E3-->  <ISSHOWNINSTATUSBAR><![CDATA[N]]></ISSHOWNINSTATUSBAR>
+<!--DA77D45513848AC2E040007F010002E3-->  <EM_OBUIAPP_SHOWSUMMARY><![CDATA[N]]></EM_OBUIAPP_SHOWSUMMARY>
+<!--DA77D45513848AC2E040007F010002E3--></AD_FIELD>
+
 <!--DA8090D236C944878E32CD12E96CCC2D--><AD_FIELD>
 <!--DA8090D236C944878E32CD12E96CCC2D-->  <AD_FIELD_ID><![CDATA[DA8090D236C944878E32CD12E96CCC2D]]></AD_FIELD_ID>
 <!--DA8090D236C944878E32CD12E96CCC2D-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
--- a/src-db/database/sourcedata/AD_MENU.xml	Tue Apr 16 12:48:36 2013 +0200
+++ b/src-db/database/sourcedata/AD_MENU.xml	Wed Apr 17 17:25:30 2013 +0200
@@ -4666,6 +4666,18 @@
 <!--BE86736DF4AB4568A316A3922E6D6B7B-->  <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--BE86736DF4AB4568A316A3922E6D6B7B--></AD_MENU>
 
+<!--BECE8640090B45A7B92AA8329742FB6B--><AD_MENU>
+<!--BECE8640090B45A7B92AA8329742FB6B-->  <AD_MENU_ID><![CDATA[BECE8640090B45A7B92AA8329742FB6B]]></AD_MENU_ID>
+<!--BECE8640090B45A7B92AA8329742FB6B-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--BECE8640090B45A7B92AA8329742FB6B-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--BECE8640090B45A7B92AA8329742FB6B-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--BECE8640090B45A7B92AA8329742FB6B-->  <NAME><![CDATA[Update Product Characteristics Description]]></NAME>
+<!--BECE8640090B45A7B92AA8329742FB6B-->  <ISSUMMARY><![CDATA[N]]></ISSUMMARY>
+<!--BECE8640090B45A7B92AA8329742FB6B-->  <ACTION><![CDATA[P]]></ACTION>
+<!--BECE8640090B45A7B92AA8329742FB6B-->  <AD_PROCESS_ID><![CDATA[58591E3E0F7648E4A09058E037CE49FC]]></AD_PROCESS_ID>
+<!--BECE8640090B45A7B92AA8329742FB6B-->  <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--BECE8640090B45A7B92AA8329742FB6B--></AD_MENU>
+
 <!--C14426B2503546788BE2BAEBA2BE81DC--><AD_MENU>
 <!--C14426B2503546788BE2BAEBA2BE81DC-->  <AD_MENU_ID><![CDATA[C14426B2503546788BE2BAEBA2BE81DC]]></AD_MENU_ID>
 <!--C14426B2503546788BE2BAEBA2BE81DC-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
--- a/src-db/database/sourcedata/AD_MODEL_OBJECT.xml	Tue Apr 16 12:48:36 2013 +0200
+++ b/src-db/database/sourcedata/AD_MODEL_OBJECT.xml	Wed Apr 17 17:25:30 2013 +0200
@@ -4086,6 +4086,18 @@
 <!--AA14992C2E4F11DEABB39BCF3C415EF2-->  <OBJECT_TYPE><![CDATA[S]]></OBJECT_TYPE>
 <!--AA14992C2E4F11DEABB39BCF3C415EF2--></AD_MODEL_OBJECT>
 
+<!--AB146DAE0AE54D8AA3EE4C73BE3F4EF1--><AD_MODEL_OBJECT>
+<!--AB146DAE0AE54D8AA3EE4C73BE3F4EF1-->  <AD_MODEL_OBJECT_ID><![CDATA[AB146DAE0AE54D8AA3EE4C73BE3F4EF1]]></AD_MODEL_OBJECT_ID>
+<!--AB146DAE0AE54D8AA3EE4C73BE3F4EF1-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--AB146DAE0AE54D8AA3EE4C73BE3F4EF1-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--AB146DAE0AE54D8AA3EE4C73BE3F4EF1-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--AB146DAE0AE54D8AA3EE4C73BE3F4EF1-->  <ACTION><![CDATA[P]]></ACTION>
+<!--AB146DAE0AE54D8AA3EE4C73BE3F4EF1-->  <CLASSNAME><![CDATA[org.openbravo.materialmgmt.VariantChDescUpdateProcess]]></CLASSNAME>
+<!--AB146DAE0AE54D8AA3EE4C73BE3F4EF1-->  <ISDEFAULT><![CDATA[Y]]></ISDEFAULT>
+<!--AB146DAE0AE54D8AA3EE4C73BE3F4EF1-->  <AD_PROCESS_ID><![CDATA[58591E3E0F7648E4A09058E037CE49FC]]></AD_PROCESS_ID>
+<!--AB146DAE0AE54D8AA3EE4C73BE3F4EF1-->  <OBJECT_TYPE><![CDATA[S]]></OBJECT_TYPE>
+<!--AB146DAE0AE54D8AA3EE4C73BE3F4EF1--></AD_MODEL_OBJECT>
+
 <!--AB97702AEB8911DD8E643B98325DE5FD--><AD_MODEL_OBJECT>
 <!--AB97702AEB8911DD8E643B98325DE5FD-->  <AD_MODEL_OBJECT_ID><![CDATA[AB97702AEB8911DD8E643B98325DE5FD]]></AD_MODEL_OBJECT_ID>
 <!--AB97702AEB8911DD8E643B98325DE5FD-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
--- a/src-db/database/sourcedata/AD_PROCESS.xml	Tue Apr 16 12:48:36 2013 +0200
+++ b/src-db/database/sourcedata/AD_PROCESS.xml	Wed Apr 17 17:25:30 2013 +0200
@@ -5807,6 +5807,26 @@
 <!--53863D4359114ADE92133F772135AEEB-->  <PREVENTCONCURRENT><![CDATA[N]]></PREVENTCONCURRENT>
 <!--53863D4359114ADE92133F772135AEEB--></AD_PROCESS>
 
+<!--58591E3E0F7648E4A09058E037CE49FC--><AD_PROCESS>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <AD_PROCESS_ID><![CDATA[58591E3E0F7648E4A09058E037CE49FC]]></AD_PROCESS_ID>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <VALUE><![CDATA[ProductChDescUpdate]]></VALUE>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <NAME><![CDATA[Update Product Characteristics Description]]></NAME>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <ACCESSLEVEL><![CDATA[3]]></ACCESSLEVEL>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <ISUSERSTARTABLE><![CDATA[N]]></ISUSERSTARTABLE>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <ISREPORT><![CDATA[N]]></ISREPORT>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <ISDIRECTPRINT><![CDATA[N]]></ISDIRECTPRINT>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <ISBACKGROUND><![CDATA[N]]></ISBACKGROUND>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <ISJASPER><![CDATA[N]]></ISJASPER>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <ISEXTERNALSERVICE><![CDATA[N]]></ISEXTERNALSERVICE>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <UIPATTERN><![CDATA[S]]></UIPATTERN>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <ISADVANCEDFEATURE><![CDATA[N]]></ISADVANCEDFEATURE>
+<!--58591E3E0F7648E4A09058E037CE49FC-->  <PREVENTCONCURRENT><![CDATA[N]]></PREVENTCONCURRENT>
+<!--58591E3E0F7648E4A09058E037CE49FC--></AD_PROCESS>
+
 <!--58763832F5F3485CAD33B8B9FCD6C640--><AD_PROCESS>
 <!--58763832F5F3485CAD33B8B9FCD6C640-->  <AD_PROCESS_ID><![CDATA[58763832F5F3485CAD33B8B9FCD6C640]]></AD_PROCESS_ID>
 <!--58763832F5F3485CAD33B8B9FCD6C640-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
--- a/src-db/database/sourcedata/AD_PROCESS_PARA.xml	Tue Apr 16 12:48:36 2013 +0200
+++ b/src-db/database/sourcedata/AD_PROCESS_PARA.xml	Wed Apr 17 17:25:30 2013 +0200
@@ -4338,6 +4338,26 @@
 <!--A49C24DB7D4E423183D1C18CA79F4861-->  <AD_ELEMENT_ID><![CDATA[181]]></AD_ELEMENT_ID>
 <!--A49C24DB7D4E423183D1C18CA79F4861--></AD_PROCESS_PARA>
 
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC--><AD_PROCESS_PARA>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <AD_PROCESS_PARA_ID><![CDATA[A7DBD377EFF645F7951A2DD28F4CBDEC]]></AD_PROCESS_PARA_ID>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <NAME><![CDATA[Product]]></NAME>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <DESCRIPTION><![CDATA[An item produced by a process.]]></DESCRIPTION>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <HELP><![CDATA[Identifies an item which is either purchased or sold in this organization.]]></HELP>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <AD_PROCESS_ID><![CDATA[58591E3E0F7648E4A09058E037CE49FC]]></AD_PROCESS_ID>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <SEQNO><![CDATA[10]]></SEQNO>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <AD_REFERENCE_ID><![CDATA[30]]></AD_REFERENCE_ID>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <AD_REFERENCE_VALUE_ID><![CDATA[800060]]></AD_REFERENCE_VALUE_ID>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <COLUMNNAME><![CDATA[M_Product_Id]]></COLUMNNAME>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <ISCENTRALLYMAINTAINED><![CDATA[Y]]></ISCENTRALLYMAINTAINED>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <FIELDLENGTH><![CDATA[60]]></FIELDLENGTH>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <ISMANDATORY><![CDATA[N]]></ISMANDATORY>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <ISRANGE><![CDATA[N]]></ISRANGE>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC-->  <AD_ELEMENT_ID><![CDATA[454]]></AD_ELEMENT_ID>
+<!--A7DBD377EFF645F7951A2DD28F4CBDEC--></AD_PROCESS_PARA>
+
 <!--A822BEFB7FB64D3C91F076748714CECE--><AD_PROCESS_PARA>
 <!--A822BEFB7FB64D3C91F076748714CECE-->  <AD_PROCESS_PARA_ID><![CDATA[A822BEFB7FB64D3C91F076748714CECE]]></AD_PROCESS_PARA_ID>
 <!--A822BEFB7FB64D3C91F076748714CECE-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -4609,6 +4629,24 @@
 <!--F6C130E3B2DD4414A162FC6BA4F2808E-->  <AD_ELEMENT_ID><![CDATA[2000]]></AD_ELEMENT_ID>
 <!--F6C130E3B2DD4414A162FC6BA4F2808E--></AD_PROCESS_PARA>
 
+<!--FCB9CFB2521649D5ABE758454635A331--><AD_PROCESS_PARA>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <AD_PROCESS_PARA_ID><![CDATA[FCB9CFB2521649D5ABE758454635A331]]></AD_PROCESS_PARA_ID>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <NAME><![CDATA[Characteristic Value]]></NAME>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <HELP><![CDATA[Identifies a possible value of a Product Characteristic]]></HELP>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <AD_PROCESS_ID><![CDATA[58591E3E0F7648E4A09058E037CE49FC]]></AD_PROCESS_ID>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <SEQNO><![CDATA[20]]></SEQNO>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <AD_REFERENCE_ID><![CDATA[19]]></AD_REFERENCE_ID>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <COLUMNNAME><![CDATA[M_CH_Value_ID]]></COLUMNNAME>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <ISCENTRALLYMAINTAINED><![CDATA[Y]]></ISCENTRALLYMAINTAINED>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <FIELDLENGTH><![CDATA[60]]></FIELDLENGTH>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <ISMANDATORY><![CDATA[N]]></ISMANDATORY>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <ISRANGE><![CDATA[N]]></ISRANGE>
+<!--FCB9CFB2521649D5ABE758454635A331-->  <AD_ELEMENT_ID><![CDATA[D6A392F2D7B69EE2E040007F01002D70]]></AD_ELEMENT_ID>
+<!--FCB9CFB2521649D5ABE758454635A331--></AD_PROCESS_PARA>
+
 <!--FF80818132200CAA0132200F00B80007--><AD_PROCESS_PARA>
 <!--FF80818132200CAA0132200F00B80007-->  <AD_PROCESS_PARA_ID><![CDATA[FF80818132200CAA0132200F00B80007]]></AD_PROCESS_PARA_ID>
 <!--FF80818132200CAA0132200F00B80007-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
--- a/src-db/database/sourcedata/AD_TREENODE.xml	Tue Apr 16 12:48:36 2013 +0200
+++ b/src-db/database/sourcedata/AD_TREENODE.xml	Wed Apr 17 17:25:30 2013 +0200
@@ -370,7 +370,7 @@
 <!--52118BF1A2014D84E040007F01005FEC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--52118BF1A2014D84E040007F01005FEC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--52118BF1A2014D84E040007F01005FEC-->  <PARENT_ID><![CDATA[800239]]></PARENT_ID>
-<!--52118BF1A2014D84E040007F01005FEC-->  <SEQNO><![CDATA[20]]></SEQNO>
+<!--52118BF1A2014D84E040007F01005FEC-->  <SEQNO><![CDATA[30]]></SEQNO>
 <!--52118BF1A2014D84E040007F01005FEC--></AD_TREENODE>
 
 <!--52118BF1A2024D84E040007F01005FEC--><AD_TREENODE>
@@ -1470,7 +1470,7 @@
 <!--52118BF1A28C4D84E040007F01005FEC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--52118BF1A28C4D84E040007F01005FEC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--52118BF1A28C4D84E040007F01005FEC-->  <PARENT_ID><![CDATA[800239]]></PARENT_ID>
-<!--52118BF1A28C4D84E040007F01005FEC-->  <SEQNO><![CDATA[40]]></SEQNO>
+<!--52118BF1A28C4D84E040007F01005FEC-->  <SEQNO><![CDATA[50]]></SEQNO>
 <!--52118BF1A28C4D84E040007F01005FEC--></AD_TREENODE>
 
 <!--52118BF1A28D4D84E040007F01005FEC--><AD_TREENODE>
@@ -1481,7 +1481,7 @@
 <!--52118BF1A28D4D84E040007F01005FEC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--52118BF1A28D4D84E040007F01005FEC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--52118BF1A28D4D84E040007F01005FEC-->  <PARENT_ID><![CDATA[800239]]></PARENT_ID>
-<!--52118BF1A28D4D84E040007F01005FEC-->  <SEQNO><![CDATA[70]]></SEQNO>
+<!--52118BF1A28D4D84E040007F01005FEC-->  <SEQNO><![CDATA[80]]></SEQNO>
 <!--52118BF1A28D4D84E040007F01005FEC--></AD_TREENODE>
 
 <!--52118BF1A28E4D84E040007F01005FEC--><AD_TREENODE>
@@ -1492,7 +1492,7 @@
 <!--52118BF1A28E4D84E040007F01005FEC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--52118BF1A28E4D84E040007F01005FEC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--52118BF1A28E4D84E040007F01005FEC-->  <PARENT_ID><![CDATA[800239]]></PARENT_ID>
-<!--52118BF1A28E4D84E040007F01005FEC-->  <SEQNO><![CDATA[60]]></SEQNO>
+<!--52118BF1A28E4D84E040007F01005FEC-->  <SEQNO><![CDATA[70]]></SEQNO>
 <!--52118BF1A28E4D84E040007F01005FEC--></AD_TREENODE>
 
 <!--52118BF1A28F4D84E040007F01005FEC--><AD_TREENODE>
@@ -1503,7 +1503,7 @@
 <!--52118BF1A28F4D84E040007F01005FEC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--52118BF1A28F4D84E040007F01005FEC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--52118BF1A28F4D84E040007F01005FEC-->  <PARENT_ID><![CDATA[800239]]></PARENT_ID>
-<!--52118BF1A28F4D84E040007F01005FEC-->  <SEQNO><![CDATA[50]]></SEQNO>
+<!--52118BF1A28F4D84E040007F01005FEC-->  <SEQNO><![CDATA[60]]></SEQNO>
 <!--52118BF1A28F4D84E040007F01005FEC--></AD_TREENODE>
 
 <!--52118BF1A2904D84E040007F01005FEC--><AD_TREENODE>
@@ -1525,7 +1525,7 @@
 <!--52118BF1A2914D84E040007F01005FEC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--52118BF1A2914D84E040007F01005FEC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--52118BF1A2914D84E040007F01005FEC-->  <PARENT_ID><![CDATA[800239]]></PARENT_ID>
-<!--52118BF1A2914D84E040007F01005FEC-->  <SEQNO><![CDATA[30]]></SEQNO>
+<!--52118BF1A2914D84E040007F01005FEC-->  <SEQNO><![CDATA[40]]></SEQNO>
 <!--52118BF1A2914D84E040007F01005FEC--></AD_TREENODE>
 
 <!--52118BF1A2934D84E040007F01005FEC--><AD_TREENODE>
@@ -4186,9 +4186,20 @@
 <!--D6C7353227EA90EEE040007F01000722-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
 <!--D6C7353227EA90EEE040007F01000722-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
 <!--D6C7353227EA90EEE040007F01000722-->  <PARENT_ID><![CDATA[800239]]></PARENT_ID>
-<!--D6C7353227EA90EEE040007F01000722-->  <SEQNO><![CDATA[80]]></SEQNO>
+<!--D6C7353227EA90EEE040007F01000722-->  <SEQNO><![CDATA[90]]></SEQNO>
 <!--D6C7353227EA90EEE040007F01000722--></AD_TREENODE>
 
+<!--DA90463294F8E647E040007F010048CB--><AD_TREENODE>
+<!--DA90463294F8E647E040007F010048CB-->  <AD_TREENODE_ID><![CDATA[DA90463294F8E647E040007F010048CB]]></AD_TREENODE_ID>
+<!--DA90463294F8E647E040007F010048CB-->  <AD_TREE_ID><![CDATA[10]]></AD_TREE_ID>
+<!--DA90463294F8E647E040007F010048CB-->  <NODE_ID><![CDATA[BECE8640090B45A7B92AA8329742FB6B]]></NODE_ID>
+<!--DA90463294F8E647E040007F010048CB-->  <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--DA90463294F8E647E040007F010048CB-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--DA90463294F8E647E040007F010048CB-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--DA90463294F8E647E040007F010048CB-->  <PARENT_ID><![CDATA[800239]]></PARENT_ID>
+<!--DA90463294F8E647E040007F010048CB-->  <SEQNO><![CDATA[10]]></SEQNO>
+<!--DA90463294F8E647E040007F010048CB--></AD_TREENODE>
+
 <!--DB87F157696645F2A3B31F8DCCC51B03--><AD_TREENODE>
 <!--DB87F157696645F2A3B31F8DCCC51B03-->  <AD_TREENODE_ID><![CDATA[DB87F157696645F2A3B31F8DCCC51B03]]></AD_TREENODE_ID>
 <!--DB87F157696645F2A3B31F8DCCC51B03-->  <AD_TREE_ID><![CDATA[10]]></AD_TREE_ID>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/org/openbravo/materialmgmt/VariantChDescUpdateProcess.java	Wed Apr 17 17:25:30 2013 +0200
@@ -0,0 +1,138 @@
+package org.openbravo.materialmgmt;
+
+import org.apache.commons.lang.StringUtils;
+import org.apache.log4j.Logger;
+import org.hibernate.QueryTimeoutException;
+import org.hibernate.ScrollMode;
+import org.hibernate.ScrollableResults;
+import org.hibernate.exception.GenericJDBCException;
+import org.openbravo.advpaymentmngt.utility.FIN_Utility;
+import org.openbravo.dal.core.OBContext;
+import org.openbravo.dal.service.OBDal;
+import org.openbravo.dal.service.OBQuery;
+import org.openbravo.erpCommon.utility.OBError;
+import org.openbravo.erpCommon.utility.OBMessageUtils;
+import org.openbravo.model.common.plm.Product;
+import org.openbravo.model.common.plm.ProductCharacteristic;
+import org.openbravo.model.common.plm.ProductCharacteristicValue;
+import org.openbravo.scheduling.Process;
+import org.openbravo.scheduling.ProcessBundle;
+
+public class VariantChDescUpdateProcess implements Process {
+  private static final Logger log4j = Logger.getLogger(VariantChDescUpdateProcess.class);
+
+  @Override
+  public void execute(ProcessBundle bundle) throws Exception {
+    OBError msg = new OBError();
+    msg.setType("Success");
+    msg.setTitle(OBMessageUtils.messageBD("Success"));
+
+    OBContext.setAdminMode(false);
+    try {
+      // retrieve standard params
+      final String strProductId = (String) bundle.getParams().get("mProductId");
+      final String strChValueId = (String) bundle.getParams().get("mChValueId");
+
+      StringBuffer where = new StringBuffer();
+      where.append(" as p");
+      where.append(" where p." + Product.PROPERTY_PRODUCTCHARACTERISTICLIST + " is not empty");
+      if (StringUtils.isNotBlank(strProductId)) {
+        where.append(" and p.id = :productId");
+      }
+      if (StringUtils.isNotBlank(strChValueId)) {
+        where.append(" and exists (select 1 from p."
+            + Product.PROPERTY_PRODUCTCHARACTERISTICVALUELIST + " as chv");
+        where.append("    where chv." + ProductCharacteristicValue.PROPERTY_CHARACTERISTICVALUE
+            + ".id = :chvid)");
+      }
+      OBQuery<Product> productQuery = OBDal.getInstance().createQuery(Product.class,
+          where.toString());
+      if (StringUtils.isNotBlank(strProductId)) {
+        productQuery.setNamedParameter("productId", strProductId);
+      }
+      if (StringUtils.isNotBlank(strChValueId)) {
+        productQuery.setNamedParameter("chvid", strChValueId);
+      }
+      productQuery.setFetchSize(1000);
+      productQuery.setFilterOnReadableOrganization(false);
+      productQuery.setFilterOnActive(false);
+
+      ScrollableResults products = productQuery.scroll(ScrollMode.FORWARD_ONLY);
+      int i = 0;
+      while (products.next()) {
+        Product product = (Product) products.get(0);
+        String strChDesc = "";
+        where = new StringBuffer();
+        where.append(" as pch");
+        where.append(" where pch." + ProductCharacteristic.PROPERTY_PRODUCT + " = :product");
+        where.append(" order by pch." + ProductCharacteristic.PROPERTY_SEQUENCENUMBER);
+        OBQuery<ProductCharacteristic> pchQuery = OBDal.getInstance().createQuery(
+            ProductCharacteristic.class, where.toString());
+        pchQuery.setFilterOnActive(false);
+        pchQuery.setFilterOnReadableOrganization(false);
+        pchQuery.setNamedParameter("product", product);
+        for (ProductCharacteristic pch : pchQuery.list()) {
+          if (StringUtils.isNotBlank(strChDesc)) {
+            strChDesc += ", ";
+          }
+          strChDesc += pch.getCharacteristic().getName() + ":";
+          where = new StringBuffer();
+          where.append(" as pchv");
+          where.append(" where pchv." + ProductCharacteristicValue.PROPERTY_CHARACTERISTIC
+              + " = :ch");
+          where
+              .append("   and pchv." + ProductCharacteristicValue.PROPERTY_PRODUCT + " = :product");
+          OBQuery<ProductCharacteristicValue> pchvQuery = OBDal.getInstance().createQuery(
+              ProductCharacteristicValue.class, where.toString());
+          pchvQuery.setFilterOnActive(false);
+          pchvQuery.setFilterOnReadableOrganization(false);
+          pchvQuery.setNamedParameter("ch", pch.getCharacteristic());
+          pchvQuery.setNamedParameter("product", product);
+          for (ProductCharacteristicValue pchv : pchvQuery.list()) {
+            strChDesc += " " + pchv.getCharacteristicValue().getName();
+          }
+        }
+        product.setCharacteristicDescription(strChDesc);
+        OBDal.getInstance().save(product);
+
+        if ((i % 100) == 0) {
+          OBDal.getInstance().flush();
+          OBDal.getInstance().getSession().clear();
+        }
+        i++;
+      }
+
+      bundle.setResult(msg);
+
+      // Postgres wraps the exception into a GenericJDBCException
+    } catch (GenericJDBCException ge) {
+      log4j.error("Exception processing variant generation", ge);
+      msg.setType("Error");
+      msg.setTitle(OBMessageUtils.messageBD(bundle.getConnection(), "Error", bundle.getContext()
+          .getLanguage()));
+      msg.setMessage(((GenericJDBCException) ge).getSQLException().getMessage());
+      bundle.setResult(msg);
+      OBDal.getInstance().rollbackAndClose();
+      // Oracle wraps the exception into a QueryTimeoutException
+    } catch (QueryTimeoutException qte) {
+      log4j.error("Exception processing variant generation", qte);
+      msg.setType("Error");
+      msg.setTitle(OBMessageUtils.messageBD(bundle.getConnection(), "Error", bundle.getContext()
+          .getLanguage()));
+      msg.setMessage(((QueryTimeoutException) qte).getSQLException().getMessage().split("\n")[0]);
+      bundle.setResult(msg);
+      OBDal.getInstance().rollbackAndClose();
+    } catch (final Exception e) {
+      log4j.error("Exception processing variant generation", e);
+      msg.setType("Error");
+      msg.setTitle(OBMessageUtils.messageBD(bundle.getConnection(), "Error", bundle.getContext()
+          .getLanguage()));
+      msg.setMessage(FIN_Utility.getExceptionMessage(e));
+      bundle.setResult(msg);
+      OBDal.getInstance().rollbackAndClose();
+    } finally {
+      OBContext.restorePreviousMode();
+    }
+
+  }
+}
\ No newline at end of file