搜档网
当前位置:搜档网 › Thinksns二次开发指南

Thinksns二次开发指南

Thinksns二次开发指南
Thinksns二次开发指南

ThinkSNS 1.6

二次开发指南(beta版)

2009年

智士软件(北京)有限公司

北京市海淀区上地十街辉煌国际2号楼2301室010 – 59714755

序言

这是2009年的第一次,忙碌了太久的企业项目,ThinkSNS终于又开始啦,太多的期待和等待,我们听到很多很多声音,不管怎么样,我们回来啦!,在这沉寂的一年多时间里,我们经历过多次的波折,团队一度徘徊在解散的边缘,生存的压力也中断了产品的持续性开发。直到09年的5月底,我们终于有了足够的人力和精力来重新启动产品。

在产品开发之前,我们也不断的在讨论,究竟该用怎样的产品去满足不同用户的需求,我们并不认同SNS等同于webgame的发展思路,在我们看来,SNS 的魅力在于它改变了信息的传播方式,如何做好最基本的功能——促进用户之间的交流才是产品的核心所在,至于通过哪些组件实现交流,可以让运营者根据自己的用户特性去选择,而通过游戏的交流只是其中很小的一部分,国内的互联网应用不会永远停留在娱乐阶段,我们希望着眼于未来——围绕社会化服务的核心,深度开发能给用户带来实际效用的交互组件。基于以上的想法,我们这一版产品的目标就是搭建一个完善的内核架构,独立的API,将应用与核心完全分离,

让每个应用都可以在后台独立配置,并提供详尽的开发文档,使得更多的开发者可以很容易的开发出新的组件,丰富TS的组件,满足不同用户的社交需求。

最后感谢所有关注和支持T hinkSNS的朋友,如果你有什么疑问或建议,请在我们社区的群组里找到相应的官方群组并提交你的疑问或建议,我们会一直留意那里提交的问题并及时更改,如果是提交bug,请同时注明你的测试环境,方便我们发现问题所在,我们社区的网址是:https://www.sodocs.net/doc/2510101328.html,

目录

简介 5

什么是ThinkSNS 1.6 5

编写目的 6

引用术语与缩写说明 6

预定义的全局变量说明 6

整体说明 7

设计说明 7

设计目标 7

构架说明 8

目录结构 8

核心结构说明 9

ThinkPHP1.6修改说明 10

应用结构说明 12

分享 13

API库 21

API接口说明 22

用户API 22

好友API 24

积分API 25

动态API 28

通知API 31

评论API 34

附件API 35

分享API 36

站点信息API 37

公共Widget 38

评论widget 41

举报widget 43

好友选择widget 43

好友分组widget 44

附件widget 45

相册widget 46

模板开发教程 47

应用开发说明 54

开发目录说明 54

应用的开发方式 54

应用开发范例 56

开发需求和开发目标 57

创建数据表 57

创建应用目录 60

开始编程 63

增加积分消费功能 77

增加发动态功能 78

增加发通知功能 80

更新首页统计数目 82

增加应用后台 83

增加应用 93

调试 94

简介

什么是ThinkSNS 1.6

ThinkSNS 1.6作为智士软件(北京)有限公司旗下最新产品,集成了众多ThinkSNS开发者在大型项目中的经验,并将这些宝贵的经验应用于新版的产品之中,不管是对于普通站长还是对于开发者来说,这都是一款值得期待的SNS 产品。

ThinkSNS 1.6版汲取了国内几大SNS社区网站的优秀体验和设计,满足了众多站长用户的大众需求。同为一款开源产品,ThinkSNS在商业领域的运用,也使其完全能够满足并适用于企业的需求,并为企业增值和解决方案提供了有力的支持。

相对于ThinkSNS 1.0,最新版的ThinkSNS 1.6做了很大的改变,具体如下:

1、完整的产品构架、完善的基础应用、开箱即用。

2、内置API接口、后续支持自建平台、核心和应用分离。

3、完善的后台管理、可植入独立的应用管理。

4、正在完善IM应用,包括独立部署的WebIM和基于Air技术的客户端应用。

同时ThinkSNS官方将不断的促进ThinkSNS的完善和新技术的应用,使用者可以在官方社区里获得最新的应用插件与系统升级信息。

ThinkSNS 官方网站

https://www.sodocs.net/doc/2510101328.html,

ThinkSNS 1.6版体验网站

https://www.sodocs.net/doc/2510101328.html,

编写目的

本文档是ThinkSNS 1.6版本的二次开发指南,供二次开发人员使用。

引用术语与缩写说明

核心:ThinkSNS 1.6的核心的指用户基本操作集成,通过接口给应用提供查询,插入核心信息的的能力。

应用:别名组件,是基于核心的一个单独功能块,为用户提供某项特定服务。在ThinkSNS 1.6里应用是通过API与核心进行通信,应用与应用之间的耦合度低,并且所有的应用都可以在后台设置关闭和开启。

API:API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供给应用程序与核心进行通信的能力,而又无需访问源码,或理解内部工作机制的细节。

注:本指南如没有特殊说明,所有的代码段都基于ThinkPHP 1.6环境开发的。预定义的全局变量说明

在应用/插件开发过程中,可以直接使用下面的全局变量:

$this->api 核心API调用的变量,使用例子:

$this->api->user_getLoggedInUser(); (获取当前登录的用户ID) $this->opts 调用系统配置信息

$this->mid 当前登陆的用户ID

$this->uid 当前被浏览的用户ID

$this->my_name 当前登陆的用户昵称

$this->appid 当前应用ID 如果是THINKSNS核心,则appid=0

整体说明

设计说明

1、本文档主要对ThinkSNS 1.6版本的核心架构进行描述,使设计和开发人员在开发ThinkSNS 1.6版本的应用时遵循统一的规范;

2、本文档描述了在ThinkSNS 1.6版本使用的常见设计机制;

3、本文档充分描述了在―核心+应用‖中提到的可配置服务及可扩展服务,以便于在开发新的应用时使用;

4、本文档还对ThinkSNS 1.6版本的全局配置信息(例如:ThinkSNS 1.6版本Config)及官方提供的应用配置进行了详细说明。

设计目标

独立API架构,应用可配置,二次开发的选择

为了达成这些设计目标我们采用了以下设计机制:

1。独立API架构:所有的应用单独开发;

2。应用可配置:后台可直接关闭或开启某个应用;

3。二次开发的选择:程序尽量简洁规范化,二次开发人员可以快速地熟悉定制开发的方式和修改现有的功能;

构架说明

ThinkSNS 1.6版本采用了全新的构架方式,把应用与核心单独分离,使得系统框架更加清晰明了,方便第三方开发和安装新的应用。

目录结构

┎━index.php 统一入口文件

┝━admin.php网站后台地址文件

┝━cleancache.php手动删除缓存文件┝━config.inc.php 网站配置文件

┝━define.inc.php 常量定义文件

┝━thumb.php 自动缩略图文件

┝━a dmin 后台目录

┃┝Common 公共文件目录

┃┝Conf项目配置目录

┃┝Lang 语言包目录

┃┝Lib 应用类库目录

┃┗Tpl 模版文件目录

┝━apps 应用目录

┃┝blog日志目录

┃┝event活动目录

┃┝mini心情目录

┃┝photo相册目录

┃┝share分享目录

┃┝vote 投票目录

┃┝group群组目录

┃┗…更多项目目录

┝━data 后台目录

┃┝cache 静态缓存目录

┃┝upload上传文件目录

┃┗user用户信息目录

┝━p ublic 网站公共目录

┃┝Js JS文件目录

┃┝Images 图片目录

┃┝Languages语文包目录

┃┗Theme风格主题包目录

┝━runtime 核心缓存目录

┝━thinkphp TS框架目录

┝━thinksns TS核心功能目录

所有的应用目录都放在apps/目录下,如果要开发一个新的应用也是在该目录下创建应用的目录。

核心结构说明

ThinkSNS1.6核心结构图

ThinkSNS 1.6的核心包括两部分:个人空间的基本功能和API库。个人空间的基本功能有个人资料,隐私,邀请,好友,动态,消息,留言板,随便看看。关于核心部分开发人员只需要了解API的调用方法即可,没必要花精力研究它的运作和机制,而API库的说明请阅读下面的API库栏目。

ThinkPHP1.6修改说明

为了方便开发和优化系统结构,我们对ThinkPHP作了以下几点修改,特别是在核心Model里增加了findPage方法,它集成了findAll方法和分页方法,大大方便了程序的开发,如果使用ThinkPHP作为应用开发框架的话,推荐使用该方法。

2009-06-01

1、ThinkPHP.php的第28行

目的:修改runtime路径

2、ThinkPHP.php的第51行

目的:新增引入TS公共函数

3、ThinkPHP.php的第29行

Lib\Think\Template\ThinkTemplate.class.php的第710行

目的:使

4、Common\function.php中第569行

Lib\Think\Util\Widget.class.php第27行

目的:当W函数找不到当前目录的插件的时候,去核心的插件目录去找2009-06-02

1、convention.php中第151行

View.class.php中的第347行

目的:为了$this->success可以指向公共Theme目录

2009-6-10

1、ThinkPHP.php中第102行

目的:如果不存在runtime目录,则自动创建

2009-6-12

修改ThinkPHP/Mode/Model.class.php中的findPage方法,更加严格的判断了传入参数。使用方法和findAll类似,只传递第一个参数即可,@int|array $pageopt 传递数字,就是每页记录数,默认是20条。也可以传递数组:

$pageopt['pagesize'] Page类中的每页记录数

$pageopt['param'] Page类中的第三个参数

D('S hare')->field('id, toUserName')->findPage(10);

输出格式如下所示,其中count和totalRows是总记录数,主要为了兼容性才需要变量,开发人员可以在两个中选用其一就可。totalPages是总分页数,nowPage 是当前分页数,html是输出页码,data就是用findAll得到的结果。具体请参考分享应用的输出:

array(6) {

["count"] => string(2) "65"

["totalPages"] => float(7)

["totalRows"] => string(2) "65"

["nowPage"] => int(1)

["html"] => string(453) " 1

2

3

4

5

6

下一页" ["data"] => array(10) {

[0] => array(16) {

["id"] => string(3) "181"

["toUserName"] => string(9) "水上铁"

}

[1] => array(16) {

["id"] => string(3) "171"

["toUserName"] => string(6) "奇鸟"

}

......

[9] => array(16) {

["id"] => string(3) "147"

["toUserName"] => string(9) "水上铁"

}

}

}

应用结构说明

分享

分享应用结构的最大特色是:需求决定模板,模板决定变量。分享的模板可以根据自己的需求直接在后台修改(包括分享的动态模板,分享应用里的列表模板),而模板里需要什么变量就直接在数据包以数组的方式增加就可以了。数据包里所有的变量以及相应的值与模板的变量是对应的(除了{WR}以及分享的基本变量),以下让我们看看分享的数据是怎么结合的。

为了方便扩展分享的类型和提高程序的灵活性,分享应用保存到数据库里的信息分为两部分,一部分是分享的基本信息,主要有:

另一部分就是分享的核心数据:数据包,字段名为data (text),采用数组保存相关数据,然后序列化后保存入库。数组保存的变量由相应的类型根据模板需要来决定并赋上相应的值,比如日志类型的模板(如下图)需要显示日志标题(title),发表日志人的ID(uid)和姓名(name)。列表里还需要一些简介(intro),日志内容(content)。

注:{WR}是当前网址,系统会自动转译。

所以组装日志的数据包如下图:

在分享应用里生成列表时,根据分享的类型ID(typeId)从缓存里提出相应的模板,然后把数据包反序列化得到一个数组,再循环数组并用str_replace方法转译模板。最终效果如下:

分享信息的来源结构如下:

URL输入:主要是通过用户在分享应用列表里输入网址来分享站外的音乐、视频、F lash和网址。用户填写完相关信息(分享的网址,通知好友,描述)后点击提交的处理过程如下图:

分享别人的分享:

在分享应用里查看分享时可以选择再次分享,但为了防止产生过多的垃圾信息,站内所有能分享的信息用户只可以分享一次,都不能重复分享。

分享其它应用:

分享其它的应用,如日志,先用AJAX调用当前应用里的add_share_check函数先判断你是否为第一次分享,然后才弹出分享框,提交分享后也是在当前应用先组装数据包再通过API提交到数据库。

分享API接口:

之所以要通过API方式增加分享数据,是因为每个应用都是一个独立的项目,应用与应用之间耦合度很低,因此为了方便各应用增加分享数据和保持应用的独立性,全站采用API方式增加分享数据,也包括分享本身的增加。具体的API

调用说明请查看API库里关于分享API的说明。以下是分享API的程序流程图。

增加数据后接下来就是列表显示,列表的方式只有四种:朋友的分享,我的分享,大家的分享和某人的分享,某人的分享类似我的分享,不同的是我的分享查询的不是当前登录人的ID,某人的分享可以是任意人的ID,当然,显示的模板也不一样。列表里还可以点击只查看某类型的分享。主要是判断GET有没有typeId这个参数,有并且不等于0则只显示相应类型的分享。否则显示全部类型的分享。

分享的内容页程序流程图如下图所示。为了显示多样性以及一些类型的内容显示和列表显示不一样,故没有引用模板渲染数据,而是每一类应用对应一个内容模板文件。它的命名规范是:content_类型别名。如日志的内容模板文件是:content_blog。

增加分享类型的步骤

1 在后台的'应用=>各类应用=>分享=>分类管理=>增加分类' 输入类型信息,包括该类型的列表模板

2 在后台的'高级=>模板管理=>动态模板=>增加动态模板' 增加分享动态模板,具体请参考增加动态模板的规则

3 增加分享的内容页html文件,文件名规定为:content_类型别名,如视频的别名是:video,则内容页为:content_video.html

4 在调用分享的应用里实现通过分享的API插入分享的内容,具体请参考分享的API说明。注:数组参数data里的所需要的变量由列表模板和动态模板所需要的变量决定。

更多应用说明日后完善......

API库

API接口说明

ThinkSNS1.6的API接口比较简单,本文只介绍常用的API,开发人员如果有更多的需要可以直接在ThinkFrame/Api/Model里面看到所有的API接口。

用户API

1、user_getInfo(uids, fields, format)

描述:

返回指定用户的用户信息,返回形式为一个数组

参数说明:

调用Demo:

$this->api->user_getInfo("1, 2", "name, email");

(返回:

array(2) {

[0] => array(2) {

["name"] => string(6) "刘伟"

["email"] => string(13) "foxlw@https://www.sodocs.net/doc/2510101328.html,"

}

[1] => array(2) {

["name"] => string(6) "哈哈"

["email"] => string(10) "ttt@https://www.sodocs.net/doc/2510101328.html,"

}

})

$this->api->user_getInfo("1, 2", "name,email", "json");

(返回:

string(94) "[{"name":"\u5218\u4f1f","email":"foxlw@https://www.sodocs.net/doc/2510101328.html,"},{"name":"\u54c8\u54c8","email":"ttt@https://www.sodocs.net/doc/2510101328.html,"}]"

[注:

目前field可选的字段为:

id - 用户ID

name - 用户姓名。

handle - 昵称。

sex - 用户性别,返回值为male 或female。

birthday - 用户出生日期,返回值为YYYY-MM-DD 格式,例如1983-01-01。blood_type - 用户血型。

金蝶二次开发 K3插件开发 指导手册(初稿)(优选.)

金蝶 K/3 BOS V10.1插件开发指导手册 金蝶软件(中国)有限公司 2004.9

目录 打个小广告: 金蝶二次开发技术交流QQ群 ①群 30121062 已满 ②群 28307002 未满 ③群待定大家共同学习共同进步 1开发基础 (3) 1.1插件开发概念 (3) 1.2插件开发配置 (3) 2开发指南 (4) 2.1创建一个金蝶K/3 BOS 插件 (4) 2.1.1创建一个金蝶K/3 BOS 客户端事件插件 (4) 2.1.2创建一个金蝶K/3 BOS 中间层事件插件 (9) 2.2自定义金蝶K/3 BOS 标准菜单、工具栏 (11) 2.3添加新的菜单、工具栏 (12) 2.4添加新的事件、方法 (12) 2.5访问中间层和数据库 (12) 2.6保存数据 (12) 3参考 (13) 3.1客户端插件事件、方法、属性 (13) 3.2中间层插件事件 (13) 3.3判断业务对象引用存储过程 (13) 3.4金蝶K/3 BOS数据库结构 (13) 4示例 (13) 4.1XXX (13)

1开发基础 1.1插件开发概念 金蝶K/3运行平台为金蝶K/3 BOS开发的业务单据提供了稳定、标准的运行环境,但为了实现客户更加个性化的需求和保持金蝶K/3 BOS架构的开放性,还为客户化开发提供了插件编程机制:通过金蝶K/3 BOS业务单据和序时簿事件代理组件,把业务单据处理的关键事件接口抛出,客户可以接收这个事件代理组件,并对组件的抛出事件编程,从而实现个性化的事件处理方法,对金蝶K/3 BOS运行平台进行有效的扩充和扩展。 需要注意的是: a) 当前版本的金蝶K/3 BOS支持的插件,仅应用在金蝶K/3的GUI版本,不 支持WEB版本; b) 当前版本的金蝶K/3 BOS支持采用Microsoft Visual Basic 编写的插件,采 用的类型推荐为ActiveX DLL 类型; c) 当前版本的金蝶K/3 BOS支持的插件分为客户端事件插件、中间层事件插 件; 在本手册中,我们所有关于金蝶K/3 BOS插件的定义、描述、示例等,都符合上述3点特征。 1.2插件开发配置 开发、调试金蝶K/3 BOS插件,需要安装: a) 金蝶K/3 客户端部件 b) 金蝶K/3 BOS c) Microsoft Visual Basic(推荐使用v6.0 版本,并且安装SP5) 另外,如果要通过插件在K/3 BOS标准单据、序时簿界面上增加菜单、工具条, 还需要安装: d) Data Dynamics ActiveBar ActiveX v1.0.6.5 同时,我们推荐:

技术操作规范手册范本-(优质文档)

合同编号:__________ 技术操作规范手册范本 甲方:_________________________________ 乙方:_________________________________ 20____年___月___日

甲方: _ 乙方: _ 一、总则 (一)此技术操作规范手册为_________________________项目售前技术支持服务项目的主要技术功能和服务要求,卖方应针对本次项目的标的,结合自己的特点提供详细完整的服务方 案及项目报价。 (二)技术规范书应视为保证技术支持服务所需的最低要求。 (三)对本规范书各条目的应答为“满足“、“不满足“、“部分满足“,不得使用“明白“、“理解“等词语,在答复中,要求明确满足的程度,并作出具体、详细的说明。 (四)甲方应提供服务解决方案,并在建议书中说明给乙方提供的技术文件、技术支持、技 术服务、人员培训等的范围和程度。 (五)规范书有关内容的澄清 1、甲方对于规范书的疑问可以通过书面材料与买方联系。在规定的建议书提交最后期限以前,乙方将以书面材料给予答复。有关乙方答复材料的复印件也将递交所有得到技术规范书的甲方; 2、在技术谈判的各个阶段,乙方将以书面形式要求卖方对有关问题进行进一步的技术澄清,甲方应以书面资料给予正式应答。 (六)乙方保留对本文件的解释和修改权。乙方有权在签订合同前,根据需要修改和补充本 技术规范书,并书面通知所有得到技术规范书的卖方。 二、项目概述 (一)项目名称:____________________________________________。 (二)项目背景:____________________________________________。 四、服务内容 (一)技术支持服务范畴包括:不限于技术交流、编制方案、技术支持文档、制作标书等。信息化项目包括非系统集成类的产品或业务服务项目和系统集成类综合信息化项目。 (二)非系统集成类的产品或业务服务项目是指专线、MAS、M2M等不包含系统集成和平台建

BST3.0应用软件开发平台技术手册

项目名称:BST3.1软件开发平台 B S T3.0应用软件开发平台 用户技术手册 云南南天电子信息产业股份有限公司 FED软件中心

目录 概述 第一部分 BST3.0应用软件开发平台基本功能 第一章BST3.0软件开发平台的结构和流程控制第二章系统命令 第三章变量操作命令 第四章字符串操作命令 第五章文件操作命令 第六章屏幕(SCREEN)表配置和命令 第七章存折打印机(PR2) 配置和命令 第八章刷卡器(BP) 配置和命令 第九章FIT表配置和命令 第十章流水打印机配置和命令 第十一章读卡机命令 第十二章IC卡命令和配置表 第十三章辅助模块命令和配置 第十四章通信命令 第十五章添加设备的命令接口 第二部分 BST3.0应用软件二次开发 第一章用户自定义命令的开发 第二章通信动态库的开发 第三章调试 第三部分 BST3.0 SCRIPT使用手册

概述 BST3.0应用软件开发平台是在BST2.0应用软件开发平台的基础上,根据BST 应用需求,增加了屏幕部分对WEB和FLASH的支持,增加了内嵌的解释器,支持SCRIPT 编程模式,以及单步和屏幕重试功能。BST3.0应用软件开发平台更稳定,具有更好的扩展性,更容易完成BST 应用系统的开发。为熟练使用BST3.0应用系统软件开发平台进行二次开发,对此平台结构及功能模块应有充分了解,为缩短二次开发周期,请有关人员仔细阅读本手册。 因时间仓促,有不足之处,请使用者谅解,并将需要改善的意见反馈给FED 软件中心,帮助BST3.0应用系统软件开发平台的完善。

第一部分 BST3.0应用软件开发平台基本功能 第一章 BST3.0开发平台的结构和基本功能 1.1 BST3.0软件开发平台的组成部分 BST3.0软件开发平台功能完善、定制灵活、便于二次开发及其测试维护,它是由接口清晰且相互独立的子功能模块有机地结合在一起而行成的。 BST3.0软件开发平台由以下几个大的部分组成: 1.系统主控模块 协调平台内部各功能模块的工作。 2.设备控制模块 由一系列与具体设备相应的设备控制模块组成,每一个设备控制模块对应于一个相应的硬件设备模块,在BST应用系统中,设备是一个广义上的设备,除传统上的外部设备如打印机、BP、读卡机等设备外,还有一些特殊的设备,如屏幕设备,在系统中称之为“screen”,它实际上包括了显示器、键盘和鼠标的输入输出,这三个设备是在“screen”设备中统一处理的。另外,还有通信设备(实际上是通信子系统,它被当作一个设备操作)和时间设备(“time”,用于检测退出时间是否到达)等。 3.设备接口模块 负责屏蔽BST应用系统中设备的硬件特性,使用统一的方式(统一的接口)对设备进行操作。应用系统使用设备时通过设备接口模块操作设备,可保证以同样方式操作所有设备。 4.流程控制模块 负责应用系统的流程控制,完成特定交易控制,接受主机命令,保存程序运行状态的文件等。 5.通信处理子系统 以操作设备的方式完成BST应用系统与主机间的通信。

2021最新技术操作规范手册范本

2021最新技术操作规范手册范本 甲方: 乙方: 一、总则 (一)此技术操作规范手册为_________________________项目售前技术支持服务项目的主要技术功能和服务要求,卖方应针对本次项目的标的,结合自己的特点提供详细完整的服务方案及项目报价。 (二)技术规范书应视为保证技术支持服务所需的最低要求。 (三)对本规范书各条目的应答为“满足”、“不满足”、“部分满足”,不得使用“明白”、“理解”等词语,在答复中,要求明确满足的程度,并作出具体、详细的说明。 (四)甲方应提供服务解决方案,并在建议书中说明给乙方提供的技术文件、技术支持、技术服务、人员培训等的范围和程度。 (五)规范书有关内容的澄清 1、甲方对于规范书的疑问可以通过书面材料与买方联系。在规定的建议书提交最后期限以前,乙方将以书面材料给予答复。有关乙方答复材料的复印件也将递交所有得到技术规范书的甲方;

2、在技术谈判的各个阶段,乙方将以书面形式要求卖方对有关问题进行进一步的技术澄清,甲方应以书面资料给予正式应答。 (六)乙方保留对本文件的解释和修改权。乙方有权在签订合同前,根据需要修改和补充本技术规范书,并书面通知所有得到技术规范书的卖方。 二、项目概述 (一)项目名称: ____________________________________________。 (二)项目背景: ____________________________________________。 四、服务内容 (一)技术支持服务范畴包括:不限于技术交流、编制方案、技术支持文档、制作标书等。信息化项目包括非系统集成类的产品或业务服务项目和系统集成类综合信息化项目。 (二)非系统集成类的产品或业务服务项目是指专线、MAS、M2M等不包含系统集成和平台建设的标准化产品融合方案,含标准化产品的二次开发方案。 (三)系统集成类综合性信息化项目是指含系统集成、平台建设及其他业务的整体解决方案类的信息化项目。 五、服务期限

软件详细设计文档模板(最全面)

Xxx系统 详细设计说明书 (内部资料请勿外传)编写:日期: 检查:日期: 审核:日期: 批准:日期: XX公司 版权所有不得复制 文档变更记录

目录 1. 引言错误!未定义书签。 编写目的和范围错误!未定义书签。 术语表错误!未定义书签。 参考资料错误!未定义书签。 使用的文字处理和绘图工具错误!未定义书签。 2. 全局数据结构说明错误!未定义书签。 常量错误!未定义书签。 变量错误!未定义书签。 数据结构错误!未定义书签。 3. 模块设计错误!未定义书签。 用例图错误!未定义书签。 功能设计说明错误!未定义书签。 模块1 错误!未定义书签。 模块2 错误!未定义书签。 4. 接口设计错误!未定义书签。 内部接口错误!未定义书签。 外部接口错误!未定义书签。 接口说明错误!未定义书签。 调用方式错误!未定义书签。 5. 数据库设计错误!未定义书签。 6. 系统安全保密设计错误!未定义书签。 说明错误!未定义书签。 设计错误!未定义书签。 数据传输部分错误!未定义书签。 IP过滤分部错误!未定义书签。 身份验证部分错误!未定义书签。 7. 系统性能设计错误!未定义书签。 8. 系统出错处理错误!未定义书签。

引言 背景 此文档的背景 编写目的和范围 说明写这份详细设计说明书的目的。 本详细设计说明书编写的目的是说明程序模块的设计考虑,包括程序描述、输入/输出、算法和流程逻辑等,为软件编程和系统维护提供基础。本说明书的预期读者为系统设计人员、软件开发人员、软件测试人员和项目评审人员。 术语表 定义系统或产品中涉及的重要术语,为读者在阅读文档时提供必要的参考信息。 参考资料 列出有关资料的名称、作者、文件编号或版本等。参考资料包括: a.需求说明书、架构设计说明书等; b.本项目的其他已发表的文件; 使用的文字处理和绘图工具 文字处理软件:[编写设计文档使用的文字处理软件,如RedOffice ] 绘图工具:[使用的UML工具,如Rose、Jude、Visio] 设计概述 任务和目标 需求概述 运行环境概述 条件与限制 详细设计方法和工具 系统详细需求分析 主要对系统级的需求进行分析。首先应对需求分析提出的企业需求进一步确认,并对由于情况变化而带来的需求变化进行较为详细的分析。 详细需求分析 详细功能需求分析 详细性能需求分析 详细资源需求分析 详细接口需求分析 详细系统运行环境及限制条件分析 总体方案确认 着重解决系统总体结构确认及界面划分问题。

二次开发接口说明

二次开发接口说明 目录 客户接口说明.................................................................................................... 错误!未定义书签。 短信二次接口技术 (2) 支持多种操作体统:WINDOWS、LINUX、UNIX (2) 支持多种开发语言:C#、VB、delphi、VC++、ASP、JAVA、.NET 等 (2) 支持编码格式:UTF-8编码 (3) 第一章发送接口 (3) 1.1 请求地址 (3) 1.2参数说明 (3) 1.3返回值 (3) 第二章余额及已发送量查询接口 (5) 2.1 请求地址 (5) 2.2参数说明 (5) 2.3返回值 (5) 第三章非法关键词查询 (7) 3.1 请求地址 (7) 3.2参数说明 (7) 3.3返回值 (7) 第四章状态报告接口 (9) 4.1请求地址 (9) 4.2参数说明 (9) 4.3返回值 (9) 4.4错误返回值——状态报告请求错误返回格式及对应值 (10) 第五章上行接口 (10) 5.1 请求地址 (10) 5.2参数说明 (10) 5.3返回值 (10) 5.4错误返回值——回复请求错误返回格式及对应值 (11)

短信二次接口技术 随着移动商务应用和3G无线技术的加速普及和深入发展与用户需求的变化,短信用户群由时尚人群不断向企业、行业用户扩展。短信作为一种实用、方便、廉价的通信手段,越来越多地成为企业、行业人士日常工作不可或缺的通讯工具;同时,短信应用范围也由通用服务向企业、行业应用领域扩展。短信应用不再局限于交互游戏等娱乐方式,它已经介入到企业办公、银行、证券、保险、交通、教育、社保、数据采集等领域,已成为企业、行业应用密不可分的一部分。面向企业、行业的短信业务逐渐成为短信应用的一个重要组成部分,越来越多的企业开始利用短信平台开展各种短信增值业务如:OA管理系统、短信商业信息发布系统、短信客户关系管理系统、短信呼叫中心、进销存系统、短信防伪、生产管理系统、短信数据采集等。业务系统、网站、客户管理系统、进销存系统、OA、生产管理系统。手机也势必会成为企业信息化管理、移动商务办公的又一大信息终端。 支持多种操作体统:WINDOWS、LINUX、UNIX 支持多种开发语言:C#、VB、delphi、VC++、ASP、JAVA、.NET 等 支持开发方式:Http协议

断点续传简明二次开发以及测试手册

1二次开发接口 导入com.ibm.mqtrans. MQTransInterface类、com.ibm.mqtrans.model.TransInfo类、com.ibm.mqtrans.model.TransInfo,com.ibm.mqtrans.model .ReceveFileData类 com.ibm.mqtrans. MQTransInterface类提供了以下几个接口 方法:initFromConfig(String configFileName) 此方法是静态方法,在调用MQ断点续传接口时仅仅需要调用此接口一次 configFileName:是所需要的配置文件的绝对路径名 方法:int sendFile(String absolutFileName,String receiverName,TransInfo transInfo) 发送文件到MQ服务器中。 参数: absolutFileName:要发送的文件名 receiverName:此文件的接收者,使用时请置NULL transInfo:存储了发送的字节数目等信息,使用此方法时每使用一次请创建此对象一次。返回值: /* * -6:没有足够的可用线程来启动分块传输,请过段时间重试 * -5:没有空闲的服务线程服务 * -4:要发送的文件不能够读取,不能够继续 * -3:要发送的不是文件 * -2:要发送的文件不存在 * -1:失败 * 0:成功 * 1:无法取得与MQ队列管理器的连接 * 2:与MQ队列管理器的连接无效,即出现网络失效错误 */ 方法:List getReceiveFileList(String receiverName,int count) 从MQ服务器中取得可以下载的文件列表 参数: receiverName:接收者,使用时请置NULL count:需要此接口的返回数目,如置上50 返回值: 返回能够接收的文件列表对象,此列表包含ReceveFileData对象 ReceveFileData对象的定义: Msgid:唯一标志能够接收的文件ID Chunkcount:此文件被分成几段上传的,也就意味着将分成几段同时下载 fileLength:此文件的长度

iNESTIM系统二次开发手册

i N E S T I M系统二次开 发手册 标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N]

iNESTIM系统 数据展示及应用分析平台二次开发手册 目录

文件修订记录

一、引言 iNESTIM软件是面向企业(集团)应用需求而研发的专业能源监测与集中控制管理平台,帮助企业加强能源计量管理,开展企业节能降耗行动,提高能源利用率,减少资源消耗、保护环境;协助企业更好地完成资源调配、组织生产、部门结算、成本核算,对能源供应进行监测,以便企业实时掌握能源状况,为实现能源自动化调控奠定坚实的数据基础。 系统配合各用能单位的节能工作,科学合理地降低单位产值或单位产品的能源资源消耗,实现分产品、分车间的能源管理,提高能源资源的利用水平,建立科学合理的能源体系,同时为用能单位能源网络的设计、优化、改造提供全面的基础数据和分析数据;加强对用能单位能源利用状况的宏观监督管理,以及对用能单位能源资源投入产出全过程进行全面的审计,建立科学的能源审计体系;为企业的安全、可靠、高效的用能提供全面的科学指导,最大限度地延长企业生产设备的使用寿命,有效降低维护成本。 本手册定制的目的是为了对项目实施及配置过程中的一些简单二次开发方式做一些说明。 二菜单配置方式 菜单订制及查询sql定制 Sql定制页面的功能是将简单的横行乘数列的表格使用web的方式展示。原理是通过sql语句获取数据集并将获取到的数据集在web上展示出来。此过程只涉及到2个数据表分别是module_info表与report_unit表。也就是说在以上2张表中将记录完成就能在web上形成一个sql定制页面。在数据库中直接配置的方法如下:

【XXXX项目】二次开发设计说明书

文档编号: XXXX 二次开发设计说明书 XXXXXX有限公司

目录 1.引言 (3) 1.1.编写目的 (3) 1.2.项目背景 (3) 1.3.参考资料 (3) 2.二次开发结构 (3) 2.1.软件结构 (3) 2.2.条件与限制 (4) 2.3.二次开发设计框架 (4) 3.二次开发内容 (4) 3.1.内容1(如:窗体定制—- ITEM属性表单的定制) (4) 3.2.内容2 (5) 3.3.内容n (5) 4.接口设计 (5) 4.1内部接口 (5) 4.2外部接口 (6) 5.数据结构设计 (6) 5.1.库结构 (6) 5.2.表结构 (6) 6.出错处理设计 (6) 6.1.出错信息 (6) 6.2.补救措施 (6) 6.3.系统维护设计 (6) 7.其他 (6)

1.引言 1.1. 编写目的 本文档主要针对系统的二次开发部分。对在《实施总体设计方案》中描述的需要二次开发的内容,详细进行描述。 为编程人员、测试人员、实施人员和维护人员之间提供共同的参考依据,对XX软件功能及集成模块的实现作详细描述。本说明书面向对象为编程人员、测试人员、实施人员和维护人员。 1.2. 项目背景 本项目软件开发平台: 本项目软件二次开发实施单位: 1.3. 定义 PLM (product life cycle management):产品生命周期管理 PDM (product data management):产品数据管理 BOM (bill of material):材料明细表 CAPP(Computer Adied Process Planning):计算机辅助工艺设计 PSE (product structure editor):产品结构编辑器 ItemRevision:版本零部件 …… 1.4. 参考资料 《XXXX项目需求规格说明书》 《XXXX项目总体设计方案》 …… 2.二次开发结构 2.1. 软件结构 例如:

TEKLA 二次开发 案例 自学手册

T E K L A二次开发案例 自学手册 https://www.sodocs.net/doc/2510101328.html,work Information Technology Company.2020YEAR

这种材料面向开发人员,他们在Tekla Open API方面的经验很少。这包括具有一定量指导的练习,但是没有太多自动学习和比较新颖的东西。 1 Tekla Structures的Tekla Open API的自学材料 练习的目的和结构 这种自学材料包含练习,以帮助您学习和实践Tekla Open API的基本概念。想要覆盖开发人员可能面临的问题都是不可能的,因此特地介绍了一些典型的例子。熟悉API后,您可以为其他情况开发自己的应用程序。 这个练习分为几个较小的练习,一个创建小建筑物的应用程序,然后从那里生成图纸。练习包含一些建模和图纸的练习。还包括对话框的使用。 在每次练习中,您将在Tekla Structures中看到最终结果的图像,您也可以获取示例代码。下一个练习开始时可以使用相同的示例代码。如果你自己的代码太不一样以至于无法轻松地继续练习,你可以使用示例代码库。 参考手册 在开始练习之前,强烈建议您阅读Open API的参考手册。参考手册TeklaOpenAPI_Reference.chm包含在Open API启动包中。 参考手册是使用API构建新软件时非常宝贵的资源。关于如何使用不同的对象和方法有很多很好的例子。这些练习中应使用参考手册。 以下章节包括自学API的练习。在第1.1章中,有关如何在Microsoft Visual Studio 2010中设置新项目以及如何使用API的练习。建模和对话练习在第2章介绍,绘图练习在第3章中介绍。 1.1在Visual Studio中创建一个新项目 您将学习在项目中使用API所需要做的工作。 前提:当您要测试您的应用程序时,您需要运行Tekla Structures并打开模型,最好是空模型。 1.1.1创建一个新的.NET应用程序项目。 第一步是启动Microsoft Visual Studio 2010并从文件菜单创建一个新项目(新建->项目)。 填写屏幕截图所示的详细信息,然后按OK创建一个空的Windows应用程序。

织梦CMS二次开发技术资料

DedeCMS V5.3二次开发手册 一、模板篇 1.1、主要模板文件与功能说明 DedeCMS系统的模板是非固定的,用户可以在新建栏目时可以自行选择栏目模板,官方仅提供最基本的默认模板,即是内置系统模型的各个模板,由于DedeCMS支持自定义频道模型,用户自定义新频道模型后,还需要按该模型的字段设计一套新的模板,此外,DedeCMS 也支持使用风格的形式使用模板,默认风格是default,它表示系统默认使用{cmspath}/templets/default 这个文件夹的模板,如果你下载了一套新的模板,你可以不必要删除default 原有的文件,把下载的模板文件夹命名你想要的风格名称,如style2 等,然后在后台修改了默认的模板风格名称为style2 ,那系统将使用{cmspath}/templets/style2 这文件当作默认模板,但是若你手工指定了栏目模板的位置,则后台参数风格的定义无效。 一、概念,设计和使用模板,必须要理解下面几个概念 1、板块(封面)模板: 指网站主页或比较重要的栏目封面频道使用的模板,一般用“index_识别ID.htm”命名,此外,用户单独定义的单个页面或自定义标记,也可选是否支持板块模板标记,如果支持,系统会用板块模板标记引擎去解析后才输出内容或生成特定的文件。 2、列表模板: 指网站某个栏目的所有文章列表的模板,一般用“list_识别ID.htm” 命名。 3、档案模板: 表示文档查看页的模板,如文章模板,一般用“article_识别ID.htm” 命名。 4、其它模板: 一般系统常规包含的模板有:主页模板、搜索模板、RSS、JS编译功能模板等,此外用户也可以自定义一个模板创建为任意文件。 二、命名,DedeCMS模板默认命名规则如下 1、模板保存位置: 模板目录:{cmspath} /templets/样式名称(英文,默认为default,其中system为系统底层模板,plus为插件使用的模板)/具体功能模板文件} 2、模板文件命名规范: (1)index_识别ID.htm:表示板块(栏目封面)模板; (2)list_识别ID.htm:表示栏目列表模板; (3)article_识别ID.htm:表示内容查看页(文档模板,包括专题查看页); (4)search.htm:搜索结果列表模板; (5)index.htm:主页模板; 注解:[识别ID]可以在“频道模型管理”的地方获得,当然,你也可以在“频道模型管理”的地方确定某个频道的模板命名。 例:list_image.htm 表示是就是内容类型为图片集的栏目默认列表模板。 article_article.htm 表示的是文章查看页模板。

ERP二次开发规学习手册

TIPTOP GP ERP二次开发规范说明 TIPTOP ERP共分三大区:topstd(标准区) + toppord(正式区) + toptest(测试区) 标准区正式生产环境用户测试,MIS程序客制测试 ┧━━━━━━┸━━━━━━┫目录结构和topprod完全一样 标准tiptop($TOP)客制topcust($CUST) ┧━━━━━━┳━━━┳━━━━━┳━━━┳━━━━╀━━━━━┫┗→目录结构和$TOP完全一样,只不过模组目录都是c开头的了 config doc ds4gl2 ora out schema各模组目录(axm、asf...截止5.25已经有47个模组+sub+lib+qry)config:配置文件目录(top.global全局变量、4ad各程序ACTION列表、4st画面风格、4tb界面按钮风格、等) doc:帮助文档+系统图片目录 ds4gl2:一些脚本目录,如r.c2、r.l2等 ora:一下数据库应用查询脚本,如q_tabFREE等 out:临时目录 schema:数据库sch文件目录 各模组目录:4fd画面档目录、per画面档编译后per目录、4gl源码档、42m、42r Genero Studio文件说明 说明:$XXX表示各个模组;√:服务器必须文件;×服务器可选文件 4pw:Genero Studio项目工程文件(位于服务器目录:$XXX/4pw)× 4fd:画面档(位于服务器目录:$XXX/4fd)√ per:gsform后4fd画面档对照文件(4fd经过gsform后的文件,位于服务器目录:$XXX/per)√ 42f:编译后的画面档文件(4fd经过r.f2后的文件,位于服务器目录:$XXX/per)√ 4gl:源码档(位于服务器目录:$XXX/4gl)√ 42m:编译后的源码链接档(4gl经过r.c2后的编译档,位于服务器目录:$XXX/42m)√ 42r:链接后的可执行文件(42m经过r.l2后的链接档,位于服务器目录:$XXX/42r)√ 4rp:报表文件(位于服务器目录:$XXX/4rp)× sch:数据库表结构文件(位于服务器目录:$XXX/sch)× TIPTOP ERP客制规范命名原则 程序命名原则:X XX(3码)X(2码)XXX(3-5码) 模组名程序类型流水号 模组名:①如果为标准程序,程序名一定是a开头,程序位于对应的$AXX模组目录 ②如果修改标准程序,有些公司是修改为c程序 有些公司还是用原来的a程序 ........................................................但是目录一定都是对应的$CXX模组目录 ③如果是新增程序,程序名一定是c开头,程序目录一定是对应的$CXX模组目录 程序类型:r报表类程序、i基础资料类程序、q查询类程序、t交易类程序、p批处理类程序、s参数类程序 流水号:一般随便编录,不重复就好;专业些就是同一作用的程序流水号一类 $AZZ程序都是p_开头,规则不同与上 $LIB为共用查询程序,都是cl_开头- $CLIB为客制共用查询程序,都是ccl_开头 $SUB为副程序,都是s_开头- $CSUB为客制副程序,都是cs_开头

二次开发文档

Jspxcms无侵入式插件开发(二次开发)教程之一:概述 Jspxcms支持无侵入式插件和二次开发,无需修改系统原有代码,即可无缝整合Entity、Service、Controller、功能菜单、权限、标签、国际化等功能。 系统中“插件--简历管理”就是以这种方式实现的,下面就以“简历管理”讲解Jspxcms插件和二次开发的方法。 本帖隐藏的内容需要回复才可以浏览 配置文件位置:/WEB-INF/conf/plugin。 所有的配置文件都必须在这个目录,在该目录下的配置文件会自动加载。在该目录下新建自己的文件夹,可以是任何名字,如:abc、novel等,本例为plug。即/WEB-INF/conf/plugin/plug 配置文件说明 application.properties:功能菜单、权限、国际化、Entity都与这个文件相关。 context-dao.xml:Dao的加载。 context-service.xml:Service的加载。 controller-back.xml:后台Controller的加载。 controller-fore.xml:前台Controller的加载。 context-directive.xml:标签的加载。 其他与插件开发相关的文件目录 /WEB-INF/messages/plugin/plug:后台国际化文件位置 /WEB-INF/messages/plugin/plugfore:前台国际化文件位置 /WEB-INF/views/plug:后台jsp文件位置 /files/1/bluewise/plug_resume.html:插件的前台模版 插件源代码包名:com.jspxcms.plug Jspxcms无侵入式插件开发(二次开发)教程之二:菜单与权限 本帖隐藏的内容需要回复才可以浏览 菜单和权限配置文件:/WEB-INF/conf/plugin/plug/application.properties 一级菜单配置(分号为分割符) 1.menu.650=navigation.plug;nav.do?menuId=650;nav_plug 复制代码 650:是后台导航一级菜单的编号,编号大小决定菜单的前后位置。其值可以根据需要调整,如330、970,但不要与系统菜单或其他插件菜单重复。系统菜单通常为menu.100,menu.200,menu.600等,系统菜单定义文件在 /WEB-INF/conf/application.properties navigation.plug:菜单名称。这里使用了国际化,也可以直接用中文,比如“我的插件”。 nav.do?menuId=650:菜单链接地址。其中650需与前面的值一样。

用友U870二次开发手册篇

用友U8开发一月通

用友U8平台技术部 ERP事业部产品市场推广部 2007年1月 总策划:郉艳凯 主编:张劲涛、李正、侯关士 撰稿:陈鸿远、鞠进步、唐丰、胡景峰、郑芸、郑子阳、王振骞、陈文海、罗文印、吴小山、李东、蔡再安、廖年兵、蒋志全 审校:姜炜、胡春钰、魏勇、阚宇 鸣谢

衷心感谢U8产品本部邓适宜总经理为本书所做的指导和点评 衷心感谢ERP事业部向奇汉副总裁为本书的传播所给予的关注 衷心感谢U8平台技术部、U8总体设计部、U8供应链开发部、U8财务开发部、U8行业开发部、ERP事业部产品市场推广部在本书的写作推广过程中给予的大力支持和帮助 目录 目录 (3) 开篇导读 (9) 第一篇:U8开发模式介绍 (10) 第一节 U8开发模式 (10) 第二节 U8二次开发模式 (10) 2.1 U8二次开发 (10) 2.2 UAP开发 (10) 第二篇:U8二次开发 (11) 第一节:应用程序框架简介 (11) 第二节:门户开发与集成 (11) 一、功能概述 (11) 二、名词解释 (11) 2.1菜单调整工具 (11) 2.2 idt.dll文件 (11) 三、如何开发可与门户集成的VB dll (12) 3.1代码修改 (12) 3.2常见问题 (16) 3.3参考 (16) 3.4挂接菜单 (18) 四、如何开发可与门户集成的.NET User Control (18) 4.1通过https://www.sodocs.net/doc/2510101328.html,建立一个项目类型为类库的项目 (18) 4.2 实现接口IUserControl (19) 4.3 编译该控件输出DLL (21) 4.4 替换文件 (21) 3.5示例源程序代码 (21)

CAD二次开发手册

VBA 开发手册

第一章 VBA 入门 了解嵌入和全局 VBA 工程 AutoCAD VBA 工程是代码模块、类模块和窗体的集合,它们组合起来以执行给予的功能。工程可保存在 AutoCAD 图形中,或作为独立的文件保存。 嵌入工程是保存在 AutoCAD 图形中。当包含有这些工程的图形中 AutoCAD 打开时,他们可以自动地装载,这种方法可以很方便地分发工程给用户。嵌入工程也有它的极限,它不能打开或关闭 AutoCAD 图形,那是由于他们的函数只存在于工程所在的文档中。使用嵌入工程不需要在运行程序之前查找并装载工程文件。举个含有嵌入工程的图形的例子,当图形打开时,一个时间日志被触发。通过这样一个宏的应用可以登记并记录用户在该图形上所花费的时间。这时用户不必去记住在打开图形之前装载工程,这就是自动操作的一个很好的例子。 全局工程保存在独立的文件中,它更加通用,因为他们能在 AutoCAD 图形中运行,也能打开、关闭 AutoCAD 图形,但它在图形打开时不能自动装载。用户必须知道他们所需要的宏包含在哪个工程文件中。然而,全局工程非常容易与其它使用者共享,它可以将通用的宏做为很好的库而存在。举个例子,你保存在一个工程文件中的宏是有关多个图形的材料清单。这个宏可以在工作周期的末期由管理员运行,这样就可以收集到所有图形的信息。 在特定的时间,用户可以在同个 AutoCAD 进程中同时装载嵌入工程和全局工程。 AutoCAD VBA 工程与 Visual Basic 工程在二进制结构上是不兼容的。然而,其中的窗体、模块和类可以通过在 VBA IDE 环境中使用输入和输出 VBA 命令来在工程之间进行转换。关于 VBA IDE 的更多信息,可以查看“用 VBA IDE 编辑工程” 用 VBA 管理器组织工程 你可以使用 VBA 管理器查看装载在当前 AutoCAD 进程的所有 VBA 工程。VBA 管理器一个AutoCAD 工具,它允许你装载、卸载、保存、创建、嵌入和分离 VBA 工程。 打开VBA 管理器的步骤: 1. 在工具菜单中选择宏-VBA 管理器。 2. 或者,在 AutoCAD 中调用 VBAMAN 命令。 本节的内容: 装载现存的工程 当你装载工程到AutoCAD 中,所有的公用的子程序(也称为宏)都可以使用。 嵌入于图形中的工程在图形打开时就被装载。保存在DVB 文件中的工程必须单独装载。 装载现存的VBA 工程文件 1. 在 VBA 管理器中,使用装载项可弹出打开VBA 工程对话框。 2. 在打开 VBA 工程对话框中,选择打开的工程文件。该VBA 工程对话框允许你打开有效的DVB 文件。如果你尝试打开不同类型的文件,你将会得到出错信息。 3. 选择打开。 本章将为你介绍 AutoCAD VBA 工程及VBA 交互开发环境(VBA IDE)。尽管大部分VBA 环境在行为上都是相似的,但AutoCADVBA IDE 还是有些独有的特性。在AutoCAD 中还有些相关的命令可以用于装载工程、运行工程,或打开VBA IDE 环境。本章将概要介绍VBA 工程、VBA 命令和VBA IDE 的使用。

A1系列二次开发手册范本

前言 本使用手册详细说明了捷宝A1平台系列抄表机(JBA188,JBA168,JBA198)的二次开发工具,开发流程,API函数,以及通讯动态库函数,请在使用前仔细阅读该使用手册,以便保证您的正确使用和工作效率,敬请妥善保管以备日后查阅之用。如发现本手册有编写错误之处,请予以指出,以便更正,!

目录 前言 (1) 二次应用程序开发说明 (3) 1.1 CBJTOOL安装 (3) 1.2编写应用程序 (3) 1.3编程注意事项: (3) 1.4编译程序 (3) 1.4.1 Cbjtool编译工具 (3) 1.4.2编译步骤 (3) 1.5下装文件 (4) 1.6工程文件操作 (4) 二次开发接口介绍 (5) 2.1数据类型 (5) 2.1.1基本数据类型 (5) 2.1.2消息 (5) 2.1.3显示区域 (6) 2.1.4光标 (6) 2.2键盘接口函数 (7) 2.3LCD接口函数 (7) 2.4底层输出函数 (8) 2.5GDI接口显示函数 (8) 2.6蜂鸣器与时钟接口函数 (12) 2.6.1 蜂鸣器函数 (12) 2.6.2 时钟接口 (12) 2.6.3 定时器接口 (13) 2.7文件操作函数 (14) 2.8数据库操作函数(BDC.H) (15) 2.9GUI组件库函数 (17) 2.10消息处理函数 (30) 2.10.1系统消息处理 (30) 2.10.2 GUI消息处理 (31) 2.11标准C数据转换函数 (32) 2.12标准C字符串函数 (33) 2.13图标资源 (34) 2.14串行通讯类 (34) 2.15权限管理类 (36) 2.16环境变量类 (36) 2.17输入法接口 (38) 2.18系统服务调用 (39)

ecshop二次开发手册基础教程

ecshop二次开发手册基础教程 【基本熟悉】 前言:ECSHOP是一套完整的网络商店解决方案,包括前台的商品展示、购物流程和强大易用的后台管理。由于ecshop简单易用,使用者几乎可以在3几分钟简单的设置一下就可以拥有一个网上商店系统,所以很多的B2C站点都选择了使用ECShop网上商店系统,但是有时候我们需要做一些ecshop本来没有的功能或者前端展示,这时候就需要我们自己去进行对ecshop的二次开发了。 一、ecshop系统功能二次开发 ecshop的代码结构非常易懂,只有有一点php基础都可以在原有的程序基础上进行修改,或功能插件的开发。 ecshop中的一些公用函数都会放在includes文件夹里,而这些公用函数几乎我们都可以用来参照一下就能轻松做出我们想要的其他功能了。 我们要对ecshop进行二次开发,简单来说其实就是对数据库的读写操作,所以只要我们读懂ecshop的数据库操作类,接下来的实现就很轻松了。 ecshop的数据库操作类是很强大的,一些常用的函数如下: 1.获取单条记录 $GLOBALS['db']->getRow($sql); 2.获取单一字段 $GLOBALS['db']->getOne($sql); 例如查询产品总数: echo $GLOBALS['db']->getOne(…SELECT COUNT(*) FROM … . $GLOBALS['ecs']->table(…goods?) ; 3.获取所有记录 $GLOBALS['db']->getAll($sql); 4.执行sql语句 $GLOBALS['db']->query($sql); //执行删除(DELETE),插入(INSERT),更新(UPDATE)等操作可用此方法 5.把数组元素插入数据库 $parent['goods_number'] = ?1′; $parent['parent_id'] = 0; $GLOBALS['db']->autoExecute($GLOBALS['ecs']->table(…cart?), $parent, …INSERT?); 基于此基础上就能轻松进行ecshop二次开发了。 二、ecshop前端模板的二次开发 ecshop有强大的模版机制,ECSHOP 结合Dreamweaver实现了一套模版机制,改动模版不再需要上传,而是在后台稍稍动动手设置一下就可以了。 ecshop采用smarty模板技术,Smarty是一个使用PHP写出来的模板引擎,是目前业界最著名的PHP模板引擎之一。它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑分离。 在php文件中使用assign方法把php变量传值给模板文件,例如: $smarty->assign(…action?, $action);

二次开发接口文档

一、开发包目录结构 1.1demo 文件夹 包含了sdk 接口调用源代码,可供二次开发参考。使用C++开发的MFC 程序。 1.2dll 文件夹 包含了二次开发所需的所有动态库,demo 编译好的exe 文件需要放在该文件夹内才可以运行。 1.3include 文件夹 包含了二次开发所需要的头文件。 1.4lib 文件夹 包含了二次开发所需要的lib 静态库。 1.5DSS 二次开发指南(C++).pdf 指导二次开发用户如何新建VS2005 工程运行demo 文件夹中的demo。 1.6 dpsdk 开发包的程序版本信息。 1.7常见问题解答.pdf 二次开发常见问题以及解决方式。 1.8大华平台SDK 开发手册(C++版).chm 二次开发接口使用说明。 二、术语和缩略语 1、DPSDK:DSS 平台二次开发SDK 包 2、CMS:中心管理服务 3、DMS:设备管理模块 4、demo:程序示例(功能类似DSS 平台客户端) 5、web 管理员端:在浏览器中输入DSS 平台的ip 即可打开管理员端 6、CameraID:通道id,形如:$1$0$0 7、DeviceID:设备id 三、Demo 操作方法 运行demo

把“demo/bin/”目录下面的3 个文件,如下图所示 拷贝到“dll”文件夹下面,运行。 登陆平台 图 1 登陆界面 登陆界面如图 1 所示, 其中: IP:DSS 平台 ip 地址;端口:9000; 用户名:web 管理员端配置的用户; 密码:web管理员端配置的用户对应的密码。 点击“登录”按钮,登陆平台。登陆成功的界面如图2 所示:

相关主题