Example of 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”.
Code Block | ||
---|---|---|
| ||
def products= api.find("P", 0, 1020, 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("ContextLinkingProductsExperimentsBackEndActionLogic") .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.