文章目录

  • 一、前言
  • 二、类库引用
  • 三、使用文档
    • 3.1 转换扩展类
      • 3.1.1 ObjectConversion
      • 3.1.2 StringConversion
    • 3.2 集成扩展类
      • 3.2.1 DynamicObjectExtension
      • 3.2.2 IBillModelExtension
      • 3.2.3 ObjectExtension
    • 3.3 通用类
      • 3.3.1 BaseDataUtil
      • 3.3.2 BillConvertUtil
      • 3.3.3 DynamicObjectUtil
      • 3.3.4 FileUtil
      • 3.3.5 HttpClientUtil
      • 3.3.6 IBillViewUtil
      • 3.3.7 MessageUtil
      • 3.3.8 OperateUtil
      • 3.3.9 ShowFormUtil
      • 3.3.10 SQLUtil
      • 3.3.11 StockUtil

一、前言

这是我个人在软件开发行业多年沉淀下来的,类库包含多个封装体,基于.Net Framework框架,大部分只适用于K3Cloud二次开发。

二、类库引用

使用NuGet管理程序包方式引用

三、使用文档

3.1 转换扩展类

3.1.1 ObjectConversion

说明:值类型、引用类型转换成某些类型的扩展类封装体。

序号 方法名 参数 返回类型 说明
1 ToInt int 对象转换成Int类型,转换失败则会返回0
2 ToLong long 对象转换成long类型,转换失败则会返回0
3 ToDecimal long 对象转换成decimal类型,转换失败则会返回0
4 ToDecimalRounding decimalCount:小数精度,默认为2 decimal 对象转换成decimal类型并保留四舍五入,转换失败则会返回0
5 ToDecimalTruncation decimalCount:小数精度,默认为2 decimal 对象转换成decimal类型并舍位,转换失败则会返回0
6 ToDecimalScienceCount decimal 对象按照数字科学计数法处理转换成decimal类型,转换失败则会返回0
7 ToStringEx string 对象转换成string类型,转换失败则会返回""
8 ToStringEx string DateTime格式化,默认返回yyyy-MM-dd
9 ToTimestamp long 获取时间戳
10 ToDateTime DateTime 对象转换成datetime类型,转换失败则会返回2000-1-1
11 ToBool bool 对象转换成布尔类型,转换失败则会返回false
12 ToRoundingInt bool 对象转换成int类型,四舍五入取整数,转换失败则会返回0
13 ToDateEx DateTime? OLE的double值转换成日期,适用于Excel数据处理
14 ToDataTable dictColumnCharHandles:列名处理,旧名称需替换成新名称时使用,默认为null DataTable 键值对集合转换成DataTable

3.1.2 StringConversion

说明:对string操作、转换、判断的扩展类封装体。

序号 方法名 参数 返回类型 说明
1 IsNullOrEmpty bool 校验字符串是否为空
2 IsNotNullOrEmpty bool 校验字符串是否不为空
3 ToEncodeBase64 string Base64加密字符串
4 ToDecodeBase64 string Base64解密字符串
5 RemoveLastChar string 去掉最后一个字符
6 RemoveFirstChar string 去掉第一个字符
7 SplitToList pSign:字符串,分隔符 List<object> 字符串转List集合
8 IsDateEx bool 判断是否日期
9 ChineseSignConvertToEn string 中文符号转换成英文符号

3.2 集成扩展类

3.2.1 DynamicObjectExtension

说明:DynamicObject、DynamicObjectCollection对象的扩展类封装体。

序号 方法名 参数 返回类型 说明
1 GetValue<T> pField:字段ORM实体名(属性名) 泛型 获取动态对象指定属性的值
2 GetDyObject pField:字段ORM实体名(属性名) DynamicObject 获取动态对象指定业务对象
3 GetDyCollection pField:字段ORM实体名(属性名) DynamicObject 获取动态对象指定动态对象集合
4 GetId long 获取动态对象内码
5 GetNumber string 获取动态对象Number编号
6 GetBillNo string 获取动态单据BillNo编号
7 GetName string 获取动态对象Name名称
8 GetBillStatus strDocumentStatusAttr:单据状态属性名,默认为DocumentStatus string 获取动态对象的单据状态
9 GetBillTypeNum pBizInfo:业务对象信息 string 获取动态对象单据类型编号
10 SetValue<T> pField:字段ORM实体名(属性名)
pValue:值
DynamicObject 设置动态对象指定属性的值
11 SetBaseData ctx:上下文
pBizInfo:业务对象信息
pFieldKey:基础资料字段标识
pId:目标值
DynamicObject 设置基础资料值
12 SetBaseData ctx:上下文
strPropKey:辅助属性字段标识(FF100001、FF100002…)
val:辅助属性值
strCurrentFormId:当前业务对象唯一标识
strEntryKey:单据体标识
DynamicObject 设置辅助属性值
13 SetSingleChoiceAssistData ctx:上下文
strFieldProp:字段ORM实体名(属性名)
strAssistantId:单选辅助资料内码
DynamicObject 设置单选辅助属性
14 ResetSeq SeqField:序号字段ORM实体,默认为Seq DynamicObjectCollection 单据体重新排序
15 GetMultiIds pProp:字段ORM实体名(属性名) string 获取多选基础资料ID集合(以,分割)
16 IsExistPush ctx:上下文
strFromId:目标业务对象唯一标识
bool 校验业务单据是否存在下游单据

3.2.2 IBillModelExtension

说明:IBillView对象的扩展类封装体。

序号 方法名 参数 返回类型 说明
1 GetValue<T> pKey:字段标识 泛型 获取指定字段标识的值
2 GetValue<T> pKey:字段标识
pRowIndex:行索引
泛型 获取单据体指定字段标识的值
3 GetDyObject pKey:字段标识 DynamicObject 获取动态对象
4 GetDyCollection pKey:字段标识 DynamicObjectCollection 获取动态对象集合
5 SetValue pKey:字段标识
pValue:值
isFieldUpdateService:是否触发值更新,默认为是
设置指定字段标识的值
6 SetValue pKey:字段标识
pValue:值
pRowIndex:行索引
isFieldUpdateService:是否触发值更新,默认为是
设置单据体指定字段标识的值
6 SetItemValueByID pKey:字段标识
pValue:ID值
pRowIndex:行索引,默认为0,为0时可以是单据头也可以是单据体
isFieldUpdateService:是否触发值更新,默认为是
根据ID设置基础资料值
7 SetItemValueByNumber pKey:字段标识
pValue:编码值
pRowIndex:行索引,默认为0,为0时可以是单据头也可以是单据体
isFieldUpdateService:是否触发值更新,默认为是
根据编码设置基础资料值
8 SetControlEx pKey:控件标识
val:值
设置控件的值(如上传控件等)
9 SetAuxProp strPropKey:辅助属性字段标识(FF100001、FF100002…)
val:辅助属性值
iRowIndex:行索引
设置辅助属性值
10 Save 保存
11 Submit 提交
12 Audit 审核
13 UnAudit 反审核
14 RefreshViewEx pKey:字段/实体标识 刷新视图层
15 GetEntryFocusRowIndex strEntryKey:单据体标识 获取单据体焦点行索引
16 GetSelectedRows strEntryKey:单据体标识 获取单据体选中行索引集合
17 ButtonClick strButtonKey:按钮标识 点击按钮(非工具条)
18 EntryBarItemClick strEntryKey:单据体标识
strButtonKey:按钮标识
点击单据体工具条项(按钮)
19 MenuClick strMenuKey:菜单标识 点击菜单

3.2.3 ObjectExtension

说明:对象的扩展类封装体。

序号 方法名 参数 返回类型 说明
1 GetWhereStr string 字符串转换成SQL过滤条件(以","分割)
2 GetWhereStr string 字符串集合转换成SQL过滤条件(‘str1’,‘str2’…)
3 GetCellValue<T> rowIndex:整型,行索引
columnName:字符串,列名
泛型 DataTable根据行索引、列名获取单元格的值

3.3 通用类

3.3.1 BaseDataUtil

说明:基础资料封装类。

序号 方法名 参数 返回类型 说明
1 BaseDataUtil pContext:上下文 构造函数
2 GetBOM MaterialID:物料ID DynamicObject 获取BOM动态对象
3 GetBOM MaterialID:物料ID
UseOrgID:使用组织ID
long 获取BOM动态对象ID
4 ConvertUnitQty BaseUnitID:基本单位ID
SrcUnitID:原单位ID
DestUnitID:目标单位ID
SrcUnitQty:原数量
decimal 根据单位换算计算目标单位的数量
5 ConvertUnitPrice BaseUnitID:基本单位ID
SrcUnitID:原单位ID
DestUnitID:目标单位ID
SrcUnitPrice:原单价
decimal 根据单位换算计算目标单位的单价
6 GetAssistantData groupNumber:分组编码
filter:过滤条件,默认为空,t2为T_BAS_ASSISTANTDATAENTRY表
strFieldNames:过滤字段,默认为空,t2为T_BAS_ASSISTANTDATAENTRY表
DynamicObjectCollection 获取辅助资料集合
7 GetExchangeRate date:日期
forCurrency:原币币别,默认为空
toCurrency:目标币别,默认为空
strCustomFilter:自定义过滤条件,默认为空
decimal 获取直接汇率

3.3.2 BillConvertUtil

说明:单据转换封装类

序号 方法名 参数 返回类型 说明
1 GetAfterConvertTargetObject e:下推结果参数 DynamicObject 获取转换后的第一个目标数据包
2 GetAfterConvertTargetObjects e:下推结果参数 List<DynamicObject> 获取转换后的目标数据包集合
3 GetSourceObj ctx:上下文
args:下推结果参数
linkKey:单据关联标识(在【BOS-表单属性-单据关联配置】中查看),默认为FBillHead_Link
DynamicObject 获取源单第一个对象数据包

3.3.3 DynamicObjectUtil

说明:动态对象封装类。

序号 方法名 参数 返回类型 说明
1 DynamicObjectUtil pContext:上下文 构造函数
2 GetObjects FormID:业务对象唯一标识
Filter:过滤条件,默认为空
ListFields:查询字段集合,默认为null
DynamicObject[] 获取动态对象集合
3 GetObject FormID:业务对象唯一标识
Filter:过滤条件,默认为空
ListFields:查询字段集合,默认为null
DynamicObject 获取动态对象
4 GetObject FormID:业务对象唯一标识
BillID:单据内码
DynamicObject 获取单据动态对象
5 GetObject FormID:业务对象唯一标识
Number:编码
Type:类型 0-基础资料 1-单据
DynamicObject 获取动态对象
6 GetBaseObject FormID:业务对象唯一标识
UseOrgID:使用组织ID
Number:编码
DynamicObject 获取获取动态对象(云星空存在视图转基础资料的做法,须通过此方法获取)
7 NewObject FormID:业务对象唯一标识
SetDefault:是否设置默认值,默认是
DynamicObject 构建新动态对象
8 NewEntryObject FormID:业务对象唯一标识
EntryKey:实体标识
SetDefault:是否设置默认值
DynamicObject 构建新动态对象
9 SetPrepareObject Keys:字段标识集合
e:PreparePropertysEventArgs参数
设置加载字段(服务插件可用)
10 SetAllPrepareObject e:PreparePropertysEventArgs参数
strFormId:业务对象唯一标识
设置加载全部字段(服务插件可用)
11 GetBizInfo FormID:业务对象唯一标识 BusinessInfo 获取业务信息对象
12 GetNewId TableName:表名 long 获取表名自增长ID
13 SetAuxProp billObjs:单据数据包集合
dctFlexItemIds:键值对集合,key=辅助属性key(FF100001、FF100002…),value=需要赋值的值
strCurrentFormId:当前业务对象唯一标识
strEntryKey:单据体标识
iRow:单据体行索引,不填则全部
bIsAutoSave:是否自动保存,默认否
设置辅助属性
14 GetBillTypeId strNumber:单据类型的编码 string 获取单据类型内码

3.3.4 FileUtil

说明:文件封装类。

序号 方法名 参数 返回类型 说明
1 ExcelToTable filePath:文件路径
isUseNewColumnName:是否使用新列名,默认:是
startRowIndex:读取数据起始行,默认为0
DataTable,返回列名Cols0,Cols1,Cols2···以此类推 Excel文件转换成DataTable
2 EntryExcelOut entityList:单据体实体标识列表
view:IDynamicFormView对象
bFirstRowNeedFieldName:Excel首行是否为字段名,默认为是
dataOutVals:基础资料/单选辅助资料显示值字段,key=字段标识 value=基础资料/单选辅助资料字段属性名称;默认为null,名称
fileType:文件类型,默认为xlsx
单据体数据导出Excel(调用系统的弹出下载路径窗口)
3 ListExcelOut view:IListView对象
fileType:文件类型,默认为xlsx
列表导出Excel(调用系统的弹出下载路径窗口)
4 WriteInTxt strTxtContent:写入内容
strFileName:文件名称
strFilePath:文件路径;默认为空,基目录
DataResult 文本写入内容

3.3.5 HttpClientUtil

说明:HTTP请求封装类,用于WebApi请求操作业务对象。

序号 方法名 参数 返回类型 说明
1 AsyncRequest string 发起HTTP请求(POST)

3.3.6 IBillViewUtil

说明:业务对象视图封装类。

序号 方法名 参数 返回类型 说明
1 IBillViewUtil 构造函数
2 IBillViewUtil billView:IBillView对象 构造函数
3 CopyEntryRow entryKey:分录标识
btnKey:复制行按钮标识
分录复制行
4 GetFileUploadPath e:CustomEventsArgs参数
controlKey:(文件上传)控件标识
string 获取文件上传的路径,通常是继承AbstractBillPlugIn重写CustomEvents方法调用
5 CreateBillView ctx:上下文
strFormId:业务对象唯一标识
pkId:业务对象主键内码
BillView 创建业务对象视图对象

3.3.7 MessageUtil

说明:消息提示封装类。

序号 方法名 参数 返回类型 说明
1 ShowMessage_Interactive ctx:上下文
strFormID:业务对象唯一标识
option:传入this.Option即可
isShowConfirm:是否显示按钮“是”
isShowCancel:是否显示按钮“否”
strMessage:交互提示信息
isInteractive:是否需要交互,默认为是
利用K/3 Cloud标准的交互消息界面(通常用于服务插件提示)
2 ShowMessageEx view:IBillView对象
wdqK3Message:显示的消息集合
消息弹窗(列表形式展示)
3 ShowMessageEx view:IDynamicFormView对象
wdqK3Message:显示的消息集合
消息弹窗(列表形式展示)

3.3.8 OperateUtil

说明:操作封装类(保存、提交、审核等)。

序号 方法名 参数 返回类型 说明
1 OperateUtil pContext:上下文 构造函数
2 SaveObject FormID:业务对象唯一标识
DyObjs:业务对象数据包集合
AutoSubmit:是否自动提交
AutoAudit:是否自动审核
DataResult 保存操作
3 SubmitObject FormID:业务对象唯一标识
IdList:业务对象ID集合
AutoAudit:是否自动审核
DataResult 提交操作
4 AuditObject FormID:业务对象唯一标识
IdList:业务对象ID集合
DataResult 审核操作
5 UnAuditObject FormID:业务对象唯一标识
IdList:业务对象ID集合
DataResult 反审核操作
6 DeleteObject FormID:业务对象唯一标识
IdList:业务对象ID集合
DataResult 删除操作
7 DeleteObject FormID:业务对象唯一标识
DyObjs:业务对象数据包集合
DataResult 保存且审核操作
8 BillPush strSrcFormId:源单业务对象唯一标识
strTargetFormId:目标单业务对象唯一标识
option:传入this.Option即可
strSrcBillId:源单内码
strConvertRuleId:转换规则ID
strTargetBillTypeId:目标单单据类型,默认为null,单据转换设置的默认单据类型
pushEntryList:下推的分录集合,默认为null,整单下推
bIsSaveBillObjs:是否保存单据集合,默认true
bIsSaveAndAudit:是否保存且审核单据集合,默认false
customParams:自定义参数(单据转换二开可获取),默认null
DataResult,下推成功后,Data=单据编号List集合 单据下推操作

3.3.9 ShowFormUtil

说明:打开业务对象封装类。

序号 方法名 参数 返回类型 说明
1 ShowFormUtil view:IDynamicFormView对象 构造函数
2 ShowFormUtil view:IBillView对象 构造函数
3 ShowListForm formID:业务对象唯一标识
filter:过滤条件
openStyle:打开形式 0-在当前页签打开 1-在新页签打开 2-替换当前页签 3-在容器中打开
打开业务对象列表
4 ShowListForm formID:业务对象唯一标识
billID:业务对象ID
billOpeartionStatus:业务对象操作状态 0:编辑 1:新增 2:只查看
openStyle:打开形式 0-在当前页签打开 1-在新页签打开 2-替换当前页签 3-在容器中打开
打开业务对象(表单)
5 ShowDynamicForm openFormId:业务对象唯一标识
dictParams:自定义参数(二开可获取)
打开动态表单

3.3.10 SQLUtil

说明:SQL封装类。

序号 方法名 参数 返回类型 说明
1 GetValue<T> ctx:上下文
sql:SQL语句
T 返回SQL查询结果第一行第一列的值
2 GetData ctx:上下文
sql:SQL语句
DynamicObject 返回数据对象集合
3 GetObject ctx:上下文
sql:SQL语句
DynamicObjectCollection 返回首个数据对象
4 Execute ctx:上下文
sql:SQL语句
执行SQL语句
5 GetBulkInsertSql<T> ctx:上下文
objs:要转换的对象集合
tableName:要新增数据的目标表名
bIsNeedCreateTable:是否需要创建表,默认为false
BulkInsert 获取SQL语句(批量添加)
6 ExcuteBulkInsertSql<T> objs:要转换的对象集合
tableName:要新增数据的目标表名
bIsNeedCreateTable:是否需要创建表,默认为false
iBatchCount:批量执行的数量,默认为1000,不允许大于1000
BulkInsert 执行SQL语句(批量添加)

3.3.11 StockUtil

说明:库存封装类(锁库、解库等)。

序号 方法名 参数 返回类型 说明
1 StockUtil ctx:上下文 构造函数
2 LockStock lockStocks:LockStockArgs集合
LockStockType:锁库类型
DynamicObjectCollection 锁库
3 UnLockStock lockStocks:LockStockArgs集合
LockStockType:锁库类型
DynamicObjectCollection 解库
4 GetLockInfosByBillNo strFormId:业务对象唯一标识
strFdemandBillNo:需求单据编号
LockStockType:锁库类型
List<LockStockArgs> 根据需求单据编号获取锁库信息
5 GetLockInfosByBillEntryIds strFormId:业务对象唯一标识
billEntryIds:LockStockArgs.FEntryID集合
LockStockType:锁库类型
List<LockStockArgs> 根据LockStockArgs.FEntryID集合获取锁库信息
6 GetLockInfos strFormId:业务对象唯一标识
strFilter:过滤条件 a为T_PLN_RESERVELINK表 b为T_PLN_RESERVELINKENTRY表
LockStockType:锁库类型
List<LockStockArgs> 获取锁库信息

结语:有更新会继续完善~

WDQ.ERP.K3Cloud.Util使用文档相关推荐

  1. ASP.NET大型快运(快递)ERP系统带完整文档【源码分享】

    ASP.NET大型快运(快递)管理系统源码带完整文档 源码分享,需要源码学习参考可私信我. 大型快递(快运)管理系统基于webservice的分布式系统,集成快递物流业务流程管理,快递物流公司内部管理 ...

  2. 谷歌Chrome107版不支持PPAPI后,OA、ERP厂商的Office文档在线预览解决方案

    2022年10月25日,谷歌发布Chrome107版浏览器,终止支持所有平台上的NaCL.PNaCL以及PPAPI接口,而一些依赖PPAPI插件接口的一些在线Office产品(如:江西某公司的iWeb ...

  3. oracle erp不能和其他文档复制粘贴

    1.       JAVA插件问题.重装一下JAVA插件吧.记得第一次登陆ORACLE系统的时候会弹出提示.需要点击:总是授予 按钮,不同版本可能提示不同,反正注意下意思相近的就行了. 2.      ...

  4. ERP项目文档--想到用时方恨少

    最近听说一个事情,是关于ERP项目实施的争议问题,先说一下这个事情的背景吧.某企业准备实施一套ERP系统,前期经过一系列的考察与选题,最终确定了一家软件公司进行合作,在项目实施的前期大家都合作的算是比 ...

  5. 使用spark计算文档相似度

    2019独角兽企业重金招聘Python工程师标准>>> 1.TF-IDF文档转换为向量 以下边三个句子为例 罗湖发布大梧桐新兴产业带整体规划 深化伙伴关系,增强发展动力 为世界经济发 ...

  6. javadoc - Java API 文档生成器(Windows版本)

    文章目录 简介 命令语法结构 Javadoc Doclets 术语 带文档的类 引用类 外部引用类 源文件 源代码文件 包注释文件 概述注释文件 其他未处理文件 生成的文件 基本内容页 交叉参考页 支 ...

  7. 想做个项目练练手却不知道做啥?松哥准备了 50 个热门需求文档给大家!

    之前有好几位小伙伴向松哥反映,学完了微人事项目的技术点之后,想再做个项目练练手,但是却不知道该做啥!不了解业务就无从下手. 其实我理解大家的这种处境,因此,这个周末松哥花了两天时间,整理了 50+ 个 ...

  8. 分别使用dom和dom4j解析XML文档

    1.dom和dom4j的特点 dom是基于XML的树结构来完成解析的.dom解析XML文档时,会根据读取的文档,构建一个驻留内存的树结构,然后就可以使用dom接口来对XML文档进行增删查改等操作.do ...

  9. java.util.concurrent.locks.Condition文档说明

    [1]Condition接口文档描述 1.Condition类把Object监视器方法(wait,nofify, notifyAll)分解为不同对象,通过与Lock实现类的合并使用,Condition ...

最新文章

  1. python3 logging模块_Python3之logging模块浅析
  2. ip冲突 scan windows_Linux下IP 冲突查看及解决方法
  3. JavaWeb 项目启动时,后台开启一个线程的方法
  4. [USACO08MAR]土地征用Land Acquisition
  5. 魔方——操作阶数实验
  6. rand(m,n) 续行
  7. Adaptive Feature Recombination and Recalibration for Semantic Segmentation: Application to Brain Tum
  8. NSJSONSerialization-JSON数据与NSDictionary和NSArray之间的转化
  9. delphi 学习资源和移动开发
  10. 人人商城人人店人人分销商城V2.8.0解密开源版,收银台+秒杀+区域代理+积分商城+多商户
  11. 扫码枪测试软件,有线条码扫码枪的测试方法
  12. 【逗老师带你学IT】PRTG、Zabbix通过API监控深信服VDC和VMP云桌面运行状态
  13. 明尼苏达计算机科学与工程,明尼苏达大学计算机科学专业排名第29(2020年USNEWS美国排名)...
  14. 蚁群背包问题matlab代码,蚁群算法--背包问题
  15. 一些在线图片处理工具收集
  16. Python学习笔记:part 1
  17. 戴戴戴师兄-数据分析课程笔记(第一讲)
  18. 爱奇艺内容中台数据中心的设计与实现
  19. 2022年茶艺师(初级)考试模拟100题及答案
  20. 怎么从Apache maven 官网下载旧版本

热门文章

  1. 手机短信被删除了怎么恢复
  2. Unity Mecanim动画 动画片段只执行一次
  3. 极品飞车20 CPU占用率很恐怖
  4. Linux Shell CentOS 写一个输出命令 支持颜色
  5. python hasattr函数_浅谈python中的getattr函数 hasattr函数
  6. 流形学习的四种降维方法
  7. EASTED 产品决策层
  8. 02 S5PV210刷系统
  9. 如何获取瘦人肠道菌群_还是瘦不下来?吃屎啦!——肠道菌群是怎样影响我们胖瘦的?...
  10. 潭州课堂25班:Ph201805201 django 项目 第四十三课 后台 用户管理前后功能实现 (课堂笔记)...