
Перенос VBA-макросов в Р7-Офис: почему простой замены кода недостаточно
Sib-Tech 8 минут назад Перенос VBA-макросов в Р7-Офис: почему простой замены кода недостаточно Простой 6 мин 150 JavaScript * Visual Basic for Applications * Recovery Mode Многие компании в России за последние пару лет...
Anthropic — What company has the best second artificial intelligence model at the end of June?
Вот важная новость с фронта ИИ: Sib-Tech 8 минут назад Перенос VBA-макросов в Р7-Офис: почему простой замены кода недостаточно Простой 6 мин 150 JavaScript * Visual Basic for Applications * Recovery Mode Многие компании в России за последние пару лет перешли с Microsoft Office на отечественный Р7-Офис. Документы открываются, интерфейс в целом знаком пользователям и, казалось бы, что ещё нужно? Однако довольно быстро обнаруживается, что часть привычных операций перестаёт работать.
И причина часто находится не в самих документах, а в макросах, которые годами автоматизировали рутинные процессы. Мы тоже столкнулись с этой проблемой и решили создать для нее инновационное решение. Рассказываем, как это было и почему простой заменой кода здесь не обойтись.
Технические детали
Почему после замены офисного пакета могут перестать работать привычные процессыВсе дело в макросах. Для многих они незаметны, потому что все уже давным-давно привыкли ими пользоваться, они подготавливают отчетность, обрабатывают таблицы, переносят данные между листами и многое другое. Но когда происходит смена программного обеспечения, многие из привычных нам функций перестают работать, и то, что раньше занимало 3 секунды, теперь может требовать до нескольких часов потраченного времени.
А это, в свою очередь, тормозит целые рабочие отделы: бухгалтерия, планово-экономический отдел, отдел отчетности…Поэтому, при переходе на новое ПО, важно оценивать не только совместимость документов, но и совместимость автоматизированных сценариевМакросы - незаметная часть корпоративной инфраструктурыЕсли спросить руководителя, что в компании автоматизировано, он, скорее всего, перечислит 1С, CRM-систему и прочее дорогое ПО. Но в большинстве организаций VBA-макросы фактически выполняют роль небольших информационных систем. Они могут быть написаны много лет назад, постепенно дорабатываться разными сотрудниками и не иметь никакой документации.
Сотрудник нажимает одну кнопку и получает готовый отчёт. За этой кнопкой могут находиться несколько тысяч строк VBA-кода, десятки листов, внешние файлы и запросы к базе данных. И когда приходит время переходить на Р7-Офис, выясняется, что вся эта автоматизация перестаёт работать.
Отраслевые последствия
Почему VBA-код не запускается в Р7-ОфисТут всё просто. Microsoft Office использует язык программирования VBA и собственную объектную модель для работы с документами. В Р7-Офис для автоматизации используется язык программирования JavaScript.
Синтаксис, конструкции и сама объектная модель в этих языках принципиально различаются. Поэтому код, написанный для Microsoft Office, в Р7 просто не будет работать, он либо выдаст ошибку, либо выполнится с непредсказуемым результатом. Дело не в том, что одна система хуже, а другая лучше.
Просто они по сути говорят на разных языках. Задача состоит не в переводе строк кода, а в переносе смысла: что макрос должен сделать с документом, какие данные обработать и какой результат получить. Какие элементы переносятся относительно легкоОтносительно простые случаи можно конвертировать без особых проблем.
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.





