标题:读书挑错(一)
只看楼主
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:15 
说的是这段代码吗?
USE &SHOW_FILE_NAME
DELETE ALL
PACK
APPEND FROM show.dbf
thisform.Release
CLOSE ALL
这个宏替换语句无问题,问题可能出在SHOW_FILE_NAME的值,可以用MESSAGEBOX()看看或FILE()检测一下。
较高版本的可用名字表达式代替宏:
USE (SHOW_FILE_NAME)
还有清除所有记录最好不要用DELETE ALL、PACK,直接用 ZAP 命令
CLOSE ALL 也不要随便用,释放资源要有目标。

顺便说说,可以利用“代码引用”功能查找项目里面的内容。



[此贴子已经被作者于2015-11-6 15:24编辑过]

2015-11-06 15:21
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1501
专家分:6573
注 册:2010-7-5
得分:0 
回复 6楼 TonyDeng
------------------
這種錯誤,是對事件的觸發次序沒有固定的這一基本特性沒有概念造成的,原先開發這軟件的人本身也是這樣,屬於基礎性問題,查到原因也沒用,不在這個按鈕出問題,就在那個按鈕出問題。
------------------

像我这么基础差的人,也能隐约感觉你说的很有道理。不过,最初也只能跟着别人的项目学东西。

楼主本人其实很谦虚,该服气的时候,肯定服气。所以,应该说“楼主经常不服气。”

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-11-06 15:26
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1501
专家分:6573
注 册:2010-7-5
得分:0 
回复 11楼 吹水佬
恩,逐步调试,,,忘了这个了

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-11-06 15:30
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1501
专家分:6573
注 册:2010-7-5
得分:0 


程序代码:
FILE_NAME=ALLTRIM()
    IF FILE("show.dbf")
        DELETE FILE show.dbf
    ENDIF
SELECT * FROM &FILE_NAME INTO TABLE show.dbf
CLOSE ALL

SHOW_FILE_NAME=FILE_NAME
MESSAGEbox(show_file_name)
DO FORM 输入数据


传到输入数据表单init事件,还可以赋值给label1
thisform.label1.Caption=SHOW_FILE_NAME

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-11-06 15:53
不懂才问
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:大草原
等 级:贵宾
威 望:29
帖 子:1501
专家分:6573
注 册:2010-7-5
得分:0 
程序代码:
*!*    aaa=&SHOW_FILE_NAME+".DBF"
*!*    MESSAGEBOX(aaa)
USE (SHOW_FILE_NAME)
DELETE ALL
PACK
APPEND FROM show.dbf
thisform.Release
CLOSE ALL


用括号的  提示找不到变量

想先用个变量  把这个全局变量后面加上字符串.dbf
。。。用加号还连接不上

报告老师,我低头不是因为我在装低调,是你问的问题,我真的不会答,,,
2015-11-06 15:57
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
得分:15 
这里的宏起什么作用的
2015-11-06 16:02
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:0 
還真有點令狐衝的口吻,呵呵~

授人以渔,不授人以鱼。
2015-11-06 16:12
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
以下是引用不懂才问在2015-11-6 15:57:17的发言:

*!*    aaa=&SHOW_FILE_NAME+".DBF"
*!*    MESSAGEBOX(aaa)
USE (SHOW_FILE_NAME)
DELETE ALL
PACK
APPEND FROM show.dbf
thisform.Release
CLOSE ALL

用括号的  提示找不到变量

想先用个变量  把这个全局变量后面加上字符串.dbf
。。。用加号还连接不上

这段代码是表单中某控件的过程代码,SHOW_FILE_NAME是表单外部变量,对表单中的控件内部不透明。
可以在表单的Init中将SHOW_FILE_NAME的值保存到表单的一个自定义属性,这样在表单任何地方都可以引用这个属性(SHOW_FILE_NAME的值)。

[此贴子已经被作者于2015-11-6 16:22编辑过]

2015-11-06 16:20
wcx_cc
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:52
帖 子:352
专家分:1152
注 册:2015-10-2
得分:15 
表关了?  因为‘输入数据的表单’,GRID 缺少支持表。
编程中有个禁忌:表单中如果有 grid, 不能随便使用 close all !!
 
2015-11-06 19:30
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:15 
以下是引用wcx_cc在2015-11-6 19:30:20的发言:

表关了?  因为‘输入数据的表单’,GRID 缺少支持表。
编程中有个禁忌:表单中如果有 grid, 不能随便使用 close all !!
 

不仅仅是这样。在程序没有结束之前也千万不要随意使用close all!否则很可能将其他正在使用或者即将要使用表、表单都关闭了。

活到老,学到老! http://www. E-mail:hu-jj@
2015-11-06 20:00



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




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

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