Question

Je reçois une erreur pour le code suivant. L'objet est Hr.attendance. Peut-être quelqu'un s'il vous plaît guider me guider?

public static void main(String[] args) throws MalformedURLException, XmlRpcException 
{
    // TODO code application logic here
    Session openERPSession;
    openERPSession = new Session("localhost", 8069, "Demo", "admin", "demo@2013");

try {
       // startSession logs into the server and keeps the userid of the logged in user
       openERPSession.startSession();
       ObjectAdapter partnerAd = openERPSession.getObjectAdapter("hr.attendance");
        ////// 
        ////// Example code snippet goes here
        //////

        Object[] ids = new Object[] {0,1,2,3,4,5};
        RowCollection partners = partnerAd.readObject(ids, new String[]{"action","action_desc", "day", "employee_id", "sheet_id"});

        for (Row row : partners){
             System.out.println("Row ID: " + row.getID()+"Action:" + row.get("action")+" day" + row.get("day")+" EmpName" + ((Object[])row.get("employee_id"))[1].toString()+" EmpId" + ((Object[])row.get("employee_id"))[0].toString()+"/ "+row.get("employee_id"));

        }

        Row newPartner = partnerAd.getNewRow(new String[]{"action", "day", "employee_id"});
        newPartner.put("action", "sign_out");
        newPartner.put("day", "2013-07-03");
        newPartner.put("employee_id", new Object[] {"2","Fabien Pinckaers"});
        partnerAd.createObject(newPartner);

        System.out.println("New Row ID: " + newPartner.getID());

   } catch (Exception e) {
   System.out.println("Error while reading data from server:\n\n" + e.getMessage());
  }

}

Message d'erreur (lorsque je débogé, alors une erreur est lancée lors de la ligne CreateObject. S'il vous plaît aider Erreur lors de la lecture de données du serveur: Pour la chaîne d'entrée: "[ljava.lang.Object; @ dd462c"

J'ai essayé de passer un employé_id dans les deux formats comme mentionné ci-dessous. 1. newparner.pan ("employé_id", 2); 2. newparner.pan ("employé_id", "2"); Mais tous les deux fois, j'ai fini par suivre une erreur suivante Erreur lors de la lecture de données du serveur: java.lang.string ne peut pas être jeté à Java.Lang.Integer La raison pour laquelle j'essayais de transmettre l'objet comme lors de la première publication était parce que lorsque j'ai lu les valeurs d'itération, je devais lancer comme (jetez un coup d'œil à mon code)

((Object[])row.get("employee_id"))[0].toString() &
((Object[])row.get("employee_id"))[1].toString()

Pour lire l'identifiant d'employé et le nom de l'employé hors de l'objet. En fait, je m'attendais à ce que seul employé soit présent. Ensuite, j'ai pensé que je devrais peut-être le jeter à l'objet pour insérer également. Mais a fini par échouer.

Cependant, lorsque j'ai essayé d'insérer sans objet Employee_id. Ça a marché. Lorsque je vérifie le type de champ d'employé_id, il était nombreux à un à l'établissement=> Structure de la base de données -> Modèles de "Hr.attendance" Comment insérer au cas où le champ est de nombreux 2 un?

Était-ce utile?
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top