Я новичок в интеграции с Netsuite. Я создал пользовательскую запись и некоторые поля вместе со значениями в приложении Netsuite, теперь я хочу получить эти значения из запроса Webservice. Я получаю ярлыки, но я не могу получить значения.
CustomRecordType record = (CustomRecordType)response.getRecord();
CustomRecordTypeFieldList fields = record.getCustomFieldList();
CustomRecordCustomField[] crcf = fields.getCustomField();
for(CustomRecordCustomField c:crcf)
{
System.out.println(c.getLabel());
}
customRec.setTypeId( "626"); customRec.setInternalId( "202");
Ответ ReadResponse = _port.get(customRec);
CustomRecord record=(CustomRecord)response.getRecord();
CustomFieldList fields=record.getCustomFieldList();
CustomFieldRef[] crcf=fields.getCustomField();
int i=1;
Map<String,Object> test=new HashMap<String,Object>();
for(CustomFieldRef c:crcf)
{
System.out.println(c.getScriptId());
if(c instanceof StringCustomFieldRef)
{
test.put(p.getProperty(c.getScriptId()),((StringCustomFieldRef)c).getValue());
}else if(c instanceof DateCustomFieldRef)
{
test.put(p.getProperty(c.getScriptId()),((DateCustomFieldRef)c).getValue().getTime());
}
else if(c instanceof LongCustomFieldRef)
{
test.put(p.getProperty(c.getScriptId()),((LongCustomFieldRef)c).getValue());
}
//System.out.println(c.getLabel()+" fieldtypes: "+c.getFieldType().getValue());
i++;
}
for(Map.Entry<String,Object> entry:test.entrySet())
{
System.out.println(entry.getKey()+"--->"+entry.getValue());
Это С# или Java - не мой сильный ponit. Однако после загрузки записи вы должны сделать что-то вроде этого:
record.fieldname