员工工号问题

yibey84 2009-04-29 09:57:58
大家帮我想想,针对一个装饰材料的上市公司,如何设计它的员工ID比较好,比如我们以前的学号;041014XX。前面2位表示入学年份,101表示学院,4表示班级,XX表示学号。望大家多多给意见
...全文
639 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuying2008go 2009-05-05
  • 打赏
  • 举报
回复
前面那个公司不是写死的啊。应该是由手工输入为好。。
hyde100 2009-05-05
  • 打赏
  • 举报
回复
[Quote=引用楼主 yibey84 的帖子:]
大家帮我想想,针对一个装饰材料的上市公司,如何设计它的员工ID比较好,比如我们以前的学号;041014XX。前面2位表示入学年份,101表示学院,4表示班级,XX表示学号。望大家多多给意见
[/Quote]
直接按照入职时间来建立流水号就可以了,没有必要搞的那么复杂
Munko 2009-05-05
  • 打赏
  • 举报
回复
补充一点,最好单独开表保存最大工号.
Munko 2009-05-05
  • 打赏
  • 举报
回复
根据我这段时间做人事系统实施的经验,直接用流水号比好,一般来说6码长度足够了,小公司5码足够,不建议工用有什么含义及过长.
JonasFeng 2009-05-04
  • 打赏
  • 举报
回复
不可能,员工换了一个部门,就换了一个工号吧。

弄一个表维护下就可以了。

另外,楼主总不至于出现像我之前单位的工号:动力001,运输010这种吧。
feifeiyiwen 2009-05-04
  • 打赏
  • 举报
回复
工号的定义意义在于在公司唯一识别且最好是一个
BlueSky4014 2009-05-04
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 youqi1984 的回复:]
楼上的你们好,如果是那样的话如果我这个员工换了部门的话怎么办啊
---------------------------------------------------------
一般流水号100001等等,只是代号,无法根据代号看具体信息

专门搞一个调整表,记录前后工号该表
[/Quote]
既然部门,职位都可变,那就没有必要在工号上体现出来了
工号的定义意义在于在公司唯一识别且最好是一个(若按照提问者的思路一个员工可以有很多工号)
如果需要知道部门和职务信息,在另外想办法,
Edwingu 2009-04-29
  • 打赏
  • 举报
回复
员工号,入职到离职之间,我认为固定不要变好.否则又要额外去维护
而且我觉得没必要把入职日期加进卡号,又不排资论辈
sdhdy 2009-04-29
  • 打赏
  • 举报
回复
还是用类似流水号的吧,这样就不会出现换部门的情况,至于他的部门还是入职日期,表里面肯定会有相应字段的,
不要把这几个字段归到一个上面。
0001
0002
0003
等待戈多12 2009-04-29
  • 打赏
  • 举报
回复
或者你这样子,没必要搞这么复杂
分公司编号+入职顺序 。如01000001是第一个,010000012是第二个
因为员工的入职信息也是属于保密的,没必要让大家都能看明白。另外建个表存放就行
youqi1984 2009-04-29
  • 打赏
  • 举报
回复
楼上的你们好,如果是那样的话如果我这个员工换了部门的话怎么办啊
---------------------------------------------------------
一般流水号100001等等,只是代号,无法根据代号看具体信息

专门搞一个调整表,记录前后工号该表
長胸為富 2009-04-29
  • 打赏
  • 举报
回复
入职年月日+流水号
ws_hgo 2009-04-29
  • 打赏
  • 举报
回复
http://blog.csdn.net/ws_hgo/archive/2009/02/10/3872714.aspx
ws_hgo 2009-04-29
  • 打赏
  • 举报
回复
--(4)生成流水号   
if object_id('tb') is not null drop table tb
drop function dbo.FC_Next
create function dbo.FC_Next()
returns char(8)
as
begin
return (select 'BH'+right(1000001+isnull(right(max(BH),6),0),6) from tb)
end
create table tb
(
BH char(8) primary key default dbo.FC_Next(),
col int
)
select * from tb

begin tran
insert into tb (col) values (1)
insert into tb (col) values (2)
insert into tb(BH,col) values (dbo.FC_Next(),14)
commit tran
select * from tb
yibey84 2009-04-29
  • 打赏
  • 举报
回复
楼上的你们好,如果是那样的话如果我这个员工换了部门的话怎么办啊
JonasFeng 2009-04-29
  • 打赏
  • 举报
回复
根据以往经验,员工的ID 可以参照如下设计:
分公司 + 部门 + 【职位】 + 号码

其中职务可以不写,但是有些为了体现出来,也可以用字幕或者简称代替。

例如:上海分公司,市场部,销售工程师
例如上海分公司代码为01, 市场部为03,这个可以统一规定的。
那么可以为010302011或者直接写成01030011。


具体还是要根据情况,至于说的入职年月什么的,最好不要带了。专门做个功能维护信息好了。

qizhengsheng 2009-04-29
  • 打赏
  • 举报
回复
看看高手们的想法
Yang_ 2009-04-29
  • 打赏
  • 举报
回复
编码设计,可以参考

子公司+部门+编号
mugua604 2009-04-29
  • 打赏
  • 举报
回复
xx流水号?
shanshuang0818 2009-04-29
  • 打赏
  • 举报
回复
帮顶。呵呵
加载更多回复(2)

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧