关于K3wise系列的二次开发
今天收到反馈说PAD端做的外购入库单据没有【含税金额】数据
经分析不管在PAD端还是PC端添加库存单据都会执行 p_UpdateBillRelateData 存储过程
SELECT @strSQL='UPDATE t1 SET
t1.FPrice=CAST(t1.FAuxPrice AS FLOAT)/CAST((ISNULL(t3.FCoefficient,1)+ISNULL(t3.FScale,0)) AS FLOAT),
t1.FQty=CAST(t1.FAuxQty AS FLOAT) *(ISNULL(t3.FCoefficient,1)+ISNULL(t3.FScale,0)),
----这里开如添加需要付值的字段与相关逻辑
t1.FEntrySelfA0000 = CAST(t1.FAuxPrice AS FLOAT)/CAST((ISNULL(t3.FCoefficient,1)+ISNULL(t3.FScale,0)) AS FLOAT)* CAST(t1.FAuxQty AS FLOAT) *(ISNULL(t3.FCoefficient,1)+ISNULL(t3.FScale,0)) ,
---哈哈哈,就是这么简单一句话就可以了。NICE!!
t1.FSecCoefficient = CASE WHEN ISNULL(t1.FSecQty, 0) = 0 THEN 0 ELSE CAST(t1.FAuxQty AS FLOAT)*CAST((ISNULL(t3.FCoefficient,1)+ISNULL(t3.FScale,0)) AS FLOAT) / FSecQty END,
t1.FQtyMust=CAST(t1.FAuxQtyMust AS FLOAT)*(ISNULL(t3.FCoefficient,1)+ISNULL(t3.FScale,0)),
t1.FQtyActual=CAST(t1.FAuxQtyActual AS FLOAT)*(ISNULL(t3.FCoefficient,1)+ISNULL(t3.FScale,0))
FROM ' + @EntryTableName + ' t1,t_MeasureUnit t3
WHERE t1.FInterID=' + LTRIM(RTRIM(CONVERT(VARCHAR(20),@InterID))) + ' AND t3.FItemID=t1.FUnitID '
EXEC (@strSQL)
收获
p_UpdateBillRelateData
可以在这里自由扩展二次开发或数据同步。。。
不用再去写过研究触发器了。。。
金蝶的开放接口还真多。