Как отобразить баннер N / ui / message в форму со стороны сервера? - PullRequest
1 голос
/ 19 апреля 2019

У меня есть пакет, который отображает форму, созданную с помощью N / ui / serverWidget, и я хотел бы отобразить сообщение в верхней части формы.Однако во всей документации N / ui / message говорится, что это только для сценариев на стороне клиента.Есть ли способ отобразить такой баннер, не создавая отдельный клиентский скрипт просто для этого?

1 Ответ

3 голосов
/ 19 апреля 2019

Да, используйте функцию Form.addPageInitMessage(). Он позволяет вам передавать либо Сообщение, либо те же параметры, что и message.create(), и отображать его при загрузке формы.

Вот полный пример:

/**
 * Example of how to use Form.addPageInitMessage() to display a notice
 * on a server-rendered form.
 * @NApiVersion 2.x
 * @NScriptType Suitelet
 */
define(['N/ui/serverWidget', 'N/message'], function(ui, message) {
    function onRequest(context) {
        var form = ui.createForm({
            title: 'Example Form',
        });
        form.addSubmitButton({label: 'Submit'});
        form.addField({
            id: 'input',
            type: ui.FieldType.TEXT,
            label: 'Input',
        });
        form.addPageInitMessage({
            type: message.Type.INFORMATION,
            title: 'Message!',
            message: 'A wild message appears!',
        });
        context.response.writePage(form);
    }

    return {
        onRequest: onRequest,
    };
});
...