Как получить изображение профиля зарегистрированного пользователя в suitescript 2.0 в Netsuite? - PullRequest
0 голосов
/ 12 марта 2020

Я могу получить данные зарегистрированного пользователя с помощью ниже suitescript 2.0

    runtime.getCurrentUser();

Ответ

{
    "id": 12345,
    "name": "ABC",
    "email": "abc@gmail.com",
    "location": 0,
    "department": 0,
    "role": 3,
    "roleId": "administrator",
    "roleCenter": "BASIC",
    "subsidiary": 1,
    "timezone": "Asia/Calcutta"
} 

Нет свойства для получения изображения из ответа getCurrentUser () . Есть ли другой способ получить изображение профиля зарегистрированного пользователя в Suitescript 2.0?

1 Ответ

2 голосов
/ 12 марта 2020

Вам потребуется получить идентификатор изображения из записи сотрудника (пользователя), используя модуль записи или поиска, передавая идентификатор пользователя:

var userId = runtime.getCurrentUser().id;
var userRecord = record.load({  //make sure 'N/record' is defined as record
    type: record.Type.EMPLOYEE,
    id: userId
});
var imageId = userRecord.getValue('image');

Или:

var userId = runtime.getCurrentUser().id;
var imageId = search.lookupFields({
    type: search.Type.EMPLOYEE,
    id: userId,
    columns: 'image'
}).image[0].value;

Для серверных сценариев вы можете использовать модуль N/file для загрузки файла изображения, передавая imageId. Если вам нужно получить изображение на стороне клиента, вы можете получить текст поля вместо значения:

var userId = runtime.getCurrentUser().id;
var imageId = search.lookupFields({
    type: search.Type.EMPLOYEE,
    id: userId,
    columns: 'image'
}).image[0].text;

, которое будет возвращать относительный путь к изображению в файле cab inet .

...