<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://sugarclub.sugarcrm.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>New quotes modules How to update the current QLI based on field change?</title><link>https://sugarclub.sugarcrm.com/dev-club/f/questions-answers/1179/new-quotes-modules-how-to-update-the-current-qli-based-on-field-change</link><description>Hi All, We are moving old quote customisation to new quotes module in 7.9.4. When quantity is changed, we need to update a custom filed for that specific QLI. How/where to update the specific QLI only, based on the field change? Any body has any idea</description><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>RE: New quotes modules How to update the current QLI based on field change?</title><link>https://sugarclub.sugarcrm.com/thread/4784?ContentTypeID=1</link><pubDate>Fri, 25 May 2018 00:35:09 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:6a54eace-dc94-4dfb-8ebe-5dd2fa7b17a7</guid><dc:creator>Francesca Shiekh</dc:creator><description>&lt;p&gt;I am glad you found a way to make it work.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;FrancescaS&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: New quotes modules How to update the current QLI based on field change?</title><link>https://sugarclub.sugarcrm.com/thread/4783?ContentTypeID=1</link><pubDate>Thu, 24 May 2018 23:37:57 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:27d0ad28-9a8c-402c-b0bf-87e6c11e7eab</guid><dc:creator>Ron Lesh</dc:creator><description>&lt;p&gt;hey &lt;a href="https://sugarclub.sugarcrm.com/members/francescas"&gt;Francesca Shiekh&lt;/a&gt;,&lt;/p&gt;&lt;p&gt;thanks for your reply. i have checked that on above screen shot on &amp;quot;tax_class&amp;quot; field. But there is no difference.&lt;/p&gt;&lt;p&gt;hope you finish your work soon and really appreciate your time. your previous very detailed reply already helped me very much! May be come to&amp;nbsp;Melbourne for holiday one day and let me know lol~ i&amp;nbsp;would be super excited and could drive u around if you need.&lt;/p&gt;&lt;p&gt;anyway, for this issue. i have made a work around: by get the product template bean again and then use the value. it is a bit silly, but at least it seems working lol. i will skip this headache for now &lt;span class="emoticon_happy emoticon-inline" style="height:16px;width:16px;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre style="color:#000000;background-color:#ffffff;font-size:9.8pt;"&gt;&lt;span style="color:#000080;font-weight:bold;"&gt;var &lt;/span&gt;&lt;span style="color:#458383;"&gt;self &lt;/span&gt;= &lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;;&lt;br /&gt;&lt;span style="color:#000080;font-weight:bold;"&gt;var &lt;/span&gt;&lt;span style="color:#458383;"&gt;productTemplateBean &lt;/span&gt;= &lt;span style="color:#660e7a;font-weight:bold;"&gt;app&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;data&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;createBean&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;#39;ProductTemplates&amp;#39;&lt;/span&gt;, {&lt;span style="color:#660e7a;font-weight:bold;"&gt;id&lt;/span&gt;: &lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;model&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;attributes&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;product_template_id&lt;/span&gt;});&lt;br /&gt;&lt;span style="color:#458383;"&gt;productTemplateBean&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;fetch&lt;/span&gt;({&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#7a7a43;"&gt;success&lt;/span&gt;: &lt;span style="color:#000080;font-weight:bold;"&gt;function&lt;/span&gt;() {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;++++++++&amp;quot;&lt;/span&gt;+&lt;span style="color:#458383;"&gt;productTemplateBean&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;get&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;currency_id&amp;quot;&lt;/span&gt;));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#458383;"&gt;self&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;context&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;parent&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;get&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;#39;model&amp;#39;&lt;/span&gt;).&lt;span style="color:#7a7a43;"&gt;set&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;currency_id&amp;quot;&lt;/span&gt;,&lt;span style="color:#458383;"&gt;productTemplateBean&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;get&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;currency_id&amp;quot;&lt;/span&gt;));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#458383;"&gt;self&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;updateGSTRate&lt;/span&gt;(&lt;span style="color:#458383;"&gt;productTemplateBean&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;get&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;tax_class&amp;quot;&lt;/span&gt;));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}, &lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;);&lt;/pre&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: New quotes modules How to update the current QLI based on field change?</title><link>https://sugarclub.sugarcrm.com/thread/4782?ContentTypeID=1</link><pubDate>Thu, 24 May 2018 16:41:14 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:041453bd-5441-4ad2-9b62-9b05d0226a38</guid><dc:creator>Francesca Shiekh</dc:creator><description>&lt;div style="border:0px;font-weight:inherit;font-size:14px;"&gt;&lt;div class="" style="border:0px;font-weight:inherit;margin:20px 0px;"&gt;&lt;p style="border:0px;font-weight:inherit;"&gt;I am a bit confused too, and unfortunately I have a bunch of work to get done before I take off for some much needed vacation time...&lt;/p&gt;&lt;p style="border:0px;font-weight:inherit;"&gt;Try putting these two in the log:&lt;/p&gt;&lt;p style="border:0px;font-weight:inherit;"&gt;is there a difference between&lt;/p&gt;&lt;p style="border:0px;font-weight:inherit;"&gt;this.model.get(&amp;#39;currency_id&amp;#39;)&lt;/p&gt;&lt;p style="border:0px;font-weight:inherit;"&gt;and&lt;/p&gt;&lt;p style="border:0px;font-weight:inherit;"&gt;this.model.attributes.currency_id&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="border:0px;font-weight:inherit;font-size:14px;"&gt; &lt;/div&gt;&lt;div class="" style="border:0px;font-weight:inherit;font-size:14px;margin:20px 0px 0px;"&gt;&lt;div class="" style="color:#8b8b8b;border:none;font-weight:inherit;font-size:0.8571rem;"&gt; &lt;/div&gt;&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: New quotes modules How to update the current QLI based on field change?</title><link>https://sugarclub.sugarcrm.com/thread/4781?ContentTypeID=1</link><pubDate>Thu, 24 May 2018 15:09:45 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:7d5174fa-73cb-43c4-9a12-260c2e38f48a</guid><dc:creator>Ron Lesh</dc:creator><description>&lt;p&gt;hey &lt;a href="https://sugarclub.sugarcrm.com/members/francescas"&gt;Francesca Shiekh&lt;/a&gt;,&lt;/p&gt;&lt;p&gt;i need your help again. got stuck in a very simple but strange issue.&amp;nbsp;&lt;/p&gt;&lt;p&gt;the purpose is try update the quote currency&amp;nbsp; and tax rate when selected a product template. (* in our system, we have product templates for different country)&lt;/p&gt;&lt;p&gt;this suppose be very easy as i can see the new currency id and tax class each time when the change product template event triggered. so the code i wrote is:&lt;/p&gt;&lt;pre style="color:#000000;background-color:#ffffff;font-size:9.8pt;"&gt;&lt;span style="color:#000080;font-weight:bold;"&gt;if&lt;/span&gt;(&lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;model&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;changed&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;hasOwnProperty&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;#39;product_template_id&amp;#39;&lt;/span&gt;)){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#808080;"&gt;//update GST Rate&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#808080;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;product template change detected&amp;quot;&lt;/span&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;Print this model attribute:&amp;quot;&lt;/span&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;model&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;attributes&lt;/span&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;Print this model product_template_name:&amp;quot;&lt;/span&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;model&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;attributes&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;product_template_name&lt;/span&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;Print this model currency_id:&amp;quot;&lt;/span&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;model&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;attributes&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;currency_id&lt;/span&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;Print this model tax_class:&amp;quot;&lt;/span&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;model&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;attributes&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;tax_class&lt;/span&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;model&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;get&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;tax_class&amp;quot;&lt;/span&gt;));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;going to set currency id to &amp;quot;&lt;/span&gt;+ &lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;model&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;attributes&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;currency_id&lt;/span&gt;);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;this model cid: &amp;quot;&lt;/span&gt;+&lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;model&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;cid&lt;/span&gt;);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#000080;font-weight:bold;"&gt;var &lt;/span&gt;&lt;span style="color:#458383;"&gt;test &lt;/span&gt;= &lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;context&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;parent&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;get&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;#39;model&amp;#39;&lt;/span&gt;).&lt;span style="color:#660e7a;font-weight:bold;"&gt;attributes&lt;/span&gt;.bundles.&lt;span style="color:#660e7a;font-weight:bold;"&gt;models&lt;/span&gt;[&lt;span style="color: #0000ff;"&gt;0&lt;/span&gt;].&lt;span style="color:#660e7a;font-weight:bold;"&gt;attributes&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;product_bundle_items&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;models&lt;/span&gt;[&lt;span style="color: #0000ff;"&gt;0&lt;/span&gt;];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#660e7a;font-weight:bold;"&gt;console&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;log&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;from quote get first item in product bundle ===&amp;gt; &amp;quot;&lt;/span&gt;+&lt;span style="color:#458383;"&gt;test&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;attributes&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;currency_id&lt;/span&gt;);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;context&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;parent&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;get&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;#39;model&amp;#39;&lt;/span&gt;).&lt;span style="color:#7a7a43;"&gt;set&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;quot;currency_id&amp;quot;&lt;/span&gt;,&lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;model&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;attributes&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;currency_id&lt;/span&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;updateGSTRate&lt;/span&gt;(&lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;model&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;attributes&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;tax_class&lt;/span&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;HOWEVER, what blow my mind is:&lt;br /&gt;although i did print currency id and tax class from this.model, the value is DIFFERENT from when i print entire model!!!&lt;br /&gt;in other word: On change product template, some attribute value are not from the current selected product template!&lt;br /&gt;please refer the screen shot below:&lt;br /&gt;&lt;a href="https://community.sugarcrm.com/servlet/JiveServlet/showImage/2-99897-79280/screenshot_of_printing_model_attributes.png"&gt;&lt;img alt="screen shot of the fact that on change product template, some attribute value is not from the current selected template" class="image-1 jive-image j-img-original" height="900" src="https://community.sugarcrm.com/servlet/JiveServlet/downloadImage/2-99897-79280/741-900/screenshot_of_printing_model_attributes.png" width="741" /&gt;&lt;/a&gt;&lt;/pre&gt;&lt;p&gt;Could you please help me to tell what is the problem here. and do you know if there is any other way to achieve what i want?&lt;/p&gt;&lt;p&gt;looking forward to hear back from you.&lt;/p&gt;&lt;p&gt;cheers,&lt;/p&gt;&lt;p&gt;Ron&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: New quotes modules How to update the current QLI based on field change?</title><link>https://sugarclub.sugarcrm.com/thread/4780?ContentTypeID=1</link><pubDate>Tue, 22 May 2018 04:39:44 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:39f54e5e-51cc-4a00-96ab-48e30869cec6</guid><dc:creator>Ron Lesh</dc:creator><description>&lt;p&gt;Hey &lt;a href="https://sugarclub.sugarcrm.com/members/francescas"&gt;Francesca Shiekh&lt;/a&gt;,&lt;/p&gt;&lt;p&gt;thanks to your help, i have managed to&amp;nbsp;complete the custom calculation when any product item changes. however, because our business special need, each time event triggers, we need to get the entire product bundle items:&lt;/p&gt;&lt;pre style="color:#000000;background-color:#ffffff;font-size:9.8pt;"&gt;&lt;pre style="font-size:9.8pt;"&gt;&lt;span style="color:#000080;font-weight:bold;"&gt;this&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;context&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;parent&lt;/span&gt;.&lt;span style="color:#7a7a43;"&gt;get&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;#39;model&amp;#39;&lt;/span&gt;).&lt;span style="color:#660e7a;font-weight:bold;"&gt;attributes&lt;/span&gt;.bundles.models[&lt;span style="color: #0000ff;"&gt;0&lt;/span&gt;].attributes.product_bundle_items.models&lt;/pre&gt;&lt;/pre&gt;&lt;p&gt;and send to back end for calculation, and then we need to update some values for each product item line. e.g unit price, discount etc.&lt;/p&gt;&lt;p&gt;this added another complication when try to update value for each product. in your case, you just need to update the current item&amp;nbsp;&lt;/p&gt;&lt;pre class="" style="color:#000000;background:#f5f2f0;border:0px;margin:0.5em 0px;padding:1em 1em 1em 3.8em;"&gt;&lt;code style="border:0px;font-weight:inherit;"&gt;self&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;.&lt;/span&gt;model&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;.&lt;/span&gt;&lt;span class="" style="color:#0077aa;border:0px;font-weight:inherit;"&gt;set&lt;/span&gt;&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;(&lt;/span&gt;&lt;span class="" style="color:#669900;border:0px;font-weight:inherit;"&gt;&amp;#39;discount_price&amp;#39;&lt;/span&gt;&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;,&lt;/span&gt; price&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;)&lt;/span&gt;&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Do you know how could i iterate all items in current product bundle and update for each of them? given the fact that my response from calculation contains the unique key of each product item. you know the&amp;nbsp;cid.&lt;/p&gt;&lt;p&gt;hey Francesca, don&amp;#39;t worry. i think i have worked out &lt;span class="emoticon_happy emoticon-inline" style="height:16px;width:16px;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;pre style="color:#000000;background-color:#ffffff;font-size:9.8pt;"&gt;&lt;span&gt;_&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;mapObject&lt;/span&gt;(&lt;span style="color:#458383;"&gt;calculated_price&lt;/span&gt;.&lt;span style="color:#660e7a;font-weight:bold;"&gt;prices&lt;/span&gt;, &lt;span style="color:#000080;font-weight:bold;"&gt;function&lt;/span&gt;(item_price,key) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;_&lt;/span&gt;.&lt;span&gt;each&lt;/span&gt;(&lt;span style="color:#458383;"&gt;product_bundle_items&lt;/span&gt;, &lt;span style="color:#000080;font-weight:bold;"&gt;function&lt;/span&gt;(product_model) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:#000080;font-weight:bold;"&gt;if&lt;/span&gt;(product_model.&lt;span style="color:#660e7a;font-weight:bold;"&gt;cid &lt;/span&gt;== key){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; product_model.&lt;span style="color:#7a7a43;"&gt;set&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;#39;discount_price&amp;#39;&lt;/span&gt;,item_price.&lt;span style="color:#660e7a;font-weight:bold;"&gt;price&lt;/span&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; product_model.&lt;span style="color:#7a7a43;"&gt;set&lt;/span&gt;(&lt;span style="color:#008000;font-weight:bold;"&gt;&amp;#39;discount_amount&amp;#39;&lt;/span&gt;,item_price.discount_amount);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; });&lt;br /&gt;});&lt;/pre&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: New quotes modules How to update the current QLI based on field change?</title><link>https://sugarclub.sugarcrm.com/thread/4779?ContentTypeID=1</link><pubDate>Thu, 17 May 2018 23:40:58 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:5d731bbe-9861-45bf-9d90-85929b694c96</guid><dc:creator>Ron Lesh</dc:creator><description>&lt;p&gt;thank you very much Francesca! you are the best!!!&lt;/p&gt;&lt;p&gt;i will try it out and let you know how i go.&lt;/p&gt;&lt;p&gt;many many thanks!&lt;/p&gt;&lt;p&gt;Ron (Rob was a typo &lt;span class="emoticon-inline emoticon_grin" style="height:16px;width:16px;"&gt;&lt;/span&gt;)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: New quotes modules How to update the current QLI based on field change?</title><link>https://sugarclub.sugarcrm.com/thread/4778?ContentTypeID=1</link><pubDate>Thu, 17 May 2018 14:55:24 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:6fa0bcd9-068b-4d0b-8769-640ec76ff618</guid><dc:creator>Francesca Shiekh</dc:creator><description>&lt;p&gt;Hi Rob,&amp;nbsp;&lt;/p&gt;&lt;p&gt;It&amp;#39;s been a while since I looked at my Quotes code but in&amp;nbsp;my instance I use an&amp;nbsp;ERPLookup API to to look up the unit price on a different system when the mft_part_num changes (which is when the product is selected) and&amp;nbsp;set it as the discount_price (aka unit price) on the Quote Line item.&lt;/p&gt;&lt;p&gt;The core is what I described above but&amp;nbsp;&amp;nbsp;let me see if I can explain my process:&lt;/p&gt;&lt;p&gt;in&amp;nbsp;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;custom/clients/base/api/ERPLookupApi.php&lt;/span&gt;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;I have a custom API that gets the Price from our ERP based on mft_part_num (which is stored in the Sugar product catalog)&lt;/span&gt;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;in&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;custom/modules/Products/clients/base/fields/quote-data-relate/quote-data-relate.js&lt;/span&gt;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;I look up the ERP price when the mft_part_num changes (notice that the mft_part_num is retrieved when the product changes on the Quoted Line Item)&lt;/span&gt;&lt;/p&gt;&lt;pre class="language-javascript line-numbers"&gt;&lt;code&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="punctuation token"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp; extendsFrom&lt;span class="punctuation token"&gt;:&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;ProductsQuoteDataRelateField&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp; initialize&lt;span class="punctuation token"&gt;:&lt;/span&gt; &lt;span class="keyword token"&gt;function&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;options&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="keyword token"&gt;this&lt;/span&gt;&lt;span class="punctuation token"&gt;.&lt;/span&gt;&lt;span class="token function"&gt;_super&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;initialize&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt; &lt;span class="punctuation token"&gt;[&lt;/span&gt;options&lt;span class="punctuation token"&gt;]&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="keyword token"&gt;this&lt;/span&gt;&lt;span class="punctuation token"&gt;.&lt;/span&gt;model&lt;span class="punctuation token"&gt;.&lt;/span&gt;&lt;span class="token function"&gt;on&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;change:mft_part_num&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt; &lt;span class="keyword token"&gt;this&lt;/span&gt;&lt;span class="punctuation token"&gt;.&lt;/span&gt;triggerERPLookup&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;span class="keyword token"&gt;this&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt; &lt;span class="comment token"&gt;//takes care of user-added/modified lines&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &lt;span class="punctuation token"&gt;}&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp; triggerERPLookup&lt;span class="punctuation token"&gt;:&lt;/span&gt; &lt;span class="keyword token"&gt;function&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="keyword token"&gt;var&lt;/span&gt; attr &lt;span class="operator token"&gt;=&lt;/span&gt; &lt;span class="keyword token"&gt;this&lt;/span&gt;&lt;span class="punctuation token"&gt;.&lt;/span&gt;model&lt;span class="punctuation token"&gt;.&lt;/span&gt;attributes&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; part_num &lt;span class="operator token"&gt;=&lt;/span&gt; attr&lt;span class="punctuation token"&gt;.&lt;/span&gt;mft_part_num&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="comment token"&gt;//use the part_num in the API call&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;span class="comment token"&gt;//use an alert to let the user know it case it takes a little time to get the price back&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; app&lt;span class="punctuation token"&gt;.&lt;/span&gt;alert&lt;span class="punctuation token"&gt;.&lt;/span&gt;&lt;span class="token function"&gt;show&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;erp_price&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt; &lt;span class="punctuation token"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; level&lt;span class="punctuation token"&gt;:&lt;/span&gt; &lt;span class="string token"&gt;&amp;#39;process&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; title&lt;span class="punctuation token"&gt;:&lt;/span&gt; &lt;span class="string token"&gt;&amp;#39;Looking up Price in ERP...&amp;#39;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="punctuation token"&gt;}&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="keyword token"&gt;var&lt;/span&gt; self &lt;span class="operator token"&gt;=&lt;/span&gt; &lt;span class="keyword token"&gt;this&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; price_url &lt;span class="operator token"&gt;=&lt;/span&gt; app&lt;span class="punctuation token"&gt;.&lt;/span&gt;api&lt;span class="punctuation token"&gt;.&lt;/span&gt;&lt;span class="token function"&gt;buildURL&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;ERPGetPrice/&amp;#39;&lt;/span&gt;&lt;span class="operator token"&gt;+&lt;/span&gt;part_num&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; app&lt;span class="punctuation token"&gt;.&lt;/span&gt;api&lt;span class="punctuation token"&gt;.&lt;/span&gt;&lt;span class="token function"&gt;call&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;GET&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt; price_url&lt;span class="punctuation token"&gt;,&lt;/span&gt; &lt;span class="keyword token"&gt;null&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt; &lt;span class="punctuation token"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; success&lt;span class="punctuation token"&gt;:&lt;/span&gt; &lt;span class="keyword token"&gt;function&lt;/span&gt; &lt;span class="punctuation token"&gt;(&lt;/span&gt;price&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; self&lt;span class="punctuation token"&gt;.&lt;/span&gt;model&lt;span class="punctuation token"&gt;.&lt;/span&gt;&lt;span class="keyword token"&gt;set&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;discount_price&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt; price&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; app&lt;span class="punctuation token"&gt;.&lt;/span&gt;alert&lt;span class="punctuation token"&gt;.&lt;/span&gt;&lt;span class="token function"&gt;dismiss&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;erp_price&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt; &lt;span class="comment token"&gt;//dismiss the alert&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="punctuation token"&gt;}&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; error&lt;span class="punctuation token"&gt;:&lt;/span&gt; &lt;span class="keyword token"&gt;function&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;e&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; app&lt;span class="punctuation token"&gt;.&lt;/span&gt;alert&lt;span class="punctuation token"&gt;.&lt;/span&gt;&lt;span class="token function"&gt;dismiss&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;erp_price&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; console&lt;span class="punctuation token"&gt;.&lt;/span&gt;&lt;span class="token function"&gt;log&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;e&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="punctuation token"&gt;}&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="punctuation token"&gt;}&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &lt;span class="punctuation token"&gt;}&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&lt;span class="line-numbers-rows"&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I also have an override for the discount_price readonly dependency in&lt;/p&gt;&lt;p&gt;custom/&lt;span class=""&gt;modules/Products/metadata/dependencydefs.php&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=""&gt;note that in the original the fields array includes list_price and cost_price which I do not care to have as read-only so I removed them. There may be a better way to do this.&lt;/span&gt;&lt;/p&gt;&lt;pre class="language-php line-numbers"&gt;&lt;code&gt;&lt;span class="delimiter token"&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class="comment token"&gt;//override discount_price readonly dependency&lt;/span&gt;&lt;br /&gt;&lt;span class="variable token"&gt;$dependencies&lt;/span&gt;&lt;span class="punctuation token"&gt;[&lt;/span&gt;&lt;span class="string token"&gt;'Products'&lt;/span&gt;&lt;span class="punctuation token"&gt;]&lt;/span&gt;&lt;span class="punctuation token"&gt;[&lt;/span&gt;&lt;span class="string token"&gt;'read_only_fields'&lt;/span&gt;&lt;span class="punctuation token"&gt;]&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt; &lt;span class="keyword token"&gt;array&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="variable token"&gt;$fields&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt; &lt;span class="keyword token"&gt;array&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;category_name&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;tax_class&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;mft_part_num&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;weight&amp;#39;&lt;/span&gt;&lt;br /&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="variable token"&gt;$dependencies&lt;/span&gt;&lt;span class="punctuation token"&gt;[&lt;/span&gt;&lt;span class="string token"&gt;'Products'&lt;/span&gt;&lt;span class="punctuation token"&gt;]&lt;/span&gt;&lt;span class="punctuation token"&gt;[&lt;/span&gt;&lt;span class="string token"&gt;'read_only_fields'&lt;/span&gt;&lt;span class="punctuation token"&gt;]&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt; &lt;span class="keyword token"&gt;array&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;hooks&amp;#39;&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt;&lt;span class="operator token"&gt;&amp;gt;&lt;/span&gt; &lt;span class="keyword token"&gt;array&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="string token"&gt;&amp;quot;edit&amp;quot;&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="comment token"&gt;//Trigger formula for the dependency. Defaults to &amp;#39;true&amp;#39;.&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;trigger&amp;#39;&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt;&lt;span class="operator token"&gt;&amp;gt;&lt;/span&gt; &lt;span class="string token"&gt;&amp;#39;true&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;triggerFields&amp;#39;&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt;&lt;span class="operator token"&gt;&amp;gt;&lt;/span&gt; &lt;span class="keyword token"&gt;array&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;product_template_id&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;onload&amp;#39;&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt;&lt;span class="operator token"&gt;&amp;gt;&lt;/span&gt; &lt;span class="token boolean"&gt;true&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="comment token"&gt;//Actions is a list of actions to fire when the trigger is true&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;actions&amp;#39;&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt;&lt;span class="operator token"&gt;&amp;gt;&lt;/span&gt; &lt;span class="keyword token"&gt;array&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="keyword token"&gt;foreach&lt;/span&gt; &lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="variable token"&gt;$fields&lt;/span&gt; &lt;span class="keyword token"&gt;as&lt;/span&gt; &lt;span class="variable token"&gt;$field&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt; &lt;span class="punctuation token"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="variable token"&gt;$dependencies&lt;/span&gt;&lt;span class="punctuation token"&gt;[&lt;/span&gt;&lt;span class="string token"&gt;'Products'&lt;/span&gt;&lt;span class="punctuation token"&gt;]&lt;/span&gt;&lt;span class="punctuation token"&gt;[&lt;/span&gt;&lt;span class="string token"&gt;'read_only_fields'&lt;/span&gt;&lt;span class="punctuation token"&gt;]&lt;/span&gt;&lt;span class="punctuation token"&gt;[&lt;/span&gt;&lt;span class="string token"&gt;'actions'&lt;/span&gt;&lt;span class="punctuation token"&gt;]&lt;/span&gt;&lt;span class="punctuation token"&gt;[&lt;/span&gt;&lt;span class="punctuation token"&gt;]&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt; &lt;span class="keyword token"&gt;array&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;name&amp;#39;&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt;&lt;span class="operator token"&gt;&amp;gt;&lt;/span&gt; &lt;span class="string token"&gt;&amp;#39;ReadOnly&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt; &lt;span class="comment token"&gt;//Action type&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="comment token"&gt;//The parameters passed in depend on the action type&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;params&amp;#39;&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt;&lt;span class="operator token"&gt;&amp;gt;&lt;/span&gt; &lt;span class="keyword token"&gt;array&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;target&amp;#39;&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt;&lt;span class="operator token"&gt;&amp;gt;&lt;/span&gt; &lt;span class="variable token"&gt;$field&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;label&amp;#39;&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt;&lt;span class="operator token"&gt;&amp;gt;&lt;/span&gt; &lt;span class="variable token"&gt;$field&lt;/span&gt; &lt;span class="punctuation token"&gt;.&lt;/span&gt; &lt;span class="string token"&gt;&amp;#39;_label&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt; &lt;span class="comment token"&gt;//normally &lt;/span&gt;&lt;span class="markup token"&gt;&lt;span class="token tag"&gt;&lt;span class="token tag"&gt;&lt;span class="punctuation token"&gt;&amp;lt;&lt;/span&gt;field&lt;/span&gt;&lt;span class="punctuation token"&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;_label&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="string token"&gt;&amp;#39;value&amp;#39;&lt;/span&gt; &lt;span class="operator token"&gt;=&lt;/span&gt;&lt;span class="operator token"&gt;&amp;gt;&lt;/span&gt; &lt;span class="string token"&gt;&amp;#39;not(equal($product_template_id,&amp;quot;&amp;quot;))&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt; &lt;span class="comment token"&gt;//Formula&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="punctuation token"&gt;}&lt;/span&gt;&lt;span class="line-numbers-rows"&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;I think that&amp;#39;s all the pieces, there is so much more going on in my Quotes and it&amp;#39;s been a while since I worked on this so I may have forgotten something, but it should put you on the right track.&lt;/p&gt;&lt;p&gt;Which fields are copied from the catalog to the Quoted Line Item fields is determined by the populate_list on the product_template_name field.&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;You will notice that in&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;modules/Products/vardefs.php&lt;/span&gt;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;&amp;#39;&lt;/span&gt;&lt;span class=""&gt;product_template_name&lt;/span&gt;&lt;span class=""&gt;&amp;#39; includes discount_price in the populate_list, this is what takes the price from the catalog and includes it in the quoted line item. Perhaps you could try to remove that for the fields you don&amp;#39;t want populated by the Sugar Product Catalog by extending the vardefs. I honestly don&amp;#39;t recall why I did not do that.&lt;/span&gt;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;To add a custom field to that list, use the dictionary Extension, e.g.:&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;in custom/Extension/modules/Products/Ext/Vardefs/&lt;/span&gt;&lt;span class=""&gt;vardefs.ext.php&lt;/span&gt;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;I added a custom catalog field for available platforms:&lt;/span&gt;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;$dictionary['Product']['fields']['product_template_name']['populate_list']&lt;/span&gt;&lt;span class=""&gt;[&lt;/span&gt;&lt;span class=""&gt;'&lt;/span&gt;&lt;span class=""&gt;platforms_available_c&lt;/span&gt;&lt;span class=""&gt;'&lt;/span&gt;&lt;span class=""&gt;]&lt;/span&gt;&lt;span class=""&gt; &lt;/span&gt;&lt;span class=""&gt;=&amp;nbsp;&lt;/span&gt;&lt;span class=""&gt;&amp;#39;&lt;/span&gt;&lt;span class=""&gt;platforms_available_c&lt;/span&gt;&lt;span class=""&gt;&amp;#39;;&lt;/span&gt;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;where platforms_available_c is a custom field in ProductTemplates&lt;/span&gt;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;HTH&lt;/p&gt;&lt;p&gt;FrancescaS&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: New quotes modules How to update the current QLI based on field change?</title><link>https://sugarclub.sugarcrm.com/thread/4777?ContentTypeID=1</link><pubDate>Thu, 17 May 2018 12:15:41 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:b80576e4-f3c9-4fcb-a893-9d6390c94c3f</guid><dc:creator>Ron Lesh</dc:creator><description>&lt;p&gt;hey &lt;a href="https://sugarclub.sugarcrm.com/members/francescas"&gt;Francesca Shiekh&lt;/a&gt;,&lt;/p&gt;&lt;p&gt;really appreciate your generously sharing your knowledge. This is exactly what make the community helpful.&lt;/p&gt;&lt;p&gt;as you know by default, when quantity / product template / unit price /&amp;nbsp; discount those fields change, there is already some event triggered to render the page. my question is, do you know what and where is that event ? and how to extend that event to add some custom handling? If i add&amp;nbsp;&lt;/p&gt;&lt;pre class="" style="color:#000000;background:#f5f2f0;border:0px;margin:0.5em 0px;padding:1em 1em 1em 3.8em;"&gt;&lt;code style="border:0px;font-weight:inherit;"&gt;&lt;span class="" style="color:#0077aa;border:0px;font-weight:inherit;"&gt;this&lt;/span&gt;&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;.&lt;/span&gt;model&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;.&lt;/span&gt;&lt;span class="" style="color:#d74444;border:0px;font-weight:inherit;"&gt;on&lt;/span&gt;&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;(&lt;/span&gt;&lt;span class="" style="color:#669900;border:0px;font-weight:inherit;"&gt;&amp;#39;change:mft_part_num&amp;#39;&lt;/span&gt;&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;,&lt;/span&gt; &lt;span class="" style="color:#0077aa;border:0px;font-weight:inherit;"&gt;this&lt;/span&gt;&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;.&lt;/span&gt;triggerERPLookup&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;,&lt;/span&gt;&lt;span class="" style="color:#0077aa;border:0px;font-weight:inherit;"&gt;this&lt;/span&gt;&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;)&lt;/span&gt;&lt;span class="" style="color:#999999;border:0px;font-weight:inherit;"&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;for each fields, would it override the default event?&amp;nbsp; I have also found another related article:&amp;nbsp;&lt;a href="https://community.sugarcrm.com/thread/32760-howwhere-to-detect-this-change-event-for-product-change-in-new-quote-module-794"&gt;How/where to detect this change event for product change in new quote module 7.9.4&lt;/a&gt;&amp;nbsp; which seems have totally different solution. however, i could not get it. what do you think about that?&lt;/p&gt;&lt;p&gt;our user case is, when a product template get picked/changed, we would like to call custom API to calculate the UNIT price and send back to UI. Could you please give any advise?&amp;nbsp;&lt;/p&gt;&lt;p&gt;looking forward to hear back from you.&lt;/p&gt;&lt;p&gt;cheers,&lt;/p&gt;&lt;p&gt;Rob&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: New quotes modules How to update the current QLI based on field change?</title><link>https://sugarclub.sugarcrm.com/thread/4776?ContentTypeID=1</link><pubDate>Tue, 01 May 2018 19:37:23 GMT</pubDate><guid isPermaLink="false">5c521d64-519d-47a6-9065-134618b211bf:ccf32d1f-3f5e-4e23-b832-a49f6c5a7b19</guid><dc:creator>Francesca Shiekh</dc:creator><description>&lt;p&gt;I make some field dependent changes in:&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;&amp;lt;mysugar&amp;gt;/custom/modules/Products/clients/base/fields/quote-data-relate/quote-data-relate.js&lt;/span&gt;&lt;/p&gt;&lt;p class=""&gt;&lt;span class=""&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;pre class="language-javascript line-numbers"&gt;&lt;code&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="punctuation token"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp; extendsFrom&lt;span class="punctuation token"&gt;:&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;ProductsQuoteDataRelateField&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp; initialize&lt;span class="punctuation token"&gt;:&lt;/span&gt; &lt;span class="keyword token"&gt;function&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;options&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="keyword token"&gt;this&lt;/span&gt;&lt;span class="punctuation token"&gt;.&lt;/span&gt;&lt;span class="token function"&gt;_super&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;initialize&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt; &lt;span class="punctuation token"&gt;[&lt;/span&gt;options&lt;span class="punctuation token"&gt;]&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="keyword token"&gt;this&lt;/span&gt;&lt;span class="punctuation token"&gt;.&lt;/span&gt;model&lt;span class="punctuation token"&gt;.&lt;/span&gt;&lt;span class="token function"&gt;on&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="string token"&gt;&amp;#39;change:mft_part_num&amp;#39;&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt; &lt;span class="keyword token"&gt;this&lt;/span&gt;&lt;span class="punctuation token"&gt;.&lt;/span&gt;triggerERPLookup&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;span class="keyword token"&gt;this&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;;&lt;/span&gt; &lt;span class="comment token"&gt;//takes care of user-added/modified lines&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &lt;span class="punctuation token"&gt;}&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&amp;nbsp; triggerERPLookup&lt;span class="punctuation token"&gt;:&lt;/span&gt; &lt;span class="keyword token"&gt;function&lt;/span&gt;&lt;span class="punctuation token"&gt;(&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="punctuation token"&gt;{&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class="comment token"&gt;//my ERP price lookup updates discount_price when the mft_part_num changes&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &lt;span class="punctuation token"&gt;}&lt;/span&gt;&lt;span class="punctuation token"&gt;,&lt;/span&gt;&lt;br /&gt;&lt;span class="punctuation token"&gt;}&lt;/span&gt;&lt;span class="punctuation token"&gt;)&lt;/span&gt;&lt;span class="line-numbers-rows"&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Maybe this will work for you too.&lt;/p&gt;&lt;p&gt;FrancescaS&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>