Простая работа с MySQL из 1С

Публикация № 370599 22.06.15

Приемы и методы разработки - Инструментарий разработчика

MySQL phpMyAdmin INSERT UPDATE DELETE ODBC внешние источники данных обмен с сайтом putty kitty ssh ssh-туннель

«Класс» для упрощения работы с MySQL из 1С. Позволяет просто выполнять любые виды запросов и получать данные в виде таблицы значений.

Для соединения используется MySQL ODBC Connector

// Подключение к базе данных
ИмяODBC = "local_base";
ИмяБазы = "base_name";
ИмяПользователя = "base_name_user";
Пароль = "*******";

MySQL = Обработки.MySQL.Создать();
MySQL.Инициализация(ИмяODBC, ИмяБазы, ИмяПользователя, Пароль);

Если НЕ MySQL.УстановитьСоединение(Ложь) Тогда
   Сообщить(MySQL.ОписаниеОшибки);
   Возврат Ложь;
КонецЕсли;
// Получение таблицы значений и работа с ней
Запрос = 
"SELECT order_id,
|  order_date,
|  order_summ,
|  order_customer
|FROM tamble_orders
|WHERE order_loaded=""N""";

ТаблицаЗаказов = MySQL.ПолучитьТаблицуЗначенийПоЗапросу(Запрос);	

Если ТаблицаЗаказов = Неопределено Тогда
   Сообщить(MySQL.ОписаниеОшибки);
   Возврат Ложь;	
КонецЕсли;

Если ТаблицаЗаказов.Количество() = 0 Тогда		
   Сообщить("На сайте нет новых заказов для загрузки.");
Иначе				
   Для Каждого СтрокаТЗ ИЗ ТаблицаЗаказов Цикл
      НомерЗаказа = СтрокаТЗ.order_id;
      Покупатель = СтрокаТЗ.order_customer;
   КонецЦикла;
КонецЕсли;
// Добавление новых записей в таблицу базы MySQL
// Одиночная запись
// Соответствие со значениями полей для новой записи таблицы
Товар = Новый Соответствие();
Товар["product_id"] = "158742";
Товар["product_name"] = "1С Управление торговлей 10.3";
Товар["product_price"] = 12000;

// Построение запроса
MySQL.СоздатьЗапрос("INSERT", "table_products", Товар);
// Выполнение
Если НЕ MySQL.ВыполнитьЗапрос() Тогда
   Сообщить(MySQL.ОписаниеОшибки);
   Возврат Ложь;
КонецЕсли;

// Несколько записей
// Массив в который вставляются соответстия
НовыеТовары = Новый Массив();

Товар = Новый Соответствие();
Товар["product_id"] = "158742";
Товар["product_name"] = "1С Управление торговлей, редакция 10.3";
Товар["product_price"] = 12000;
НовыеТовары.Добавить(Товар);

Товар = Новый Соответствие();
Товар["product_id"] = "158743";
Товар["product_name"] = "1С Управление торговлей, редакция 11";
Товар["product_price"] = 12500;
НовыеТовары.Добавить(Товар);

MySQL.СоздатьЗапрос("INSERT", "table_products", НовыеТовары);
Если НЕ MySQL.ВыполнитьЗапрос() Тогда
   Сообщить(MySQL.ОписаниеОшибки);
   Возврат Ложь;
КонецЕсли;
// Обновление полей записи
// Соответствие с новыми значениями полей
Товар = Новый Соответствие();
Товар["product_price"] = 13000;
Товар["product_rest"] = 10;

// В четвертом параметре можно указать условие, по которым осуществляется поиск записей для обновления
MySQL.СоздатьЗапрос("UPDATE", "table_products", Товар, "WHERE product_id='158742'");
Если НЕ MySQL.ВыполнитьЗапрос() Тогда
   Сообщить(MySQL.ОписаниеОшибки);
   Возврат Ложь;
Иначе
   Сообщить("Обновлено товаров: " + MySQL.КоличествоИзменныхЗаписей);
КонецЕсли;
// Выполнение произвольного запроса
Запрос = "DELETE FROM table_products WHERE product_id='158742'";

Если НЕ MySQL.ВыполнитьЗапрос(Запрос) Тогда
   Сообщить(MySQL.ОписаниеОшибки);
   Возврат Ложь;
КонецЕсли;

Есть возможность разбить INSERT запрос с несколькими записями на подзапросы, чтобы не вставлять за раз много значений. Например, при добавлении в таблицу более 1000 записей, можно сделать это 10-ю запросами по 100 записей в каждом. Для этого достаточно вызвать код:

MySQL.ЭлементовВЗапросе = 100;

После этого все массивные INSERTы будут делаться по 100 записей за раз.
Полный текст запроса можно получить так:

MySQL.СоздатьЗапрос("INSERT", "table_products", НовыеТовары);
Сообщить(MySQL.ТекстЗапроса());

В случае, когда прямой доступ к MySQL запрещен, можно воспользоваться ssh-туннелем.  Для этого в обработке есть настройки для запуска Putty.

MySQL.ИспользоватьPutty = Истина;
MySQL.Putty = "c:\Program Files\PuTTY\putty.exe"; // Путь к программе Putty (Kitty)
MySQL.User_put = "ssh_user"; // Имя пользователя для установки ssh-соединения
MySQL.Pass_put = "******"; // Пароль
MySQL.Name_put = "session_name"; // Имя сохраненной сесии Putty с настройками соединения

Скачать файлы

Наименование Файл Версия Размер
MySQL.epf

.epf 8,46Kb
203
.epf 20161208 8,46Kb 203 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. MegaSwitch 24.06.15 09:32 Сейчас в теме
Вот тут что-то похожее, только с использованием внешней компоненты.
2. salexdv 2104 24.06.15 09:55 Сейчас в теме
(1) MegaSwitch, спасибо за ссылку! Внешние компоненты я люблю, но тут все достаточно просто и легко реализуется на встроенном языке. Единственное "неудобство" - это то, что Putty для SSH висит отдельным процессом и никак не контролируется, хотя проблем с этим не возникало.
3. MegaSwitch 24.06.15 15:16 Сейчас в теме
Putty для SSH висит отдельным процессом и никак не контролируется

Вот как раз во этой причине в компоненте встроен ssh-клиент и полностью контролируется из 1С.
Так же, если присвоить СозданныйComObject = Неопределено, соединение автоматически закрывается с освобождением памяти.

У меня была практика использования Putty с 1С, но периодически клиент зависал, и приходилось убивать его руками, т.к. он занимал порт 3306.
К тому же, были какие-то проблемы при работе в клиент-серверном варианте, но какие - уже не помню.
4. salexdv 2104 24.06.15 16:45 Сейчас в теме
(3) MegaSwitch, тут никаких проблем не наблюдается. Putty запустился, обмен выполнился, при закрытии соединения Putty убился и все хорошо.
5. vasyak319 144 24.06.15 17:01 Сейчас в теме
Товар = Новый Соответстие()


Не откомпилируется.
6. salexdv 2104 24.06.15 17:14 Сейчас в теме
(5) vasyak319, спасибо, поправил.
7. ExpertAdmin 28.09.15 18:03 Сейчас в теме
8. salexdv 2104 28.09.15 21:04 Сейчас в теме
(7) Что именно не работает? Какой код выполняете? Какую ошибку возвращает?
9. al2ko 70 07.12.16 15:51 Сейчас в теме
Бодрого времени суток.
А можно при использовании вашего класса реализовать пакетное обновление данных? Используя UPDATE с разными параметрами WHERE?
Есть 20000 строк и их нужно обновить.
Если по одному запросу отрабатывать то 1 час уходит.
10. salexdv 2104 08.12.16 09:02 Сейчас в теме
(9) Здравствуйте! Пока такой возможности нет, но попробую реализовать.
11. salexdv 2104 08.12.16 12:43 Сейчас в теме
(9) Добавил два метода. Работа выглядит так:
MySQL.ОчиститьТекстЗапроса();
MySQL.ДобавитьЗапрос("UPDATE product SET price = '69' WHERE product_id = 1250");
MySQL.ДобавитьЗапрос("UPDATE product SET price = '137' WHERE product_id = 417");
MySQL.ВыполнитьЗапрос();

Чтобы заработало, в настройках соединения необходимо включить "Allow multiple statements" http://take.ms/KOKJR
12. kuril 57 08.12.16 15:43 Сейчас в теме
для получения данных на лету, в том числе в СКД можно использовать внешний источник данных
Прикрепленные файлы:
13. salexdv 2104 08.12.16 16:41 Сейчас в теме
(12) Можно. Обработка больше для изменения данных в базе, хотя читать её тоже удобно.
14. gospodenkods 10.02.17 16:16 Сейчас в теме
Отличный механизм вышел !! Респект автору.
15. nghleb 22.03.19 11:54 Сейчас в теме
Вручную SSH+ODBC работает отлично. Но при запуске в регламентном задании odbc не видит туннель. Куда копать?
16. salexdv 2104 22.03.19 12:29 Сейчас в теме
(15) Если регламентные задания выполняются на сервере, то у пользователя, под которым работает сервер (по умолчанию USR1CV8X) должны быть настроены источники данных ODBC. Возможно, проблема в этом.
user811769; +1 Ответить
17. nghleb 22.03.19 12:51 Сейчас в теме
(16) Да все верно. Это уже к тому моменту попробовал. Плюс к этому PuTTY тоже нужно настраивать под этим пользователем. Спасибо большое!
user811769; +1 Ответить
26. Greek26rusa 2 12.05.20 00:17 Сейчас в теме
MySQL.Инициализация(ИмяODBC, ИмяБазы, ИмяПользователя, Пароль);

{Обработка.MySQL.Форма.Форма.Форма(16)}: Метод объекта не обнаружен (Инициализация)
MySQL.Инициализация(ИмяODBC, ИмяБазы, ИмяПользователя, Пароль);

пытаюсь подключиться.Если вам не трудно можете подсказать почему такая ошибка?
единственно у меня ubuntu
но через workbench я подключаюсь норм
18. mort64ram 24 01.06.19 12:23 Сейчас в теме
Отличный "класс", автор большой молодец, спасибо.
19. maxster545 31.07.19 15:17 Сейчас в теме
соединение через COM в обработке?
20. salexdv 2104 31.07.19 16:12 Сейчас в теме
21. AlenaSa 29 07.11.19 12:08 Сейчас в теме
Все работает! Спасибо автору!
22. pinkz80 149 28.11.19 18:39 Сейчас в теме
отличная работа, спасибо!
23. SD3388 13.01.20 17:54 Сейчас в теме
Добрый день.
Как можно с Вами на прямую связаться по вопросам обработки ?
24. salexdv 2104 13.01.20 21:01 Сейчас в теме
(23) Пишите здесь, постараюсь помочь.
25. portal80 01.02.20 21:57 Сейчас в теме
Добрый вечер! Подключаюсь к базе Mysql через Putty

Само подключение происходит, всплывает окно PUTTY http://prntscr.com/qw58c9


Но дальше всплывает ошибка

{Обработка.MySQL.МодульОбъекта(30)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию

Драйвер устанавливал и 32 и 64 https://dev.mysql.com/downloads/connector/odbc/ отсюда

В чем причина помогите!?
27. Greek26rusa 2 12.05.20 00:59 Сейчас в теме
MySQL.Инициализация(ИмяODBC, ИмяБазы, ИмяПользователя, Пароль);
тут получаю ошибку не понятно что такое инициализация
28. salexdv 2104 12.05.20 09:26 Сейчас в теме
(27) Покажите полный код. Как создаете объект MySQL, обработку встроили в свою конфигурацию?
Должно быть вот так, если делаете так, как описывал я
MySQL = Обработки.MySQL.Создать();
MySQL.Инициализация(ИмяODBC, ИмяБазы, ИмяПользователя, Пароль);
29. Greek26rusa 2 24.05.20 21:22 Сейчас в теме
(28)разобрался а с линукса что то похожее есть?
30. salexdv 2104 25.05.20 09:13 Сейчас в теме
(29) Для linux у меня готового ничего нет
31. salexdv 2104 25.05.20 09:16 Сейчас в теме
(29) Можно попробовать установить ODBC-коннектор для соответствующей ОС, например, отсюда https://dev.mysql.com/downloads/connector/odbc/
Возможно, всё будет работать так, как надо. Сам я этого не пробовал
32. Greek26rusa 2 25.05.20 12:39 Сейчас в теме
(31)это я пробывал. так не срабатывает
33. salexdv 2104 26.05.20 21:14 Сейчас в теме
(32) В linux данная обработка вам мало чем поможет, там можно работать с MySQL только через внешние источники данных. В конфигураторе создаете источник, импортируете таблицы, с которыми хотите работать и делаете то, что вам нужно.
Код для получения данных будет примерно такой:
СтрокаСоединения = "DRIVER={MySQL ODBC 8.0 Unicode Driver};"; // Если установили последний на данный момент отсюда https://dev.mysql.com/downloads/connector/odbc/
СтрокаСоединения = СтрокаСоединения + "SERVER=XXX.XXX.XXX.XX;";
СтрокаСоединения = СтрокаСоединения + "DATABASE=basename;";	

ПараметрыСоединения = ВнешниеИсточникиДанных.MySQL.ПолучитьОбщиеПараметрыСоединения();
ПараметрыСоединения.АутентификацияСтандартная = Истина;
ПараметрыСоединения.АутентификацияОС = Ложь;

ПараметрыСоединения.ИмяПользователя = "username";
ПараметрыСоединения.Пароль = "userpassword";	
ПараметрыСоединения.СтрокаСоединения = СтрокаСоединения;
ПараметрыСоединения.СУБД = "MySQL";

ВнешниеИсточникиДанных.MySQL.УстановитьОбщиеПараметрыСоединения(ПараметрыСоединения);	// MySQL - имя внешнего источника данных в конфигураторе
ВнешниеИсточникиДанных.MySQL.УстановитьСоединение();

Запрос = Новый Запрос("ВЫБРАТЬ * ИЗ ВнешнийИсточникДанных.MySQL.Таблица.customers");
ТаблицаПользователей = Запрос.Выполнить().Выгрузить();
Показать
34. Greek26rusa 2 27.05.20 14:13 Сейчас в теме
(33)Это вариант известен( к сожалению в расширении не работает. не хотелось бы изменять конфигурацию
35. salexdv 2104 27.05.20 14:26 Сейчас в теме
(34) Ну тогда простых решений я не вижу. Остаются только следующие варианты:
1. Ждать пока кто-нибудь напишет нативную компоненту для работы через ODBC.
2. Организовать какую-нибудь прокладку (php, python, java и т.п.), которая будет отдавать и принимать данные
3. Писать обмен через JSON/XML.
Тут третий вариант мне видится самым оптимальным.
А что страшного в добавлении источника данных в конфигурацию? На обновлении это практически не скажется. Весь код взаимодействия с источником можно сделать через расширение или внешнюю обработку. Изменений в конфигурации считай, что нет никаких.
36. mrostovsky 09.07.21 16:48 Сейчас в теме
Всем Доброго...
шоб исправить эту ошибку:
{Обработка.MySQL.МодульОбъекта(30)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан

в модуле обработке необходимо по образу и подобию внести изменения:


// Функция возвращает строку, используемую для подключения к базе MySQL
//
Функция ПолучитьСтрокуСоединения()
	
	//СтрокаСоединения = "DSN=" + СокрЛП(ODBC) + ";";
	//СтрокаСоединения = СтрокаСоединения + "Database=" + СокрЛП(DB) + ";";
	//СтрокаСоединения = СтрокаСоединения + "Uid=" + СокрЛП(User) + ";";
	//СтрокаСоединения = СтрокаСоединения + "Pwd=" + СокрЛП(Pass) + ";";
	
	СтрокаСоединения = "Provider=MSDASQL" + ";";
	СтрокаСоединения = СтрокаСоединения + "DRIVER={MySQL ODBC 8.0 ANSI Driver}" + ";";
	СтрокаСоединения = СтрокаСоединения + "SERVER=192.168.1.4" + ";";
	СтрокаСоединения = СтрокаСоединения + "Database=" + СокрЛП(DB) + ";";
	СтрокаСоединения = СтрокаСоединения + "Uid=" + СокрЛП(User) + ";";
	СтрокаСоединения = СтрокаСоединения + "Pwd=" + СокрЛП(Pass) + ";";
	
	Возврат СтрокаСоединения;
	
КонецФункции
Показать
37. GoR1313 23.05.22 11:53 Сейчас в теме
Спасибо большое! Очень выручила! )))
38. GoR1313 10.06.22 13:37 Сейчас в теме
Так, а вот такой вопрос, напрямую к базе подключается отлично, а вот через putty уже не может. Сможете мне помочь?

	ИмяODBC = "...";
	ИмяБазы = "...";
	ИмяПользователя = "...";
	Пароль = "...";
	
	MySQL = Обработки.MySQL.Создать();
	MySQL.Инициализация(ИмяODBC, ИмяБазы, ИмяПользователя, Пароль);
	
	MySQL.ИспользоватьPutty = Истина;
	MySQL.Putty = "C:\Program Files\PuTTY\putty.exe"; // Путь к программе Putty (Kitty)
	MySQL.User_put = ИмяПользователя;
	MySQL.Pass_put = Пароль;
	MySQL.Name_put = "meters";
	
	Если НЕ MySQL.УстановитьСоединение(Ложь) Тогда
		Сообщить(MySQL.ОписаниеОшибки);		
		Возврат;
	КонецЕсли;
Показать


и вот на установке соединения все и падает с ошибкой:

{РаботаСMySQL Обработка.MySQL.МодульОбъекта(50)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [MySQL][ODBC 8.0(a) Driver]Can't connect to MySQL server on '127.0.0.1:3306' (10061)
39. salexdv 2104 10.06.22 13:41 Сейчас в теме
(38) Putty при этом стартует? Порт в который смотрит ODBC через туннель проброшен в настройках Putty?
40. GoR1313 10.06.22 13:44 Сейчас в теме
(39) да, стартует без проблем. Так, а вот по настройкам подробнее. Порты где надо пробрасывать? У меня только так настроено:
Прикрепленные файлы:
43. salexdv 2104 10.06.22 13:53 Сейчас в теме
(40) Если проброс настроен правильно и сессия putty запущена, тогда тест соединения в настройках ODBC должен проходить успешно.
41. salexdv 2104 10.06.22 13:51 Сейчас в теме
(40) Смысл использовать putty есть тогда, когда порт MySQL на удаленном сервере закрыт для доступа извне. В таком случае можно пробросить порт через туннель на любой порт локальной машины, и уже именно локальный порт указывается в настройках ODBC. Подробнее про проброс портов можно почитать тут
42. GoR1313 10.06.22 13:52 Сейчас в теме
(41) Оки )))) Буду читать! Спасибо!
Оставьте свое сообщение

См. также

Проверка ведения учета (универсальная) Промо

Инструментарий разработчика Анализ учета Платформа 1С v8.3 Запросы Абонемент ($m)

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

2 стартмани

11.08.2020    8430    47    vozhd    4    

Функции "слоупока": как заставить открываться "Все функции" в 97 раз быстрее!

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Наверное, каждый программист 1С (да и не только программист), открывая «Функции для технического специалиста» (ранее «Все функции») на массивных конфигурациях вроде ERP 2.4 и т.п., в своей жизни много раз задавался вопросом – почему же они так долго открываются?? Действительно, в зависимости от мощностей сервера «Все функции» могут открываться от 20 секунд до 2 минут! «Ну, слишком много объектов в конфигурации, огромное количество констант, справочников, документов, регистров… – Отвечали себе страдающие пользователи. – Пока программа обойдёт в цикле все метаданные, пока построит дерево… Тут ничего не поделаешь…». И все они были не правы! Я провёл собственное расследование, которое показало, что 97% времени построения дерева метаданных тратится на…

1 стартмани

09.03.2022    16097    69    XilDen    76    

Программное формирование существующих печатных форм

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Получение списка печатных форм, формирование выбранной печатной формы и сохранение ее в файл.

1 стартмани

17.12.2021    6966    20    RocKeR_13    5    

Универсальный редактор данных (УРД)

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Универсальный редактор данных (УРД) - это лучший инструмент в своем классе, который позволяет редактировать реквизиты и движения объектов

1 стартмани

27.08.2021    12172    187    Adeptus    56    

Тестирование проводок в ЕРП и КА Промо

Инструментарий разработчика Платформа 1С v8.3 1С:ERP Управление предприятием 2 Россия Бухгалтерский учет Абонемент ($m)

Показывает тексты запросов, которыми формируются бухгалтерские проводки по документу. В обработке можно отредактировать тексты запросов и посмотреть, как изменится результат отражения в регл. учете. Также в обработке можно узнать содержание временных таблиц, которые формируются при отражении документа в регл. учете. Обработку рекомендуется использовать для отладки формирования проводок и анализа проблем с отражением в регл. учете.

1 стартмани

02.09.2020    6494    35    JohnConnor    7    

HTTP-клиент

Инструментарий разработчика Платформа 1С v8.3 Мобильная платформа Конфигурации 1cv8 Абонемент ($m)

Подсистема 1С для работы с HTTP.

1 стартмани

28.07.2021    11901    39    SpaceOfMyHead    46    

Подсистема "Показатели объектов"

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Если вашим пользователям нужно вывести в динамический список разные показатели, которые нельзя напрямую получить из таблиц ссылочных объектов, и вы не хотите изменять структуру справочников или документов - тогда эта подсистема для вас. С помощью нее вы сможете в пользовательском режиме создать свой показатель, который будет рассчитываться по формуле или с помощью запроса. Этот показатель вы сможете вывести в динамический список, как любую другую характеристику объекта. Также можно будет настроить отбор или условное оформление с использованием созданного показателя.

2 стартмани

06.03.2021    11909    7    pila86    16    

FormCodeGenerator Программная доработка форм. Часть 2 (Режим работы "Режим сравнения форм") на примере ERP 2.5

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Данная публикация является продолжением описания функционирования обработки "FormCodeGenerator " в режиме сравнения форм и генерирования кода на основании сравнения. Подходит для перевода уже доработанных форм с интерактивной доработки на программную. Данный режим работы обработки снизит издержки при дальнейших обновлениях конфигураций.

5 стартмани

21.12.2020    16020    29    huxuxuya    11    

DataReducer — R-консоль для «1С:Предприятия» Промо

Инструментарий разработчика Платформа 1С v8.3 Анализ и прогнозирование Абонемент ($m)

Программа для обработки, анализа и визуализации данных информационных баз «1С:Предприятия» с использованием возможностей языка программирования R.

10 стартмани

10.07.2017    28800    2    DataReducer    13    

А1Э - альтернативная стандартная библиотека для 1С

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Предлагаю широкой общественности расширение А1Э, используемое в нескольких продуктивных базах для выполнения широкого круга задач.

14.08.2020    19021    0    Enigma    47    

Консоль кода для управляемых форм

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Консоль кода для управляемых форм с подсказками и подсветкой синтаксиса.

1 стартмани

17.07.2020    38953    544    salexdv    399    

Внешний регламент для 1С

Инструментарий разработчика Платформа 1С v8.3 Россия Абонемент ($m)

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

1 стартмани

05.03.2020    14009    14    moolex    12    

Навигатор по конфигурации базы 1С 8.3 Промо

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Абонемент ($m)

Универсальная внешняя обработка для просмотра метаданных конфигураций баз 1С 8.3. Отображает свойства и реквизиты объектов конфигурации, их количество, основные права доступа и т.д. Отображаемые характеристики объектов: свойства, реквизиты, стандартные рекизиты, реквизиты табличных частей, предопределенные данные, регистраторы для регистров, движения для документов, команды, чужие команды, подписки на события, подсистемы. Отображает структуру хранения объектов базы данных, для регистров доступен сервис "Управление итогами". Платформа 8.3, управляемые формы. Версия 1.1.0.89 от 04.08.2022

3 стартмани

28.10.2018    54152    487    ROL32    72    

Консоль запросов 9000

Инструментарий разработчика Платформа 1С v8.3 Запросы Конфигурации 1cv8 Абонемент ($m)

Простая и удобная консоль запросов 1С для управляемых форм 8.3, работает на любой конфигурации без ее модификации. Возможность использования как внешней обработки или в составе расширения. С перехватом любых запросов и поддержкой всех типов данных во временных таблицах. Анализ плана запроса, запроса на уровне СУБД. Обработка результата кодом.

1 стартмани

24.02.2020    36400    615    kuza2000    160    

Конвейер проверки качества кода

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Jenkinsfile для выполнения проверки качества кода. Собирает информацию с АПК, EDT и BSL-LS. Сопоставляет ошибки с гит-репозиторием, выгруженным ГитКонвертором. Отправляет в Сонар.

3 стартмани

04.09.2019    47631    33    Stepa86    46    

Запуск 1С под любым пользователем (без необходимости указания пароля)

Пароли Инструменты администратора БД Инструментарий разработчика Платформа 1С v8.3 Управление правами Конфигурации 1cv8 Абонемент ($m)

Предназначается для запуска сеанса другого пользователя из своего сеанса 1С (если пароль вам неизвестен).

1 стартмани

02.07.2019    37169    423    sapervodichka    0    

Удаление и/или копирование сохраненных в 1С настроек (например настроек печати табличных форм) Промо

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Иногда нужно удалить сохраненную в 1С "покореженную" настройку или скопировать "удачную" другому пользователю...

1 стартмани

01.09.2012    73644    1406    AnryMc    46    

Модель объекта

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Подсистема позволяет описать модель данных объекта, где описана зависимость между реквизитами, и затем использовать эту модель в разных сценариях работы с объектом. Версия платформы: 8.3.6 и выше. С небольшими доработками будет работать на 8.2.

1 стартмани

30.06.2019    21538    2    vadim1980    5    

Переводим рутину ручного тестирования 1C на рельсы Jenkins-а и ADD

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Вы все еще тестируете свои конфигурации 1С вручную? Да вы просто тратите жизнь впустую! В данном туториале попробуем скрестить ADD и jenkins для автоматического запуска тестов.

1 стартмани

03.06.2019    48538    12    ripreal1    92    

Универсальный HTTP-сервис на платформе 1С, аля HTTP-сервер с примером

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

13.05.2019    47298    190    Diversus    44    

Faster - многофункциональный ускоритель работы программиста 1С и других языков программирования Промо

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Программа Faster 9.4 позволяет ускорить процесс работы программиста (работает в любом текстовом редакторе). Подсказка при вводе текста на основе ранее введенного текста и настроенных шаблонов. Программа Faster позволяет делится кодом с другими программистами в два клика или передать ссылку через QR Код. Исправление введенных фраз двойным Shift (с помощью speller.yandex). Переводчик текста. Переворачивает текст случайно набранный на другой раскладке. Полезная утилита для тех, кто печатает много однотипного текста, кодирует в среде Windows на разных языках программирования. Через некоторое время работы с программой у вас соберется своя база часто используемых словосочетаний и кусков кода. Настройка любых шорткатов под себя с помощью скриптов. Никаких установок и лицензий, все бесплатно.

1 стартмани

24.05.2012    91179    975    moolex    157    

Блин, мы забыли включить регламентные задания…

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Привет, Инфостарт! Сегодня расскажу, как я решил проблему с выключенными регламентными заданиями в рабочих базах. Желая исключить человеческий фактор и минимизировать количество ошибок, я написал небольшую конфигурацию.  В конфигурации два регламентных задания. Первое периодически подключается к кластеру и сохраняет текущие параметры: имя, Сервер БД, базу СУДБ, блокировки входа и регламентных заданий и т.д. Второе задание периодически проверяет эти параметры на ошибки.

1 стартмани

08.04.2019    31244    22    slozhenikin_com    37    

Конструктор мобильного клиента Simple WMS Client: способ создать полноценный ТСД без мобильной разработки. Теперь новая версия - Simple UI (обновлено 14.11.2019)

Оптовая торговля Готовая продукция, работы и услуги Розничная торговля Учет ОС и НМА Логистика, склад и ТМЦ Инструментарий разработчика Платформа 1С v8.3 Мобильная платформа Бухгалтерский учет Управленческий учет Абонемент ($m)

Simple WMS Client – это визуальный конструктор мобильного клиента для терминала сбора данных(ТСД) или обычного телефона на Android. Приложение работает в онлайн режиме через интернет или WI-FI, постоянно общаясь с базой посредством http-запросов (вариант для 1С-клиента общается с 1С напрямую как обычный клиент). Можно создавать любые конфигурации мобильного клиента с помощью конструктора и обработчиков на языке 1С (НЕ мобильная платформа). Вся логика приложения и интеграции содержится в обработчиках на стороне 1С. Это очень простой способ создать и развернуть клиентскую часть для WMS системы или для любой другой конфигурации 1С (УТ, УПП, ERP, самописной) с минимумом программирования. Например, можно добавить в учетную систему адресное хранение, учет оборудования и любые другие задачи. Приложение умеет работать не только со штрих-кодами, но и с распознаванием голоса от Google. Это бесплатная и открытая система, не требующая обучения, с возможностью быстро получить результат.

5 стартмани

09.01.2019    72129    283    informa1555    239    

Легкое и гибкое управление списком доступных баз 1С у пользователей

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Когда в локальной сети много пользователей, а еще большое количество различных баз и при этом каждому нужны свои, то администрирование этого зоопарка превращается в АД! Этот комплекс позволяет централизованно управлять списком доступных баз в разрезе пользователей. За пару кликов можно добавить или убрать базу у всех пользователей.

7 стартмани

05.12.2018    27174    27    RomikR    11    

Очистка кэша 1С 8 (8.0, 8.1, 8.2, 8.3). Грамотная чистка кэша 1С с сохранением настроек.

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Эффективное средство для устранения ошибок, возникающих в локальном кэше 1С на клиенте, которым легко сможет воспользоваться пользователь с любым уровнем знаний. Wsf-скрипт, созданный на стандартном языке автоматизации Windows - "WSH JScript", очищает кэш 1С просто, быстро и безопасно. Кроме варианта, очищающего кэш текущего пользователя, имеется также вариант для чистки кэша 1С всех пользователей терминального-сервера.

1 стартмани

04.11.2018    63234    611    Eugen-S    36    

Консоль Внедренца v.3.6.2

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Идея данной обработки заключается в создании простого, функционального и универсального инструментария для внедренцев и программистов 1С, который будет работать как в толстом клиенте на обычных и на управляемых формах, так и в тонком клиенте. Интерфейс и логика работы максимально идентичны у обычных форм и управляемых. Инструментарий включает в себя: Консоль кода, Консоль запросов, Консоль отчетов (СКД), Универсальную обработку объектов, Средства для работы с таблицами базы данных 1С, Редактирование регистров сведений базы, Инструмент по работе с табличными документами - загрузка данных из табличного документа.

1 стартмани

27.08.2018    48185    505    evvakra    42    

HTTP Сервисы: Путь к своему сервису. Часть 3

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Продолжение статьи «HTTP Сервисы: Путь к своему сервису. Часть 2». В предыдущих частях мы использовали только Get, в этой части поговорим о других методах и длительных операциях.

1 стартмани

27.08.2018    70591    85    dsdred    17    

Управляемая консоль запросов, отчетов 3.8.9 (расширение, внешняя обработка)

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Конфигурации 1cv8 Абонемент ($m)

Работа с запросом и СКД, Полная поддержка пакетных запросов, временных таблиц, Сравнение результатов, текстов, Разбор структуры запроса в виде дерева, Анализ плана запроса, Групповая обработка

5 стартмани

14.08.2018    147671    3375    Evg-Lylyk    798    

Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Данная публикация содержит в себе редактор и интерактивную карту склада или иного помещения, на которой в реальном времени отображается позиция устройства, координаты которого вычисляются по уровням сигнала нескольких роутеров Wi-Fi. В статье и приложенным к ней разработкам предлагаются инструменты и методика для реализации вычисления точной геопозиции внутри помещений с помощью нейронной сети. Конфигурация написана на релизе 1С:Предприятие 8.3.12.1412, клиентское приложение имеет минимальный уровень совместимости SDK -16.

5 стартмани

09.08.2018    42888    35    informa1555    30    

Консоль HTTP-запросов с генерацией кода

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Консоль HTTP-запросов, которая не только выполняет запросы и получает результат их выполнения, но и генерирует необходимый код. Использую на 8.3.11.2899.

1 стартмани

25.05.2018    39976    376    leongl    20    

Регистры правил [Расширение]

Инструментарий разработчика Платформа 1С v8.3 Управление правами 1С:Управление торговлей 11 Абонемент ($m)

Регистры правил - права доступа, запрет редактирования, автоподстановка реквизитов и т.д.

10 стартмани

15.03.2018    28969    33    33lab    5    

Заполняем по шаблону (по умолчанию)

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

08.02.2018    40700    25    mvxyz    17    

Паузы при исполнении кода (Sleep для 1С)

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Решил проверить все найденные варианты паузы для 1С. В результате получилась обработка для тестирования и небольшая статья с итогом.

1 стартмани

28.11.2017    90251    22    swimdog    57    

Программное формирование форматированной строки в стиле html+inline CSS

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Если вам приходилось работать с форматированными строками программно, то вы знаете, какая это боль. Данное решение облегчает программное формирование таких строк.

1 стартмани

18.11.2017    53348    56    bonv    13    

Быстрое удаление неиспользуемых версий 1С:Предприятие 8, кэша метаданных и информационных баз

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

При обновлении платформы 1С:Предприятие 8 предыдущие версии не удаляются. Со временем количество неиспользуемых версий платформы растет. Они занимают место на диске. Для решения этой проблемы предназначена программа OneCleaner. Она позволяет быстро удалить неиспользуемые версии платформы, а также почистить кэш метаданных и удалить ненужные информационные базы данных.

1 стартмани

14.11.2017    35092    103    bonv    15    

Трансформатор 1С - SQL

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Обработка для представления SQL запросов в терминах 1С, с возможностью захвата SQL запросов трассировкой.  Поддерживается также форматирование текста запроса через интернет сервис. Работает в управляемых и обычных формах, в том числе на веб-клиенте.

1 стартмани

28.06.2017    50196    426    Synoecium    54    

Набор подсистем "Умные таблицы"

Инструментарий разработчика Платформа 1С v8.3 Беларусь Россия Казахстан Абонемент ($m)

Данный набор подсистем – прикладная библиотека, призванная помочь программисту 1С быстрее решать ряд типовых задач бизнес-логики, таких как: ведение статусов объектов, отправка почтовых сообщений в определенное время, ведение произвольных таблиц с возможностью редактирования, сохранения и группировки, ориентированные на расчет бюджетных таблиц (план продаж, ретробонусы B2C, проценты по договорам B2B и договорные условия по КАМ), расчет коммерческой политики для бюджетных таблиц, исполнение произвольных алгоритмов с хранением кода в информационной базе, определение рабочих баз, хранение файлов во внешних СУБД (Postgre SQL, MS SQL и MongoDB) и выполнение произвольного кода после изменений ссылочного объекта вне транзакции изменения.

1 стартмани

22.05.2017    44535    117    Silenser    34    

Автокликер для 1С

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

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

1 стартмани

03.04.2017    42845    87    slava_1c    67    

Регулярные выражения – это просто. Построитель и отладчик регулярных выражений

Инструментарий разработчика Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Предлагается к использованию построитель регулярных выражений. Выполненный в виде внешней обработки, он позволит строить сложно-структурированные выражения на основе параметрического описания, тестировать их, и в результате получить программный код 1С.

1 стартмани

13.03.2017    46949    132    romasna    54    

Сценарное тестирование в помощь программисту 1С

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Альтернативное решение для организации сценарного тестирования конфигураций, разработанных на управляемых формах

1 стартмани

11.11.2016    36421    62    grumagargler    62    

Несколько шаблонов для доработки типовых конфигураций

Инструментарий разработчика Платформа 1С v8.3 Управляемые формы Абонемент ($m)

Предлагаю несколько каркасов для создания новых объектов в типовых конфигурациях. Это выжимка из кода нескольких конфигураций, которая позволит быстро и красиво создавать и дорабатывать объекты метаданных с соблюдением идеологии исходной системы

1 стартмани

03.10.2016    48374    106    json    26    

Управление задачами: Канбан доска

Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Конфигурация "Управление задачами" с использованием БСП. Канбан доска. Открытый код.Загрузка изменений из хранилища конфигураций 1С и связь с задачами. Проект выложен на github (ссылка в публикации). Управляемые формы. Рассылка уведомлений.

1 стартмани

02.10.2016    93359    726    BlizD    330