U8二次开发-基础篇_第1页
U8二次开发-基础篇_第2页
U8二次开发-基础篇_第3页
U8二次开发-基础篇_第4页
U8二次开发-基础篇_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、用友软件股份有限公司 EBU客开管理总部 张月昌 2010年05月07日,U8二次开发基础讲解,讲演主题,VB应用讲解 XML应用讲解 SQL Sever应用讲解,VB应用讲解,VB文件介绍,窗体文件(*.Frm) 类文件(*.Cls) 模块文件(*.Bas) 自定义控件(*.Ctl) 属性页文件(*.Pag) 窗体资源文件(*.Frx) 资源文件(*.Res) 工程文件(*.Vbp) 工程组文件(*.Vbg) 工程配置文件(*.Vbw) 代码管理文件(*.Scc) 日志文件(*.Log),VB应用讲解(Frm),VERSION 5.00 Begin VB.Form Form1 Caption

2、 = Form1 ClientHeight = 3195 ClientLeft = 60 ClientTop = 345 ClientWidth = 4680 LinkTopic = Form1 ScaleHeight = 3195 ScaleWidth = 4680 StartUpPosition = 3 窗口缺省 Begin VB.CommandButton cmdCreateXML Caption = CreateXml Height = 495 Left = 1680 TabIndex = 1 Top = 1920 Width = 1455 End End Attribute VB_N

3、ame = Form1 Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False,VB应用讲解(规范),强制显式声明模块中的所有变量,Option Explicit,变量一定要在前面声明,Private Sub cmdCreateXML_Click() Dim oEle As IXMLDOMElement Dim oRoot As IXMLDOMElement Dim oNode As IXM

4、LDOMNode,注意缩进,Xml 标准元素 Xml 根节点 Xml 标准节点,If A = B Then A = A + 1 End IF,While A 100 A = A + 1 Wend,For i = 1 to 100 A = A + 1 Next,Private Sub Test() Msgbox “This is a test sub” Next,Select Case Val(x) Case 1 Print “Value Is 1” End Select,适当的换行,Private Sub cmdCreateXML_Click() Dim oEle As IXMLDOMElem

5、ent Do Code End Sub Private Sub AnotherSub,降低断行标示“_”的使用频度,脚本换行增加换行标示,sSql = “Select * From Table” & _ “Where Code =1001”,sSql = “Select * From Table”& VbCrlf sSql = sSql &“Where Code =1001”,VB应用讲解(规范),每个函数段最好不要超过30行,Private Sub cmdCreateXML_Click() Dim oEle As IXMLDOMElement Do Code End Sub,30,VB应用讲

6、解(规范),获取Xml节点属性值 Private Function GetXmlAttr(Byref eItem As XmlElement, Byval sName as String) As String On Error Goto ErrExist Dim vValue As Variant 获取的Xml属性值 vValue = eItem.GetAttribute(sName) If IsNull(vValue) Then 判断该属性是否存在 GetXmlAttr = “” 不存在,返回空串 Else GetXmlAttr = vValue Endif ErrExist: GetXml

7、Attr = “” 取数失败,返回空串 End Function,足够的注释信息,最好有错误处理,最好不要用On Error Resum Next,业务场景考虑全面,避免实时错误,声明参数是按地址传入还是数值,功能单一,就干一件事情,讲演主题,VB应用讲解 XML应用讲解 SQL Sever应用讲解,Node节点,类似于数组,有文本属性 Element元素,带属性的节点 Attribute 属性,类似于集合,不可重复 Text文本,不具备任何扩展属性 备注 DocumentElement 根节点,Dom只可以有一个根节点,该节点为Element属性,XML应用讲解,XML介绍,XML应用讲解,

8、XML介绍 节点,SelectSingleNode selectNodes firstChild lastChild nextSibling appendChild removeChild text,XML应用讲解,XML介绍 属性,attributes getAttributeNode getAttribute setAttribute removeAttribute text,XML应用讲解,XML字符转义,有些特殊字符无法在Xml中直接保存,会使用转义字符进行描述。 该描述会影响XML的保存内容,但是显示仍然会按照原始内容显示,而非转义内容。 VB中对属性等赋值取数直接使用特殊字符,只是

9、影响Xml的保存文件。 但是如果对Xml的Xml属性直接操作时就是转义字符了。,XML应用讲解,XPath,使用“/”进行路径操作,如:Nd/Itm/Name 使用“”进行谓词判断,如:NdItm/Name 使用“”对属性进行判断,如:ItemName = a 使用“/”获取dom全路径下的所有节点内容 使用“*”进行模糊匹配 XML严格区分大小写,书写时一定要注意,XML应用讲解,Schema, ,讲演主题,VB应用讲解 XML应用讲解 SQL Sever应用讲解,SQL应用讲解,系统数据库和系统表,Mastermaster是数据库的最重要的数据库,联系着其他的数据库,并记录着用户数据!相当

10、于超级管理员的账户 Model 模版数据库 Msdb Sql内部使用,一般用于计划作业和数据库邮件 tempdb临时数据库 pubs示范数据库,Sysobjects 数据库对象表 Syscolumns数据库对象字段表 sysProcesses(master)数据库系统进程,SQL应用讲解,常用对象,数据表标准前缀:EF_项目_XXXX 或 EF_项目_T_XXXX 字段 视图标准前缀: EF_项目_V_XXXX 存储过程标准前缀: EF_项目_P_XXXX 函数标准前缀: EF_项目_F_XXXX 触发器标准前缀: EF_项目_Tri_XXXX 自定义变量 索引标准前缀: EF_项目_IX_X

11、XXX 约束标准前缀: EF_项目_CK_XXXX,SQL应用讲解,常用命令,SP_Who 检查进程 SP_Lock检查锁 Kill Sp_ID 删除进程 DBCC InputBuffer(SP_ID)检查进程内容 DBCC SHRINKDATABASE 收缩数据库 DBCC SHRINKDB收缩数据库 DBCC SHRINKFILE收缩数据和日志文件 DBCC SHOWCONTIG 扫描表密度 DBCC REINDEX 重建数据库索引 DBCC INDEXDEFRAG 重建数据库索引,SQL应用讲解,常用命令,Select Top 10 * From XXX With(nolock) Whe

12、re XX = YY Sum Max Min Avg Group By xx,yy Having Sum(xx)10000 Union (All) Insert Into A (a,b,c) Values(a,b,c) Delete A Where a = a Select A.* Into #A Where a = a Left Join Right Join Inner Join Full Join Cross Join (Select * From A,B),Select A.VouchCode, A.VouchName, B.Code, C.Name, B.Num, B.Money F

13、rom A With(nolock) Left Join B With(nolock) ON A.ID = B.ID INNER Join C With(nolock) ON A.ID = C.ID And B.Code = C.Code Where A.VouDate Between 2010-5-1 And 2010-5-31 Set SQL = Select A.VouchCode, A.VouchName, B.Code, C.Name+ From A + Left Join B ON A.ID = B.ID + INNER Join C ON A.ID = C.ID And B.Co

14、de = C.Code+ Where A.VouDate Between 2010-5-1 And 2010-5-31,SQL应用讲解,编写规范,尽量不要超过五层,关键字前换行,Set SQL = Select A.VouchCode, A.VouchName, B.Code, C.Name From A Left Join B ON A.ID = B.ID INNER Join C ON A.ID = C.ID And B.Code = C.Code Where A.VouDate Between 2010-5-1 And 2010-5-31,SQL变量赋值尽量不要拼很多的串,使用脏读,减少

15、前后台交互次数 没有必要的数据不要取到前台 避免客户端海量运算 减少IN的使用 避免使用Union 脚本中尽量避免使用游标(尤其不能游标嵌套) 存储过程功能清晰,减少业务分支查询,降低预编译时间 关键业务字段使用索引处理 多使用整形数据判断,避免布尔值判断 整理数据表碎片,提升索引效率,SQL应用讲解,效率问题,索引失效,比较字段数据类型转换或运算 比较字段内容少于组合索引内容 对Null值进行比较 比较字段表内内容比较一致,系统没有建立索引 使用“”来进行索引字段比较 使用“IN”来进行条件处理 索引表不连续,跨页检索,SQL应用讲解,SQL变量拼接时会向定义最严格的类型进行转换 组织视图时

16、避免使用*来降低工作量 使用中间表处理时,临时用表应该判断是否存在 创建表和视图时,一定要判断是否已经存在 注意Null,常见错误,T1,T2,V1,CREATE View V1 AS Select T1.*,T2.* From T1,T2,Declare sValue nvarchar(50) Set sValue = ABC Select sValue = Name From A Where 1 = 2 Set sValue = (Select Name From A Where 1 = 2),SQL应用讲解,NULL,Null不可以使用“=”来判断,只能使用“IS” Null和任何值比较都会返回“False” (开关:Set ANSI_NULLS OFF),Case When,Case When a = 1 Then 3 Else Case When a = 2 Then 4 End End Case a When 1 Then 3 When 2 Then 4 End,=,ABC,Null,空记录集,SQL应用讲解,事件探查器,默认事件: Sql 2000 Audit Login,Audit Logout, Exist

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论