Sbo通用数据选择功能的实现
fsSbo.AddItem2Form(ref oForm, "2", BoFormItemTypes.it_BUTTON, 315, 80, 65, 20);
grd.DataTable = oForm.DataSources.DataTables.Add("dtData");
grd.SelectionMode = BoMatrixSelect.ms_Single;
for (int i = 0; i < grd.DataTable.Columns.Count; i++)
{
if (grd.DataTable.Columns.Item(i).Type == BoFieldsType.ft_Integer || grd.DataTable.Columns.Item(i).Type == BoFieldsType.ft_Float)
grd.Columns.Item(i).RightJustified = true;
}
string[] strValues = new string[strFatherFields.Length == 0 || frmFather != null ? dt.Columns.Count : strColumns.Length];
for (int i = 0; i < strValues.Length; i++)
{
string strValue = "";
if (dt.Columns.Item(i).Cells.Item(nSelectedRow).Value != null) strValue = dt.Columns.Item(i).Cells.Item(nSelectedRow).Value.ToString();
if (i < dt.Columns.Count) strValues[i] = strValue;
}
{
Form frm = fsSbo.fsSboApplication.Forms.Item(strFatherFId);
for (int i = 0; i < strColumns.Length; i++)
{
if (strMtxId.Length > 0 && nMtxRow > 0)
{
Matrix mtx = (Matrix)frm.Items.Item(strMtxId).Specific;
Column oColumn = mtx.Columns.Item(strColumns[i]);
fsSbo.SetValue2MtxEditText(ref mtx, strColumns[i], nMtxRow, strValues[i]);
else if (oColumn.Type == BoFormItemTypes.it_COMBO_BOX)
fsSbo.SetValue2MtxCombox(ref mtx, strColumns[i], nMtxRow, strValues[i]);
}
else
{
Item oItem = frm.Items.Item(strColumns[i]);
if (oItem.Type == BoFormItemTypes.it_COMBO_BOX)
fsSbo.SetValue2Combox(ref frm, strColumns[i], strValues[i]);
else if (oItem.Type == BoFormItemTypes.it_EDIT || oItem.Type == BoFormItemTypes.it_EXTEDIT)
fsSbo.SetValue2EditText(ref frm, strColumns[i], strValues[i]);
}
}
frm.Refresh();
frm.Update();
}
else if (frmFather != null)
{
string strFormId = oForm.UniqueID;
}
{
Boolean bRet = false;
try
{
fsSboChooseDataBase frm = new fsSboChooseDataBase(this);
frm.ChooseDataSQL = strQuerySQL;
frm.FatherFields = strFatherFields;
frm.FatherFormId = strFatherId;
if (strMtxId.Length > 0 && nMtxRow > 0)
{
frm.FatherMatrixId = strMtxId;
frm.FatherMatrixRow = nMtxRow;
}
bRet = ShowForm(frm, "ChooseData" + strFatherId, strTitle);
}
catch (Exception ex)
{
ShowMsg("错误:" + ex.Message);
}
}
strSQL = "SELECT DocEntry as [$$DocEntry], U_DealCode 加工协议, U_DealName 协议描述, U_DealNo 档案编号, U_WrkBatNo 生产批次, U_CardCode 委托方, U_CardName 委托方名称, U_PlanSD 计划开始, U_PlanED 计划结束 FROM [@FSCXFWORKDEALINFO] WHERE IsNull(U_Stts,'0') in ('2','3')";
strFields = "DealEntry,emDealCode,emDealName,emDealNo,emBatNo,emCardCode,emCardName";
if (strDealEntry.Length > 0)
{
strSQL = "SELECT U_ItemCode 物料代码, U_ItemName 物料描述, U_BaseItem as [$$BaseItem], U_BaseCode as [$$BaseCode], U_GrdEntry as [$$GrdEntry], U_GrdCode 等级, U_FromCode as [$$FromCode], U_FromName [产地], U_ItemAge 年限, IsNull(U_Qty,0) - IsNull(U_Qtyed,0) [$$RemQty], U_ItemGrp [$$ItemGrp], U_WhsCode [$$WhsCode], DocEntry as [$$DocEntry], U_Qty 计划加工, U_Qtyed 已加工, U_Notes 备注 FROM [@FSCXFWORKDEALLINE1] WHERE U_ItemGrp in (" + fsSbo.fsSboMes4CxF.ItemGroupCodeBeforePick + ") AND DocEntry=" + strDealEntry + (strItemList.Length > 0 ? " AND U_ItemCode not in (" + strItemList + ")" : "");
bRet = fsSbo.OpenChooseDataForm(strTitle, this, strSQL, "REQUEST");
}
转载于:https://blog.51cto.com/foresun/94859
Sbo通用数据选择功能的实现相关推荐
- 写一个通用数据访问组件
出处:http://www.csharp-corner.com willsound(翻译) 我收到过好多Email来问我如何用一个通用的数据提供者(data provider)在不失自然数据提供者(n ...
- 通用数据级别权限的框架设计与实现(4)-单条记录的权限控制
查看上篇文章通用数据级别权限的框架设计与实现(3)-数据列表的权限过滤,我们开始在原来的基础上实现单条权记录的权限控制. 相信前面的列表权限控制,很多系统都可以做到,但如何在上面列表的权限过滤中实现通 ...
- 通用数据级别权限的框架设计与实现(3)-数据列表的权限过滤
查看上篇文章通用数据级别权限的框架设计与实现(2)-数据权限的准备工作,我们开始数据列表的权限过滤. 原理:我们在做过滤列表时,根据用户权限自动注入到相关SQL中,实现相关过滤,如果拥有全部权限,则不 ...
- ASP.NET2.0通用数据访问类
.NET框架自带的数据提供器包括SQLServer(System.Data.SqlClient).Oracle (System.Data.Oracleclient).OLEDB(System.D ...
- 【业务建模_2】通用数据工具
[业务建模_2]通用数据工具 背景 在公司做数据工作会接触很多相关工具,这里会汇总一些核心并更理想化的工具. 工具汇总 1.打点平台 module,op,参数数组(s0-s5),常用参数,[实际打点位 ...
- EF通用数据层封装类(支持读写分离,一主多从)
浅谈orm 记得四年前在学校第一次接触到 Ling to Sql,那时候瞬间发现不用手写sql语句是多么的方便,后面慢慢的接触了许多orm框架,像 EF,Dapper,Hibernate,Servic ...
- java 通用组件_写一个通用数据访问组件
出处:http://www.csharp-corner.comwillsound(翻译)我收到过数据库 出处:http://www.csharp-corner.com willsound(翻译) 我收 ...
- 金融数据密码机、通用数据密码机、签名验证服务器规格
这里写自定义目录标题 金融数据密码机EVSM 功能描述 接口规范 加密算法 性能参考 通用数据密码机GVSM 功能描述 接口规范 加密算法 性能参考 签名验证服务器SVSM 功能描述 接口规范 加密算 ...
- Service Mesh中的通用数据平面API设计
原文地址:https://blog.envoyproxy.io/the-universal-data-plane-api-d15cec7a 作者:Matt Klein 译者:敖小剑 校对:宋净超 正如 ...
最新文章
- C/C++版数据结构之链表三
- Android 面试 - compileSdkVersion、minSdkVersion、targetSdkVersion、buildToolsVersion
- mybatis plus generator配置
- 关于DNS服务中查询域名的命令
- Python之爬虫-段子网
- 第3章 Python 数字图像处理(DIP) - 灰度变换与空间滤波10 - 直方图处理 - 局部直方图处理
- 【UOJ168】元旦老人与丛林【图论证明】【最大权闭合子图】【dinic动态推流】
- PostgreSQL SSL启用与CA证书生成、配置
- 源码编译altas mysql_Atlas的安装
- F2FS文件系统论文解读
- java毕业设计HTML5旅游网站源码+系统+数据库+lw文档+调试运行
- (3/3) 在 Cocos creator 中使用 steam api , steam 成就
- 松柏先生: 做品牌自己挣钱不算什么, 能让1000名山区绣娘都挣钱才牛!
- 周志华----第5章神经网络(误差逆传播算法)
- foxmail收取服务器邮件次数,Foxmail:如何设置收取历史邮件?
- G3D 渲染引擎简介
- Golang底层原理学习笔记(一)
- java 三个字母组合_每天AC系列(三):电话号码的字母组合
- (附源码)ssm+mysql+基于SSM框架的图片分享及评价网站设计与实现 毕业设计201524
- 《从一到无穷大》中的程序思维