Skip to content

vt701: Vtiger_Module_Model getRelationQuery() fails when custom field in columns

I have a vtlib module (LSBudgets) that has a relationship to Sales Orders by a UI10 field in the Sales Order. I have a normal Related List configured using the standard get_dependents_list() function call.

In a LSBudgets record I can see related Sales Orders only if I do not include any field which is a normal custom field from the Sales Order as a Key Field (so it becomes a column in the related list view).

The query which is generated in the getRelationQuery() function is not joining the vtiger_salesordercf table, so the query fails.

Tue Sep 26 15:28:02 2017,246 [1476] INFO VT - PearDatabase ->ADODB error  Query Failed:SELECT DISTINCT vtiger_crmentity.crmid,vtiger_salesorder.subject, vtiger_salesorder.contactid, vtiger_salesorder.accountid, vtiger_crmentity.smownerid, vtiger_salesorder.sostatus, vtiger_salesorder.lsbudget_id, vtiger_salesorder.salesorder_no, vtiger_salesorder.total, vtiger_salesorder.quoteid, vtiger_salesordercf.cf_881 FROM vtiger_salesorder INNER JOIN vtiger_crmentity ON vtiger_crmentity.crmid = vtiger_salesorder.salesorderid LEFT JOIN vtiger_account ON vtiger_account.accountid = vtiger_salesorder.accountid INNER JOIN ls_budgets AS ls_budgetsLSBudgets ON ls_budgetsLSBudgets.lsbudgetsid = vtiger_salesorder.lsbudget_id LEFT JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smownerid LEFT JOIN vtiger_groups ON vtiger_groups.groupid = vtiger_crmentity.smownerid  WHERE vtiger_crmentity.deleted = 0 AND ls_budgetsLSBudgets.lsbudgetsid = 81068  LIMIT 0,20::->[1054]Unknown column 'vtiger_salesordercf.cf_881' in 'field list'