客户软件环境:
金蝶KIS商贸标准版V4.1,数据库是MSDE。
需求描述:
希望将商品自定义字段修改为折扣率,以数值形式显示。在做销售单时,选择商品后,自动将该值携带到销售单的“折扣率”字段,并参与运算。当修改单据的数量、单价、折扣率三个字段时,自动重算。
解决思路:
1、首先要修改后台的商品描述表,将自定义字段1修改为Decimal类型。
2、在软件界面将自定义字段1的显示格式修改为数值型百分比显示。
以上两步用如下SQL语句实现:
--修改自定义项目名称
update t_ItemPropDesc set FName='销售折扣(%)' WHERE (FItemClassID = 4) AND (FPropID = 25)
--修改显示格式
update t_ItemPropDesc set
FDataType=5,FPrecision=53,FScale=2,FActualType=5,FActualSize=53,FBehavior=1,FSearch=0, FAction='U:0',FDefaultValue=0 WHERE (FItemClassID = 4) AND (FPropID = 25)
--清除自定义1的原内容
update t_ICItem set FCustom1=null
--修改自定义1的数据类型
alter table t_ICItem alter column FCustom1 Decimal(18,2)
3、通过一些方法将自定义字段1的值携带到销售单并参与运算。原计划通过修改销售单模板表实现,估计是技术不精通的原因,无论如何也做不到。只能退而求其次,以插件形式实现。

需要注意到是,销售折扣(%)的输入方式。假定折扣率95%,则这里必须输入95,而不能输入0.95。
因为客户安装的是MSDE数据库,无法直接执行SQL语句,因此将语句执行以及插件注册、接入系统用一个程序整体打包。
程序界面如下。

主界面提示操作前先备份帐套。

首先输入服务器名或IP,如果是SQL Server数据库,则输入sa密码;如果是MSDE数据库,则选中“Windows身份认证”。然后点击“连接服务器”。
如果连接成功,则在帐套列表里会显示出所有商贸版帐套。选择要修改的帐套,点击“开始修改”。

修改完成后,系统有如下提示,并提示进行第三步注册插件操作。

点击“打开”按钮,选择插件,软件会自动注册插件到操作系统,并自动接入到商贸版

如果该插件已经接入到商贸版,则提示已接入;若未接入,则自动接入。

本开发已在Win7+SQL Server 2005以及Windows Server 2003+SQL Server 2000下测试通过。
更多技术问题请咨询:湖北微信科技有限公司 027-84233202