J Jiao_he Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-19 #21 我想要,谢了! jiao_he@sina.com
Y yobdrow Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-19 #22 看例子,很詳細的 首先:公式中的變量名好像隻能是指定的a,b,c....等 你必須把你公式中的field名換成a,b,c... 如:(a+b-c)*d/e 在需要計算時,取出計算公式,將各field對應賦給a,b,c...等,然後控件名.value 就是你需要的結果
看例子,很詳細的 首先:公式中的變量名好像隻能是指定的a,b,c....等 你必須把你公式中的field名換成a,b,c... 如:(a+b-c)*d/e 在需要計算時,取出計算公式,將各field對應賦給a,b,c...等,然後控件名.value 就是你需要的結果
Y yobdrow Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-19 #23 想要的朋友可以到csdn或深度探險去找,parser10,都有的
T tanzhouren Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-19 #24 谢谢:yidaoh 整批修改某字段的值可用你的方法(update) 可我主要是考虑到有一个输入表单,上面有二十个edit框,当用户在某一个框中输入值时,和此框 有联系的edit框就会自动根据公式显示出相应的值。如用户输入应发工资时,就应算出个人 所得税...我不知在程序中如何根据用户已改变的公式来自动调整语句。
谢谢:yidaoh 整批修改某字段的值可用你的方法(update) 可我主要是考虑到有一个输入表单,上面有二十个edit框,当用户在某一个框中输入值时,和此框 有联系的edit框就会自动根据公式显示出相应的值。如用户输入应发工资时,就应算出个人 所得税...我不知在程序中如何根据用户已改变的公式来自动调整语句。
B barton Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-19 #25 1.使用TParser component,zeosdbo中带; 2.公式可以存贮在某个字符串字段中; 3.变量可以设计成代码,TParser带有iif函数,支持自定义函数(!!!)。
Y yidaoh Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-19 #26 1。将TEdit换成TDBEdit,再输入框的onExit事件中调用计算 或者 2。采用其他富翁推荐的公式解析工具。
T tooper Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-19 #27 别用控件了 这是Delphi程序员的陋习 还是自己写吧 表达式解析可是程序员的基本功呦 看看数据结构的书吧 凡是讲堆栈的地方都有源码
C cqsssco Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-20 #28 其实我在三年前编过这样一东西完全满足你的条件 我用的是DEIPHI+F1_BOOK 要的话请EM—MAIL:cqsssco@21.com
T tanzhouren Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-20 #29 谢谢各位大虾! cqsssco给我一份。 tanzhouren@263.net
莫 莫知 Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-20 #30 cqsssco请给我一份。zhouqing99@163.net
龙 龙丹 Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-24 #33 问题的实质是要有一个公式翻译器,这当然不能算是简单的事,“十万火急”的话是来不及 做的,楼上推荐的控件可以用(我也有这样的东西,但不能贡献出来,以后或许可以),不 过可以再给你推荐一个快捷方法,利用SQL的计算能力,公式按SQL的语法书写,计算的时 候作为SQL的一部分执行: select 公式 from dual/tablenames
问题的实质是要有一个公式翻译器,这当然不能算是简单的事,“十万火急”的话是来不及 做的,楼上推荐的控件可以用(我也有这样的东西,但不能贡献出来,以后或许可以),不 过可以再给你推荐一个快捷方法,利用SQL的计算能力,公式按SQL的语法书写,计算的时 候作为SQL的一部分执行: select 公式 from dual/tablenames
风 风中的狼 Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-24 #34 写一个公式编译器是不容易! 但就他想要解决的问题来说,倒是很容易! 比如 应发工资包括基本工资、浮动工资、工龄工资等。 这其实只是一个累加工式,我想也不会有什么变化。 同样应扣工资是各应扣部分的累加公式。 实发工资=应发工资-应扣工资。 YES OR NO? 其次是应扣部分。 就拿个人所得税来说,这个公式也是固定的。 应发工资小于800时,个人所得税为零 大于800小于5000(举个例子,我也不清楚究竟是多少,呵呵)时 个人所得税为(应发工资-800)X0.05 同理,大于5000而小于10000时, 个人所得税为(应发工资-5000)X0.1 也就是说,公式本身并没有变化,变化的只是其中的参数! 至于什么养老保险,住房公积金都是这样! 用户真正要修改的也只是其中的参数。 不对吗? 但如果用户要求能够自己添加工式,那就不怎么好办,但也并不是太复杂。
写一个公式编译器是不容易! 但就他想要解决的问题来说,倒是很容易! 比如 应发工资包括基本工资、浮动工资、工龄工资等。 这其实只是一个累加工式,我想也不会有什么变化。 同样应扣工资是各应扣部分的累加公式。 实发工资=应发工资-应扣工资。 YES OR NO? 其次是应扣部分。 就拿个人所得税来说,这个公式也是固定的。 应发工资小于800时,个人所得税为零 大于800小于5000(举个例子,我也不清楚究竟是多少,呵呵)时 个人所得税为(应发工资-800)X0.05 同理,大于5000而小于10000时, 个人所得税为(应发工资-5000)X0.1 也就是说,公式本身并没有变化,变化的只是其中的参数! 至于什么养老保险,住房公积金都是这样! 用户真正要修改的也只是其中的参数。 不对吗? 但如果用户要求能够自己添加工式,那就不怎么好办,但也并不是太复杂。
杨 杨继恩 Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-24 #36 告诉你一个绝对可行的方法,在http://www.hd-sc.com上下载《工资管理系统》, 它有两种定义公式的方法。自己去看!别忘记送分!!
T Tommi Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-29 #37 在http://www.csdn.net/dev/Delphi/vcl/vcltools/parser10.zip下载 可以解决你的问题
T tanzhouren Unregistered / Unconfirmed GUEST, unregistred user! 2001-09-30 #40 各位可能有些误解,请各位明看,我的公式表是这样的(access97表) 序号 项目 条件 计算式 01 加班工资 加班时数*3 02 包干药费 工龄<1 0 03 包干药费 工龄>=1.and.工龄<=5 20 04 包干药费 工龄>5.and.工龄<=1 30 05 包干药费 工龄>10.and.工龄<=20 40 06 包干药费 工龄>20.and.工龄<=30 50 07 包干药费 工龄>30 60 08 应发合计 档案工资+浮动工资+加班工资+主付食补贴+夜餐费+奖金+包干药费+冷饮费 21 代扣所得税 应发合计>800 (应发合计-800)*0.05 22 代扣所得税 应发合计>1300 (应发合计-800)*0.1-25 23 代扣所得税 应发合计>580 (应发合计-800)*0.2-375 23 代扣所得税 应发合计>2800 (应发合计-800)*0.15-125 25 代扣所得税 应发合计>20800 (应发合计-800)*0.25-1375 26 代扣所得税 应发合计>40800 (应发合计-800)*0.3-3375 27 代扣所得税 应发合计>60800 (应发合计-800)*0.35-6375 28 扣款合计 扣药费+代扣所得税+扣回借款+代扣房租费+代扣水电费 99 实发工资 应发合计 - 扣款合计 用户可以修改此表,当用户改动后,我在统计时,也应作改动,怎么用delphi语句实现 此功能?
各位可能有些误解,请各位明看,我的公式表是这样的(access97表) 序号 项目 条件 计算式 01 加班工资 加班时数*3 02 包干药费 工龄<1 0 03 包干药费 工龄>=1.and.工龄<=5 20 04 包干药费 工龄>5.and.工龄<=1 30 05 包干药费 工龄>10.and.工龄<=20 40 06 包干药费 工龄>20.and.工龄<=30 50 07 包干药费 工龄>30 60 08 应发合计 档案工资+浮动工资+加班工资+主付食补贴+夜餐费+奖金+包干药费+冷饮费 21 代扣所得税 应发合计>800 (应发合计-800)*0.05 22 代扣所得税 应发合计>1300 (应发合计-800)*0.1-25 23 代扣所得税 应发合计>580 (应发合计-800)*0.2-375 23 代扣所得税 应发合计>2800 (应发合计-800)*0.15-125 25 代扣所得税 应发合计>20800 (应发合计-800)*0.25-1375 26 代扣所得税 应发合计>40800 (应发合计-800)*0.3-3375 27 代扣所得税 应发合计>60800 (应发合计-800)*0.35-6375 28 扣款合计 扣药费+代扣所得税+扣回借款+代扣房租费+代扣水电费 99 实发工资 应发合计 - 扣款合计 用户可以修改此表,当用户改动后,我在统计时,也应作改动,怎么用delphi语句实现 此功能?