Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This server class provides methods that allow operating with attachments.

SimpleAttachment()


Instantiates a new empty SimpleAttachment object.


Code Block
languagejs
themeEclipse
titleSimpleAttachment
linenumberstrue
const attach = new SimpleAttachment();


base64Decode(data)


This method returns an ASCII string decoded from the base64 string specified.

NameTypeMandatoryDefault Value
dataStringYN


Return:

TypeDescription
StringThe decoded string.

Example:

Code Block
languagejs
themeEclipse
titlebase64Decode
linenumberstrue
const attach = new SimpleAttachment();
const result =
  attach.base64Decode('TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ=');
ss.info(result);


base64Encode(data)


This method returns a Base64 string from the string specified.

NameTypeMandatoryDefault Value
dataStringYN


Return:

TypeDescription
StringThe encoded Base64 string.

Example:

Code Block
languagejs
themeEclipse
titlebase64Encode
linenumberstrue
const attach = new SimpleAttachment();
const result =
  attach.base64Encode('Lorem ipsum dolor sit amet');
ss.info(result);

copy(sourceTableName, sourceID, targetTableName, targetID)


This method copies attachments from the source record to the target record.

Parameter(s):

NameTypeMandatoryDefault Value
sourceTableNameStringYN
sourceIDStringYN
targetTableNameStringYN
targetIDStringYN


Return:

TypeDescription
BooleanThis method returns TRUE if attachments copied successfully; otherwise, it returns FALSE.


Example:

Code Block
languagejs
themeEclipse
titlecopy
linenumberstrue
const attach = new SimpleAttachment();
attach.copy('sys_email', '155964310500000059', 'task', current.sys_id);

deleteAttachment(attachmentID)


This method deletes the specified attachment.


Parameter(s):

NameTypeMandatoryDefault Value
attachmentIDStringYN


Return:

TypeDescription
VoidThis method does not return a value.


Example:

Code Block
languagejs
themeEclipse
titledeleteAttachment
const attach = new SimpleAttachment();
attach.deleteAttachment('157052637119478714');

getAttachmentUrlById(attachmentId)


This method allows to get the URL of the specified attachment at the cloud storage.


NameTypeMandatoryDefault Value
attachmentIdstringYN


Return:

TypeDescription
StringThis method returns the attachment URL in the cloud storage.

Example:

Code Block
languagejs
themeEclipse
titlegetAttachmentUrlById
linenumberstrue
const attachIDATTACH_ID = current.sys_id; // sys_attachment sys_id
const attachmentRecord = new SimpleRecord('sys_attachment');
attachmentRecord.get(attachID);
attachmentRecord.is_public = '1'; // OR true
attachmentRecord.update();
const attachsimpleAttach = new SimpleAttachment();
const publicUrlattachUrl = attachsimpleAttach.getAttachmentUrlById(attachIDATTACH_ID);
printss.info(publicUrl);attachUrl);
//Info: https://your-instance-url:9000/public-attachment/1/34/r8ox12345...

getContent(sysAttachment)


This method gets attachment content as a string.

NameTypeMandatoryDefault Value
sysAttachmentSimpleRecordYN


Return:

TypeDescription
StringThe attachment content as a string.


Example)

Code Block
languagejs
themeEclipse
titlegetContent
linenumberstrue
const attach = new SimpleAttachment();
const content = attach.getContent('157052637119478714');


readBase64(attachmentId)


This method allows to get a encoded string from the specified attachment.

Note

The attachment size is limited up to 10 Mb; otherwise, the method throws an exception.


Parameter(s):

NameTypeMandatoryDefault value
attachmentIdStringYN


Return:

TypeDescription
StringThe base64-encoded string.


Code Block
languagejs
themeEclipse
titlereadBase64
linenumberstrue
const read = new SimpleAttachment();
ss.info(read.readBase64('159050716911764097'));

rename(attachmentId, fileName)


This method renames the specified attachment.


Parameter(s):

NameTypeMandatoryDefault Value
attachmentIdStringYN
fileNameStringYN


Return:

TypeDescription
VoidThis method does not return a value.


Example:

Code Block
languagejs
themeEclipse
titlerename
linenumberstrue
const attach DOC_ID = ss.getDocIdByIds(current.sys_db_table_id, current.sys_id);
const simpleAttach = new SimpleAttachment();
const attachmentRecordattachRecord = new SimpleRecord('sys_attachment');
attachmentRecordattachRecord.addQuery('record_document_id', ss.getDocIdByIds(current.sys_db_table_id, current.sys_id)DOC_ID);
attachmentRecordattachRecord.addQuery('mime_content_type', 'application/json');
attachmentRecordattachRecord.selectAttributes('sys_id');
attachmentRecordattachRecord.query();
attachmentRecordattachRecord.next();
attachsimpleAttach.rename(attachmentRecordattachRecord.sys_id, `${current.number}: updated- at ${new SimpleDateTime().getValue()current.subject}.json`);

write(documentId, fileName, content, contentType)


This method inserts the attachment to the record specified.

NameTypeMandatoryDefault Value
documentIdStringYN
filenameStringYN
contentStringYN
contentTypeStringYN


Return

TypeDescription
StringThe attachment's sys ID; in case of error; returns NULL.

Example:

Code Block
languagejs
themeEclipse
titlewrite
linenumberstrue
const attachsimpleAttach = new SimpleAttachment();
const attachID =
   attach 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)


This method inserts the attachment to the record specified using Base64 encoding.

NameTypeMandatoryDefault Value
documentIDStringYN
fileNameStringYN
base64StringYN
contentTypeStringYN


Return

TypeDescription
String or NULLThe attachment's sys ID; in case of error; returns NULL.

Example:

Code Block
languagejs
themeEclipse
titlewriteBase64
linenumberstrue
const attachCURRENT_USER_DOC_ID = new SimpleAttachment()ss.getDocIdByIds(ss.getUser().sys_db_table_id, ss.getUserID());
const base64simpleAttach = request.execute().getBodynew SimpleAttachment();
const base64Value = 'R0lGODlhAQABAIAAAP// base64 string/wAAACwAAAAAAQABAAACAkQBADs=';
const attachId =
  attachsimpleAttach.writeBase64(
    ss.getDocIdByIds('157045360815629732', '155964310500006867')CURRENT_USER_DOC_ID,
    'watch.xlsx	'file_example.gif',
     base64 base64Value,
    'application/vnd.openxmlformats-officedocument.spreadsheetml.sheetimage/gif'
  );
ss.info(attachId);
//Info: 162245472311776172


Table of Contents
absoluteUrltrue
classfixedPosition