Beispiel #1
0
        public override global::System.Data.DataSet Clone()
        {
            testDataSet cln = ((testDataSet)(base.Clone()));

            cln.InitVars();
            cln.SchemaSerializationMode = this.SchemaSerializationMode;
            return(cln);
        }
Beispiel #2
0
        public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs)
        {
            testDataSet ds = new testDataSet();

            global::System.Xml.Schema.XmlSchemaComplexType type     = new global::System.Xml.Schema.XmlSchemaComplexType();
            global::System.Xml.Schema.XmlSchemaSequence    sequence = new global::System.Xml.Schema.XmlSchemaSequence();
            global::System.Xml.Schema.XmlSchemaAny         any      = new global::System.Xml.Schema.XmlSchemaAny();
            any.Namespace = ds.Namespace;
            sequence.Items.Add(any);
            type.Particle = sequence;
            global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
            if (xs.Contains(dsSchema.TargetNamespace))
            {
                global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
                global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
                try {
                    global::System.Xml.Schema.XmlSchema schema = null;
                    dsSchema.Write(s1);
                    for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();)
                    {
                        schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
                        s2.SetLength(0);
                        schema.Write(s2);
                        if ((s1.Length == s2.Length))
                        {
                            s1.Position = 0;
                            s2.Position = 0;
                            for (; ((s1.Position != s1.Length) &&
                                    (s1.ReadByte() == s2.ReadByte()));)
                            {
                                ;
                            }
                            if ((s1.Position == s1.Length))
                            {
                                return(type);
                            }
                        }
                    }
                }
                finally {
                    if ((s1 != null))
                    {
                        s1.Close();
                    }
                    if ((s2 != null))
                    {
                        s2.Close();
                    }
                }
            }
            xs.Add(dsSchema);
            return(type);
        }
Beispiel #3
0
        private void Form3_Load(object sender, EventArgs e)
        {
            string        sConn = "Data Source = DESKTOP-793AVME; Initial Catalog = test; Integrated Security = True";
            SqlConnection cnn   = new SqlConnection(sConn);

            cnn.Open();
            String         request = string.Format("SELECT * FROM view_Count1");
            SqlDataAdapter da      = new SqlDataAdapter(request, cnn);
            testDataSet    ds      = new testDataSet();

            da.Fill(ds, "view_Count1");

            ReportDocument rDoc = new ReportDocument();

            rDoc.Load("CrystalReport5.rpt");
            rDoc.SetDataSource(ds);
            crystalReportViewer1.ReportSource = rDoc;
        }
Beispiel #4
0
        private void Form2_Load(object sender, EventArgs e)
        {
            string        sConn = "Data Source = DESKTOP-793AVME; Initial Catalog = test; Integrated Security = True";
            SqlConnection cnn   = new SqlConnection(sConn);

            cnn.Open();


            String request = string.Format("SELECT * FROM  Заявка_от_клиента WHERE ID_сотрудника='{0}' AND (Дата_заявки BETWEEN '{1}' AND '{2}')", Autorisation.id, data1, data2);
            //String request = $"SELECT *  from Договор_с_клиентом WHERE Дата_договора_с_клиентом BETWEEN {data1} AND {data2}";
            SqlDataAdapter da = new SqlDataAdapter(request, cnn);
            testDataSet    ds = new testDataSet();

            da.Fill(ds, "Заявка_от_клиента");

            ReportDocument rDoc = new ReportDocument();

            rDoc.Load("CrystalReport3.rpt");
            rDoc.SetDataSource(ds);
            crystalReportViewer1.ReportSource = rDoc;
        }
Beispiel #5
0
            public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs)
            {
                global::System.Xml.Schema.XmlSchemaComplexType type     = new global::System.Xml.Schema.XmlSchemaComplexType();
                global::System.Xml.Schema.XmlSchemaSequence    sequence = new global::System.Xml.Schema.XmlSchemaSequence();
                testDataSet ds = new testDataSet();

                global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny();
                any1.Namespace       = "http://www.w3.org/2001/XMLSchema";
                any1.MinOccurs       = new decimal(0);
                any1.MaxOccurs       = decimal.MaxValue;
                any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
                sequence.Items.Add(any1);
                global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny();
                any2.Namespace       = "urn:schemas-microsoft-com:xml-diffgram-v1";
                any2.MinOccurs       = new decimal(1);
                any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax;
                sequence.Items.Add(any2);
                global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute();
                attribute1.Name       = "namespace";
                attribute1.FixedValue = ds.Namespace;
                type.Attributes.Add(attribute1);
                global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute();
                attribute2.Name       = "tableTypeName";
                attribute2.FixedValue = "testDataTable1DataTable";
                type.Attributes.Add(attribute2);
                type.Particle = sequence;
                global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
                if (xs.Contains(dsSchema.TargetNamespace))
                {
                    global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
                    global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
                    try {
                        global::System.Xml.Schema.XmlSchema schema = null;
                        dsSchema.Write(s1);
                        for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();)
                        {
                            schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
                            s2.SetLength(0);
                            schema.Write(s2);
                            if ((s1.Length == s2.Length))
                            {
                                s1.Position = 0;
                                s2.Position = 0;
                                for (; ((s1.Position != s1.Length) &&
                                        (s1.ReadByte() == s2.ReadByte()));)
                                {
                                    ;
                                }
                                if ((s1.Position == s1.Length))
                                {
                                    return(type);
                                }
                            }
                        }
                    }
                    finally {
                        if ((s1 != null))
                        {
                            s1.Close();
                        }
                        if ((s2 != null))
                        {
                            s2.Close();
                        }
                    }
                }
                xs.Add(dsSchema);
                return(type);
            }
        public bool Read()
        {
            int currentRowXls = 0;
            int currentColumnXls = 0;
            OleDbCommand selectCmd;
            OleDbDataReader dataReader;
            bool resault = true;
            //_excelConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
            //                                "Data Source=" + currentFileName +
            //                                ";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\"";
            cbd_anketsDataSet tmpMySqlDS = new cbd_anketsDataSet();
            testDataSet tmpTestDataSet=new testDataSet();
            testDataSetTableAdapters.bd_org_tTableAdapter bdOrgTTableAdapter = new testDataSetTableAdapters.bd_org_tTableAdapter();
            testDataSetTableAdapters.bd_ip_tTableAdapter bdIpTTableAdapter = new testDataSetTableAdapters.bd_ip_tTableAdapter();

                try
                {

                    // The connection is automatically closed when the
                    // code exits the using block.
                    DataTable tablesList = excelConnection.GetSchema("Tables");
                    //DataTable tmp = excelConnection.GetSchema("MetaDataCollections");
                    int indexCurrentTable = 0;
                    //DataTable tmp_bd_org_t;
                    //DataTable tmp_bd_org_t;
                    //prBarSheets.Minimum = 0;
                    //prBarSheets.Maximum = tablesList.Rows.Count;
                    //prBarSheets.Value = 0;
                    //prBarSheets.Step = 1;

                    foreach (DataRow currentRow in tablesList.Rows)
                    {
                        try
                        {
                            selectCmd = new
                                OleDbCommand("SELECT * FROM [" + currentRow["TABLE_NAME"].ToString() + "];",
                                             excelConnection);
                            dataReader = selectCmd.ExecuteReader();

                            LogFile.Wrile2Log("Разбор листа " + currentRow["TABLE_NAME"]);
                            LogFile2.Wrile2Log("Разбор листа " + currentRow["TABLE_NAME"]);

                            int typeAnkt = 0; //Тип анкеты
                            int j = 0;
                            int x = 0;
                            int y = 0;
                            bool tableFound = false;
                            currentRowXls = 0;
                            currentColumnXls = 0;
                            /// <summary>
                            /// Определение строки юрлиц
                            /// </summary>
                            testDataSet.bd_org_tRow tmpRowUl = tmpTestDataSet.bd_org_t.Newbd_org_tRow();
            //tmpRowUl init-----------------------------------------------------------------------------------------------------------------
            //Наполняем запись для данных анкеты юр. лица значениями по умолчанию,
            //кроме тех которые не должны быть пустыми
                            tmpRowUl["main"] = 0;
                            tmpRowUl["kod_fil"] = 0;
                            tmpRowUl["rezident"] = 0;
                            tmpRowUl["reg_num"] = "";
                            tmpRowUl["reg_dat"] = DateTime.FromBinary(0);
                            tmpRowUl["reg_org"] = "";
                            tmpRowUl["state"] = "";
                            tmpRowUl["region"] = "";
                            tmpRowUl["city"] = "";
                            tmpRowUl["street"] = "";
                            tmpRowUl["build"] = "";
                            tmpRowUl["office"] = "";
                            tmpRowUl["tel"] = "";
                            tmpRowUl["e_mail"] = "";
                            tmpRowUl["e_addr"] = "";
                            tmpRowUl["sved_uchr"] = 0;
                            tmpRowUl["ust_fond"] = "";
                            tmpRowUl["kol_rab"] = 0;
                            tmpRowUl["scheta"] = "";
                            tmpRowUl["sved_kontr"] = 0;
                            tmpRowUl["profit"] = "";
                            tmpRowUl["history"] = "";
                            tmpRowUl["audit_org"] = "";
                            tmpRowUl["sved_fil"] = 0;
                            tmpRowUl["sved_infl"] = 0;
                            tmpRowUl["risk_itog"] = 0;
                            tmpRowUl["risk_client"] = 0;
                            tmpRowUl["risk_oper"] = 0;
                            tmpRowUl["risk_geo"] = 0;
                            tmpRowUl["h_risk_exp"] = " ";
                            tmpRowUl["decision"] = " ";
                            tmpRowUl["results"] = " ";
                            tmpRowUl["category"] = 0;
                            tmpRowUl["prochie"] = " ";
                            tmpRowUl["red_user"] = "";
                            tmpRowUl["dt_set"] = DateTime.Now;
            //tmpRowUl init end -----------------------------------------------------------------------------------------------------

                            testDataSet.bd_ip_tRow tmpRowIp = tmpTestDataSet.bd_ip_t.Newbd_ip_tRow();

            //tmpRowIp init-----------------------------------------------------------------------------------------------------------------
            //Наполняем запись для данных анкеты юр. лица значениями по умолчанию,
            //кроме тех которые не должны быть пустыми
                            tmpRowIp["kod_fil"] = 0;
                            tmpRowIp["rezident"] = 0;
                            tmpRowIp["pn"] = "";
                            //tmpRowIp["lastname"] = "";
                            tmpRowIp["name"] = "";
                            tmpRowIp["otch"] = "";
                            tmpRowIp["prev_lastn"] = "";
                            tmpRowIp["state"] = "";
                            tmpRowIp["date_birth"] = DateTime.FromBinary(0);
                            tmpRowIp["place_birth"] = "";
                            tmpRowIp["place_reg"] = "";
                            tmpRowIp["kind_visa"] = 0;
                            tmpRowIp["type_visa"] = 0;
                            tmpRowIp["term_visa"] = DateTime.FromBinary(0);
                            tmpRowIp["vid_doc"] = 0;
                            tmpRowIp["seria"] = "";
                            tmpRowIp["num_doc"] = "";
                            tmpRowIp["reg_org_doc"] = " ";
                            tmpRowIp["reg_dat_doc"] = DateTime.FromBinary(0);
                            tmpRowIp["reg_num"] = "";
                            tmpRowIp["reg_dat"] = DateTime.FromBinary(0);
                            tmpRowIp["reg_org"] = " ";
                            tmpRowIp["tel"] = "";
                            tmpRowIp["tel_mob"] = "";
                            tmpRowIp["e_mail"] = "";
                            tmpRowIp["e_addr"] = "";
                            tmpRowIp["scheta"] = " ";
                            tmpRowIp["profit"] = " ";
                            tmpRowIp["sved_infl"] = 0;
                            tmpRowIp["risk_itog"] = 0;
                            tmpRowIp["risk_client"] = 0;
                            tmpRowIp["risk_oper"] = 0;
                            tmpRowIp["risk_geo"] = 0;
                            tmpRowIp["h_risk_exp"] = " ";
                            tmpRowIp["decision"] = " ";
                            tmpRowIp["results"] = " ";
                            tmpRowIp["category"] = 0;
                            tmpRowIp["prochie"] = " ";
                            tmpRowIp["red_user"] = "";
                            tmpRowIp["dt_set"] = DateTime.Now;
            //tmpRowIp init-----------------------------------------------------------------------------------------------------------------

                            // Читаем текущий лист
                            while (dataReader.Read())
                                //Цикл построчного чтения листа
                            {
                                try
                                {

                                    currentRowXls++;

                                    //Определяем тип анкеты
                                    for (int i = 0; (i < dataReader.FieldCount) && (typeAnkt == 0); i++)
                                    {
                                        currentColumnXls = i;
                                        if (!dataReader.IsDBNull(i)) //если не пустая ячейка
                                        {
                                            //dataReader.
                                            String strCell = String.Concat(dataReader.GetValue(i));
                                            if (strCell.Length > 0)
                                            {
                                                if (strCell.ToLower().IndexOf("организации") > 0)
                                                {
                                                    typeAnkt = 1; //Юр. лица

                                                }
                                                if (strCell.ToLower().IndexOf("предпринимателя") > 0)
                                                {
                                                    typeAnkt = 2; //Индивидуальный предприниматель

                                                }
                                            }
                                        }
                                    }

                                    if (typeAnkt == 1)
                                    {

                                        for (int i = 0; (i < dataReader.FieldCount) && (!tableFound); i++)
                                            //Цикл поиска столбца наименований полей анкеты
                                        {
                                            currentColumnXls = i;
                                            if (!dataReader.IsDBNull(i))
                                                //если не пустая ячейка
                                            {
                                                String strCell = String.Concat(dataReader.GetValue(i));

                                                if (_fieldsDictUL.ContainsKey(strCell.ToLower().Replace(" ", "")))
                                                    //Проверяем значение ячейки является ли наименованием поля анкеты из словаря _fieldsDictUL
                                                {
                                                    x = i;
                                                    y = j;
                                                    tableFound = true;
                                                        //Если нашли ячейку с наименованием то считаем, что таблица анкеты найдена
                                                    LogFile.Wrile2Log("На листе " + currentRow["TABLE_NAME"] +
                                                                      " обнаружена анкета организации");
                                                    //LogFile2.Wrile2Log("На листе " + currentRow["TABLE_NAME"] +
                                                    //                  " обнаружена анкета организации");

                                                }

                                            }
                                        }

                                        if (!dataReader.IsDBNull(x) && tableFound)
                                            //Если не пустая ячейка и таблица анкеты найдена
                                        {
                                            if (
                                                _fieldsDictUL.ContainsKey(String.Concat(dataReader.GetValue(x)).ToLower()
                                                                              .Replace(
                                                                                  " ", "")))
                                                //Проверяем значение текущей ячейки является ли наименованием поля анкеты из словаря _fieldsDictUL
                                            {
                                                try
                                                    //Пытаемся прочитать и загрузить в tmpRowUl значение ячейки
                                                {

                                                    if (dataReader.IsDBNull(x + 1))
                                                    {
                                                        throw new ArgumentOutOfRangeException(
                                                            _fieldsDictUL[
                                                                String.Concat(dataReader.GetValue(x)).ToLower().Replace(
                                                                    " ", "")
                                                                ], dataReader.GetValue(x + 1), "Недопустимое значение");
                                                    }
                                                    try
                                                    {
                                                        if ((tmpTestDataSet.bd_org_t.Columns[
                                                            _fieldsDictUL[
                                                                String.Concat(dataReader.GetValue(x)).ToLower().Replace(
                                                                    " ", "")
                                                                ]].MaxLength == -1) || (tmpTestDataSet.bd_org_t.Columns[
                                                            _fieldsDictUL[
                                                                String.Concat(dataReader.GetValue(x)).ToLower().Replace(
                                                                    " ", "")
                                                                ]].MaxLength >= dataReader.GetValue(x + 1).ToString().Length))
                                                        {
                                                            tmpRowUl[
                                                                _fieldsDictUL[
                                                                    String.Concat(dataReader.GetValue(x)).ToLower().
                                                                        Replace(
                                                                            " ", "")
                                                                    ]]
                                                                = dataReader.GetValue(x + 1);

                                                        }
                                                        else
                                                        {
                                                            throw new ArgumentException();
                                                        }

                                                    }
                                                    catch (Exception e)
                                                    {
                                                        LogFile.Wrile2Log("При загрузке поля " + _fieldsDictUL[
                                                            String.Concat(dataReader.GetValue(x)).ToLower().Replace(
                                                                " ", "")] + " со значением " + dataReader.GetValue(x + 1) +
                                                            " возникла ошибка " + e.Message);
                                                    }
                                                    if (
                                                        _fieldsDictUL[
                                                            String.Concat(dataReader.GetValue(x)).ToLower().Replace(
                                                                " ", "")
                                                            ] ==
                                                        "unp")
                                                    {
                                                        bool unpCheckValue = unpCheck(
                                                            String.Concat(dataReader.GetValue(x + 1)).
                                                                Replace(" ",
                                                                        ""));
                                                        LogFile.Wrile2Log("Контроль УНП " + unpCheckValue);

                                                        cbd_anketsDataSetTableAdapters.QueriesTableAdapter tmpAdp_cdb =
                                                            new cbd_anketsDataSetTableAdapters.QueriesTableAdapter();
                                                        String tmpR =
                                                            tmpAdp_cdb.count_unp_bd_org(
                                                                String.Concat(dataReader.GetValue(x + 1)).Replace(" ",
                                                                                                                  ""))
                                                                .
                                                                ToString();
                                                        if (!unpCheckValue)
                                                        {
                                                            LogFile2.Wrile2Log("Неверный контрольный разряд в УНП " +
                                                                               String.Concat(dataReader.GetValue(x + 1))
                                                                                   .
                                                                                   Replace(" ",
                                                                                           ""));
                                                            throw new ArgumentOutOfRangeException(
                                                                _fieldsDictUL[
                                                                    String.Concat(dataReader.GetValue(x)).ToLower().
                                                                        Replace(" ", "")
                                                                    ], String.Concat(dataReader.GetValue(x + 1)),
                                                                "Неверный контрольный разряд в УНП");
                                                        }
                                                        if (tmpR != "0")
                                                        {
                                                            //LogFile.Wrile2Log("Ошибка. В таблице bd_org такой УНП " +
                                                            //                  dataReader.GetString(x + 1).Replace(" ", "") +
                                                            //                  " уже присутствует.");
                                                            LogFile2.Wrile2Log("Анкета организации УНП " +
                                                                               String.Concat(dataReader.GetValue(x + 1))
                                                                                   .
                                                                                   Replace(" ",
                                                                                           "") +
                                                                               " уже присутствует в БИАС");
                                                            throw new ArgumentOutOfRangeException(
                                                                _fieldsDictUL[
                                                                    String.Concat(dataReader.GetValue(x)).ToLower().
                                                                        Replace(" ", "")
                                                                    ], String.Concat(dataReader.GetValue(x + 1)),
                                                                "Дублирование УНП в основной БД");

                                                        }
                                                        testDataSetTableAdapters.QueriesTableAdapter tmpAdp_test =
                                                            new testDataSetTableAdapters.QueriesTableAdapter();
                                                        tmpR =
                                                            tmpAdp_test.count_unp_bd_org_t(
                                                                String.Concat(dataReader.GetValue(x + 1)).Replace(" ",
                                                                                                                  "")).
                                                                ToString();
                                                        if (tmpR != "0")
                                                        {
                                                            //LogFile.Wrile2Log("Ошибка. В таблице bd_org_t такой УНП " +
                                                            //                  dataReader.GetString(x + 1).Replace(" ", "") +
                                                            //                  " уже присутствует.");
                                                            LogFile2.Wrile2Log("Анкета организации УНП " +
                                                                               String.Concat(dataReader.GetValue(x + 1))
                                                                                   .
                                                                                   Replace(" ",
                                                                                           "") +
                                                                               " уже присутствует в БИАС");

                                                            throw new ArgumentOutOfRangeException(
                                                                _fieldsDictUL[
                                                                    String.Concat(dataReader.GetValue(x)).ToLower().
                                                                        Replace(" ", "")
                                                                    ], String.Concat(dataReader.GetValue(x + 1)),
                                                                "Дублирование УНП в транизитной БД");

                                                        }

                                                    }
                                                }
                                                catch (ArgumentOutOfRangeException outOfRangeException)
                                                {
                                                    LogFile.Wrile2Log(outOfRangeException.Message);
                                                    //LogFile2.Wrile2Log(outOfRangeException.Message);
                                                    if (outOfRangeException.ParamName == "unp")
                                                    {
                                                        //LogFile2.Wrile2Log("Невозможно загрузить анкету из листа " + currentRow["TABLE_NAME"] + " - недопустимый УНП");
                                                        throw new ArgumentOutOfRangeException("Лист",
                                                                                              currentRow["TABLE_NAME"],
                                                                                              "Невозможно загрузить анкету");
                                                    }
                                                    if (outOfRangeException.ParamName == "name")
                                                    {
                                                        LogFile2.Wrile2Log("Невозможно загрузить анкету из листа " +
                                                                           currentRow["TABLE_NAME"] +
                                                                           " - недопустимое или не заполненое наименование организации");
                                                        throw new ArgumentOutOfRangeException("Лист",
                                                                                              currentRow["TABLE_NAME"],
                                                                                              "Невозможно загрузить анкету");
                                                    }

                                                }
                                                catch (ArgumentException argumentException)
                                                {
                                                    LogFile.Wrile2Log(argumentException.Message);
                                                    //LogFile2.Wrile2Log(argumentException.Message);
                                                }
                                                catch (Exception exp)
                                                {
                                                    LogFile.Wrile2Log(exp.Message + " Строка - " + currentRowXls +
                                                                      "\t Столбец - " + currentColumnXls);
                                                    //LogFile2.Wrile2Log(exp.Message + " Строка - " + currentRowXls +
                                                    //                  "\t Столбец - " + currentColumnXls);

                                                    throw;

                                                }

                                            }
                                        }

                                        y++;

                                    }
                                    //cbd_ankets
                                    if (typeAnkt == 2) //Разбор анкет ИП
                                    {
                                        for (int i = 0; (i < dataReader.FieldCount) && (!tableFound); i++)
                                        {
                                            currentColumnXls = i;
                                            if (!dataReader.IsDBNull(i)) //если не пустая ячейка
                                            {
                                                String strCell = String.Concat(dataReader.GetValue(i));

                                                if (_fieldsDictIP.ContainsKey(strCell.ToLower().Replace(" ", "")))
                                                {
                                                    x = i;
                                                    tableFound = true;
                                                    y = j;
                                                    LogFile.Wrile2Log("На листе " + currentRow["TABLE_NAME"] +
                                                                      " обнаружена анкета индивидуального предпринимателя");
                                                    //LogFile2.Wrile2Log("На листе " + currentRow["TABLE_NAME"] +
                                                    //                   " обнаружена анкета индивидуального предпринимателя");

                                                }

                                            }
                                        }
                                        if (!dataReader.IsDBNull(x) && tableFound)
                                        {

                                            if (
                                                _fieldsDictIP.ContainsKey(String.Concat(dataReader.GetValue(x)).ToLower()
                                                                              .Replace(
                                                                                  " ", "")))
                                            {
                                                try
                                                {
                                                    if (dataReader.IsDBNull(x + 1))
                                                    {
                                                        throw new ArgumentOutOfRangeException(
                                                            _fieldsDictIP[
                                                                String.Concat(dataReader.GetValue(x)).ToLower().Replace(
                                                                    " ", "")
                                                                ], dataReader.GetValue(x + 1), "Недопустимое значение");
                                                    }
                                                    try
                                                    {
                                                        if ((tmpTestDataSet.bd_ip_t.Columns[
                                                                _fieldsDictIP[
                                                                    String.Concat(dataReader.GetValue(x)).ToLower().
                                                                        Replace(
                                                                            " ", "")]].MaxLength == -1) || (tmpTestDataSet.bd_ip_t.Columns[
                                                                _fieldsDictIP[
                                                                    String.Concat(dataReader.GetValue(x)).ToLower().
                                                                        Replace(
                                                                            " ", "")]].MaxLength >= dataReader.GetValue(x + 1).ToString().Length))
                                                        {
                                                            tmpRowIp[
                                                                _fieldsDictIP[
                                                                    String.Concat(dataReader.GetValue(x)).ToLower().
                                                                        Replace(
                                                                            " ", "")]] = dataReader.GetValue(x + 1);

                                                        }
                                                        else
                                                        {
                                                            throw new ArgumentException();
                                                        }

                                                    }
                                                    catch (Exception e)
                                                    {
                                                        LogFile.Wrile2Log("При загрузке поля " + _fieldsDictIP[
                                                            String.Concat(dataReader.GetValue(x)).ToLower().Replace(
                                                                " ", "")] + " со значением " +
                                                                          dataReader.GetValue(x + 1) +
                                                                          " возникла ошибка " + e.Message);
                                                    }

                                                    if (
                                                        _fieldsDictIP[
                                                            String.Concat(dataReader.GetValue(x)).ToLower().Replace(
                                                                " ", "")
                                                            ] ==
                                                        "unp")
                                                    {
                                                        bool unpCheckValue = unpCheck(
                                                            String.Concat(dataReader.GetValue(x + 1)).Replace(" ",
                                                                                                              ""));
                                                        LogFile.Wrile2Log("Контроль УНП " +
                                                                          unpCheckValue);
                                                        //LogFile2.Wrile2Log("Контроль УНП " +
                                                        //                   unpCheck(
                                                        //                       String.Concat(dataReader.GetValue(x + 1)).
                                                        //                           Replace(" ",
                                                        //                                   "")));
                                                        if (!unpCheckValue)
                                                        {
                                                            LogFile2.Wrile2Log("Неверный контрольный разряд в УНП " +
                                                                               String.Concat(dataReader.GetValue(x + 1))
                                                                                   .
                                                                                   Replace(" ",
                                                                                           ""));
                                                            throw new ArgumentOutOfRangeException(
                                                                _fieldsDictIP[
                                                                    String.Concat(dataReader.GetValue(x)).ToLower().
                                                                        Replace(" ", "")
                                                                    ], String.Concat(dataReader.GetValue(x + 1)),
                                                                "Неверный контрольный разряд в УНП");
                                                        }

                                                        cbd_anketsDataSetTableAdapters.QueriesTableAdapter tmpAdp_cdb =
                                                            new cbd_anketsDataSetTableAdapters.QueriesTableAdapter();
                                                        String tmpR =
                                                            tmpAdp_cdb.count_unp_bd_ip(
                                                                String.Concat(dataReader.GetValue(x + 1)).Replace(" ",
                                                                                                                  ""))
                                                                .
                                                                ToString();
                                                        if (tmpR != "0")
                                                        {
                                                            //LogFile.Wrile2Log("Ошибка. В таблице bd_ip такой УНП " +
                                                            //                  dataReader.GetString(x + 1).Replace(" ", "") +
                                                            //                  " уже присутствует.");
                                                            LogFile2.Wrile2Log(
                                                                "Анкета индивидуального препринимателя УНП " +
                                                                String.Concat(dataReader.GetValue(x + 1))
                                                                    .
                                                                    Replace(" ",
                                                                            "") +
                                                                " уже присутствует в БИАС");

                                                            throw new ArgumentOutOfRangeException(
                                                                _fieldsDictIP[
                                                                    String.Concat(dataReader.GetValue(x)).ToLower().
                                                                        Replace(" ", "")
                                                                    ], String.Concat(dataReader.GetValue(x + 1)),
                                                                "Дублирование УНП в основной БД");
                                                        }
                                                        testDataSetTableAdapters.QueriesTableAdapter tmpAdp_test =
                                                            new testDataSetTableAdapters.QueriesTableAdapter();

                                                        tmpR =
                                                            tmpAdp_test.count_unp_bd_ip_t(
                                                                String.Concat(dataReader.GetValue(x + 1)).Replace(" ",
                                                                                                                  "")).
                                                                ToString();
                                                        if (tmpR != "0")
                                                        {
                                                            //LogFile.Wrile2Log("Ошибка. В таблице bd_ip_t такой УНП " +
                                                            //                  dataReader.GetString(x + 1).Replace(" ", "") +
                                                            //                  " уже присутствует.");
                                                            LogFile2.Wrile2Log(
                                                                "Анкета индивидуального препринимателя УНП " +
                                                                String.Concat(dataReader.GetValue(x + 1))
                                                                    .
                                                                    Replace(" ",
                                                                            "") +
                                                                " уже присутствует в БИАС");

                                                            throw new ArgumentOutOfRangeException(
                                                                _fieldsDictIP[
                                                                    String.Concat(dataReader.GetValue(x)).ToLower().
                                                                        Replace(" ", "")
                                                                    ], String.Concat(dataReader.GetValue(x + 1)),
                                                                "Дублирование УНП в транизитной БД");

                                                        }
                                                    }
                                                }
                                                catch (ArgumentOutOfRangeException outOfRangeException)
                                                {
                                                    LogFile.Wrile2Log(outOfRangeException.Message);
                                                    //LogFile2.Wrile2Log(outOfRangeException.Message);
                                                    if (outOfRangeException.ParamName == "unp")
                                                    {
                                                        //LogFile2.Wrile2Log("Невозможно загрузить анкету из листа " +
                                                        //                   currentRow["TABLE_NAME"] +
                                                        //                   " - недопустимый УНП");
                                                        //LogFile2.Wrile2Log("Невозможно загрузить анкету из листа " + currentRow["TABLE_NAME"] + " - недопустимый УНП");

                                                        throw new ArgumentOutOfRangeException("Лист",
                                                                                              currentRow["TABLE_NAME"],
                                                                                              "Невозможно загрузить анкету");

                                                    }
                                                    if (outOfRangeException.ParamName == "lastname")
                                                    {
                                                        LogFile2.Wrile2Log("Невозможно загрузить анкету из листа " +
                                                                           currentRow["TABLE_NAME"] +
                                                                           " - недопустимая фамилия ИП");

                                                        throw new ArgumentOutOfRangeException("Лист",
                                                                                              currentRow["TABLE_NAME"],
                                                                                              "Невозможно загрузить анкету");
                                                        //LogFile2.Wrile2Log("Невозможно загрузить анкету из листа " + currentRow["TABLE_NAME"] + " - недопустимый УНП");

                                                    }

                                                }
                                                catch (ArgumentException argumentException)
                                                {
                                                    LogFile.Wrile2Log(argumentException.Message);
                                                    //LogFile2.Wrile2Log(argumentException.Message);
                                                }

                                                catch (Exception exp)
                                                {
                                                    LogFile.Wrile2Log(exp.Message + " Строка - " + currentRowXls +
                                                                      "\t Столбец - " + currentColumnXls);
                                                    //LogFile2.Wrile2Log(exp.Message + " Строка - " + currentRowXls +
                                                    //                  "\t Столбец - " + currentColumnXls);

                                                }

                                            }
                                        }

                                        y++;

                                    }

                                    j++;
                                }
                                catch (ArgumentException)
                                {
                                    dataReader.Close();
                                    dataReader.Dispose();
                                    selectCmd.Cancel();
                                    selectCmd.Dispose();
                                    throw;
                                }
                                catch (Exception e)
                                {

                                    //dataReader.Close();
                                    //dataReader.Dispose();
                                    //selectCmd.Cancel();
                                    //selectCmd.Dispose();
                                    //throw;

                                }

                            }
                            dataReader.Close();
                            dataReader.Dispose();

                            selectCmd.Cancel();
                            selectCmd.Dispose();

                            indexCurrentTable++;
                            if (typeAnkt == 1 && tableFound && tmpRowUl["name"].ToString().Length>1)
                            {

                                tmpRowUl["login"] = global::Excel2Ankets.Properties.Settings.Default.login;
                                tmpRowUl["file_name"] = currentFileName;
                                tmpRowUl["sheet_name"] = currentRow["TABLE_NAME"].ToString();
                                tmpRowUl["mfo"] = mfo;
                                tmpRowUl["pack_number"] = porc;
                                tmpTestDataSet.bd_org_t.Rows.Add(tmpRowUl);
                                bdOrgTTableAdapter.Update(tmpTestDataSet.bd_org_t);
                                tmpTestDataSet.AcceptChanges();
                                LogFile.Wrile2Log("Анкета организации УНП " + tmpRowUl["unp"] + " из листа " +
                                                  currentRow["TABLE_NAME"] + " файла " + currentFileName + " загружена");
                                LogFile2.Wrile2Log("Анкета организации УНП " + tmpRowUl["unp"] + " из листа " +
                                                  currentRow["TABLE_NAME"] + " файла " + currentFileName + " загружена");

                            }
                            if (typeAnkt == 2 && tableFound && tmpRowIp["lastname"].ToString().Length>1)
                            {

                                tmpRowIp["login"] = "******";
                                tmpRowIp["file_name"] = currentFileName;
                                tmpRowIp["sheet_name"] = currentRow["TABLE_NAME"].ToString();
                                tmpRowIp["mfo"] = mfo;
                                tmpRowIp["pack_number"] = porc;
                                tmpTestDataSet.bd_ip_t.Rows.Add(tmpRowIp);
                                bdIpTTableAdapter.Update(tmpTestDataSet.bd_ip_t);
                                tmpTestDataSet.AcceptChanges();
                                LogFile.Wrile2Log("Анкета индивидуального предпринимателя УНП " + tmpRowIp["unp"] +
                                                  " из листа " + currentRow["TABLE_NAME"] + " файла " + currentFileName +
                                                  " загружена");
                                LogFile2.Wrile2Log("Анкета индивидуального предпринимателя УНП " + tmpRowIp["unp"] +
                                                  " из листа " + currentRow["TABLE_NAME"] + " файла " + currentFileName +
                                                  " загружена");

                            }
                            if (typeAnkt == 2 && tableFound && tmpRowIp["lastname"].ToString().Length <= 1)
                            {
                                throw new ArgumentOutOfRangeException("Лист ",
                                                                      currentRow["TABLE_NAME"],
                                                                      "В анкете не найдена фамилия индивидуального предпринимателя");
                            }
                            if (typeAnkt == 1 && tableFound && tmpRowUl["name"].ToString().Length <= 1)
                            {
                                throw new ArgumentOutOfRangeException("Лист ",
                                                                      currentRow["TABLE_NAME"],
                                                                      "В анкете не найдено наименование организации");
                            }

                            if (typeAnkt == 0 || !tableFound)
                            {
                                LogFile2.Wrile2Log("На листе"+ currentRow["TABLE_NAME"]+" - анкета не найдена");
                                throw new ArgumentOutOfRangeException("Лист ",
                                                                      currentRow["TABLE_NAME"],
                                                                      "Анкета не найдена ");
                            }
                            //prBarSheets.PerformStep();

                            //tmpMySqlDS.bd_org.Select()
                            //foreach (currentRowOfTable in dataReader)
                            //{

                            //}

                        }
                            catch(ArgumentOutOfRangeException ofRangeException)
                            {
                                LogFile.Wrile2Log(ofRangeException.Message);
                                //LogFile2.Wrile2Log(ofRangeException.Message);

                                resault = false;
                            }
                        catch(NoNullAllowedException nullAllowedException)
                        {
                                LogFile.Wrile2Log(nullAllowedException.Message);
                                //LogFile2.Wrile2Log(nullAllowedException.Message);
                                resault = false;

                        }

                        catch (Exception ex)
                        {

                            LogFile.Wrile2Log("ВНИМАНИЕ!!!\n при разборе листа" + currentRow["TABLE_NAME"].ToString() + " возникла ошибка. Лист будет пропущен\n" + ex.Message + " Строка - " + currentRowXls + "\t Столбец - " +
                                              currentColumnXls);
                            //LogFile2.Wrile2Log(ex.Message + " Строка - " + currentRowXls + "\t Столбец - " +
                            //                   currentColumnXls);
                            //if (MessageBox.Show(null, "При разборе листа " + currentRow["TABLE_NAME"].ToString() + " возникло исключение\n" + ex.Message + "\n Продолжить?", "Ошибка разбора анкеты",MessageBoxButtons.YesNo)==DialogResult.No)
                            //{
                            //    throw;
                            //}

                        }

                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                    Console.WriteLine(currentFileName);
                    LogFile.Wrile2Log(ex.Message);
                    //LogFile2.Wrile2Log(ex.Message);
                    resault = false;
                }

            return resault;
        }
Beispiel #7
0
        public DataTableReader get_Data()
        {
            testDataSet set = new testDataSet();

            return(set.CreateDataReader());
        }
 public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs) {
     testDataSet ds = new testDataSet();
     global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType();
     global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence();
     global::System.Xml.Schema.XmlSchemaAny any = new global::System.Xml.Schema.XmlSchemaAny();
     any.Namespace = ds.Namespace;
     sequence.Items.Add(any);
     type.Particle = sequence;
     global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable();
     if (xs.Contains(dsSchema.TargetNamespace)) {
         global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream();
         global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream();
         try {
             global::System.Xml.Schema.XmlSchema schema = null;
             dsSchema.Write(s1);
             for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext(); ) {
                 schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current));
                 s2.SetLength(0);
                 schema.Write(s2);
                 if ((s1.Length == s2.Length)) {
                     s1.Position = 0;
                     s2.Position = 0;
                     for (; ((s1.Position != s1.Length) 
                                 && (s1.ReadByte() == s2.ReadByte())); ) {
                         ;
                     }
                     if ((s1.Position == s1.Length)) {
                         return type;
                     }
                 }
             }
         }
         finally {
             if ((s1 != null)) {
                 s1.Close();
             }
             if ((s2 != null)) {
                 s2.Close();
             }
         }
     }
     xs.Add(dsSchema);
     return type;
 }