前往Shuct.Net首页

Shudepb PB反编译专家长时间以来,为业内同类软件事实上的唯一选择.细节,彰显专业.态度,决定品质.

关于PowerBuilder的搜索

PowerBuilder(pb)中 xml的应用一例_XSL_电脑频道- 唯才教育网 设为首页 | 加入收藏 学历高考教程自考script成考 字符串报关公务员路径栈javascript 工程建造造价咨询师监理师造价员 计算机phpjsp应用能力mysql表单 外语四六级职称商务c/c++日语 oraclemssql经济税务注册职称 asp 资格 mysql 数据库 您现在的位置: 唯才教育网 >> 电脑频道 >> XSL >> PowerBuilder(pb)中 xml的应用一例 PowerBuilder(pb)中 xml的应用一例 作者:佚名 来源:网友投稿 点击数: 更新时间:    示例文件如下(不贴DTD了,举简单例子说明一下) 复制代码 代码如下:<trans> <transdetail> <order><date/></order> <orderdetail><product/></orderdetail> <orderdetail><product/></orderdetail> </transdetail> <transdetail> <order><date/></order> <orderdetail><product/></orderdetail> <orderdetail><product/></orderdetail> </transdetail> </trans> 我的表结构,我想大家的表也应该都是这样设计的 order(销售订单,包括客户,日期等信息) orderdetail(销售订单明细,包括产品,数量及价格信息) 至此,可能明眼人一眼就能看出,这个xml的格式设置有些问题,例如这样可能更加合理 复制代码 代码如下:<trans> <!--transdetail 这个节或许是多余的--> <order> <date/> <detail><!-- 明细是一个订单的一部分,不应该脱离订单头--> <orderdetail><product/></orderdetail> <orderdetail><product/></orderdetail> </detail> </order> <order> <date/> <detail> <orderdetail><product/></orderdetail> <orderdetail><product/></orderdetail> </detail> </order> </trans> 不过人家是ZF部门,改不了的,所以蹩脚也得做 pb9中的处理代码:其实在pb9种只写了三行代码,真正的代码其实只有一行,就是增加了一个窗口,上面放了一个数据窗口,一个按钮,按钮里写了这么一行代码,呵呵 dw_export.save("c:\test.xml",xml!,false) 其实真正要处理的是定义个两个数据窗口,主要是定义他们的xml模版: d_order(订单头数据出口,第二行代码,可以在EITX中设置) 1.新建数据窗口(这里注意,如果如何条件的数据有多行时,最好在SQL中进行group,否则生成的数据会有重复) 3.在export/import template xml(下面简称EITX)编辑区点右键,save as另一个名字 4.把data export下的use template设置为你刚刚保存的模版名 定义好的模版如下所示: 复制代码 代码如下:<?xml version=~"1.0~" encoding=~"gb2312~" standalone=~"no~"?> <trans> <transdetail __pbband=~"detail~"><!-- 在EITX中的transdetail节上点右键选中"starts detail" [注1] --> <order> <date>order_date</date> </order> dw_detail <!-- 在EITX中的transdetail节上点右键选"add child"下的"datawindow control refrence" [注2] --> </transdetail> </trans> 有两点需要注意 [注1]这个start detail,将控制数据的循环,所以需要选中,但是每个xml只能定义一个,这里就会产生一个问题,如果我订单头循环后,如何再让订单明细循环,结论是,在一个数据窗口中无法实现,必须分数据窗口进行处理,也就有了注2 [注2]我们需要在d_order中插入一个report,也就是d_orderdetail,在d_order中的control list(同在datawindow control refrence中相同)中就是dw_detail(默认名称是dw_1,我改名了) d_orderdetail(订单明细数据出口,也就是上面report,dw_detail引用的数据窗口,第三行代码,可以在EITX中设置) 1.新建数据窗口 2.在export/import template xml(下面简称EITX)编辑区点右键,save as另一个名字 3.把data export下的use template设置为你刚刚保存的模版名 <?xml version=~"1.0~" encoding=~"gb2312~" standalone=~"no~"?> <detail><!-- 这儿定义为orderdetail是没用的,牵套时,会被忽略 [注3]--> <orderdetail __pbband=~"detail~"><!-- [注4] --> <product>product_name</product> </orderdetail> </detail> [注3]注意,当我们在d_order中导出xml时,d_orderdetail中的xml声明和顶节点会被忽略 [注4]这个地方定义的就是orderdetail部分,因为一个订单可能会有多条明细信息,所以我们需要设置为start detail,也就是循环。 最后生成的文件如下 复制代码 代码如下:<trans> <transdetail> <order><date>20080101</date></order> <orderdetail><product>甲</product></orderdetail> <orderdetail><product>已</product></orderdetail> </transdetail> <transdetail> <order><date>20080102</date></order> <orderdetail><product>甲</product></orderdetail> <orderdetail><product>丙</product></orderdetail> </transdetail> </trans> 注:如果让你设计一个xml接口文件,请一定要考虑使用者的方便性 查看和“XSL”有关的所有文章 上一篇文章: 存储于xml中需要的HTML转义代码 下一篇文章: XML 非法字符(转义字符) 更多关于 PowerBuilder(pb)中 xml的应用一例 问题 ·请教,oncli ·用delphi编 ·midp中的动画 ·整合Tomcat ·分隔符如何使用 ·alphaMul ·灵活应用Wind ·ASP使用FSO ·js验证表单大全 ·怎样模拟点击网页 ·带你轻松接触my ·SQL Serv ·VB.NET P ·那么短的存储过程 ·SSIS同时接收 ·新手问个 REP ·一共2页,现在处 ·安装SQL Se ·E(Math.E ·在控制中心点选数 ·致初学者:PHP ·php :帮解译 ·imap_sca ·jquery高手 ·ASP.NET备 ·C#导出导入ex ·C#语言初级入门 ·[急急急]MyE ·JS两个页面的传 ·asp.net ·JavaScri ·请问ORACLE ·jdbc批量删除 ·用W2KADSE ·hibernat ·mcve_set ·javascri ·多功能datag ·关于Sql的问题 ·关于oracle ·怎么把字符串拆分 ·关于数组初始化大 ·3.学习j2ee ·判断文件是否存在 ·ASP.NET ·c# post数 ·java 的 i ·HSQLDB创建 ·Applet编程 ·怎么用编程的方式 ·新版mysql+ ·swf_setf ·PHP 正则表达 ·ASP.NET下 ·oracle ·急~单行查询实现 ·struts1上 ·sqlserve ·ASP上传组件A ·找高手解释 - ·flash as ·从listbox ·一个SQL语句 ·mysql的字符 ·urldecod ·PHP+MySQ ·SQL2005运 ·弹出新页面后,不 ·正则表达式基础教 ·记录用户上次登录 ·如何准确定时运行 ·java实现的批 ·gzputs ·JSP计数器的制 ·[SQL Ser ·DOM解析jav ·method_e ·关于Hibern ·VARIANT ·第3章 用c#编 ·如何删除SQL数 ·用asp实现把文 ·寻一更新SQL ·问个struts ·请问,怎么用SQ ·linq的whe ·Asp定时执行操 ·数据量过大时数据 ·javascri ·getUTCYe ·delphi中t ·vb.net棘手 ·求助:这个局部刷 ·正则表达式问题, ·类似ie8的开发 ·.NET体系中的 ·STL Prio ·急!!!关于网页 ·ExtJS 设 ·如何让系统补丁在 推荐信息 相关文章 ·ldap_get_option ·利用asp获得图象的实际尺寸的示例 ·读取,写入properties信息的方法 ·用VB6.0实现几种图文特效的演示程序 ·大家帮忙看下这个存储过程中的SQL语句引 ·Socket.TCP 错误 '8000f ·请问c#里如何附加sql2005数据库 ·404错误之后转到指定的页面 急 - P ·关于level创建不同行数的使用方法 ·根据本机CPU序列号、网卡Mac地址、时 热点推荐文章 ·在PHP中使用反射技术的架构插件使用说明 ·Microsoft JET Databa ·losecapture的用法 ·求助关于listbox!!!!!谢谢! ·sqlplus里面通过啥命令才能显示so ·wpf几何绘图(二)画矩形 ·求助 Java char类型 ·sql语句怎么写?? - Oracle ·看我不动也会张的大嘴巴 ·如何将SqlDataReader 转换成 ·如何使用sql server中的客户端配 ·【extjs】Ext.data.Http ·服务器端 文件对话框 ·gridview单元格显示的值过长 ·类库添加启动项的引用? - .NET技术 ·SerialPort.Write()方法 ·java中按汉字拼音排序 ·C# 操作 excel 不连续单元格 ·linux 系统命令(系统管理) ·Mysql入门基础 数据库创建篇 网站栏目导航 listview 变量 图片 gridview 线程 XSL IIS 接口 xmlhttprequest 正则表达式 翻页 md5 各种菜单 截取 加密 flash stream 采集 进度条 application rss 数组 split 远程 水印 随机 request response 日历 cookies 上传 缓存 session 同步 索引 触发器 ODBC JDBC 存储过程 access oracle 备份 JPA mysql 数据类型 delete insert 读取 update 连接数据库 select vc Delphi vb linux c/c++ jsp php 路径 script 栈 表单 javascript 字符串 oracle 教程 服务器 mssql mysql java asp asp.net 数据库 热点图文 关于我们 - 联系合作 - 友情链接 - 网站地图 - 服务条款 备案号:闽ICP备09035953号 教育资源资讯,共享优秀平台 唯才教育网:版权所有COPYRIGHT&copy;2008-2010 HN1C.COM. ALL RIGHTS RRESERVED.