Skip to Content
Odoo मेन्यू
  • Sign in
  • मुफ़्त में आज़माएं
  • ऐप्लिकेशन
    फ़ाइनेंस
    • अकाउंटिंग
    • इनवॉइसिंग
    • एक्सपेंस
    • स्प्रेडशीट (बीआई)
    • डॉक्यूमेंट्स
    • साइन
    सेल्स
    • सीआरएम
    • सेल्स
    • पीओएस शॉप
    • पीओएस रेस्टोरेंट
    • सब्सक्रिप्शन
    • रेंटल
    वेबसाइट
    • वेबसाइट बिल्डर
    • ई-कॉमर्स
    • ब्लॉग
    • फ़ोरम
    • लाइव चैट
    • ई-लर्निंग
    सप्लाई चेन
    • इन्वेंट्री
    • मैन्युफ़ैक्चरिंग
    • पीएलएम
    • परचेज़
    • मेंटेनेंस
    • क्वालिटी
    मानव संसाधन
    • कर्मचारी
    • रिक्रूटमेंट
    • टाइम ऑफ़
    • अप्रेज़ल
    • रेफ़रल
    • फ़्लीट
    मार्केटिंग
    • सोशल मार्केटिंग
    • ईमेल मार्केटिंग
    • एसएमएस मार्केटिंग
    • इवेंट
    • मार्केटिंग ऑटोमेशन
    • सर्वे
    सेवाएं
    • प्रोजेक्ट
    • टाइमशीट
    • फ़ील्ड सर्विस
    • हेल्पडेस्क
    • प्लानिंग
    • अपॉइंटमेंट
    प्रॉडक्टिविटी
    • डिस्कस
    • अप्रूवल
    • आईओटी
    • वीओआईपी
    • नॉलेज
    • WhatsApp
    तीसरे पक्ष के ऐप्लिकेशन Odoo स्टूडियो Odoo क्लाउड प्लेटफ़ॉर्म
  • इंडस्ट्री
    रीटेल
    • बुक स्टोर
    • क्लोदिंग स्टोर
    • फ़र्नीचर स्टोर
    • ग्रॉसरी स्टोर
    • हार्डवेयर स्टोर
    • टॉय स्टोर
    Food & Hospitality
    • बार और पब
    • रेस्टोरेंट
    • फ़ास्ट फ़ूड
    • Guest House
    • बेवरिज डिस्ट्रीब्यूटर
    • होटल
    रियल एस्टेट
    • Real Estate Agency
    • आर्किटेक्चर फ़र्म
    • कंसट्रक्शन
    • एस्टेट मैनेजमेंट
    • गार्ड्निंग
    • प्रॉपर्टी ओनर असोसिएशन
    कंसल्टिंग
    • अकाउंटिंग फ़र्म
    • Odoo पार्टनर
    • मार्केटिंग एजेंसी
    • लॉ फ़र्म
    • टैलेंट ऐक्विज़िशन
    • ऑडिट & सर्टिफ़िकेशन
    मैन्युफ़ैक्चरिंग
    • टेक्सटाइल
    • Metal
    • फ़र्नीचर
    • फ़ूड
    • Brewery
    • कॉर्पोरेट गिफ़्ट
    हेल्थ & फिटनेस
    • स्पोर्ट्स क्लब
    • आईवियर स्टोर
    • फिटनेस सेंटर
    • वेलनेस प्रैक्टिशनर
    • फॉर्मेसी
    • हेयर सैलून
    Trades
    • Handyman
    • आईटी हॉर्डवेयर और सपोर्ट
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    अन्य
    • Nonprofit Organization
    • एन्वायरमेंटल एजेंसी
    • बिलबोर्ड रेंटल
    • फ़ोटोग्राफी
    • बाइक लीजिंग
    • सॉफ़्टवेयर रीसेलर
    Browse all Industries
  • कम्यूनिटी
    सीखें
    • ट्यूटोरियल्स
    • दस्तावेज़
    • सर्टिफ़िकेशन
    • ट्रेनिंग
    • ब्लॉग
    • पॉडकास्ट
    शिक्षा को बढ़ावा दें
    • एजुकेशन प्रोग्राम
    • स्केल अप! बिजनेस गेम
    • Odoo के ऑफ़िस में आएं
    सॉफ़्टवेयर पाएं
    • डाउनलोड
    • वर्शन की तुलना करें
    • रिलीज़
    साथ मिलकर काम करें
    • Github
    • फ़ोरम
    • इवेंट
    • अनुवाद
    • पार्टनर बनें
    • Services for Partners
    • अपना अकाउंटिंग फ़र्म रजिस्टर करें
    सेवाएं पाएं
    • पार्टनर ढूंढें
    • अकाउंटेंट खोजें
    • सलाहकार की मदद लें
    • इम्प्लिमेंटेशन सेवाएं
    • कस्टमर रेफ़रेंस
    • सहायता
    • अपग्रेड
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    डेमो देखें
  • कीमत
  • सहायता

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • सीआरएम
  • e-Commerce
  • लेखांकन
  • इन्वेंटरी
  • PoS
  • प्रोजेक्ट
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
टैग (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
टैग (View all)
odoo accounting v14 pos v15
About this forum
Help

Retrieve many2one field value using xmlrpc java

Subscribe

Get notified when there's activity on this post

This question has been flagged
many2onexmlrpcjava
2 Replies
11739 Views
Avatar
Ravi Kowlessur

Hello all,

i dnt know if this is a stupid question but i've been stuck on this problem for 4 days now.

I am trying to retrieve "date_from" and "employee_id" from "hr_holidays" table i am able to get the value of "date_to" but when it comes to "employee_id" i am having something like employee_id=[Ljava.lang.Object;@3681fe9a.

"employee_id" happens to be of type many2one referencing "id" in "hr_employee"table

This is my code :

private void getEmployeeDetails(String dbName) {

    try {

        XmlRpcClient client = new XmlRpcClient();
        XmlRpcClientConfigImpl loginConfig = new XmlRpcClientConfigImpl();
        loginConfig.setEnabledForExtensions(true);
        loginConfig.setServerURL(new URL("http",erp.getHost(),erp.getPort(),"/xmlrpc/common"));
        client.setConfig(loginConfig);

        Object [] loginParam = new Object []{dbName,admin.getName(),admin.getPassword()};
        Object adminUID = client.execute("login",loginParam);

        if (adminUID instanceof Integer){
               admin.setUID(Integer.valueOf(adminUID.toString()));
        }else{
            System.out.println("error");
        }

        //configure search 
        XmlRpcClientConfigImpl xmlRpcSearchConfig = new XmlRpcClientConfigImpl();
        xmlRpcSearchConfig.setEnabledForExtensions(true);
        xmlRpcSearchConfig.setServerURL(new URL("http",erp.getHost(),erp.getPort(),"/xmlrpc/object"));
        client.setConfig(xmlRpcSearchConfig);

        //search state = validate
        Object[] stateCon = {"state","=","validate"};

        ArrayList<Object> condiState = new ArrayList<Object>();
        condiState.add(stateCon);

        Object [] valId = search(client,dbName,admin.getUID(),admin.getPassword(),"hr.holidays",condiState);
        print("Validate State ids---->"+Arrays.toString(valId));
        print("--------------------------------------------------------------------------------------------");

        //read for employee ids who have state = validate
        ArrayList<Object>holiFields = new ArrayList();
        holiFields.add("employee_id");
        holiFields.add("date_to");

        ArrayList<Object>valIdLst=new ArrayList();
        valIdLst.addAll(Arrays.asList   (valId));

        Object [] empId = read(client,dbName,admin.getUID(),admin.getPassword(),"hr.holidays",valIdLst,holiFields);

        for(int i=0;i<empId.length;i++){
            print(empId[i]);
        }//for loop

    }catch ( XmlRpcException | MalformedURLException ex) {
        Logger.getLogger(AutoMessageThread.class.getName()).log(Level.SEVERE, null, ex);
    }catch(ClassCastException e){
        e.printStackTrace();
        JOptionPane.showMessageDialog(null,"Password not valid","Error- password invalid",JOptionPane.ERROR_MESSAGE);
        System.exit(1);
    }

this is my read method

private Object [] read(XmlRpcClient xmlRpcLogin,String dbName,int uid,String password,String table,ArrayList<Object>ids,ArrayList<Object>fields) throws XmlRpcException{
    Vector<Object> readFunct = new Vector<Object>();
    readFunct.add(dbName); //Database name
    readFunct.add(uid);//uid of login user
    readFunct.add(password);//password of login user
    readFunct.add(table);//relation i.e. table to search
    readFunct.add("read");
    readFunct.add(ids);
    readFunct.add(fields);
    Object [] ob = (Object [])xmlRpcLogin.execute("execute",readFunct);
    return ob;
}//read method

When i run the codes i get result like this ;

{id=12, date_to=2013-02-08 17:00:00, employee_id=[Ljava.lang.Object;@404a6ddc} {id=3, date_to=2013-02-22 00:00:00, employee_id=[Ljava.lang.Object;@5672a77d}

Can anyone help me get the values of "employee_id" plz?

any hint towards the right track will be much appreciated.

regards

0
Avatar
Discard
Avatar
Marco Dieckhoff
Best Answer

Related many2one objects return an Array of Objects: Integer id, String _rec_name value

I solved this by iterating over the entries, and doing a try-catch block for ClassCastException on (Object[])value.

You could compare convertRelated() in OpenERPRecord.java of my code.launchpad.net /~dieck /openobject-server /java-openerp-xmlrpc-libraries (insufficient karma for links)

3
Avatar
Discard
Ravi Kowlessur
Author

Hi Marco , thx loads for your help, it was really very helpful. :)

The Reno

'Sup Marco! Great job with those classes man! Diggin' through them I found a comment in search() method of OpenERP.java that says something about "no" requests and I'm wondering what do you mean by a "no request". I hope not be too much trouble. Greetings!

Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Sign up
Related Posts Replies Views Activity
How do I put XMLRPC parameters to list record Solved
xmlrpc java
Avatar
Avatar
2
अग॰ 17
15037
How to access ODOO 8 using Java xmlrpc? Solved
xmlrpc java
Avatar
2
अप्रैल 15
16781
Email Invoices and Quotations using Java and XMLRPC
xmlrpc java odoo
Avatar
Avatar
1
जुल॰ 25
2313
Cannot update Many2one field that is linked to a One2many field via XML-RPC or else "another model requires the record being deleted" error yields. Solved
many2one one2many xmlrpc
Avatar
1
जुल॰ 23
4664
Java xmlrpc not working
external api xmlrpc java
Avatar
Avatar
1
दिस॰ 22
3624
कम्यूनिटी
  • ट्यूटोरियल्स
  • दस्तावेज़
  • फ़ोरम
ओपन सोर्स
  • डाउनलोड
  • Github
  • रनबॉट
  • अनुवाद
सेवाएं
  • Odoo.sh Hosting
  • सहायता
  • अपग्रेड
  • कस्टम डेवलपमेंट्स
  • शिक्षा
  • अकाउंटेंट खोजें
  • पार्टनर ढूंढें
  • पार्टनर बनें
हमारे बारे में
  • हमारी कंपनी
  • ब्रांड ऐसेट
  • संपर्क करें
  • नौकरियां
  • इवेंट
  • पॉडकास्ट
  • ब्लॉग
  • ग्राहक
  • लीगल • गोपनीयता
  • सुरक्षा
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo, बिज़नेस से जुड़े ऐप्लिकेशन का एक कलेक्शन है जो ओपन सोर्स पर आधारित है. इसमें आपकी कंपनी की हर ज़रूरत के लिए ऐप्लिकेशन हैं. जैसे, सीआरएम, ई-कॉमर्स, अकाउंटिंग, इन्वेंट्री, पॉइंट ऑफ़ सेल, प्रोजेक्ट मैनेजमेंट वगैरह.

Odoo की सबसे बड़ी खासियत है कि यह इस्तेमाल करने में बहुत आसान है और यह पूरी तरह से इंटिग्रेट किया हुआ है.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now