2000分一个问题
我现在有个数据源(表一)
结构为:
计提月份,班次,线路,司机号,营运日期,里程数,车次数,客运人次,客运收入
要得到的结果(表二),主要是算出司机的计提
结构为:
计提月份,司机号,计提数
问题是计提方案有好多,各条线路都不同,而且每个月都有新方案或必变方案。所以设计的时候可能只能考虑动态设计方案。
我列举一个方案吧:
计提=(线路总客运收入*0.7/线路总车次数)*司机车次数
谁能帮我解决这个问题,送你2000分,如果不够再加
问题点数:100、回复次数:20Top
1 楼flyingkiller(大飞虫)回复于 2003-06-04 09:56:38 得分 5
用什么数据库的?
如果是大数据库,如SqlServer,就可以在数据库中建一个表存 计提的计算公式。
要是简单数据库的话,使用一个脚本控件,可以是Delphi 的,也可以是别的,动态改变脚本来改变计提计算公式。
Top
2 楼ihihonline(潇潇->戒烟)回复于 2003-06-04 09:59:51 得分 1
不知道这个问题何以出2000分,还是我没有看到问题的实质?Top
3 楼dreamyyuan(★飛龍在天★)回复于 2003-06-04 10:04:16 得分 1
把大蝦們都吸引過來了Top
4 楼jianke5555(汐)回复于 2003-06-04 10:04:23 得分 3
计提=(线路总客运收入*0.7/线路总车次数)*司机车次数
建个表里面存这些参数,然后让用户自己拖拉这些字段形成公式后就存进库里面你就可以去计算了。Top
5 楼sunssc(大虾)回复于 2003-06-04 10:04:48 得分 5
将公式保存到数据库中,就可以实现动态了!!
这个问题不值2000分吧??
斑竹注意了!!!!
该不会是倒分吧!!!!Top
6 楼hammer_shi(dmresearch)回复于 2003-06-04 10:05:45 得分 5
flyingkiller(大飞虫)说的不错,对于动态的公式你可以设计一个表辅助存储公式(可能要再使用一个表存储公式参数)。
但是要是只是参数不一样设计的表只需要记录参数了,这样编程也就简单些。
Top
7 楼hansion3406(阿木㊣拖鞋男)回复于 2003-06-04 10:05:58 得分 3
不用这么夸张吧./.2000分..Top
8 楼dabaicai(烈士暮年)回复于 2003-06-04 10:29:20 得分 3
在数据库中存上这个公式,要修改就修改,应该很简单啊!
奇怪Top
9 楼DelphiBoy2003(努力提升功力中)回复于 2003-06-04 10:40:56 得分 1
数据库问题都这么值分的吗Top
10 楼tpmao(想飞的猫)回复于 2003-06-04 10:43:15 得分 2
要不使用计算字段??要不使用计算字段??要不使用计算字段??要不使用计算字段??要不使用计算字段??要不使用计算字段??要不使用计算字段??要不使用计算字段??要不使用计算字段??要不使用计算字段??要不使用计算字段??要不使用计算字段??要不使用计算字段??要不使用计算字段??要不使用计算字段??Top
11 楼DelUser(探索者)回复于 2003-06-04 10:43:36 得分 1
to ihihonline(小小->沉沦中..........)
我看到实质了,就是司机的提成奖金 :)
钱当然值2000分了Top
12 楼firmamenthy(执子之手)回复于 2003-06-04 10:52:45 得分 1
以上几位已经回答问题了Top
13 楼xzhbaggio(忧郁王子-罗*巴乔)回复于 2003-06-04 10:58:26 得分 20
先建一个View(举例)
Creatr View LineMonth as
(select 计提月,线路,SUM(车次),SUM(客运收入) from "该表" group by 线路,计提月)
然后关联
建出一个新View,(就是你要的结果).
如:计提月份,司机号,计提数
然后在Delphi中只调用最后的View.如要改.只要在数据库中改View的语句就行了(不破坏View的结构).
Top
14 楼rustle(刘敏(Rustle Liu))回复于 2003-06-04 10:58:58 得分 20
用一个表存储计算公式,可以配置的
然后取出来用脚本控件计算
关于脚本使用:http://expert.csdn.net/Expert/TopicView1.asp?id=1818477Top
15 楼bbs791109(小别)回复于 2003-06-04 11:05:14 得分 20
這個問題不是很難吧。2000分??????
1﹑建一個公式表不就搞定了。(計提月份month,計提公式gs)
假設在表1中﹕计提月份,班次,线路,司机号,营运日期,里程数,车次数,客运人次,客运收入 分別用﹕month,bc,xl,sjh,rq,lcs,ccs,kyrc,kysr來表示。
比如﹕在公式表中建一個公式﹕(假設表為tab_gs)
(先用group by month,sjh 對表1進行分組,假設得到的是tab2,
但在tab2中一定要有kysr﹐ccs字段)
month=200306
gs=(sum(kysr)*0.7/sum(ccs))*ccs
想得出計提不是很簡單了﹕
declare @gs varchar(100),@sql varchar(200)
set @gs=gs from tab_gs where month='月份'
set @sql='select ' + @gs + ' from tab2 into 表2' -----(表2就是你所需要的表)
exec(@sql)Top
16 楼foreveryday007(有無數種方法可以浪費一天的時間…但是…)回复于 2003-06-04 11:22:30 得分 3
應該就是用公式來設定了
會計中的報表,用戶就可以自己設定
貿易中的報價公式,利潤分析,用戶都可以自己設定的
其實就是1公式的設定
在報表生成時再把這個公式1解開來Top
17 楼hansion3406(阿木㊣拖鞋男)回复于 2003-06-04 11:22:35 得分 1
有没有搞错???
反正我是不敢发现什么意见了..
*^_^*Top
18 楼firetoucher(风焱)回复于 2003-06-04 11:46:42 得分 5
1 在表中设计一个计算字段,需要更改计算公式时调用alter table修改该列
2 用视图,需要更改计算公式时重新构建view
3 用存储过程,利用动态sql 语句,将公式存到某一个表,查询时动态运行
比如
declare @a varcahr(2000)
select @a = '计提=(线路总客运收入*0.7/线路总车次数)*司机车次数'
exec ('select *,' + @a + 'from table')
Top
19 楼heaseef(烂星星)回复于 2003-06-04 15:52:50 得分 0
上面各位的方法,都不行,要是这样的话,我也不会烦大家啦!Top
20 楼heaseef(烂星星)回复于 2003-06-04 15:57:12 得分 0
上面大家说的方面我做工资程序就用过啊,但这里麻烦多了!2000分值!Top




