设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2621|回复: 9
打印 上一主题 下一主题

这个功能怎么实现?

[复制链接]
跳转到指定楼层
1#
发表于 2015-6-3 15:11:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有两张表:1.员工技能表;2.产品技能表。
                  其中员工技能表中有员工具有的许多技能,而产品技能表中是生产某种产品需要哪些技能,是否可以
实现在窗体中输入员工编号就可以知道该员工可以生产哪些产品?
                  搞了半天都没成功,特请教各位老师了!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2015-6-3 16:19:10 | 只看该作者
建议弄3张表,一张员工表,一张产品表,一张技能表;员工表与技能表关联,生产某些产品需要的技能与技能表关联。后面用联合查询应该就可以了
3#
发表于 2015-6-3 16:37:19 | 只看该作者
1.先做个查询,把表关系弄清楚,员工和技能对应好
2.通过dlookup或者ADO来获取相应的值

点击这里给我发消息

4#
发表于 2015-6-6 10:49:59 | 只看该作者
很有意思题目。这是一个典型的多对多的问题。

员工 -> 多技能
产品 -> 需多技能

不过我的想法是员工可以参与哪些产品的生产,而不是员工可以生产哪些产品。因为从你的描述中一个产品需要多种技能才能生产出来。
5#
 楼主| 发表于 2015-6-10 13:11:53 | 只看该作者
如朱老师所说的,是多对多的关系,就不知道该怎么建立员工和产品的关系,建立好后再去判断该员工是否完全具备生产某种产品的技能,如果都有了,班组长就可以叫他去做这种产品了
6#
发表于 2015-6-10 15:20:05 | 只看该作者
本帖最后由 roych 于 2015-6-10 15:26 编辑

基本上可以这样建表:
产品技能表:
产品名称   技能
产品1       技能1
产品1       技能2
产品1       技能3
员工技能表:
姓名:  技能
张三     技能1
张三     技能2
以技能来建立左联接的交叉表查询。以产品、员工姓名为行标题,产品技能为列标题,员工为值(最大值)。大体效果如下:
唯一的缺点是,无法判断空值部分。例如,产品1是需要3个技能,产品2只需要2个技能,技能3到底是否属于产品2的就不好判断了。
或许这样可能清晰一些:
  1. TRANSFORM Max(员工.技能) AS 技能之最大值
  2. SELECT 产品.产品, 产品.技能
  3. FROM 产品 LEFT JOIN 员工 ON 产品.技能 = 员工.技能
  4. GROUP BY 产品.产品, 产品.技能
  5. PIVOT 员工.员工;
复制代码

本帖子中包含更多资源

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

x
7#
 楼主| 发表于 2015-6-23 12:58:03 | 只看该作者
谢谢了,我先试试看,已困扰我好久了,一直没解决,我们的车间主任要求:
1.可以通过员工查询出该员工可以生产哪些产品
2.可以通过产品查询出该产品哪些员工可以生产
感觉好难!

8#
 楼主| 发表于 2015-6-23 13:06:14 | 只看该作者
在ADP中好像不行的
9#
发表于 2016-3-1 01:50:56 | 只看该作者
或者把员工表做成这种形式
员工      技能
老王    安装
老王   搬运

然后代码循环链接老王的技能 变成 strSkill = "'安装','搬运'" 这个样子,再用查询语句

本帖子中包含更多资源

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

x
10#
发表于 2016-3-1 01:53:28 | 只看该作者
对了 查询的时候应该用DISTINCT 取唯一值,要不同样产品出现多次
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-24 20:22 , Processed in 0.110521 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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