Creation of Quote with Selected Products
This example shows how to create a portlet which shows a list of products where the user can select several of them, and ask for a new quote to be created with those products.
Dashboard portlet logic which renders the list of products and the action “New Quote”.
def products= api.find("P", 0, 20, null, ["sku", "label", "currency"])
def quoteTypes = api.find("QTT", 0, 10, "uniqueName")
def resultMatrix = api.newMatrix().withColumnFormats([
"sku" : FieldFormatType.TEXT,
"label":FieldFormatType.TEXT,
"currency": FieldFormatType.TEXT
]).withRows(products);
def options = [:]
quoteTypes.each { it -> options[(it.uniqueName)] = it.label ?: it.uniqueName }
resultMatrix.rowSelectionBackEndAction("productsDataSet")
.withLogicName("BackEndActionLogic")
.withColumns("sku")
.withButtonLabel("New Quote")
.withOptions("QuoteType", options)
return resultMatrix;
See also an example of the BackEndActionLogic, which shows you how to receive the parameter with selection of items from a matrix and how to construct the context link action.
Found an issue in documentation? Write to us.