CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  其他数据库开发 >  VFP

vfp5.0的代码,有些看不懂,对各位是小意思的!

楼主xiaoya_424()2004-11-04 10:44:32 在 其他数据库开发 / VFP 提问

absolute_path=sys(16)   &&读取绝对路径的可执行文件名  
  ni=len(absolute_path)-rat('\',absolute_path)  
  public_path=left(sys(16),len(allt(sys(16)))-ni)&&&获取运行路径  
  set   defa   to   &public_path  
  release   ni  
  winname="数据管理系统-----销售部"  
  _SCREEN.CAPTION=winname  
  _SCREEN.WINDOWSTATE=2  
  _SCREEN.icon='bmp\axg.ico'  
  _screen.picture='bmp\backwx.bmp'  
  _screen.closable=.f.  
  _screen.visible=.t.  
  set   date   to   mdy  
  set   delet   on    
  set   talk   off  
  set   safe   off  
  set   sysm   to  
  SET   CENT   ON  
  set   hours   to   24  
  set   nulldisplay   to   ''  
  set   excl   off  
  close   all  
  if   !(file('axing.dbc')   and   file('axing.dcx')   and   file('axing.dct'))  
  create   data   axing  
  endif  
  close   all  
  if   dbused('axing')  
      set   data   to   axing  
  else    
    open   data   axing   share  
  endif  
  set   proc   to   prg\rwini.prg.   additi  
  sqlsetprop(0,'displogin',3)   &&&关闭   SQL   登录失败对话框  
  sqlsetprop(0,'transaction',1)   &&&设为自动事物处理  
  PUBLIC   GJB,loginuser,computeruser  
  str_connect="'"+"driver="+rwini('wxxsb.ini','database','driver','sql   server')+";"  
  str_connect=str_connect+"server="+rwini('wxxsb.ini','database','server','wxdata')+";"  
  str_connect=str_connect+"uid="+rwini('wxxsb.ini','database','uid','axg')+";"  
  str_connect=str_connect+"pwd="+rwini('wxxsb.ini','database','pwd','lqs')+";"  
  str_connect=str_connect+"database="+rwini('wxxsb.ini','database','database','sckdata')+"'"  
  *str_connect="'driver=sql   server;server=wxdata;uid=axg;pwd=lqs;database=sckdata'"  
  gjb=sqlstringconnect(&str_connect.)&&&连接服务器数据库  
  if   gjb<=0  
    messagebox('服务器故障==请与计算机中心联系',0,'严重故障:建议检查   数据库   sckdata')  
    close   all  
    cancel  
  endif    
  loginuser='   '  
  computeruser=left(id(),at('#',id())-2)  
   
  do   prg\map_net_disk   &&&映射网络路径  
  create   connection   sckdatalnk   connstring   &str_connect.  
  _SCREEN.CAPTION=winname  
  _SCREEN.comment=winname  
  do   prg\auto_exit_sys.prg   &&&自动退出程序   对应   wxxsb.ini   中message   的信息  
  do   form   frm\order_login   with   '销售部'  
  read   events  
  问题点数:20、回复次数:11Top

1 楼LAIYANGPJ(小丑)回复于 2004-11-04 10:46:39 得分 0

那看不懂啊!Top

2 楼apple_8180(十豆三)回复于 2004-11-04 10:48:03 得分 0

那句看不懂?Top

3 楼xiaoya_424()回复于 2004-11-04 10:57:01 得分 0

sqlsetprop(0,'displogin',3)   &&&关闭   SQL   登录失败对话框  
  sqlsetprop(0,'transaction',1)   &&&设为自动事物处理Top

4 楼xiaoya_424()回复于 2004-11-04 10:58:26 得分 0

ni=len(absolute_path)-rat('\',absolute_path)  
  public_path=left(sys(16),len(allt(sys(16)))-ni)&&&获取运行路径  
  set   defa   to   &public_pathTop

5 楼LAIYANGPJ(小丑)回复于 2004-11-04 11:08:20 得分 5

sqlsetprop(0,'displogin',3)   &&&关闭   SQL   登录失败对话框  
  sqlsetprop(0,'transaction',1)   &&&设为自动事物处理  
  ******************  
  你看一下,SQLSETPROP()函数  
  ********************  
  ni=len(absolute_path)-rat('\',absolute_path)      
  public_path=left(sys(16),len(allt(sys(16)))-ni)&&&获取运行路径  
  set   defa   to   &public_path  
  ***************  
  SYS(16)是返回正在执行的程序文件名带绝对路径  
  下面的LEFT()是从NI文件中取出路径.  
  SET   DEFA   TO   设置默认的驱动器和目录.  
  Top

6 楼apple_8180(十豆三)回复于 2004-11-04 11:31:34 得分 5

指定一个活动连接的设置。  
   
  SQLSETPROP(nConnectionHandle,   cSetting   [,   eExpression])  
  返回值  
  数值型  
   
  参数  
  nConnectionHandle    
  指定由   SQLCONNECT()   返回的、指向数据源的连接句柄。    
  cSetting    
  指定设置,下表列出了   cSetting   的值。   设置   说明    
  Asynchronous   指定结果集合是同步返回   (默认值为“假”(.F.)),还是异步返回(“真”(.T.))。可读写。    
  BatchMode   指定   SQLEXEC()   是一次返回全部结果集合   (默认值为“真”(.T.)),还是用   SQLMORERESULTS()   单个返回结果集合(“假”(.F.))。可读写。    
  ConnectBusy   如果共享连接繁忙,为“真”(.T.);否则为“假”(.F.)。只读。    
  ConnectString   注册的连接字符串。只读。    
  ConnectTimeOut   指定返回一个连接超时错误之前的等待时间   (以秒计算)。如果指定为   0   (默认值),将无限期等待,而不会返回超时错误。ConnectTimeOut   可以从   0   到   600。可读写。    
  DataSource   和   ODBC.INI   文件中相同的数据源文件名。可读写。    
  DispLogin   包含一个数值,决定什么时候显示“ODBC   注册”对话框。DispLogin   可以设定为下列值:1   或   DB_COMPLETE(在   FOXPRO.H   中定义)。  
  1   是默认值。2   或   DB_PROMPT(在   FOXPRO.H   中定义)。3   或   DB_NOPROMPT(在   FOXPRO.H   中定义)。如果指定为   1   或   DB_COMPLETE,则当需要的信息未得到时,总是显示“ODBC   注册”对话框。如果指定为   2   或   DB_PROMPT,则总是显示“ODBC   注册”对话框,允许连接前更改设置。如果指定为   3   或   DB_NOPROMPT,则不显示“ODBC   注册”对话框并且当所需要的注册内容不可用时,Visual   FoxPro   产生一个错误。可读写。    
  DispWarnings   DispWarnings   指定要显示一个错误信息   (“真”(.T.)),还是不显示一个错误信息   (“假”(.F.),默认值)。可读写。    
  IdleTimeout   以秒计算的空闲超时间隔。在指定的时间间隔之后,活动的连接成为不活动的,默认值是   0   (无限期等待)。可读写。    
  ODBChdbc   内部   ODBC   连接句柄,外部库文件   (FLL文件)   在调用   ODBC   时使用该句柄。只读。    
  ODBChstmt   内部   ODBC   语句句柄,外部库文件   (FLL文件)   在调用   ODBC   时使用该句柄。只读。    
  PacketSize   连接所用的网络包的大小,调整该值可以改善性能。默认值是   4096   字节   (4K)。可读写。    
  Password   连接口令。只读。    
  QueryTimeOut   指定在返回一般超时错误之前等待的时间   (以秒计算)。如果指定为   0,将无限期等待而不会返回超时错误。QueryTimeOut   可以是   0   到   600,默认值是   15。可读写。    
  Shared   指定是否基本的连接是否是共享连接   (真   (.T.)),   或不是   (假   (.F.))。    
  只读。  
     
  Transactions   包含一个数值,该数值决定连接如何管理远程表上的事务处理。Transactions   可以设定为下列值:1   或   DB_TRANSAUTO(在   FOXPRO.H   中定义)。  
  1   是默认值,自动处理远程表的事务。2   或   DB_TRANSMANUL(在   FOXPRO.H   中定义)。通过   SQLCOMMIT()   和   SQLROLLBACK()   人工处理事务。可读写。    
  UserId   用户标识。只读。    
  WaitTime   在   Visual   FoxPro   检查   SQL   语句是否结束执行之前延迟的以毫秒计的时间值。默认值是   100   毫秒。可读写。    
   
  eExpression    
  对   cSetting   标明的设置指定值。如果省略了   eExpression   参数,则还原成设置的默认值。    
  备注  
  如果调用成功,SQLSETPROP()   返回   1;否则,如果发生连接级错误则返回   -1,发生环境级错误则返回   -2。  
   
  使用   SQLSETPROP()   在连接级上指定设置。若要在环境级指定   Visual   FoxPro   默认设置,用   0   作为连接句柄。  
   
  ConnectTimeOut   选项只能在   Visual   FoxPro   级上设置,而不能在连接级上使用。所有其他选项既可在连接级,也可在   Visual   FoxPro   级上进行设置,每个在   Visual   FoxPro   级的设置作为随后连接的默认值。  
   
  可用   SQLGETPROP()   返回指定设置的当前值  
   
  注意       ODBC   登录对话框必须禁止来支持   SQL   pass   through   和   Microsoft   Transaction   Server。使用   SQLSETPROP(cConnectionHandle,   'DispLogin',   3)   来禁止   ODBC   登录对话框。ODBC   登录对话框也可以在   连接设计器   中禁止。  
  示例  
  SQLSETPROP()   用于为当前连接设置数据包大小。  
   
  *   清除环境  
  CLOSE   ALL  
  CLEAR   ALL  
  CLEAR  
   
  *   显示选定连接或数据源对话框  
  *   来选择一个连接  
  nHandle=SQLCONNECT()  
   
  *   测试连接,   报告结果  
  IF   nHandle   >   0  
        *   Set   PacketSize  
        nSet=SQLSETPROP(nHandle,   "PacketSize",   2048   )  
        *   测试设置并显示结果  
        IF   nSet   >   0  
              =MESSAGEBOX("PacketSize   是设置为   2048",0,"连接结果")  
        ELSE  
              =MESSAGEBOX("错误设置   PacketSize",0,"连接结果")  
        ENDIF  
  ELSE  
        =MESSAGEBOX("无连接",0,"连接结果")  
  ENDIF  
  =SQLDISCONNECT(nHandle)  
  Top

7 楼apple_8180(十豆三)回复于 2004-11-04 11:33:18 得分 5

RAT函数:  
  --------------------------  
  返回一个字符表达式或备注字段在另一个字符表达式或备注字段内第一次出现的位置,从最右边的字符算起。  
  RAT(cSearchExpression,   cExpressionSearched   [,   nOccurrence])  
  返回值  
  数值型  
  参数  
  cSearchExpression    
  指定   rat(   )   函数要在   cExpressionSearched   中搜索的字符表达式。    
  cExpressionSearched    
  指定   rat(   )   函数搜索的字符表达式。字符表达式   cSearchExpression   和   cExpressionSearched   可以是任意大小的备注字段。    
  nOccurrence    
  指定   rat(   )   函数在   cExpressionSearched   中从右到左搜索   cSearchExpression   的第几次出现时的位置。默认时,rat(   )   函数搜索   cSearchExpression   的最后一次出现   (nOccurrence=1)   时的位置。如果   nOccurrence   等于   2,rat(   )   函数将搜索倒数第二次出现的位置,依此类推。    
  备注  
  与   AT(   )   函数相反,rat(   )   函数在字符表达式   cExpressionSearched   中从右到左搜索另一个字符表达式   cSearchExpression   最近一次出现的位置。  
  rat(   )   函数返回一个整数,该整数指示   cSearchExpression   的第一个字符在   cExpressionSearched   中的位置。如果在   cExpressionSearched   中没有找到   cSearchExpression,或者   nOccurrence   大于   cSearchExpression   在   cExpressionSearched   中的出现次数,那么   rat(   )   函数返回   0。  
   
  rat(   )   函数执行的搜索区分大小写。  
  示例  
  STORE   'abracadabra'   TO   string  
  STORE   'a'   TO   find_str  
  CLEAR  
  ?   RAT(find_str,string)     &&   显示11  
  ?   RAT(find_str,string,3)     &&   显示6  
   
   
  ------------------------  
  返回正在执行的程序文件名。  
   
  SYS(16   [,   nProgramLevel])  
  返回值  
  字符型  
   
  参数  
  nProgramLevel    
  指示从第几层嵌套中获取程序名。该值范围可以   1   变化到程序嵌套的层数。    
  如果   nProgramLevel   是   0   或   1,SYS(16)   返回主程序名(第一个执行的程序);如果省略了   nProgramlevel   参数,那么返回当前正在执行的程序名;如果   nProgramlevel   参数大于程序嵌套深度,则返回一个空串。    
   
  备注  
  如果要从错误中恢复过来,该函数很有用。SYS(16)   与   PROGRAM()   相似,然而,SYS(16)   返回带路径的程序名,而   PROGRAM()   只返回程序名。  
   
  如果正在执行一个过程或函数,SYS(16)   在过程或函数名之后返回包含该过程或函数的文件名。  
   
  当正在执行的程序是应用程序   (.APP)   的一部分,那么   SYS(16)   只返回程序名(路径不和程序名一起返回)。  
   
  示例  
  在下面的小程序示例中返回程序嵌套数目:  
   
  STORE   1   TO   gnX  
  DO   WHILE   LEN(SYS(16,gnX))   !=   0  
        ?   SYS(16,gnX)  
        STORE   gnX+1   TO   gnX  
   
  Top

8 楼apple_8180(十豆三)回复于 2004-11-04 11:35:07 得分 5

从字符表达式最左边一个字符开始返回指定数目的字符。  
  LEFT(cExpression,   nExpression)  
  返回值  
  字符型  
  参数  
  cExpression    
  指定字符表达式,left(   )   函数从中返回字符。    
  nExpression    
  指定从字符表达式中返回的字符个数。若   nExpression   的值大于   cExpression   的长度,则返回字符表达式的全部字符。如果   nExpression   为负值或   0,则返回空字符串。    
  left(   )   函数与起始位置为   1   的   SUBSTR(   )   函数是等价的。    
  示例  
  CLEAR  
  ?   LEFT('Redmond,   WA',   4)     &&   显示Redm  
  ------------------------------------------------  
   
   
  指定默认的驱动器、目录或文件夹。  
   
  SET   DEFAULT   TO   [cPath]  
  参数  
  cPath    
  指定下列参数    
  驱动器指示符。    
  含目录名称或文件夹名称的驱动器指示符。    
  子目录名称或文件夹名称。    
  使用   MS-DOS   速记符号(\   或   ..)的上述各项。    
  备注  
  在   Visual   FoxPro   中,SET   DEFAULT   将默认目录设置为指定的目录。  
   
  Visual   FoxPro   在默认的   Visual   FoxPro   目录或文件夹中搜索文件。默认的目录或文件夹就是启动   Visual   FoxPro   的目录或文件夹。不过,可以在启动程序或   Visual   FoxPro   配置文件中指定一个不同的默认目录或文件夹。如果   Visual   FoxPro   不能在默认的目录或文件夹中找到文件,Visual   FoxPro   接着搜寻   Visual   FoxPro   路径(如果指定的话)。要指定   Visual   FoxPro   路径,可使用   SET   PATH。  
   
  如果创建文件时没有指定保存位置,则该文件会保存到   Visual   FoxPro   的默认目录或文件夹中。  
   
  在多线程服务程序中,   SET   DEFAULT   影响整个进程。也就是说,   如果你实例了多个线程,   并且你在一个线程中使用了   SET   DEFAULT   TO   "MYDIR",   它影响所有的线程和对象载入的进程。  
   
  当退出   Visual   FoxPro   时,将返回   Windows   中。当退出   Windows   时,将返回到启动   Windows   时所在的目录下。  
   
  提示       SYS(5)   返回默认驱动器。SYS(2003)   返回没有驱动器指示符的默认目录或文件夹,SYS(5)+SYS(2003)   返回默认的驱动器及目录或文件夹。  
  使用下面命令可以将默认驱动器设置为驱动器   A:  
   
  SET   DEFAULT   TO   A  
  SET   DEFAULT   TO   A:  
  可以指定一个特定的目录:  
   
  SET   DEFAULT   TO   A:\sales  
  SET   DEFAULT   TO   C:\sales\data  
  可以指定子目录。如果在驱动器   C   上的根目录是默认的   Visual   FoxPro   目录,发出下面命令能够将默认目录设置为   C:\SALES:  
   
  SET   DEFAULT   TO   sales  
  可以使用   MS-DOS   速记符号。如果当前目录是   C:\SALES\DATA,发出下面命令可将根目录设置为默认目录:  
   
  SET   DEFAULT   TO   \  
  也可以使用下面命令将默认目录设置为上一层父目录:  
   
  SET   DEFAULT   TO   ..  
  Top

9 楼LAIYANGPJ(小丑)回复于 2004-11-04 12:12:55 得分 0

十豆三还有吗?顶一下......Top

10 楼apple_8180(十豆三)回复于 2004-11-04 12:26:07 得分 0

没有了,多谢!!!  
  Top

11 楼xiaoya_424()回复于 2004-11-04 13:17:24 得分 0

谢谢!Top

相关问题

  • 这几天多谢大家帮助,这点小意思,请各位大侠收下
  • 小问题,小意思
  • 小问题,小意思!
  • 见面礼!兄弟我刚刚入道VC,希望各位大虾以后多多指教,小小意思,不成敬意!
  • 小小意思,不成敬意!!
  • 一点儿小意思,请willyhan笑纳。
  • 一点小意思!!!看看就算了!!:)
  • 小问题了,小意思了,送分了!
  • itjune辛苦了,这是我的一点小意思,请笑纳。
  • 业务员,这是点小意思!请笑纳~

关键词

  • 函数
  • 字符
  • 文件夹
  • foxpro
  • 执行
  • 字段
  • 指示
  • 表达式
  • cexpressionsearched
  • csearchexpression

得分解答快速导航

  • 帖主:xiaoya_424
  • LAIYANGPJ
  • apple_8180
  • apple_8180
  • apple_8180

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo