Exemplo n.º 1
0
        public override void TestConnection(LoggerForm logger, string connectionString, string login, string password)
        {
            try
            {
                logger.DefaultBoldText("Тестовое подключение к базе 1С через WEB сервис.\r\n\r\n");
                logger.DefaultText("Инициализация сервиса запросов...");
                using Tabel tabel = new Tabel
                      {
                          Url         = connectionString,
                          SoapVersion = System.Web.Services.Protocols.SoapProtocolVersion.Soap12,
                          Credentials = new NetworkCredential(Utf8ToWin1251(login), Utf8ToWin1251(password))
                      };
                logger.SuccessText(" ✓ ВЫПОЛНЕНО\r\n");

                logger.DefaultText("Отправка тестового запроса...");
                tabel.GetTabel("", "20200101", "20200101");
                logger.SuccessText(" ✓ ВЫПОЛНЕНО\r\n");

                logger.DefaultBoldText("\r\nТестирование успешно завершено!");
            }
            catch (Exception ex)
            {
                logger.ExceptionText(ex);
                ConnectionStatus = ConnectionStatus.Disconnected;
            }
            finally
            {
                logger.Complete();
            }
        }
Exemplo n.º 2
0
        public override void TestConnection(LoggerForm logger, string connectionString, string login, string password)
        {
            //тестирование соединения происходит с использованием библиотек VisualBasic
            //это необходимо для получения человекочитаемых сообщений при исключениях.
            try
            {
                logger.DefaultBoldText("Тестовое подключение к базе 1С через COM порт.\r\n\r\n");

                logger.DefaultText("Инициализация компонента ActiveX \"V83.COMConnector\"...");
                object COMConnector = RuntimeHelpers.GetObjectValue(Interaction.CreateObject("V83.COMConnector"));
                if (logger.IsClosed)
                {
                    return;
                }
                logger.SuccessText(" ✓ ВЫПОЛНЕНО\r\n");

                logger.DefaultText("Установка соединения с 1С...");
                connectionString = $"{connectionString}Usr=\"{login}\";Pwd =\"{password}\"";
                _ = RuntimeHelpers.GetObjectValue(NewLateBinding.LateGet(COMConnector, null, "Connect", new object[1] {
                    connectionString
                }, null, null, null));
                if (logger.IsClosed)
                {
                    return;
                }
                logger.СustomText(" ✓ ВЫПОЛНЕНО\r\n", Color.Green, FontStyle.Bold);

                logger.СustomText("\r\nТестирование успешно завершено!", Color.Black, FontStyle.Regular);
            }
            catch (Exception ex)
            {
                logger.ExceptionText(ex);
            }
            finally
            {
                logger.Complete();
            }
        }