예제 #1
0
        public static DataTable GetCodeAvailablePOList(eSolutionDataContext db, string customerCode, string pOType, string pOStatus, Boolean allFlag)
        {
            //EMSdb = new eSolutionDataContext();

            DataTable  dt       = new DataTable();
            DataColumn colValue = new DataColumn();
            DataColumn colText  = new DataColumn();
            DataRow    newRow;

            try
            {
                colText.ColumnName  = HelperClass.DisplayName;
                colValue.ColumnName = HelperClass.CodeName;
                colText.DataType    = typeof(System.String);
                colValue.DataType   = typeof(System.String);

                dt.Columns.Add(colText);
                dt.Columns.Add(colValue);

                if (string.IsNullOrEmpty(customerCode))
                {
                    customerCode = "%";
                }
                if (string.IsNullOrEmpty(pOType))
                {
                    pOType = "%";
                }
                if (string.IsNullOrEmpty(pOStatus))
                {
                    pOStatus = "%";
                }

                var sqlQuery = db.stp_GetPOListByCustomer(customerCode, pOType, pOStatus).ToList();
                //var sqlQuery = from obj in db.POHeaders
                //               from cst in db.Customers
                //               where obj.CustomerID == cst.CustomerID
                //               && obj.POType == pOType
                //               && (obj.Status.ToString()).ToUpper().Contains(pOStatus)
                //               && cst.CustomerCode == customerCode
                //               orderby obj.PONumber
                //               select new
                //               {
                //                   POID = obj.POHeaderID,
                //                   PONO = obj.PONumber
                //               };
                if (allFlag == true)
                {
                    newRow = dt.NewRow();
                    newRow[HelperClass.DisplayName] = "ALL";
                    newRow[HelperClass.CodeName]    = "";
                    dt.Rows.Add(newRow);
                }
                foreach (var row in sqlQuery)
                {
                    newRow = dt.NewRow();
                    newRow[HelperClass.DisplayName] = row.PONumber;
                    newRow[HelperClass.CodeName]    = row.PONumber;
                    dt.Rows.Add(newRow);
                }
            }
            catch
            {
                dt = null;
            }
            finally
            {
            }
            return(dt);
        }