获取多类别基础资料
金蝶云社区-Jaden
Jaden
0人赞赏了该文章 1,372次浏览 未经作者许可,禁止转载编辑于2018年12月24日 10:58:38

如何通过编号获取多类别基础资料信息?通过BusinessDataServiceHelper.Load这个方法似乎只有传递内码ID才能获取到多类别基础资料信息。可以通过如下方法根据编码来获取多类别基础资料信息///


/// 获取多类别基础资料信息(货主)
///

///
/// 多类别基础资料字段
/// 多类别基础资料列表字段
/// 多类别基础资料列表填选的值
/// 多类别基础资料编号
///
private DynamicObject[] GetMultiTypeMaterial(Context ctx, ItemClassField field, string classTypeID, string number)
{
List IDs = new List();
string queryIDSql = string.Format("select fitemid from {0} where fnumber='{1}' and fformid='{2}'", field.LookUpObject.TableName, number, classTypeID);
using (IDataReader dataReader = DBUtils.ExecuteReader(ctx, queryIDSql))
{
while (dataReader.Read())
{
IDs.Add(dataReader.GetValue(0));
}
dataReader.Close();
}
return BusinessDataServiceHelper.Load(ctx, IDs.ToArray(), field.RefFormDynamicObjectType);
}

上面的方法有一个参数classTypeID,这个参数是多类别基础资料对应的多类别基础资料列表选中的值,必须要传这个参数