资源描述:
《存货核算产成品成本分配二开案例.docx》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、存货核算产成品成本分配二开案例知识库属性U8适用产品存货核算支持版本V10.0;V10.1;V11.0;V11.1行业通用关键字存货核算,产成品成本分配,二开最后更新时间2013年10月24日作者张晓艳摘要介绍在U8存货核算模块产成品成本分配界面进行二次开发的基本解决方案概念说明无目标案例用于详细说明如何在U8存货核算模块产成品成本分配界面进行二次开发,给二开人员提供支持文档内容1.问题描述:存货核算产成品成本分配,由于手工录入太多,分公司可以给二开支持,可是此界面不支持二开按钮。2.解决方案:产成品成本分配窗体中
2、调用扩展按钮。frmProdAssTable.Frm窗体form_load中,在CTBCtrl1.SetToolBarMe.Toolbar1之前加如下代码:调用扩展按钮CallMe.CTBCtrl1.InitExternalButton("IA_FinishAllocation",moLogin.OldLogin)CallCTBCtrl1.SetFormInfo(Me.supg,Me)预置该窗体ckey为IA_FinishAllocation3.二开人员或用户使用方法:查看某窗体的ckey通过如下过程:按住ctrl
3、+alt+shift,在界面上,任意点击一个按钮,然后复制到写字板(wordpad)上,能得到该窗体是否支持二次开发的按钮以及各按钮的信息,支持二开的有formkey信息,如下图所示:不支持二开按钮的窗体支持二开按钮的窗体预置扩展按钮,配置二开文件预置扩展按钮deleteaa_customerbuttonwherecButtonKey='HY_IA_TEST'Insertintoaa_customerbutton([cButtonID],[cButtonKey],[cButtonType],[cProjectNO]
4、,[cFormKey],[cVoucherKey],[cKeyBefore],[iOrder],[cGroup],[cCustomerObjectName],[cCaption],[cLocaleID],[cImage],[cToolTip],[cHotKey],[bInneralCommand],[cVariant],[cVisibleAsKey],[cEnableAsKey])Values(newid(),'HY_IA_TEST','default','U870','IA_FinishAllocation','
5、IA_FinishAllocation','Qury',null,'','TestProj.clsInputData','导入','ZH-CN','fromfile','导入','Ctrl+N',1,'导入','Qury','Qury')字段含义:cButtonID:扩展按钮idcFormKey:InitExternalButton("IA_FinishAllocation",moLogin.OldLogin)中设定的key。cCustomerObjectName:二开插件dll文件名及接口文件名,此案例中工程名为
6、'TestProj,按钮调用的接口为类模块clsInputData.cls二开插件代码编写案例实现产成品成本分配界面增加“导入”按钮,功能为从excel文档中导入金额列,但只支持按末级存货分类对某一存货分类录入金额。clsInputData.cls文件中,需要有两个接口函数Init和RunCommand初始化函数PublicFunctionInit(ByValobjLoginAsObject,ByValobjFormAsObject,ByValobjVoucherAsObject,msbarAsObject)'此处
7、写入初始化代码EndFunction调用扩展按钮功能的函数PublicFunctionRunCommand(ByValobjLoginAsObject,ByValobjFormAsObject,ByValobjVoucherAsObject,_ByValsKeyAsString,ByValVarentValueAsVariant,ByValotherAsString)'objLogin为u8login.clsLogin对象Dimg_ConnAsADODB.Connection'连接对象Setg_Conn=NewAD
8、ODB.Connectiong_Conn.ConnectionTimeout=0g_Conn.CommandTimeout=0g_Conn.CursorLocation=adUseClientg_Conn.OpenobjLogin.UfCurrentDb.ConnectionStringCalldoInputData(objForm)'参数传入窗体对象End