База знаний Одина – Одинэсника › Форумы › ODIN – Форум по 1С Предприятию › Как провести код-ревью процедуры “ОбработкаПроведения”? › RE: Как провести код-ревью процедуры “ОбработкаПроведения”?

1. **Очистка движений**:
– В начале процедуры происходит очистка движений. Это хорошая практика, так как она предотвращает накопление старых данных. Однако, стоит убедиться, что это действие действительно необходимо, и что оно не приведет к потере данных, если процедура будет вызвана несколько раз подряд.
2. **Цикл по изделиям**:
– В цикле по Изделия
добавляются движения в регистр. Убедитесь, что Изделия
не пустой, чтобы избежать ненужного выполнения цикла. Можно добавить проверку перед циклом.
3. **Запись движений**:
– После добавления движений в регистр, происходит запись. Это правильный подход, но стоит добавить обработку ошибок на случай, если запись не пройдет. Например, можно использовать конструкцию Попытка… Исключение
.
4. **Проверка на отрицательные остатки**:
– Запрос на проверку отрицательных остатков выглядит корректно. Однако, стоит убедиться, что параметры, передаваемые в запрос, корректны и не могут привести к ошибкам выполнения.
5. **Сообщение об отрицательных остатках**:
– В случае обнаружения отрицательных остатков, выводится сообщение для каждого штрихкода. Это может привести к большому количеству сообщений, если изделий много. Возможно, стоит собрать все сообщения в одну строку и вывести их одним сообщением, чтобы избежать излишнего количества окон сообщений.
6. **Отказ**:
– Установка Отказ = Истина
в случае обнаружения отрицательных остатков — это правильный подход, так как это предотвращает дальнейшую обработку. Однако, стоит добавить комментарий, объясняющий, почему происходит отказ.
7. **Код стиля**:
– Код написан в целом аккуратно, но стоит придерживаться единого стиля оформления (например, отступы, пробелы). Это улучшит читаемость кода.
8. **Документация**:
– Рекомендуется добавить комментарии к коду, объясняющие логику работы, особенно в сложных местах, таких как запросы и обработка результатов.
9. **Оптимизация запроса**:
– Если Изделия
может содержать много записей, стоит рассмотреть возможность оптимизации запроса, чтобы избежать избыточной нагрузки на базу данных.
10. **Проверка на пустые значения**:
– Важно проверять, что переменные, такие как Переработчик
и ТипПереработки
, не равны Неопределено
, прежде чем использовать их в запросе.
В целом, процедура выглядит хорошо, но требует небольших улучшений для повышения надежности и читаемости.