public void DisplayCompetencyChecklist(string studentID, string qualID)
        {
            RequiredCompetencies.Clear();

            // Creates the connection
            MySqlConnection conn = new MySqlConnection(App.connectionString);

            StringBuilder allCompSb = new StringBuilder();

            allCompSb.Append("SELECT q.QualCode, q.NationalQualCode, q.TafeQualCode, q.QualName, q.ProgramInformationDocument, c.TafeCompCode, c.NationalCompCode, c.CompetencyName, cq.CompTypeCode");
            allCompSb.Append(" FROM competency AS c INNER JOIN competency_qualification as cq");
            allCompSb.Append(" ON c.NationalCompCode = cq.NationalCompCode");
            allCompSb.Append(" INNER JOIN qualification AS q");
            allCompSb.Append(" ON q.QualCode = cq.QualCode");
            allCompSb.Append(" WHERE q.QualCode = '").Append(qualID).Append("'; ");

            // Creates the SQL command
            MySqlCommand command = new MySqlCommand(allCompSb.ToString(), conn);

            MySqlDataReader dr;           // Creates a reader to read the data

            conn.Open();                  // Open the connection

            dr = command.ExecuteReader(); // Execute the command and attach to the reader

            int totalUnits     = 0;
            int completedUnits = 0;
            int ongoingUnits   = 0;
            int futureUnits    = 0;

            // While there are rows in the read
            while (dr.Read())
            {
                totalUnits++;

                string     tafeCompCode     = dr.GetString("TafeCompCode");
                string     nationalCompCode = dr.GetString("NationalCompCode");
                string     competencyName   = dr.GetString("CompetencyName");
                string     competencyType   = dr.GetString("CompTypeCode");
                Competency competency       = new Competency(tafeCompCode, nationalCompCode, competencyName, competencyType);

                if ((competency.getCompetencyStatus(StudentID, competency)) == "Ongoing")
                {
                    ongoingUnits++;
                }
                else if ((competency.getCompetencyStatus(StudentID, competency)) == "Completed")
                {
                    completedUnits++;
                    competency.Done = true;
                }
                else
                {
                    futureUnits++;
                }

                RequiredCompetencies.Add(competency);

                // Calculates the Percentage
                double percent = 0;
                percent = ((double)completedUnits / (double)totalUnits);
                progressPercent.Value   = percent * 100;
                txtProgressPercent.Text = percent.ToString("P0");

                // Populates Number of units
                totalunitsTxtBlock.Text   = "Total Units: " + totalUnits.ToString();
                completedUnitsTxtBlk.Text = "Completed: " + completedUnits.ToString();
                ongoingUnisTxtblk.Text    = "Ongoing: " + ongoingUnits.ToString();
                futureUnitsTxtblk.Text    = "Future: " + futureUnits.ToString();

                // Sets Link to Program Information PDF Document
                Uri uri = new Uri(dr.GetString("ProgramInformationDocument"));
                linkToMoreInfoHyperlink.NavigateUri = uri;
            }

            // Close the connection
            conn.Close();
        }