U8客开插件-一、标准单据标准按钮执行前验证操作

摘要:
我们今天需要做的是在标准文档的标准按钮之前进行验证。如果验证通过,我们将保存它。如果没有,将提示我们不要保存它。

今天要做的就是在标准的单据的标准按钮之前进行验证操作,如果验证通过执行保存,如果不通过给予提示不进行保存。

下面拿销售出库单的保存按钮进行举例:

第一步:在程序中 ctrl+Shift  点击保存之后用写字板,粘贴  key

  取到 : 单据Key=0303、保存,按钮Tooltip:保存     F6,按钮Key:tlbSave;

第二步:VB工程及保存按钮前操作类

U8客开插件-一、标准单据标准按钮执行前验证操作第1张

Public Function BeforeRunSysCommand(ByVal objLogin As Object, _
                                    ByVal objForm As Object, _
                                    ByVal objVoucher As Object, _
                                    ByVal sKey As String, _
                                    ByVal VarentValue As Variant, _
                                    ByRef Cancel As Boolean, _
                                    ByVal other As String)

这里可以写自己的判断逻辑,取值方法在最下面

End Function


'初始化
Public Function init(ByVal objLogin As Object, ByVal objForm As Object, ByVal objVoucher As Object, msbar As Object)


End Function

  注意:在方法中Cancel = true为取消当前操作,并不往后执行

第三步:注册插件C:U8SOFTKKEFBASEUI_UserConfig.xml

<dll>
<userdll>U8SO_SOMainSaveButton.BeforeSaveClass</userdll>
<function>
    <userfunction>BeforeRunSysCommand</userfunction>
</function>
</dll>

第四步:注册脚步:数据库UFMeta_999

delete from aa_customerbutton where cButtonID = '088EC6DB-2380-4457-93BF-C618BE4767EA'
go
insert into aa_customerbutton ([cButtonID],[cButtonKey],[cButtonType],[cProjectNO],[cFormKey],
[cVoucherKey],[cKeyBefore],[iOrder],[cGroup],[cCustomerObjectName],[cCaption],[cLocaleID],[cImage],
[cToolTip],[cHotKey],[bInneralCommand],[cVariant],[cVisibleAsKey],[cEnableAsKey])
values('{088EC6DB-2380-4457-93BF-C618BE4767EA}','btntest','system','U8SO_SOMainSaveButton','0303',
'0303','tlbSave','0','IEDIT','U8SO_SOMainSaveButton.BeforeSaveClass','销售出库单保存校验','zh-cn','','销售出库单保存校验',
'Ctrl+S',1,'销售出库单保存校验','tlbSave','tlbSave')
go

脚本说明:

cButtonID:可以是 newid()

cButtonKey:要唯一,有意义的名字

cButtonType:按钮类型 defaultmenusystem

cFormKey: 窗体名字,单据Key

cVoucherKey:单据Key

cKeyBefore: 要处理的按钮key

cGroup : 按钮所在组

cCustomerObjectName:工程名.类名EFInterface_demo.cls_aa_customerbutton。如果这个不对不会进入VB

cToolTip:提示

cVisibleAsKey:当前按钮与哪个按钮是否可见状态一样

cEnableAsKey:当前按钮与哪个按钮是否可用状态一样

cImage:按钮图标 credit   在 icons图片名

第五步:vb工程启动项选择 EnterprisePortal.exe

 U8客开插件-一、标准单据标准按钮执行前验证操作第2张

第六步:在VB一程打上断点,并生成dll文件到C:U8SOFTUAP下,运行VB工程进行调试,效果如下:

 U8客开插件-一、标准单据标准按钮执行前验证操作第3张

备注:记录一下相关脚本

  一、记录一下取值方式等

ls_dDate = objVoucher.headerText("dDate") 获取结算日期 //  dDate U8字段名

ls_iExchRate = objVoucher.headerText("iExchRate")’获取汇率
ls_iQuantity = objVoucher.bodyText(i,"iQuantity")'获取数量

  二、销售订单脚本注册如下:

delete from aa_customerbutton where cButtonID = '088EC6DB-2380-4457-93BF-C618BE4767EA'
go
insert into aa_customerbutton ([cButtonID],[cButtonKey],[cButtonType],[cProjectNO],[cFormKey],
[cVoucherKey],[cKeyBefore],[iOrder],[cGroup],[cCustomerObjectName],[cCaption],[cLocaleID],[cImage],
[cToolTip],[cHotKey],[bInneralCommand],[cVariant],[cVisibleAsKey],[cEnableAsKey])
values('{088EC6DB-2380-4457-93BF-C618BE4767EA}','btntest','system','U8SO_SOMainSaveButton','17',
'17','save','0','IEDIT','U8SO_SOMainSaveButton.BeforeSaveClass','销售订单保存校验','zh-cn','','销售订单保存校验',
'Ctrl+S',1,'销售订单保存校验','save','save')
go

 作者:王春天 地址:http://www.cnblogs.com/spring_wang/p/4017877.html

免责声明:文章转载自《U8客开插件-一、标准单据标准按钮执行前验证操作》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇nand flash 原理简介ssl证书生成:cer&amp;amp;jks文件生成摘录下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

使用Kdenlive为视频加入马赛克特效

Kdenlive(KDE Non-Linear Video Editor)是一种基于MLT框架、KDE和Qt的自由开源的非线性影片编辑器。其底层包含了FFmpeg,所以可以支持FFmpeg中的所有视频及音频格式。与Adobe公司的非线性剪辑软件Premiere相比,此款软件是完全免费,并且可以在Linux,Windows及Mac OSX上运行。 因为最近遇...

WebService客户端调用错误处理

错误处理 •调用时可以提供一个额外的错误回调函数 •包括超时和服务器端抛出的异常 •超时只能设置在WebService级别 –或者设置在PageMethods对象上 –无法在每个MethodCall时指定 •Sys.Net.WebServiceError –timedout、message、exceptionType、stackTrace属性 aspx  ...

DataGrid控件用法

实现模版列有超连接外观,一点实现打开或者下载的功能。 <ItemTemplate><a href='http://t.zoukankan.com/download.aspx?DocTitle=<%# DataBinder.Eval(Container.DataItem,"DocTitle") %>'> <%# Dat...

C#(winform)为button添加背景图片

转自:https://www.cnblogs.com/zhangchenliang/p/4335372.html 1.既然是添加背景图片 所以这里应该使用 Button.BackgroudImage = "" ;来设置图片 而不应该使用 Button.Image = ""; 因为使用BackgroudImage来设置背景图片,我们还可以使用 Backgro...

后台界面设计之表单设计规范参考

前言 在后台界面设计之表格设计规范参考一文中,我们对表格中内容的布局、数据的展示、操作项的罗列进行了详细的讲解,本文将对表单的设计规范做一个参考性的建议。 表单是中后台系统最常见的元素模块之一,承载了各个流程中信息数据的录入使命。提高信息数据录入的效率可以加速用户达成目标的时间与降低操作成本。 一般要求在录入前尽可能的使用户理解信息录入的目的与预测并判断需...

二维码(android)

我们都知道一般的二微码都是以不同形式显示有的是登入,有的是网页,其实二维码只是一个字符串。到这里我们就有一个疑问那二维码是这样判断是网站或者是登入功能的呢? 其实这些判断部分,二维码生成器早就给你完成了,我们只需导入一个core-3.2.1.jar包就行。那接下来我们来做一个简单的小案例,进一步了解二维码。 一、新建项目 1、我们建一个名为"weima"的...