Beispiel #1
0
        //Процедура выгрузки
        public void UploadData(String strSQL, Boolean moveToArh)
        {
            String stringSQL  = null;
            String stringSQL1 = null;
            String stringSQL2 = null;

            //spec
            stringSQL = "SELECT * FROM spec WHERE id IN (" + strSQL + ")";
            DataTable dt = sqlConSrc.GetDataTable("spec", stringSQL);

            stringSQL1 = "SELECT DISTINCT edu_id FROM spec WHERE id IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM spr_edu WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("spr_edu", stringSQL2);

            stringSQL1 = "SELECT DISTINCT nation_id FROM spec WHERE id IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM spr_nation WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("spr_nation", stringSQL2);

            stringSQL1 = "SELECT DISTINCT mstatus_id FROM spec WHERE id IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM spr_mstatus WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("spr_mstatus", stringSQL2);

            stringSQL1 = "SELECT DISTINCT mstatus_id FROM spec WHERE id IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM spr_mstatus WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("spr_mstatus", stringSQL2);

            stringSQL1 = "SELECT DISTINCT profession_id FROM spec WHERE id IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM spr_profession WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("spr_profession", stringSQL2);

            //party_number
            //stringSQL1 = "SELECT DISTINCT party_id FROM spec WHERE id IN (" + strSQL + ")";
            //stringSQL2 = "SELECT * FROM spr_party_number WHERE id IN (" + stringSQL1 + ")";
            stringSQL2 = "SELECT * FROM spr_party_number";
            sqlConSrc.GetDataTable("spr_party_number", stringSQL2);

            //relations
            stringSQL = "SELECT * FROM relations WHERE id_spec IN (" + strSQL + ")";
            sqlConSrc.GetDataTable("relations", stringSQL);

            stringSQL1 = "SELECT DISTINCT degree_id FROM relations WHERE id_spec IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM spr_degree WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("spr_degree", stringSQL2);

            //bonus
            stringSQL = "SELECT * FROM bonus WHERE id_spec IN (" + strSQL + ")";
            sqlConSrc.GetDataTable("bonus", stringSQL);

            stringSQL1 = "SELECT DISTINCT bonus_type_id FROM bonus WHERE id_spec IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM spr_bonus_type WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("spr_bonus_type", stringSQL2);

            stringSQL1 = "SELECT DISTINCT performer_id FROM bonus WHERE id_spec IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM spr_performers WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("spr_performers", stringSQL2);

            //penalty
            stringSQL = "SELECT * FROM penalty WHERE id_spec IN (" + strSQL + ")";
            sqlConSrc.GetDataTable("penalty", stringSQL);

            stringSQL1 = "SELECT DISTINCT penalty_type_id FROM penalty WHERE id_spec IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM spr_penalty_type WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("spr_penalty_type", stringSQL2);

            //party
            stringSQL = "SELECT * FROM party WHERE id_spec IN (" + strSQL + ")";
            sqlConSrc.GetDataTable("party", stringSQL);

            /*
             * stringSQL1 = "SELECT DISTINCT party_number_id FROM party WHERE id IN (" + strSQL + ")";
             * stringSQL2 = "SELECT * FROM spr_party_number WHERE id IN (" + stringSQL1 + ")";
             * sqlConSrc.GetDataTable("spr_party_number2", stringSQL2);
             */
            //spec_psycho
            stringSQL = "SELECT * FROM spec_psycho WHERE id_spec IN (" + strSQL + ")";
            sqlConSrc.GetDataTable("spec_psycho", stringSQL);

            //psycho_char
            stringSQL = "SELECT * FROM psycho_char WHERE id_spec IN (" + strSQL + ")";
            sqlConSrc.GetDataTable("psycho_char", stringSQL);

            //prev_conv
            stringSQL = "SELECT * FROM prev_conv WHERE id_spec IN (" + strSQL + ")";
            sqlConSrc.GetDataTable("prev_conv", stringSQL);

            stringSQL1 = "SELECT DISTINCT release_reason_id FROM prev_conv WHERE id_spec IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM spr_release_reason WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("spr_release_reason", stringSQL2);

            //profilact_ychet
            stringSQL = "SELECT * FROM profilact_ychet WHERE id_spec IN (" + strSQL + ")";
            sqlConSrc.GetDataTable("profilact_ychet", stringSQL);

            stringSQL1 = "SELECT DISTINCT id_profilact_ychet FROM profilact_ychet WHERE id_spec IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM spr_profilact_ychet WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("spr_profilact_ychet", stringSQL2);

            //ivr
            stringSQL = "SELECT * FROM ivr WHERE id_spec IN (" + strSQL + ")";
            sqlConSrc.GetDataTable("ivr", stringSQL);

            stringSQL1 = "SELECT DISTINCT employee_id FROM ivr WHERE id_spec IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM employee WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("employee", stringSQL2);

            stringSQL1 = "SELECT DISTINCT work_type FROM ivr WHERE id_spec IN (" + strSQL + ")";
            stringSQL2 = "SELECT * FROM spr_work_type WHERE id IN (" + stringSQL1 + ")";
            sqlConSrc.GetDataTable("spr_work_type", stringSQL2);

            //resolution
            stringSQL = "SELECT * FROM resolution WHERE id_spec IN (" + strSQL + ")";
            sqlConSrc.GetDataTable("resolution", stringSQL);

            //system
            stringSQL = "SELECT * FROM system";
            sqlConSrc.GetDataTable("system", stringSQL);

            //results
            stringSQL = "SELECT * FROM results WHERE id_spec IN (" + strSQL + ")";
            sqlConSrc.GetDataTable("results", stringSQL);

            DirectoryInfo dir = new DirectoryInfo(tempDir);

            dir.Create();


            CopyFoto(GetDBDirPath(), tempDir, dt);

            DataSet ds = sqlConSrc.GetDataSet();

            ds.WriteXml(tempDir + @"\" + dataFile, XmlWriteMode.WriteSchema);

            Boolean svResult = SaveFile(tempDir);

            if (!svResult)
            {
                return;
            }

            if (moveToArh)
            {
                sqlConSrc.DoQuery("UPDATE spec SET is_present = false WHERE id IN (" + strSQL + ")");
            }
        }