2016-07-13 10 views
1

Was ich habe, ist ein Mehrfachauswahlfeld mit einer Liste von Artikeln, die unsere Kunden verwenden. Einige unserer Kunden verwenden unterschiedliche Hardware in derselben Kategorie. Ich habe ein Feld in der Customer-Seite, die ein Mehrfachauswahlfeld ist, und ich versuche, diese Informationen zu nehmen und in das Case-Formular mit der BeforeSubmit-Funktion einzufügen. Da ich ein Element ziehe, wenn ich das Feld für ein Element ziehe, gibt es die interne ID statt des Namens. Also habe ich auch auf die Artikelliste zurückgegriffen, um mir einen Item-Namen anstatt Item-ID zu geben.Suitescript Datensätze von Mehrfachauswahlfeld laden

Das Problem, das ich habe, ist, dass ich nicht herausfinden kann, wie man die interne ID am besten aufspaltet und die Aufzeichnungen lädt, um die Information zu ziehen. Im Moment sieht es ungefähr so ​​aus.

var company = nlapiGetFieldValue('company'); var custRecord = nlapiLoadRecord('customer', company); var CustomerTerminal = custRecord.getFieldValue('custentity89'); //ItemInternal Id
var termItemRecord = nlapiLoadRecord('inventoryitem',CustomerTerminal); var termItemName = termItemRecord.getFieldValue('itemid'); nlapiSetFieldValue('custevent129',termItemName);

Das gibt 5615 2063 3578.

Danach weiß ich nicht, wie es weitergehen, da es drei Produkte ist. Ich habe gerade angefangen zu programmieren, also würde jede Hilfe sehr geschätzt werden!

+0

vielleicht ist. Dann wiederhole es und tue etwas mit jedem Wert. Gibt es Werte, die dazu beitragen können, ein anderes Multi-select auf dem Fallformular zu füllen? – TonyH

+0

Ich habe ein Freiform-Textfeld im Fallformular erstellt, aber letztendlich muss ich jedes Element laden und die Entitäts-ID anstelle der internen ID ziehen. –

Antwort

1

Für Mehrfachauswahl Felder, werden Sie nlapiGetFieldValues (man beachte den Plural ) verwenden. Dies sollte Ihnen ein Array der ausgewählten IDs als Strings zurückgeben.

Wenn Sie weiterhin nlapiGetFieldValue (singular) verwenden, werden Sie feststellen, dass Sie auf \x05 anstelle des Leerzeichen trennen müssen. Versuchen Sie vielleicht, den Rückgabewert in ein Programm wie Notepad ++ zu kopieren und einzufügen und dann versteckte/Sonderzeichen anzuzeigen, um sicher zu gehen. Ich glaube, ich habe das schon mehrmals gesehen, obwohl es sich geändert haben könnte.

+0

Das hat perfekt funktioniert, danke !! –

0

Versuchen Sie, Feldwert in bestimmten Kunden zu erhalten? mit der `.split in ein Array aufgeteilt (“ „)` Operation zu bekommen einige Werte nlapiLookupField(type, id, fields, text);nlapiloadrec Gerät nehmen verwenden Probieren Sie

+0

Okay, ich gebe dir eine Chance, Danke! Auf der Kundenseite haben wir Felder erstellt, um unser Service-Equipment aus der Artikelliste zu ziehen. Jetzt müssen wir diese Informationen jedes Mal replizieren, wenn ein Fall erstellt wird. –

+0

Ich habe es herausgefunden, danke! –