Меню

Ado error ошибка открытия соединения 1с рарус

На чтение 3 мин Обновлено 15.01.2023

ADO соединение

Дайте пример соединения с помощью ADO, немогу понять что я делаю нетак

СтрПодключения=»Provider=Oracle.1;Persist Security Info=False;Data Source=dboracle;User
Соединение=Новый COMОбъект(«ADODB.Connection»);
Соединение.ConnectString=СтрПодключения;
Соединение.Open();

выдает ошибку — Нет поименованых аргументов

(0)
Цитата:
Восьмая версия 1С не совсем корректно работает с ADO. Например, следующий код правильно работать не будет:
Код:
Rec.ActiveConnection = «Provider=SQLOLEDB;Data Source=ServName;InitialCatalog=master;UID=sa;PWD=pass»;
Присвоения свойству «ActiveConnection» происходить не будет, и при этом, как ни странно, не будет никаких ошибок. В этом случае свойству рекордсета «ActiveConnection» можно передавать только объект Connection, и нельзя передавать строку (а в 1С 7.7 можно передавать строку). Абсолютно та же петрушка происходит со свойством рекордсета «Source» (нужен только объект Command, никаких строк). Можно предположить, что 1С 8.0 плохо работает со свойствами COM-объектов, допускающими присвоение разных типов. Кстати, в 1С 7.7 в момент присвоения строки свойству рекордсета «ActiveConnection» эта строка автоматически преобразуется в объект Connection, что видно в отладчике (тип значения — «OLE._Connection»). В 1С 8.0 этого не происходит.

(с)не помню откуда

(1) «Восьмая версия 1С не совсем корректно работает с ADO. «

хм-м-м.. а причём тут 8-ка. 8-ка работает с «чёрным ящиком» COM-объект.. а его «наполнение» 8-ке пофик

Источник

Ado error ошибка открытия соединения 1с рарус

Профиль
Группа: Участник
Сообщений: 5
Регистрация: 2.11.2011

Репутация: нет
Всего: нет

Shift1834
Дата 10.11.2011, 10:39 (ссылка) | (нет голосов) Загрузка .
Код
ADOConnection1->ConnectionString=»Provider=Microsoft.Jet.OLEDB.4.0;Data Source=»+BasePath+»;Persist Security Info=False»;
ADOConnection1->Open();
ADOTable1->TableName=»MyTName»;
ADOTable1->Active=true;
Данкинг
Дата 10.11.2011, 10:50 (ссылка) | (нет голосов) Загрузка .

Yersinia pestis

Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: нет
Всего: 130

Профиль
Группа: Участник
Сообщений: 5
Регистрация: 2.11.2011

Репутация: нет
Всего: нет

Shift1834
Дата 10.11.2011, 11:08 (ссылка) | (нет голосов) Загрузка .
Код
UnicodeString ExePath=ExtractFilePath(Application->ExeName);
ADOConnection1->ConnectionString=»Provider=Microsoft.Jet.OLEDB.4.0;Data Source=»+ExePath+»Моя база.mdb;User/>

не помогает!
Пробовал в корень диска D положить и назвать базу без русских букв — естественно тоже не помогло

Данкинг
Дата 10.11.2011, 11:44 (ссылка) | (нет голосов) Загрузка .

Yersinia pestis

Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: нет
Всего: 130

Профиль
Группа: Участник
Сообщений: 5
Регистрация: 2.11.2011

Репутация: нет
Всего: нет

Shift1834
Дата 10.11.2011, 12:06 (ссылка) | (нет голосов) Загрузка .

Профиль
Группа: Участник
Сообщений: 5
Регистрация: 2.11.2011

Репутация: нет
Всего: нет

Shift1834
Дата 10.11.2011, 13:41 (ссылка) | (нет голосов) Загрузка .
Код
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:myFoldermyAccess2007file.accdb;Persist Security Info=False;

Профиль
Группа: Участник
Сообщений: 5
Регистрация: 2.11.2011

Репутация: нет
Всего: нет

Shift1834
Дата 10.11.2011, 15:23 (ссылка) | (нет голосов) Загрузка .

Бывалый

Профиль
Группа: Участник
Сообщений: 158
Регистрация: 26.11.2005

Репутация: нет
Всего: 2

Mach3
Дата 15.11.2011, 04:38 (ссылка) | (нет голосов) Загрузка .
Цитата(Shift1834 @ 10.11.2011, 12:06 )
Запустите пожалуйста этот файлик (621 КВ) у кого Win 7 или Vista.

Запустил на обоих ноутах, XP32, Win7 64..
и там и там все норм

Данный форум предназначен для обсуждения вопросов прямым образом связанных с C++ и БД. Так, вопросы только по C++ следует задавать в C++:Общие вопросы а вопросы по абстрактным БД в Базах данных или в соответствующих под-форумах.

Благодарим за понимание.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, chipset.

0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Базы данных | Следующая тема »

[ Время генерации скрипта: 0.1344 ] [ Использовано запросов: 21 ] [ GZIP включён ]

Источник

Adblock
detector

(0)

Цитата:

Восьмая версия 1С не совсем корректно работает с ADO. Например, следующий код правильно работать не будет:

Код:

Rec = Новый COMОбъект("ADODB.Recordset");

Rec.ActiveConnection = «Provider=SQLOLEDB;Data Source=ServName;InitialCatalog=master;UID=sa;PWD=pass»;

Присвоения свойству «ActiveConnection» происходить не будет, и при этом, как ни странно, не будет никаких ошибок. В этом случае свойству рекордсета «ActiveConnection» можно передавать только объект Connection, и нельзя передавать строку (а в 1С 7.7 можно передавать строку). Абсолютно та же петрушка происходит со свойством рекордсета «Source» (нужен только объект Command, никаких строк). Можно предположить, что 1С 8.0 плохо работает со свойствами COM-объектов, допускающими присвоение разных типов. Кстати, в 1С 7.7 в момент присвоения строки свойству рекордсета «ActiveConnection» эта строка автоматически преобразуется в объект Connection, что видно в отладчике (тип значения — «OLE._Connection»). В 1С 8.0 этого не происходит.

(с)не помню откуда

Содержание:

1.       Формирование объекта ADOdb.Connection

2.       Отправка команды серверу

3.       Получение и обработка результата работы команды

В данной статье будет рассмотрено взаимодействие 1С и ADOdb. Но вначале вкратце опишем, что из себя представляет ADOdb. Итак, ADOdb – это библиотека-функция для программного обеспечения, которая создает прикладной интерфейс для способа доступа к базам данных таких языков, как Python и PHP. Данная библиотека даёт разработчику инструменты, которые позволяют делать приложения не программируя каждый возможный тип источника данных. Также используя ADOdb, программист 1С получает возможность перемены в СУБД (Система управления базами данных), не внося исправлений в главную часть кода.

ADOdb может применяться совместно с системами 1С, например, для получения доступа к таблицам в базе данных 1С при помощи методов ADO. Методы ADO и SQL-DMO разрешают исполнять командование доступом и модификацию данных при помощи функций T-SQL (расширение SQL). В обоих случаях порядок действий будет одинаковым. Рассмотрим же его подробнее!  


1.     Формирование объекта ADOdb.Connection

формирование объекта в ADOdb.Connection

Формирование объекта ADOdb.Connection

Реализовали мы данное действие в глобальном модуле, то есть существует объект до тех пор, пока сеанс в 1С открыт – по окончанию работы удалять не нужно. 

2.     Отправка команды серверу

Для того чтобы сформировать команду, необходимо создать объект ADOdb.Command, после чего привязываем его к нынешнему соединению:

Привязка объекта ADOdb.Connection к соединению

Привязка объекта ADOdb.Connection к соединению

Далее задаётся непосредственно команда:

 ADOdb.Connection тип команды

Команда для объекта ADOdb.Connection

Текст в команде – это некий оператор из T-SQL или имя процедуры из нашей базы данных.

Чтобы работа программы стала быстрее? можно отметить для объекта ADOdb тип команды (функция «ТипКомандыАдо()»).

Как отметить для объекта ADOdb.Connection тип команды

Как отметить для объекта ADOdb.Connection тип команды

Примечание: по внутренним настройкам при создании объекта ADOdb.Command стоит тип adCmdUnknow.

Тип команды по умолчанию для объекта ADOdb.Connection

В случае, когда используем процедуру с параметрами, которую храним – нужно внести их в собрание «Parameters» в объекте ADOdb.Command. Создание параметров происходит через функцию CreateParameter в объекте ADOdb.Command:

«CreateParamerer (Name, Value Type, Param type, Param Value)», где:

·        Name – название параметра (точно так же, как указано в процедуре, в которой он хранится);

·        Value Type – значение параметра по типу, определяем при помощи КонстантаАДО();

·        Param Type – тип в параметре («Output» или «Input»), определяем при помощи функции ТипПарамедраАДО();

·        Param Value – само значение.

создание в объекте ADOdb.Command

Создание параметров в объекте ADOdb.Command

Функция CreateParameter в объекте ADOdb.Command

Функция CreateParameter в объекте ADOdb.Command

работа в ADOdb.Command

Пример создания параметров в объекте ADOdb.Command

Для того чтобы передать параметры в процедуру для хранения, нужно сделать описание каждого параметра в том же порядке, как они записаны в процедуре, где хранятся.

Примечание: параметры с типом Numeric нужно будет конвертировать в строки, а только потом передавать.  

3.     Получение и обработка результата работы команды

Можно вывести результаты двумя способами:

·        как набор с данными, который возвращаем функцией «Execute» из объекта ADOdb.Command;

·        как обособленные значения, которые можно передать из той процедуры, где они хранятся, по параметрам с типом OUTPUT.

Выведение результатов работы ADOdb.Command

Выведение результатов работы ADOdb.Command

Стоит обратить внимание, что параметры нумеруются начиная со значения «0». Параметры можно использовать ещё раз, если присвоить им значения через опцию Value.

Конечный набор с записями сможет проходить обработку с начала и до конца цикла и будет обращаться к полям по их названиям. Например:

Обработка набора с начала и до конца года

Обработка набора с начала и до конца года

Когда записи стали не нужными, закрываем их с помощью Rs.Close.

Таким образом, соединив 1С и методы ADOdb, мы получили набор записей при работе с базой данных SQL.

Специалист компании «Кодерлайн»

Айдар Фархутдинов


Сегодня, 15.11.2022 многие пользователи 1С Предприятие 8 столкнулись с проблемой, при входе в 1c программа показывает ошибку “Неправомерное использование программного продукта” Вы стали жертвой подделки программного обеспечения Причиной появления этого сообщения является срабатывание защиты от незаконного использования применяемой правообладателем в соответствии со ст. 1299 ГК РФ, из-за наличия на компьютере нелегального эмулятора ключа защиты, либо […]

15.11.2022

Сегодня, 15.11.2022 многие пользователи 1С Предприятие 8 столкнулись с проблемой, при входе в 1c программа показывает ошибку “Неправомерное использование программного продукта”

jertva 1s

Вы стали жертвой подделки программного обеспечения

Причиной появления этого сообщения является срабатывание защиты от незаконного использования применяемой правообладателем в соответствии со ст. 1299 ГК РФ, из-за наличия на компьютере нелегального эмулятора ключа защиты, либо средств взлома.

Более подробная информация и инструкция по восстановлению работоспособности программы на нашем официальном сайте.

И кнопки: Подробнее и Завершить работу

При этом 1С официально куплена, установлены все ключи защиты и установлена самая актуальная версия 1С. За день до этого, Фирма 1С выпустила срочное сообщение, что нужно обновить платформу, ссылаясь на некие “Внешние условия”, но не уточняет какие. Похоже, что в некоторые релизы была заложена некая защита от пиратов и была настроена на 15 ноября. Но что-то было сделано не так и пострадали не только пираты, но и легальные пользователи

Что за внешние условия 15.11.2022?

Днем ранее, фирма 1С всем пользователям и партнерам отправила сообщение с пометкой Срочно. При этом не уточняя, что же имеется ввиду под фразой “Внешние условия”. Мы можем только догадываться, что внешние условия – это заложенный механизм защиты от пиратов, в определенных версиях платформ. И он должен был отключить нелицензионные версии в день Х это 15 ноября 2022 года. Но, похоже, вместо пиратов в ловушку попали легальные пользователи 🙁

Фирма “1С” доводит до сведения пользователей и партнеров, что в версиях платформы “1С:Предприятие” … обнаружена критическая проблема, которая может привести к закрытию приложения в начале работы с программой.

Изменение внешних условий 15.11.2022 может существенно повысить вероятность проявления данной проблемы – предполагается, что многие пользователи перечисленных версий завтра не смогут работать.

Если не можете скачать обновление из личного кабинета 1С (или не работает автоматическое обновление), то воспользуйтесь ссылками, которые опубликованы на https://info83.1c.ru/ (это официальный сайт 1с). Скачайте нужную платформу и установите ее вручную. Мы категорически не рекомендуем скачивать платформу с других сайтов!

Что делать сейчас?

Внимание! Здесь мы собираем всевозможные варианты решения проблемы. Сейчас нет 100% ответа как решить эту проблему.
Всю ответственность за выполняемые работы и (или) сохранность данных Вы берете на себя.
ОБЯЗАТЕЛЬНО!!! Перед какими-либо изменениями сделайте копию текущей базы данных, чтобы всегда можно было вернуться в исходную точку

Решение 0 (опубликовано 16.11.2022)

16 ноября вышел релиз 8.3.17.2760. По сообщениям пользователей в нашем Telegram-канале с ним работает даже 32-разрядный клиент-серверный вариант. Если у Вас не работает решение 1 и 2, то попробуйте установить 8.3.17.2760. Будем благодарны, если напишите о результатах в комментариях

Решение 1

Для начала попробуйте обновиться на актуальную версию платформы, в соответствии с этой таблицей.

Таблица версий 1с

Решение 2

Если даже после обновления платформы 1с продолжает вылетать после запуска. То лучше проверить и удалить “следы эмуляторов”. Даже если сейчас у вас лицензионная и купленная 1С, то возможно кто-то ставил эти эмуляторы до вас и удалили не все. Проверять нужно и на компьютере с которого запускаете 1с и на сервере 1С (если такой есть). Следуйте этой инструкции:

Сообщение “Обнаружено нарушение целостности системы” – это не ошибка, а штатное поведение платформы “1С:Предприятие”. Причины появления этого сообщения может быть наличие на компьютере:

  1. Пиратского эмулятора HASP, с которым в данный момент работает платформа «1С:Предприятие».
  2. Пиратского эмулятора HASP или его остатков, с которым в данный момент платформа «1С:Предприятие» не работает, а использует легальную лицензию.
  3. Модифицированной версии платформы «1С:Предприятие».

Варианты Ваших действий при появлении сообщения “Обнаружено нарушение целостности системы” (только для ИТ-специалистов!):

  1. Удалить эмулятор HASP. Рекомендации:
  • Вариант 1. Найдите и удалите файлы VUsb.sys и vusbbus.sys
  • Вариант 2.

Выполните команды:

loaddrv.exe -stop haspflt

loaddrv.exe -remove haspflt

(Если утилиты loaddrv на компьютере нет, то в списке служб остановите и удалите службу haspflt)

del %systemroot%system32drivershaspflt.sys

Рекомендуется удалить также ветки реестра

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetserviceshaspflt

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesvusbbus

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetNEWHASPServicesEmulatorHASPDump

Убедитесь, что в реестре ничего не обнаруживается при поиске по слову “hasp”.

  • Вариант 3.

Найдите и удалите файл multikey.sys.

Он может быть в каталогах:

c:WindowsSystem32drivers

c:WindowsSystem32

c:WindowsSysWOW64

Поскольку существуют и появляются разные эмуляторы, то приведенные рекомендации по их удалению не являются исчерпывающими. Если они не помогли, Вы можете самостоятельно поискать рекомендацию по удалению того эмулятора, который ставился на Ваш компьютер.

Решение 3

Если и это не помогло: то попробуйте закрыть на время 1С доступ к интернету. У одного из клиентов установлена платформа 8.3.19.1723 и закрыт доступ к интернету. В итоге полет нормальный. Пока не знаем точно, что играет решающую роль или закрытый доступ к интернету или версия платформы.

В качестве временного решения предлагают закрыть на компьютере/сервере доступ к следующим IP-адресам:

185.12.152.0/24
185.12.153.0/24
185.12.154.0/24
185.12.155.0/24
220.181.0.0/16
39.128.0.0/10
5.188.115.0/24
93.184.220.0/22
37.61.222.112/29
139.45.192.0/18
5.45.205.0/24
18.184.212.59
23.52.27.27
23.46.123.27
91.239.5.113
89.111.148.64/26

Решение 4

Попробовать откатиться на старую версию платформы (до той версии, что указаны в таблице выше). Если базу запустили с новой версией платформы, то при откате на старую версию получите ошибку формата потока. Поэтому откат на старую версию возможен только если восстановить копию базы до момента, когда попытались войти в базу с новой платформой.

Решение 5

(из комментариев) в нашем телеграм-канале: Нашёл временное решение, временное оно т.к. работает до перезагрузки, банально переустановил платформу на терминальном сервере(на нём же стоит сервер 1С) отказался от перезагрузки, уже 30 минут полёт нормальный.

Решение 6 от Сергея Нуралиева

К концу дня появился новый комментарий от Сергея Нуралиева:

К сожалению, ситуация оказалась сложнее, чем мы вчера предполагали.

На сегодня остались две нерешенные проблемы относительно массового характера, над которыми мы еще продолжаем работать:

– Версия 8.3.17.2757 снята со скачивания. Мы анализируем возможно не исправленную в ней проблему. Рекомендуем пока вместо нее скачивать и использовать версию 8.3.18.1957, или более старшие. Рассчитываем завтра уточнить проблему, опубликовать способ автоматической диагностики и исправления.
В клиент-серверном варианте развертывания в 32 разрядных версиях сервера часть пользователей получают сообщения “Возникла непредвиденная ошибка”. Если вы столкнулись с данной проблемой, в качестве временной меры для ее обхода можно перейти на 64 разрядный сервер – получить временную программную лицензию “1С:Предприятие 8.3 КОРП. Лицензия на сервер (x86-64) “, действующую 60 дней и дистрибутив платформы x86-64. Для этого надо:
1. Войти под своим логином на Портал ИТС по ссылке https://portal.1c.ru/software/registration. Если у Вас нет логина на Портале ИТС, или вы его не помните и не можете быстро восстановить, необходимо зарегистрироваться на https://portal.1c.ru/ (для этого не обязательно быть владельцем продуктов 1С и указывать их регномера), заполнив простую анкету и согласившись с условиями. Рекомендуем сразу заполнять верный e-mail и мобильный телефон, т. к. на них будет приходить подтверждение для получения временной лицензии.
2. На странице https://portal.1c.ru/software/registration в разделе “Получить бесплатно” выбрать необходимую вам временную лицензию, заполнить сведения, согласиться с условиями получения и активации лицензии, и получить ее.

Завтра, 16 ноября, мы продолжим информировать вас о ситуации и предлагаемых путях решения проблем.

От лица фирмы «1С»
Руководитель отделения разработки экономических программ  Сергей Нуралиев

Пожалуйста, напишите в комментариях какое решение помогло или не помогло в вашем случае?

Как обстоят дела у других? (хронология событий)

08:00 по мск облачный сервис Рарус обновил свои сервера на версию, которую рекомендовали в 1С – 8.3.20.2180 и тоже самое сделали его клиенты. Но даже после обновления, после входа в программу появилась ошибка неправомерного использования.

09:20 по мск 1С у клиента Ruras все еще не работает. При этом похоже, что Рарус стал откатывать на своих серверах платформу до версии 8.3.19.1467. Но тонкий клиент не запускается, веб-клиент выдает ошибку “1S:Enterprise 8 application error” HTTP:Conflict

1C:Enterprise 8 application error

а толстый клиент выдает ошибку формата потока:

2022 11 15 9 25 25

2022 11 15 9 25 25

10:00 На сайте https://info83.1c.ru/ опубликованы прямые ссылки на актуальные версии платформы, можно качать без всяких ИТС.

10:30 Если установка обновления не помогла восстановить работу системы, то попробуйте почистить компьютер от “остатков эмуляторов”: https://1c.ru/rus/support/surrog.htm

12:02 Все наши клиенты, которые работают в локальной версии 1С на текущий момент работают в штатном режиме. Исключение клиенты, которые используют облако Рарус – там еще ведутся работы, пока наблюдаем ошибку HTTP: conflict

12:16 Похоже, коллеги Рарус тоже смогли решить проблему из 1С в облаке теперь тоже работают.

12:19 Клиенты сервиса 1С:Фреш работают в штатном режиме

14:36 Проблема у клиентов Рарус-облако всё ещё решена не полностью. У некоторых клиентов все работает, у других Веб-клиент запускается, но через минуту появляется ошибка лицензирования и вылетает

17:50 Сергей Нуралиев прокомментировал ситуацию (разместили его чуть выше)

21:57 По итогам дня какого-то единого решения проблемы найти не удалось. В некоторых случаях помогает установка 64-разрядной платформы (или хотя бы клиентам их поставить), некоторым помогает блокировка доступа к интернету.

21:59 Хотели выгрузить базу из облака Раруса через конфигуратор и попробовать запустить её локально, но конфигуратор вылетает уже на моменте ввода пароля с той же самой ошибкой “Вы стали жертвой подделки программного обеспечения”.

16 ноября 2022

09:00 Сервер Раруса перестал отвечать. Тех.поддержка прокомментировала, что есть проблема с некоторыми серверами. Предложили перенести базу на другой сервер. Ожидаем.

10:09 В комментариях поступила информация, что Первый Бит тоже столкнулся с проблемой и на текущий момент пользователи не могут работать в арендованных базах

10:14 Опубликован релиз 8.3.17.2760. сообщают, что 32разрядный сервер на этой версии заработал

10:30 Поддержка раруса вышла на связь и перенесла базу на другой сервер. База работает!

17 ноября 2022 

12:00 Кажется, все основные проблемы исправлены.

17:00 Но тут новая напасть, теперь недоступен сайт 1с и сервисы итс

Статья дополняется… рекомендуем подписаться на наш Телеграм-канал по 1С

Эти дополнения для 1С используют ваши коллеги

Мы занимаемся разработкой полезных отчетов и расширений для 1С более 10 лет и некоторые продукты, которые делали под заказчика, со временем докручиваем до универсальности и выкладываем на сайте v8PRO.ru (на странице v8pro.ru/shop выберите свою конфигурацию и увидите полный список). Самые популярные дополнения для 1С:

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Adjustment program epson l805 ошибка 1
  • Aditec mra 500 коды ошибок