Menu

Integrate OB POS

2009-04-01
2013-03-08
  • Joel Stangeland

    Joel Stangeland - 2009-04-01

    Hello all,

    We have a sponsor interested in making an integration between the OpenBravo POS and ADempiere.
    The scope of the project is defined here:
    http://www.adempiere.com/wiki/index.php/Sponsored_Development:_OB_POS_Integration

    We estimate a cost of $2800USD  for the integration, and have sponsors for $1500USD.  If we can get some more sponsorship, we would love to proceed.

    If you'd like to participate in the project, you can contact me directly, or send your contribution to contribute-at-idalica-dot-com.  Make sure to let us know whether you want to be credited.

    Regards,

    Joel S

     
    • Carlos Ruiz

      Carlos Ruiz - 2009-07-25

      Hi community, I want to inform you that this project is being sponsored - work already started.

      We'll try to inform you the advance of this project on this thread.

      --------------------------

      Current advance:

      We started to work on uploadOrders webservice.  Just found that xfire doesn't support soapenc:Array required to pass/receive orders between both systems.

      So, I'm going to try to migrate from xfire to CXF (if anybody have done this, suggestions are welcome).
      Unfortunately this means the project is stagnated until the migration is done (if possible).

      Regards,

      Carlos Ruiz

       
      • Carlos Ruiz

        Carlos Ruiz - 2009-07-25

        Uh oh - looks like we're in trouble.

        xfire doesn't support rpc/encoding (so, it doesn't support soapenc:Array)

        CXF doesn't support xmlbeans - at least not until version 2.2.2

        Version 2.2.3 is still in development, and as I saw there are 145 open issues with xmlbeans:
        http://issues.apache.org/jira/sr/jira.issueviews:searchrequest-printable/temp/SearchRequest.html?pid=10436&status=1&sorter/field=issuekey&sorter/order=DESC&tempMax=1000

        :-(

        Any hint?

        Regards,

        Carlos Ruiz

         
        • Michael Judd

          Michael Judd - 2009-07-27

          What about axis2?

          http://ws.apache.org/axis2/

          Regards,

          Mike

           
          • Carlos Ruiz

            Carlos Ruiz - 2009-08-08

            Hi all, not good news today.

            As I said here previously:
            > Uh oh - looks like we're in trouble.
            > xfire doesn't support rpc/encoding (so, it doesn't support soapenc:Array)
            > CXF doesn't support xmlbeans - at least not until version 2.2.2

            I've spent lot of time on this issue these two weeks.

            The issue is that we're in a catch 22 situation.
            xfire (obsolete version not maintained anymore) doesn't support rpc/encoding (needed by openbravo pos)
            CXF (the obvious migration path from xfire because they migrated to this project) doesn't support xmlbeans (and all the adempiere web services were developed using xmlbeans support).

            So, I see like five options:

            1) stay on xfire and change openbravo pos to work with xfire

            2) migrate to cxf and change xmlbeans by another approach

            3) migrate to another framework - for example:
            - axis2 http://ws.apache.org/axis2/
            - metro https://metro.dev.java.net/
            - spring web services - http://static.springsource.org/spring-ws/sites/1.5/

            4) wait until cxf supports xmlbeans

            5) wait until obpos 2.30 is stable and start a new project based on the new webservices approach

            --------------------

            Let's analyze pros and cons of every approach:

            1) stay on xfire and change openbravo pos to work with xfire
            pros -> this would be maybe the quicker, but we don't know obpos code deeply, so it implies some additional research and work
            cons -> xfire is already unmaintained - it's not good to stay with this version.  And it's not good to change obpos sources, as we're in some way "forking" them.

            2) migrate to cxf and change xmlbeans by another approach
            pros -> we're migrating web services to a newer technology
            cons -> it implies some additional research and work to replace xmlbeans

            3) migrate to another framework (axis2, metro, spring-ws)
            pros -> we can be migrating to a more advanced and maybe better supported technology
            cons -> it implies even more research and work, the results are not ensured, we even need to start researching if those tools supports rpc/literal and rpc/encoding and xmlbeans or whatever.

            4) wait until cxf supports xmlbeans
            pros -> sounds like an easier migration than option (2)
            cons -> uncertainty - we don't know how much time cxf project will take to support this (it seems there are some work about on version 2.2.3, still in development, and with like 145 open issues with xmlbeans)

            5) wait until obpos 2.30 is stable and start a new project based on the new webservices approach
            pros -> not sure, I suppose obpos 2.30 have important improvements
            cons -> uncertainty - we don't know how much time obpos project will take to stabilize it, and very probably we're going to need to apply any of the options here to integrate with 2.30 also

            Any of those options implies additional work and research - and it's not covered by the initial sponsorship.
            So, we need to find more sponsored money :-(  or wait until somebody take this for free or for his own company.
            Even worst is that I cannot estimate the needed effort for each option to let you know how much money is needed - maybe Trifon or Heng Sin can estimate better the needed work.

            If you ask me which option I would choose, it will be:

            thinking on time (if supporting obpos 2.20 is an urgent issue for some project) -> option 1
            thinking on the best technical -> option 3

            And please note that we're talking just about obpos 2.20, obpos changed a lot the webservice integration in version 2.30, so we're going to need an additional project if we want to migrate to 2.30

            What do you think?

            Regards,

            Carlos Ruiz

             
            • Colin Rooney

              Colin Rooney - 2009-08-08

              Just a short note Carlos...
              > 5) wait until obpos 2.30 is stable
              I have been experimenting with it for a couple of weeks and I haven't notice any obvious issues... so we might not be far from stable!

              re: axis2
              I have, to be honest, no real experience so am not qualified to comment but axis2 was well considered & the WS of choice in the ofbiz project and I would have a lot of respect for the opinions there.  They are both apache projects though !?  But as I said to start I do not feel qualified to comment.

              colin

               
            • Heng Sin

              Heng Sin - 2009-08-09

              Hi Carlos,

              Axis2 doesn't fully support rpc/encoding too so that could be a bummer.
              I guess migrating to cxf could be the simplest path here as xmlbeans are partially supported in 2.2 and  is being actively working on in 2.3, probably worth to at least do a minimal test using 2.2 release and the latest 2.3 snapshot.

              Regards,
              Low

               
  • MZI

    MZI - 2009-11-10

    Dear ADempierians, 

    I see a potential in integration of OB POS with ADempiere, so I would like to participate in pushing forward this feature. Actually I can participate only in sponsorship, at this moment.

    From this discusion I can see you had already gone long way.
    I don't want to say which option is better, this I totally trust you, to pick up the best one, in short and long term. Just I would suggest to consider the possibility to use developed features in another integration projects ( for example Magento or another OSS  … )

    Can you pls. let me know amount needed ? And navigate me what to do next ?

    Best Ragards
    Zilincar Michal

    www.zitec.sk

     
  • Shiju01

    Shiju01 - 2009-11-17

    Quick Question . OB POS is better than Posterita?

     
  • Redhuan D. Oon

    Redhuan D. Oon - 2009-12-03

    according to Colin Rooney last nite in the chatroom it is pretty good:

    0308am
    ]
    croo

    ok - some issues but mostly about integeration with some technical thing that is not really anything to do with us

    0308am
    ]
    croo

    but because it's part of the technical solution

    0308am
    ]
    croo

    we get tarred with the same brush

    0308am
    ]
    croo

    but we have OB POS in maybe 30-40 stores and pentaho to load the sales

    0308am
    ]
    croo

    working on the movements now

    0309am
    ]
    red1

    about OB POS.. is it better choice?

    0309am
    ]
    croo

    the standard inventory moev has no doc for some reason and I have added that

    0309am
    ]
    red1

    can it handle promotions and multiple payments?

    0309am
    ]
    croo

    I plan to suggest it go in standard

    0309am
    ]
    croo

    yeah the OB POS is actually very very nice

    0309am
    ]
    croo

    doesnt handle promotions though

    0309am
    ]
    red1

    u know how to integrate Pentaho?

    0309am
    ]
    croo

    but does lots

    0310am
    ]
    red1

    so ok i can propose u to do this for Thailand

    0310am
    ]
    croo

    yes I am a -pentaho data-integeration guru now

    0310am
    ]
    red1

    huraah

    0310am
    ]
    red1

    karma is working i hope that way

    0310am
    ]
    croo

    not really .. but I did find a bug in pentaho!

    0310am
    ]
    red1

    u made to slog but its really payback later

    0310am
    ]
    croo

    alas someone else found just before me so I didn't get my name in to log it

    0311am
    ]
    croo

    I hope so

    0311am
    ]
    red1

    can it handle multiple payments

    0311am
    ]
    red1

    ?

    0312am
    ]
    croo

    yes

    0312am
    ]
    croo

    and can pause a sale,

    0312am
    ]
    red1

    great

    0312am
    ]
    croo

    but really nice

    0312am
    ]
    red1

    ah same like Java POS

    0312am
    ]
    red1

    can jump to new sales

    0312am
    ]
    croo

    is it can handle a restaurant

    0312am
    ]
    red1

    same like Java POS

    0312am
    ]
    croo

    with a floor plan 

    0312am
    ]
    red1

    now thats sumtin!

    0312am
    ]
    croo

    maybe it is the same

    0313am
    ]
    croo

    this was called TinaPOS befoire OB took it on

    0313am
    ]
    croo

    perhaps it had other names too

    0313am
    ]
    red1

    so is the integration done in trunk somewhere?

    0313am
    ]
    red1

    yeah we know it as TinaPOS

    0313am
    ]
    croo

    not in trunk no … we did it via pentaho & sppon

    0313am
    ]
    croo

    spoon

    0313am
    ]
    croo

    the hope/plan was …

    0314am
    ]
    red1

    u mean the code is not committed yet?

    0314am
    ]
    red1

    i saw a wiki page on it

    0314am
    ]
    croo

    either 1) help with the webservice issue to allow integration directly

    0314am
    ]
    croo

    or 2)

    0314am
    ]
    croo

    pentaho "transformations"  (think scripts) can be called from java

    0314am
    ]
    red1

    u mean TinaPOS has to work via Pentaho?

    0315am
    ]
    croo

    so use that to call the transformation

    0315am
    ]
    croo

    no tinaPOS is standaline

    0315am
    ]
    croo

    no tinaPOS is standalone

    0315am
    ]
    croo

    we then use pentaho to sync at the close

    0315am
    ]
    croo

    so it's not java code

    0315am
    ]
    croo

    but pentaho "transformation"

    0316am
    ]
    croo

    we load them as Import Orders

    0316am
    ]
    croo

    then process them so

    0316am
    ]
    croo

    and we use warehouse orders … so it completes the order/shipment & invoice in adempiere

    0316am
    ]
    red1

    how long u think u take to teach a team to do it?

    0317am
    ]
    croo

    in parallel we import all the payments and auto allocate them to the invoice from previous step

    0317am
    ]
    croo

    not ideal in my opinion but we need a quick result

    0317am
    ]
    croo

    better one of the 2 options abobe

    0317am
    ]
    croo

    above

    0318am
    ]
    croo

    the important piece is I know the POS db structure (and a lot of the code structure as we made some changes in it too - but that is mostly to do with this customer no really generic)

    0318am
    ]
    croo

    so the hope is we can then use the knowledge to make a trunkable intregration

    0319am
    ]
    croo

    I also created pentaho scripts to "push" the products/users/taxes. pricelists to the POS cash registers

    0320am
    ]
    croo

    for now these are scripted to run daily via a mix of cron & pentaho (kitchen & pan)

    0320am
    ]
    red1

    can u say 1 week is enough for u to guide a team?

    0320am
    ]
    croo

    into what exactly? the db , the integration?

    0321am
    ]
    croo

    it's a very technical topic

    0321am
    ]
    croo

    although actually spoon is graphical in nature

    0321am
    ]
    red1

    OB POS into ADempiere

    0321am
    ]
    croo

    well as I said I did it a quick an dirty way …

    0321am
    ]
    croo

    might be better to approach in a more trunkable fashion

    0322am
    ]
    croo

    does you project require POS then?

    0322am
    ]
    croo

    I thought being redbull it might be more manufacturing

    0323am
    ]
    red1

    yes many retailers clients

    0323am
    ]
    red1

    before Red Bull

    0324am
    ]
    red1

    they be going for the smaller ones first
    ]
    croo

    aha - well I can explain my approach fairly quickly ok … and the approach is fairly simply you only must know a little about the POS db … then the rest is about storing in the Import Order table in adempiere

    0325am
    ]
    croo

    ok

     
  • Shaper

    Shaper - 2009-12-14

    Hi,

    just for information:
    I already integrated Openbravo POS with AD - but it's a very special implementation.
    We use Postgres as DB backend so I implemented a stored procedure in PL/pgSQL that updates the customers, products and so on and uploads all ticket data from Openbravo POS and writes them to the i_invoice table of AD.
    Currently I have only one issue - when we have sales to unknown customers at the POS then these cannot be distinguished by the AD import routine (it always generates only once invoice from several sales). I'm still figuring out how to solve this.

     
  • Shaper

    Shaper - 2009-12-14

    PS: We use a dblink connection over VPN with Postgres to transfer the data between the two systems.

     
  • David McNeill

    David McNeill - 2010-02-03

    So do you have an implementation guide or wiki page available for this, so others can utilise your efforts?

    With the loss of Posterita, we're interested in getting another POS working too.

     
  • haris

    haris - 2010-04-05

    Hello all,

    From your wiki, the status is "Stagnated because of technical issues".

    OpenBravo 2.3 was released quite sometime ago.

    Just to let you guys know that I'm going to have a look at this issue from the OpenBravo POS side and at the same time would like to understand the technical issue with the integration requirement.

    I am interested If there is sponsorship/bounty and if you guys need a developer.

    Regards,
    Haris

     
  • Redhuan D. Oon

    Redhuan D. Oon - 2010-04-05

    Haris,
    Thanks for your post. It seems this task requires both of what you stated.

     
  • Amin Lutfi

    Amin Lutfi - 2010-06-18

    Hi ADempierians,
    Why wee need another POS ???
    Can we focus only on JavaPOS and Posterita?

    regards.

     
  • David McNeill

    David McNeill - 2010-06-18

    aminlutfi    Posterita has gone closed source, and is no longer being developed in the open.   OpenBravo is a very good POS and worth persuing.

     
  • pedro rozo

    pedro rozo - 2011-07-02

    Hi everyone,

    We are looking into a Openbravo POS to Adempiere integration, so we already reviewed the available articles and docs with pros-cons about the web service integration, technical issues and it  looks blocked  rigth ?

    So I am wondering if any of you that have performed this integration with postgres tools directly can share your approach, tips …or any other info useful to replicate or perform a better approach

    Do we have any other options to integrate them ?

    We are interested to contribute on this area, but we want to be sure that we re-use the community efforts …

    Regards,

    Pedro Rozo

     
  • ADAXA

    ADAXA - 2011-07-02

    "With postures tools directly"..
    We did it years ago when the pos was still tinapos and the erp still Compiere.
    A Compiere process just pulled all the trx directly from the tinapos postgres Db and pushed all the price lists and products etc to the pos. Is that what you mean?
    We had to do a lot of changes to the pos as well.

     
  • pedro rozo

    pedro rozo - 2011-07-02

    yes, having in mind thew web services issues we are thinking in postgres tools -- how was your experiences syncing b.partners, products ? any relevant suggestion for this process ?

    Any summary of the process that you can share, for example database table mappings or something similar ?

    BTW: thanks for your quick reply.

    Pedro Rozo.

     
  • Redhuan D. Oon

    Redhuan D. Oon - 2011-09-03

    3.52min guide for those who wants to integrate Openbravo POS to ADempiere using ActiveMQ - http://www.youtube.com/watch?v=TwXyK1KoO-M .. Or you can extend from the simple backward compatible but comprehensive effort  sponsored by Sysnova. This project is standing mainly on the technical shoulders of Carlos Ruiz and Ajit Kumar. It reference original works of Compiere and TinaPOS.

     

Log in to post a comment.