如何在MS Access表单中收集分类的每月销售额并将其检索为每月新记录-产品-类别

问题描述 投票:0回答:1

我使用“MS Access”设计了一个销售预算系统,用户可以在其中分配销售价值以及不同月份的销售价格以及一些其他功能。

这是主表(tbl_SalesMonthing)的架构,许多表单都在该表上存储数据。 As-Is structure

显然,“tbl_SalesMonthing”表当前的交叉表结构带来了许多挑战。它的复杂性会影响查询性能并使表单难以维护。例如,连接多个表来检索每月数据非常耗时,需要使用UNION将表Unpivoted,而且表单逻辑变得复杂。

提前谢谢您

因此,我正在寻找替代的表结构来提高效率并简化数据库维护。我特别感兴趣的是探索一种利用 VBA 和文本框捕获每月数据的设计,从而可能消除对跨表格结构的需求。这是Table的概念模型: Conceptual Structure 这是我当前表单的架构,用于以名为“frm_BudgetgDataEntry”的表单从用户收集销售数据 Data Entry Form

ms-access pivot-table unpivot
1个回答
0
投票

我认为您的“概念结构”的设计(使用 1 个字段“MonthName”而不是 12 个月份值字段)是用于存储数据的正确设计。

您的输入表单的图像不是很清晰(阿拉伯语?)。一般来说,用户会喜欢以交叉表格式进行输入,但是您应该组织表单以将交叉表输入值正确保存到非交叉表存储表中。

这将涉及一些 VBA 代码来生成必要的 SQL 指令。您可以将输入表单基于当前设计的辅助表,然后使用一系列追加查询将辅助表中的数据添加到“基本”表中。

例如将 auxTable 中的一月值添加到 baseTable:

插入基本表(产品代码,定价类型,目的地, 月份名称、值)选择产品代码、定价类型、目的地、1、 [1] 来自 auxTable

(或使用附加查询设计网格创建类似的查询)。

© www.soinside.com 2019 - 2024. All rights reserved.