<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://globalqss.com/wiki/index.php?action=history&amp;feed=atom&amp;title=IDempiere%2FFullMeeting20140319</id>
	<title>IDempiere/FullMeeting20140319 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://globalqss.com/wiki/index.php?action=history&amp;feed=atom&amp;title=IDempiere%2FFullMeeting20140319"/>
	<link rel="alternate" type="text/html" href="https://globalqss.com/wiki/index.php?title=IDempiere/FullMeeting20140319&amp;action=history"/>
	<updated>2026-04-05T19:16:21Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.32.1</generator>
	<entry>
		<id>https://globalqss.com/wiki/index.php?title=IDempiere/FullMeeting20140319&amp;diff=376&amp;oldid=prev</id>
		<title>CarlosRuiz: full meeting</title>
		<link rel="alternate" type="text/html" href="https://globalqss.com/wiki/index.php?title=IDempiere/FullMeeting20140319&amp;diff=376&amp;oldid=prev"/>
		<updated>2014-03-20T02:44:50Z</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 2014-03-19&lt;br /&gt;
&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''''CarlosRuiz''''': Good morning&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': Bonjour&amp;lt;br&amp;gt;&lt;br /&gt;
'''''tbayen''''': Daarestiet!&amp;lt;br&amp;gt;&lt;br /&gt;
'''''red1_''''': Chow Ang&amp;lt;br&amp;gt;&lt;br /&gt;
'''''red1_''''': CarlosRuiz: I moved 2 trackers for your review.&amp;lt;br&amp;gt;&lt;br /&gt;
'''''red1_''''': About BOM Drop to Production reversal&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': good&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': hi carlos, can you take a look at https://idempiere.atlassian.net/browse/IDEMPIERE-1831 and https://idempiere.atlassian.net/browse/IDEMPIERE-1675 and tell me your opinion about the patches?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': sure JanThielemann&amp;lt;br&amp;gt;&lt;br /&gt;
'''''Deepak''''': Good Morning&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': Morning Deepak &amp;lt;br&amp;gt;&lt;br /&gt;
'''''red1_''''': Morning Deepak&amp;lt;br&amp;gt;&lt;br /&gt;
'''''Deepak''''': I created 2 tickets and will submit patch.. Adding some security major&amp;lt;br&amp;gt;&lt;br /&gt;
'''''Deepak''''': https://idempiere.atlassian.net/browse/IDEMPIERE-1833 and https://idempiere.atlassian.net/browse/IDEMPIERE-1832&amp;lt;br&amp;gt;&lt;br /&gt;
'''''Deepak''''': Monday, I had discussion with Hengsin and discussion was majorly went on Security.. and out come of discussion is that if we can add one util method to check sql for read only&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': JanThielemann, on the webservice security ticket that you opened - I added a comment and a patch&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': can you also please peer review it and give us feedback?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''Deepak''''': This util method must be called from places wherever user can enter SQL and sql expected to be read only&amp;lt;br&amp;gt;&lt;br /&gt;
'''''ocurieles_DCS''''': Hi For all..&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': Hi Orlando&amp;lt;br&amp;gt;&lt;br /&gt;
'''''Deepak''''': CarlosRuiz, did we have done on SQL injection checking?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''tbayen''''': We work on a documentation about the chart of accounts and how to maintain it. I have a question about it: If the deleopers introduce a new default account (this happened last year and broke compatibility with old csv files) - how can I be sure that old installations are updated? Is the &amp;quot;new&amp;quot; default account null after running the migration scripts?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': Deepak, you comment sounds related to IDEMPIERE-1784 too&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': yes tbayen - it's set to null&amp;lt;br&amp;gt;&lt;br /&gt;
'''''tbayen''''': thanks&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': probably migration scripts must take care of assigning a value just for GardenWorld - but we can't for the rest of tenants&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': yep Deepak - a util method to check that sounds useful&amp;lt;br&amp;gt;&lt;br /&gt;
'''''Deepak''''': CarlosRuiz, yes sql injection verification needed at many places&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': CarlosRuiz: as far as i understand your patch, you simply prohibit &amp;quot;free&amp;quot; for filter but how would i achieve a queryData where i want all entries in a range of ids (e. g. ad_org_id in (1000000, 1000001) )?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': can this be done via multiple datarow entries for the same column?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': if the IDs are variable it can't be done with actual tools - draft idea -&amp;gt; we would need some way to set up a context variable and define the constant filter to use those context variables&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': JanThielemann, the util SQL read-only checker method proposed by Deepak also can help to solve the IDEMPIERE-1784 ticket&amp;lt;br&amp;gt;&lt;br /&gt;
'''''tbayen''''': CarlosRuiz, +1 for the idea to set a context vaiable. I have another scenario for that.&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': that would be a better solution i think&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': deepak did you already do some work on it?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''tbayen''''': If you use the master roles then it can be that a user has a master role (near other roles) that makes him e.g. an accountant. You can not test this role in a field's evaluation functions (show some fields only to accountants). I would like to have a context variable set by a role.&amp;lt;br&amp;gt;&lt;br /&gt;
'''''tbayen''''': That means we can use context variables per role and per client. Sorry, if I make it more complicated. ;-)&amp;lt;br&amp;gt;&lt;br /&gt;
'''''ocurieles_DCS''''': @CarlosRuiz have you tested the accounting for Payroll ?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': tbayen you could do this via a session model validator&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': you can check the role id and set your own context variable&amp;lt;br&amp;gt;&lt;br /&gt;
'''''ocurieles_DCS''''': by the way of integrate the Payroll Concept&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': ah yes - the latest version of LCO do that - set context variables on login&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': ocurieles_DCS, I did some checks about that some time ago and fixed a couple of things - is tricky to configure it properly&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': but my usage of payroll in the end when I used it (I'm not using that nowadays) was to avoid accounting on the payroll - generate &amp;quot;employee invoices&amp;quot; with charges to pay the payroll the normal way as vendors are paid&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': so, the invoices are posted - not the payroll&amp;lt;br&amp;gt;&lt;br /&gt;
'''''ocurieles_DCS''''': mmmm... We are working to resolve&amp;lt;br&amp;gt;&lt;br /&gt;
'''''ocurieles_DCS''''': for normal way :D&amp;lt;br&amp;gt;&lt;br /&gt;
'''''ocurieles_DCS''''': without invoice&amp;lt;br&amp;gt;&lt;br /&gt;
'''''tbayen''''': JanThielemann, thanks! The idea with the session validator is great. :-)&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': tbayen you are welcome :D&amp;lt;br&amp;gt;&lt;br /&gt;
'''''tbayen''''': Hi adnan_ :-)&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': JanThielemann, I was not able to reproduce it in postgresql - did you test it in oracle?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': no postgres&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': i'll check again&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': I receive this exception&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': org.postgresql.util.PSQLException: Multiple ResultSets were returned by the query.&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': don't understand what's different on your tests than here&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': the exception is raised at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery line 306&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': my jdbc is postgresql-9.2-1004.jdbc4.jar&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': CarlosRuiz: https://www.dropbox.com/s/ybfgstx6j65ug0r/psqlexcept.jpg&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': ah yes&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': you're right&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': in another test case the exception was thrown&amp;lt;br&amp;gt;&lt;br /&gt;
'''''Deepak''''': JanThielemann, yes we did and commit soon&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': CarlosRuiz: the good news is that i was not able to delete something via sql injection in the filter&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': delete not allowed?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': i wasn't able to delete&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': however, update and insert is possible&amp;lt;br&amp;gt;&lt;br /&gt;
'''''JanThielemann''''': got to go now, bye @ all&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': thanks JanThielemann &amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': Hi CarlosRuiz : if you have time, could you review https://idempiere.atlassian.net/browse/IDEMPIERE-1829 please ? In fact, the attached patch fixes 2 things (and i think is harmless) : ability to send the ResetPassword email in the current language and allow to use translation of mail template (actually, it's overwritten with the 'super' content).&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': yep nmicoud - let me check that one&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': nmicoud, which language it uses to notify the user?  the language of first tenant for the user?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': actually, it's english&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': after your patch?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': no before&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': yep - that's the ticket&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': after, it takes the language defined in the combo box&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': of the login panel&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': I mean - a user can have accounts in two tenants - and different languages potentially&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': ah - I see &amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': yes, but he can choose the language on the 1st screen&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': that this one which is used&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': easier that way&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': yes :)&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': and seems logical&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': CarlosRuiz : i've added another patch to https://idempiere.atlassian.net/browse/IDEMPIERE-1829. It tests the email in upper case.&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': nmicoud, it overwrites first patch - or complement it?&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': complement it&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': ok&amp;lt;br&amp;gt;&lt;br /&gt;
'''''nmicoud''''': getting late here... gtg, bye bye&amp;lt;br&amp;gt;&lt;br /&gt;
'''''CarlosRuiz''''': bye thanks&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>CarlosRuiz</name></author>
		
	</entry>
</feed>