This server class provides methods that allow operating the attachmentsДанный серверный класс содержит методы, позволяющие пользователям взаимодействовать с вложениями.
SimpleAttachment()
Instantiates a new empty SimpleAttachment objectИспользуйте этот конструктор класса для создания пустого объекта SimpleAttachment.
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | SimpleAttachment |
---|
linenumbers | true |
---|
|
const attach = new SimpleAttachment(); |
base64Decode(data, strict)
This method returns an ASCII string decoded from the base64 string specified.
Parameter(s):
Используйте этот метод, чтобы вернуть строку ASCII, декодированную из указанной строки base64.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|
Name | Type | Mandatory | Default ValueY | N | Return:
Type | Description |
---|
String | A decoded string. |
| Да | Нет |
strict | Boolean | Нет | true |
Если входные данные содержат символы, не входящие в алфавит base64, а параметр strict задан как true, то метод base64_decode() вернёт false. Если параметр strict задан как false, символы, не входящие в алфавит base64, будут пропущены.
Возвращаемое значение:
Тип | Описание |
---|
String | Метод возвращает декодированную строку. |
ПримерExample:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | base64Decode() |
---|
linenumbers | true |
---|
|
const attach = new SimpleAttachment();
const result =
attach.base64Decode('TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ=');
ss.info(result);
// Информация: Lorem ipsum dolor sit amet |
base64Encode(data)
This method returns a Base64 string from the string specified.
Parameter(s):
Используйте метод, чтобы преобразовать указанную строку в base64.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|
Name | Type | Mandatory | Default ValueYNReturnВозвращаемое значение:
TypeDescriptionAn encoded Base64 stringМетод возвращает закодированную строку base64. |
ExampleПример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | base64Encode() |
---|
linenumbers | true |
---|
|
const attach = new SimpleAttachment();
const result =
attach.base64Encode('Lorem ipsum dolor sit amet');
ss.info(result);
// Информация: TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ= |
copy(sourceTableName, sourceID, targetTableName, targetID)
This method copies attachments from the source record to the target record.
Parameter(s):
Используйте этот метод, чтобы скопировать вложения из исходной записи в целевую.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|
Name | Type | Mandatory | Default ValueYNYNYNYNReturnВозвращаемое значение:
TypeDescriptionThis method returns 'true' if attachments have been copied successfully; otherwise, it returns 'false'. | Метод возвращает true,если вложения были успешно скопированы. В случае ошибки метод возвращает false. |
ПримерExample:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | copy() |
---|
linenumbers | true |
---|
|
const attach = new SimpleAttachment();
attach.copy('sys_email', '155964310500000059', 'task', current.sys_id); |
deleteAttachment(
attachmentIDattachmentId)
This method deletes the specified attachment.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
attachmentID | String | Y | N |
Return:
Type | Description |
---|
Void | This method does not return a value. |
Используйте этот метод, чтобы удалить указанное вложение.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|
attachmentId | String | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|
Void | Метод не возвращает значение. |
ПримерExample:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | deleteAttachment() |
---|
|
const attach = new SimpleAttachment();
attach.deleteAttachment('157052637119478714'); |
getAttachmentUrlById(attachmentId)
This method allows getting the URL of the specified attachment at the cloud storage.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
attachmentId | string | Y | N |
Return:
Type | Description |
---|
String | This method returns the attachment URL in the cloud storage. |
Используйте этот метод, чтобы получить URL указанного вложения в облачном хранилище.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|
attachmentId | String | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|
String | Метод возвращает URL-адрес вложения в облачном хранилище. |
ПримерExample:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getAttachmentUrlById |
---|
linenumbers | true |
---|
|
const currentATTACH_ID = new SimpleRecord('sys_attachment');
current.get('163553718313772587');
const ATTACH_ID = current.sys_id;
const simpleAttach = new SimpleAttachment();
const attachUrl = simpleAttach.getAttachmentUrlById(ATTACH_ID);
ss.info(attachUrl);
//Info Информация: https://s3-{your-instance-url}/public-attachment/5/32/9bnc2pcb3axyfatgtc6lsi7... |
getContent(
sysAttachment)This method gets the attached content as a string.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
sysAttachment | SimpleRecord | Y | N |
Return:
Type | Description |
---|
String | The attachment content as a string. |
attachmentId)
Используйте данный метод, чтобы получить содержимое в поле вложения Контент. Поле Контент автоматически заполняется текстовым содержимым прикрепленного файла .txt.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|
attachmentId | String | Да | Нет |
Возвращаемое значение:
Тип | Описание |
---|
String/Object | Метод возвращает значение в поле вложения Контент. Если поле пустое или прикрепленный файл имеет другой формат, метод возвращает null. |
ПримерExample:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getContent |
---|
linenumbers | true |
---|
|
const attach = new SimpleAttachment();
const content = ss.info(attach.getContent('157052637119478714168109939701169218'));
// Info: task active additional_comments approval_state ... |
readBase64(attachmentId)
This method allows getting an encoded string from the specified attachment.
Используйте этот метод, чтобы получить закодированную строку из указанного вложения. Вместе с методом writeBase64() может использоваться для копирования вложений.
Note |
---|
Размер вложения не должен превышать 10 Мб. В случае превышения метод возвращает пустую строку, а в Журнале исключений (sys_log_exception)появляется запись |
Note |
---|
The attachment size is limited up to 10 Mb; otherwise, the method throws an exception: File size exceeded allowed limit . |
Parameter(s)Параметры:
NameНазвание | TypeТип | Mandatory | Обязательный | Значение по умолчаниюDefault value |
---|
attachmentId | String | YДа | NНет |
ReturnВозвращаемое значение:
TypeТип | DescriptionОписание |
---|
String | A base64-encoded string. | Метод возвращает закодированную строку base64. В случае, если файл слишком большой, возвращаемая строка может быть пустой. |
Пример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | readBase64() |
---|
linenumbers | true |
---|
|
const read = new SimpleAttachment();
ss.info(read.readBase64('159050716911764097168025458107121347'));
// Информация: 0YLQtdGB0YLQvtCy0YvQuSDQtNC+0LrRg9C80LXQvdGC |
rename(attachmentId, fileName)
This method renames the specified attachment.
Parameter(s):
Используйте данный метод, чтобы изменить название файла и его расширение.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|
Name | Type | Mandatory | Default ValueYNYNReturnВозвращаемое значение:
TypeDescriptionThis method does not return a valueМетод не возвращает значение. |
ExampleПример:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | rename() |
---|
linenumbers | true |
---|
|
const DOC_ID = ss.getDocIdByIds(current.sys_db_table_id, current.sys_id);
const simpleAttach = new SimpleAttachment();
const attachRecord = new SimpleRecord('sys_attachment');
attachRecord.addQuery('record_document_id', DOC_ID);
attachRecord.addQuery('mime_content_type', 'application/json');
attachRecord.selectAttributes(['sys_id']);
attachRecord.query();
attachRecord.next();
simpleAttach.rename(attachRecord.sys_id, `${current.number} - ${current.subject}.json`); |
write(documentId, fileName, content, contentType)
This method inserts an attachment to the record specified.
Parameter(s):
Используйте данный метод, чтобы создать и добавить вложение в указанную запись.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию | Name | Type | Mandatory | Default Value |
---|
documentId | String | YДа | NНет |
filename | String | YДа | NНет |
content | String | YДа | NНет |
contentType | String | YДа | NНет |
ReturnВозвращаемое значение:
TypeDescriptionThe sys_ID of the attachment; in case of an error, it returns NULL. | Метод возвращает ID вложения; в случае ошибки возвращает null. |
ПримерExample:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | write() |
---|
linenumbers | true |
---|
|
const simpleAttach = new SimpleAttachment();
const attachIDattachId =
simpleAttach.write(
ss.getDocIdByIds(current.sys_db_table_id, current.sys_id),
'readme.json',
JSON.stringify(current.getAttributes(), null, '\t'),
'application/json'
); |
writeBase64(documentId, fileName, base64,
contentType)mimeContentType)
Используйте данный метод для создания и добавления вложения к указанной записи, закодированного при помощи base64. Вы можете использовать этот метод вместе с readBase64() для копирования вложений.
Параметры:
Название | Тип | Обязательный | Значение по умолчанию |
---|
This method inserts the attachment to the record specified using the Base64 encoding.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
documentID | String | YДа | NНет |
fileName | String | YДа | NНет |
base64 | String | YДа | NНет |
contentTypemimeContentType | String | YДа | NНет |
ReturnВозвращаемое значение:
TypeDescription or NULLThe sys_ID of the attachment; in case of an error, it returns NULL. | | Метода возвращает ID вложения;в случае ошибки возвращает null. |
ПримерExample:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | writeBase64() |
---|
linenumbers | true |
---|
|
const CURRENT_USER_DOC_ID = ss.getDocIdByIds(ss.getUser().sys_db_table_id, ss.getUserID());
const simpleAttach = new SimpleAttachment();
const base64Value = 'R0lGODlhAQABAIAAAP///wAAACwAAAAAAQABAAACAkQBADs=';
const attachId = simpleAttach.writeBase64(
CURRENT_USER_DOC_ID,
'file_example.gif',
base64Value,
'image/gif'
);
ss.info(attachId);
//Info Информация: 162245472311776172 |