//获取基础资料的代码和名称
public string GetBaseDateNumber(DynamicObject dyobj) { //判断条件: 存在基础资料 并且基础资料中包含Number 这个属性 if ((dyobj != null) && dyobj.DynamicObjectType.Properties.Contains("Number")) { return dyobj["Number"].ToString(); } return string.Empty; } public string GetBaseDataNameValue(DynamicObject dyobj) {//判断条件: 存在基础资料 并且基础资料中包含Name 这个属性 if ((dyobj != null) && dyobj.DynamicObjectType.Properties.Contains("Name")) { return dyobj["Name"].ToString(); } return string.Empty; }
获取单据体信息:
方法1: 获取单据体分录数,然后for 循环
int rows = this.Model.GetEntryRowCount("FSaleOrderEntry");
方法2:获取单据体的数据包,entitys.count 获取记录条数
DynamicObjectCollection entitys = this.Model.DataObject["SaleOrderEntry"] as DynamicObjectCollection;
方法3:foreach
///////////////////////////////////
单据体获取信息
DynamicObjectCollection entitys = this.Model.DataObject["SaleOrderEntry"] as DynamicObjectCollection; int rows = this.Model.GetEntryRowCount("FSaleOrderEntry"); for (int rowIndex = 0; rowIndex < rows; rowIndex++) { DynamicObject materialObj = (DynamicObject)this.Model.GetValue("FMATERIALID", rowIndex); MaterialID = (materialObj==null) ? "0": materialObj["Id"].ToString(); //获取物料内码 }