logo

NJP

17. getBytes Function

Import · May 24, 2024 · article

Did you know getBytes function in attachment script has some size limits?

getBytes function is used in attachments scripts to get base64 data. This function has a payload limit of 4MB which means attachments larger than 4MB cannot be transferred. Below scripts can be used as an alternative.

Script where getBytes function is used:

var sa = new GlideSysAttachment();

var binData = sa.getBytes(attachmentRecordObject);

var base64 = GlideStringUtil().base64Encode(binData); // Limit of 4MB

Alternative — Calling script from non-global scope:

var sa = new GlideSysAttachment();

sa.getContent(attachmentRecordObject);

var base64 = sa.getContentBase64(attachmentRecordObject);

Alternative — Calling script from global scope:

var gsa = GlideSysAttachmentInputStream(AttachmentRecordObject.sys_id.toString());

var baos = new Packages.java.io.ByteArrayOutputStream();

gsa.writeTo(baos);

baos.close();

var base64 = GlideStringUtil.base64Encode(baos.toByteArray());

View original source

https://medium.com/@LearnITbyPrashant/17-getbytes-function-73579e5bd487?source=rss-d005fc598f0a------2