To create a button and on button click validate the fields
User Event Script
function beforeLoad(context) {
if (context.type === context.UserEventType.VIEW) {
let form = context.form;
let customerRecord = context.newRecord;
let isProjectCreated = customerRecord.getValue({ fieldId: 'custentity_jj_jira_project_crtd_ns' });
let jiraProjectName = customerRecord.getValue({ fieldId: 'custentity_jj_jira_project_name' });
let jiraProjectId = customerRecord.getValue({ fieldId: 'custentity_jj_jira_project_id' });
if (!isProjectCreated) {
form.addButton({
id: 'custpage_create_jira_project',
label: 'Create Jira Project',
functionName: `handleJiraProjectCreation("${jiraProjectName}","${jiraProjectId}")`
});
form.clientScriptModulePath = './jj_cs_project_create_button 22.js'; // Attach Client Script
}
}
}
Client Script
function handleJiraProjectCreation(jiraProjectName, jiraProjectId) {
let rec = currentRecord.get();
let customerId = rec.id;
if (!customerId) {
dialog.alert({ title: 'Error', message: 'Unable to fetch Customer ID.' });
return;
}
if (!jiraProjectName || !jiraProjectId) {
dialog.alert({ title: 'Missing Values', message: 'Jira Project Name and Jira Project ID are required.' });
return;
}
dialog.confirm({
title: 'Confirm Action',
message: 'Are you sure you want to create a Jira project?'
}).then((result) => {
if (result) {
callSuitelet(customerId);
}
});
}