Saleslogix Mobile Client – Multiselect Picklist Values
Posted By: Alex.Cottner on February 4th, 2014 in General
No Gravatar

Today I needed to make a picklist field multiselect in the Saleslogix mobile client. Unfortunately this appears to be broken in Mobile 3.0.3. To work around this I had to override two functions in the picklist field’s definition on the edit form. Hopefully this will save somebody else a little time.

The functions in question are formatValue and textRenderer.

{
    name: 'Type',
    property: 'Type',
    type: 'picklist',
    label: 'type',
    picklist: 'Contact Type',
    singleSelect: false,
    maxTextLength: 64,
    formatValue: function(values) {
        var a = [];
        for (key in values)
            a.push(values[key].data.text);
        return a.join(",");
    },
    textRenderer: function(values) {
        if (values.constructor.name == "String")
            return values;
        var a = [];
        for (key in values)
            a.push(values[key].data.text);
        return a.join(",");
    },
    validator: validator.exceedsMaxTextLength
}


3 Responses to “Saleslogix Mobile Client – Multiselect Picklist Values”

  1. jbest84No Gravatar says:

    This is not something that is broken. The functions you are overriding are there as hooks for the customizer to implement how the multi-select values should look and what the resulting value should be. The picklist field inherits from the lookup field:

    https://github.com/Saleslogix/argos-sdk/blob/develop/src/Fields/LookupField.js#L668

    Our out-of-the box contact edit form uses them like this:
    https://github.com/Saleslogix/argos-saleslogix/blob/develop/src/Views/Contact/Edit.js#L351

    For the next version of mobile, I can go ahead and provide a default implementation of these two functions.

    • Alex.CottnerNo Gravatar says:

      It would be great if this was included by default in the next mobile release. It’s always a little jarring when fields behave differently between the clients.

      I should have clarified more. I thought there should have been something in the stock picklist control to handle this, like in the web and LAN clients. When I checked the Account Industry field (which is multi-select in the web) and noticed it wasn’t multiselect, I assumed this functionality had been left out by mistake. I didn’t realize the quisine preference picklist was multiselect (the customer actually requested we remove that field, so it wasn’t in my custom edit.js file).

Leave a Reply