函数作用:根据SQL SELECT语句生成数据窗口对象的源代码,通常用于创建动态数据窗
口对象。
函数语法:transaction.SyntaxFromSQL(sqlselect,presentation,err)
transactionobject :事务对象名
sqlselect :string 类型,其值为一条有效的SQL SELECT 语句
presentation :string 类型,指定数据窗口缺省的表现风格
err:string 类型变量,当生成数据窗口源代码发生错误时,该参数用户保存出错信息
返 回 值:String。函数执行成功时返回生成的指定风格数据窗口对象源代码;发生错误时
返回空字符串,此时,err参数指明可能的出错原因。如果任何参数的值为NULL,
则SyntaxFromSQL()函数返回NULL。
使用说明:
当应用程序需要创建动态数据窗口对象时,可以首先使用SyntaxFromSQL()
函数根据SQL SELECT 语句生成数据窗口对象的源代码,然后将源代码传送给
数据窗口控件或数据存储的Create()函数,从而创建动态数据窗口对象。
presentation 参数是个字符串,它使用对象关键字以及属性来指定数据窗口
对象的风格,包括某列的风格、整个数据窗口的风格、数据窗口各区域的风格、
以及数据窗口中文本对象的风格等。presentation 参数中使用的对象关键字包括:
Column
DataWindow
Group
Style
Te x t
Title
其中,Column为列关键字,DataWindow指示数据窗口对象,Group 定义分
组,Text 指示文本对象,Title 指示标题。
presentation 参数的完整语法格式为:
"Style ( Type=value property=value ... )
DataWindow ( property=value ... )
Column ( property=value ... )
Group (groupby_colnum1 Fby_colnum2 ... property ... )
Text (property=value ... )
Title ( 'titlestring' )"
当设计应用系统时定义了数据库表的扩展属性,那么在SyntaxFromSQL()
函数的presentation 参数中指定的字体设置将被忽略。
需要注意的是,如果当前事务对象连接到Microsoft SQL Server 数据库,当
应用程序调用SyntaxFromSQL()函数时,PowerBuilder 不能自动知道数据库表是
否建立了索引,而直接假定为没有建立索引,因此,在执行SyntaxFromSQL()
函数前,应该把事务对象的AutoCommit属性设置为TRUE 。
string ls_Errors, ls_sql
string ls_style, ls_syntax
ls_sql = "SELECT emp_data.emp_id,"&
+ "emp_data.emp_name FROM emp_data "&
+ "WHERE emp_data.emp_salary > 45000"
ls_style = "style(type=grid)"
ls_syntax = SQLCA.SyntaxFromSQL(ls_sql,ls_style,ls_errors)
dw_1.Create(ls_syntax,ls_errors)
dw_1.SetTransObject(SQLCA)
dw_1.Retrieve()