Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

求助窗体中如何快速录入雷同的数据?

雪地狂狼  发表于:2018-04-11 08:55:03  
复制

各位老师,请教了。

有表如下:


创建窗体进行报销数据录入时(比如张三某天来报销),报销人、日期其实是重复的(都是张三本人4月5日来报销),能否:
1. 窗体上的“报销人、日期”字段,只录入一次,(不想每条记录都重复录入张三、4-5)
2. 录入完成三条报销项目后,按一下按钮才把数据添加到表“报销流水账”中?

菜鸟,望各位老师能指点一下思路!
多谢了。

 

Top
SiliconXu 发表于:2018-04-11 09:12:07

把这张表拆成两张表,报销表抬头和详细信息。

抬头表包含报销表ID,报销人,报销日期;

详细信息表包含ID,报销表ID,报销项目,金额。

然后通过报销表ID对两个表建立一对多的关系。



凌云 发表于:2018-04-11 09:31:26
利用二楼的方式建表,然后建立主窗体和子窗体的方式完美解决

雪地狂狼 发表于:2018-04-11 09:38:27

多谢老师解答,我在平时也是这么做的,比如销售、出库等。

不过这个案例暂时觉得拆表不方便,想在此基础上解决问题。

现在面临的主要就是窗体快速方便录入的问题。



小农哥 发表于:2018-04-11 09:44:35
我觉得还是用一张表,建立主窗体和子窗体的方式--主窗体建立“报销人,报销日期“文本框,子窗体录入表时报销人,报销日期用主窗体文本框赋值来解决更方便后期数据处理


SiliconXu 发表于:2018-04-11 10:16:26

首先,我觉得这个不是方不方便的问题,而是数据库设计范式的问题。建议你查找一下关于数据库范式的内容看一下。

4楼说的“更方便后期数据处理”应该说是错误的。如果是使用楼主目前的表的设计,后期对数据的处理其实是更麻烦的,除非你的表的数据很少,然后是完全独立的。(但是说不定后面你会需要建立专门管理报销人员的表呢?)

所以我还是建议把表拆分出来更好。


如果一定要用一张表的方法,那就正如4楼建议的,新建一个窗体,窗体上面有“报销人”,“日期”两个文本框。注意,这个窗体不需要绑定数据。然后增加一个数据表视图的子窗体,数据来自报销表。然后把子窗体中的报销人和日期的字段的默认数值设置为主窗体中对应的字段。



蒋元根 发表于:2018-04-11 10:29:07

请参考竹笛先生的:http://www.accessoft.com/article-show.asp?id=2186 [示例]添加记录默认上一条记录

                              http://www.accessoft.com/article-show.asp?id=2480[示例]新增记录时复制上一条记录的示例



雪地狂狼 发表于:2018-04-11 10:31:40

多谢4楼小农哥和5楼SiliconXu两位老师指点!

Xu老师,多谢提醒和指点,其实案例中这个表为了方便表述,已经大大抽象和简化了实际问题,真实的情况更接近于:每天,n个部门,n个人来送单据,会计每天结束后统一录入系统,所以,就会期望“部门”“日期”等雷同的数据避免重复录入。

同时,由于每笔单据对会计来说都是一个完全独立的行为,所以,我觉得不存在类似“订单表+订单详情表”的范式要求。

于是,我最终想来想去,还是决定接受一些冗余字段。


我试一下两位老师给的解决方案,我觉得靠谱!!!!

多谢!



雪地狂狼 发表于:2018-04-11 11:39:24
6楼蒋老师,我暂时还看不懂@#¥@#¥@#¥@#,哈哈,努力学习中。。。。

总记录:8篇  页次:1/1 9 1 :