起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 738|回复: 15

【搞定】急:如何用代码写 字段的自动填充设置?**

[复制链接]
发表于 2007-4-11 15:06:06 | 显示全部楼层 |阅读模式
我的数据集中有三个字段:SL,DJ,JE
数量SL,单价DJ,金额JE,请问如何设置 JE 字段的自动填充,使其具备如下功能:
1、修改 SL 或 DJ  则自动计算出 JE=SL*DJ
2、JE字段 不管空与否,不管只读与否 ,都要能 自动填充
回复

使用道具 举报

发表于 2007-4-11 15:38:22 | 显示全部楼层
1、修改 SL 或 DJ  则自动计算出 JE=SL*DJ
那就直接设置自动填充的表达式为:SL*DJ

2、JE字段 不管空与否,不管只读与否 ,都要能 自动填充
可以,设置自动填充事机就可以了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-4-12 14:54:06 | 显示全部楼层
我的意思是 如何用 delphi 代码 实现 这种功能?
用 delphi 代码 实现,用 delphi 代码 实现用 delphi 代码 实现用 delphi 代码 实现用 delphi 代码 实现!!!!
看来,文字交流还是比较累。
回复 支持 反对

使用道具 举报

发表于 2007-4-12 15:13:44 | 显示全部楼层
不明白,你是要在平台上用代码来实现这些码?还是要在Delphi 中实现这些

如果是在平台上实现,就不明白,平台已经提供特性了,为啥要用代码了。
如果还是要代码,
那就是
dsDataSet.DataSet.FieldByName('JE').AsFloat := dsDataSet.DataSet.FieldByName('DJ').AsFloat*DataSetBroker1.DataSet.FieldByName('SL').AsFloat


如果是delphi中实现,请参考delphi的帮助
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-4-12 16:21:33 | 显示全部楼层
如果是在平台上实现,就不明白,平台已经提供特性了,为啥要用代码了。
针对你这句话,就只能写死的程序了。为何你们平台中的一个网格,我能出ERP中所有报表(靠的就是在功能运行起来后,动态写代码实现的);
所以一句话:你的想法是做死程序的一个方法,我希望做活程序:
在设计(没有运行前)时,仅在信息层拉个数据集,界面上拉个网格而已,等运行起来后对数据集赋SQL语句,打开并用代码实现与网格的绑定。
这时的数据集有SL,DJ,JE三个字段(这三个字段在设计时是没有的,运行起来后才有),故要在运行起来后,设置 JE=SL*DJ,
说了这么多,总该知道我为何要用代码动态写了吧,如还不明白,你写就是了
总之,我要用代码实现:在设计时(没有运行时,死的设置JE=SL*DJ)设置的自动填充功能,
也就是说,我在设计数据集时,不想傻瓜式地一步一步设计字段的自动填充功能,我想用写CODEING的方式,实现同样的功能,OK?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-4-13 08:58:21 | 显示全部楼层
UP.怎么没人回复了
回复 支持 反对

使用道具 举报

发表于 2007-4-13 09:14:52 | 显示全部楼层
最初由 atiger 发布
[B]不明白,你是要在平台上用代码来实现这些码?还是要在Delphi 中实现这些

如果是在平台上实现,就不明白,平台已经提供特性了,为啥要用代码了。
如果还是要代码,
那?..

以下省略...... [/B]


这个不能满足你的需求吗?如果是哪里不满足呢?
回复 支持 反对

使用道具 举报

发表于 2007-4-13 15:00:02 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-4-16 17:26:55 | 显示全部楼层
就一个关闭属性,还不能满足我的需求,

请问 dsDataSet.DataSet.BizFieldByName('XX').AutoFillDef.Options
怎么给它赋值

虽然dsDataSet.DataSet.BizFieldByName('XX').AutoFillDef.Options  := [0,1,2] 也可以实现,
但我想知道,具体的枚举值!

谢谢 
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-4-17 08:52:50 | 显示全部楼层
UP, UP
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-6 20:41 , Processed in 0.041523 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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