gifts2017

ExTab - библиотека для табличных вычислений

Опубликовал Юрий M (YuriM) в раздел Программирование - Внешние компоненты

Табличные вычисления - штука полезная. А как насчёт того, чтобы использовать их в 1С:Предприятии? ExTab вам поможет!

[Здесь - продолжение публикации]

    Практикуясь на досуге в программировании, сделал COM-компонент (ExTab), помогающий в выполнении табличных вычислений, чтобы немного расширить функциональность платформы. Использовать его не сложно: допустим, у нас есть табличный документ. При вводе данных в ячейку табличного документа мы также должны отправить данные в ExTab. В ячейку ExTab можно записать формулу (пока что поддерживаются лишь математические операции, SUM, IF и CONCAT). После этого можно произвести вычисления, запросить у ExTab список обновлённых ячеек и получить их данные. Свой эксель вы, конечно, сделать не сможете, но сможете добавить в свою конфигурацию похожую функциональность. В демонстрационной конфигурации всё показано довольно подробно. Ах да, если кто не знает, COM-компоненты регистрируются командой "regsvr32 имя_файла.dll", для чего могут понадобиться права администратора. Для работы компонента требуется установленный в системе "Microsoft Visual C++ 2010 Redistributable Package" (http://www.microsoft.com/download/en/details.aspx?id=5555).

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

P.S. Короткая видеодемонстрация тут: http://www.youtube.com/watch?v=tiiM9QpMB0M&feature=youtu.be

P.P.S. Компонент бесплатен для коммерческого применения в составе ваших программных продуктов.

P.P.P.S. Спустя сутки я вижу, что разработка сумела заинтересовать нескольких человек. Посему - быть продолжению. Через какое-то время я напишу вторую публикацию, где подробно прокомментирую код интеграции ExTab и табличного документа на управялемой форме из демо-конфигурации, а также расскажу о планах по развитию проекта на ближайшее будущее. До скорого Smile.

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

Наименование Файл Версия Размер
Компонент 14
.dll 60,00Kb
25.03.12
14
.dll 60,00Kb Скачать
Тестовая конфигурация 5
.1CD 688,00Kb
25.03.12
5
.1CD 688,00Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Сергей Ожерельев (Поручик) 26.03.12 09:12
Не читал, но одобряю. Да ещё на управляемых формах, хорошо.
2. Taras Варварич (itar59) 26.03.12 10:52
Интерес есть, потенциал работы -- огромный. Конечно продолжайте работу.
3. Юрий M (YuriM) 26.03.12 23:45
(1) Поручик, примеры будут основаны именно на УФ, т.к. 8.1 я немного пропустил, скакнув сразу с 7.7 на 8.2.
(2) itar59, буду продолжать :)

Через какое-то время ожидайте вторую статью с более подробным описанием интеграции ExTab и табличного документа на управляемой форме. По большому счёту это будет лишь подробно описанный код из демо-конфы этой статьи. Также в новой статье я расскажу о планах по развитию проекта на совсем ближайшее время.
4. Андрей Вахрин (dolter) 29.03.12 18:40
А зачем ВК, да еще и ввод такой сложный... не прямо в поле ТП?
5. Юрий M (YuriM) 29.03.12 21:39
(4) dolter, если под ВК вы подразумеваете внешнюю компоненту, то это не ВК. Это COM-объект, применимый не только для 1С:Предприятия, но и для кучи других языков программирования в среде Windows. ExTab не ориентирован именно на 1С:Предприятие. В принципе я мог бы реализовать аналогичную функциональность средствами встроенного языка, но это бы работало гораздо, гораздо медленнее, да и результат мои трудов был бы применим лишь в довольно узких рамках всеми нами любимой платформы.
Что касается сложности ввода. Это же лишь демо-конфигурация. Вы можете организовать ввод более удобным способом. Но учтите, что в текущей реализации у ExTab есть разные функции отправки данных в ячейку и получения обратно - для каждого типа данных своя функция. Над ними можно написать простую обёртку и пользоваться. В будущем я, скорее всего, реализую более удобный интерфейс, но сначала я собираюсь довести проект до состояния полной боеготовности, а уже потом буду завязывать бантики и наводить красоту.

Вот-вот появится новая публикация. Оставайтесь на связи :)
6. Андрей Вахрин (dolter) 30.03.12 00:29
Все равно не понял... Слишком сложно, как мне кажется, для использования именно в рамках 1С.

Отправил на модерацию обработку с подобным функционалом в 60 строк одинэсовского кода.
С легким расширением опять же средствами 1С и с возможностью обращения к данным 1С.

Возможно в дальнейшем и будет ваш COM-объект хорош - пока не вижу...
7. Юрий M (YuriM) 30.03.12 01:02
(6) dolter, может быть вы и правы. Посмотрим.
8. Юрий M (YuriM) 01.04.12 15:58
9. Андрей Вахрин (dolter) 05.04.12 10:44
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа