SOAP API set_entry sugarcrm + android - PullRequest
1 голос
/ 03 января 2012

Я пытался добавить новый контакт, используя мыло. Я использовал метод set_entry, и контакт добавляется в базу данных, но все столбцы пусты. Может ли кто-нибудь исправить меня там, где я ошибся?

SoapObject request1 = new SoapObject(NAMESPACE,"set_entry");
SoapObject liste = new SoapObject(NAMESPACE, "name_value_list");

request1.addProperty("session", session);
request1.addProperty("module_name","Contacts");

liste.addProperty("first_name","test");
liste.addProperty("last_name","test");

request1.addProperty("name_value_list",liste);
SoapSerializationEnvelope envelope1 = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope1.setOutputSoapObject(request1);
androidHttpTransport = new HttpTransportSE(URL);
androidHttpTransport.call("SOAP_ACTION", envelope1);

SoapObject result1 = (SoapObject) envelope1.getResponse();

1 Ответ

0 голосов
/ 03 января 2012

Я думаю, у вас есть ошибка в name_value_list. В PHP это должно выглядеть примерно так:

$parameters = array( 
'session' => $session, 
'module' => 'Contacst', 
'name_value_list' => array( 
    array('name' => 'first_name', 'value' => 'test'), 
    array('name' => 'last_name', 'value' => 'test'), 
    ), 
); 

Для Android (не использовал интерфейс Android, так что угадайте ...):

SoapObject val1 = new SoapObject(NAMESPACE, "val1");
SoapObject val2 = new SoapObject(NAMESPACE, "val2");

val1.addProperty("name","first_name");
val1.addProperty("value","test");
val2.addProperty("name","last_name");
val2.addProperty("value","test");

liste.addProperty(val1);
liste.addProperty(val2);
...