1

Project モジュールの下にある既存の Task モジュールを使用しています。特定のタスクを複数のワーカーに割り当てたいと考えています。人々のグループが一緒にタスクを完了することを意味します。

vtigercrm にはすでにワーカーがユーザーとして含まれています。したがって、単一のタスクを割り当てるためにユーザー選択を複数にすると、このユースケースを処理しやすくなります。

このユースケースは既に Calendar モジュールに含まれていますが、実装方法を理解できません。

どのモジュールでもカスタム ユーザー リスト ドロップダウンを作成する方法について十分な知識があり、カスタム モジュール用にさらに多くの作成を行いました。一度に複数の同じシナリオで立ち往生しています。私はmodule.phpでこのように試しましたが、うまくいきません。

$users = Vtiger_Module::getInstance('Users'); 
$module = Vtiger_Module::getInstance('MyModule'); 
$module->unsetRelatedList($users, 'Users', 'get_related_list'); 
$module->setRelatedList($users, 'Users', array('SELECT'), 'get_related_list'); 

誰かがそれを成し遂げるのを手伝ってくれますか?

4

1 に答える 1

1

カレンダーのイベント作成でユーザーの招待フィールドを理解していれば可能です。ここでは、フィールドは複数選択でなければなりません。

ユーザーの招待フィールド

複数のユーザーを挿入し、詳細ビューで表示するには、vtiger_salesmanactivityrel テーブルを処理する必要があります。

以下は、inviteusers を処理するコードです。

//招待者の扱い

$selected_users_string =  $_REQUEST['inviteesid'];
            $invitees_array = explode(';',$selected_users_string);
            $this->insertIntoInviteeTable($module,$invitees_array);

function insertIntoInviteeTable($module,$invitees_array)
    {
        global $log,$adb;
        $log->debug("Entering insertIntoInviteeTable(".$module.",".$invitees_array.") method ...");
        if($this->mode == 'edit'){
            $sql = "delete from vtiger_invitees where activityid=?";
            $adb->pquery($sql, array($this->id));
        }
        foreach($invitees_array as $inviteeid)
        {
            if($inviteeid != '')
            {
                $query="insert into vtiger_invitees values(?,?)";
                $adb->pquery($query, array($this->id, $inviteeid));
            }
        }
        $log->debug("Exiting insertIntoInviteeTable method ...");

    }

より良いアイデアが得られることを願っています。

于 2016-09-27T16:21:17.043 に答える