Beispiel #1
0
        private static bool CheckConnection(DBConnectionData.ConnectionData connection_data)
        {
            var result = false;

            try
            {
                var connectionString =
                    $"Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST={connection_data.Server})(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME={connection_data.DataBase})));User Id={connection_data.Login};Password={connection_data.Password};";
                var factory = DbProviderFactories.GetFactory("Oracle.ManagedDataAccess.Client");
                using (var connection = factory.CreateConnection())
                {
                    if (connection == null)
                    {
                        throw new Exception($"{nameof(connection)} = null");
                    }

                    connection.ConnectionString = connectionString;
                    connection.Open();

                    if (connection.State == ConnectionState.Open)
                    {
                        connection.Close();
                        result = true;
                    }
                }
            }
            catch (Exception ex)
            {
                AppLogAndEventHelper.Instance.RaiseError(ex);
                return(false);
            }

            return(result);
        }
Beispiel #2
0
        private void ParsePayouts(FileInfo fi, DBConnectionData.ConnectionData connection_data)
        {
            using (var eh = new ExcelHelper(true))
            {
                var r = new ExRange(eh, eh.OpenWorkbook(fi, "", false), 1, 1);

                var connectionString =
                    $"Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST={connection_data.Server})(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME={connection_data.DataBase})));User Id={connection_data.Login};Password={connection_data.Password};";
                var factory = DbProviderFactories.GetFactory("Oracle.ManagedDataAccess.Client");
                using (var connection = factory.CreateConnection())
                {
                    if (connection == null)
                    {
                        throw new Exception($"{nameof(connection)} = null");
                    }

                    connection.ConnectionString = connectionString;
                    connection.Open();

                    for (var row = 2; row < 10000 && !string.IsNullOrWhiteSpace(r.Move(row, 3).Value("")); row++)
                    {
                        try
                        {
                            var reciever = this.GetSubjectPayData(connection, factory,
                                                                  r.Move(row, 3).Value(""),
                                                                  r.Move(row, 4).Value(""));

                            var payin = new PayManager.Payin(
                                r.Move(row, 7).Value(""),
                                r.Move(row, 5).Value(""),
                                r.Move(row, 6).Value(DateTime.MinValue)
                                );

                            var sum     = r.Move(row, 10).Value(0d);
                            var purpose = $"{r.Move(row, 9).Value("noname")} за {r.Move(row, 8).Value("noisin")} по {r.Move(row, 1).Value("nonumber")} від {r.Move(row, 2).Value(DateTime.MinValue)}";

                            this.payManager_.AddPayout(payin, ndu_, reciever, "", DateTime.Now, sum, purpose);
                        }
                        catch (Exception e)
                        {
                            AppLogAndEventHelper.Instance.RaiseError(e);
                            AppLogAndEventHelper.Instance.RaiseError($"Считывание {fi.Name} в {row} строке ошибка {e.Message}");
                            r.Range.Interior.Color = XlRgbColor.rgbLightPink;
                        }
                    }
                }
            }
        }