“报表中包含嵌套错误”怎么解决
在一个程序中,点击一个菜单后弹出一个报表,没有关这个报表窗口,然后再点击该菜单,弹出“报表中包含嵌套错误”,怎么解决,谢谢 问题点数:100、回复次数:16Top
1 楼apple_8180(十豆三)回复于 2004-09-04 11:19:47 得分 20
你一个工作区内打开了两次报表,应该关闭后,再打开。Top
2 楼apple_8180(十豆三)回复于 2004-09-04 11:27:41 得分 0
你一个工作区内打开了两次同一个报表。
解决:
第次打开一个表单或者报表,然后菜单就设为不可点击(即灰显)。然后只有退出此表单或者报表后,才以点其它菜单。Top
3 楼luoshengxjtu()回复于 2004-09-04 11:31:35 得分 0
我已经把该报表设为Modal了,但是没有用,菜单还是有效得,所以可以再次点击。
Top
4 楼apple_8180(十豆三)回复于 2004-09-04 11:57:43 得分 0
用VFP8编译菜单和工程,以上功能为自动。vfp6.0需设置菜单的SKIP选项Top
5 楼luoshengxjtu()回复于 2004-09-04 12:48:15 得分 0
什么意思?不懂Top
6 楼apple_8180(十豆三)回复于 2004-09-04 13:28:56 得分 0
你看一看帮助中有关Menu(菜单)的介绍。Top
7 楼apple_8180(十豆三)回复于 2004-09-04 17:24:41 得分 0
要不这样,你不要直接通过菜单打印报表,而是点击菜单时执行一个表单,在这个表单上建一个打印按钮,然后由这个打印按钮来打印。
但是这个表单的ShowWindows要设为1(即在顶层表单中),WindowType要设为1Top
8 楼JohnShen(因果网)回复于 2004-09-04 18:30:26 得分 0
楼上的也许走入了一个误区,不能解决问题。
请看错误含义:
报表中包含嵌套错误。(错误 1645)
在报表表单中的用户自定义函数调用了 REPORT FORM 命令。
因此楼主需要检查你的自定义函数是否调用了 REPORT FORM 命令。
Top
9 楼JohnShen(因果网)回复于 2004-09-04 18:36:21 得分 0
不知道楼主调用report form的命令语句是怎么写的?
如果是
Report Form 报表 preview
只要没有加Nowait参数,这种情况下,将以模式方式打开,菜单将不可用。
Top
10 楼luoshengxjtu()回复于 2004-09-05 00:12:25 得分 0
我写的命令如下:
Report Form 报表 preview
但是不是模式方式打开的,菜单还是有效Top
11 楼JohnShen(因果网)回复于 2004-09-05 12:31:17 得分 0
你试试在命令窗口中执行:
Report Form 报表 preview
看看vfp的菜单是否有效?Top
12 楼luoshengxjtu()回复于 2004-09-05 14:25:48 得分 0
那样做,vfp的菜单肯定是无效的
我的是在一个顶层表单的菜单中,打开的
菜单的命令是:Report Form 报表 preview
弹出的报表是非模式的。Top
13 楼JohnShen(因果网)回复于 2004-09-05 16:10:00 得分 0
我刚刚试了一下,你需要修改你的菜单结构,将你的打印菜单项不要放在菜单的一级菜单中,放在一级菜单的子菜单中(即二级菜单)中就可以被屏蔽了。
另外,我所说的“楼上的也许走入了一个误区,不能解决问题。”是有问题的,apple_8180(十豆三)的分析是正确的。Top
14 楼luoshengxjtu()回复于 2004-09-05 17:24:23 得分 0
我放就是二级菜单中。结构如下:
打印
...预览XXX表
...预览YYY表
...预览ZZZ表
Top
15 楼JohnShen(因果网)回复于 2004-09-05 17:36:42 得分 0
那就奇怪了。。。Top
16 楼JohnShen(因果网)回复于 2004-09-05 18:47:19 得分 80
重作了一下测试,Report Form 报表 preview语句打开的预览窗口肯定是模式的,但对于在顶层表单中的菜单无效,如果菜单在系统菜单中便有效。
解决办法:
1、设置一全局变量glModal,初始值为.F.
2、建一全局过程MyReport,过程代码为:
Procedure MyReport
Parameter cReportCommand
glModal = .T.
&cReportCommand
glModal = .F.
EndProc
3、将菜单中调用命令Report Form 报表 preview改为通过上面的过程调用:
MyReport "Report Form 报表 preview"
4、修改菜单.mpr文件,将类似于
DEFINE BAR 1 OF 打印 PROMPT "...预览XXX表"
的语句都在后面添加skip选项,变为
DEFINE BAR 1 OF 打印 PROMPT "...预览XXX表" Skip For glModal
5、okTop




