标题:求助:VFP 表单中有一个表格,其中一个按钮里有PACK命令,执行后,表格变白 ...
只看楼主
wyzeaaa
Rank: 1
等 级:新手上路
帖 子:94
专家分:0
注 册:2019-6-4
结帖率:83.33%
 问题点数:0 回复次数:23 
求助:VFP 表单中有一个表格,其中一个按钮里有PACK命令,执行后,表格变白。



求助:VFP  表单中有一个表格,其中一个按钮里有PACK命令,执行后,表格变白。

前面用DELETE from 2201 WHERE zf<fsx,这个命令把分数下的记录全删除了,结果打开表看,没并有彻底删除,只是加上了删除标记,不知道这个命令能不能加上个参数,实现彻底删除。
搜索了半天,也没找到解决办法

就在按钮里加了以下的命令,把16个学校成绩库里分数线以下的信息删除。

use 2201
pack
use 2202
pack
use 2203
pack
use 2204
pack
use 2205
.....


结果,表格就白了,不显示数据了。求高手指点一下了。

我VFP基础太差,都是通过百度搜索一些命令,然后简单组合,实现一些简单目标。


[此贴子已经被作者于2019-6-6 10:53编辑过]

搜索更多相关主题的帖子: VFP 表格 按钮 命令 删除 
2019-06-06 10:50
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:108
帖 子:2175
专家分:3785
注 册:2007-4-27
得分:0 
表的数据源重新加载就可以了

只求每天有一丁点儿的进步就可以了
2019-06-06 12:27
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:108
帖 子:2175
专家分:3785
注 册:2007-4-27
得分:0 
  thisform.grid1.ColumnCount =-1
  thisform.grid1.RecordSourceType = 1
  thisform.grid1.RecordSource ='表名'

加在 pack 后面

只求每天有一丁点儿的进步就可以了
2019-06-06 12:29
wyzeaaa
Rank: 1
等 级:新手上路
帖 子:94
专家分:0
注 册:2019-6-4
得分:0 
回复 3楼 wengjl
按钮的命令
select zbx from bmddm where xxdm='2201' INTO ARRAY fsx  &&删除数据表2201中,zf小于分数线的记录。
DELETE from 2201 WHERE zf<fsx

use 2201
PACK
thisform.grid1.ColumnCount =-1
thisform.grid1.RecordSourceType = 1
thisform.grid1.RecordSource ='bmddm'
use

提示“文件正在使用”,还是不能刷新表格。

不知道怎么弄了,再指点一步,谢谢了。
表格的数据源是表bmddm.dbf
2019-06-06 13:05
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:40
帖 子:749
专家分:2475
注 册:2011-5-8
得分:0 
在表单的LOAD事件中,用create cursor 命令建立临时表 csxxtmp,或打开一个同结构的表用
 aa=afield(arstr)
CREATE CURSOR csxxtmp from ARRAY arstr 

在表单的init事件中,将表格与csxxtmp绑定。
程序代码:
thisform.grid1.RecordSourceType= 1
thisform.grid1.RecordSource='csxxtmp'
thisform.grid1.column1.ControlSource='csxxtmp.sfxz'   &&column1显示字段sfxz
thisform.grid1.column2.ControlSource='csxxtmp.xxdm'
thisform.grid1.column3.ControlSource='csxxtmp.xxmc'
…………

在设计时,修改Grid的 Columncount属性,设为你想显示的列数;
修改每列的Hearder1的Caption属性(说明这一列是什么内容,建议用中文)。
然后在相应的命令按键的Click事件中,加入以下代码
程序代码:
select csxxtmp
zap
append from  2201 for zf>=fsx
append from  2202 for zf>=fsx
append from  2203 for zf>=fsx
………………
………………
go top
thisform.grid1.Refresh 



[此贴子已经被作者于2019-6-6 15:53编辑过]


dBase有人接盘了。
2019-06-06 15:52
wyzeaaa
Rank: 1
等 级:新手上路
帖 子:94
专家分:0
注 册:2019-6-4
得分:0 
回复 5楼 xuminxz
谢谢解答,我学习一下,试一下。
2019-06-06 20:53
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:108
帖 子:2175
专家分:3785
注 册:2007-4-27
得分:0 
使用 pack 命令,需要独占表的,表与GRID关联,就不独占了,所以还加命令(与GRID的关联断开)才不会出现 文件正在被使用 的提示。

只求每天有一丁点儿的进步就可以了
2019-06-07 07:29
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:108
帖 子:2175
专家分:3785
注 册:2007-4-27
得分:0 
解决屏幕变白和使用PACK 的思路:
1、锁定屏幕
2、断开表与GRID的关联
3、执行PACK,清理有删除标记的记录
4、重新将表关联到GRID上
5、解除屏幕的锁定,并刷新屏幕。


只求每天有一丁点儿的进步就可以了
2019-06-07 07:35
wyzeaaa
Rank: 1
等 级:新手上路
帖 子:94
专家分:0
注 册:2019-6-4
得分:0 
回复 8楼 wengjl
谢谢,思路很清晰,
能不能提供一下实现这几步的命令,我试一下,
要不然,我也是一条条去百度上搜索
2019-06-07 11:39
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:108
帖 子:2175
专家分:3785
注 册:2007-4-27
得分:0 
pack.rar (2.75 KB)


示例来了

只求每天有一丁点儿的进步就可以了
2019-06-08 09:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-495128-1-1.html




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

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