public string GetObjectValeForSN(string stationNumber, string attriCode, string attriValue)//attriCode =* { string serialNumber = ""; string errorMsg = ""; KeyValue[] attributeFilters = new KeyValue[] { }; string[] objectResultKeys = new string[] { "SERIAL_NUMBER" }; string[] objectResultValues = new string[] { }; LogHelper.Info("begin api attribGetObjectsForAttributeValues (station number =" + stationNumber + ",attribute code = " + attriCode + ",attribute value = " + attriValue + ")"); int error = imsapi.attribGetObjectsForAttributeValues(sessionContext, stationNumber, 0, attriCode, null, 0, attributeFilters, objectResultKeys, out objectResultValues); LogHelper.Info("end api attribGetObjectsForAttributeValues (result code = " + error + ")"); //imsapi.imsapiGetErrorText(sessionContext, error, out errorMsg); errorMsg = UtilityFunction.GetZHSErrorString(error, init, sessionContext); if (error == 0) { view.errorHandler(0, init.lang.ERROR_API_CALL_ERROR + " attribGetObjectsForAttributeValues " + error, ""); serialNumber = objectResultValues[0]; } else { view.errorHandler(2, init.lang.ERROR_API_CALL_ERROR + " attribGetObjectsForAttributeValues " + error + "(" + errorMsg + ")", ""); } return(serialNumber); }
public string[] GetMBNFromAttribute(string attributeCode, string attributeValue) { KeyValue[] attributeFilters = new KeyValue[] { }; string[] objectResultKeys = new string[] { "MATERIAL_BIN_NUMBER" }; string[] objectResultValues = new string[] { }; int error = imsapi.attribGetObjectsForAttributeValues(sessionContext, init.configHandler.StationNumber, 2, attributeCode, attributeValue, 10000, attributeFilters, objectResultKeys, out objectResultValues); LogHelper.Info("Api attribGetObjectsForAttributeValues attribute code =" + attributeCode + " ,attribute value =" + attributeValue + " ,return code =" + error); LogHelper.Info("Get MBN count" + objectResultValues.Length); if (error == 0) { } return(objectResultValues); }
public DataTable GetObjectsForAttributeValues(string strAttributeCode, string strWorkorder) { DataTable dt = new DataTable(); dt.Columns.Add("PickListNo", typeof(string)); dt.Columns.Add("MaterialBinNo", typeof(string)); dt.Columns.Add("PartNumber", typeof(string)); dt.Columns.Add("MPickQty", typeof(string)); string[] pickListNo = new string[] { }; Dictionary <string, string> dicAttriValues = GetWOAttributeValuesForUpdate(strWorkorder); if (dicAttriValues != null && dicAttriValues.ContainsKey("WorkOrderPickListNoAttrib")) { pickListNo = dicAttriValues["WorkOrderPickListNoAttrib"].Split(new char[] { ',' }); } if (pickListNo != null && pickListNo.Length > 0) { KeyValue[] attributeFilters = new KeyValue[] { }; string[] objectResultKeys = new string[] { "MATERIAL_BIN_NUMBER", "PART_NUMBER", "QUANTITY_ACTUAL", "QUANTITY_TOTAL" }; string[] objectResultValues = new string[] { }; foreach (var str in pickListNo) { int error = imsapi.attribGetObjectsForAttributeValues(sessionContext, init.configHandler.StationNumber, 2, strAttributeCode, "*" + str + "*", 100, attributeFilters, objectResultKeys, out objectResultValues); if (error == 0) { int loop = objectResultKeys.Length; int count = objectResultValues.Length; for (int i = 0; i < count; i += loop) { DataRow row = dt.NewRow(); row["PickListNo"] = str; row["MaterialBinNo"] = objectResultValues[i]; row["PartNumber"] = objectResultValues[i + 1]; row["MPickQty"] = objectResultValues[i + 2]; dt.Rows.Add(row); } } } } return(dt); }