Пример #1
0
        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);
        }
Пример #3
0
        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);
        }
Пример #4
0
        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);
        }