Sql 扩展dotproject

Sql 扩展dotproject,sql,dotproject,Sql,Dotproject,实际上,我正在尝试使用dotproject来构建我自己的小应用程序。 我被困在一个点上,dotproject显示了与特定项目相关的所有任务 我无法正确理解sql。实际上,此sql检索与项目关联的所有任务。但在我的项目中,我只希望任务的持续时间已完成 如何更改sql以实现这一点?您可以简化大部分操作,只需查看tasks表上的task\u percent\u complete字段即可。如果这是100%,那么任务就完成了 如果你想在dotproject之上构建一个应用程序,我建议你去看看web2pro

实际上,我正在尝试使用dotproject来构建我自己的小应用程序。 我被困在一个点上,dotproject显示了与特定项目相关的所有任务

我无法正确理解sql。实际上,此sql检索与项目关联的所有任务。但在我的项目中,我只希望任务的持续时间已完成


如何更改sql以实现这一点?

您可以简化大部分操作,只需查看tasks表上的task\u percent\u complete字段即可。如果这是100%,那么任务就完成了


如果你想在dotproject之上构建一个应用程序,我建议你去看看web2project。大约两年前,我们从dotproject分道扬镳,并对系统进行了清理和显著改进。如果您有任何问题,请随时给我留言。

我知道回答这个问题太晚了,但希望有人能从中得到线索:

只需添加where查询,比如$q->addWhere'task\u percent\u complete=100'

总之,您的代码如下所示:

 $q->addJoin('tasks', 't1', 'projects.project_id = t1.task_project');
$q->addQuery('com.company_name AS company_name, com_internal.company_name'
             . ' AS company_name_internal' 
             . ", CONCAT_WS(', ',contact_last_name,contact_first_name) user_name" 
             . ', projects.*, SUM(t1.task_duration * t1.task_percent_complete' 
             ." * IF(t1.task_duration_type = 24, {$working_hours}, t1.task_duration_type))" 
             ." / SUM(t1.task_duration * IF(t1.task_duration_type = 24, {$working_hours}," 
             . ' t1.task_duration_type)) AS project_percent_complete');

$q->addWhere('t1.task_id = t1.task_parent');
$q->addWhere('project_id = ' . $project_id);
$q->addWhere('t1.task_percent_complete = 100'); // added new line
$q->addGroup('project_id');
 $q->addJoin('tasks', 't1', 'projects.project_id = t1.task_project');
$q->addQuery('com.company_name AS company_name, com_internal.company_name'
             . ' AS company_name_internal' 
             . ", CONCAT_WS(', ',contact_last_name,contact_first_name) user_name" 
             . ', projects.*, SUM(t1.task_duration * t1.task_percent_complete' 
             ." * IF(t1.task_duration_type = 24, {$working_hours}, t1.task_duration_type))" 
             ." / SUM(t1.task_duration * IF(t1.task_duration_type = 24, {$working_hours}," 
             . ' t1.task_duration_type)) AS project_percent_complete');

$q->addWhere('t1.task_id = t1.task_parent');
$q->addWhere('project_id = ' . $project_id);
$q->addWhere('t1.task_percent_complete = 100'); // added new line
$q->addGroup('project_id');