---- 存在的问题

---- 用VFP生面的执行程序后,对于用户所需的某一数据库的任意字段组合报表,就显得不是那样运用自如。因为,一方面软件开发时,无法考虑到日后用户所需报表的所有格式。另一方面,由于所设计好的报表格式文件已编译成可执行文件,即使修改了.FRX和.FRT文件结构内容,也需在开发环境下重新编译,对用户来讲是不实现的。例如需一份员工名单及一个空栏位,进行签名或登记某一证件号码的问题就比较难解决。

---- 解决方案

---- 运用VFP与Excel 的交换数据及在VFP中全面控制Excel的操作(即自动服务器),就可以很好的解决这一问题。关于如何控制Excel,一方面可以通过Excel的帮助文件的VBA语法,另一方面也有相当多的文章关于控制Excel的语法。值得注意的是:1、为提高效率,所有有关计算、小计、合计最好在VFP中进行,并写在相应的记录内;2、由于是两个软件,如果在有大量数据逐一插入Excel单元格时,显得速度较慢,所以如果数据量较大,应直接用VFP的数据表导出为Excel格式,再由VFP在后台控制Excel打开,并指定的Excel格式文件进行修改文档标题、列的名称、网格线型,以及根据纸张大小计算各列宽和调整字体大小。

---- 实现办法

---- 利用SQL结构化语言的Select生成一个数据表

---- 在Select字段时,可以利用一个表单Form1加入两个列表框,一个列表框列出所有数据表的字段,另一个为空,利用鼠标双击或拖拉至空的列表框里,为选定一字段(此时第一个含有所有字段的列表框中,将不再显示被拖拉走的字段,而在另一列表中显示),并生成相应的Select查询程序段。

---- 在本实例中为:form1中含有一个list1和edit1和两个按钮

Form1.ini

public a,b,c,d,f,g

a="SELECT "

b=""

c=" FROM bn INTO CURSOR myquery"

d=""

f=0

g=0

list1.dblclick

if len(alltrim(b))=0

b=b+thisform.list1.value

else

b=b+","+thisform.list1.value

endif

d=a+b+c

thisform.edit1.refresh

for mm=1 to thisform.list1.listcount

if thisform.list1.selected(mm)

thisform.list1.removeitem(mm)

endif

endfor

command1.click ** 执行所生成的select语句

SELECT &B FROM BN INTO CURSOR MYQUERY

sele myquery

command2.click** 调用excel

my=createobject("excel.application")

my.visible=.t. **如果在交付用户时可以将其设置成 .F.

my.workbooks.add

select myquery

f=fcount()

g=reccount()

goto top

for l=1 to g

for i=1 to f

fieldname=field(i)

** 对于要生成中文的列位标题可以用

一英文字段名称与中文名称对应的参数库来解决

my.activeworkbook.sheets(1).cells(l,i).value=myquery.&fieldname

endfor

skip

endfor

** 如果要增加一空列可以用

my.activesheet.columns(f+1).insert语法

** 设置页眉 my.activesheet.pagesetup.

centerheader (centerfooter)=” xxx”

---- 其它方面的控制可以按上述提到的方法参考

vfp报表纸张设置_vfp教程之Visual Foxpro生成任意打印字段报表的实现相关推荐

  1. vfp报表纸张设置_VFP 9.0中实现多种自定义纸张格式的报表打印

    VFP 9.0 中实现多种自定义纸张格式的报表打印 徐小栋 [期刊名称] <福建电脑> [年 ( 卷 ), 期] 2009(025)001 [摘要] 该文叙述了在 VFP 9.0 开发的应 ...

  2. vfp报表纸张设置_VFP 8.0 中实现多种自定义纸张格式的报表打印(转贴)

    t 摘要:本文叙述了在VFP8.0开发的应用程序中,利用报表设计器设计的各种非WINDOWS标准页面大小的报表,在WIN2000/XP下如何打印的问题.通过在WIN2000/XP的"打印机和 ...

  3. vfp报表纸张设置_JimuReport积木报表 — API数据源报表制作

    积木报表 ,一个开源免费的报表工具,像搭建积木一样在线设计报表!功能涵盖数据报表设计.打印设计.图表设计.大屏设计等! 领先的企业级Web报表平台软件,采用纯Web在线技术,专注于解决企业报表快速制作 ...

  4. vfp报表纸张设置_Excel表格美化十四招,让你的报表不再那么丑

    小伙伴们好啊,今天老祝和大家分享的是一组表格美化技巧. 一个高质量的Excel文档,除了应具备数据准确.易读等特性,还应该有合理的布局结构.清新的色彩搭配以及整洁清晰的版面.这样才能提高数据的展现能力 ...

  5. vfp报表纸张设置_vfp9终结一直以来的打印纸张设置

    文章来源:互联网 ********************************************************* * vfp9终结一直以来关于打印纸张设置 * 过程名称:MyRep ...

  6. 安装教程之Visual C++6.0的安装

    1.下载链接:百度网盘 请输入提取码  提取码:ivos 2.下载完成后,解压进入文件夹 3.选择 AUTORUN.EXE  ,进入到如下界面 4.选择你需要的版本,我选择的是中文版,进入如下界面: ...

  7. 11、借助POI实现Java生成并打印excel报表(2)

    11.POI打印功能 11.1.常用模块形式: 1 HSSFPrintSetup printSetup = sheet.getPrintSetup(); 2 printSetup.setVResolu ...

  8. 10、借助POI实现Java生成并打印excel报表(1)

    10.1.了解 Apache POI 实际开发中,用到最多的是把数据库中数据导出生成报表,尤其是在生产管理或者财务系统中用的非常普遍.生成报表格式一般是EXCEL或者PDF .利用Apache  PO ...

  9. abap al设置单元格可编辑 oo_润乾报表美化设置 -- 样式

    在制作报表时,报表设计人员经常遇到下面这些美化报表的问题: 为什么我做出的报表领导总觉得不好看不满意 美化一张报表要设置太多的格式和属性,那么多报表都得重复设置,真繁琐 系统中不同人做出的报表展现格式 ...

  10. 一步一步实现STM32-FOTA系列教程之FLASH静态区读写

    一步一步实现STM32-FOTA系列教程之FLASH静态区读写 文章系列链接 <一步一步实现STM32-FOTA系列教程之bin文件生成> <一步一步实现STM32-FOTA系列教程 ...

最新文章

  1. 爬虫:通过滑动或者点触验证码的方法及实现(点触+滑动)
  2. tensorflow学习(4.loss函数以及正则化的使用 )
  3. JS特效——鼠标跟随特效——动态背景线条跟随鼠标移动
  4. Socket 编程 windows到Linux代码移植遇到的问题
  5. Mybatis多条件直接查询
  6. Hat’s Words(HDU-1247)
  7. 怎么把c语言变成汇编语言,如何把汇编语言转换成C语言
  8. 谷歌强推 Rust 进驻 Linux 内核,与主要开发者签订合同!
  9. [小工具]取色器gcolor2
  10. 蚂蚁算法matlab
  11. 深度学习——SSR网络配置环境
  12. Cannot mix different versions of joi schemas错误
  13. CDR安装包下载+汉化简体中文版+安装教程
  14. 本题要求编写程序,计算序列 1 + 1/2 + 1/3 + ... 的前N项之和。
  15. linux计划任务如何关闭程序,Linux进程控制和计划任务管理
  16. 织梦系统(DEDECMS)后台模板修改一
  17. csgo被会话踢出什么鬼_csgo莫名其妙就被vac了 打一半vac关闭解决办法
  18. rabbitmq的安装与命令行管理工具rabbitmqadmin的使用
  19. 保姆级教程:基于Docker部署雨中冒险2服务器 雨中冒险2开服
  20. el表达式ne什么意思_EL表达式的基本语法及运算符

热门文章

  1. jQuery源码学习(四)
  2. Aha!设计模式(96)-观察者模式(1)
  3. AI智能电话销售机器人源码搭建部署系统电话机器人源码
  4. 电话机器人源码支持独立部署+图文介绍
  5. MySQL必看书籍推荐
  6. java聊天室项目_JAVA聊天室项目展示.ppt
  7. 川土微 | CA-IS3105W 全集成 DC-DC 转换器
  8. 标签打印软件如何批量打印可变内容
  9. uniapp 条码生成器
  10. Java高级面试题!传智播客java基础入门pdf