找回密码
 注册账号

QQ登录

只需一步,快速开始

手机号码,快捷登录

手机号码,快捷登录

初学者课程:T3自学|T6自学|U8自学软件下载课件下载工具下载资料:通资料|U8资料|NC|培训|年结积分规则 | 使用常见问题Q&A
知识库:U8 | | NC | U9 | OA | 政务U8|U9|NCC|NC65|NC65客开|NCC客开新手必读 | 任务 | 快速增金币用友QQ群[微信群]
查看: 3198|回复: 5

[求助] T6HR自定义报表相关的查询SQL语句

  [复制链接]
发表于 2010-12-9 16:41:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册账号

×
本帖最后由 cuicx1987 于 2010-12-10 13:10 编辑

最简单报表,职工花名册中,我想查出该员工所在的公司,即部门的上一级,如何查询,SQL语句如何写?
我研究了下数据库,部门的上下级关系是靠OrganConfig表中的ocUp字段维护的,该字段的值表示上级部门的ID,我只能查出该值为0时也就是没有上级的部门。如何查询该值不为0,也就是该部门的上级部门?
 楼主| 发表于 2010-12-9 16:47:47 | 显示全部楼层
select DISTINCT case ocUp when 0 then ocName else (……) end as 公司, hmWorkNo as '工号', case hmGender when 1 then '男' else '女' end  as '性别',ocName as '部门',OS.osName as '岗位',hmAge as '年龄', case CONVERT(varchar(10) ,hmInDate, 120 ) when '1900-01-01' then ' ' else CONVERT(varchar(10) ,hmInDate, 120 ) end  as '入职时间', case CONVERT(varchar(10) ,hmWorkDate, 120 ) when '1900-01-01' then ' ' else CONVERT(varchar(10) ,hmWorkDate, 120 ) end  as '参加工作时间',hmNativePlace as '籍贯',hmEduSchool as '毕业学校',hmEduSpecial as '专业', case CONVERT(varchar(10) ,hmeduEnddate, 120 ) when '1900-01-01' then ' ' else CONVERT(varchar(10) ,hmeduEnddate, 120 ) end  as '毕业时间' from HumanMain H  left join OrganConfig OC on H.ocID=OC.ocID  LEFT OUTER JOIN (SELECT osgid,osgWage,osOrder, CASE osglevel WHEN 0 THEN a.osname ELSE a.osname+LTRIM(RTRIM(STR(b.osglevel))) END AS osName FROM OrganStation a LEFT outer join OrganStationGrade b ON a.osid=b.osid) OS ON H.osgid=OS.osgid  where H.hmState=0

贴出部分SQL语句,蓝色标记的语句中,省略号的内容该如何写?或者用其他的什么语句?
 楼主| 发表于 2010-12-10 13:54:32 | 显示全部楼层
在线等,这段时间都在研究自定义报表。
 楼主| 发表于 2010-12-14 16:31:47 | 显示全部楼层
很失望,无人关注技术贴,大都是灌水的。。
发表于 2011-1-26 13:37:18 | 显示全部楼层
想研究。可惜能力不足。
发表于 2011-3-18 13:40:17 | 显示全部楼层
ocup对应上级部门ocid
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

QQ|站长微信|Archiver|手机版|小黑屋|用友之家 ( 蜀ICP备07505338号|51072502110008 )

GMT+8, 2024-11-18 14:39 , Processed in 0.074935 second(s), 9 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表