Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: I removed the 'P-' so it does not lead anyone to use quote label or unique name, it should be always quote ID

...

Code Block
languagegroovy
titleExample
def controller = api.newController()
controller.addLink("Open Quote", controller.QC_DETAILS_PAGE, "P-2529.Q")
return controller

Note:

...

Paste code macro
languagegroovy
def fields = [
  [name: "% String value", type: FieldFormatType.TEXT],
  [name: "Integer value", type: FieldFormatType.INTEGER],
  [name: "Numeric value", type: FieldFormatType.NUMERIC],
  [name: "Date value", type: FieldFormatType.DATE],
  [name: "Date Time value", type: FieldFormatType.DATETIME],
  [name: "Link", type: FieldFormatType.LINK]
];


def m = api.newMatrix(fields.collect{it -> it.name});
def rows = [];

def d = new Date();
for (int i=0; i< 100; i++) {
  rows << ["somewhere "+i, i, 0.11*i, d-i, d+i,  m.linkCell('P-'+i, 'priceShopPage', 'P-'+i)];
}


fields.each {field ->
  m.setColumnFormat(field.name, field.type);
}

rows.each {row ->
  m.addRow((0..row.size()-1).collectEntries{index ->
    [fields[index].name, row[index]]
  });
}

def event_name = api.dashboardWideEvent('recalculateDashboard')

m.onRowSelection().triggerEvent(event_name)
                       .withColValueAsEventDataAttr('% String value', 'DA1')
                       .withColValueAsEventDataAttr('Numeric value', 'DA2')
					   .withColValueAsEventDataAttr('Integer value', 'DA3')

return m;

...