我一直在构建SSRS报告,该报告将允许用户更新表(主表)中列的单个字段。
已设置为允许用户加载登台表(沙盒),该表实际上是插入到登台表中的主表。
用户将能够通过报告上的参数更新字段。
我当前持有一个登台审核表,在登台表上带有触发器,以捕获任何已更新的记录。然后,将这些信息输入到报告页面中,以使用户可以通过最后的“更新”按钮确认其更改。
单击此更新按钮时,将触发存储过程,该存储过程会截断主表(原始表)并在临时表上进行复制。阶段审核表也被截断,以便在下一个会话中使用。
如您所见,截断将仅允许单个用户使用该报告。如何确保单个用户只能运行报表(从数据库方面,即SSMS)运行?
第二个问题是:如何仅捕获更新的记录?我在主表上有一个触发器来捕获插入,更新和删除,但由于由于截断并插入了临时表(通过UPDATE)而清空了该表,因此当前审计表会显示所有记录(因为它们都已重新插入)
我在想的一个解决方案是将登台审核的副本复制到另一个表上。
欢迎提出任何建议。如果有什么需要进一步解释的,请询问,我会尽力详细说明。