以前可以用的代码,为何现在出现错误,没做过更改。
iif([班次]='公休', Null ,iif([实上班时间] is Null ,'未打卡',
iif(
iif(SubString(Convert([实上班时间],'System.String'), 11, 1) = ':', Convert(SubString(Convert([实上班时间],'System.String'), 10, 1),'System.Int32')*60+Convert(SubString(Convert([实上班时间],'System.String'), 12, 2),'System.Int32'), Convert(SubString(Convert([实上班时间],'System.String'), 10, 2),'System.Int32')*60+Convert(SubString(Convert([实上班时间],'System.String'), 13, 2),'System.Int32'))-
iif(SubString(Convert([应上班时间],'System.String'), 11, 1) = ':', Convert(SubString(Convert([应上班时间],'System.String'), 10, 1),'System.Int32')*60+Convert(SubString(Convert([应上班时间],'System.String'), 12, 2),'System.Int32'), Convert(SubString(Convert([应上班时间],'System.String'), 10, 2),'System.Int32')*60+Convert(SubString(Convert([应上班时间],'System.String'), 13, 2),'System.Int32'))
>0,
iif(SubString(Convert([实上班时间],'System.String'), 11, 1) = ':', Convert(SubString(Convert([实上班时间],'System.String'), 10, 1),'System.Int32')*60+Convert(SubString(Convert([实上班时间],'System.String'), 12, 2),'System.Int32'), Convert(SubString(Convert([实上班时间],'System.String'), 10, 2),'System.Int32')*60+Convert(SubString(Convert([实上班时间],'System.String'), 13, 2),'System.Int32'))-
iif(SubString(Convert([应上班时间],'System.String'), 11, 1) = ':', Convert(SubString(Convert([应上班时间],'System.String'), 10, 1),'System.Int32')*60+Convert(SubString(Convert([应上班时间],'System.String'), 12, 2),'System.Int32'), Convert(SubString(Convert([应上班时间],'System.String'), 10, 2),'System.Int32')*60+Convert(SubString(Convert([应上班时间],'System.String'), 13, 2),'System.Int32'))
, Null
)))