PROGRESS编程.docVIP

  • 16
  • 0
  • 约7.92万字
  • 约 20页
  • 2016-12-01 发布于河南
  • 举报
PROGRESS编程

PROGRESS编程 PROGRESS编程 COPY自,:/blog/static/330866842010111113325126/ PROGRESS编程其实很简单(一) 一、变量定义。 变量必须在第一次被使用之前定义,可以定义在程序的任何地方!但是通常为了增加程序的可读性,变量定义都放在程序的开始处!以下是变量定义的几个实例: define,variable,str01,as,string,label,DemoString,initial,hello. def,var,str02,like,str01. def,var,dt01,as,date,extent,5. def,var,inte01,as,inte,format,9. 说明,第一行: str01,是变量名,,变量名不要与系统关键字重复,字符或者下划线开头,比如strModel,_Model,; string,表示变量类型,本例指字符型变量,其它类似的比如integer,date,logical等,; label,就是后续程序中对变量的描述,比如需要用户输入这个变量值时,系统提示“DemoString,; initial,变量的初始值 第二行: def和var都是简写,def是define的简写,var是variable的简写;PROGRESS支持语法简写,但是初学者最好先写全,后面有经验了再简写。 like和as的不同点是:as后面直接说明变量类型,而like后面跟另外一个变量或者字段。 第三行: extent,5,,表示该变量是数组变量。,, 第四行: format,9,,,变量格式 指定变量的格式一个最大的好处就是预留宽度,这个对变量的输入或者报表的输出都很有用的。 比如年份的宽度一定是4位的,那么你就可以指定格式,format,9999。 PROGRESS程序每行结束必须有个“.”号!!! 二、注释。 注释就是用/*,,,...,,,*/,,可以嵌套,比如 /*注释1 ,,,/*,注释2,*/ ,,,*/ ,,, 三、记录的显示。 如果进入PROGRESS编程模式以后连接了数据库,那么直接显示记录的值即可,比如: for,each,TABLE_NAME: ,,,,,display,TABLE_NAME. end. /*显示TABLE_NAME所有字段所有记录*/ 或者: find,first,TABLE_NAME. display,TABLE_NAME. /*显示TABLE_NAME第一条记录所有字段的值*/ 通常显示记录值都是采用这2种方式!当然,可以按要求显示特殊的字段,比如: for,each,pt_mstr,where,pt_model,begins,E,no-lock,break,by,pt_price: ,,,,,disp,pt_model,pt_price. end. 这个程序看起来真的很容易明白,简单说明: 1、where,后面带条件,比如,=,,,,,,=,=,等等,这种关系符,对数字、日期或者字符串,都适用; 关于条件的几种组合举例: 条件1,and,条件2 (,条件1,,,or,条件2)and,(条件3,or,条件4) not,条件1 2、no-lock,这是关键字,你只要记住: 如果接下来的程序要对记录进行修改,那么不能加no-lock,如果不要,请加上no-lock; 3、break,by,,就是按某个字段排列,默认是按这个字段的升序,如果降序则后面加上,desc,比如: break,by,pt_price,desc。 如果需要多次排列,那么by几次就可以,比如: break,by,pt_price,by,pt_date, 另外一个常用的显示或者更新记录的语句是find!比如: find,pt_mstr,where,pt_model,=,mainboard,no-lock,no-error. find,first,pt_mstr,where,pt_price,=,10,no-error. find,last,pt_mstr,where,pt_price,=,10,no-error. 说明: 1、where后面的条件跟for,each语句类似; 2、no-lock的作用跟for,each的no-lock也是一样的; 3、no-error,通常是find就加上,否则如果找不到满足条件的记录,系统会出错误提示;而实际上,通常需要在程序自己判断结果; 4、find,first,就是定位第一天满足条件的记录;find,last,定位最后一条满足条件的记录; 4、还有一种叫find,next,就是定位当前记录的下一条; 5、find,和,find,first,/,find,last,不同的是,find后面带的条件,通常是满足TABLE的某个

文档评论(0)

1亿VIP精品文档

相关文档