我正在努力实现“联系人”和“联系人”之间的1:m关系。 VTiger中的服务合同6.我们将使用该关系来跟踪我们系统的用户。每个联系人应该只允许一次链接到1个服务合同(1:m)。
我能够通过使用以下代码获得此工作的ServiceContract:
require_once 'vtlib/Vtiger/Module.php';
$scmodule=Vtiger_Module::getInstance('ServiceContracts');
$scmodule->setRelatedList(Vtiger_Module::getInstance('Contacts'), 'Users',Array('SELECT'),'get_related_list');
这在服务合同的右侧增加了一个标签为"用户"使用SELECT按钮,允许我们从列表中添加/删除联系人。
但是,我们还希望在“联系人”页面上显示一个字段,该字段显示与其链接的服务合同。
更新: 我使用以下代码将单个服务合同字段添加到联系人:
`
include_once('vtlib/Vtiger/Module.php');
$module = Vtiger_Module::getInstance('Contacts');
$blockInstance = Vtiger_Block::getInstance('LBL_CONTACT_INFORMATION', $module);
$fieldInstance = new Vtiger_Field();
$fieldInstance->name = 'SelectYourAccount';
$fieldInstance->label = 'Account';
$fieldInstance->uitype = 10;
$fieldInstance->typeofdata = 'V~O';
$blockInstance->addField($fieldInstance);
$fieldInstance->setRelatedModules(Array('ServiceContracts'));`
上面的代码工作正常,我在联系人详细信息中有一个帐户字段,我可以链接到单个服务合同;但是,当我为联系人选择服务合同然后转到服务合同上的用户列表时,联系人没有列出。
非常感谢任何帮助!