几个数据精度修改的小例方俊霞2010年月11日【问题一】在数据精度已经将存货数量的小数精度设置为了6位,但是想针对采购订单将数量的显示精度调整为3位,如何设置?【问题分析】看到这个问题,我们知道是最简答的设置要求了。首先,数据精度中存货数量的小数精度是6位,大于要求的采购订单的存货数量的小数显示精度3位。故只需调整单据模板即可过程说明如下:【问题一】在数据精度已经将存货数量的小数精度设置为了6位,但是想针对采购订单将数量的显示精度调整为3位,如何设置?【问题分析】看到这个问题,我们知道是最简答的设置要求了。首先,数据精度中存货数量的小数精度是6位,大于要求的采购订单的存货数量的小数显示精度3位。故只需调整单据模板即可过程说明如下:因为在这里设置的存货数量的小数位=6所以自动覆盖单据模板的数据精度也等于6故只需根据客户要求的单据,直接修改其数据精度即可【问题二】续上例,对于8.5x的版本,在单据格式设置中没有修改数据进度的地方,那该如何调整呢?【参见语句】--1.找出问题模板的模板号:selectDEF_ID,def_id_prn,*fromVoucherswhereccardnamelike'%采购订单%'--说明:def_id为显示模板;def_id_prn为打印模板--2、在单据模板明细信息基本表:VoucherItems_base修改对应单据对应字段的显示精度numpointselectnumpoint,*fromVoucherItems_basewherevt_id='8173'andfieldnamelike'%iquantity%'--updateVoucherItems_basesetnumpoint='3'wherevt_id='8173'andfieldnamelike'%iquantity%'【问题3】发货单的显示模板存货数量的显示精度不等于列表中存货数量的显示精度,如何调整?【参考方案】这种情况也比较好调,直接更新下基础设置中的数据精度,软件会自动覆盖对应的单据模板和单据列表的数据精度的。但是对于以下这种特殊情况,如:各单据的模板精度不同不想直接覆盖,或者就要求单据的显示精度不等于列表的数据精度的,该如何调整呢?参见处理如下:--1、查询各个单据列表的ckey值是多少SelectcBUsobid,cbusobname,*Fromufmeta_001..AA_BusObject_generalwherelangid='zh-cn'andcbusobnamelike'%发货单列表%'--2、根据ckey值,在发货单列表字段显示格式中查询出需要修改的字段,如数量select*fromufdata_001_2010..SA_VoucherListFieldConfigwhereckey='01'andfieldname='iquantity'--3、更改格式字段将formatstr修改成正确的格式字符串updateSA_VoucherListFieldConfigsetformatstr=‘#,##0.00‘whereckey='01'andfieldname='iquantity'