Как я могу отображать ошибки при вводе данных в эту форму пакета, чтобы я мог отображать такие сообщения, как одно из приведенных ниже, о дублирующих записях идентификаторов?Должно ли это быть сделано в клиентском скрипте, и нужно ли, чтобы в пакете была кнопка, связанная с клиентским скриптом, который выполняет создание записи, а затем перенаправляет в другой пакет, который отображает информацию о форме?Похоже, что должен быть более простой способ отображения ошибок на стороне клиента без необходимости перенаправления дважды.
Пример Suitelet:
define([ 'N/ui/serverWidget', 'N/record', 'N/cache'],
function( serverWidget, record, cache) {
function onRequest(context) {
var func = 'Suitelet';
var request = context.request;
if(request.method == 'GET'){
try{
var form = serverWidget.createForm({
title: 'Add sample data'
});
var idField = form.addField({
id: 'custpage_sample_id',
type: serverWidget.FieldType.TEXT,
label: 'ID'
});
idField.isMandatory = true;
form.addSubmitButton({
label: 'Submit'
});
context.response.writePage(form);
}
catch(e){
log.error(func, JSON.stringify(e));
}
}
else {
try{
var id = request.parameters.custpage_id;
log.debug(func, id);
if(Id){
var existing = getExistingId(Id);
if(!existing){
var custID = createIdRecord(id);
} else {
throw 'ID already exists '+ id;
}
}
var form = serverWidget.createForm({
title: 'Form Submitted'
});
var displayField = form.addField({
id: 'custpage_my_display',
type: serverWidget.FieldType.LONGTEXT,
label: 'Display Data'
});
displayField.defaultValue = "ID: " + id;
context.response.writePage(form);
}
catch(e){
log.error(func, JSON.stringify(e));
}
}
}
return {
onRequest: onRequest
};
});