祝愿大家身体健康!

 站点注册  找回密码
 站点注册

QQ登录

只需一步,快速开始

查看: 9915|回复: 1

[参考资料] datawindow语法的中文解释

  [复制链接]

[参考资料] datawindow语法的中文解释

  [复制链接]
ehxz

主题

0

回帖

58万

积分

管理员

积分
589551
贡献
在线时间
小时
2010-8-11 16:40:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?站点注册

×
:$PBExportHeader$d_test.srd   
  这句话是一个PB导出文件的头说明信息,(如果你不需要导入到PBL的话)用处不大   
  这句在使用SyntaxFromSQL生成的DW教本中是没有的,而且如果你在要生成的DW的教本前也加入这句话,CREATE方法将报错   
  release 7;   
  很重要,留着,虽然看上去用处不大,只说明了一下生成器的版本,但却不能缺少,如果你用的不是PB7,后面的版本应该是你所以得PB版本的主版本号   
  datawindow(units=0 timer_interval=0 color=16777215 processing=1 HTMLDW=no print.documentname="" print.orientation = 0 print.margin.left = 110 print.margin.right = 110 print.margin.top = 96 print.margin.bottom = 96 print.**.source = 0 print.**.size = 0 print.prompt=no print.buttons=no print.preview.buttons=no grid.lines=0 )   
  嗬!好长的一句,这个大家伙说明的这个DW的主体信息,包括显示点单位、DW背景色、DW处理方式、打印设置等信息,我们一个个地分析   
   
  datawindow( 这是这句话的开头,说明这句话是用来描述DW主体信息的,以括号开头,以反括号结束   
  units=0 描述当前DW使用的点类型,0->PB点,大约等于1/4象素 1->屏幕象素 2->1/1000英寸 3->1/1000屏幕象素   
  timer_interval=0 时间中断频率,在这里不讨论这个,如果你需要你的DW一闪一闪亮晶晶,这个可是有用的东东   
  color=16777215 很重要,整个DW的背景色就指着她那   
  processing=1 VIP,整个DW的显示风格由她决定 0->FreeForm 或 Tabular (下面只讨论这种风格) 1->GRID 其他的我就不说了,可以看HELP   
  HTMLDW=no 对我们的讨论没有意义,不管他   
  print.* 如果你不需要打印这个DW,不用设置它,你哪怕删掉这些内容也没有影响   
  grid.lines=0 如果你选用了GRID风格,这个设置项决定是否显示表格线,如果是GRID的话,没有这个表格线好难看   
  ) EASY,就是这句话讲完了啦 8-)   

  header(height=80 color="536870912" )   
  声明DW标题带区的高度和背景色信息   

  summary(height=0 color="536870912" )   
  声明DW合计带区的高度和背景色信息   

  footer(height=0 color="536870912" )   
  声明DW页脚带区的高度和背景色信息   
   
  detail(height=92 color="536870912" )   
  声明DW明细数据带区的高度和背景色信息   
   
table(column=(type=decimal(0) updatewhereclause=yes name=id dbname="id" )   
  column=(type=char(128) updatewhereclause=yes name=name dbname="name" )   
  retrieve="SELECT id,name FROM sysobjects" )   
   
  又一个长句子,我们继续逐个说明   
  table( 这句话的开头,说明这句话是用来描述当前DW的数据结构及数据源定义   
  column=( 第一个列描述的开头,说明这个列的数据源、数据类型、使用的名称和查询中的名称   
  type=decimal(0) 类型说明,当前列的类型是没有小数位的小数型(奇怪,怎么不用LONG)   
  updatewhereclause=yes 始终未在正式的文档中发现过与这个项目相关的说明,把这项去掉好像也没什么影响   
  name=id 这个列在DW中的别名,可以与数据源中的列名不同   
  dbname="id" 这个列对应数据源中列名   
  ) 这一列完毕   
  column=( 第二列说明的开始   
  type=char(128) 类型说明,说明这个列的数据类型为最长128字节的字符型列   
  updatewhereclause=yes 不说它了   
  name=name 列的别名   
  dbname="name" 列的数据源名   
  ) 第二列说明结束   
  retrieve= 这个DW的数据源定义   
  "SELECT id,name FROM sysobjects" 对应的SQL语句   
  ) 数据源定义说明结束   
   
   
  补充两句   
  从这句话的结构不难看出,列描述的顺序是与SELECT语句中各列的排列顺序是相同的   
  而且,在这里其实隐含着一个列ID号,标识各列的位置,这个ID号在后面将用到   
  另外,目前例子中的这个DW是不可以UPDATE的,如果我们把这个DW强制修改为可以UPDATE,将会发现   
  在列描述语句中多了一下内容:   
  update=yes key=yes   
  其中:update=yes 说明这列为可以UPDATE的列之一   
  key=yes 说明该列为UPDATE时对应表的主键设置之一   
  然后在数据源定义语句(RETRIEVE)中多了以下内容:   
  update="sysobjects" updatewhere=0 updatekeyinplace=no   
  其中   
  update="sysobjects" 说明需要保存的对于数据库表   
  updatewhere=0 对应DW中UPDATE属性定义窗口中"Where Clause for Update/Delete",这个参数将影响并发情况下数据的安全和运行效率,在讨论并发处理的帖子或文章中有介绍,在这里我们就不赘述了   
  updatekeyinplace=no 对应DW中UPDATE属性定义窗口中"Key Modification",在这里我们就不讨论这个了   
text(band=header alignment="2" text="Id" border="0" color="0" x="9" y="8" height="64" width="261" name=id_t font.face="Arial" font.height="-10" font.weight="400" font.family="2" font.pitch="2" font.charset="0" background.mode="1" background.color="536870912" )   
  很混乱的一句话,说明了一个TEXT文本对象的各种属性,下面逐个说明:   
  text( 一个文本对象说明的开始   
  band=header 该文本对象在DW中放置的带区   
  alignment="2" 对齐方式,目前为中央对齐   
  text="Id" 文本显示内容   
  border="0" 边框类型,目前为没有边框   
  color="0" 文本色,目前为黑色   
  x="9" 放置位置X坐标(相对于指定的带区)   
  y="8" 放置位置Y坐标(相对于指定的带区)   
  height="64" 该文本对象的高度   
  width="261" 宽度   
  name=id_t 对象的名称   
  font.face="Arial" 字体   
  font.height="-10" 字体大小   
  font.weight="400" 是否加粗,如果使用加粗(BOLD)则为700,如果不加粗,则为400   
  font.family="2" 字体的家族,由于Windows是通过使用字体名称(Font Face)和字体家族(Font Family)来决定某一个具体的字体的,所以需要指定该参数,一般情况下,中文字体(比如:宋体)对应的Family 为0(anyfont!)   
  font.pitch="2" 不知道该怎么翻译,一般情况下,根据具体的字体决定该属性的值,比如宋体就使用2(Variable)   
  font.charset="0" 字符集,根据具体的字体所决定的,比如宋体就用0就可以了   
  background.mode="1" 背景模式,这个属性比较重要,决定该对象是否使用透明色,如果为1则为透明,如果为0则使用下面所指定的颜色,在实际使用中还会遇到值为2的情况,这种情况下,该对象将使用系统颜色,系统颜色的对应值在下面的background.color属性中指定,比如常用的按钮表面色ButtonFace,对应值为:79741120,不过这个值在不同情况下有些区别,具体为什么没有深入研究过,希望了解或有兴趣的朋友能给讲讲   
  background.color="53687091" 背景色,如果背景模式为1(透明),则该值没什么作用,如果背景模式为0,则该对象的背景色为当前指定的颜色,如果背景模式为2,则为系统色对应的标识   
  ) 这个文本对象的说明结束   
   
  text(band=header alignment="2" text="Name" border="0" color="0" x="279" y="8" height="64" width="3511" name=name_t font.face="Arial" font.height="-10" font.weight="400" font.family="2" font.pitch="2" font.charset="0" background.mode="1" background.color="536870912" )   
  跟上一句类似,不再重复了   
   
   
  column(band=detail id=1 alignment="1" tabsequence=32766 border="0" color="0" x="9" y="8" height="76" width="261" format="[general]" name=id edit.limit=0 edit.case=any edit.focusrectangle=no edit.autoselect=yes edit.autohscroll=yes font.face="Arial" font.height="-10" font.weight="400" font.family="2" font.pitch="2" font.charset="0" background.mode="1" background.color="536870912" )   
  进入正题了,列对象的说明,下面我们也来先每个属性都看一遍   
   
  column( 一个可以显示在DW中的列对象说明的开始   
  band=detail 这个列对象在DW中放置的带区,简单说就是放在明细行中还是放在标题或者汇总行中   
  id=1 这个列对象对应的数据源ID号,这个属性很重要,如果设置错误了,那么你看到的数据就将与你预期的不同,这个ID号的顺序是由数据源中列的选择顺序决定的,比如这个1,就说明对应数据源SQL语句中所选择的第一个字段(ID)   
  alignment="1" 对齐方式(0->左对齐 1->右对齐 2->中央对齐 3->自适应对齐,即在多行情况下,各行宽度尽量相同)   
  tabsequence=32766 就是TAB ORDER,32766就是TabOrder = 0,所以在取值时一定要小于这个值,并且要大于0,否则光标就不能选中这列了   
  border="0" 边框类型,这里设置的是没有边框   
  color="0" 文字颜色,根据RGB值设定   
  x="9" 放置位置的X值   
  y="8" 放置位置的Y值   
  height="76" 对象高度   
  width="261" 对象宽度   
  format="[general]" 数据内容显示格式   
  name=id 列对象命名,这个名字应该与DW数据源定义中各列的name设置相同   
  edit.limit=0 输入字符**,0为不**(实际上最多32760左右个字)   
  edit.case=any   
  edit.focusrectangle=no   
  edit.autoselect=yes   
  edit.autohscroll=yes   
   
  font.face="Arial" 字体格式说明,不详细说了   
  font.height="-10"   
  font.weight="400"   
  font.family="2"   
  font.pitch="2"   
  font.charset="0"   
   
  background.mode="1" 背景模式,与文本相类似   
  background.color="536870912" 背景颜色,与文本相类似   
  )   
   
   
   

  column(band=detail id=2 alignment="0" tabsequence=32766 border="0" color="0" x="279" y="8" height="76" width="3511" format="[general]" name=name edit.limit=128   
  edit.case=any edit.focusrectangle=no edit.autoselect=yes edit.autohscroll=yes font.face="Arial" font.height="-10" font.weight="400" font.family="2" font.pitch="2" font.charset="0" background.mode="1" background.color="536870912" )   
   
   
   
  htmltable(border="1" )   
  htmlgen(clientevents="1" clientvalidation="1" clientcomputedfields="1" clientformatting="0" clientscriptable="0" generatejavascript="1" )   
  这两句对我们所讨论的内容没什么关系,就不讨论这个了
参考别的地方的,可能不一样的版本不很一致,限参考,没仔细研究过
共享共进共赢Sharing And Win-win Results
SYBASEBBS - 免责申明1、欢迎访问“SYBASEBBS.COM”,本文内容及相关资源来源于网络,版权归版权方所有!本站原创内容版权归本站所有,请勿转载!
2、本文内容仅代表作者观点,不代表本站立场,作者自负,本站资源仅供学习研究,请勿非法使用,否则后果自负!请下载后24小时内删除!
3、本文内容,包括但不限于源码、文字、图片等,仅供参考。本站不对其安全性,正确性等作出保证。但本站会尽量审核会员发表的内容。
4、如本帖侵犯到任何版权问题,请立即告知本站 ,本站将及时删除并致以最深的歉意!客服邮箱:admin@sybasebbs.com
licc068

主题

0

回帖

2378

积分

金牌会员

积分
2378
贡献
在线时间
小时
2011-3-19 00:48:56 | 显示全部楼层
已复制备用,谢谢!
共享共进共赢Sharing And Win-win Results
您需要登录后才可以回帖 登录 | 站点注册

本版积分规则

免责声明:
本站所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@SybaseBbs.com

QQ|Archiver|PowerBuilder(PB)BBS社区 ( 鲁ICP备2021027222号-1 )

GMT+8, 2024-12-4 17:04 , Processed in 0.032049 second(s), 8 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表