Passa al contenuto
Menu
È necessario essere registrati per interagire con la community.
La domanda è stata contrassegnata
1 Rispondi
5743 Visualizzazioni

Hi everybody,

I work in different environment where I connect to OpenERP v7 through the XML-RPC protocol, but I have one probleme, In my environment I can't pass a domain for example :

EXECUTE dbname="demo" user=1 pwd="admin" model="res.partner" method="search" args=[(1,'=',1)]

the types here are String (for dbname, pwd, model, method) and Integer (for user) but for args my environment doesn't accept object or array of object or list so I have to pass the string such as

EXECUTE dbname="demo" user=1 pwd="admin" model="res.partner" method="search" args="[(1,'=',1)]"

I want now that I catch this String in the method execute and evaluate the string to domain, but where can I find the source of this method

Thanks in advance

Avatar
Abbandona
Risposta migliore

The same XMLRPC problem is addressed here for the connection with Talend "Big Data".

You have to overwrite the search (and also write, read, ..) function of the partner somehow like this:

    def search(self, cr, uid, args, offset=0, limit=None, order=None, context=None, count=False):
        if isinstance(args, str):
            args = eval(args)

        return super(res_partner, self).search(cr, uid, args, offset, limit, order, context=context, count=count)

If you want to have this for all objects, then you can also adapt osv.osv.

Avatar
Abbandona
Autore

Thanks for the reply, I hope that will work, I want to ask you if you know where the relation bewtween execute and search in this case, OpenERP catch first the execute paramaters, then It fetchs the method argument if equal to search it call search in the orm. I need this point if you know where is the source

The "method" is the python method of the related object ("model"). OpenERP directly calls the "method" and assumes that it has been defined in python.

Autore

Ok, Thank you

Post correlati Risposte Visualizzazioni Attività
3
lug 25
4063
0
mag 25
788
2
mar 24
2015
1
set 23
1535
0
gen 23
1652