请教高手 如何动态的创建一个数据窗口 提供资料也可给分

hxzb7215191 2003-07-23 09:51:39
我想做一个这样一个数据窗口:


由用户选择在DataWindows上显示的项。如何做到
...全文
32 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
whoknow 2003-07-25
  • 打赏
  • 举报
回复
但是如果是外部数据源的数据窗口那,我要随机增加新列怎么办?
woooaooo 2003-07-24
  • 打赏
  • 举报
回复
同意回复人: mordensir(bubu)
hxzb7215191 2003-07-24
  • 打赏
  • 举报
回复
to takeiteasy(takeiteasy)

我也想过用Visiable来控制,但是这样是不是会使DataWindows窗口出现很多的间隙了。
hxzb7215191 2003-07-24
  • 打赏
  • 举报
回复
好的。谢谢。
runsoft 2003-07-24
  • 打赏
  • 举报
回复
迟到,呵呵,
string error_syntaxfromSQL, error_create

string new_sql, new_syntax
new_sql = 'SELECT emp_data.emp_id, ' &

+ 'emp_data.emp_name ' &
+ 'from emp_data ' &
+ 'WHERE emp_data.emp_salary>45000'

new_syntax = SQLCA.SyntaxFromSQL(new_sql, &
'Style(Type=Form)', error_syntaxfromSQL)

IF Len(error_syntaxfromSQL) > 0 THEN
// Display errors
mle_sfs.Text = error_syntaxfromSQL

ELSE
// Generate new DataWindow
dw_new.Create(new_syntax, error_create)
IF Len(error_create) > 0 THEN
mle_create.Text = error_create
END IF

END IF

dw_new.SetTransObject(SQLCA)

dw_new.Retrieve()
sdav 2003-07-24
  • 打赏
  • 举报
回复
上面的都说了,只有顶一下了;
klbt 2003-07-24
  • 打赏
  • 举报
回复
dw_1.Create(SyntaxFromSQL(sqlca,sql, "Style(Type=Tabular Left_Margin=310", err)
zxthello 2003-07-23
  • 打赏
  • 举报
回复
有了楼上的两个函数,基本可以实现你所需要的,当然,你还可以在环境中右建export出数据窗口的语法,参照这个语法可以知道怎么设置语句参数!
takeiteasy 2003-07-23
  • 打赏
  • 举报
回复
有两种方法实现:

一、做数据窗口的时候,做好包含所有的字段的数据窗口,
然后根据操作者的选择来设定某个字段的visible属性。

二、直接根据操作者的选择,用create方法生成数据窗口,
但是得花精力去处理中文title.
119119 2003-07-23
  • 打赏
  • 举报
回复
动态数据窗口相关函数
SyntaxFromSQL
语法:transaction.syntaxfromsql(string sqlselect,string presentation,string err)return string
功能:根据sqlselect定义的语法和presentation中定义的样式,由pb系统解释sql语法,输入完整的数据窗口的构建脚本,并返回一个信息给参数err.
参数: sqlselect:对应的sql语法,例如: select Table_a.column_a...from Table_a where...;
presentation:表达方式,定义了需要建立的数据窗口 的具体形式;
err:创建时产生的错误信息,如果成功,则返回空串.

Creat
语法:integer dwcontrol.create(string syntax{,string errorbuffer})
功能:根据创建数据窗口的语法,来直接创建一个可视的或非可视的datawindow控间到指定的容器中.
参数:
syntax:由syntaxfromsql所形成的创建语法或手工处理出来的语法;
errorbuffer:创建时发生的问题.
返回:1为成功,-1错误.
eastpond 2003-07-23
  • 打赏
  • 举报
回复
string ERRORS, sql_syntax

string presentation_str, dwsyntax_str

sql_syntax = "SELECT emp_data.emp_id,"&
+ "emp_data.emp_name FROM emp_data "&
+ "WHERE emp_data.emp_salary > 45000"

presentation_str = "style(type=grid)"

dwsyntax_str = SQLCA.SyntaxFromSQL(sql_syntax, &
presentation_str, ERRORS)

IF Len(ERRORS) > 0 THEN
MessageBox("Caution", &
"SyntaxFromSQL caused these errors: " + ERRORS)
RETURN

END IF

dw_1.Create( dwsyntax_str, ERRORS)

IF Len(ERRORS) > 0 THEN
MessageBox("Caution", &
"Create cause these errors: " + ERRORS)
RETURN

END IF
ldq_pb 2003-07-23
  • 打赏
  • 举报
回复
string error_syntaxfromSQL, error_create

string new_sql, new_syntax

new_sql = 'SELECT emp_data.emp_id, ' &

+ 'emp_data.emp_name ' &

+ 'from emp_data ' &

+ 'WHERE emp_data.emp_salary>45000'

new_syntax = SQLCA.SyntaxFromSQL(new_sql, &

'Style(Type=Form)', error_syntaxfromSQL)

IF Len(error_syntaxfromSQL) > 0 THEN

// Display errors

mle_sfs.Text = error_syntaxfromSQL

ELSE

// Generate new DataWindow

dw_new.Create(new_syntax, error_create)

IF Len(error_create) > 0 THEN

mle_create.Text = error_create

END IF

END IF

dw_new.SetTransObject(SQLCA)

dw_new.Retrieve()
mordensir 2003-07-23
  • 打赏
  • 举报
回复
用一个列表框供用户选择字段,根据字段生成sql语句,然后用syntaxFromSQL()生成语法

609

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder DataWindow
社区管理员
  • DataWindow社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧