| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1802 人关注过本帖
标题:如何实现“课表结构转换”,便于查看!
只看楼主 加入收藏
dengxsh
Rank: 2
等 级:论坛游民
帖 子:87
专家分:40
注 册:2013-2-26
结帖率:73.68%
收藏
已结贴  问题点数:40 回复次数:10 
如何实现“课表结构转换”,便于查看!
课表转换需求如下:
课表转换需求.rar (331.25 KB)

——————
原课表,如下:
原始课表结构.rar (850 Bytes)
搜索更多相关主题的帖子: 如何 
2017-02-22 10:58
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
楼主,有点赖,你把你的问题详细的描述出来。转换规则。
这样别人帮你也方便很多。
2017-02-22 11:32
dengxsh
Rank: 2
等 级:论坛游民
帖 子:87
专家分:40
注 册:2013-2-26
收藏
得分:0 
现有一个数万条的课表库,如下图所示:
   
图片附件: 游客没有浏览图片的权限,请 登录注册

这里的“时间地点”字段内容繁琐,不便检索查看。
需按照以下流程进行结构转换:
步骤1:将上图中的多时间段的任务记录,按“时间地点”中“,”拆分成多条。如下图所示:
   
图片附件: 游客没有浏览图片的权限,请 登录注册

步骤2:再把拆分后的“时间地点”分列。如下图所示:
   
图片附件: 游客没有浏览图片的权限,请 登录注册

步骤3:最后导出成新的DBF表,命名为“转换后课表.DBF”。
2017-02-22 11:51
xinjie
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:19
帖 子:274
专家分:520
注 册:2007-8-11
收藏
得分:0 
很容易啊,VFP有字符拆分的函数。然后就是循环嵌套就能搞定了。算法步骤就是你所列的。
2017-02-22 12:07
dengxsh
Rank: 2
等 级:论坛游民
帖 子:87
专家分:40
注 册:2013-2-26
收藏
得分:0 
回复 4楼 xinjie
我开始初学,确有困难,还请帮忙!
2017-02-22 12:41
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:40 
* VFP9代码
程序代码:
SELECT *,SPACE(20) 教室,SPACE(20) 周数,SPACE(10) 星期,SPACE(10) 节次 FROM 原始课表结构 WHERE .f. INTO CURSOR 转换后课表 READWRITE 
* 如果想保存为自由表,将上面的代码改为如下代码
*SELECT *,SPACE(20) 教室,SPACE(20) 周数,SPACE(10) 节次 FROM 原始课表结构 WHERE .f. INTO DBF 转换后课表
SELECT 原始课表结构
SCAN
    LOCAL astru[12]
    SCATTER TO astru
    *LIST MEMORY LIKE astru
    nrow1=ALINES(asj,astru[8],",")
    FOR i=1 TO nrow1
        =acopy(asj,astru,1,1,8)
        nrow2=ALINES(afd,asj[i]," ")
        =acopy(afd,astru,1,4,9)
        INSERT INTO 转换后课表 FROM ARRAY astru
    ENDFOR 
ENDSCAN
SELECT 转换后课表
BROWSE 


[此贴子已经被作者于2017-2-22 13:32编辑过]


坚守VFP最后的阵地
2017-02-22 13:30
dengxsh
Rank: 2
等 级:论坛游民
帖 子:87
专家分:40
注 册:2013-2-26
收藏
得分:0 
回复 6楼 sdta
拆分出错:现象是拆分的“时间地点”是完全一样的?
这与后面分列数据不对应!
图片附件: 游客没有浏览图片的权限,请 登录注册
2017-02-22 14:06
红星二锅头
Rank: 8Rank: 8
等 级:贵宾
威 望:46
帖 子:491
专家分:754
注 册:2016-8-25
收藏
得分:0 
数据库没有设计的合理或规范

图片附件: 游客没有浏览图片的权限,请 登录注册

团队红星二锅头,队长王猛,领队李冲,顾问杨伟,副队张挺,外联马彪,内勤韩秀,人事顾闯,财务赵魁,后勤周强
2017-02-22 14:11
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
回复 7楼 dengxsh
=acopy(asj,astru,1,1,8)
改为
 =acopy(asj,astru,I,1,8)

坚守VFP最后的阵地
2017-02-22 14:28
dengxsh
Rank: 2
等 级:论坛游民
帖 子:87
专家分:40
注 册:2013-2-26
收藏
得分:0 
回复 9楼 sdta
非常感谢!那如果在导出数据表前,按照主讲教师、任务号、周数、星期、节次进行排序呢?
2017-02-22 14:51
快速回复:如何实现“课表结构转换”,便于查看!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021923 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved