Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net Load()抛出错误:未定义的函数';统计工作日和#x27;表达_.net_Sql_Vb.net_Ms Access - Fatal编程技术网

.net Load()抛出错误:未定义的函数';统计工作日和#x27;表达

.net Load()抛出错误:未定义的函数';统计工作日和#x27;表达,.net,sql,vb.net,ms-access,.net,Sql,Vb.net,Ms Access,我正在使用Access数据库并尝试加载DataTable对象,但收到了错误。我的查询在标准访问模块中调用一个名为“CountWeekDays”的公共函数,当通过访问本身运行时,会返回正确的结果。当通过.NET应用程序调用它时,为什么这不起作用 SELECT tbl1.ProjectID, tbl1.EntryDate AS StartDate, tbl2.EntryDate AS EndDate, (SELECT (ChecklistDayMax - ChecklistDayMin + 1)

我正在使用Access数据库并尝试加载DataTable对象,但收到了错误。我的查询在标准访问模块中调用一个名为“CountWeekDays”的公共函数,当通过访问本身运行时,会返回正确的结果。当通过.NET应用程序调用它时,为什么这不起作用

 SELECT tbl1.ProjectID, tbl1.EntryDate AS StartDate, tbl2.EntryDate AS EndDate, 
(SELECT (ChecklistDayMax - ChecklistDayMin + 1) AS DaysAlotted FROM milestone_def WHERE MilestoneDefID = [@milestoneID]) AS DaysAlotted, 
(SELECT ProjectPriority FROM project_master WHERE ProjectID = tbl1.ProjectID) AS Priority,    
 IIF(Priority = 1, (SELECT BonusDaysFH FROM milestone_def WHERE MilestoneDefID = [@milestoneID]), 
 IIF(Priority = 2, (SELECT BonusDaysFM FROM milestone_def WHERE MilestoneDefID = [@milestoneID]), 
 IIF(Priority = 3, (SELECT BonusDaysFL FROM milestone_def WHERE MilestoneDefID = [@milestoneID])))) AS BonusDaysAllotted, 
 CountWeekDays(tbl1.EntryDate, tbl2.EntryDate) AS DaysRequired
 FROM checklist_entries AS tbl1 
 INNER JOIN checklist_entries AS tbl2 ON tbl1.ProjectID = tbl2.ProjectID
 WHERE tbl1.ChecklistDay = (SELECT ChecklistDayMin FROM milestone_def WHERE MilestoneDefID = [@milestoneID])
 AND tbl2.ChecklistDay = (SELECT ChecklistDayMax FROM milestone_def WHERE MileStoneDefID = [@milestoneID]);

只有在Access本身中运行查询时,才能在Access查询中使用用户定义的VBA函数。如果您将在.NET应用程序中运行查询,则查询必须只返回开始/结束日期,并且.NET代码必须计算它们之间的工作日数。

哪里定义了
CountWeekDays
在名为“modCountWeekDays”的访问模块中。@DStanley这是对的后续问题。他说再一次!哈哈,那真的很糟糕。我厌倦了访问。该死的客户。好吧,我要再做一遍。再次感谢Gord。