Настройка курсоров на триггерах для 1C 7.7+Selta+Postgresql

09.04.09

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

В новых версиях Selta начиная с 1.0.6 (SQL базы 1С 7.7 в Postgresql) начал применяться более продвинутый подход к SQL-курсорам (пересоздание курсоров основано на триггерах), однако выставлять триггеры на таблицы вручную неудобно. Обработка под 1С77 с использованием 1С++ решает эту небольшую проблему.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Бесплатно
Установка Триггеров на PGSQL
.1239114737 25,90Kb
72
72 Скачать бесплатно

Selta - один из самых необычных и неоднозначных проектов компании Etersoft под 1С 7.7 (и не только), позволяет перевести базы 1C 7.7 c MS SQL на Linux + postgresql при существенной экономии средств.

Несмотря на то, что скорость отчетов и проведения документов 1С в разделенном режиме в 1С 7.7+Selta+Postgresql, уже начиная с первых версий Selta, была сравнима с MS SQL, до версии Selta 1.0.6 существовал существенный недостаток - чрезвычайно медленная работа обновляемых курсоров (дикие тормоза в журналах и справочниках).

К сожалению, в postgresql обновляемые курсоры отсутствуют совсем, такого режима работы просто нет, поэтому до версии Selta 1.0.6 курсоры приходилось пересоздавать каждый раз когда происходило перемещение от одной записи к другой в курсоре, что и приводило к тормозам.

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

Регистрация изменений ведется через триггеры, но как всегда существуют подводные камушки: слишком много триггеров это замедление работы базы (10% (и выше) потери производительности на перепроведении документов на ТиС(Демо) при установке триггеров на все таблицы без исключения).

Компромиссным решением стала возможность создания служебной таблицы, в которой указываются таблицы 1С (по маске или точно), для которых будут использованы триггеры: http://wiki.etersoft.ru/SELTA/cursorstriggers?v=1d19

А поскольку копаться в 1Cv7.DDS неинтересно, а задавать реальные имена таблиц ручками вообще не наш метод, была создана данная обработка.

Использует 1С++ 3й версии, ее надо кинуть в BIN или в каталог ИБ.

Управление основано на "табличном поле" 1С++, поэтому почти никаких кнопок, только перетаскивание и галочки.

Ограничение: запускается только на версии баз под Selta 1.0.6 (на всякий пожарный, но это можно изменить в коде обработки). На MS SQL запуститься не должна и для этого не предназначена!!!

Не забывайте нажать кнопку "Пересоздать", при этом будут внесены все изменения и пересозданы триггеры, таблица изменений выбранных таблиц и обновлено правильное/текущее состояние триггеров в самой форме.

P.S. Разработки etersoft выдаются на тестирование по заявке на e-mail (на 60 дней, насколько я знаю), должно хватить и на предварительные и на боевые тесты.

P.P.S. Разработчики wine@etersoft и selta в основном появляются тут: http://linuxforum.ru/index.php?showforum=58

См. также

Инструментарий разработчика Системный администратор Программист Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Консоль запросов к базе SQL, не требующая внешних компонент

10 стартмани

29.04.2015    22286    57    Gvozdod    8    

16

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

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

1 стартмани

23.04.2014    168392    1882    Alexoniq    1596    

499

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

Согласитесь, что окно стандартное сообщений в 1С иногда приносит больше неудобств, чем пользы. И тем более разные "Предупредить"... Что с этим окном только не делают! Его отцепают от формы, делают маленьким, умудряются спрятать за границы экрана. А потом звонят программистам с претензией, что документ почему-то не проводится, отя ничего и не пишет. У вас такого не было? А вот у нас было и не раз )))

1 стартмани

04.09.2013    33408    61    O-Planet    78    

49

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

На днях встретил вопрос на форуме про возможность внесения изменений в конфигурацию без долгого сохранения в рабочей базе большого объема. Вот решил поделиться опытом, как это делал я. База у нас была объемом порядка 120 Гб. К базе обращался сайт в режиме 24/7, поэтому важно было быстро сохранять изменения и желательно без последующего монопольного запуска для восстановления индексов и процедур и без отключения пользователей от базы. Это первая часть статьи и посвящена она справочникам. С одной стороны - это самый простой объект, с другой стороны, именно про справочник спрашивалось на форуме. Если статья будет востребована, то я напишу аналогичные про документы, регистры и может еще что.

1 стартмани

13.08.2013    21806    Reptile    5    

35

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

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

1 стартмани

14.07.2013    27656    56    adamx    11    

14

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

Давным давно, когда я еще плотно писал на 7.7 работа с формами была мучительной и неудобной. Приходилось каждый элемент выкладывать, выравнивать на форме ручками, прописывать код в модуле. Иногда при разработке очередной формы приходила в голову мысль: "а где-то я уже похожее делал..." и начинался мучительный поиск подходящего кода в своих запасах........

1 стартмани

21.02.2013    18347    36    MarSeN    14    

17

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

Анализируем различные данные в 1С, используя OLAP-технологии со всеми прелестями. Т.е. наглядное отображение данных, быстрые расчеты, горизонтальные и вертикальные группировки любой вложенности, удобная фильтрация, Drag'n'Drop и ещё много приятных вещей от MS. Обработка на входе принимает практически любую таблицу значений (ТЗ в которой колонкам указаны типы значений, строка, число и т.п.), на выходе имеем на форме 1С сводную таблицу и график по этой ТЗ, с которой работаем, как и в Excel со сводной таблицей и диаграммой. Взял за основу разработку «OLAP Анализ счёта» ( http://infostart.ru/public/14964/ ) от JohnyDeath и переделал под любую ТЗ. Опционально используется «Прогресс бар для 1С 77» (http://infostart.ru/public/14061/ ) от Gmix.

1 стартмани

21.12.2012    36349    51    venger    7    

23
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Romarius 16 08.04.09 10:53 Сейчас в теме
Хотелось бы услышать комментарии тех, кто уже использует Selta. А от себе плюс.
Оставьте свое сообщение