<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://www.globalqss.com/wiki/index.php?action=history&amp;feed=atom&amp;title=IDempiere%2FFullMeeting20120919</id>
	<title>IDempiere/FullMeeting20120919 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://www.globalqss.com/wiki/index.php?action=history&amp;feed=atom&amp;title=IDempiere%2FFullMeeting20120919"/>
	<link rel="alternate" type="text/html" href="http://www.globalqss.com/wiki/index.php?title=IDempiere/FullMeeting20120919&amp;action=history"/>
	<updated>2026-04-07T23:59:54Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.32.1</generator>
	<entry>
		<id>http://www.globalqss.com/wiki/index.php?title=IDempiere/FullMeeting20120919&amp;diff=178&amp;oldid=prev</id>
		<title>CarlosRuiz: full meeting</title>
		<link rel="alternate" type="text/html" href="http://www.globalqss.com/wiki/index.php?title=IDempiere/FullMeeting20120919&amp;diff=178&amp;oldid=prev"/>
		<updated>2012-09-19T15:40:49Z</updated>

		<summary type="html">&lt;p&gt;full meeting&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;!-- breadcrumb --&amp;gt;&lt;br /&gt;
&amp;lt;font size=-2&amp;gt;&lt;br /&gt;
&amp;amp;lArr;&lt;br /&gt;
[[IDempiere|Table of Contents]] |&lt;br /&gt;
[[IDempiere/Full Meeting Minutes|Full Meeting Minutes]] |&lt;br /&gt;
Full Meeting 2012-09-19&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''CarlosRuiz''''': Morning&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': Bonjour&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': any ticket suggested for peer review today?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': i'd say 382 (did not have time to tork on) ; 293 (list of logged users would be helpful also)&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': ah yes - I was going to ask if you had time for that one&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': nope.... i've just try for few minutes&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': too busy :(&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': i've started to add some code within cmd_new of APanel (we said that when pushing button, record should be marked as changed)... but did not succeed&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': which method would you use to doing it ?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': let me check ....&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': checking GridTable.dataNew&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': the idea would be to customize it by adding some controls ?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': do you mean 382?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': yes&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': no - there must be some point where the record is marked as not updated&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': first clue I found (but didn't work) on GridTable line 2503&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': m_rowChanged = -1;  //  only changed in setValueAt&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': but tried that approach and didn't work - need to check somewhere else&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': what about using something like getMandatory(rowDAta) which should check only parent column ?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': I think the problem is on GridTable.needSave&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': it's explicitly ignoring &amp;quot;New unchanged records&amp;quot;&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': i see&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': ok - got a patch - but I'm not sure now - it has some collateral effects&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': great! need to be tested&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': Nicolas - after the patch - then there are undesirable navigation effects&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': this is my test case&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': defined preference for the mandatory fields on sales order&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': so when I push New all fields are mandatory fields are filled &amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': I navigate to order lines - after the patch the order is saved&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': the bad thing is that if I navigate back to order header - then an order line without product or charge is saved&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': I like how it works when autocommit is set to false - but not when autocommit is true&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': do you want to check it?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': sure&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': this is the patch&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': diff -r 8c36d38a8f09 org.adempiere.base/src/org/compiere/model/GridTable.java&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': --- a/org.adempiere.base/src/org/compiere/model/GridTable.java Mon Sep 17 22:12:48 2012 -0500&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': +++ b/org.adempiere.base/src/org/compiere/model/GridTable.java Wed Sep 19 08:39:46 2012 -0500&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': @@ -1151,7 +1151,7 @@&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''':  &amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''':    // Indicate Change&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''':    m_changed = changed;&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': -  if (!changed)&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': +  if (!changed &amp;amp;&amp;amp; !m_inserting)&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''':     m_rowChanged = -1;&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''':    //if (changed)&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''':    // fireDataStatusIEvent(&amp;quot;&amp;quot;, &amp;quot;&amp;quot;);&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': @@ -2500,7 +2500,7 @@&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''':     }&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''':    }&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''':    &amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': -  m_rowChanged = -1;  //  only changed in setValueAt&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': +  m_rowChanged = m_newRow; // IDEMPIERE-382&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''':  &amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''':    // inform&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''':    log.fine(&amp;quot;Current=&amp;quot; + currentRow + &amp;quot;, New=&amp;quot; + m_newRow);&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': for iDempiere&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': i've only 361 ; that should work ?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': yes - it applies fine on 361&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': ok, i'm testing&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': did not tested with preferences for fields, but seems ok (with autocommit enabled or disabled)&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': but surely need more tests&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': it works - but I don't like the effect of saving that empty orderline&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': but did you force a charge or product on document ?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': no - not forced, that would solve the case for orders - but the same can happen on any window that has details&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': and the detail has not mandatory fields&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': or mandatorys are filled with defaults&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': that's not working for included tabs&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': the actual included tabs approach was already dropped from iDempiere - we're moving to a different approach&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': even for swing ?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': haven't tested on swing&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': another problem : go to a window where there is no records ; click on New, then Undo ; you can go on lines tabs (tested on swing with shipment)&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': yes - I don't like this solution of auto-saving anyways&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': I guess you're pointing to a different approach is about forbidding navigation to a detail&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': that's it; if you want to go in tab with a level &amp;gt;0, all parent field must be filled&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': nmicoud&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': finally got a working thing on zk idempiere&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': good&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': only for web ?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': yes - trying to check if it works for 361 too&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': thanks&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': you could try to follow similar approach on VTabbedPane&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': it works  :-)&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': will upload patches for your review&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': ok will do that, thanks&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': you said that you drooped included tab from iDempiere ; what you planned to do will look like this : http://wtcindia.wordpress.com/2012/06/17/included-tabs-as-horizontal-tab-in-adempiere/ (see last picture) ?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': ready Nicolas - uploaded to http://jira.idempiere.com/browse/IDEMPIERE-382 with comments guiding you where to patch swing&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': we checked the wtc approach - no, I think is not similar to that one&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': wtc=?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': wtcindia&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': walkingtree&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': :-)&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': ok&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': will wait for your tests on 382 to commit&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': and this new approach will be available fo both swing and web ? or just web ?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': I think just web&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': i'll try to test it now, or probably tomorrow&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': :(&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': would'nt be possible to let included tabs for swing ? could be very useful&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': well - we're still not sure about the outcome of this one - after we refine it on zk maybe somebody will develop or sponsor the swing port&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': ok&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': Nicolas - thanks for the meeting - need to move to a different task&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': bye bye ; see u later&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>CarlosRuiz</name></author>
		
	</entry>
</feed>