This question has been flagged
3 Replies
8999 Views

I found this page which provides some basic examples of communication over XMLRPC:

https://www.odoo.com/documentation/8.0/api_integration.html#connection

This page also points to additional information on the Model Reference, Domains, etc.

The problem is that none of this makes any sense to new users.  New users to odoo are introduced to the platform as it is presented in the GUI.  New users want to perform high-level functions such as Create Quote, Email Quote, Create Sales Order, Confirm a Purchase, Add Customer information, Update customer information, etc.

Where are the worked examples that demonstrate these basic high-level functions over XMLRPC?

Further, why are worked examples provided in various languages using XMLRPC libraries?  XMLRPC is meant to be language agnostic, it would be much better to show the command(s) to be called, the parameters to be sent and a listing of the raw XML.  Otherwise, everyone is forced to muddle through the syntax of various libraries trying to extract the required syntax for a call.

If this type of documentation does not exist, then I am more than willing to help write it if other posters clarify how we perform the various high-level functions.  Reply below if you have further information, links or are willing to help.

Additional Note:  Any proposed solutions must support the default online version as well as local installs.

Avatar
Discard

I should mention that if we need to mix XMLRPC and JSON-RPC that fine too.

Author Best Answer

Thanks for the link, I actually came across this a few hours ago myself.  I've resorted to capturing traffic between the browser and a local installation of odoo in Fiddler to watch the communication.  Then it becomes a question of stripping the exchanges required for the GUI to get at the bare minimum to complete a high-level task.

I've noticed that the GUI in the browser makes use of JSON-RPC, rather than XML-RPC.  At least that is the case for creating a quote.  I captured the entire process and there was about 70 posts to the server to generate a single quote.  Now it is a matter of understanding what is GUI specific, such as generating quick lists, and what is really required.

So far, I haven't seen XML-RPC being used at all, so it may be better to focus on JSON-RPC.  At least there will be example working code.

I feel that the best way forward is to step through the process of creating a quote and note the corresponding JSON exchanges.  So, that will be any initialisation calls, setting the customer, adding the product, etc.  I also want to understand if we need to go through the entire sequence (similar to the GUI), or is there some final submission stage we can add data we've queried to and save it. 

I also noticed that the notification of a quote being created is not when the quote is saved, but when 'update' is clicked to generated the totals and sub-totals.  So, there may be a short-cut here.  As I explore or solve each high-level function I will update this thread.  Hopefully by the end we will finally have some proper documentation.

Avatar
Discard

@Mark, what exactly do you want to accomplish actually? Judging by your comment I believe you want to make it on your computer with JSON-RPC? Its good to hear that you want to keep track of things here and update us with the details. There is to little documentation on this. Sadly I can't help you further unless it is for Android, as thats the only thing that I've worked with for XML-RPC.. By the way if my comment helped you please upvote it, as that tells others its a good comment and gives me some karma.

Author

I'm working on a E-commerce solution that may use odoo as its backend. Thus, I need to use RPC to perform specific high-level tasks such as obtain product information, generate sales orders, add customer information, add leads, etc. Activity on the website would be reflected in odoo. What I will be doing can be used on any platofrm, or language. I will just describe the RPC sequence and leave everyone else to decide on how to implement those calls in their language of choice. I've just noticed that this forum only allows for a single answer to a question, rather than an ongoing discussion. So, that will make capturing this information here difficult if not impossible. I will see if I can add it as comments to my original question and if there are any limits to that.

Hmm, that sounds very interesting and promising! As for the forums.. there aren't a lot of options to format text/code here etc. Your best best is probably editing your question and place a link in it to another location where you write out your documentation/tutorial.

Best Answer

Hi Mark

Sadly there is VERY little information and details about this.
You can find examples of the Odoo apps here though: https://github.com/Odoo-mobile/

Sadly this code is so big and uses a lot of their own classes that its nearly impossible to understand.
For now there is no other documentation and neither are there any tutorials. I've been fighting with XML-RPC in Android for two days myself now, I haven't gotten further then connecting and getting a list of data. 
Do you want to do this on Android, Python, PHP, ??
There is one awesome guide about XML-RPC through PHP here: http://thierry-godin.developpez.com/openerp/openerp-xmlrpc-php-en/

Hope this helps you!

Avatar
Discard
Best Answer

Mark,

From your comments about your use case, you may want to take a look at: http://odoo-connector.com/

Avatar
Discard