上次我在论坛向老师们请教了 “这个查询怎样完成?”一贴,感谢 chinasa 老师与 Natsume Takashi 老师,他们分别给了我满意的解答。在这个问题的基础上,我制作了一个会计科目编辑的过程。基本表的核心字段为4个:科目代码、科目名称、数量核算、是否末级。
科目代码字段最多为4级,规则为:4233,最多可以输入12个数字。并设置为主键(不重复)。
科目编辑窗体:4有效控件供编辑,其他为辅助控件(按钮除外)。
科目代码:限制只能输入数字,不能含有数字以外的其他字符,只能输入:4位、6位、9位、12位数字,其他位数都不可输入。输入的代码与表中已有的代码相同时,其他控件会同时显示该代码所对应的内容,此时自动判断为修改科目。如果表中没有相同的代码,此时自动判断为新增科目。都能重复保存,并不会出现重复记录。舍去自动编号功能。自动编号在此处并不是很适用。避免了被使用后,科目代码又被修改的可能。
科目名称:如果科目名称出现重复时会提示是否选择确认输入,防止上级科目不同但下级科目相同时不能保存。也防止出现完全相同的两个及两个以上的科目。输入科目名称时,只输入本级名称,完整的科目名称由查询来完成。
只要不被删除,能人为修改的只有科目名称、是否数量核算、计量单位。
新增同级时,自动将新增的科目设置为最末级科目。新增下级时,新增的科目自动为最末级科目,并将新增的下级科目的上级科目更新为非末级科目。
删除时,限制了先删除最末级科目,不会删除非末级科目。当所有的末级科目都被删除后,所对应的上级科目会自动更新为末级科目。
做了这些的目的:保证录入凭证时所用到的科目都为最末级科目。在最末级科目未删除前,非末级科目不会因被删除而出现只有下级没有上级的怪异现象。
附 件:
点击下载此附件
图 示: