VFP常用命令及用法实例jinhechen

ALL:命令对表中所有记录起作用,即执行时从首记录到末记录,最记录指针停在数据库的末尾。NEXT命令作用于从当前记录开始到当前记录后条记录为止的范围内的记录,最后记录指针指向作用范围内的最后一条记录处。NEXT1表示仅作用于当前记录。Record命令作用于记录号为的记录。TEST命令作用范围从当前记录开始到表的最后一个记录为止

命令中的FOR子句只作用于满足条件的记录。

一、基本命令

1.打开和关闭数据表USE[<数据表名>]当省略选项时为关闭当前数据表CLOSEALL关闭所有数据表

2.选择当前工作区SELECT<工作区号|数据表名|0>功能:选择当前工作区。可以直接选择工作区号,也可通过指定其中已经打开的数据表别名来指定工作区。SELECT0是选择当前未使用的最低编号的工作区

3.增加记录APPENDBLANK在当前表的尾部追加一个空白记录INSERTBLANK在当前表的当前记录之后插入一条空白记录INSERTBLANKBEFORE在当前表的当前记录之前插入一条空白记录注意:在表建立索引后,INSERT的功能与APPEND相同

4.替换字段的值REPLACE[范围]<字段1>WITH<表达式1>[,<字段2>WITH<表达式2>,...<字段n>WITH<表达式n>][FOR]功能:计算表达式的值,并填入指定字段,当范围和条件选项省略时只对当前记录操作。

5.删除记录DELETE[范围][FOR条件]功能:对记录加删除标记(即逻辑删除),当范围和条件选项省略时只对当前记录操作。

RECALL[范围][FOR条件]功能:对记录去除删除标记(即恢复删除),当范围和条件选项省略时只对当前记录操作。

PACK功能:删除带有删除标记的记录

ZAP功能:物理删除当前表所有记录

6.建立索引与选择主控索引INDEXON<关键字表达式>TAG<索引标识符>[DESCENDING]功能:对当前表按<关键字表达式>建立结构复合索引,索引文件名与表名相同,扩展名默认为CDX。DESCENDING选项为按关键字降序排列,默认为升序。

SETORDERTOTAG<索引标识符>功能:在结构复合索引文件打开后,指定主控索引标识符。

7.记录指针定位GOBOTTOM|TOP|功能:移动记录指针直接指定记录。BOTTOM为指向末记录,TOP为指向首记录,为指向记录号为的记录。

SKIP[expN]功能:按expN的值,从当前位置出发移动记录指针。当expN为正时向尾部方向移动expN条记录,当expN为负时向首部方向移动expN条记录,当expN为1时可以省略。

8.查找LOCATE[范围][FOR条件]功能:在数据表的指定范围中搜索满足条件的第一个记录。搜索成功,记录指针指向该记录,并将FOUND()置为.T.;否则,记录指针指数据表末尾,并将FOUND()置为.F.。<范围>缺省为ALL。

CONTINUE功能:查找下一个满足LOCATE命令指定条件的记录,查找成功,将FOUND()置为.T.并将指针指向满足条件的记录;否则,记录指针指数据表末尾,将FOUND()置为.F.。

9.数据表复制COPYTO<文件名>[范围][FIELDS<字段名表>][FOR条件]功能:把已打开的表内容复制到新的表中。<范围>缺省值为ALL。<字段名表>规定了新表字段,缺省为全部字段。

COPYSTRUCTURETO<文件名>[FIELDS<字段名表>]功能:把当前表的结构复制到新的表中。不复制记录。<字段名表>规定了新表字段,缺省为全部字段。

10.统计COUNT[范围][FOR条件]TO<内存变量>功能:统计表中满足条件的记录个数,并存入指定的内存变量。<范围>缺省时为ALL

SUM[表达式表][范围][FOR条件]TO<内存变量表>功能:统计表中全部的或指定数值字段的值的和,并各个和存入指定的内存变量,内存就是的个数求和的数值表达式个数相同。<范围>缺省时为ALL

AVERAGE[表达式表][范围][FOR条件]TO<内存变量表>功能:统计表中全部的或指定数值字段的值的平均,并各个和存入指定的内存变量,内存就是的个数求和的数值表达式个数相同。<范围>缺省时为ALL

二、函数1.数学函数ABS(expN)功能:求数值表达式的绝对值。

INT(expN)功能:对数值表达式expN取整数部分

ROUND(expN,Dec)功能:对数值表达式expN精确到小数点后Dec位。

2.字符函数SUBSTR(expC,expN1,expN2)功能:取字符串expC中从expN1开始的expN2个字符,若expN2省略,则从expN1开始一直取到最后。

TRIM(expC)功能:取掉字符串expC的尾部空格。

ALLTRIM(expC)功能:取掉字符串expC首尾的空格。

SPACE(expN)功能:产生expN个空格。

UPPER(expC)功能:将字符串expC转换成大写。

LOWER(expC)功能:将字符串expC转换成大写。

expC1$expC2功能:判断字符串expC1是否在expC2中出现,若出现则值为.T.,否则为.F.。

3.日期函数DATE()功能:获取系统日期。

4.类型转换VAL(expC)功能:将数字字符值转换成数值,如:VAL('123.45')的值为数值123.45

STR(expN[,宽度[,小数位数]])功能:将数值转换成字符串,当小数位数省略时不带小数,当宽度和小数位数都省略时宽度为10不带小数。

DTOC(expD)功能:将日期表达式expD转换成字符表达式,格式与系统日期格式一致。

DTOS(expD)功能:将日期表达式expD转换成字符表达式,格式为YYYYMMDD,前4位为年份中间2位为月份最后2位为日。

CTOD(expC)功能:将符合当前系统日期格式的字符串转换成日期值。

5.测试函数FOUND()功能:测试当前的查找(SEEK,LOCATE,CONTINUE)是否成功。查找成功函值为.T.否则为.F.。

EOF()功能:测试当前记录指针是否到了数据表的末尾。当在末尾时函数为.T.否则为.F.。

RECNO()功能:返回当前记录号。

我的主程序代码:main.prgDECLAREINTEGERFindWindowINWIN32APISTRING,STRINGLOCALcTitlecTitle="工资管理系统"IFFindWindow(0,cTitle)<>0=MESSAGEBOX("该系统已运行,无需重复!",48,"错误信息")QUITENDIFCLEARSCREENCLEARCLOSEALLCLEARALLSETTALKOFFSETSYSMENUOFF&&使主菜单条不能被访问SETSYSMENUTO&&关闭主菜单条SETTALKOFF&&关闭对话框SETSTEPOFFSETECHOOFFSETSAFETYOFF&&文件替换时不确认SETDELETEDON&&隐藏带删标记的记录SETOPTIMIZEON&&使用优化技术SETCENTURYON&&年月日显示格式为4位,SETDATETOANSI&&日期格式为“年-月-日”SETMARKTO"-"&&设置年月日之间的分隔符

ONERRORDOerrhandWITHERROR(),MESSAGE(),MESSAGE(1),PROGRAM(),LINENO()&&在编译成exe文件时要使用RELEASEWINDOW常用RELEASEWINDOW表单设计器

READEVENTSQUIT

PROCEDUREerrhandPARAMETERmerror,MESS,mess1,mprog,mlineno=MESSAGEBOX("错误代码:"+LTRIM(STR(merror))+",错误信息:"+MESS+"错误代码串:"+mess1+",错误行号:"+LTRIM(STR(mlineno))+",出错程序名:"+mprog+"请退出系统!!!重新运行!!")QUITRETURN如果不要菜单系统可把主表单作为顶层表单时要创建文件config.fpw内容为:sysmenu=offscreen=off然后把该文包含进项目中,就可编译进EXE文件中,不必另外提供退出系统”的按纽见第9点

1、**----------------**saveto[alllike]内存变量保存

yfd=alltrim(ThisForm.Combo1.value)

savetoyf&&将内存中的“所有”变量存入文件yf.mem中savetoyfalllikeyfd&&将内存中所有以yfd匹配的变量存入文件yf.mem中savetoyfalllikeyf*&&将内存中所有以yf打头的变量存入文件yf.mem中2、**-----------------**restorefromrestorefromnf.memadditive&&把内存变量从文件nf.mem恢复,选参数additive项时,不对其它内存变量产生复盖。

3、**-----------------**后台最小化运行RAR.EXE

RUN/n7rara-Ybakfileb*.dbfc*.dbf...&&在后台最小化运行RAR.EXE且不等待。

4、**-----------------**ifbof()=messagebox('到最前一个了!',0,'提示')gototopelseskip-1endif

5、**-----------------**ifeof()=messagebox('到最后一个了!',0,'提示')gotobottelseskipendif6、**-----------------**COPYTOdbk.dbfTYPEXL5数据表复制成xls文件

7、**-----------------**=messagebox('完成!',0,'提示')

8、**------------------**hzdx="零壹贰叁肆伍陆柒扒玖拾佰仟万拾佰仟亿拾佰仟"

9、**------------------**IFMESSAGEBOX("真的退出系统吗?",4+32+256,"提示")=6CLOSEDATABASESclearallcloseallCLEAREVENTSthisform.ReleasequitENDIF

10、**-------------------**表数据更新:update表名SET字段名1=表达式,字段名1=表达式,...WHERE[条件]

11、**--------------------**从其它表取数据:把已有表的记录成批追加到当前表中appendfrom文件名[for条件1][while条件2]

12、**--------------------**ThisForm.grdGzk的refresh&&表格内运算

IFUSED("gzk")replace应发合计with等级工资+责任津贴+奖资+干资+书报+单车+燃料+考勤+临职补贴+;地区津贴+城市补贴+节支奖+奖励工资+清饮+洗理+电费+报刊+粮差+肉菜+;劳保+职务保贴+出纳劳保+保健+医药+家属医药+妇卫+会计补贴+其它replace扣除合计with水电+保险+工会+其他REPLACE结余合计WITH应发合计-扣除合计ENDIF

13、**---------------------**ThisForm.grdGzk的AfterRowColchange&&表格变色

Mcurrec=STR(RECN())&&获取当前所在记录号THIS.SETALL("dynamicbackcolor",'IIF(RECNO()=&Mcurrec.,RGB(145,236,252),RGB(255,255,255))')&&设置背景色,满足条件为黄色,不满足为黑色THIS.SETALL("dynamicforecolor",'IIF(RECNO()=&Mcurrec.,RGB(255,0,0),RGB(0,0,0))',"column")&&设置前景色,满足条件为红色,不满足为白色THIS.REFRESHthis.SetFocus

14、**----------------------**releaseextendedaa_x&&aa_x为内存变量,一定要加上extended,才真正释放

15、**----------------------**数据表到文本usecxjgcopytobtypedeliwith""useusepappendfrombtypedeliwith'|'&&********文本到数据表replallzdwithstuff(zd,1,3,"")&&******对数据表中的字段修改内容REPLallzdWITHSTRTRAN(zd,'m',',')REPLallzdWITHSTRTRAN(zd,'','')

16、**-----------------------**ifempty(ThisForm.Text1.value)=messagebox('文件名不能为空!',0,'提示')ThisForm.Text1.setfocusretuendif

20、**-------------------**public如果有重复调用代码时应在主程序“main.prg”定义全局变量

21、**-------------------**导出xls文件SELEold_tmp

cpath_name=GETFILE('xls','文件名','保存')&&重点

IF!EMPTY(cpath_name)iffile("&cpath_name")=messagebox('文件已存在!请重输新名',0,'提示')elseCOPYTO&cpath_nameTYPEXL5&&重点=messagebox('成功导出为文件'-("&cpath_name")-'!',0,'提示')endifelse=messagebox('文件名不能为空!',0,'提示')retuendif

22、**-------------------**ifnKeyCode=13&&在密码文本框text的KeyPress方法上使“确定”执行thisform.command1.clickendif

23、**-------------------*************表单“释放对象时发生”事件的方法释放内存变量releaseextendedaa_x&&aa_x为内存变量,一定要加上extended,才真正释放

**-------------------**24、用SQL-SCLECT查询生成临时表是不能修改的。

25、数据排序

ifused('gz')selectgzelseusegzin0selectgzendifps_tm=ThisForm.Combo2.valueifThisForm.Optiongroup2.value=1&&升序sorttops_tmpon&ps_tm/A&&按ps_tm的值的字段按升序重排elsesorttops_tmpon&ps_tm/D&&&&按ps_tm的值的字段按降序重排endifselectgzzapappendfromps_tmperaseps_tmp.dbf=messagebox('重新排序完成!要恢复原来请按编号升序排序!',0,'提示')26、向表格添加新记录将表格的AllowAddNew属性设置为“T”用户选择最后一记录按下DOWNARROW键时就添加了新记录;或将AllowAddNew属性设置为“F”使用APPENDBLANK或INSERT添加

27、表格列中加入控件在“属性”窗口的“对象”框中为控件选择列如:选择第二列“Column2”,再选择要加入的控件单击该列,(注:复选框的“Caption=""”)并设该列(Column2)的“Sparse=.F.”该列(Column2)的“数据”的“CurrentControl”选择为刚加入的控件名称即可。28、移去表格中的控件在“属性”窗口“对象”中选择要移去的控件,激活“表单设计器(单击表单设计器上兰横条)”按DELETE键即可.29、SQL查询满足条件的记录生成dbf数据表文件SELECT*FROMfhzWHERESUBSTR(帐号,1,11)=m_JGM+'012'AND组号=m_zuhAND类型=1ORDERBY帐号INTOTABLEprtmp30、设置打印机IFPRINTSTATUS()=.T.=SYS(1037)ELSECHR(7)MESSAGEBOX("请在Windows控制面板下安装打印机!!!",48,"提示信息")RETURNENDIF****************************************************************************************************************************************************************************************************

THE END
1.菜谱Excel表格模板菜谱Excel表格模板下载员工一周菜单安排表Excel模板 16311 机关食堂食谱Excel表格 1049 每周菜单表Excel模板 939 菜单价目表Excel表格 11421 餐厅点菜单Excel模板 624 早餐菜单Excel表格 1117 学校一周营养食谱表Excel模板 355 奶茶饮品店菜单Execl模板 3910 托管中心一周伙食菜单Excel模板 https://m.tukuppt.com/excelmuban/caipu.html
2.一周食谱(表格版)星期 早餐 中餐 晚餐 名称 原料及重量(g) 名称 原料及重量(g) 名称 原料及重量(g) 一 牛奶 牛奶250ml 米饭 粳米150g 米饭 粳米110g 西红柿鸡蛋面 生面条110g 鸡蛋一个 西红柿40g 青菜50g 素烧萝卜 白萝卜150g 手撕包菜 包菜150g 软金汤 金针菇20g http://www.360doc.com/document/24/0714/11/79930059_1128733164.shtml
3.一周食谱计划表.xlsx一周食谱计划表 星期 餐次 菜品安排 星期一 早餐 面包 鸡蛋 豆浆 面包 鸡蛋 豆浆 面包 午餐 红烧肉 甲鱼汤 土豆丝 时蔬 香蕉 红烧肉 甲鱼汤 晚餐 带鱼 苦瓜炒鸡蛋 鸡胸肉 时蔬 苹果 带鱼 苦瓜炒鸡蛋 星期 餐次 菜品安排 星期二 早餐 午餐 晚餐 星期 餐次 菜品安排 星期三 早餐 午餐 晚餐 星期 餐次 菜https://m.book118.com/html/2023/1106/8044073116006003.shtm
4.excel制作动态日历3. 建立excel表格 3.1 B1单元格写入年份 3.2 选中C1单元格-数据-插入下拉列表-添加1月到12月 1月-12月 效果如下: 月份下拉菜单 3.3 同3.2方法在B2单元格建立下拉菜单星期一,星期二星期日 星期下拉菜单 3.4 C2单元格录入公式=UPPER(TEXT(C3,"aaaa"))并拉动公式到H2 https://www.jianshu.com/p/d957e792ce07
5.2021软考信息处理员知识点汇总删除行绝对引用会变吗Word可以打开多个文档窗口,但只有一个窗口是活动窗口 对段落添加项目编号后,用户插入或删除段落,会自动重新进行编号 Word表格菜单下的转换命令可以实现文字与表格的互相转换 Word正常的编辑模式就是在页面视图,可以正常显示图形和图片。 菜单命令右边有表示点击后会弹出一个对话框进行详细设置。 https://blog.csdn.net/qq_42230770/article/details/114098737
6.银符考试题库在线练习27. 在Word的编辑状态,设置了一个由多个行和列组成的空表格,将插入点定在某个单元格内,用鼠标单击“表格”命令菜单中的“选定列”命令,则表格中被“选择”的部分是 。 A.插入点所在的行 B.插入点所在的列 C.一个单元格 D.整个表格 A B C D 28. “开始”按钮,通常位于桌面的 。 A.底行左侧 B.http://www.cquc.net:8089/YFB12/examTab_getExam.action?su_Id=6&ex_Id=36301
7.一级MSOffice考点分析:Excel2000的使用计算机等级(2)单击“编辑”菜单的“移动或复制工作表”命令,出现“移动或复制工作表”对话框。 (3)在对话框的“工作簿”栏中选中目标工作簿,在“下列选定工作表之前”栏中选定在目标工作簿中的 插人位置。 4.插入工作表 一个工作簿默认有3个}_作表.有时不够用,可用如下方法插人新的工作表。 http://3g.566.com/a/58458
8.中国共产党威海市委员会组织部经验交流Word实用技巧50招在排版某些文档时,要在文档中插入一个很宽的表格,需要把纸张改为横向。为了保证表格前后的内容仍为纵向,可以将光标移到表格之前,选择文件菜单中的"页面设置"命令,单击"纸张大小"标签,在"方向"区中选择"横向"单选按钮,从"应用于"下拉列表框中选择"插入点之后"选项,然后单击"确定"按钮。 http://www.whzzb.gov.cn/art/2014/8/8/art_34385_941620.html
9.Excel职场手册:260招菜鸟变达人QQ群号更新为806295411选取单元格,单击菜单数据→数据验证→输入信息→输入要注释的文字,如图1-1-44所示。 图1-1-44 添加后的效果如图1-1-45所示。 图1-1-45 如果有一列数据,需要提醒输入者不能输入大于100的数字,每个单元格插入批注是不现实的,用添加提示的方法则可以完美解决,如图1-1-46所示。 图1-1-46 添加后的效果如图https://www.epubit.com/bookDetails?id=N7369
10.一步步教你用Excel制作工作计划表,可以先感受下效果。首先,为表格添加边框,颜色可以根据个人喜好选择: 进一步,可以为单元格填充颜色并改变字体颜色: 3)添加日期 在右上角添加当天的日期及星期,用函数TODAY实现: 其中,第二个单元格日期需要重新设置单元格格式。 4)设置是否完成下拉菜单 用数据有效性工具为是否完成区域设置下拉菜单,设置选项为:已完成、未完成。 https://weibo.com/ttarticle/p/show?id=2309404460540167586059
11.PyQt5的基本控件整理JustforLife.菜单栏、状态栏、工具栏 菜单栏、工具栏的创建和编辑在QtDesigner里面比较容易实现。用代码实现反而舍近求远。 状态栏的理想是:鼠标在哪里就显示什么信息,但不太好实现。但也不是不能实现,只是学完基本控件还不能实现,需要学一下信号与槽的高级设置。 https://muyuuuu.github.io/2019/10/06/pyqt5-basic/
12.第四章项目基本设置·REDCap最终用户指南(中文版)·看云这个星期病人每天都测血糖吗? 1,是的 0,不是 7777,不知道 8888,拒绝回答 9999,缺失值 B. 反向编码 如果问题有反向评分,则根据值对选择进行编码,除非另有说明。下面是一个示例,其中4是正常编码,而5是相反的: 4. 让我需要有人重新自我定位。 0,对我来说永远不是真的 1,对我来说很少是真的 2,有时对https://www.kancloud.cn/xjtu_sph/redcap_user_guide/1345446
13.下拉词工具64xl.com下拉神器百度PC下拉1.row返回行号函数,row(单元格地址),返回其行号,row(a1)为1,下拉变为row(a2)=2,依次增加 2.now()函数,返回当前日期 3.text函数,根据第二个参数,返回相应的格式,aaaa代表星期几,e代表年,m代表月,d代表日 4. 如何向单元格添加下拉菜单 步骤/方法我们找一个空白位置,建立一个包含所有学院名称的列表。在学http://www.bjhwtx.com/h-nd-201765.html
14.案例分析老王买鸡星期天,老王到农贸市场去买活鸡。临出门时将光标移到当前表格的第一行,然后点击菜单栏的“表格”菜单项中的“插入”菜单,选择“列(在右侧)”菜单,在当前表格右侧插入一列,然后在已插入列的第二行输入“1季度合计”。 C. 将光标移到当前表格的最后一行,然后点击菜单栏的“表格”菜单项中的“插入”菜单,选择“列(在右侧)”菜单,在当前表格https://www.shuashuati.com/ti/dfc3039c28534c659369b26fab9390b4.html?fm=bd992d59ad84defb145216a0052805d989
15.信息技术考试试题库(完整版含答案)173、在WORD中,使用菜单中的“页面设置”命令,可完成纸张大小的设置、页边距的调整工作。( ) A.文件B.编辑C.格式D.工具 174、在WORD中,使用菜单中的“插入表格”命令,可在文档中建立一张空表。() A.编辑B.多插入C.表格D.格式 175、在WORD窗口的文本编辑区内,有一个闪动的粗竖线,它表示。() A.文章结https://www.wjx.cn/xz/161429457.aspx