【梧州U8+薪资管理】-工资变动期初录入中没有人员案例解析SQl教程
作者:用友软件(广州)客户服务中心
来源:www.ufida168.com
发布时间:2025-10-24
【U8+】薪资管理-工资变动期初录入中没有人员案例解析涉及 SQL 语句不建议自行修改,可通过顾问支持。 若自行修改,需做好数据备份。 一、案例背景 在薪资管理模块操作时,工资变动界面正常显示人员,但勾选 “录入期初” 选项后,人员列表变为空,无法查看或维护期初工资数据(数据截图为案例参考设置)。
二、案例分析 1、薪资模块的期初数据存储在wa_gzdata表中,且期初记录对应iMonth=0(月份为 0) 。因此优先排查该表是否存在数据丢失或异常: 执行 SQL 查询语句,查看wa_gzdata表中iMonth=0且薪资等级编码(cGZGradeNum)为目标值(案例中为 010)的记录:
查询结果显示:iMonth=0的记录存在(人员编号、姓名等信息完整),排除“记录丢失”问题 2、这时候就需要应用对比法,对比正常账套中记录做分析了。 通过 “正常账套” 与 “问题账套” 的wa_gzdata表数据对比,发现关键差异: 正常账套:wa_gzdata表中iMonth=0的记录,bDCBZ(待发标志)和bTFBZ(停发标志)字段值均为0(数值型,非空);
问题账套:相同条件下,bDCBZ和bTFBZ字段值为NULL(空值),与正常账套不符;
初步判断:bDCBZ和bTFBZ字段为空值,导致系统无法识别期初记录,进而显示空界面。 三、解决方案 步骤 1:备份数据(关键前置操作) 为避免数据修改失误,先对wa_gzdata表进行全量备份,执行 SQL 语句: select * into wa_gzdata20190927 from wa_gzdata 步骤 2:更新异常字段值 将wa_gzdata表中iMonth=0且cGZGradeNum=010的记录,bDCBZ和bTFBZ字段值更新为 0(与正常账套一致),执行 SQL 语句: update wa_gzdata set bDCBZ=0,bTFBZ=0 where iMonth=0 and cGZGradeNum=010 更新后验证:再次查询wa_gzdata表,bDCBZ和bTFBZ字段已变为 0(非空)
步骤 3:验证结果 重新打开 “工资变动” 界面,勾选 “录入期初”: 人员列表正常显示,期初工资数据(基本工资、应发合计等)完整,问题解决
四、案例扩展 思考:为何问题账套的bDCBZ和bTFBZ字段会为空?进一步检查表结构的 “默认值设置”: 查看wa_gzdata表中bDCBZ和bTFBZ字段的属性: 正常账套:字段设置了默认值(通过默认值对象dbo.WA_GZData_bDCBZ_D和dbo.WA_GZData_bTFBZ_D,默认值为 0);
问题账套:字段无默认值,且 “允许 Null 值” 属性为 “是”,导致新增记录时字段值为空。
为问题账套的bDCBZ和bTFBZ字段添加默认值(值为 0),避免后续新增人员时再次出现空值 执行 SQL 语句创建默认值对象
五、案例总结 1、wa_gzdata表中iMonth=0的期初记录,并非 “人员新增到薪资档案后立即生成”,需满足以下条件:
2.wa_gzdata表imonth=0的记录,一般是不随之后月份的数据的变化而变化的,之前增加当月,修改了人员部门或停发状态,期初的那条记录也是不会变化的。是当月增加的要改的话,可以删除薪资人员档案再做批增,或后台改表处理。 3.判断不出数据字段是否有异常,可参考正常账套做对比,这样更容易找出问题。
1 END 1
|
关键词: 系统管理,财务管理,用友管理,用友U8 cloud,财务,销售,用友U8c供应链管理软件,采购管理,U8c销售管理软件
相关服务














