Esempio n. 1
0
        private void Lbox2_SelectedIndexChanged(object sender, EventArgs e)
        {
            string tt = lbox2.Items[lbox2.SelectedIndex].ToString();
            var    r  = c.DMClients.OrderBy(t => t.Name).AsEnumerable().Where(t => t.Name.Equals(tt)).FirstOrDefault();

            dmc       = new DMClient(r.id, c);
            dmc.token = BbQuery.getToken(dmc.origUrl);
            // authUrl_2.Replace("auth_2", "auth_sha");
            var stem = dmc.origUrl.Substring(0, dmc.origUrl.LastIndexOf('/'));

            authUrl_sha = stem + "/auth_sha.jsp";
            dbtype      = "oracle";
            db          = DMClient.getSqldt("SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'course_main' and COLUMN_NAME='pk1'", dmc);
            string dbt = db.Rows[0][0].ToString();

            /*pgsql
             *  oracle
             *  mssql
             */
            if (dbt.Equals("bigint"))
            {
                dbtype = "pgsql";
            }
            else if (dbt.Equals("int"))
            {
                dbtype = "mssql";
            }
        }
Esempio n. 2
0
        private DataSet getSurveData(DMClient dmc, DateTime fromDate, DateTime toDate)
        {
            DataSet       retValue = new DataSet();
            DataTable     dt       = new DataTable();
            StringBuilder sb       = new StringBuilder();

            sb.Append("SELECT distinct sv.pk1 as gmpk1, sv.name as rtitle ");
            // ,ques.pk1 as qpk1 , ques.question_type
            sb.Append(", c.pk1 as cpk1  , c.course_name as CourseName , c.course_id as CourseID , (select count(*) from deployment_response dr where dr.deployment_pk1=d.pk1 and dr.crsmain_pk1=c.pk1) as sent ");
            sb.Append(", (select count(*) from deployment_response dr where dr.deployment_pk1=d.pk1 and dr.status='RE' and dr.crsmain_pk1=c.pk1) as scored ");
            sb.Append("--@S,CONVERT(char(10), d.start_date, 126) as gmdate\n ");
            sb.Append(" --@O,to_char( d.start_date, 'yyyy-mm-dd') as gmdate\n ");
            sb.Append("FROM clp_sv_survey sv inner JOIN deployment d ON sv.instrument_key = d.collection_key JOIN deployment_response resp on d.pk1 = resp.deployment_pk1 JOIN clp_sv_question ques ON  ques.clp_sv_survey_pk1 = sv.pk1 join course_main c on c.pk1 = resp.crsmain_pk1 where (select count(*) from deployment_response where deployment_pk1=d.pk1 and status='RE') >= 0 ");
            sb.Append("and ( resp.received_date >= @from_date and resp.received_date <= @to_date) ");
            sb.Append(" order by gmpk1,c.pk1");
            string sql = sb.ToString();

            sql = sql.Replace("@from_date", getSqlDate(fromDate));
            sql = sql.Replace("@to_date", getSqlDate(toDate));
            if (dbtype.Equals("oracle") || dbtype.Equals("pgsql"))
            {
                sql = sql.Replace("--@O", "");
            }
            else
            {
                sql = sql.Replace("--@S", "");
            }
            dt           = DMClient.getSqldt(sql, dmc);
            dt.TableName = "Surveys";
            DataTable db = dt.Copy();

            retValue.Tables.Add(db);
            return(retValue);
        }
Esempio n. 3
0
        private string getUser(string username)
        {
            Debug.WriteLine("AT getUser check with " + username);
            string    retvalue = "";
            string    sql      = "select u.passwd from users u where u.user_id = '" + username + "'";
            DataTable user     = DMClient.getSqldt(sql, dmc);

            if (user != null && user.Rows.Count > 0 && !user.TableName.Equals("error"))
            {
                retvalue = user.Rows[0]["passwd"].ToString();
            }
            Debug.WriteLine("AT getUser check with password " + retvalue);
            return(retvalue); // Bb stored password
        }
Esempio n. 4
0
        //  _______________________ Make Access _______________________________


        public static DataSet getDataByDocSetPk1(int svpk1, DMClient dmc)
        {
            DataSet retValue = new DataSet();

            /*
             * clp_sv_survey
             * clp_sv_survey_deployment
             * deployment
             * deployment_response
             * clp_sv_answer_choice
             * clp_sv_question
             * clp_sv_question_response
             * clp_sv_question_sog
             * clp_sv_subquestion
             *
             */
            /*
             * clp_sv_survey
             * pk1
             * name
             * description
             * header_body
             * dtcreated
             * dtmodified
             */
            string    sql = "select pk1,name, description,header_body,dtcreated, dtmodified from clp_sv_survey  where pk1 = " + svpk1.ToString();
            DataTable dt  = DMClient.getSqldt(sql, dmc);

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                dt.Rows[i]["header_body"] = StripTags(dt.Rows[i]["header_body"].ToString());
            }
            DataTable clp_sv_survey = dt.Copy();

            clp_sv_survey.TableName = "clp_sv_survey";
            retValue.Tables.Add(clp_sv_survey);

            var survey_pk1 = clp_sv_survey.Select().ToList().Select(t => t.Field <string>("pk1")).ToArray <string>().First();

            /*
             * clp_sv_survey_deployment
             * pk1
             * clp_sv_survey_pk1
             * deployment_pk1
             */
            sql = "select pk1,clp_sv_survey_pk1,deployment_pk1  from  clp_sv_survey_deployment  where clp_sv_survey_pk1 = " + survey_pk1.ToString();
            dt  = DMClient.getSqldt(sql, dmc);
            DataTable clp_sv_survey_deployment = dt.Copy();

            clp_sv_survey_deployment.TableName = "clp_sv_survey_deployment";
            retValue.Tables.Add(clp_sv_survey_deployment);

            string[] deployment_pk1 = clp_sv_survey_deployment.Select().ToList().Select(t => t.Field <string>("deployment_pk1")).ToArray <string>();
            string   deps           = String.Join(",", deployment_pk1);

            /*
             * deployment
             * pk1
             * name
             * description
             * status
             * start_date
             * end_date
             * scheduled_start_date
             * scheduled_end_date
             * is_anonymous
             * dtmodified
             */

            sql = "select pk1,name, description, status, start_date, end_date, scheduled_start_date, scheduled_end_date,is_anonymous, dtmodified  from  deployment  where pk1 in (" + deps + ")";
            dt  = DMClient.getSqldt(sql, dmc);
            DataTable deployment = dt.Copy();

            deployment.TableName = "deployment";
            retValue.Tables.Add(deployment);

            string[] pk1s  = deployment.Select().ToList().Select(t => t.Field <string>("pk1")).ToArray <string>();
            string   dpk1s = String.Join(",", pk1s);



            /*
             * deployment_response
             * pk1
             * deployment_pk1
             * email
             * status
             * received_date
             * user_pk1
             * crsmain_pk1
             * crsmain_batch_uid
             */
            /*select dr.pk1, dr.deployment_pk1, dr.email, dr.status, received_date, dr.user_pk1, dr.crsmain_pk1,c.course_name,c.course_id
             * ,dr.crsmain_batch_uid ,u.lastname,u.firstname
             * from  deployment_response  dr
             * join course_main c on c.pk1 =dr.crsmain_pk1
             * join course_users cu on cu.crsmain_pk1 = c.pk1  join users u on u.pk1 = cu.users_pk1    where cu.role ='P' and  dr.deployment_pk1 in (544)*/
            sql = "select dr.pk1, dr.deployment_pk1, dr.email, dr.status, received_date, dr.user_pk1 " +
                  ", dr.crsmain_pk1,c.course_name,c.course_id  " +
                  " ,dr.crsmain_batch_uid ,u.lastname,u.firstname " +
                  ", (select count(*) from deployment_response dr1 where dr1.deployment_pk1 = dr.deployment_pk1 and dr1.crsmain_pk1 = c.pk1) + (select count(*)  from clp_deploy_resp_unused  du where du.deployment_pk1 = dr.deployment_pk1 and du.crsmain_pk1 = c.pk1) as sent " +
                  ", (select count(*) from deployment_response dr1 where dr1.deployment_pk1 = dr.deployment_pk1 and dr1.status = 'RE' and dr1.crsmain_pk1 = c.pk1) as scored  " +
                  "from  deployment_response dr " +
                  " join course_main c on c.pk1 = dr.crsmain_pk1  " +
                  "join course_users cu on cu.crsmain_pk1 = c.pk1 " +
                  " join users u on u.pk1 = cu.users_pk1   " +
                  " where cu.role ='P' and  dr.deployment_pk1 in (" + dpk1s + ")";
            dt = DMClient.getSqldt(sql, dmc);
            DataTable deployment_response = dt.Copy();

            deployment_response.TableName = "deployment_response";
            retValue.Tables.Add(deployment_response);

            List <string> thedrpk1s = deployment_response.Select().ToList().Select(t => t.Field <string>("pk1")).ToList <string>();

            sql = "select pk1, clp_sv_answer_choice_pk1, deployment_response_pk1, answer_text from  clp_sv_question_response  where  deployment_response_pk1 in (@drpk1s)";

            int       block = 50;
            DataTable clp_sv_question_response = new DataTable();

            clp_sv_question_response.TableName = "clp_sv_question_response";
            while (thedrpk1s.Count > 0)
            {
                block = (block > thedrpk1s.Count) ? thedrpk1s.Count : block;
                string drs  = String.Join(",", thedrpk1s.Take <string>(block).ToArray <string>());
                var    msql = sql;
                msql = msql.Replace("@drpk1s", drs);
                dt   = DMClient.getSqldt(msql, dmc);
                DataTable tmp = dt.Copy();
                clp_sv_question_response.Merge(tmp);
                thedrpk1s.RemoveRange(0, block);
            }
            retValue.Tables.Add(clp_sv_question_response);


            /* clp_sv_question_response
             *         pk1
             *         clp_sv_answer_choice_pk1
             *          deployment_response_pk1
             *          answer_text
             */

            /* clp_sv_question
             * pk1
             * clp_sv_survey_pk1
             * qtext_body
             * qtext_type
             * display_order
             * question_type
             * required_ind
             * multi_line_ind*/

            sql = " select pk1, clp_sv_survey_pk1, qtext_body, qtext_type, display_order,  question_type, required_ind, multi_line_ind from clp_sv_question  where  clp_sv_survey_pk1 = " + survey_pk1;
            dt  = DMClient.getSqldt(sql, dmc);
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                dt.Rows[i]["qtext_body"] = StripTags(dt.Rows[i]["qtext_body"].ToString());
            }
            DataTable clp_sv_question = dt.Copy();

            clp_sv_question.TableName = "clp_sv_question";
            retValue.Tables.Add(clp_sv_question);

            // var clp_sv_question_pk1 = clp_sv_question.Select().ToList().Select(t => t.Field<string>("pk1")).ToArray<string>().First();
            string[] theqdpk1s = clp_sv_question.Select().ToList().Select(t => t.Field <string>("pk1")).ToArray <string>();
            string   qdpk1s    = String.Join(",", theqdpk1s);

            /*
             * clp_sv_subquestion
             * pk1
             * clp_sv_question_pk1
             * display_order
             * text
             * label_type
             * select_multiple_ind
             * family_uid
             */
            sql = "select pk1,clp_sv_question_pk1, display_order, text, label_type, select_multiple_ind, family_uid from  clp_sv_subquestion  where  clp_sv_question_pk1 in (" + qdpk1s + ")";
            dt  = DMClient.getSqldt(sql, dmc);
            DataTable clp_sv_subquestion = dt.Copy();

            clp_sv_subquestion.TableName = "clp_sv_subquestion";
            retValue.Tables.Add(clp_sv_subquestion);


            string[] subs     = clp_sv_subquestion.Select().ToList().Select(t => t.Field <string>("pk1")).ToArray <string>();
            string   subqpk1s = String.Join(",", subs);

            /*
             *
             * clp_sv_answer_choice
             * pk1
             * clp_sv_subquestion
             * display_order
             * name
             * points
             * open_ended_ind
             * open_ended_text
             * not_applicable_ind
             */

            sql = "select pk1,  clp_sv_subquestion_pk1, display_order, name, points,  open_ended_ind,  open_ended_text, not_applicable_ind from  clp_sv_answer_choice  where  clp_sv_subquestion_pk1 in (" + subqpk1s + ")";
            dt  = DMClient.getSqldt(sql, dmc);
            DataTable clp_sv_answer_choice = dt.Copy();

            clp_sv_answer_choice.TableName = "clp_sv_answer_choice";
            retValue.Tables.Add(clp_sv_answer_choice);



            /*
             * clp_sv_question_sog    pk1, clp_sv_question_pk1,clp_sog_pk1
             */

            sql = "select  pk1, clp_sv_question_pk1, clp_sog_pk1  from  clp_sv_question_sog  where  clp_sv_question_pk1 in  (" + qdpk1s + ")";
            dt  = DMClient.getSqldt(sql, dmc);
            DataTable clp_sv_question_sog = dt.Copy();

            clp_sv_question_sog.TableName = "clp_sv_question_sog";
            retValue.Tables.Add(clp_sv_question_sog);


            /*select cu.deployment_pk1 as deploy_pk1,cu.crsmain_pk1,cu.crsmain_batch_uid,cp.user_pk1,cp.given_name,cp.family_name,cp.email,cp.gender,cp.birthdate
             * from clp_deploy_resp_unused cu
             * join clp_person cp on cp.pk1 = cu.clp_person_pk1
             * where cu.deployment_pk1 = 544 -- deployment_pk1*/

            sql = "select cu.deployment_pk1 as deploy_pk1,cu.crsmain_pk1 as cpk1,cu.crsmain_batch_uid as crs_batch_uid,cp.user_pk1,cp.given_name as firstname " +
                  ",cp.family_name as lastname,cp.email,cp.gender,cp.birthdate  " +
                  " from clp_deploy_resp_unused cu " +
                  " join clp_person cp on cp.pk1 = cu.clp_person_pk1 " +
                  "where  cu.deployment_pk1 in  (" + dpk1s + ")";
            dt = DMClient.getSqldt(sql, dmc);
            DataTable clp_deploy_resp_unused = dt.Copy();

            clp_deploy_resp_unused.TableName = "clp_deploy_resp_unused";
            retValue.Tables.Add(clp_deploy_resp_unused);



            return(retValue);
        }