k3 Bos问题集.docx
《k3 Bos问题集.docx》由会员分享,可在线阅读,更多相关《k3 Bos问题集.docx(75页珍藏版)》请在冰豆网上搜索。
k3Bos问题集
一、基础资料篇5
【摘要】:
单据自定义无法看到bos定义的基础资料5
【摘要】:
在调出基础资料序时簿时,过滤出需要的基础资料5
【摘要】:
插件实现过滤从过去时间到现在的所有基础资料6
【摘要】:
查找某个物料在某个仓库中的数量和精度6
【摘要】:
插件中K3Lib.GetStockQty函数的使用7
二、业务单据篇7
【摘要】:
K3BOS单据(新)中的数量字段怎样才能控制到两个小数7
【摘要】:
单据上显示各级审核人和审核日期8
【摘要】:
多层的BOS单据,能否将人员权限按层划分8
【摘要】:
自动启动审核和自动选单8
【摘要】:
只能删除和修改本人制作的单据。
9
【摘要】:
获取Bos单据单据体已录信息的条数9
【摘要】:
插件中获取单据上控件的位置、尺寸信息10
【摘要】:
关联自定义核算项目10
【摘要】:
是否允许插件自定义查询条件10
【摘要】:
填充分录行11
【摘要】:
在Bos单据按F7查询供应商信息,按F9查询采购价格管理信息。
11
【摘要】:
如何可以取到单据编号的组件12
【摘要】:
是否可以直接在数据库表中直接修改Bos单据中的字段类型12
【摘要】:
锁定单据字段13
【摘要】:
删除符合条件的单据13
【摘要】:
动态过滤基础资料13
【摘要】:
单据保存出错14
【摘要】:
标准序时簿过滤条件对话框(和K3老单据一样)14
【摘要】:
如何再次添加新插件14
【摘要】:
单据分录数达到3000条,单据保存会不会出错15
【摘要】:
批次过滤15
【摘要】:
应收应付系统合同是否能超额执行15
【摘要】:
基础资料录入代码时不马上显示相关的列表16
【摘要】:
在插件中以新增、修改和查看方式打开另一单据16
【摘要】:
显示BOS序时簿并返回选中的值17
【摘要】:
将当前单据转化为另一单据,并无界面保存数据18
【摘要】:
隐藏选单时序时簿不需的菜单和工具栏19
【摘要】:
在单据体中让下一条分录自动携带上一条分录的数据20
【摘要】:
在Bos插件中如何处理隐身的二次登录20
【摘要】:
文本字段录入完毕回车不跳转23
【摘要】:
不能实现记录选择。
23
【摘要】:
如何删除空行。
23
【摘要】:
数量精度和单价精度23
【摘要】:
如何在插件中获取当前系统字符连接串24
【摘要】:
BOS单据插件里取分录的合计值24
【摘要】:
带有辅助属性的字段的值更新事件中调用辅助属性,计算公式运行有误25
【摘要】:
事务处理25
【摘要】:
基本单位数量在录入完数量后仍然为空25
【摘要】:
10.1单据插件中如何向单据体逐行插入数据26
【摘要】:
BOS单据选单返回时自动在表体添加一行分录26
【摘要】:
只有工具条及菜单栏的浏览数据窗口27
【摘要】:
K3Bos表体如何设置合计27
【摘要】:
收款单的套打设置里面怎么取到通过Bos自定义的字段27
【摘要】:
如何隐藏Bos单据中的层28
【摘要】:
如何调用打印功能28
【摘要】:
BOS单据如何控制表体行数28
【摘要】:
如何在Bos单据中引用自定义核算项目28
【摘要】:
关于核算项目字段[相关属性]为核算项目类型的值更新携带变通处理方案29
【摘要】:
如何调用BOS单据序事簿的刷新事件30
【摘要】:
关于因网络控制导致BOS单据无法并发运行的问题的解决办法30
【摘要】:
关于插件取值报类型不匹配的答复30
【摘要】:
如何实现在Bos单据中物料多选31
【摘要】:
如何实现在Bos单据中物料多选31
【摘要】:
如何在Bos单据的工具栏上显示“复制”按钮31
【摘要】:
bos分录值合计32
【摘要】:
BOS单据物料字段信息没显示全32
【摘要】:
BOS颜色控制32
【摘要】:
从BOS如何能调用VB控件(MSCOMM)33
【摘要】:
序时簿工具栏新增一个按钮,如何编写插件实现审核后对单据修改功能33
【摘要】:
销售订单下推生成BOS单据,无法制定流程34
【摘要】:
BOS序事簿插件调用数据库34
【摘要】:
客户端单据打不开34
【摘要】:
BOS老单据,新增核算项目,增加自定义字段相关属性为部门,在BOSIDE中值35
【摘要】:
关于如何在销售发票业务审核后仍能修改摘要字段的做法35
【摘要】:
调拨单中的调拨类型无法单据中显示36
【摘要】:
序时簿查件分录中,如何通过插件取其中一个时间字段。
36
【摘要】:
新单中如何写删行的函数37
【摘要】:
如何自定义金额字段的“小数位长度”39
【摘要】:
新单增加的单据如何携带到老单据(典型问题)39
【摘要】:
新单据如何从Excel批量引入单元格数据39
【摘要】:
新增bos单据怎么会无法保存.提示拒绝的权限.40
【摘要】:
设定的实数数量精度在参与值更新事件计算时没有精度控制40
【摘要】:
大文本字段怎么就能录入这么几个字符,有什么方案没有?
41
【摘要】:
BOS单据自定义后新增或查询反映太慢41
【摘要】:
生产领料单单据体上无法自定义成本对象代码41
【摘要】:
(工业老单据)生产任务单批量维护中加入BOS开发字段42
【摘要】:
如何在修改单据的时候把制单人刷新为修改人?
42
【摘要】:
复杂的计算Action应该如何处理?
43
【摘要】:
如何设置单据体字段的字体颜色和背景色44
【摘要】:
在查看模式下,怎样修改某个字段(比如销售普通发票-摘要修改)的值并保存45
【摘要】:
V10.3版本实现“审核人和制单人不可为同一人”45
【摘要】:
如何在插件中调用BOS基础资料的F7功能47
【摘要】:
如何在插件中调用BOS基础资料的F7功能47
【摘要】:
如何单据插件中实现基础资料F7动态过滤47
【摘要】:
如何在插件中响应BOS控件KDInputTool的事件48
三、多级审核篇48
【摘要】:
批量审核。
48
【摘要】:
设置为一级审核的Bos单据反审核后不能修改。
49
【摘要】:
能否使administrator对任何人审核的BOS单据进行反审核。
49
【摘要】:
实现多级审批同时需要更改审批的数量与单价。
49
【摘要】:
BOS字段多级审核后可以修改。
50
【摘要】:
有关多级审核的问题。
50
【摘要】:
中间层的多级审核事件。
51
【摘要】:
BOS审核权限52
【摘要】:
不同级次驳回功能存在问题,审核流程不流畅52
【摘要】:
在打开单据的情况下点击审核菜单,显示XX单据审核成功,但单据并未立即53
四、单据转换流程篇53
【摘要】:
新单推老单不能实现钩稽功能53
【摘要】:
新单推老单不能实现钩稽功能54
【摘要】:
未审核的老单据不能下推Bos单据54
【摘要】:
未审核的老单据不能下推Bos单据54
【摘要】:
自定义的bos单据无法下推生成销售费用发票55
【摘要】:
无物料编码时,下推报错55
【摘要】:
下标越界55
【摘要】:
下推发货通知单的时候,所有自定义字段中的文本字段在发货通知单都变成了056
【摘要】:
10.2sp1钩稽后设过滤条件不起作用57
【摘要】:
关联复制57
【摘要】:
老单下推新单过滤条件的设定57
【摘要】:
在老单据中选取新单如何选取多张单据58
【摘要】:
BOS单据下推到外购入库单时无法选择红字单据58
【摘要】:
如何用BOS单据体字段推成目的单据(老单)的单据头字段58
【摘要】:
如何使Bos单据表体的字段对应到老单的表头上的字段59
【摘要】:
单价和金额携带不过来60
【摘要】:
Bos单据如何同时选择两张老工业单据60
【摘要】:
新单下老单,如果是钩稽关系,怎么判断新单是否已关闭61
【摘要】:
BOS新单据到老供应链单据的转换流程,在新单据上可以关闭吗61
【摘要】:
付款单选单关联其他应付单时无法携带其他应付单上的自定义核算项目信息62
【摘要】:
单据体的每条分录如何可以对应多个源单类型62
【摘要】:
新老单据在流程转换的时候为什么出现提示“请设置关联原单内码保存”?
63
一、基础资料篇
【摘要】:
单据自定义无法看到bos定义的基础资料
【版本】:
K3v10.2SP2
问题描述:
在单据自定义中增加自定义字段时,需要选择用bos定义的基础资料,如何
设置。
单据自定义的高级页签上选择基础资料下拉框中无法看到bos定义
的基础资料;跟踪Sql,在ICChatBillTitle中有自定义字段属性的相关
设置,如FTableName、FLookUpClassID等字段。
把记录改成BOS基础资料
对应的信息,但是无法生效。
解决方法:
在10.2里工业单据自定义工具不能使用BOS单据的基础资料,建议使用核算项目来定义
基础资料,即可在工业单据中使用,也可在BOS单据中使用。
【摘要】:
在调出基础资料序时簿时,过滤出需要的基础资料
【版本】:
K3v10.2SP1&v10.2SP1&v10.3
问题描述:
能否对BOS基础资料做过滤,即:
在调出基础资料序时簿时,过滤出需要
的基础资料。
解决方法:
1、在ICClasstypeentry的FFilter字段增加过虑条件;
2、在ICClassTableInfo的FFilter中填写条件。
下例能完成只显示“01”组的物料,FFilter的值应是“x2.FNumberlike'01.%'”
SELECTt1.FItemIDFROMt_Itemt1with(index(uk_Item2))LEFTJOINt_ICItem
x2ONt1.FItemID=x2.FItemIDWHEREFItemClassID=4ANDt1.FDetail=1AND
(x2.FNumberlike'01.%')ANDt1.FDeleteD=0ORDERBYt1.FNumber
【摘要】:
插件实现过滤从过去时间到现在的所有基础资料
【版本】:
K3V10.3以上
问题描述:
如何实现在打开BOS基础资料序时薄时仅显示从过去某一时间到现在的所
有基础资料?
客户化开发技术资料——K/3BOS开发百问百答
解决方法:
假设有个基础资料,其为基础资料200000003表头表为t_BOS200000003
其表头上有个日期字段FDate,
由于基础资料中数据非常多,现想在序时簿上展示2008-01-07到现在的基础资料,则主
要插件代码如下:
PrivateSubm_BaseListInterface_MenuBarInitialize(ByValoMenuBarAs
K3ClassEvents.MenuBar)
DimdctAsDictionary
Setdct=NewDictionary
dct(""FFilter"")=""t_BOS200000003.FDate>='2008-01-07'and
t_BOS200000003.FDate<=""&Now
Setm_BaseListInterface.BrowseCtl.ExternalCondition=dct
Setdct=Nothing
EndSub
【摘要】:
查找某个物料在某个仓库中的数量和精度
【版本】:
K3V11.0多语言及以下版本
问题描
述:
如何查找某个物料在某个仓库中的数量和精度?
解决方
法:
ICInventory为实仓库POInventory为虚仓库StockID仓库IDItemID为物料ID
select
sum(Round(t1.FQty,t2.FQtyDecimal)),SUM(Round(ISNULL(t1.FSecQty,0),t2.FQtyDecimal))
ASFSecQtyfromICInventoryt1INNERjoint_IcItemt2ONt1.FItemID=t2.FItemIDINNER
JOINt_StocktsONt1.FStockID=ts.FItemIDWHEREt1.FStockID=""&StockID&""AND
t1.FItemID=""&ItemID
【摘要】:
插件中K3Lib.GetStockQty函数的使用
【版本】:
K3V11.0多语言及以下版本
问题描述:
如何查找某个物料在某个仓库中的数量和精度?
解决方法:
GetStockQty这个方法是不分虚仓和实仓。
dctParams应该这样封装:
DimdctParasAsKFO.Dictionary
DimlngQtyDecimalAsLong
dctParas(""AuxPropID"")=该物料的辅助属性ID号'在表ICItemAuxProp中可以查客户化开发技术资料——K/3BOS开发百问百答
到
dctParas(""FQtyDecimal"")=0'该项会在函数GetStockQty调用后,赋上该物料的
数量精度,即物料的数量含有多少位小数位
m_BillInterface.K3Lib.GetStockQtylngItemID,lngUnitID,dctParas
lngQtyDecimal=val(dctParas(""FQtyDecimal""))客户化开发技术资料——K/3BOS开发百问百答
客户化开发技术资料——K/3BOS开发百问百答
二、业务单据篇
【摘要】:
K3BOS单据(新)中的数量字段怎样才能控制到两个小数
【版本】:
K3v10.2SP1&vSP2&v10.3
问题描述:
用K3BOS设计的单据中的数量字段小数位默认是10位,怎样才能控制到两
个小数?
解决方法:
通过以下方式增加字段时:
物料->计量单位->数量,数量将按照物料定义的精度来处理,否则缺省按照十
位处理,如果需要定义字段为某个固定的精度,可以使用小数字段,通过该字
段的小数位属性来控制
【摘要】:
单据上显示各级审核人和审核日期
【版本】:
K3v10.2SP2
问题描述:
多级审核栏目不分成第二个Label,而是在单据上有每级审核人和日期显
示。
解决方法:
如果用系统的多级审核流程就会有多级审核的业签。
可以在单据上增加多几个
审核人、审核日期,在单据插件的AfterMultiCheck事件中反写单据上的审核人、
审核日期。
【摘要】:
多层的BOS单据,能否将人员权限按层划分
【版本】:
K3v10.2SP1&K3v10.2SP2&K3v10.3
问题描述:
直销单据分为采购和销售两个页,采购内勤组的成员只能看到采购页而不
能看到销售页,而销售内勤组的成员只能看到销售页而不能看到采购页客户化开发技术资料——K/3BOS开发百问百答
解决方法:
Bos单据不能按层进行授权,可以通过数据授权和字段授权的方式变通实现此
类需求.
【摘要】:
自动启动审核和自动选单
【版本】:
K3v10.2SP
问题描述:
打开一个新单据的同时,能自动弹出选单的界面,同时显示要选择的单据。
10.2SP1在单据保存后,自动启动审核。
如何在插件中调用“选单”和“启
动审核”的BOS的内部处理事件。
解决方法:
1、自动启动审核:
在AfterSave事件中使用以下代码
DimbStatusAsBoolean
bStatus=
m_BillInterface.MultiCheckMgr.MultiCheckBill(m_BillInterface.Data("FID"))
2、选单调用:
BOS单据
m_BillInterface.BillCtl.DoSelBilllClassTypeID'(原单的ClassTypeID)
工业单据
【摘要】:
只能删除和修改本人制作的单据。
【版本】:
K3v10.2SP1
问题描述:
如果实现只能删除和修改本人制作的单据.
解决方法:
PrivateSubm_ListInterface_MenuBarClick(ByValBOSToolAs
K3ClassEvents.BOSTool,CancelAsBoolean)
DimlBillerIDAsLong
DimstrSQLAsString
SelectCaseBOSTool.ToolName
Case"mnuEditDelete","mnuEditModify"
strSQL="SelectFBiller(当前单据制单人)Fromt_Sales(当前单据主
表名)WhereFID(当前单据主键子段)="
&m_ListInterface.GetCurrentSelRowInfo("FID")
lBillerID=m_ListInterface.K3Lib.GetData(strSQL)(0)
Ifm_ListInterface.K3Lib.User.UserID<>lBillerIDThen
MsgBox"只能删除和修改本人的单据",vbExclamation,"提示"客户化开发技术资料——K/3BOS开发百问百答
Cancel=True
EndIf
CaseElse
EndSelect
EndSub
【摘要】:
获取Bos单据单据体已录信息的条数
【版本】:
K3v10.2SP1
问题描述:
写插件时,如何得到单据体的已录信息的条数
解决方法:
单据体的已录的条数用下面的方法可得到。
m_BillInterface.Data("Page2").UBound
注意:
最后一条可能是空记录,要判断(if分录关键子段或必填字段
<>""then.....)。
【摘要】:
插件中获取单据上控件的位置、尺寸信息
【版本】:
K3v10.2SP1
问题描述:
插件开发中,如何获取BOS单据上某个控件的位置、尺寸信息?
能否用代
码动态修改它们的位置?
解决方法:
在K/3BOS插件中获取控件的位置的方法:
m_BillInterface.BillHeads
(1).BOSFields("FDate").FieldTop,其中“FDate”是控件
的名称,也可以用它来改变控件的位置。
【摘要】:
关联自定义核算项目
【版本】:
K3v10.2SP2客户化开发技术资料——K/3BOS开发百问百答
问题描述:
新建的BOS单或原有的BOS单上如何关联自定义的核算项目基础资料
解决方法:
修改ICClassTableInfo中
FLookupClassID,FSRCFieldName,FSRCTableName,FDSPFieldName,FFNDFieldName。
【摘要】:
是否允许插件自定义查询条件
【版本】:
K3v10.2SP2
问题描述:
需要在序事簿查询过程,根据人员角色不同,自动将所能看到的数据进行
过滤,请问此类问题怎么实现,BOS序事簿是否允许插件自定义查询条件
解决方法:
可以通过在序事簿插件的show中直接修改ListFilterString属性的值来自定义查询条件.
示例如下:
Withm_listinterface
Iflen(.listfilterstring)>0then
.listfilterstring=.listfilterstring&“andFDeptID=984”
Else
.listfilterstring=”FDeptID=984”
Endif
Endwith
【摘要】:
填充分录行
【版本】:
K3v10.2SP2
问题描述:
一张单据有几百条分录,每条分录数据都是通过插件填入的.如果使用
setFieldValue方法一个字段一个字段填入,速度非常慢.是不是有更好
的方法填充行数据
解决方法:
可以试试用insertnewrowandfill方法插入一新行。
示例如下:
'批量插入行数据
DimiAsLong
Fori=1To10
m_BillInterface.InsertNewRowAndFill2,i,"FBase","01.001","FPrice",
"100.001","FAmount","50000"
Next
需要注意的是查找类型的字段只要给出编码即可,基础资料属性(如物料名称等)不客户化开发技术资料——K/3BOS开发百问百答
需要赋值。
【摘要】:
在Bos单据按F7查询供应商信息,按F9查询采购价格管理信息。
【版本】:
K3v10.2SP1&PT0704
问题描述:
在新增采购申请单时,在分录中的供应商按F7能选择供应商信息,按F9能
选到采购价格管理信息,如何在新单中也添加一个供应商,也实现上述功能
解决方法:
使用MenuBarClick事件实现F7
1、BeginEdit事件
Ifdct("FKey")="要处理字段FKey“Then
m_BillInterface.MenuBar.BOSTools("mnuDataLookUp").Enabled=True
EndIf
2、MenuBarClick
IfBOSTool.ToolName="mnuDataLookUp"Then
m_BillInterface.GetActiveFielddct,col,row
Ifdct("FKey")="FBillNo_BS"Then
m_BillInterface.BillCtl.DoSelBill200000104'(原单的ClassTypeID)
EndIf
EndIf
3、采购价格管理的调用接口,结合上述所说使用:
DimobjAsObject
Setobj=CreateObject("k3Suplly.SupplyFace")
Withobj
.CallByBill=True
.SelICItemID='当前物料行内码
.CategoryBySupply=false
.SelSupID='供应商内码
.PriceType=1
.Show1
EndWith
Setobj=Nothing
【摘要】:
如何可以取到单据编号的组件
【版本】:
K3v10.2SP2客户化开发技术资料——K/3BOS开发百问百答
问题描述:
导入一张组装单,组装单是一张BOS单据。
得到单据编号的组件是怎样的?
接口是什么?
解决方法:
Setobj=CreateObject("K3MClass.ClassInfo")
GetTh