注册 登录
编程论坛 VFP论坛

无法由表单中选定的字段生成表文件

王咸美 发布于 2021-07-31 13:51, 1790 次点击
我在运行打印表单时遇到一个问题:无法由表单中选定的字段生成表文件temp_table1.dbf,请高手赐教,万分感谢!!!
只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录


下列代码如何修改,盼指点!
field_num=thisform.list2.ListCount
field_Str=" "
FOR i=1 to field_num
  IF i<>field_num
     field_Str=field_Str+thisform.list2.List(i)+","
  ELSE
     field_Str=field_Str+thisform.list2.List(i,1)
  ENDIF
ENDFOR
IF .not.empty(field_Str)
  SET FIELDS to &field_Str
  COPY TO temp_table1
  SET FIELDS off
  use temp_table1 IN 0
  
ELSE
  yn=MESSAGEbox("没有选择字段,是否重选?",4+32,"停息窗口")
  IF yn#6
     thisform.Release()
  ENDIF
ENDIF
6 回复
#2
sdta2021-07-31 14:59
只有本站会员才能查看附件,请 登录
#3
王咸美2021-07-31 16:55
下列代码用在表单的方法程序中出现错误
lcStr = ""
FOR lnj = 1 TO Thisform.list2.ListCount
    lcStr = lcStr + "," + Thisform.list2.list(lnj)
ENDFOR
lcStr = SUBSTR(lcStr, 2)
SELECT &lcStr FROM temp INTO CURSOR tabname

只有本站会员才能查看附件,请 登录
#4
sdta2021-07-31 17:03
VFP9环境下运行没有问题
#5
王咸美2021-07-31 17:54
下列表单单击“简易报表”和“FRX报表”会出现上面的问题。盼指点。
只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录



#6
王咸美2021-08-01 08:19
问题已解决,上述代码修改如下:
field_num=thisform.list2.ListCount
field_Str=" "
FOR i=1 to field_num
    IF i<>field_num
      field_Str=field_Str+Thisform.list2.list(i)+ ","
    ELSE
     field_Str=field_Str+Thisform.list2.list(i)
   endif
ENDFOR

IF .not. empty(field_Str)
  COPY TO temp_table1 fields &field_Str
  use temp_table1 IN 0
  SELECT temp_table1
ELSE
   yn=MESSAGEbox("没有选择字段,是否重选?",4+32,"信息窗口")
   IF yn#6
     thisform.Release()   
   ENDIF
ENDIF
#7
sdta2023-02-01 12:48
看下置顶的帖子年限限制
1