Exemplo n.º 1
0
        public ChooseITCAPClient(ITCapTool parentForm)
        {
            InitializeComponent();

            itcapForm = parentForm;
            ChooseClientComboBox.Items.AddRange(itcapForm.db.GetClientNames());
            this.Focus();
        }
Exemplo n.º 2
0
        public ChangeITCAPDefaults(ITCapTool parentForm)
        {
            InitializeComponent();

            itcapForm = parentForm;

            string[] domainList = ClientDataControl.db.GetDomainNamesAndDefault();
            List<string> capabilityList = new List<string>();
            List<string> questionList = new List<string>();
            string domainName;
            string capabilityName;
            string itcapQuestionName;
            foreach (string domain in domainList)
            {
                domainName = domain.Substring(0, domain.Length - 1);
                DataGridViewRow domRow = (DataGridViewRow)ITCAPQuestionDataGridView.Rows[0].Clone();
                domRow.Cells[0].Value = domainName;
                (domRow.Cells[1] as DataGridViewCheckBoxCell).Value = domain.Last() == 'Y';

                domRow.DefaultCellStyle.BackColor = Color.LightBlue;
                domRow.ReadOnly = true;
                ITCAPQuestionDataGridView.Rows.Add(domRow);
                capabilityList = ClientDataControl.db.GetCapabilityNamesAndDefault(domainName).ToList();
                foreach(string capability in capabilityList)
                {
                    capabilityName = capability.Substring(0, capability.Length - 1);
                    DataGridViewRow capRow = (DataGridViewRow)ITCAPQuestionDataGridView.Rows[0].Clone();
                    capRow.Cells[0].Value = capabilityName;
                    (capRow.Cells[1] as DataGridViewCheckBoxCell).Value = capability.Last() == 'Y';
                    capRow.DefaultCellStyle.BackColor = Color.LightSlateGray;
                    capRow.ReadOnly = true;
                    ITCAPQuestionDataGridView.Rows.Add(capRow);
                    questionList = ClientDataControl.db.GetITCAPQuestionNamesAndDefault(capabilityName, domainName).ToList();
                    foreach (string question in questionList)
                    {
                        itcapQuestionName = question.Substring(0, question.Length - 1);
                        DataGridViewRow itcqRow = (DataGridViewRow)ITCAPQuestionDataGridView.Rows[0].Clone();
                        itcqRow.Cells[0].Value = itcapQuestionName;
                        (itcqRow.Cells[1] as DataGridViewCheckBoxCell).Value = question.Last() == 'Y';
                        itcqRow.DefaultCellStyle.BackColor = Color.White;
                        itcqRow.Cells[0].ReadOnly = true;
                        itcqRow.Cells[1].ReadOnly = false;
                        ITCAPQuestionDataGridView.Rows.Add(itcqRow);
                    }
                }
            }

            ITCAPQuestionDataGridView.AllowUserToAddRows = false;
            ITCAPQuestionDataGridView.AllowUserToDeleteRows = false;
        }
Exemplo n.º 3
0
        public override void ChangedCapability(ITCapTool itcapForm)
        {
            itcapForm.questionList.Items.Clear();
            itcapForm.questionList.Text = "<Select ITCAPQuestion>";
            CAPABILITY capability;

            if (GetCapability(itcapForm.capabilitiesList.Text.Trim(), out capability))
            {
                itcapForm.questionList.Items.AddRange((from ent in capability.ITCAPQUESTION
                                                       select ent.NAME.TrimEnd()).ToArray());
            }
        }
Exemplo n.º 4
0
        public override void AddQuestionToITCAP(string itcqName, string capName, string domName, ITCapTool itcapForm, out int alreadyExists, out string owner)
        {
            alreadyExists = 0;
            owner = "";
            ITCAPQUESTION itcapQuestion;
            if (!GetITCAPQuestion(itcqName, out itcapQuestion))
            {
                itcapQuestion = new ITCAPQUESTION();
                itcapQuestion.NAME = itcqName;
                itcapQuestion.DEFAULT = "N";
                CAPABILITY capability;
                if (!GetCapability(capName, out capability))
                {
                    capability = new CAPABILITY();
                    capability.NAME = capName;
                    capability.DEFAULT = "N";
                    DOMAIN domain;
                    if (!GetDomain(domName, out domain))
                    {
                        domain = new DOMAIN();
                        domain.NAME = domName;
                        domain.DEFAULT = "N";
                        if (!AddDomain(domain))
                        {
                            MessageBox.Show("Failed to add Domain to Database", "Error");
                            return;
                        }
                    }

                    capability.DOMAIN = domain;
                    if (!AddCapability(capability))
                    {
                        MessageBox.Show("Failed to add Capability to Database", "Error");
                        return;
                    }
                }

                itcapQuestion.CAPABILITY = capability;
                if (!AddITCAPQuestion(itcapQuestion))
                {
                    MessageBox.Show("Failed to add ITCAPQuestion to Database", "Error");
                    return;
                }
            }

            Domain domForSearch = itcapForm.domains.Find(delegate(Domain dom)
                                            {
                                                return dom.Name == domName;
                                            });
            if (domForSearch != null)
            {
                alreadyExists = 1;
                owner = domName;
                Capability capForSearch = domForSearch.CapabilitiesOwned.Find(delegate(Capability cap)
                                                                              {
                                                                                  return cap.CapName == capName;
                                                                              });
                if (capForSearch != null)
                {
                    alreadyExists = 2;
                    owner = capName;
                    ITCapQuestion itcqForSearch = capForSearch.QuestionsOwned.Find(delegate(ITCapQuestion itcq)
                                                                                   {
                                                                                       return itcq.Name == itcqName;
                                                                                   });
                    if (itcqForSearch != null)
                    {
                        alreadyExists = 3;
                        owner = "";
                    }
                }
            }

            ITCAP itcap = new ITCAP();
            itcap.ITCAPQUESTION = itcapQuestion;
            if (!AddITCAP(itcap, ClientDataControl.Client.EntityObject))
            {
                MessageBox.Show("Failed to add ITCAPQuestion to ITCAP", "Error");
                return;
            }
            if (!SaveChanges())
            {
                MessageBox.Show("Failed to save changes to database", "Error");
                return;
            }
        }
Exemplo n.º 5
0
        public override bool RewriteITCAP(ITCapTool itcapForm)
        {
            CLIENT client = ClientDataControl.Client.EntityObject as CLIENT;
            List<ITCAP> itcapList = client.ITCAP.ToList();
            foreach (ITCAP itcap in itcapList)
            {
                dbo.DeleteObject(itcap);
            }

            List<CAPABILITYGAPINFO> capGapInfoList = client.CAPABILITYGAPINFO.ToList();
            foreach (CAPABILITYGAPINFO capGapInfo in capGapInfoList)
            {
                dbo.DeleteObject(capGapInfo);
            }

            SaveChanges();

            ITCAP itcapEnt;
            ITCAPQUESTION itcqEnt;
            foreach (Domain domain in itcapForm.domains)
            {
                foreach(Capability capability in domain.CapabilitiesOwned)
                {
                    foreach(ITCapQuestion itcapQuestion in capability.QuestionsOwned)
                    {
                        if (GetITCAPQuestion(itcapQuestion.Name, out itcqEnt))
                        {
                            itcapEnt = new ITCAP();
                            itcapEnt.ITCAPQUESTION = itcqEnt;
                            itcapEnt.ASIS = 0;
                            itcapEnt.TOBE = 0;
                            //itcapEnt.COMMENT = "";
                            if (!AddITCAP(itcapEnt, client))
                            {
                                MessageBox.Show("Failed to add ITCAPQuestion: " + itcapEnt.ITCAPQUESTION.NAME);
                            }
                        }
                    }
                }
            }

            if (SaveChanges())
            {
                return true;
            }

            else
            {
                MessageBox.Show("Failed to rewrite ITCAP", "Error");
                return false;
            }
        }
Exemplo n.º 6
0
        public override bool OpenITCAP(ITCapTool itcapForm)
        {
            CLIENT client = ClientDataControl.Client.EntityObject as CLIENT;
            List<ITCAP> itcapList = (from ent in client.ITCAP
                                     orderby ent.ITCAPQUESTION.ID
                                     select ent).ToList();

            ITCAPQUESTION itcqEnt;
            CAPABILITY capEnt;
            DOMAIN domEnt;

            string itcqName;
            string capName;
            string domName;

            foreach (ITCAP itcap in itcapList)
            {
                itcqEnt = itcap.ITCAPQUESTION;
                capEnt = itcqEnt.CAPABILITY;
                domEnt = capEnt.DOMAIN;

                itcqName = itcqEnt.NAME.TrimEnd();
                capName = capEnt.NAME.TrimEnd();
                domName = domEnt.NAME.TrimEnd();

                Domain domain;
                Capability capability;
                ITCapQuestion itcapQuestion;

                domain = itcapForm.domains.Find(delegate(Domain dom)
                                                {
                                                    return dom.Name == domName;
                                                });
                if (domain == null)
                {
                    domain = new Domain();
                    domain.Name = domName;
                    domain.IsDefault = domEnt.DEFAULT == "Y";
                    domain.Type = "domain";
                    domain.Visible = true;
                    domain.ID = domEnt.ID.TrimEnd();
                    //itcapForm.LoadCapabilities(dom);
                    itcapForm.domains.Add(domain);
                }

                capability = itcapForm.capabilities.Find(delegate(Capability cap)
                                                         {
                                                             return cap.CapName == capName;
                                                         });
                if (capability == null)
                {
                    capability = new Capability();
                    Capability.AllCapabilities.Add(capability);
                    capability.CapName = capName;
                    capability.IsDefault = capEnt.DEFAULT == "Y";
                    domain.CapabilitiesOwned.Add(capability);
                    domain.TotalChildren++;
                    capability.Type = "capability";
                    capability.ID = capEnt.ID.TrimEnd();
                    itcapForm.capabilities.Add(capability);
                    capability.Owner = domain;
                    //LoadQuestions(cap);
                }

                itcapQuestion = new ITCapQuestion();
                itcapQuestion.Name = itcqName;
                itcapQuestion.IsDefault = itcqEnt.DEFAULT == "Y";
                itcapQuestion.AsIsScore = itcap.ASIS.HasValue ? itcap.ASIS.Value : 0;
                itcapQuestion.ToBeScore = itcap.TOBE.HasValue ? itcap.TOBE.Value : 0;
                //itcapQuestion.AddComment(itcap.COMMENT);
                itcapQuestion.Type = "attribute";
                itcapQuestion.ID = itcqEnt.ID.TrimEnd();
                capability.Owner.TotalChildren++;
                capability.QuestionsOwned.Add(itcapQuestion);
                itcapQuestion.Owner = capability;
            }

            foreach (Domain domain in itcapForm.domains)
            {
                itcapForm.entities.Add(domain);
                foreach (Capability capability in domain.CapabilitiesOwned)
                {
                    itcapForm.entities.Add(capability);
                    foreach (ITCapQuestion itcapQuestion in capability.QuestionsOwned)
                    {
                        itcapForm.entities.Add(itcapQuestion);
                    }
                }
            }
            return true;
        }
Exemplo n.º 7
0
 public abstract void ChangedDomain(ITCapTool itcapForm);
Exemplo n.º 8
0
        public override bool RewriteITCAP(ITCapTool itcapForm)
        {
            XElement client = ClientDataControl.Client.EntityObject as XElement;
            client.Element("ITCAPS").RemoveAll();
            client.Element("CAPABILITYGAPINFOS").RemoveAll();

            changeLog.Add("CLEAR ITCAP " + client.Element("NAME").Value.Replace(' ', '~'));

            XElement itcapEnt = new XElement("ITCAP");
            XElement itcqEnt;
            foreach (Domain domain in itcapForm.domains)
            {
                foreach (Capability capability in domain.CapabilitiesOwned)
                {
                    foreach (ITCapQuestion itcapQuestion in capability.QuestionsOwned)
                    {
                        if (GetITCAPQuestion(itcapQuestion.Name, out itcqEnt))
                        {
                            itcapEnt = new XElement("ITCAP");
                            itcapEnt.Add(new XElement("ITCAPQUESTION", itcapQuestion.Name));
                            itcapEnt.Add(new XElement("CAPABILITY", capability.CapName));
                            itcapEnt.Add(new XElement("DOMAIN", domain.Name));
                            if (!AddITCAP(itcapEnt, client))
                            {
                                MessageBox.Show("Failed to add ITCAPQuestion: " + itcapEnt.Element("ITCAPQUESTION").Value, "Error");
                            }
                        }
                    }
                }
            }
            if (SaveChanges())
            {
                return true;
            }

            else
            {
                MessageBox.Show("Failed to rewrite ITCAP", "Error");
                return false;
            }
        }
Exemplo n.º 9
0
 // public abstract bool RemoveITCAP(object itcqObject, object clientObj);
 public abstract void AddQuestionToITCAP(string itcqName, string capName, string domName, ITCapTool itcapForm, out int alreadyExists, out string owner);
Exemplo n.º 10
0
 public abstract bool RewriteITCAP(ITCapTool itcapForm);
Exemplo n.º 11
0
 public abstract bool OpenITCAP(ITCapTool itcapForm);
Exemplo n.º 12
0
        public override void ChangedDomain(ITCapTool itcapForm)
        {
            itcapForm.capabilitiesList.Items.Clear();
            itcapForm.capabilitiesList.Text = "<Select Capability>";
            itcapForm.questionList.Items.Clear();
            itcapForm.questionList.Text = "";
            XElement domain;

            if (GetDomain(itcapForm.domainList.Text.Trim(), out domain))
            {
                itcapForm.capabilitiesList.Items.AddRange((from ent in domain.Element("CAPABILITIES").Elements("CAPABILITY")
                                                       select ent.Element("NAME").Value).ToArray());
            }
        }
Exemplo n.º 13
0
        public override void ChangedCapability(ITCapTool itcapForm)
        {
            itcapForm.questionList.Items.Clear();
            itcapForm.questionList.Text = "<Select ITCAPQuestion>";
            XElement capability;

            if (GetCapability(itcapForm.capabilitiesList.Text.Trim(), out capability))
            {
                itcapForm.questionList.Items.AddRange((from ent in capability.Element("ITCAPQUESTIONS").Elements("ITCAPQUESTION")
                                                       select ent.Element("NAME").Value).ToArray());
            }
        }
Exemplo n.º 14
0
        public override void AddQuestionToITCAP(string itcqName, string capName, string domName, ITCapTool itcapForm, out int alreadyExists, out string owner)
        {
            alreadyExists = 0;
            owner = "";
            XElement domainXML;
            if (!GetDomain(domName, out domainXML))
            {
                domainXML = new XElement("DOMAIN");
                domainXML.Add(new XElement("NAME", domName));
                domainXML.Add(new XElement("DEFAULT", 'N'));
                if (!AddDomain(domainXML))
                {
                    MessageBox.Show("Failed to add Domain to File", "Error");
                    return;
                }
            }

            XElement capabilityXML;
            if (!GetCapability(capName, out capabilityXML))
            {
                capabilityXML = new XElement("CAPABILITY");
                capabilityXML.Add(new XElement("NAME", capName));
                if (!AddCapability(capabilityXML, domainXML))
                {
                    MessageBox.Show("Failed to add Capability to File", "Error");
                    return;
                }
            }

            XElement itcapQuestionXML;
            if (!GetITCAPQuestion(itcqName, out itcapQuestionXML))
            {
                itcapQuestionXML = new XElement("ITCAPQUESTION");
                itcapQuestionXML.Add(new XElement("NAME", itcqName));
                if (!AddITCAPQuestion(itcapQuestionXML, capabilityXML, domainXML))
                {
                    MessageBox.Show("Failed to add ITCAPQuestion to File", "Error");
                    return;
                }
            }

            Domain domForSearch = itcapForm.domains.Find(delegate(Domain dom)
                                                         {
                                                             return dom.Name == domName;
                                                         });
            if (domForSearch != null)
            {
                alreadyExists = 1;
                owner = domName;
                Capability capForSearch = domForSearch.CapabilitiesOwned.Find(delegate(Capability cap)
                                                                              {
                                                                                  return cap.CapName == capName;
                                                                              });
                if (capForSearch != null)
                {
                    alreadyExists = 2;
                    owner = capName;
                    ITCapQuestion itcqForSearch = capForSearch.QuestionsOwned.Find(delegate(ITCapQuestion itcq)
                                                                                   {
                                                                                       return itcq.Name == itcqName;
                                                                                   });
                    if (itcqForSearch != null)
                    {
                        alreadyExists = 3;
                        owner = "";
                    }
                }
            }

            XElement itcap = new XElement("ITCAP");
            itcap.Add(new XElement("ITCAPQUESTION", itcapQuestionXML.Element("NAME").Value));
            itcap.Add(new XElement("CAPABILITY", capabilityXML.Element("NAME").Value));
            itcap.Add(new XElement("DOMAIN", domainXML.Element("NAME").Value));

            if (!AddITCAP(itcap, ClientDataControl.Client.EntityObject))
            {
                MessageBox.Show("Failed to add ITCAPQuestion to ITCAP", "Error");
                return;
            }

            if (!SaveChanges())
            {
                MessageBox.Show("Failed to save changes to File", "Error");
                return;
            }
        }
Exemplo n.º 15
0
 public override void ChangedDomain(ITCapTool itcapForm)
 {
     itcapForm.capabilitiesList.Items.Clear();
     itcapForm.capabilitiesList.Text = "<Select Capability>";
     itcapForm.questionList.Items.Clear();
     itcapForm.questionList.Text = "";
     DOMAIN domain;
     if (GetDomain(itcapForm.domainList.Text.Trim(), out domain))
     {
         itcapForm.capabilitiesList.Items.AddRange((from ent in domain.CAPABILITY
                                                select ent.NAME.TrimEnd()).ToArray());
     }
 }
Exemplo n.º 16
0
 public abstract void ChangedCapability(ITCapTool itcapForm);
Exemplo n.º 17
0
        public override bool OpenITCAP(ITCapTool itcapForm)
        {
            if (ClientDataControl.Client.EntityObject == null)
            {
                MessageBox.Show("Must choose client before opening ITCAP", "Error");
                return false;
            }

            List<XElement> itcapList = (ClientDataControl.Client.EntityObject as XElement).Element("ITCAPS").Elements("ITCAP").ToList();

            XElement itcqEnt;
            XElement capEnt;
            XElement domEnt;

            string itcqName;
            string capName;
            string domName;

            foreach (XElement itcap in itcapList)
            {
                itcqName = itcap.Element("ITCAPQUESTION").Value;
                capName = itcap.Element("CAPABILITY").Value;
                domName = itcap.Element("DOMAIN").Value;

                Domain domain;
                Capability capability;
                ITCapQuestion itcapQuestion;

                domain = itcapForm.domains.Find(delegate(Domain dom)
                {
                    return dom.Name == domName;
                });
                if (domain == null)
                {
                    domain = new Domain();
                    domain.Name = domName;
                    if (!GetDomain(domName, out domEnt))
                    {
                        MessageBox.Show("Error: Could not find domain related to this ITCAP Entry", "Error");
                        break;
                    }
                    domain.IsDefault = domEnt.Element("DEFAULT").Value == "Y";
                    domain.Type = "domain";
                    domain.Visible = true;
                    itcapForm.domains.Add(domain);
                    domain.ID = domEnt.Element("ID").Value;
                }

                capability = itcapForm.capabilities.Find(delegate(Capability cap)
                {
                    return cap.CapName == capName;
                });
                if (capability == null)
                {
                    capability = new Capability();
                    capability.CapName = capName;
                    if(!GetCapability(capName, out capEnt))
                    {
                        MessageBox.Show("Error: Could not find capability related to this ITCAP Entry", "Error");
                        break;
                    }
                    capability.IsDefault = capEnt.Element("DEFAULT").Value == "Y";
                    domain.CapabilitiesOwned.Add(capability);
                    domain.TotalChildren++;
                    capability.Type = "capability";
                    itcapForm.capabilities.Add(capability);
                    capability.Owner = domain;
                    capability.ID = capEnt.Element("ID").Value;
                    //LoadQuestions(cap);
                }

                itcapQuestion = new ITCapQuestion();
                itcapQuestion.Name = itcqName;
                if (!GetITCAPQuestion(itcqName, out itcqEnt))
                {
                    MessageBox.Show("Error: Could not find question related to this ITCAP Entry", "Error");
                    break;
                }
                itcapQuestion.IsDefault = itcqEnt.Element("DEFAULT").Value == "Y";
                itcapQuestion.AsIsScore = Convert.ToSingle(itcap.Element("ASIS").Value);
                itcapQuestion.ToBeScore = Convert.ToSingle(itcap.Element("TOBE").Value);
                capability.Owner.TotalChildren++;
                itcapQuestion.Type = "attribute";
                capability.Owner.TotalChildren++;
                capability.QuestionsOwned.Add(itcapQuestion);
                itcapQuestion.Owner = capability;
                itcapQuestion.ID = itcqEnt.Element("ID").Value;
            }

            foreach (Domain domain in itcapForm.domains)
            {
                itcapForm.entities.Add(domain);
                foreach (Capability capability in domain.CapabilitiesOwned)
                {
                    itcapForm.entities.Add(capability);
                    foreach (ITCapQuestion itcapQuestion in capability.QuestionsOwned)
                    {
                        itcapForm.entities.Add(itcapQuestion);
                    }
                }
            }
            return true;
        }