1с анализатор что это
Дерево навигации, анализатор программного кода 1С 8.x с функцией автоформатирования текста кода (Управляемое приложение).
Возникла необходимость привести код своих старых обработок отчетов к единому формату, дабы быстрее вспомнить об их функционале, особенностях применения и возможностях к модернизации под новые однотипные задачи. А так как мышление и понимание написание кода с опытом существенно изменяется - ближе и ближе приближается к некоему стандарту оформления, то разбирать код старых обработок/отчетов абсолютно не хочется, и порой пишешь с нуля новую, потому как старая вызывает непреодолимые препятствия к разбору.
Внимание. Работает в режиме управляемого приложения.
- Декомпиляция обработок(*.epf), отчетов (*.erf), текстовых файлов, содержащих код 1С 8.x; представление кода в виде структурного дерева навигации.
- Настройка оформление дерева навигации программного кода под конкретного пользователя с сохраненными настройками.
- Редактирование программного кода декомпилированного объекта без использования конфигуратора и возможность компилировать (сохранить сделанные изменения) . Внимание! р едактировать можно только программный код, элементы и свойства форм не редактируются и не отображаются).
- Автоформатирование - преобразование текст кода к общему стандарту оформления. Недоступна в демо версии .
PS: Демо версия (базовая версия) отличается от платной(расширенной) отсутствием модуля автоматического форматирования текста (обновление программы осуществляется посредством наращивания дополнительного функционала к базовой версии, использовав соотвествующий файла обновления).
В разработки модуль комплексного анализа эффективности и качества, программного кода, выявление ошибок нерациональных конструкций и т.д и т.п. Возможность выставление оценки автору кода.
Ключевые слова: компилятор кода декомпилятор кода автоформатирования кода разбор кода дерево навигации программного кода
Примите решение о покупке через один месяц бесплатного использования программы. Для получения программы обратитесь к вашему менеджеру в Билайн.
Узнайте больше о программе — скачайте видео запись Вебинара.
Актуальная версия программы 3.1.42 от 12.11.2020 г. Дистрибутив (12 МБ)
Решение позволяет организации управлять списком сотрудников, владеющих sim-картами корпоративного тарифа «Билайн», облегчить выполнение рутинных операций: формирование и отправку сотрудникам по e-mail справок о начислениях и детализации звонков, контроль взаиморасчетов с сотрудниками. Автоматизировать расчеты за связь с сотрудниками в программах «1С».
«Анализатор счета» обеспечивает управление компенсациями за мобильную связь, что позволяет расширить социальный пакет для сотрудников. Программа предоставляет возможность контролировать и управлять расходами на связь, определять расходы на служебные звонки и относить их на затраты организации.
Как «Анализатор счета» позволяет компании сократить затраты:
- Разделить звонки сотрудников на служебные и личные. Таким образом, личные звонки сотрудник оплачивает самостоятельно, что позволит компании сократить затраты от 30% и более от суммы счета за услуги мобильной связи;
- Отнести затраты на служебные звонки на производственные затраты компании, тем самым, уменьшить налогооблагаемую базу и оптимизировать налоговые платежи;
- Автоматизировать все рутинные операции по управлению корпоративной мобильной связью;
- Контролировать затраты на связь с помощью механизма установки лимитов абонентам и загрузки предварительной стоимости звонков текущего периода. Это позволит предотвратить чрезмерные необоснованные расходы на связь;
- Не распределять на сотрудников скидку от общей суммы счета за мобильную связь.
Взаимодействие с программами 1С:Предприятие.
«Анализатор счета» обеспечивает обмен информацией с типовыми конфигурациями «Зарплата и управление персоналом» и «Бухгалтерия предприятия» системы программ «1С:Предприятие 8 и 7.7»; для каждой из конфигураций предназначена своя внешняя обработка по обмену данными, которая запускается непосредственно из «1С:Предприятия». Продукт сертифицирован в «1С», имеет сертификат «1С-Совместимо».
Программа «Анализатор счета» разработана с использованием Delphi Professional и является самостоятельной программой, для работы программы не требуется платформа 1С:Предприятие. Типовое решение является защищенным, код программы закрыт для изменения пользователем.
Где купить
Правообладателем программного обеспечения «Анализатор счета» является ООО «1С‑Рарус» (ИНН 7707079463).
Описание функционала
Вести список номеров и их владельцев.
«Анализатор счета» содержит список сотрудников, владеющих sim-картами корпоративного тарифа «Билайн», и показывает их номера. Программа ежемесячно загружает и обрабатывает данные биллинга «Билайн»: начисления и детализации по каждому владельцу номера.
Разделить звонки сотрудников на служебные и личные с помощью созданных правил компенсации за мобильную связь.
Предусмотрены компенсации в фиксированном размере, в процентах от суммы счета, по типам начислений (местные звонки, роуминг, SMS, GPRS и т.д.), по времени и дням звонков (в рабочее время, смены, привязка к календарю с учетом праздничных дней, отпусков и т.д.). Также предусмотрена компенсация служебных звонков на определенные телефонные номера.
Управлять взаиморасчетами с сотрудниками по задолженности за личные звонки.
Сотрудники компенсируют компании затраты за личные звонки.
SMS информирование и рассылка сотрудникам по электронной почте отчетной документации.
«Справка о начислениях за мобильную связь» — информация о начислениях и компенсациях по каждому номеру сотрудника.
«Детализация начислений» — подробная расшифровка начислений.
Выгружать сумму задолженности сотрудника за мобильную связь в бухгалтерские программы для автоматического ее удержания из зарплаты сотрудника. Есть выгрузка в 1С и другие программы.
Контролировать предварительную стоимость звонков текущего периода.
Ежедневная автоматическая загрузка предварительных начислений.
Формировать аналитические отчеты:
«Анализ начислений» и «Анализ взаиморасчетов», «Анализ платежей».
Полная версия руководства пользователя прилагается в виде пакета документации при покупке ПО
Устав от нескончаемого code review или отладки, временами задумываешься, как бы упростить себе жизнь. И немного поискав, ну или случайно наткнувшись, можно увидеть волшебное словосочетание: "Статический анализ". Давайте посмотрим, что это такое и как он может взаимодействовать с вашим проектом.
Собственно говоря, если вы пишете на каком-либо современном языке, тогда, даже не догадываясь об этом, вы пропускали его через статический анализатор. Дело в том, что любой современный компилятор предоставляет пусть и крохотный, но набор предупреждений о потенциальных проблемах в коде. Например, компилируя C++ код в Visual Studio вы можете увидеть следующее:
В этом выводе мы видим, что переменная var так и не была использована нигде в функции. Так что на самом деле вы почти всегда пользовались простеньким статическим анализатором кода. Однако, в отличие от профессиональных анализаторов, таких как Coverity, Klocwork или PVS-Studio, предоставляемые компилятором предупреждения могут указывать только на небольшой спектр проблем.
Если вы не знаете наверняка, что такое статический анализ и как его внедрять, прочтите эту статью, чтобы более подробно ознакомиться с этой методологией.
Зачем нужен статический анализ?
В двух словах: ускорение и упрощение.
Статический анализ позволяет найти уйму различных проблем в коде: начиная от неправильного использования конструкций языка, заканчивая опечатками. Например, вместо
Вы написали следующий код:
Как видите, в последней строке появилась опечатка. Например, PVS-Studio выдаёт следующее предупреждение:
V537 Consider reviewing the correctness of 'y' item's usage.
Если хотите потыкать в эту ошибку руками, то попробуйте готовый пример на Compiler Explorer: *клик*.
И как вы понимаете, не всегда можно обратить внимания на подобные участки кода сразу и из-за этого можно засесть за отладку на добрый час, недоумевая, почему всё работает так странно.
Однако это явная ошибка. А если разработчик написал неоптимальный код из-за того, что позабыл какую-либо тонкость языка? Или же вовсе допустил в коде undefined behavior? К сожалению, подобные случаи совершенно обыденны и львиная часть времени тратится на то, чтобы отладить специфично работающий код, который содержит опечатки, типичные ошибки или undefined behavior.
Больше интересных ошибок, которые может обнаружить анализатор, вы можете найти в статьях:
0. Знакомство с инструментом
Всё начинается с пробной версии. Действительно, сложно решиться внедрять что-либо в процесс разработки, если никогда до этого не видел инструмента вживую. Поэтому первым делом стоит скачать пробную версию.
Что вы узнаете на этом этапе:
- Какие есть способы взаимодействия с анализатором;
- Совместим ли анализатор с вашей средой разработки;
- Какие проблемы есть сейчас в ваших проектах.
Действительно, 178 предупреждений просмотреть значительно проще, чем несколько тысяч…
Во вкладках Medium и Low часто попадаются хорошие предупреждения, однако в эти категории занесены те диагностики, которые имеют меньшую точность (достоверность). Подробнее про уровни предупреждений и варианты работы под Windows можно посмотреть тут: *клик*.
Успешно просмотрев самые интересные ошибки (и успешно исправив их) стоит подавить оставшиеся предупреждения. Это нужно для того, чтобы новые предупреждения не терялись среди старых. К тому же статический анализатор – это помощник для программиста, а не список для багов. :)
1. Автоматизация
После знакомства наступает время настройки плагинов и интеграции в CI. Это необходимо сделать до того, как программисты начнут использовать статический анализатор. Дело в том, что программист может забыть включить анализ или вовсе не захотеть. Для этого нужно сделать некоторую финальную проверку всего, чтобы непроверенный код не мог попасть в общую ветку разработки.
Что вы узнаете на данном этапе:
- Какие варианты автоматизации предоставляет инструмент;
- Совместим ли анализатор с вашей сборочной системой.
А теперь приступим к сервисам непрерывной интеграции (CI). Любой анализатор можно внедрить в них без каких-либо серьезных проблем. Для этого нужно создать отдельный этап в pipeline, который обычно находится после сборки и юнит-тестов. Делается это при помощи различных консольных утилит. Например, PVS-Studio предоставляет следующие утилиты:
- Установить анализатор;
- Запустить анализ;
- Доставить результаты.
В системах под управлением Windows отсутствует возможность установить анализатор из пакетного менеджера, однако есть возможность развернуть анализатор из командной строки:
Подробнее о развёртывании PVS-Studio в системах под управлением Windows можно почитать *тут*.
После установки нужно запустить непосредственно анализ. Однако делать это рекомендуется только после того, как прошла компиляция и тесты. Это связано с тем, что для статического анализа обычно требуется в два раза больше времени, чем для компиляции.
Так как способ запуска зависит от платформы и особенностей проекта, я покажу вариант для C++ (Linux) в качестве примера:
Примечание. Текстовый формат — это неудобно. Он приводится просто для примера. Обратите внимание на более интересный формат отчёта — FullHtml. Он позволяет осуществлять навигацию по коду.
Подробнее про настройку анализа на CI можно прочитать в статье "PVS-Studio и Continuous Integration" (Windows) или "Как настроить PVS-Studio в Travis CI" (Linux).
Хорошо, вы настроили работу анализатора на сборочном сервере. Теперь, если кто-то залил непроверенный код, будет падать этап проверки, и вы сможете обнаружить проблему, однако это не совсем удобно, так как эффективнее проверять проект не после того, как произошло слияние веток, а до него, на этапе pull request'а.
В целом настройка анализа pull request'а не сильно отличается от обычного запуска анализа на CI. За исключением необходимости получить список изменённых файлов. Обычно их можно получить, запросив разницу между ветками при помощи git:
Теперь нужно передать анализатору на вход этот список файлов. Например, в PVS-Studio это реализовано при помощи флага -S:
Подробнее про анализ pull request'ов можно узнать *тут*. Даже если вашего CI нет в списке указанных в статье сервисов, вам будет полезен общий раздел, посвященный теории этого типа анализа.
Настроив анализ pull request'ов вы сможете блокировать содержащие предупреждения коммиты, тем самым создав границу, которую непроверенный код не сможет пересечь.
Это всё безусловно хорошо, однако хотелось бы иметь возможность посмотреть все предупреждения в одном месте. Не только от статического анализатора, но и от юнит-тестов или от динамического анализатора. Для это существуют различные сервисы и плагины. PVS-Studio, например, имеет плагин для интеграции в SonarQube.
2. Интеграция на машины разработчиков
Теперь пришло время установки и настройки анализатора для повседневного использования при разработке. К этому моменту вы уже познакомились с большей частью способов работы, поэтому это можно назвать самой лёгкой частью.
Как самый простой вариант – разработчики сами могут установить необходимый анализатор. Однако это займёт много времени и отвлечёт их от разработки, поэтому вы можете автоматизировать этот процесс, используя установщик и нужные флаги. Для PVS-Studio есть различные флаги для автоматизированной установки. Впрочем, всегда есть пакетные менеджеры, например, Chocolatey (Windows), Homebrew (macOS) или десятки вариантов для Linux.
Затем нужно будет установить необходимые плагины, например, для Visual Studio, IDEA, Rider etc.
3. Ежедневное использование
На этом этапе пора сказать пару слов о способах ускорения работы анализатора при ежедневном использовании. Полный анализ всего проекта занимает очень много времени, однако часто ли мы меняем код разом во всём проекте? Едва ли существует настолько масштабный рефакторинг, что сразу затронет всю кодовую базу. Количество изменяемых файлов за раз редко превышает десяток, поэтому их и есть смысл анализировать. Для подобной ситуации существует режим инкрементального анализа. Только не пугайтесь, это не ещё один инструмент. Это специальный режим, который позволяет анализировать только изменённые файлы и их зависимости, причём это происходит автоматически после сборки, если вы работаете в IDE c установленным плагином.
В случае, если анализатор обнаружит в недавно измененном коде проблемы, то сообщит об этом самостоятельно. Например, PVS-Studio скажет вам об этом при помощи оповещения:
Само собой недостаточно сказать разработчикам использовать инструмент. Нужно как-то им рассказать, что это вообще и как это есть. Вот, например, статьи про быстрый старт для PVS-Studio, однако подобные туториалы вы сможете найти для любого предпочитаемого вами инструмента:
Ещё на этапе знакомства с инструментом мы подавили очень много предупреждений во время одного из первых запусков. Увы, но статические анализаторы не идеальны, поэтому время от времени выдают ложные срабатывания. Подавить их обычно легко, например в плагине PVS-Studio для Visual Studio достаточно нажать на одну кнопку:
После интеграции
Вот мы и прошли все этапы по интеграции статического анализа в процесс разработки. Несмотря на важность настройки подобных инструментов на CI, самым главным местом запуска является именно компьютер разработчика. Ведь статический анализатор – это не судья, который говорит где-то далеко от вас, что код никуда не годится. Напротив, это помощник, который подсказывает, если вы устали и напоминает, если вы о чём-либо забыли.
Правда без регулярного использования статический анализ вряд ли значительно упростит разработку. Ведь самая его главная польза для разработчика заключается не столько в поиске сложных и спорных участков кода, сколько в раннем их обнаружении. Согласитесь, что обнаружить проблему, когда правки ушли на тестирование, не только неприятно, но и очень долго. Статический анализ же при регулярном использовании просматривает каждое изменение прямо на вашем компьютере и сообщает о подозрительных местах во время работы над кодом.
А если вы или ваши коллеги всё ещё не уверены, стоит ли внедрять анализатор, то предлагаю сейчас перейти к чтению статьи "Причины внедрить в процесс разработки статический анализатор кода PVS-Studio". В ней разобраны типовые опасения разработчиков о том, что статический анализ будет отнимать их время и так далее.
Если хотите поделиться этой статьей с англоязычной аудиторией, то прошу использовать ссылку на перевод: Maxim Zvyagintsev. Static Analysis: From Getting Started to Integration.
Программа «Анализатор счета» 2.6 предназначена для автоматизации управления мобильной связью корпоративных клиентов «Билайн».
Ориентация
Решение позволяет организации управлять списком сотрудников, владеющих sim-картами корпоративного тарифа «Билайн», облегчить выполнение рутинных операций: формирование и отправку сотрудникам по e-mail справок о начислениях и детализации звонков, контроль взаиморасчетов с сотрудниками. Автоматизировать расчеты за связь с сотрудниками в программах «1С».
Функции
«Анализатор счета» обеспечивает управление компенсациями за мобильную связь, что позволяет расширить социальный пакет для сотрудников. Программа предоставляет возможность контролировать и управлять расходами на связь, определять расходы на служебные звонки и относить их на затраты организации.
«Анализатор счета» помогает компании:
- Разделить звонки сотрудников на служебные и личные. Таким образом, личные звонки сотрудник оплачивает самостоятельно, что позволит компании сократить затраты от 30% и более от суммы счета за услуги мобильной связи;
- Отнести затраты на служебные звонки на производственные затраты компании, тем самым, уменьшить налогооблагаемую базу и оптимизировать налоговые платежи;
- Автоматизировать все рутинные операции по управлению корпоративной мобильной связью;
- Контролировать затраты на связь с помощью механизма установки лимитов абонентам и загрузки предварительной стоимости звонков текущего периода. Это позволит предотвратить чрезмерные необоснованные расходы на связь;
- Не распределять на сотрудников скидку от общей суммы счета за мобильную связь.
Взаимодействие с программами 1С:Предприятие
«Анализатор счета» обеспечивает обмен информацией с учетными системами 1С: «1С:Зарплата и Кадры 7.7», «1С:Зарплата и управление персоналом 8», «1С:Бухгалтерия 7.7», «1С:Бухгалтерия предприятия 8». Для каждой конфигурации «1С» предназначена своя внешняя обработка по обмену данными. Обработка запускается из программы «1С», запущенной в режиме «1С:Предприятие».
Программа «Анализатор счета» является самостоятельной программой, для работы программы не требуется платформа 1С:Предприятие. Типовое решение защищено, код программы закрыт для изменения пользователем.
Анализатор счета 3.0
Компания 1С-Рарус анонсировала 11 июня 2013 года выход новой версии ПО «Анализатор счета» 3.0 [1] для корпоративных клиентов «Билайн».
В обновленной версии существенные изменения коснулись нескольких разделов:
Раздел компенсаций
Появилась возможность устанавливать правила действия компенсации в соответствии с производственным календарем с учетом праздничных и выходных дней, отпусков, командировок и больничных сотрудников. Для разных категорий персонала и подразделений можно создавать различные графики работ: пятидневный, шестидневный, сменный и т.д. При этом применять компенсацию можно не только для номеров, но и для сотрудников и подразделений. Кроме того, можно устанавливать временной порог действия компенсаций – разовые начисления или с учетом временного периода.
Изменен алгоритм распределения начислений при многократном использовании телефонного номера разными сотрудниками в течение одного расчетного периода. Клиент может производить начисления отдельно на каждого сотрудника, который использовал телефон в конкретный период. Это будет полезно, например, при закреплении телефонного номера за автомобилем, сменой и т.д.
Корпоративным клиентам предоставлена возможность сравнивать предварительную стоимость услуг связи в текущем периоде со среднемесячным лимитом, учитывать состояние баланса сотрудника по прошлым периодам.
Интерфейс
Новые возможности в расчете компенсаций отразились и в интерфейсе программы. Появились новые окна: «Графики работы», «Исключения в графиках работы», новые закладки в карточках Абонента и Группы и многое другое.
Журнал операций
2014: Анализатор счета сертифицирован на совместимость с комплексом 1С
20 марта 2014 года компания «1С-Рарус» сообщила о получении сертификата «Совместимо! Система программ 1С:Предприятие» решением «Анализатор счета».
Фирма «1С» присвоила сертификат совместимости решению компании «1С-Рарус» - «Анализатор счета». Сертификация подтверждает соответствие продукта высоким стандартам качества программ «1С», гарантирует простоту обмена данными с программами на платформе «1С:Предприятие».
Автоматизированное тестирование помогает улучшить качество продукта, и поэтому оно достаточно широко используется при разработке/тестировании самых разных проектов. Платформа «1С:Предприятие» также позволяет выполнять автоматизированное тестирование и имеет для этого все необходимые инструменты. Эта статья рассказывает о том, что это за инструменты и как ими пользоваться.
Общая информация
Итак, автоматизированное тестирование прикладных решений — это часть процесса тестирования, которая представляет собой имитацию действий пользователя, а также получение и оценку результатов этих действий.
Автоматизированное тестирование выполняется при помощи двух клиентских приложений и сценария тестирования.
Сценарий тестирования — это программа на встроенном языке «1С». Сценарий описывает последовательность выполняемых действий и, если нужно, проверяет результаты выполнения этих действий. Для этого во встроенном языке имеются специальные объекты.
Менеджер тестирования — это клиентское приложение (толстый или тонкий клиент) запущенное в соответствующем режиме. В этом приложении исполняется сценарий тестирования и производится оценка результатов (если нужно).
Клиент тестирования — это клиентское приложение (толстый, тонкий или веб-клиент). Это приложение получает от менеджера команды, воспроизводит их и возвращает результат.
Все вышеописанное отлично иллюстрирует изображение с сайта «1С»:
Схема автоматизированного тестирования в «1С»
Запись действий пользователя
Написание более или менее серьезного теста представляется очень трудоемкой задачей — нужно в коде описать все необходимые действия: нажатия на кнопки, выборы из списков, заполнения полей ввода и тд.
К счастью имеется способ серьезно упростить работу — записать журнал действия пользователя. Запуск этого режима производится из конфигуратора:
Запуск записи действий пользователя из конфигуратора
Или из командной строки:
C:\Program Files\1cv8\common>1cestart.exe ENTERPRISE /IBName "Тестовая база" /UILogRecorder
После запуска в правом верхнем углу основного окна приложения появятся кнопки для управления записью действий пользователя:
Управление записью действий пользователя
С помощью этих кнопок запись можно:
- начать/приостановить/продолжить;
- прекратить;
- завершить.
Начав запись, сделав какие-либо действия и завершить запись, мы увидим некий XML-документ, например такой:
Пример записи действий пользователя
Выглядит все это вот так:
Преобразование XML в код на встроенном языке
Обработке можно скормит текст или имя файла, попросить сгенерировать код подключения к клиенту и указать некоторые другие настройки.
Запуск системы тестирования
Запустить клиентское приложение в режиме менеджера тестирования или клиента тестирования можно из конфигуратора или при помощи командной строки.
В конфигураторе нужно пройти в меню «Сервис»-«Параметры», затем открыть вкладку «Запуск 1С:Предприятия»-«Дополнительные» и выбрать требуемый режим запуска:
Настройка запуска «1С:Предприятия»
Запуск из командной строки в режиме менеджера тестирования выглядит примерно так:
C:\Program Files\1cv8\common>1cestart.exe ENTERPRISE /IBName "Тестовая база" /TestManager
А в режиме клиента тестирования так:
C:\Program Files\1cv8\common>1cestart.exe ENTERPRISE /IBName "Тестовая база" /TestClient -TPort 2000
При запуске в режиме клиента можно указать номер порта (по умолчанию 1538), это нужно в том случае, если запущено несколько клиентов тестирования.
Текущий режим будет указан в заголовке главного окна:
Заголовок главного окна в режиме менеджера
Заголовок главного окна в режиме клиента
Создание и область применения тестов
Для создания полноценного теста, как правило, недостаточно преобразовать запись действий пользователя в код на встроенном языке. Но подобный инструмент позволяет избежать неинтересной механической работы и помогает понять принцип написания тестов.
В написании текста также может помочь схема объектов для имитации интерактивных действий:
Схема объектов для имитации интерактивных действий
А также синтаксис-помощник в котором имеется подробная информация о каждом из этих объектов.
Самым простым вариантом запуска теста будет создать обработку (можно внешнюю) и просто засунуть в нее имеющийся код теста и запустить из менеджера тестирования.
Основной областью применения автоматизированного тестирования мне представляется (возможно я неправ) проверка работоспособности существующего функционала при добавлении нового (часто бывает, что при добавлении нового ломается старое).
На этом все, надеюсь, что данная статья была Вам полезна.
Если Вы нашли ошибку или неточность, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
(оценок: 2, средняя оценка: 3,50 из 5)
Читайте также: