FormData est un client side API géré sous XMHttpRequest
scripts UserEvent sont des scripts côté serveur avec aucune API à base de navigateur disponible à tous. Vous pouvez donc utiliser FormData dans un script client pour envoyer des informations à un Suitelet ou à un RESTlet, mais pas dans un script UserEvent.
Si vous voulez créer un formulaire dans un Suitelet utilisant SS2.0 vous pouvez utiliser les éléments suivants comme échantillon:
/**
*@NApiVersion 2.x
*@NScriptType Suitelet
*/
define(["N/log", "N/redirect", "N/runtime", "N/ui/serverWidget", "N/url", "./kotnRECBCFilters"],
function (log, redirect, runtime, ui, url, kotnRECBCFilters_1) {
function showPropertiesForm(context) {
var form = ui.createForm({
title: 'Property Trust Ledger'
});
var req = context.request;
var fromLoc = form.addField({
id: 'custpage_loc',
type: ui.FieldType.SELECT,
label: 'For Property',
source: 'location'
});
fromLoc.updateLayoutType({ layoutType: ui.FieldLayoutType.NORMAL });
fromLoc.updateBreakType({ breakType: ui.FieldBreakType.STARTCOL });
if (req.parameters.custpage_loc) {
fromLoc.defaultValue = req.parameters.custpage_loc;
}
var notAfterDate = form.addField({
id: 'custpage_not_after',
type: ui.FieldType.DATE,
label: 'On or Before'
});
if (req.parameters.custpage_not_after) {
notAfterDate.defaultValue = req.parameters.custpage_not_after;
}
form.addSubmitButton({
label: 'Get Detail'
});
//... bunch of stuff removed
context.response.writePage(form);
}
function onRequest(context) {
if (context.request.method === 'POST') {
var currentScript = runtime.getCurrentScript();
var params = {};
for (var k in context.request.parameters) {
if (k.indexOf('custpage_') == 0 && k.indexOf('custpage_transactions') == -1) {
if ((/^custpage_.*_display$/).test(k))
continue;
params[k] = context.request.parameters[k];
}
}
redirect.toSuitelet({
scriptId: currentScript.id,
deploymentId: currentScript.deploymentId,
parameters: params
});
return;
}
showPropertiesForm(context);
}
exports.onRequest = onRequest;
});
Est-ce que le message d'erreur exact? Je demande parce que vous montrez que vous avez utilisé "formData" et l'erreur montre "FormData". Ce ne sont pas la même variable. Peut-être que vous avez accidentellement capitalisé un "F" ailleurs dans le code? – W3BGUY
Fondamentalement je travaille sur le script userevent lorsque le bouton de clic il ne traite pas les données et montre l'erreur sur la page Web Erreur exacte est donnée ci-dessous org.mozilla.javascript.EcmaError: ReferenceError: "FormData" n'est pas défini. – Talal
Avez-vous cherché votre code pour "FormData" au lieu de "formData"? – W3BGUY