We have very similar, perhaps the same definitions in listgviewdefs.php:
'CONTACTS_GCMP_PROPERTIES_1_NAME' =>
array (
'type' => 'relate',
'link' => true,
'label' => 'LBL_CONTACTS_GCMP_PROPERTIES_1_FROM_CONTACTS_TITLE',
'id' => 'CONTACTS_GCMP_PROPERTIES_1CONTACTS_IDA',
'width' => '10%',
'default' => true,
),
And the relevant entries in the vardefs.ext.php are as follows:
// created: 2023-06-22 10:01:53
$dictionary["gcmp_Properties"]["fields"]["contacts_gcmp_properties_1"] = array (
'name' => 'contacts_gcmp_properties_1',
'type' => 'link',
'relationship' => 'contacts_gcmp_properties_1',
'source' => 'non-db',
'module' => 'Contacts',
'bean_name' => 'Contact',
'vname' => 'LBL_CONTACTS_GCMP_PROPERTIES_1_FROM_CONTACTS_TITLE',
'id_name' => 'contacts_gcmp_properties_1contacts_ida',
);
$dictionary["gcmp_Properties"]["fields"]["contacts_gcmp_properties_1_name"] = array (
'name' => 'contacts_gcmp_properties_1_name',
'type' => 'relate',
'source' => 'non-db',
'vname' => 'LBL_CONTACTS_GCMP_PROPERTIES_1_FROM_CONTACTS_TITLE',
'save' => true,
'id_name' => 'contacts_gcmp_properties_1contacts_ida',
'link' => 'contacts_gcmp_properties_1',
'table' => 'contacts',
'module' => 'Contacts',
'rname' => 'name',
'db_concat_fields' =>
array (
0 => 'first_name',
1 => 'last_name',
),
);
$dictionary["gcmp_Properties"]["fields"]["contacts_gcmp_properties_1contacts_ida"] = array (
'name' => 'contacts_gcmp_properties_1contacts_ida',
'type' => 'link',
'relationship' => 'contacts_gcmp_properties_1',
'source' => 'non-db',
'reportable' => false,
'side' => 'right',
'vname' => 'LBL_CONTACTS_GCMP_PROPERTIES_1_FROM_GCMP_PROPERTIES_TITLE',
);