网站首页博客首页 ┆欢迎光临 ERP顾问最热爱的网络——金蝶社区 登录注册帮助
阳光时间
岁月于荒芜的时候,常有骆驼出现
日志

单据自定义,轴承铸件的称重计价!

BySuntime   2007-12-26

 

 

声明:本案例涉及对数据库的操作,特别是金蝶账套的单据模板数据表的修改,存在一定的数据风险,操作前请备份好账套。如果你对金蝶K3系列产品的数据结构不熟悉,请就此打住。望三思而后行!!!

 

 

一、需求

小静这丫头,最近轴承企业做得比较多。

(那此轴承企业生产的轴承,卖到俄罗斯和美国都有,估计下次世界大战,两个对打的轴承,搞不好全是大连生产的。虽然是卖废铁废钢,再怎么也比珠三角卖人力的强。尽管近两三年人工有所涨价、新劳动合动也快实施了,但一百好几斤的农民工一个月再怎么劳作,也就在那一千元左右的工资。台佬哥还不停地报怨成本涨了、不赚钱了,早知道这样,还不如早给做点高新、早点做品牌,即便代工,也该同鬼佬多谈点价格啊?!即便实在做不了,就跟着小静他们去做轴承,一吨铜铁也有上千好几万啊。-:),一些废话。)

做轴承要买铸件、卖轴承也是卖大件。于是弄多了,大家的轴承一个一个地卖,都觉得天天报价要价实在太麻烦,刚脆论斤卖得了,于是就有论重计价。

轴承都称重论斤卖了,软件也就跟着论斤卖了,于是小静一个一个账套地去改。刚开始时,小静还不觉得不辛苦,跑了三头两天,结果连圣诞节都搭进去了,小静傻眼了,这软件做起来怎么比轴承还重啊?!

小静忽然想到,人家的作业方式都是一样的,为什么我的软件设置就不能复制啊,省得天天折腾。

嗯,是得找个一劳永逸的办法了。

 

二、需求分析及关键点说明

如下图:

需求分析环境:KIS 专业版 V9.1

需求解析:

这是一个称重计价的需求。简单点说,要在单据上体现这两个基本逻辑关系:

1、 数量×单重=总重量

2、 单重×单重单价=单价

由此派生出的数据关系,金额=数量×单价 金额=总重量×单重单价

解决方式:

1、对于单个产品而言,其单重相对比较固定,故在物料基础资料中新增一个自定义字段单重” (数据库字段名FUnitWeight),用于录入物料单重资料。

2、在采购入库单上新增单重字段(数据库字段名FUnitWeight),属性为数值。新增单据时,来源于物料基础资料的单重字段,录入单据时可根据实际情况修改,需要保存数据到数据表。本步操作要修改Action

新增字段,假定后台新增字段名为FUnitWeight

在新增单据自定义后执行如下脚本:

-----------------------

Update ICTemplateEntry set FRelationID='FItemID',FAction='.,FUnitWeight', where FID=’A01’  And FFieldName='FUnitWeight'

----------------------

在采购入库单上新增单重单价字段(数据库字段名FUnitWeiPrice),属性为单价。录入单据时可根据实际情况修改,需要保存数据到数据表。本步操作直接可以通过软件的单据自定义工具进行操作。

在采购入库单上新增总重量字段(数据库字段名FTotalWeight),属性为数量。新增录入单据时不可以修改,但需要保存数据到数据表。定义计算公式:总重量=数量×单重。本步操作直接可以通过软件的单据自定义工具进行操作。

3、 单据模板后期处理,需要处理 单价、金额及单重单价(由单价反算)三字段的Action

这里以单价为例作说明。

这是系统单价原来的设置:

-----------------------

UPDATE ICTemplateEntry SET

FRelationID='FItemID,FAmount,FUnitID',

FAction='.,FPlanPrice;!,FAmount,/,FAuxQty'

WHERE FID='A01' And FFieldName='FAuxPrice'

----------------------

这是需要更新的脚本:

-----------------------

UPDATE ICTemplateEntry SET

FRelationID='FItemID,FAmount,FUnitID,FUnitWeight,FUnitWeiPrice,FTotalWeight',

FAction='.,FPlanPrice;!,FAmount,/,FAuxQty;Cal,A=B*C,FUnitWeight,FUnitWeiPrice'

WHERE FID='A01' And FFieldName='FAuxPrice'

----------------------

两者的差异,我就不再作说明了,自己去比较吧。

 

三、应用效果

如上图。

实际上,这个例子,比昨天所说的,ilikesap11 的銅基计价计算需求要简单得多。

 

四、其他

整理的你的脚本、保存,以备下次应用。这是个好习惯。

 

本文档从金蝶社区和QQ4362985散发。若要转载,请注明出处。谢谢。

已经公开 2007年12月26日 16:25 作者: Suntime
所属归类: ,

评论

 
小静这丫头真有福!
2007-12-26 16:50
 
 
呵呵,是吧!羡慕我吧。。。
2007-12-26 17:33
 
 

多谢分享.

2007-12-26 22:57
 
 

哈哈,学习中!

2007-12-26 23:12
 
 

不错..最近我也了解了数据库里面的公式设置.但还不够理解..

小静你要付开发费给你大叔叔了...

2007-12-27 11:41
 
 
刚接到小静电话,有两个细节问题
1、单重单价、单重并不是必输项目
2、输入数量单价得不到金额
 
修改脚本如下:
 

UPDATE ICTemplateEntry SET FAction='Cal,FAuxQty|FAuxPrice&A=B*C,FAuxQty,FAuxPrice;Cal,FAuxQty|FUnitWeight|FUnitWeiPrice&A=B*C*D,FQty,FUnitWeight,FUnitWeiPrice'
WHERE FFieldName='FAmount' and FID='A01'

UPDATE ICTemplateEntry SET FMustInput=0
WHERE FFieldName='FUnitWeiPrice' and FID='A01'
2007-12-27 13:42
 
 
收到!谢谢大叔叔!
 
本家哥哥,谁叫你不教我写这个东东。每次我只能苦力的去数据库直接改。现在有脚本,不就方便了嘛。我又一大堆创意,但是不能实现。
2007-12-27 14:01
 
 
呵呵,单据自定义不是很懂,努力学习啊.呵呵
2007-12-28 9:26
 
 
高手云集呀!!!!!!!!!!!!!!!
2007-12-28 9:54
 
 

faction这个字段怎么用可否解释一下。老看不懂。

2008-01-10 20:37
 
 

呵呵,我也是揣石头过河,要明白,找金蝶了。

不过,大家不熟悉的话,也不要乱改,出了问题,可不是闹着玩的。

2008-01-11 9:56
 
请登录后再发表评论以赚取更多积分

About Suntime

湖南人!