Meine Firma führt mehrere verschiedene Arten von Projekten aus und möchte den Projektdatensatz abhängig vom Typ des Projekts, das im ausgewählten Projektdatensatz ausgeführt wird, unterschiedlich anzeigen.Suitescript 2.0 Verschiedene Formulare für verschiedene Arten von Projekten verwenden
Ich habe das Feld, das das zu verwendende Formular mit dem Titel "benutzerdefiniertes Formular" (dies ist ein Auswahlfeld) und ein Feld, dass unsere Mitarbeiter den Typ des Projekts "custentityjt_fie_pro_projecttype" (auch ein Auswahlfeld) auswählen.
ich erstellt habe folgende vor der Benutzerereignisskript laden, um zu versuchen, dies zu erreichen:
/**
* @NApiVersion 2.x
* @NScriptType UserEventScript
* @NModuleScope SameAccount
*/
define(["N/record"], function(r) {
function beforeLoad(context) {
var currentRecord = context.newRecord;
var projectType = currentRecord.getValue({
fieldId: "custentityjt_fie_pro_projecttype",
});
currentRecord.setValue({
fieldID: 'customform',
value: projectType
})
}
return {
beforeLoad: beforeLoad,
}
})
Wenn das Projekt Datensatz im Bearbeitungsmodus geladen, die benutzerdefinierten Formular Auswahl nicht ändert, und wenn das Projekt Datensatz zu laden im Ansichtsmodus, erhalte ich folgende:
{"type":"error.SuiteScriptError","name":"UNEXPECTED_ERROR","message":null,"stack":["anonymous(N/recordService)","beforeLoad(/SuiteScripts/setForm.js:13)"],"cause":{"type":"internal error","code":"UNEXPECTED_ERROR","details":null,"userEvent":"beforeload","stackTrace":["anonymous(N/recordService)","beforeLoad(/SuiteScripts/setForm.js:13)"],"notifyOff":false},"id":"","notifyOff":false}
ich bin sehr neu für NetSuite und Programmierung im allgemeinen so bitte sanft sein :)
Vielen Dank für Ihre Hilfe. Habe ich Recht, dass dies nur im Bearbeitungsmodus funktioniert? gibt es eine Möglichkeit, es zu arbeiten, wenn das Projekt im Ansichtsmodus anzeigen? – jtux
Ich sollte auch erwähnen, dass im benutzerdefinierten Modus die benutzerdefinierte Formularauswahl ändert sich zwar korrekt, aber das eigentliche Formular selbst ändert sich nicht. Es scheint, als ob Sie normalerweise müsste auf die Auswahl klicken, anstatt nur den Wert des Feldes zu ändern, damit die Änderung tatsächlich ausgeführt werden kann. Kann dies behoben werden, indem ein neuer Seitenwechsel nach Änderung hinzugefügt wird? – jtux
@jtux Sie sind richtig, dies funktioniert nur in Bearbeitungsmodus Ich glaube auch, dass es nur als Client-Skript und nicht auf eine vor dem Laden funktioniert Benutzerereignisskript –