大家来谈谈:产品推广时,如何解决需求个性化问题? 我开发了一个产品,正在推广,但是,遇到了不同用户需求个性化的问题:即我的产品基本能满足大多数用户的需要,但是不同的用户,在某些地方又有不同的需求。例如:某个录入窗口,大部分用户需要10个字段,但是,某些个别用户需要8个或11、12个字段,我该如何维护我程序的版本呢?我总不能为不同的用户都做一个版本吧?我现在的做法是:程序和数据库都用一个版本,用配置参数的方法决定某些字段的显示与存取。这样对于少量用户还行,但是随着用户的增加,越来越麻烦。请有经验的朋友谈一下吧。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不知道这样能不能绕开版权问题:解释性delphi一个通用的解释器(客户端)自动从服务器下载 pas/dfm的加密包,在本地解压到内存里直接解释执行pas/dfm可以通过delphi的免费版进行开发,测试完毕在自动分发(压缩加密)到服务器 做数据表的字典表,,每个用户可以自行维护数据表的显示否、宽度,位置等。grid显示时,会根据字典表来。dbedit也可以根据字典表来自动创建,动态的位置,动态宽度。有点点不好,,要多在表中建些字段。如:本来打算只有9个字段,字符,日期,数字各三个。。这样子一来,你就每程建5个,共15个 haochin:你的思路不错。按你的思路,数据库和程序都用一个版本,是吗?例如:入库单表,字段中就要包括所有用户需要的字段,然后再根据数据字典表,决定哪些字段的显示与否。显示方面好控制,就是操作界面上,动态创建控件不太好控制吧?界面上可能有很多控制逻辑的,还有布局。我想用一个笨方法:事先设计好几种界面,然后根据不同的用户调用不同的界面,行吗?不用动态创建的。 每个用户可以自行维护数据表的显示否、宽度,位置等。不过我是把它自动存在本地的ini文件,下次运行时自动调入如果某个dbgrid没有任何设置,则从服务器调入一个缺省的配置,关闭程序时也自动保存到ini了 我的想法:1 数据字典不可少.描述一个数据集里面有什么字段,每个字段该如何显示.哪些字段属于关键字段,用户不可修改,其他字段用户可自由增删.依据数据字典中的SQL来生成数据集2 DBEdit等编辑控件,用与EControl_Designer类似的界面控件,提供运行期修改界面功能.这样就能解决编辑数据集的问题.如果要求高些可加入运行期脚本支持. 3 提供数据集TDataset的各种模板,如浏览模板,编辑模板,主从表模板,图表模板. 只要关联对应的数据集,套用模板(Form),加上辅助的动态修改界面,可以应付大多数界面情况. 数据(来源于数据集) + 控制器(数据字典控制格式,选择不同模板得到不同结果) + 显示方式(Form模板) = 终端界面终端界面 + 动态修改 + 可选的动态脚本= 最终成品动态脚本主要用于维护界面逻辑 , 业务逻辑主要用"硬编码+关键字段"来实现 数据字典描述的是数据集,不是真实的表,这样用户不能修改真实的数据表,但又能提供动态增删字段的行为, 至于多出的冗余字段,可以使用所谓的"优化器"来删除冗余字段,来达到性能的优化.这样需要维护的内容比较少,界面部分基本不用多管了, 不同的用户其界面不一样,显示的字段内容不一样,但是不需要更改程序.但仅是这样,应该还是不能满足不同用户的需求, 因为不同的用户,其业务逻辑一般是不一样的,这时可以考虑使用插件模式,为不同的用户编写特定的功能插件DLL(BPL).利用继承,只需要写额外的业务逻辑代码而已. 未必,特别是版本升级,修改bug时 PPower:你的思路很好。具体实现上不太容易。kampan:参考哪个ERP啊。请指教。请有经验的朋友继续指教。 pengxuan:这不是收费的问题。是程序开发的问题。 midas.dll 公司工作量少时,大家是如何提升自己的?? fastreport 如何只打印过滤后的dataset 怎样把一个存有图片的字段内容赋值给另外一个DBImage1? 关于屏蔽Ctrl+Alt+Del 用DBGridEh处理从表的汇总 招聘(深圳关内) 请推荐delphi入门书籍(高分) API高手请进 谁写过电视墙程序 发EMAIL给我! 序列号保护模块 delphi版RC4功能求助
解释性delphi
一个通用的解释器(客户端)自动从服务器下载 pas/dfm的加密包,在本地解压到内存里直接解释执行
pas/dfm可以通过delphi的免费版进行开发,测试完毕在自动分发(压缩加密)到服务器
做数据表的字典表,,
每个用户可以自行维护数据表的显示否、宽度,位置等。
grid显示时,会根据字典表来。
dbedit也可以根据字典表来自动创建,动态的位置,动态宽度。有点点不好,,要多在表中建些字段。
如:本来打算只有9个字段,字符,日期,数字各三个。。
这样子一来,你就每程建5个,共15个
按你的思路,数据库和程序都用一个版本,是吗?例如:入库单表,字段中就要包括所有用户需要的字段,然后再根据数据字典表,决定哪些字段的显示与否。显示方面好控制,就是操作界面上,动态创建控件不太好控制吧?界面上可能有很多控制逻辑的,还有布局。我想用一个笨方法:事先设计好几种界面,然后根据不同的用户调用不同的界面,行吗?不用动态创建的。
每个用户可以自行维护数据表的显示否、宽度,位置等。
不过我是把它自动存在本地的ini文件,下次运行时自动调入
如果某个dbgrid没有任何设置,则从服务器调入一个缺省的配置,关闭程序时也自动保存到ini了
2 DBEdit等编辑控件,用与EControl_Designer类似的界面控件,提供运行期修改界面功能.这样就能解决编辑数据集的问题.如果要求高些可加入运行期脚本支持.
3 提供数据集TDataset的各种模板,如浏览模板,编辑模板,主从表模板,图表模板. 只要关联对应的数据集,套用模板(Form),加上辅助的动态修改界面,可以应付大多数界面情况. 数据(来源于数据集) + 控制器(数据字典控制格式,选择不同模板得到不同结果) + 显示方式(Form模板) = 终端界面终端界面 + 动态修改 + 可选的动态脚本= 最终成品
动态脚本主要用于维护界面逻辑 , 业务逻辑主要用"硬编码+关键字段"来实现 数据字典描述的是数据集,不是真实的表,这样用户不能修改真实的数据表,但又能提供动态增删字段的行为, 至于多出的冗余字段,可以使用所谓的"优化器"来删除冗余字段,来达到性能的优化.这样需要维护的内容比较少,界面部分基本不用多管了, 不同的用户其界面不一样,显示的字段内容不一样,但是不需要更改程序.但仅是这样,应该还是不能满足不同用户的需求, 因为不同的用户,其业务逻辑一般是不一样的,这时可以考虑使用插件模式,为不同的用户编写特定的功能插件DLL(BPL).利用继承,只需要写额外的业务逻辑代码而已.