|   |   | 
| 
 | Не подключается в базе Firebird. Через консоль подключается. | ☑ | ||
|---|---|---|---|---|
| 0
    
        ЧессМастер 03.03.21✎ 18:30 | 
        Всем доброе время суток !
 Ситуация следующая. Есть база Firebird на компе в сети (пропускная система). Надо к ней подключиться из 1С. Через консоль с компа все отлично подключается - то есть по идее все нормально с правами, драйверами и т.п. Но через 1С хоть ты тресни никак не хочет. Текст кода Conn = Новый COMОбъект("ADODB.Connection"); Conn.ConnectionString = "DRIVER=Firebird/InterBase(r) driver;" + "DBNAME=KD-SKUD-01:C:\Program Files (x86)\ENT\Server\DB\CBASE.FDB;" + // Исправьте на свой IP, порт и путь к базе данных ! "UID=SYSDBA;" + // Исправьте на свое имя пользователя ! "PWD=masterkey;" + // Исправьте на правильный пароль ! "CHARSET=WIN1251;" + // Исправьте на свою кодировку подключения !!! "C:\Program Files (x86)\Firebird\Firebird_2_1\bin\fbclient.dll"; Conn.ConnectionTimeout = 180; Conn.CursorLocation = 3; // Подключаемся к базе данных Попытка Conn.Open(Conn.ConnectionString); Сообщить("успешно подключились к базе проходной"); Исключение Сообщить("Не удалось выполнить подключение " + ОписаниеОшибки()); КонецПопытки; Выдает ошибку "Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию" При этом через консоль Fireboird с этого же компа под этим же пользователем с таким расположением DB все подключается. В чем может быть дело ? | |||
| 1
    
        Вафель 03.03.21✎ 18:50 | 
        не установлен драйвера одбу     | |||
| 2
    
        ЧессМастер 03.03.21✎ 20:16 | 
        (1) Установлен.
 1. Панель управления\Все элементы панели управления\Администрирование Firebird/InterBase(r) driver Версия 2.00.01.152 2. Консолью Firebird подключение к базе идет. Если бы драйвера не было то подключение консолью бы не проходило. | |||
| 3
    
        ДенисЧ 03.03.21✎ 20:31 | 
        Сейчас выяснится, что этот код &НаСервере...     | |||
| 4
    
        acht 03.03.21✎ 20:47 | 
        64x32     | |||
| 5
    
        Кирпич 03.03.21✎ 20:48 | 
        мож "CLIENT=C:\Program Files (x86)\Firebird\Firebird_2_1\bin\fbclient.dll";     | |||
| 6
    
        vovastar 03.03.21✎ 21:02 | 
        (0) старый добрый Firebird...аж вздрагиваю при его упоминании...     | |||
| 7
    
        Вафель 03.03.21✎ 21:15 | 
        консоль fb не юзает одбц, а нативно подкючается     | |||
| 8
    
        ЧессМастер 04.03.21✎ 11:54 | 
        (3) Да в этом дело оказалось.
 Пробовал это сделать в модуле объекта отчета на СКД. Сделал для проверки на клиенте - все работает. Еще один момент можешь подсказать ? При подключении внешнего источника данных с этой же строкой подключения выдает сообщение Ошибка ODBC. SQLSTATE: IM002 Номер ошибки: 0 Описание: [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию Я правильно понимаю что для того чтобы подключить внешний источник данных надо 1. Драйвер ставить на сервере 1С 2. Драйвер ставить той же разрядности как и сервер 1С. | |||
| 9
    
        ЧессМастер 04.03.21✎ 11:54 | 
        (6) Что делать - БД пропускной системы на нем крутится.     | |||
| 10
    
        Gimalaj 04.03.21✎ 12:29 | 
        (8) >> Я правильно понимаю что для того чтобы подключить внешний источник данных надо...
 Да, все верно. | |||
| 11
    
        Gimalaj 04.03.21✎ 12:32 | 
        А вообще, никогда не понимал людей, пишущих: ConnectionString = "DRIVER=такой-то, DBNAME=такая-то, UID=такой-то и т.д.". 
 Намного проще создать в системе DSN, а в коде написать "dsn=такой-то". | |||
| 12
    
        ДенисЧ 04.03.21✎ 12:35 | 
        (11) Хорошо, что мне не приходилось править твой такой код...     | |||
| 13
    
        Gimalaj 04.03.21✎ 12:36 | 
        (12) ОК, аргументируй. Что не так?     | |||
| 14
    
        ДенисЧ 04.03.21✎ 12:38 | 
        (13) Лишние движения телом.     | |||
| 15
    
        ДенисЧ 04.03.21✎ 12:39 | 
        И переносимость. Забудешь ты притащить в прод свой дсн и ага.     | |||
| 16
    
        Gimalaj 04.03.21✎ 12:41 | 
        (15) Ну это не аргумент. Точно так же на продуктовом сервере можно забыть установить драйвер, забыть изменить имя/логин/пароль для базы и т.д.     | |||
| 17
    
        ЧессМастер 04.03.21✎ 20:58 | 
        (11) >Намного проще создать в системе DSN, а в коде написать "dsn=такой-то".
 Если тебе не нравится писать в коде "DBNAME=такая-то" то никто не мешает хранить значение "DBNAME=такая-то" где угодно - в табличной части, в регистре сведений и т.п. | |||
| 18
    
        ЧессМастер 04.03.21✎ 21:02 | 
        (10) При работе на сервере появился новый прикол
 Ошибка при вызове метода контекста (УстановитьСоединение): Ошибка ODBC. SQLSTATE: 08004 Номер ошибки: -902 Описание: [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login. При этом подключение идет под теми же данными как и с локальной машины. То есть при подключение с локальной машины подключение проходит, на сервере под этими же данными нет. Что бросается в глаза - версия драйвера на сервере другая. Может при изменении версии драйвера поменялся синтаксис подключения ? | |||
| 19
    
        Fram 05.03.21✎ 00:33 | 
        (18) может все таки в разные базы ломишься?.. если что диск С на клиенте не всегда равно диск С на сервере     | |||
| 20
    
        ЧессМастер 05.03.21✎ 11:37 | 
        (19) >может все таки в разные базы ломишься
 Да нет в одну и ту же. DBNAME=KD-SKUD-01:C:\Program Files (x86)\ENT\Server\DB\CBASE.FDB Это расположение БД пропускной системы на другом компе в сети. Если я со своего компа присоединяюсь с клиента то все нормально. Если с сервера с такой же строкой подключения выдает Ошибка при вызове метода контекста (УстановитьСоединение): Ошибка ODBC. SQLSTATE: 08004 Номер ошибки: -902 Описание: [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login. Как может быть что под однги ми и теми же учетными данными UID=SYSDBA PWD=masterkey с клиента пускает а с сервера нет ? Это бред какой то реальный. | |||
| 21
    
        ЧессМастер 05.03.21✎ 11:41 | 
        Вот это прикол
 "Оказывается файл базы данных созданный в Firebird 32 bit, не открывается в Firebird 64 bit." Возникает вопрос - как же подключаться к Firebird на сервере если там 64 разрядная 1С ? И 32 разрядный драйвер Firebird не сработает. | |||
| 22
    
        Пузан 05.03.21✎ 11:43 | 
        (21) Ставить 64 разряда драйвер. Нет?     | |||
| 23
    
        ЧессМастер 05.03.21✎ 11:59 | 
        (22) Смотри что получается
 Сейчас стоит 64 разрядный драйвер. При попытке подключения "на сервере" выдает Ошибка при вызове метода контекста (УстановитьСоединение): Ошибка ODBC. SQLSTATE: 08004 Номер ошибки: -902 Описание: [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login. Это происходит по причине того что 64 разрядный драйвер с сервера пытается подключиться в базу Firebird которая создана в 32 разрядном приложении. И при этом возникает вот этот нюанс "Оказывается файл базы данных созданный в Firebird 32 bit, не открывается в Firebird 64 bit." При этом 64 разрядный сервер не ставит 32 разрядный драйвер Firebird. Который нужен для обхода ограничения >"Оказывается файл базы данных созданный в Firebird 32 bit, не открывается в Firebird 64 bit." | |||
| 24
    
        Пузан 05.03.21✎ 12:04 | 
        Ну значит капец. С твоей базой можно работать только через 32 разрядную 1С.     | |||
| 25
    
        Вафель 05.03.21✎ 12:04 | ||||
| 26
    
        ЧессМастер 05.03.21✎ 18:21 | 
        (25) Так там конкретики нет
 > я наткнулся на веб-сайт, который предложил изменить реестр для решения другой проблемы. На какой сайт ? >Я закончил создание соединения ODBC непосредственно под HKLM\Software\ODBC Что он конкретно менял ? | |||
| 27
    
        ЧессМастер 05.03.21✎ 18:38 | 
        У кого то работает подключение к Firebird через внешние источники данных на сервере 64 разрядном ?     | |||
| 28
    
        ДедМорроз 06.03.21✎ 13:15 | 
        Прекрасно можно подключаться к 32 из 64 и наоборот,только разрядность установленного odbc драйвера должна совпадать с разрядностью приложения.
 Ставим на сервер odbc64 и в путь. | |||
| 29
    
        ДедМорроз 06.03.21✎ 13:17 | 
        Ну и надо понимать,что сервер - это служба,запущенная на конкретной машине,и в строке подключения указывается ее адрес,а путь базы уже указывается относительно этой службы и на той машине,где она установлена.     | |||
| 30
    
        ЧессМастер 09.03.21✎ 13:23 | 
        (28) >Прекрасно можно подключаться к 32 из 64 и наоборот,только разрядность установленного odbc драйвера должна совпадать с разрядностью приложения.
 Ничего подобного В (23) это подробно описано Сейчас стоит 64 разрядный драйвер. При попытке подключения "на сервере" выдает Ошибка при вызове метода контекста (УстановитьСоединение): Ошибка ODBC. SQLSTATE: 08004 Номер ошибки: -902 Описание: [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login. Это происходит по причине того что 64 разрядный драйвер с сервера пытается подключиться в базу Firebird которая создана в 32 разрядном приложении. И при этом возникает вот этот нюанс "Оказывается файл базы данных созданный в Firebird 32 bit, не открывается в Firebird 64 bit." Не откроет базу данных созданную в Firebird 32 bit с сервере где установлен драйвер Firebird 64 bit. А 32 разрядный драйвер Firebird на сервер 64 bit не ставится. | |||
| 31
    
        ЧессМастер 09.03.21✎ 13:26 | 
        (28) >Прекрасно можно подключаться к 32 из 64 и наоборот,
 Нет нельзя. При попытке подключения из 64 в 32 выдает Ошибка при вызове метода контекста (УстановитьСоединение): Ошибка ODBC. SQLSTATE: 08004 Номер ошибки: -902 Описание: [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login. Причина в том что "Оказывается файл базы данных созданный в Firebird 32 bit, не открывается в Firebird 64 bit." | |||
| 32
    
        Вафель 09.03.21✎ 13:59 | 
        (31) фб должен быть 32 бит, а одбц - 64     | |||
| 33
    
        Вафель 09.03.21✎ 14:01 | 
        ты напрямую к файлу обращаешься, а не к серверу чтоли?     | |||
| 34
    
        Кирпич 09.03.21✎ 15:16 | 
        В сообщении об ошибке явно намекают про юзера и пароль. При чем тут 64 и 32. Фигня какая то. С правами надо разбираться.     | |||
| 35
    
        Кирпич 09.03.21✎ 15:20 | 
        Можно же явно указать клиента в параметрах подключения. Поставить ODBC 64 и клиента 64 и всё будет работать.     | |||
| 36
    
        Gimalaj 09.03.21✎ 15:45 | 
        (31) Значит, что-то у тебя не так. У меня точно такая же ситуация: база изначально работала с х32-приложением, потом понадобился доступ к ней из 1С. В настоящее время мы работаем с этой базой данных как из 32-разрядного дельфёвого приложения, так и из 64-разрядного сервера 1С.     | |||
| 37
    
        Gimalaj 09.03.21✎ 15:47 | 
        Создай на сервере, где развернут сервер 1С источник DSN и протестируй оттуда.     | |||
| 38
    
        Кирпич 09.03.21✎ 15:49 | 
        (37) Да автор уже, наверное, доложил начальству о фатальной ошибке в Fierbird и успокоился :)     | |||
| 39
    
        Кирпич 09.03.21✎ 15:50 | 
        уж неделя прошла     | |||
| 40
    
        Gimalaj 09.03.21✎ 15:53 | 
        (39) Ну, последнее сообщение он два часа назад написал.     | |||
| 41
    
        ЧессМастер 09.03.21✎ 16:06 | 
        (32) >фб должен быть 32 бит, а одбц - 64
 Так и есть. | |||
| 42
    
        ЧессМастер 09.03.21✎ 16:08 | 
        (33) 
 >ты напрямую к файлу обращаешься, а не к серверу чтоли? К какому серверу ? Я подключаюсь к файлу DBNAME=KD-SKUD-01:C:\Program Files (x86)\ENT\Server\DB\CBASE.FDB Этот файл лежит на компе с пропускной системой. И там база 32 bit. При подключении с локальной машины при использовании драйвера Firebird 32 bit все проходит отлично. Но как только подключение к этому же файлу идет с использованием 64 разрядного драйвера Firebird (через сервер 1С) валится ошибка При попытке подключения из 64 в 32 выдает Ошибка при вызове метода контекста (УстановитьСоединение): Ошибка ODBC. SQLSTATE: 08004 Номер ошибки: -902 Описание: [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login. | |||
| 43
    
        ЧессМастер 09.03.21✎ 16:09 | 
        (34) > При чем тут 64 и 32
 При том что "Оказывается файл базы данных созданный в Firebird 32 bit, не открывается в Firebird 64 bit." А именно этот фокус пытается провернуть 64 разрядный драйвер когда лезет в 32 разрядную базу Firebird. | |||
| 44
    
        ЧессМастер 09.03.21✎ 16:12 | 
        (35) >Поставить ODBC 64 и клиента 64 и всё будет работать.
 Нет не будет. Еще раз Как только клиент (драйвер) меняется с 32 разрядного на 64 разрядный и идет попытка подключения к 32 разрядной базе Firebird валится ошибка Ошибка при вызове метода контекста (УстановитьСоединение): Ошибка ODBC. SQLSTATE: 08004 Номер ошибки: -902 Описание: [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login. Обход этот ошибки только 1. Конвертация базы Firebird в 64 разрядную 2. Работа с 32 разрядной базой Firebird с клиента с использованием драйвера 32 bit 3. Работа с 32 разрядной базой Firebird из файловой базу с клиента с использованием драйвера 32 bit. | |||
| 45
    
        ЧессМастер 09.03.21✎ 16:14 | 
        (35) >Можно же явно указать клиента в параметрах подключения.
 Что ты укажешь явно ? На сервере 1С который 64 bit 1. Драйвер 32 разрядный не ставится. 2. При попытке подключения из 64 сервера 1С в 32 базу Firebird выдает Ошибка при вызове метода контекста (УстановитьСоединение): Ошибка ODBC. SQLSTATE: 08004 Номер ошибки: -902 Описание: [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login. | |||
| 46
    
        ЧессМастер 09.03.21✎ 16:16 | 
        Я перечитал кучу статей на Инфостарте на эту тему.
 Народ только такие способы нашел 1. Конвертация базы Firebird в 64 разрядную 2. Работа с 32 разрядной базой Firebird с клиента с использованием драйвера 32 bit 3. Работа с 32 разрядной базой Firebird из файловой базу с клиента с использованием драйвера 32 bit. Напрямую с сервера 64 bit в базу Firebird 32 bit никто не победил. | |||
| 47
    
        ЧессМастер 09.03.21✎ 16:22 | 
        (37) >Создай на сервере, где развернут сервер 1С источник DSN и протестируй оттуда.
 Если речь идет про ВнешниеИсточникиДанных то при подключении из 1С в базу Firebird используется как раз драйвер 64 bit с сервера 1С. С такой же ошибкой как это происходит при попытке подключиться обработкой на сервере. Те же грабли только в профиль. Ошибка при вызове метода контекста (УстановитьСоединение): Ошибка ODBC. SQLSTATE: 08004 Номер ошибки: -902 Описание: [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login. | |||
| 48
    
        ЧессМастер 09.03.21✎ 16:27 | 
        (36) >В настоящее время мы работаем с этой базой данных как из 32-разрядного дельфёвого приложения, так и из 64-разрядного сервера 1С.
 Возможно в вашем приложении нет такого жесткого ограничения какое есть у Firebird >"Оказывается файл базы данных созданный в Firebird 32 bit, не открывается в Firebird 64 bit." | |||
| 49
    
        Кирпич 09.03.21✎ 16:43 | 
        С какого перепугу "Оказывается файл базы данных созданный в Firebird 32 bit, не открывается в Firebird 64 bit."
 Сервер же на другом компе. Ему пофиг разрядность клиента. Он же через сеть общается. У меня вот работает сервер на 32 и подключаюсь я 64 битным клиентом. | |||
| 50
    
        Кирпич 09.03.21✎ 16:49 | 
        С правами там что то. Написано же черным по белому.     | |||
| 51
    
        Gimalaj 09.03.21✎ 17:04 | 
        (47) Речь в (37) идет НЕ про внешние источники данных.Речь там идет вообще не про 1С.
 Открой в Виндоус "Панель управления" - "Администрирование" - "Источники данных ODBC (64-разрядная версия)". Создай DSN и в созданном DSN ты сможешь протестировать соединение с Firebird. | |||
| 52
    
        Gimalaj 09.03.21✎ 17:05 | 
        (50) Черным по белому там написано не про права, а про логин/пароль.     | |||
| 53
    
        Gimalaj 09.03.21✎ 17:20 | 
        (48) "Упрямство - первый признак тупости" (с) Глеб Жеглов, "Место встречи изменить нельзя", по-моему 3-я серия.     | |||
| 54
    
        Кирпич 09.03.21✎ 17:32 | 
        (52) Ну как бы нет имени и пароля - нет прав     | |||
| 55
    
        Garykom гуру 09.03.21✎ 17:37 | 
        (0) Лично я использую прокладку на Golang для работы с внешними БД из 1С
 Ибо внешние источники данных слегка задолбали, на сервере часто прав нету - злобные админы | |||
| 56
    
        Garykom гуру 09.03.21✎ 17:38 | 
        (55)+ Если надо то могу сваять и выложить для Firebird     | |||
| 57
    
        Garykom гуру 09.03.21✎ 17:39 | 
        (56)+ https://github.com/nakagami/firebirdsql
 суть обычный exe (или бинарник под линукс) который запускаешь с параметрами, передав ему параметры подключения, текст запроса sql и имя файла куда писать результат и все в файле результат или в csv или в json | |||
| 58
    
        Черепахыч 09.03.21✎ 17:47 | 
        я тоже недавно парился с этой проблемой
 Смотри. у меня тоже сервер 64 бит. на клиенте ставлю 32 бит. Драйвер да.. 32 битный. Firebird_ODBC_2.0.5.156_Win32.exe или gds32.dll В моем случае работает только на клиенте. Процедуру подключения, использование драйвера пишу на #клиенте на всякий случай кидаю тебе свой 100% рабочий код СКУД система у меня "Тайм контрол" &НаКлиенте Процедура Рефф_ЗаполнитьTimeControl(Команда) Если объект.Табель.Количество()>=0 тогда Если Вопрос("Очистить табличную часть?",РежимДиалогаВопрос.ДаНет)=КодВозвратаДиалога.Да тогда объект.Табель.Очистить(); Конецесли; Конецесли; FBDBAddr = "192.168.2.5/3053:C:\Program Files (x86)\TimeControl\BASE\OKO.FDB"; //где 192.168.2.5/3053 - адрес удаленного сервера с софтиной time Control //C:\Program Files (x86)\TimeControl\BASE\OKO.FDB" - путь базе на удаленном сервере (это не обязательно локальный путь!) //FBDBAddr = "192.168.2.5/3053";//:C:\Program Files (x86)\TimeControl\BASE\OKO.FDB"; FBUserName = "MEGA"; FBUserPass= "STMEGA21"; ConnectionБД =Новый COMОбъект("ADODB.Connection"); ConnectionБД.ConnectionString="driver=Firebird/InterBase(r) driver; //|Dialect=3; |CHARSET=NONE; |Uid=MEGA; |Pwd=STMEGA21; |Dbname="+СокрЛП(FBDBAddr); ConnectionБД.ConnectionTimeOut=15; // и хватит ConnectionБД.CursorLocation=3; Попытка ConnectionБД.Open(ConnectionБД.ConnectionString); //Сообщить("Соединение успешно установлено!"); Исключение Сообщить("Ошибка при установке соединения: "+ОписаниеОшибки()); мСоединение=Неопределено; возврат; КонецПопытки; // //SELECT U.FULLNAME, U.TABNUM, U.DEVICE_UID, G.WORKDATE, G.FACT_MIN_WORK FROM GLOBAL_WORK_BY_DAY(:BDATE, :FDATE,-1,-1,'','',0,'0:00','0:00',0,1,0) G LEFT JOIN USERS U ON (G.UID=U.UID) ORDER BY U.FULLNAME, G.WORKDATE //Входные параметры: //BDATE - начало периода //FDATE - окончание периода // //Выходные поля: //DEVICE_UID - код сотрудника на устройстве //TABNUM - табельный номер //FULLNAME- ФИО //WORKDATE - дата //FACT_MIN_WORK - отработанное время в минутах //BDATE ="'01.11.2020'"; //FDATE ="'30.11.2020'"; BDATE = "'" + Формат( НачалоМесяца(объект.НачалоПериода) , "ДФ=dd.MM.yyyy" )+ "'"; FDATE = "'" + Формат( КонецМесяца(объект.НачалоПериода ) , "ДФ=dd.MM.yyyy" )+ "'"; RS = Новый COMОбъект("ADODB.Recordset"); RS.ActiveConnection = ConnectionБД; RS.CursorType = 1; RS.LockType = 3; //Str = "SELECT U.FULLNAME, U.TABNUM, U.DEVICE_UID, G.WORKDATE, G.FACT_MIN_WORK FROM GLOBAL_WORK_BY_DAY(:BDATE, :FDATE,-1,-1,'','',0,'0:00','0:00',0,1,0) G LEFT JOIN USERS U ON (G.UID=U.UID) ORDER BY U.FULLNAME, G.WORKDATE"; Str = "SELECT U.FULLNAME, U.TABNUM, U.DEVICE_UID, G.WORKDATE, G.FACT_MIN_WORK FROM GLOBAL_WORK_BY_DAY("+BDATE+", "+FDATE+",-1,-1,'','',0,'0:00','0:00',0,1,0) G LEFT JOIN USERS U ON (G.UID=U.UID) ORDER BY U.FULLNAME, G.WORKDATE"; //Str = "SELECT U.FULLNAME, U.TABNUM, U.DEVICE_UID, G.WORKDATE, G.FACT_MIN_WORK FROM GLOBAL_WORK_BY_DAY('01.11.2020','30.11.2020' ,-1,-1,'','',0,'0:00','0:00',0,1,0) G LEFT JOIN USERS U ON (G.UID=U.UID) ORDER BY U.FULLNAME, G.WORKDATE"; попытка RS.Open(Str, ConnectionБД); //Сообщить ("Запрос - ОК"); исключение Сообщить ("Проблемы с выполнением запроса к FireBird"); возврат; КонецПопытки; ТаблицаТаймКонтрол.Очистить(); Пока RS.EOF() = 0 Цикл НовСтрТК = ТаблицаТаймКонтрол.Добавить(); НовСтрТК.ФИО =RS.Fields("FULLNAME").Value; НовСтрТК.Дата = RS.Fields("WORKDATE").Value; НовСтрТК.КоличествоМинут = RS.Fields("FACT_MIN_WORK").Value; НовСтрТК.КоличествоЧасов = НовСтрТК.КоличествоМинут / 60; НовСтрТК.НомерДня = День( НовСтрТК.дата); RS.MoveNext(); КонецЦикла; | |||
| 59
    
        ЧессМастер 10.03.21✎ 18:47 | 
        (49) >У меня вот работает сервер на 32 и подключаюсь я 64 битным клиентом.
 Тогда объясни как может быть такое - если через COMОбъект("ADODB.Connection") через клиента все работает, а при использовании ПараметрыСоединенияВнешнегоИсточникаДанных через сервер с той же строкой подключения выдает Ошибка при вызове метода контекста (УстановитьСоединение): Ошибка ODBC. SQLSTATE: 08004 Номер ошибки: -902 Описание: [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login. я подчеркиваю - С ТОЙ ЖЕ СТРОКОЙ ПОДКЛЮЧЕНИЯ. | |||
| 60
    
        ЧессМастер 10.03.21✎ 18:48 | 
        (50) >С правами там что то. Написано же черным по белому.
 Строка подключения через клиент и через сервер ОДИНАКОВАЯ. Но через клиент работает а через сервер нет. Открываем гугл по поводу ошибки [ODBC Firebird Driver]Your user name and password are not defined. Ask your database administrator to set up a Firebird login. и читаем https://qna.habr.com/q/449495 "Надо было удалить Firebird для 64 bit и установить Firebird для 32 bit. Оказывается файл базы данных созданный в Firebird 32 bit, не открывается в Firebird 64 bit." | |||
| 61
    
        ЧессМастер 10.03.21✎ 18:51 | 
        (52) >Черным по белому там написано не про права, а про логин/пароль.
 Я тебе еще раз говорю Через клиент работает а через сервер нет. С ТОЙ ЖЕ СТРОКОЙ ПОДКЛЮЧЕНИЯ. Я бы понял если бы в строке подключения через клиент было UID=SYSDBA PWD=masterkey а через сервер что то другое. Но строка ОДИНАКОВАЯ. | |||
| 62
    
        Кирпич 12.03.21✎ 10:44 | 
        (60) "Надо было удалить Firebird для 64 bit и установить Firebird для 32 bit. Оказывается файл базы данных созданный в Firebird 32 bit, не открывается в Firebird 64 bit."
 Так это написал такой же специалист как и ты. На самом деле, переустановив Firebird, он просто снес настройки и поставил новые, по умолчанию. | |||
| 63
    
        ЧессМастер 09.04.21✎ 23:39 | 
        (58) Спасибо за помощь. 
 Я сделал на мой взгляд намного удобной и проще. Подключил базу через Внешние источники данных, прописал таблицы. Далее с помощью 1С-ных запросов получаю данные, заполняю ТЗ и подаю на вход СКД. | |||
| 64
    
        ЧессМастер 09.04.21✎ 23:42 | 
        (62) "Так это написал такой же специалист как и ты"
 А ты что телепат что можешь определять квалификацию другого специалиста не видя и не зная что он делал ? Только не надо мне заливать что ты сам всегда со всем разбираешься и никогда не спрашиваешь ни у кого как это сделать. Так не бывает. | |||
| 65
    
        Кирпич 10.04.21✎ 07:35 | 
        (64) "никогда не спрашиваешь"
 Так ты спрашиваешь и не слушаешь, что тебе говорят. Нафиг спрашивать тогда. Специалист ты конечно же хороший, только любой программист усомнится в утверждении, что "файл базы данных созданный в Firebird 32 bit, не открывается в Firebird 64 bit". А ты сходу веришь какому то школьнику, который написал это где то на заборе. | |||
| 66
    
        ДедМорроз 10.04.21✎ 17:54 | 
        На самом деле,там не только от битности зависит,но и от версии - файл,созданный одной версией сервера,на другой не открывается,и в ошибке как раз и пишется,что файл не той версии.
 Ну и потом,для firebird есть ODBC-драйвер как 32 бита,так и 64 и вот битность драйвера должна совпадать с битностью приложения,а совпадение с битностью сервера не требуется. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |