Creating User Multi Selects

Once upon a time there used to be a CRM field entrytype called 'user multi select' that seemed to be available to help define new fields. The actual EntryType is designed to be used with communications to allow the assigning of tasks and meetings to multiple users. When the field type was used to create a new column in an entity outside of it's proper context e.g. Projects or Company then it used to generate 'Pointer' errors as it assumed that there was an intersection table between the user and the table to which the user multiselect had been added.

This is because the User multi select writes into a field of data type 'Int' and as an 'Int' field it could never store multiselects and needs a link table to store this information in the link table. e.g.: in communication the user multiselects are stored in the comm_link table.

We can do a trick here to get round the need to put a User Multi Select into a table:

[1] Add a Dummy Translation with Caption Familytype = Choices,
Capt_Family = Users, Capt_code =1;
[2] Carry out a meta data fresh ;
[3] Create a multiselect field (not a user multiselect but a normal
multiselect) and select the Lookup family here as "Users";
[4] Add the field to the target entities Screen;

Try selecting more than 1 person and saving. It should be stored as a comma seperated list in the new nchar field.
Anonymous
  • Hi Jeff,

    Based on you description we have created a new multiselect field (1-4). Now we can select more than 1 person. If we will save the record we get an error message ...

    there was an unexpected event : EAccessViolation: Access violation at address 1A004AC4 in module 'eware.dll'. Read of address FFFFFFDD

    After that we couldn't open this screen for this company record again. Everytime the error message.

    The selected user data, however, were stored in the database as a comma seperated list (,1,29,5,). This seems to be correct.

    We use Sage CRM 7.1 d HF4.

    Do you have any idea what could be wrong?

    Best regards,

    Sigrid

  • Great stuff Jeff.

    Is there anyway to make it work similar to the New Appointment screen?

    Such that it is not showing as comma seperated but multi-lines, and allow for insertion of records to a custom entity similar to Comm_Link table?