public Dictionary <string, string> GetAttributeValues(string materialBinNumber) { string errorMsg = ""; Dictionary <string, string> dicValues = new Dictionary <string, string>(); string[] attributeCodeArray = new string[] { };//"PickListWSAttrib", "PickListQtyAttrib", "PickListNoAttrib", "PickListStatusAttrib" string[] attributeResultKeys = new string[] { "ATTRIBUTE_CODE", "ATTRIBUTE_VALUE", "ERROR_CODE" }; string[] attributeResultValues = new string[] { }; //LogHelper.Info("begin api attribGetAttributeValues (material bin number =" + materialBinNumber + ")"); int error = imsapi.attribGetAttributeValues(sessionContext, init.configHandler.StationNumber, 2, materialBinNumber, "-1", attributeCodeArray, 0, attributeResultKeys, out attributeResultValues); imsapi.imsapiGetErrorText(sessionContext, error, out errorMsg); //LogHelper.Info("end api attribGetAttributeValues (errorcode = " + error + ")"); if (error == 0) { int loop = attributeResultKeys.Length; int count = attributeResultValues.Length; for (int i = 0; i < count; i += loop) { dicValues[attributeResultValues[i]] = attributeResultValues[i + 1]; } //view.errorHandler(0, init.lang.ERROR_API_CALL_ERROR + " attribGetAttributeValues " + error, ""); } else { //view.errorHandler(3, init.lang.ERROR_API_CALL_ERROR + " attribGetAttributeValues " + error + "(" + errorMsg + ")", ""); } return(dicValues); }
public string[] GetAttributeValueForAll(string stationNumber, int objectType, string objectNumber, string objectDetail, string attributeCode) { string[] attributeCodeArray = new string[] { attributeCode }; string[] attributeResultKeys = new string[] { "ATTRIBUTE_CODE", "ATTRIBUTE_VALUE", "ERROR_CODE" }; string[] attributeResultValues = new string[] { }; int error = imsapi.attribGetAttributeValues(sessionContext, stationNumber, objectType, objectNumber, objectDetail, attributeCodeArray, 0, attributeResultKeys, out attributeResultValues); LogHelper.Info("api attribGetAttributeValues (object type =" + objectType + ",object number =" + objectNumber + ",attribute code =" + attributeCode + ", result code =" + error + ")"); return(attributeResultValues); }
public string GetAttributeValuesForStation() { string returnValue = ""; string errorMsg = ""; string[] attributeCodeArray = new string[] { "attribActivatedStationLotNo" }; string[] attributeResultKeys = new string[] { "ATTRIBUTE_CODE", "ATTRIBUTE_VALUE", "ERROR_CODE" }; string[] attributeResultValues = new string[] { }; LogHelper.Info("begin api attribGetAttributeValues (station number =" + init.configHandler.StationNumber + ")"); int error = imsapi.attribGetAttributeValues(sessionContext, init.configHandler.StationNumber, 7, init.configHandler.StationNumber, "-1", attributeCodeArray, 0, attributeResultKeys, out attributeResultValues); LogHelper.Info("end api attribGetAttributeValues (result code = " + error + ")"); //imsapi.imsapiGetErrorText(sessionContext, error, out errorMsg); errorMsg = UtilityFunction.GetZHSErrorString(error, init, sessionContext); if (error == 0) { returnValue = attributeResultValues[1]; view.errorHandler(0, init.lang.ERROR_API_CALL_ERROR + " attribGetAttributeValues " + error, ""); } else { view.errorHandler(2, init.lang.ERROR_API_CALL_ERROR + " attribGetAttributeValues " + error + "(" + errorMsg + ")", ""); } return(returnValue); }
public DataTable GetMaterialBinNumberByPN(string partNumber, string compName, string setupLoc, string stationNo) { DataTable dt = new DataTable(); dt.Columns.Add(new DataColumn("MaterialBinNum", typeof(string))); dt.Columns.Add(new DataColumn("PartNumber", typeof(string))); dt.Columns.Add(new DataColumn("Qty", typeof(string))); dt.Columns.Add(new DataColumn("FIFOTime", typeof(string))); dt.Columns.Add(new DataColumn("QtyUsed", typeof(string))); dt.Columns.Add(new DataColumn("QtytoPick", typeof(string))); dt.Columns.Add(new DataColumn("Location", typeof(string))); dt.Columns.Add(new DataColumn("CompName", typeof(string))); dt.Columns.Add(new DataColumn("SetupLoc", typeof(string))); dt.Columns.Add(new DataColumn("PStationNo", typeof(string))); //dt.Columns.Add(new DataColumn("Status", typeof(string))); KeyValue[] materialBinFilters = new KeyValue[] { new KeyValue("MATERIAL_BIN_PART_NUMBER", partNumber), new KeyValue("MAX_ROWS", "100"), new KeyValue("MATERIAL_BIN_STATE", "F,R,S") }; string[] materialBinResultKeys = new string[] { "MATERIAL_BIN_NUMBER", "MATERIAL_BIN_PART_NUMBER", "MATERIAL_BIN_QTY_ACTUAL", "STORAGE_NUMBER" }; string[] materialBinResultValues = new string[] { }; AttributeInfo[] attributes = new AttributeInfo[] { };//new AttributeInfo("FIFOAttrib", "*") LogHelper.Info("begin api mlGetMaterialBinData (Part Number:" + partNumber + ")"); int error = imsapi.mlGetMaterialBinData(sessionContext, init.configHandler.StationNumber, materialBinFilters, attributes, materialBinResultKeys, out materialBinResultValues); LogHelper.Info("end api mlGetMaterialBinData (errorcode = " + error + ")"); if (error != 0 && error != 3) { //view.errorHandler(2, init.lang.ERROR_API_CALL_ERROR + " mlGetMaterialBinData " + error, ""); return(null); } else { int loop = materialBinResultKeys.Length; int count = materialBinResultValues.Length; for (int i = 0; i < count; i += loop) { //get material bin number attribute "PickListQtyAttrib","FIFOAttrib","PickListStatusAttrib" Dictionary <string, string> dicValues = new Dictionary <string, string>(); string[] attributeCodeArray = new string[] { };//"PickListQtyAttrib", string[] attributeResultKeys = new string[] { "ATTRIBUTE_CODE", "ATTRIBUTE_VALUE", "ERROR_CODE" }; string[] attributeResultValues = new string[] { }; LogHelper.Info("begin api attribGetAttributeValues (material bin number =" + materialBinResultValues[i].ToString() + ")"); int error1 = imsapi.attribGetAttributeValues(sessionContext, init.configHandler.StationNumber, 2, materialBinResultValues[i].ToString(), "-1", attributeCodeArray, 0, attributeResultKeys, out attributeResultValues); LogHelper.Info("end api attribGetAttributeValues (errorcode = " + error1 + ")"); if (error1 == 0) { int loop1 = attributeResultKeys.Length; int count1 = attributeResultValues.Length; for (int j = 0; j < count1; j += loop1) { dicValues[attributeResultValues[j]] = attributeResultValues[j + 1]; } } if (dicValues.ContainsKey("PickListStatusAttrib") && dicValues["PickListStatusAttrib"] == "1")// it will not pick the material that has been booked. { continue; } DataRow row = dt.NewRow(); row["MaterialBinNum"] = materialBinResultValues[i].ToString(); row["PartNumber"] = materialBinResultValues[i + 1].ToString(); row["Qty"] = materialBinResultValues[i + 2].ToString(); row["Location"] = materialBinResultValues[i + 3].ToString(); row["FIFOTime"] = dicValues.ContainsKey("FIFOAttrib") ? dicValues["FIFOAttrib"] : ""; //string strValue = dicValues.ContainsKey("PickListQtyAttrib") ? dicValues["PickListQtyAttrib"] : ""; row["QtyUsed"] = 0;//GetMaterialBinUsedQty(strValue); row["CompName"] = compName; row["SetupLoc"] = setupLoc; row["PStationNo"] = stationNo; dt.Rows.Add(row); } //view.errorHandler(0, init.lang.ERROR_API_CALL_ERROR + " mlGetMaterialBinData " + error, ""); } return(dt); }