コード例 #1
0
        public eco GetECOData(string ecoNumber)
        {
            eco e = new eco();
              int en;

              if (int.TryParse(ecoNumber, out en)) {
            string SQL = string.Empty;

            if (en > GetLastLegacyECR()) {
              SQL = @"SELECT GEN_USERS.FIRST, GEN_USERS.LAST, ECR_MAIN.CHANGES, " +
              @"ECR_STATUS.STATUS, ECR_MAIN.ERR_DESC, ECR_MAIN.REVISION FROM " +
              @"(ECR_MAIN LEFT JOIN GEN_USERS ON ECR_MAIN.REQ_BY = GEN_USERS.UID) " +
              @"LEFT JOIN ECR_STATUS ON ECR_MAIN.STATUS = ECR_STATUS.STAT_ID WHERE " +
              @"(((ECR_MAIN.[ECR_NUM])=?))";
              using (OdbcCommand comm = new OdbcCommand(SQL, conn)) {
            comm.Parameters.AddWithValue("@ecrNo", en);
            using (OdbcDataReader dr = comm.ExecuteReader()) {
              e.EcrNumber = int.Parse(ecoNumber);
              if (dr.Read()) {
                if (!dr.IsDBNull((int)ECODataColumns.CHANGES))
                  e.Changes = dr.GetString((int)ECODataColumns.CHANGES);
                if (!dr.IsDBNull((int)ECODataColumns.DESC))
                  e.ErrDescription = dr.GetString((int)ECODataColumns.DESC);
                if (!dr.IsDBNull((int)ECODataColumns.REVISION))
                  e.Revision = dr.GetString((int)ECODataColumns.REVISION);
                if (!dr.IsDBNull((int)ECODataColumns.STATUS))
                  e.Status = dr.GetString((int)ECODataColumns.STATUS);
                if (!dr.IsDBNull((int)ECODataColumns.USER_FIRST) && !dr.IsDBNull((int)ECODataColumns.USER_LAST))
                  e.RequestedBy = dr.GetString((int)ECODataColumns.USER_FIRST) + " " + dr.GetString((int)ECODataColumns.USER_LAST);
                dr.Close();
              }
            }
              }
            } else {
              // ECR_LEGACY.ECRNum is a string field.
              SQL = @"SELECT * FROM ECR_LEGACY WHERE (((ECR_LEGACY.ECRNum)=?))";
              using (OdbcCommand comm = new OdbcCommand(SQL, conn)) {
            comm.Parameters.AddWithValue("@ecrNo", ecoNumber);
            using (OdbcDataReader dr = comm.ExecuteReader()) {
              e.EcrNumber = int.Parse(ecoNumber);
              if (dr.Read()) {
                if (!dr.IsDBNull(6))
                  e.Changes = dr.GetString(6);
                if (!dr.IsDBNull(4))
                  e.Status = @"Finished on " + dr.GetDate(4).ToString().Split(' ')[0];
                else if (!dr.IsDBNull(3))
                  e.Status = @"Requested on " + dr.GetDate(3).ToString().Split(' ')[0];
                if (!dr.IsDBNull(5))
                  e.Revision = dr.GetString(5);
                if (!dr.IsDBNull(7))
                  e.RequestedBy = dr.GetString(7);
              }
            }
              }
            }
            return e;
              }
              return e;
        }
コード例 #2
0
ファイル: tvRevs.cs プロジェクト: kcjuntunen/Redbrick-Addin
        private void Init()
        {
            this.tvRevisions.Nodes.Clear();
              foreach (DrawingRev r in revSet) {
            TreeNode tnList = new TreeNode(propertySet.CutlistData.GetAuthorFullName(r.List.Value));
            TreeNode tnDate = new TreeNode(r.Date.Value);
            TreeNode tnECO = new TreeNode(r.Eco.Value);
            TreeNode tnC = new TreeNode(r.Revision.Value);
            int test = 0;
            eco e = new eco();
            e = cd.GetECOData(r.Eco.Value);

            if (int.TryParse(r.Eco.Value, out test) && test > cd.GetLastLegacyECR()) {
              TreeNode tnD = new TreeNode("Error Description: " + e.ErrDescription, 0, 0);
              TreeNode tnRB = new TreeNode("Requested by: " + e.RequestedBy, 0, 0);
              TreeNode tnR = new TreeNode("Revision Description:" + e.Revision, 0, 0);
              TreeNode tnS = new TreeNode("Status: " + e.Status, 0, 0);

              if ((e.Changes != null) && e.Changes.Contains("\n")) {
            List<TreeNode> nodes = new List<TreeNode>();
            string[] changeNodes = e.Changes.Split('\n');
            foreach (string s in changeNodes) {
              nodes.Add(new TreeNode(s));
            }
            tnC = new TreeNode("Changes ", nodes.ToArray());
              } else {
            tnC = new TreeNode("Changes: " + e.Changes);
              }
              TreeNode[] ts = { tnC, tnD, tnRB, tnR, tnS };
              TreeNode tnDesc = new TreeNode(r.Description.Value);
              tnECO = new TreeNode(r.Eco.Value, ts);
              TreeNode[] tt = { tnECO, tnDesc, tnList, tnDate };
              TreeNode tn = new TreeNode(r.Revision.Value, tt);
              this.tvRevisions.Nodes.Add(tn);
            } else if (r.Eco.Value.Contains("NA") || r.Eco.Value.Trim().Equals(string.Empty)) {
              tnECO = new TreeNode(r.Eco.Value);
              TreeNode tnDesc = new TreeNode(r.Description.Value);
              TreeNode[] tt = { tnECO, tnDesc, tnList, tnDate };

              TreeNode tn = new TreeNode(r.Revision.Value, tt);
              this.tvRevisions.Nodes.Add(tn);
            } else {
              if ((e.Changes != null) && e.Changes.Contains("\n")) {
            List<TreeNode> nodes = new List<TreeNode>();
            string[] changeNodes = e.Changes.Split('\n');
            foreach (string s in changeNodes) {
              nodes.Add(new TreeNode(s));
            }
            tnC = new TreeNode("Changes ", nodes.ToArray());
              } else {
            tnC = new TreeNode("Changes: " + e.Changes);

            TreeNode tnRB = new TreeNode("Finished by: " + e.RequestedBy, 0, 0);
            string[] affectedParts = e.Revision.Split(',', '&');
            TreeNode tnT = new TreeNode("");

            List<TreeNode> nodes = new List<TreeNode>();
            foreach (string item in affectedParts) {
              nodes.Add(new TreeNode(item.Trim()));
            }
            TreeNode tnR = new TreeNode("Affected Parts:", nodes.ToArray());

            TreeNode tnS = new TreeNode("Status: " + e.Status, 0, 0);
            TreeNode[] ts = { tnC, tnRB, tnR, tnS };
            tnECO = new TreeNode(r.Eco.Value, ts);

            TreeNode tnDesc = new TreeNode(r.Description.Value);
            TreeNode[] tt = { tnECO, tnDesc, tnList, tnDate };

            TreeNode tn = new TreeNode(r.Revision.Value, tt);
            this.tvRevisions.Nodes.Add(tn);
              }
            }
              }
        }
コード例 #3
0
        public eco GetLegacyECOData(string ecoNumber)
        {
            eco e = new eco();
              // ECR_LEGACY.ECRNum is a string field.
              string SQL = @"SELECT * FROM ECR_LEGACY WHERE (((ECR_LEGACY.ECRNum)=?))";

              using (OdbcCommand comm = new OdbcCommand(SQL, conn)) {
            comm.Parameters.AddWithValue("@ecoNumber", ecoNumber);
            using (OdbcDataReader dr = comm.ExecuteReader()) {
              if (dr.Read()) {
            e.EcrNumber = int.Parse(ecoNumber);
            e.Revision = dr.GetString(5); // AffectedParts
            e.Changes = dr.GetString(6); // Change
            string dString = dr.GetDate(4).ToString();
            if (dString != string.Empty) {
              string[] dateString = dString.Split('/', ' '); // DateCompleted
              System.DateTime dt = new DateTime(int.Parse(dateString[2]), int.Parse(dateString[0]), int.Parse(dateString[1]));
              e.Status = @"Finished on " + dt.ToShortDateString();
            } else {
              dString = dr.GetDate(3).ToString();
              string[] dateString = dString.Split('/', ' '); // DateCompleted
              if (dateString.Length > 2) {
                System.DateTime dt = new DateTime(int.Parse(dateString[2]), int.Parse(dateString[0]), int.Parse(dateString[1]));
                e.Status = @"Requested on " + dt.ToShortDateString();
              } else {
                e.Status = dString;
              }
            }
            e.RequestedBy = dr.GetString(7); // FinishedBy
              }
            }
              }
              return e;
        }
コード例 #4
0
        private void Init()
        {
            this.tvRevisions.Nodes.Clear();
            foreach (DrawingRev r in revSet)
            {
                TreeNode tnList = new TreeNode(propertySet.CutlistData.GetAuthorFullName(r.List.Value));
                TreeNode tnDate = new TreeNode(r.Date.Value);
                TreeNode tnECO  = new TreeNode(r.Eco.Value);
                TreeNode tnC    = new TreeNode(r.Revision.Value);
                int      test   = 0;
                eco      e      = new eco();
                e = cd.GetECOData(r.Eco.Value);

                if (int.TryParse(r.Eco.Value, out test) && test > cd.GetLastLegacyECR())
                {
                    TreeNode tnD  = new TreeNode("Error Description: " + e.ErrDescription, 0, 0);
                    TreeNode tnRB = new TreeNode("Requested by: " + e.RequestedBy, 0, 0);
                    TreeNode tnR  = new TreeNode("Revision Description:" + e.Revision, 0, 0);
                    TreeNode tnS  = new TreeNode("Status: " + e.Status, 0, 0);

                    if ((e.Changes != null) && e.Changes.Contains("\n"))
                    {
                        List <TreeNode> nodes       = new List <TreeNode>();
                        string[]        changeNodes = e.Changes.Split('\n');
                        foreach (string s in changeNodes)
                        {
                            nodes.Add(new TreeNode(s));
                        }
                        tnC = new TreeNode("Changes ", nodes.ToArray());
                    }
                    else
                    {
                        tnC = new TreeNode("Changes: " + e.Changes);
                    }
                    TreeNode[] ts     = { tnC, tnD, tnRB, tnR, tnS };
                    TreeNode   tnDesc = new TreeNode(r.Description.Value);
                    tnECO = new TreeNode(r.Eco.Value, ts);
                    TreeNode[] tt = { tnECO, tnDesc, tnList, tnDate };
                    TreeNode   tn = new TreeNode(r.Revision.Value, tt);
                    this.tvRevisions.Nodes.Add(tn);
                }
                else if (r.Eco.Value.Contains("NA") || r.Eco.Value.Trim().Equals(string.Empty))
                {
                    tnECO = new TreeNode(r.Eco.Value);
                    TreeNode   tnDesc = new TreeNode(r.Description.Value);
                    TreeNode[] tt     = { tnECO, tnDesc, tnList, tnDate };

                    TreeNode tn = new TreeNode(r.Revision.Value, tt);
                    this.tvRevisions.Nodes.Add(tn);
                }
                else
                {
                    if ((e.Changes != null) && e.Changes.Contains("\n"))
                    {
                        List <TreeNode> nodes       = new List <TreeNode>();
                        string[]        changeNodes = e.Changes.Split('\n');
                        foreach (string s in changeNodes)
                        {
                            nodes.Add(new TreeNode(s));
                        }
                        tnC = new TreeNode("Changes ", nodes.ToArray());
                    }
                    else
                    {
                        tnC = new TreeNode("Changes: " + e.Changes);

                        TreeNode tnRB          = new TreeNode("Finished by: " + e.RequestedBy, 0, 0);
                        string[] affectedParts = e.Revision.Split(',', '&');
                        TreeNode tnT           = new TreeNode("");

                        List <TreeNode> nodes = new List <TreeNode>();
                        foreach (string item in affectedParts)
                        {
                            nodes.Add(new TreeNode(item.Trim()));
                        }
                        TreeNode tnR = new TreeNode("Affected Parts:", nodes.ToArray());

                        TreeNode   tnS = new TreeNode("Status: " + e.Status, 0, 0);
                        TreeNode[] ts  = { tnC, tnRB, tnR, tnS };
                        tnECO = new TreeNode(r.Eco.Value, ts);

                        TreeNode   tnDesc = new TreeNode(r.Description.Value);
                        TreeNode[] tt     = { tnECO, tnDesc, tnList, tnDate };

                        TreeNode tn = new TreeNode(r.Revision.Value, tt);
                        this.tvRevisions.Nodes.Add(tn);
                    }
                }
            }
        }