Инструментарий 1с7.7 на данный момент очень устарел и в связи с развитием сферы информационных технологий перед программистом 1с на платформе версии 7.7 всё чаще встают задачи, которые невозможно или очень затруднительно решать с помощью стандартного инструментария. Наличие внешних компонент (ВК) делает безрадостную жизнь программиста 1с на семерке более-менее сносной.
В данной статье я хочу перечислить ситуации, когда мне приходилось прибегать к использованию внешних компонент и показать на примерах, какие возможности открываются для 1с7.7 при их использовании.
formex.dll
- Раскраска табличных частей.
- Перехват событий элементов диалога формы.
- Перехват событий мыши и клавиатуры. Тут, кажется, всё понятно. Тоже использую, но нет подходящего примера.
- Таймер.
- Работа с активным контекстом и т.д..
(В дальнейшем была интегрирована в 1cpp.dll).
http://www.dorex.pro
1cpp.dll
- Создание пользовательских классов. Такой возможности программист 1с не имеет даже в последующих версиях платформы. С помощью данной библиотеки пользователь может создавать собственные классы и наследовать от них. Доступно так же использование классов сторонних разработчиков. Я пользовался классами "ПоставщикДанных"(близок по функционалу к элементу формы "Табличное поле" в 1с8) и классом "ПрямойЗапрос"(Позволяет использовать язык запросов, подобный языку запросов 1с8).
- Сжать данные в zip архив/получить из zip. Я использовал этот функционал, когда требовалось обновить данные об остатках по всей сети в распределенных базах.
Использование прямых запросов. Позволяет использовать язык запросов SQL(TSQL, SQLite) для получения данных из таблиц базы напрямую. Встроенный парсер позволяет разработчику для построения запросов использовать понятные названия полей таблиц. Есть так же визуальный редактор запросов qryMaker. С помощью прямых запросов к базе решал самый широкий круг задач, а именно: заменял стандартное получение данных с помощью встроенного языка и штатных запросов (значительное повышение производительности и скорости получения данных), получал данные из других баз на том же сервере, делал выгрузку в интернет-магазин Joomshoping на Joomla, получал данные из excel и т.д..
Использование дополнительных встроенных объектов: ИндексированнаяТаблица, ТабличноеПоле, Перехватчик. http://www.1cpp.ru
spredsheat.dll
- Сохранение таблиц в формат excel. Добавил ко всем штатным отчетам и не только возможность сохраняться сразу в excel.
- Группировка строк и колонок.
- Получение данных из excel в таблицу значений.
http://yoksel.net.ru
vk_hook1c.dll
- Множественный отбор в общем журнале документов. Штатный функционал 1с7.7 не предусматривает возможности отбора по нескольким значениям для общего журнала. Однако, когда пользователи активно включаются в работу, то одно из требований - это "посмотреть Отчеты ККМ за определенный день по такому-то складу и по такой-то фирме" или "посмотреть все документы по такому-то контрагенту" и всё это нужно в общем журнале. На помощь нам приходит ВК vk_hook1c.dll.
http://www.x-romix.narod.ru
Плюсы того, что программируешь на 1с7.7:
- Учишься решать нетривиальные задачи нетривиальными методами, выходящими за рамки самой платформы;
- Изучаешь параллельно SQL, разбираешься в смежных с 1с областях;
- Приходит глубокое знание платформы 1с7.7 и конфигураций, так как сложность значительно ниже, чем в 1с8.
Минусы того, что программируешь на 1с7.7:
- Отстаешь от жизни;
- Становишься менее востребован на рынке труда;
- После программирования в 1с8.1 или 1с8.2 когда открываешь конфигуратор 1с7.7 чтоб написать отчет, хочется плеваться.
Мой блог по 1с: 1c77-1c8x.ru