|   |   | 
| 
 | Прямое подключение к собственной базе SQL из самой базы 1С ↓ (mikecool 04.02.2021 12:06) | ☑ | ||
|---|---|---|---|---|
| 0
    
        Вася Теркин 03.02.21✎ 13:17 | 
        Есть какая-то стандартная функция, возвращающая соединение к SQL собственной базы? Надо UPDATE запустить. Типовая вещь должна быть вроде.     | |||
| 1
    
        1Сергей 03.02.21✎ 13:17 | 
        СтрокаСоединенияИнформационнойБазы     | |||
| 2
    
        ДенисЧ 03.02.21✎ 13:17 | 
        Типовой не может быть. Ибо это запрещено лицензией.     | |||
| 3
    
        vicof 03.02.21✎ 13:19 | 
        По-моему автору надо обновить данные в левой базе.     | |||
| 4
    
        vicof 03.02.21✎ 13:20 | 
        Но для этого нужны 5 секунд поиска и 1 примитивнейший запрос в поисковик     | |||
| 5
    
        SiAl-chel 03.02.21✎ 13:28 | 
        (0) С чего это типовая вещь и почему она должна быть? 1С в клиент-сервере - это трехзвенка, доступ до СУБД никто не обещал.     | |||
| 6
    
        Вася Теркин 03.02.21✎ 13:55 | 
        (1) Это только параметры, а я хочу 
 ВыполнитьНаSQL("UPDATE .... SET ... = ... FROM (SELECT .......) TT WHERE ... ") И всё! | |||
| 7
    
        Вася Теркин 03.02.21✎ 13:57 | 
        В общем за все эти годы одинэсники даже самое простое не написали...     | |||
| 8
    
        DrShad 03.02.21✎ 13:58 | 
        зачем писать? выполни в консоли скуля     | |||
| 9
    
        acht 03.02.21✎ 13:58 | 
        (7) Ага. Извини, пожалуйста - придется тебе самому. Справишся?     | |||
| 10
    
        ДенисЧ 03.02.21✎ 14:01 | 
        (7) Они написали самое простое. То, что обычно не читают. Называется "лицензионное соглашение".     | |||
| 11
    
        Вася Теркин 03.02.21✎ 14:02 | 
        (8) Мы не про скуля. 
 Вот чего-то нашел ??????infostart.ru/1c/articles/236956/ Функция ПолучитьВнутрСсылкуПоНомеру(Номер,Объект) Экспорт БуфЗапрос = "Select master.dbo.fn_varbintohexstr([_IDRRef]) From _"+ПолучитьНаименованиеОбъектаБД(Объект)+" Where _Number like '"+Строка(Номер)+"'"; Возврат ПолучитьЗначениеИзБазы(БуфЗапрос); КонецФункции | |||
| 12
    
        ДенисЧ 03.02.21✎ 14:05 | 
        (11) И что тебе в этой статье не понятно? Там же всё черным по белому расписано...     | |||
| 13
    
        Вася Теркин 03.02.21✎ 14:08 | 
        (11) Готовой функции ПолучитьЗначениеИзБазы нет в статье. Написано что есть ADODB или SQLOLEDB или... А готового нет. 
 Зачем понятия подменять? при чем тут "понятно" и "есть готовое"? Там написано "Учимся получать доступ к СУБД из 1С." Чем оно готовое? Как раз наоборот... | |||
| 14
    
        Вася Теркин 03.02.21✎ 14:09 | 
        В статье тоже не готовое. Хотя на готовое ПолучитьЗначениеИзБазы в примерах ссылает.     | |||
| 15
    
        ДенисЧ 03.02.21✎ 14:10 | 
        (13) Всё разжевано, осталось взять и научиться.     | |||
| 16
    
        Вася Теркин 03.02.21✎ 14:12 | 
        Как это связано с тем, что ПолучитьЗначениеИзБазы нет?     | |||
| 17
    
        Вася Теркин 03.02.21✎ 14:14 | 
        Штаны тоже можно научиться шить самому, все разжевано. Бурда моден а не среда...     | |||
| 18
    
        acht 03.02.21✎ 14:17 | 
        (17) Делегируй подчиненному     | |||
| 19
    
        1Сергей 03.02.21✎ 14:22 | 
        Полыхает     | |||
| 20
    
        Вася Теркин 03.02.21✎ 14:31 | 
        "Есть какая-то стандартная функция, возвращающая соединение к SQL собственной базы?" - и каждый как обычно разговаривает что-то свое.  А по теме нечего сказать?     | |||
| 21
    
        1Сергей 03.02.21✎ 14:32 | 
        (20) ответ в (2)     | |||
| 22
    
        Вася Теркин 03.02.21✎ 14:33 | 
        864666 попытка завести тематическую ветку... 
 "Видимо, место здесь такое" (с) Жмурки | |||
| 23
    
        Вася Теркин 03.02.21✎ 14:34 | 
        (21) Значит автор и ему подобные врут про ПолучитьЗначениеИзБазы(ТекстЗапросаSQL)?     | |||
| 24
    
        acht 03.02.21✎ 14:35 | ||||
| 25
    
        Вася Теркин 03.02.21✎ 14:38 | 
        +(23) есть в открытой публикации хоть одна такая функция?
 (24) Не Жужжите... | |||
| 26
    
        dmpl 03.02.21✎ 14:45 | 
        (0) Доступ к БД иначе как средствами 1С запрещен лицензионным соглашением. А 1С не предоставляет прямого доступа к базе, потому что 90% 1Сников положат базу, будь у них такая возможность. Запускать UPDATE при работающем серверном процессе - вообще за гранью добра и зла. У сервера есть свой кеш, и он не рассчитан на то, что кто-то будет запускать UPDATE в базе.     | |||
| 27
    
        Вася Теркин 03.02.21✎ 14:47 | 
        (26) В соседней ветке один друг пытается 470 000 пачек сигарет отгрузить одной фурой и у каждой пачки своя марка.... А после этого ему надо базу 1С свернуть по прошлым периодам. Что же будет делать 1С в связи с этим?     | |||
| 28
    
        VladZ 03.02.21✎ 14:51 | 
        (27) Доработает интерфейс программы, чтобы коробки лучше продавались.     | |||
| 29
    
        Вася Теркин 03.02.21✎ 14:51 | ||||
| 30
    
        Вася Теркин 03.02.21✎ 14:52 | 
        (28) Какой интерфейс? Будут блокнотики и карандашик в коробку вкладывать? Скажут "работайте на мягких регистрах"...     | |||
| 31
    
        Вася Теркин 03.02.21✎ 14:53 | 
        1С - ничто не работает так долго     | |||
| 32
    
        hhhh 03.02.21✎ 14:58 | 
        (31) ну иди в фузину. Зачем в 1с пришел? Изначально же понятно, что это тормоза?     | |||
| 33
    
        Вася Теркин 03.02.21✎ 15:04 | 
        (32) Изначально была 2.0 проф.     | |||
| 34
    
        Вася Теркин 03.02.21✎ 15:04 | 
        Ладно, пойду домой, работе конец     | |||
| 35
    
        dmpl 03.02.21✎ 15:12 | 
        (27) 1С тут не лимитирующий фактор. Ведь эти коды надо еще сосканировать каждый ;)     | |||
| 36
    
        sitex naïve 03.02.21✎ 15:27 | 
        (0) Чего сложного через ADODB.Connection порубиться, и делай что хочешь.     | |||
| 37
    
        Вася Теркин 04.02.21✎ 06:12 | 
        (35) Да, давно пора перевести на rfid. А потом заказать в Китае сканеры, которые полмиллиона кодов за раз берут. Кетайцы оху@ют и пришлют две деревни крестьян в контейнере.
 (36) Чего сложного написать свою ОС на ассемблере. были люди в наше время, Не то, что нынешнее племя: Богатыри — не вы! Плохая им досталась доля: | |||
| 38
    
        ДенисЧ 04.02.21✎ 06:23 | 
        (37) Да, Вася... Тебе до твоего тёзки - как Маску до Альфы Кассиопеи в позе гордого моллюска...     | |||
| 39
    
        2mugik 04.02.21✎ 06:34 | 
        (37)обычно говорят я делал то-то и то-то.Что не получилось. А ты  ничего не сделал, не попробовал, а просто требуешь готовое. "А кушать вы за меня тоже будете?" Ага!     | |||
| 40
    
        Вася Теркин 04.02.21✎ 07:13 | 
        (38) Одинэсу до консоли скуля видимо ближе.
 (39) Кто кому говорят? В смысле чтобы функция появилась нужно позаклинать? | |||
| 41
    
        Sserj 04.02.21✎ 07:48 | 
        Да чего же вы такие злые то все :)
 Человеку нужно соединение с БД на прямую, для которого и через ADODB.Connection нужены Логин/Пароль на SQL, не говоря уже о адресе сервера и имени БД, которые можно получить средствами 1С. Логин/Пароль нельзя получить из снеговика. | |||
| 42
    
        SiAl-chel 04.02.21✎ 07:52 | 
        (39) Точно.
 (40) Нет, заклинанание не надо. Надо миллион долларов и личная встреча с братьями Нуралиевмыи, чтобы они за эти деньги дали команду своим наемным работникам добавить в платформу "1С:Предприятие 8" ту функциональность, что тебе нужно. ПыСы: сумма взята с потолка, реальная сумма выяснится после того, как сторгуешься с братьями Нуралиевмыи | |||
| 43
    
        SiAl-chel 04.02.21✎ 07:54 | 
        +(42) Читать: братья Нуралиевы. Это была опечатка, а не коверкание.     | |||
| 44
    
        ДенисЧ 04.02.21✎ 07:57 | 
        (43) Хорошо, что "сёстры" не написал ))     | |||
| 45
    
        SiAl-chel 04.02.21✎ 08:08 | 
        (44) Даже и не думал. Чай это Нуралиевы, а не Вачовски.     | |||
| 46
    
        Йохохо 04.02.21✎ 08:18 | 
        (45) у нас на районе в слове хлеб другая ошибка     | |||
| 47
    
        ADirks 04.02.21✎ 08:18 | 
        (40) а ты думал, функции сами появляются?     | |||
| 48
    
        ДенисЧ 04.02.21✎ 08:19 | 
        (47) А что, нет? О_О     | |||
| 49
    
        Вася Теркин 04.02.21✎ 08:22 | 
        (41) У снеговика оно все уже есть. Иначе как он в скуль ходит?
 (44) Сестры сделали матрицу, а у этих сплошное дежавю.... Все чего-то меняют. (45) Ни разу пока. (47) Нет, их в муках рожают. (48) Не подсказывай. | |||
| 50
    
        ADirks 04.02.21✎ 08:25 | 
        (48) восхищённый зритель видит чудо, и радуется
 а где-то в сторонке кто-то читает заклинание. потому и магия. | |||
| 51
    
        Вася Теркин 04.02.21✎ 08:29 | 
        (50) А где функция-то? Расскажите подробнее чего Нуралиевы читают.     | |||
| 52
    
        Вася Теркин 04.02.21✎ 08:30 | 
        У майкрософта консоль, у оракла SQL*Plus, а у 1С - лицензионное соглашение.     | |||
| 53
    
        ДенисЧ 04.02.21✎ 08:32 | 
        (52) У 1са тоже есть консоль. И не одна. Для своего языка.     | |||
| 54
    
        Вася Теркин 04.02.21✎ 08:36 | 
        Который за 100 часов делает то, что напрямую выполняется за 25 секунд..     | |||
| 55
    
        ДенисЧ 04.02.21✎ 08:39 | 
        (54) А напрямую ты все обработчики Перед и При записи вызвал? А подписки?     | |||
| 56
    
        Йохохо 04.02.21✎ 08:46 | 
        (52) попробуй "Select master.dbo.1c_doupdategracefully .."     | |||
| 57
    
        Вася Теркин 04.02.21✎ 08:49 | 
        (55,56) Оно мне надо? надо (0) и (6)     | |||
| 58
    
        Вася Теркин 04.02.21✎ 08:50 | 
        Нужна эффективность и непосредственный доступ.     | |||
| 59
    
        ДенисЧ 04.02.21✎ 08:51 | 
        (57) Тебе не надо. А вот 1су и данным - надо.     | |||
| 60
    
        Вася Теркин 04.02.21✎ 09:01 | 
        (59) Пруф?     | |||
| 61
    
        ДенисЧ 04.02.21✎ 09:03 | 
        (60) Пруф на что? На то, что 1с работает через объектную модель и у каждой записи могут быть обработчики событий? Так это тебе в книжки для начинающих...     | |||
| 62
    
        Вася Теркин 04.02.21✎ 09:25 | 
        (61) В книжках есть про внешний источник данных (ВИД). Там никаких событий вроде нет, но ограничения на изменение данных. Никакой объектной модели. Как раз чтобы её не обошли и не построили на ВИД свои быстрые регистры и прочее введено ограничение, а так же Лицензионным соглашением. Не может одинэска конкурировать с другими решениями по скорости.     | |||
| 63
    
        SiAl-chel 04.02.21✎ 09:29 | 
        (62) Совсем запутал. Ты же вроде хотел получить программный доступ до таблиц самой базы, а теперь говоришь о внешних источниках данных. Чего в итоге-то ты хочешь? Или ты просто стебешься тут на форуме?     | |||
| 64
    
        ДенисЧ 04.02.21✎ 09:29 | 
        (62) Вот интересно... А почему ты не хочешь записать в базу SQL напрямую, редактируя секторы на диске? Это ж какая скорость получается!     | |||
| 65
    
        Йохохо 04.02.21✎ 09:49 | 
        (63) мстит, ему ёлку не передвинули     | |||
| 66
    
        dmpl 04.02.21✎ 10:15 | 
        (36) ... и положить базу :) См. выше про 90%.     | |||
| 67
    
        Вася Теркин 04.02.21✎ 10:17 | 
        (63) Сейчас единственный способ получить из платформы прямой доступ к таблице - внешние источники данных. но как этим механизмом сделать update собственных РС? Остается только искать готовую функцию в интернете. Н о тут в статьях ссылки на такой функционал есть, а самого функционала нет (11).     | |||
| 68
    
        Вася Теркин 04.02.21✎ 10:18 | 
        (65) елку кто-то скурил давно. Это не ко мне.     | |||
| 69
    
        dmpl 04.02.21✎ 10:18 | 
        (54) А потом месяц восстанавливать базу и еще год ловить глюки...     | |||
| 70
    
        Вася Теркин 04.02.21✎ 10:19 | 
        (26) С кэшем опять же недоработка 1С.
 (69) Все отлично получилось из консоли скуля... | |||
| 71
    
        dmpl 04.02.21✎ 10:22 | 
        (67) Никак. Потому что никто кроме разработчиков платформы не сможет сделать это правильно. Это уже не говоря про поддержание когерентности кеша и блокировок.     | |||
| 72
    
        dmpl 04.02.21✎ 10:24 | 
        (70) Уверен что ничего не поломалось, и оно при очередной реструктуризации или пересчете итогов не вылетит с дампом? А на новой платформе?     | |||
| 73
    
        Вася Теркин 04.02.21✎ 10:27 | 
        (71) Тогда почему в интернете пишут статьи типа (11) . Это же не какой-нибудь haknivseh.mn
 (72) Застрелюсь... | |||
| 74
    
        acht 04.02.21✎ 10:37 | 
        (73) > Застрелюсь
 А на форум потом напишешь? А то как же мы узнаем? | |||
| 75
    
        Вася Теркин 04.02.21✎ 10:45 | 
        Сосредоточимся на обсуждении сабжа. Слухи о моей скорой кончине преувеличены.     | |||
| 76
    
        acht 04.02.21✎ 10:49 | 
        Эх. Не тебе судить, человек, о сроках своей кончины.     | |||
| 77
    
        Вася Теркин 04.02.21✎ 10:51 | 
        Про Кисловодск в соседней ветке обсуждают.     | |||
| 78
    
        SiAl-chel 04.02.21✎ 10:51 | 
        (67) Нет. Это не единственный. Тут уже говорили про ADODB. Но тебе в обоих случаях надо знать имя базы, имя сервера СУБД, а также логи и пароль для доступа к ним. 1С версии 8 в клиент-сервере - это трех-звенка. При трех-звенке (хоть 1С, хоть Аксапта или что-то там такое) клиент ничего не знает о СУБД и способах прямой работы с таблицами.     | |||
| 79
    
        SiAl-chel 04.02.21✎ 10:54 | 
        (73) Какой-нибудь SELECT - это еще пол-беды, но чтобы делать UPDATE в таблицы СУБД - это тоже, что прогулка по парапету 200-этажного здания. Можно получить кайф от крутизны, а можно и фотографию в черной рамке на красивом памятнике.     | |||
| 80
    
        Вася Теркин 04.02.21✎ 10:57 | 
        (79) Хорошо. А метод готовый есть?     | |||
| 81
    
        Вася Теркин 04.02.21✎ 10:58 | 
        (78) Для  внешних источников данных или для вэбсервисов тоже строку подключения надо и пароли всякие.... Это никого не останавливало от применения готовых методов.     | |||
| 82
    
        acht 04.02.21✎ 10:59 | 
        (80) Есть, но я тебе не дам. Недостоин.     | |||
| 83
    
        Вася Теркин 04.02.21✎ 11:01 | 
        (82) Ты то тут при чем?     | |||
| 84
    
        SiAl-chel 04.02.21✎ 11:01 | 
        (80) Встроенного в платформу - нет. Еще раз прочти, что такое 3-звенная клиент-серверная система. Но ты можешь хранить данные о подключении к базе на СУБД в ИБ 1С и подключаться программно через ADODB.     | |||
| 85
    
        Вася Теркин 04.02.21✎ 11:02 | 
        (84) в (11) врут?     | |||
| 86
    
        acht 04.02.21✎ 11:02 | 
        (83) Потому что у меня есть.     | |||
| 87
    
        Вася Теркин 04.02.21✎ 11:02 | 
        (87) Пруф     | |||
| 88
    
        SiAl-chel 04.02.21✎ 11:07 | 
        (85) Читай это https://v8.1c.ru/platforma/klient-servernyy-variant-raboty/
 Нет, в (11) не врут, но функция ПолучитьЗначениеИзБазы() - это не платформенная возможность, это ручками написанная функция. А вот в ней, скорее всего, и будет подключение к СУБД через ADODB. Ищи автора этого кода и требуй от него текст этой функции. Хочу узнать: пошлет он тебя учиться или просто пошлет? | |||
| 89
    
        DrZombi гуру 04.02.21✎ 11:08 | 
        (88) Я бы поставил, он пошлет его на первые курсы программированию, из 3-рех букв :)     | |||
| 90
    
        Вася Теркин 04.02.21✎ 11:09 | 
        Типовой открытой нет, значит я прав.     | |||
| 91
    
        SiAl-chel 04.02.21✎ 11:09 | 
        (89) СУЦ - сертифицированный учебный центр. Он?     | |||
| 92
    
        DrZombi гуру 04.02.21✎ 11:09 | 
        (90) Держи... http://catalog.mista.ru/1c/articles/80730/
 Попытка Соединение = Новый COMОбъект("ADODB.Connection"); ДатаЛ = Новый COMОбъект("DataLinks"); ДатаЛ.PromptEdit(Соединение); Исключение Предупреждение("Не удалось создать подключение!"); КонецПопытки; | |||
| 93
    
        acht 04.02.21✎ 11:10 | 
        (87) Сиськи     | |||
| 94
    
        SiAl-chel 04.02.21✎ 11:10 | 
        (90) В чем прав? Тебе функционал, возможность нужны или добиться от всех признания, что ты прав?     | |||
| 95
    
        DrZombi гуру 04.02.21✎ 11:10 | 
        (91) Там еще Буква "Х" и "Й", но почти угадал :)     | |||
| 96
    
        SiAl-chel 04.02.21✎ 11:10 | 
        (92) DataLinks - это из какой ВКашечки?     | |||
| 97
    
        Вася Теркин 04.02.21✎ 11:11 | 
        (94) Функционал типовой готовый. Где он есть     | |||
| 98
    
        DrZombi гуру 04.02.21✎ 11:11 | 
        (97) https://tavalik.ru/podklyuchenie-k-sql-serveru-iz-1s/
 Вот еще... 2. Подключение к SQL-серверу &НаКлиенте Процедура ВыполнитьОбработку(Команда) //Инициализация переменных ИмяСервераSQL = "WIN2012\TEST_SQL"; ПользовательSQL = "UserDB"; ПарольSQL = "Pass123456"; БазаДанныхSQL = "TestDB"; ТаблицаSQL = "Table_1"; ///////////////////////////////////////// //Подключение к SQL-серверу Попытка Соединение = Новый COMОбъект("ADODB.Connection"); Команда = Новый COMОбъект("ADODB.Command"); Выборка = Новый COMОбъект("ADODB.RecordSet"); Соединение.ConnectionString = "driver={SQL Server};" + "server="+ИмяСервераSQL+";"+ "uid="+ПользовательSQL+";"+ "pwd="+ПарольSQL+";"+ "database="+БазаДанныхSQL+";"; Соединение.ConnectionTimeout = 30; Соединение.CommandTimeout = 600; //Открытие соединение Соединение.Open(); Команда.ActiveConnection = Соединение; Сообщить("Успешное подключение!"); Исключение Сообщить(ОписаниеОшибки()); Возврат; КонецПопытки; КонецПроцедуры | |||
| 99
    
        Вася Теркин 04.02.21✎ 11:12 | 
        (99) Это уже по теме.     | |||
| 100
    
        DrZombi гуру 04.02.21✎ 11:13 | 
        (97) Нет его 1С не работает с прямым обращением к СУБД.
 Есть кончено "Внешние источники данных", но они работаю т через Задний проход, и по большей части считывают Терабайты ненужной онформации... Да и вообще работают "плохо", не по людски | |||
| 101
    
        Вася Теркин 04.02.21✎ 11:13 | 
        Теперь в интернете будет готовое решение в открытом доступе. Отлично.     | |||
| 102
    
        DrZombi гуру 04.02.21✎ 11:13 | 
        (101) Куда будет, учись пользоваться гуглом, или Яндексом :)     | |||
| 103
    
        acht 04.02.21✎ 11:13 | 
        (96) MSDASC     | |||
| 104
    
        SiAl-chel 04.02.21✎ 11:15 | 
        (99) Тебе про эту тему с первых постов люди писали.     | |||
| 105
    
        Salimbek 04.02.21✎ 11:24 | 
        (101) Так то GameWithFire еще на заре восьмерки было. Но играть с огнем - опасно...     | |||
| 106
    
        Вафель 04.02.21✎ 12:04 | 
        (101) но тут нужно пароль скл знать. А он не всегда известен     | |||
| 107
    
        Вася Теркин 04.02.21✎ 12:32 | 
        (104) Рабинович мне напел.
 (106) Раз я в консоль скуля влез значит у меня админ есть знакомый как минимум. Или сам я хуже админа... | |||
| 108
    
        sitex naïve 04.02.21✎ 12:38 | 
        (66) Ну не для кривых рук писалось сообщение выше.     | |||
| 109
    
        dmpl 04.02.21✎ 13:06 | 
        (108) А пряморукий не станет лезть в работающую базу с UDPATE в обход сервера 1С.     | |||
| 110
    
        Вася Теркин 05.02.21✎ 06:50 | 
        (109) Ну да, особенно если какой-то ресурс или общий реквизит надо добавить В РС и заполнить за последние 20 лет.     | |||
| 111
    
        SiAl-chel 05.02.21✎ 06:56 | 
        (110) И нафига?     | |||
| 112
    
        Вася Теркин 05.02.21✎ 08:30 | 
        (111) Надо.     | |||
| 113
    
        Вася Теркин 05.02.21✎ 08:30 | 
        Для анализа надо.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |