MS Access 2013Office 365 Sharepoint链接列表
我在使用Sharepoint链接列表的Desktop Access应用程序中有两个表。
平等设备工单
我正在尝试创建一个报告,用户可以在其中打印特定工单的详细信息,然后在子报告列表中打印与该特定单元关联的所有工单。
这听起来很简单,我使用WorkOrder和Equipment Table创建了一个Query,以收集我需要为主报告打印的所有数据,其中Criteria WHERE WorkOrder.ID=200
然后,我在WorkOrder表上为子报表创建第二个查询。我通过单元#链接了它们,因此子报表将打印父报表的特定单元的所有工单列表。
现在,这对单个记录来说很好,它将打印所选WO的工单和单位详细信息,子报表将打印整个工单列表。
当我尝试打印多个工作订单时,它开始出现故障,例如:标准:Where WorkOrder.ID=200或250或261
现在主查询工作得很好,当它自己运行时,它将调出3条记录(其中ID=200、250、261)。
但当我打开报告时,它将从第一页开始显示WorkOrder 200的所有详细信息,但当我导航到下一页而不是打印WorkOrder 250时(就像你所期望的那样,考虑到查询中只有3条记录,然后第三条应该是261),下一条记录变成WO 2,然后3,4,5,6,7,8,9,10..等)报告打印出整个表(WO ID 1除外)。
为什么会发生这种情况?这对我来说毫无意义。
另一件让情况混乱的事情是,我有一个开发应用程序,它使用相同的导入本地表,并且系统与这些表完美配合,只有与链接表配合才能中断。
另一件需要注意的事情是,工单表有一个ID字段Autonumber和一个WO(字符串字段),WO字段99%的时间等于ID字段(在某些情况下不是),如果我使用WHERE WO="200"或"250"或"261",这是有效的,但我不能使用这个字段,因为这个字段并不总是等于ID,也不总是唯一的
这个问题的解决方案是使用SELECT DISTINCT,它消除了对所有记录的选择