как получить значения для пользовательских полей пользовательской записи в Netsuite

1

Я новичок в интеграции с 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()); 
}
Теги:
netsuite
suitetalk

2 ответа

0

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());
0

Это С# или Java - не мой сильный ponit. Однако после загрузки записи вы должны сделать что-то вроде этого:

record.fieldname

  • 0
    Это Java ... но нет метода с именем fieldname.
  • 0
    Нет. Введите имя поля с именем поля, которое вы пытаетесь получить. Пример: record.internalid

Ещё вопросы

Сообщество Overcoder
Наверх
Меню