From WikiQSS

Table of Contents | Full Meeting Minutes | Full Meeting 2012-02-01

Suman_: Hi All, This is Suman, Joining for the first time in Idempiere conference
CarlosRuiz: Morning all - welcome Suman
Suman_: Thanks Carlos
red1: Hi Suman where are u from?
red1: I am still suffering from slight stomach ache.. otherwise fully recovered from food poisioning here in Quito, Ecuador
red1: will be back later as i move from the hotel to the office shortly. CarlosRuiz can u give me the link to your last transcript?
red1: i will link in the forum about this chat meetings
CarlosRuiz: already posted below your forum message
red1: OK then gracias
Suman_: I am from India
Suman_: Works for Walkingtree
CarlosRuiz: ah - I've followed your latests blog entries - they're very helpful - well redacted
red1: as usual to introduce this meeting i quote from Carlos previous apperance: CarlosRuiz: I have no specific agenda for today's meeting - so if you have any issue (technical or functional) you want to discuss - is open - otherwise I'll start working on my pendings
Suman_: Thanks, we will continue to add more add blogs
CarlosRuiz: and I see also that you have a very active forum
CarlosRuiz: :-) exactly red1
red1: Suman, feel free to cross link your work to my forum too - under perhaps 'Building ADempiere'
Suman_: Sure I will do that, But I was bit doubtful as it may become promotional thing
Suman_: but as you mentioned I will start cross linking things
Suman_: I have started reading about OSGI , it is promising
Suman_: If no one has any question, I have one question
CarlosRuiz: of course - go ahead
red1: Suman.. promotional is allowed if it promotes knowledge and not overselling
Suman_: Does Idempiere reduces Customization time, compared to adempiere?
Suman_: Red1.., I agree

  • CarlosRuiz thinking on Suman_ question ....

Suman_: How it reduces time, If we have an example scenario for this, that will be nice
CarlosRuiz: well - I think that's not the main goal - IMHO the customization time on iDempiere/Adempiere is little
CarlosRuiz: but yes - in some way it can reduce the time
CarlosRuiz: as in some cases you don't need to add entries to the dictionary - but just declare the extension point in the bundle
CarlosRuiz: but as I said the goal is not to shorten the times I find already short - the goal is better modularization - avoid class collisions, etc
CarlosRuiz: but - I would like to counterask
CarlosRuiz: how do you think the customization times can be reduced
Suman_: Thanks Carlos
CarlosRuiz: if you have ideas on that direction we can review them
Suman_: I don't have ideas right now, i am just trying understand the things as it is now, may I understand more i may have
Suman_: As I understand more, I may have
CarlosRuiz: sure - my question is because we're too used to the interface - so I find the customization times short - but for others is not the same
CarlosRuiz: and I like to work on that direction
CarlosRuiz: for example when I added the "Create Columns From Similar Table" button
CarlosRuiz: that speed up the creation of tables a lot
CarlosRuiz: and it was very simple solution
Suman_: yes that was good value addition
Suman_: Suppose, If I have very small customer, all he wants is configure product and raise purchase orders from them no Inventory and no accoutning and no costing
Suman_: Right now with current adempiere, I have to deploy everything and hide windows for the end user
Suman_: can we solve this idempiere?
Suman_: in
CarlosRuiz: that's a long term goal - but yes, we're thinking on that direction
CarlosRuiz: to have a kernel and modules to be installed on top of the kernel
Suman_: that will be an achievement
Suman_: Then irrespective of scale of customer's business, Idempiere is an option
red1: bbl
CarlosRuiz: well - at this moment it is - just that is not modularized - so you need to do the role configuration to hide the non-used things
Suman_: Yes
Suman_: Does Eclipse use any database?
CarlosRuiz: I don't know - I suppose for the workspace data must use some sort of database
Suman_: I was just co relating, I will login to adempiere and select some window, in window I will give link for site which has payrol fully installed
Suman_: then it will install that features in my current adempiere installation
Suman_: the we way do in eclipse :)
Suman_: I am thinking it as one end goal for Idempiere
Suman_: Correct me If I am wrong
CarlosRuiz: yes - that's the idea - don't know if the mechanism will be an update site - or a marketplace
CarlosRuiz: but for sure the idea is to make installation of modules very easy
CarlosRuiz: just like deploying the bundle on the OSGi container
CarlosRuiz: then it must auto-install the dictionary part on database - probably using 3pack
Suman_: When I visualize, database looked like little tricky thing to me
Suman_: that's why I asked whether eclipse uses database
CarlosRuiz: that is basically done - what we don't have a mechanism to uninstall from dictionary
Suman_: We may need to have that as well as we move forward :)
CarlosRuiz: yes - is tricky
CarlosRuiz: install is done with 3pack (I use to call this the new version of 2pack) :-)
CarlosRuiz: but uninstall is still very tricky
Suman_: yes it is tricky, we may need to some thing at the time create 3 pack to uninstall
CarlosRuiz: I'm reviewing JIRA trackers as there are no questions - so - if anybody have a candidate for review, just let me know
Suman_: Hi Carlos, can I start helping by fixing some issues?
CarlosRuiz: of course - you're welcome
Suman_: I have good understanding in existing adempiere code base, so I think I can help to some extent in IDempiere
CarlosRuiz: I guess you can clone the bitbucket repository - and look for one of the JIRA tickets open that you would like to collaborate
CarlosRuiz: try to solve it and if ok - then you can send a pull request
Suman_: Ok
Suman_: I will try
CarlosRuiz: and of course you can ask us when you got stuck somewhere
red1: About what Suman_ said about small customer with only purchasing… it is a good idea.. if we have a 2Pack that hides all of that.. maybe i can work towards that
Suman_: Red1.., Moving away from the topic, i am still working on automatic record of test scripts in selenium
Suman_: as I make progresss i will update in forums
red1: that will be great
Suman_: May be carlos can add his thoughts here,
Suman_: What I have done is
Suman_: Sorry, is this right forum to discuss selenium stuff?
red1: I am quite contented with the present contribution done by Carlos and Hengsin to test the ZK via Selenium...
red1: as long as no one objects :D
CarlosRuiz: did you read the rules of this IRC?
CarlosRuiz: :-D just joking
red1: RULES?!!
red1: :D
Suman_: :)
Suman_: :)
Suman_: It seems no objections, May be carlos can help here
red1: actually we have a simple convention… if u think someone else is shit, say so.
CarlosRuiz: Suman_, this space is to open - and selenium QA for iDempiere is of big interest
Suman_: We have added on our own attribute for each widget that i.e.
Suman_: that can bring uniqueness for each widget and will not change for each deployment
Suman_: Now we need to make selenium start identying that attribute automatically when user clicks on or enters data in partilcuar Widget or field
CarlosRuiz: yes - we need uniqueness - and I have suggested also repeatability to be able to record
CarlosRuiz: with repeatability I mean - generating the same unique key for each session
Suman_: For that I In selenium I have added my own "Own Locator Builder" In selenium IDE and put that locator builder on tio
Suman_: top
Suman_: so every time selenium starts recording, it should that for that attribute,if selenium can find that atrribute, our goal is achieved
Suman_: but some how, our custom attribute is not being recognized by selenium
Suman_: it is not even appearing when I try to find it with firebug
Suman_: I need some suggestions from you
Suman_: "should that for that attribute" means "Should look for our custom attribute"
CarlosRuiz: why don't you use the nextComponentUuid approach?
CarlosRuiz: question -> the attribute you added is unique for each component and repeatable - is the same generated on every session (of course if the steps are made in the same order)
Suman_: Do we set nextComponentUuid in ID attribute of each field?
Suman_: I mean each instance of WEditor?
CarlosRuiz: have you checked the iDempiere code for that ? or globalqss361 ?
CarlosRuiz: I think you arrived to the same approach we implemented
Suman_: I have taken base from Red1's Demo
Suman_: that means your approach
Suman_: my goal was to reduce the the effort of test recording
Suman_: our functional testers should be able to record the test cases
red1: and if he proves to you that what you said is shit, then you admit it (sorry was distracted by the boss here in the office who insisted that i know about TOC)
Suman_: they do not know C_BPartner_ID or M_PriceList_ID
CarlosRuiz: the approach on idempiere/globalqss361 is this
Suman_: I will verify that once, It seems I am missing some thing
CarlosRuiz: the nextComponentUuid is called from the zk core to generate the ID of each UI component (buttons, textboxes, etc)
Suman_: Thanks For the Pointer
CarlosRuiz: so - we save a prefix before (i.e. on WEditor and in other classes too) to be used by nextComponentUuid
CarlosRuiz: look for example line 107 here
CarlosRuiz: what I don't like from that is that is adding a "random" number at the end
CarlosRuiz: I suggested to add a combination of WindowNo + AD_Field_ID to make it unique and repeatable
Suman_: yes that should bring uniqueness
CarlosRuiz: that's similar to what you did?
Suman_: But selenium was not identifying this automatically
Suman_: I may be missing some thing
red1: (logging off for next big event in Quito - will check the transcript later)
CarlosRuiz: bye red1 - good luck
Suman_: Problem I face right now is that selenium is not automatically deteting this id
Suman_: I will do some more work and post question in Red1's forum in name of 'dravuri'
CarlosRuiz: which version are you using?
Suman_: 360
Suman_: adempiere 360 LTS
CarlosRuiz: I'll check again on globalqss361/iDempiere to work with selenium the way described
CarlosRuiz: trying to get the unique ID
CarlosRuiz: we have this JIRA ticket also to discuss about
Suman_: Thanks
Suman_: I will use this Jira tracker
Suman_: Thanks Carlos for your time and Patience
CarlosRuiz: you're welcome - thanks to you for coming here
Suman_: I am leaving this session, Bye
CarlosRuiz: bye