Понедельник, 13.05.2024, 13:32
| RSS
Главная
Примочки к 1С
Ссылки на 1С ресурсы
  • Специалист
  • Клуб професионалов 1С
  • Статистика

    [главная]-[программное обеспечение]-[для программистов]

     

    Решения на 1С, как эффективный инструмент для бизнеса

    Внешние компоненты для 1С:Предприятия 7.7

    Что делать, когда стандартных возможностей не хватает? Когда стандартных возможностей не хватает, нужно брать нестандартные ;-) Благо фирма 1С предусмотрела подключение к V7 библиотек дополнительных функций. Компоненты рассортированы по функционалу, одна и та же компонента может оказаться в нескольких разделах.

    Визуальный интерфейс

    • Управление окнами •
    Addon

    Управление размером, позицией на экране, заголовком окон. Свернуть/развернуть/восстановить.

    Addy

    Свернуть/развернуть/восстановить. Двигать окна по экрану, передавать/отбирать фокус.

    aiWindows

    Свернуть/развернуть/восстановить. Изменить размер/заголовок. Получить список открытых окон.

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

    • Расширения диалоговых форм •
    Addy

    Красивые цветные и мигающие надписи, круги и квадратики. Прогресс-бар.

    Visual Tools

    Дерево элементов. Таблица значений с цветным текстом, фоном и прямым вводом.

    Это направление компонентостроения пока что развито слабо. Что неудивительно, работать с диалоговыми формами V7 "изнутри" довольно сложно.

    • Работа с мышью •
    My Mouse

    Обработка правого клика. Построение контекстного меню. Иконки и картинки в меню. Отметка пунктов меню.

    Step VC

    Обработка левого клика. Замена списка значений нормальным меню в стиле Windows. Иконки в меню. Отметка пунктов меню.

    По одной компоненте на каждую кнопку мыши. Страшно подумать, какие сложные и эргономичные интерфейсы можно строить на этих двух компонентах.

    • Работа с клавиатурой •
    addHook

    Отлеживание любых нажатых пользователем клавиш (в том числе системных) и генерация внешнего события. Распознавание alt, ctrl и shift. Обалденная штука.

    PLBrowseKeyHandler

    Перехват нажатий клавиш на экранных таблицах значений. Обработка ins, del, etc.

    Проблемы с клавиатурой в V7? Какие проблемы? ;-)

    • Звуковые файлы •
    Addon

    Проигрывание WAV-файлов.

    Addy

    Проигрывание MIDI-файлов.

    Издаваемые компьютером звуки вряд ли относятся к визуальному интерфейсу, но тем не менее. Почему-то самой интересной штуки – MP3-плейера – пока что никто не реализовал…

    Вычисления

    • Математические функции •
    Addon • Addy • aiMath • Math • Rainbow

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

    • Специфические вычисления •
    Reval

    Функция EvalExpr(). В отличие от метода Шаблон(), в тексте выражения можно использовать тригонометрию, бинарную логику, корни/степени, а самое главное – можно определять и использовать переменные внутри выражения.

    Доступ к базам данных

    • Доступ к базам в формате MSSQL •
    AdvSerch

    Сложный поиск в справочниках SQL-версии. Свой визуальный интерфейс для построения запросов.

    ConnectSQL

    Расшифровка параметров доступа к SQL-базе (файл 1cv7.dds). Генерация строки соединения для SQL- и DBF-версий.

    Rainbow

    Прямые SQL-запросы к информационной базе. Мгновенное извлечение данных.

    ToySQL

    Прямой доступ к SQL-базе. Загрузка в базу SQL-скриптов из внешних файлов.

    Известно, что V7 умеет хранить базы данных под MSSQL. Но мощнейшие возможности этой СУБД никак нельзя использовать штатными методами. Между тем как прямые SQL-запросы позволяют извлекать данные в десятки раз быстрее, чем при помощи встроенного языка V7. И для этих целей есть все необходимые инструменты.

    Шлюзы ко внешним приложениям

    • Шлюзы к TWAIN-драйверу •
    Scan

    Сканирование графического образа. Запись в BMP. Помещение картинки в clipboard.

    Scanner

    Сканирование графического образа. Запись в BMP и JPG. Настройка степени сжатия JPG.

    Функционал практически одинаковый, правда, Scanner умеет работать со сжатой графикой. Владельцам сканеров остаётся выбрать одну библиотеку из двух.

    • Шлюзы к MSE и MSXML •
    V7Plus

    Получение данных по протоколу HTTP. «Обёртка» для MS XML Parser v3.

    RBrowser

    Закачка и отрисовка HTML (а также GIF, PNG и любых других файлов, поддерживаемых MSIE) в окне V7. «Минибраузер».

    Эти две компонеты вполне покрывают все потребности при работе с MSIE: одна позволяет скачать и распотрошить текст страницы, а другая покажет страницу в окне.

    • Шлюзы к другим приложениям •
    Fox Emulator

    Шлюз к Visual FoxPro v5. Все функции и все возможности fox'а. Требует наличия runtime-библиотек FoxPro.

    V7Queue

    Шлюз к службе MSMQ (Micro$oft Message Queue). Доступ к функциям службы сообщений Windows 2000.

    Очень полезные библиотеки, особенно V7Queue – это практически готовая транспортная служба для передачи данных между различными приложениями, распределёнными в пространстве локальной или глобальной сети, поддерживающая нотификацию, гарантию доставки, приоритеты, сложные маршруты и т.п. вещи.

    Коммуникации, Internet

    • Электронная почта •
    V7Plus

    «Обёртка» для управления MAPI-клиентом. Отправка, получение писем. Поддержка аттачменов.

    Mail

    Собственный механизм работы с E-mail. Почтовый клиент не нужен. Полноценная работа с POP3 и SMTP серверами.

    SendMail

    Только отправка писем. Поддержка аттачментов. Почтовый клиент не нужен.

    Wheel

    Только отправка почы. Можно использовать почтовый клиент (MAPI), а можно работать напрямую с SMTP.

    Явным лидером в этой категории является Mail. Использовать V7Plus можно, но с оглядкой: её почтовые функции не свободны от ошибок и далеко не любой почтовый клиент сможет корректно работать с этой библиотекой.

    • Получение информации из Интернета •
    Valuta

    Закачка курсов валют прямо с сервера Центробанка России. Собственный механизм работы с HTTP.

    Informer

    Получение информации с сервера РосБизнесКонсалтинга. От курса доллара и прогнозов погоды до курсов цветных металлов и коэффициента инфляции РФ.

    Конечно, всё то же самое можно вытащить из Интернета и «руками». Но эти две компоненты позволяют обойтись без трудоёмкого ручного скачивания и разбора файлов, доставка нужной информации осуществляется буквально одним оператором.

    Системные функции, работа с окружением

    • Системная информация •
    V7Info

    Программное получение информации о версии и релизе V7.

    V7Plus

    Данные о процессоре, памяти, ОС и т.п. Номер релиза V7. Генерация GUID.

    Addon

    Информация о размере экрана, имени машины; метки, размеры и серийные номера логических томов. Очень полезная функция – информация о версии произвольного DLL или EXE файла.

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

    • Работа с zip-архивами •
    Rarus API Extender

    Создание и удаление архивов, добавление, удаление и извлечение файлов, подсчёт размеров.

    Wheel

    Добавить файл в архив, извлечь файл из архива. Файл всегда только один.

    Работать с архивами приходится практически всегда, когда в задаче тем или иным образом фигурирует перемещение файлов по тонким каналам. И без API к ZIP'у в этом случае просто не обойтись. Библиотека от Раруса пока что остаётся единственным достойным исполнителем этой роли.

    Работа с реестром Windows •
    AddREG • aiRegistry • Rarus API Extender • Wheel

    Работать с реестром в повседневной жизни V7-программиста приходится довольно редко, но всё-таки иногда приходится. Проблема не в наличии инструмента, а в его выборе ;-) Лидером по функциональности является aiRegistery, эта компонента умеет даже работать с реестром удалённой машины (подключаясь к нему по локальной сети, прямо как regedit.exe). Но навороченный функционал нужен крайне редко. Так что лично я бы отдал предпочтение многофункциональной и проверенной временем библиотеке от Раруса.

    • Работа с файлами •
    Rarus API Extender

    Работа с INI-файлами. Ничего особенного, легко эмулируется штатными средствами.

    V7Plus

    Чтение и запись больших текстовых файлов. Прямое обращение к диску, поэтому работает быстро. В один момент времени работает только с одним файлом. Ограничение на размер строки, 32k.

    Wheel

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

    Работа с внешними файлами «неродных» форматов на V7 практически не реализована (объект «Текст» я не считаю, по причине явной бестолковости и удручающей ресурсоёмкости). Перечисленные библиотеки с грехом пополам восполняют этот пробел, но, если подходить серьёзно, нормальная работа с большими текстовыми файлами под V7 по-прежнему невозможна. На фоне массового увлечения форматом XML это более чем грустный факт…

    • Системные команды •
    Addon

    Масса системных функций, начиная от чтения/установки буфера обмена и форматирования дискет, и заканчивая принудительным завершением сесии V7 по критической ошибке.

    Конечно, почти всё это (кроме, разве что, метода Crash() ;-) можно сделать через штаный оператор КомандаСистемы(). Но есть одно отличие: в случае работы с Addon пользователь не увидит дурацкого окошка DOS-сессии.

    • Печать, принтеры и шрифты •
    ExtPrint

    OLE-сервер, реализующий «человеческую» печать на матричных принтерах и прямой вывод на LTP.

    Wheel

    Выдаёт список проинсталлированных в системе шрифтов.

    Печать и печатные формы являются одной из сильнейших сторон V7. Но возникает проблема работы с матричными принтерами, которые на просторах ex-USSR отнюдь не являются редкостью. ExtPrint позволяет решить эту проблему.

    «Внутренности» V7

    • События и таймеры •
    aiTimer

    Позволяет запустить в системе несколько таймеров с разными интервалами. Таймеры генерируют стандартное вшенее событие V7.

    Event

    Эмуляция внешнего события V7. Движок системы остаётся в полной уверенности, что событие пришло «извне». Незаменимо для тестирования и отладки.

    Waiter

    Отслеживание и подсчёт времени бездействия пользователя (времени, в течении которого система не получала событий от мыши и клавиатуры).

    V7 почти не имеет функций, позволяющих ей работать в качестве системы «реального времени». Эти библиотеки расширяют функционал для отслеживания времени и обработки событий.

    • Структура MD и ERT •
    Compound

    Работа с файлами формата compound (1cv7.md, *.ert). Чтение и запись потоков. Распаковка текстов модулей.

    ActiveMD

    Можно сказать, что это «предметно-ориентированный» Compound. Работа с внутренней структурой MD ведётся не в контексте фолдеров и потоков, а на более высоком уровне, адресуясь непосредственно к реквизитам конфигураци.

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

    Экзотика

    1C:Java

    Шлюз между V7 и MSJM (java virtual machine). Позволяет расширять функционал V7 через использование Java-классов.

    OCR Pelican

    Распознавание рукописного текста (только цифры). Компонента построена на нейросетевых технологиях. Java-классов.

    Обе эти компоненты представлены в виде демо-версий и не имеют чёткой области примения. Идеально подходят для демонстрации возможностей V7 «взрослым» программистам, считающих эту систему тупым бухгалтерским пакетом. Отвисающие челюсти гарантированы ;-).

     

    Copyright MyCorp © 2024