В процессе работы с конфигурацией «1С:Бухгалтерия государственного учреждения 2.0» (БГУ 2.0) технические специалисты часто сталкиваются с ситуацией, когда название документа в пользовательском интерфейсе не совпадает с его именем в дереве метаданных Конфигуратора. Одной из таких задач является поиск документа «Заявка на финансирование бюджетополучателя» и изменение ограничения на максимальную сумму документа (например, при необходимости ввести сумму более 99 999 999,00 рублей).
Рассмотрим пошагово, как идентифицировать этот объект, найти его в Конфигураторе и корректно изменить настройки разрядности числа.
Прежде чем переходить в Конфигуратор, нам необходимо точно выяснить внутреннее имя объекта. В современных версиях платформы 1С 8.3 для этого предусмотрен стандартный инструмент. Проанализируем, как им воспользоваться:
Документ.ЗаявкаНаФинансирование).Если поиск не дает результатов, обратим внимание на заголовок окна самого документа. Нажмем правой кнопкой мыши на заголовок и выберем пункт «Информация для технического специалиста». В появившемся окне будет четко указано полное имя метаданных объекта. Это поможет нам понять, является ли документ частью типовой конфигурации или он был добавлен через расширение.
Разберем ситуацию, когда мы открыли Конфигуратор, но не видим документа в общем списке. Это может происходить по нескольким причинам:
Бюджетирование или Планирование и санкционирование.Для быстрого поиска в дереве метаданных Конфигуратора нажмем комбинацию клавиш Ctrl + Shift + F (глобальный поиск) и введем синоним документа. Также можно воспользоваться стандартным поиском по дереву (Ctrl + F), предварительно раскрыв ветку «Документы».
Ограничение суммы восьмью знаками до запятой обычно связано с настройками типа данных. Проанализируем три места, где это ограничение может быть установлено:
1. Квалификаторы числа в реквизитах метаданных
Найдем в дереве объектов наш документ, раскроем список его Реквизитов и найдем тот, который отвечает за сумму (обычно это СуммаДокумента или Сумма). В окне свойств (Alt + Enter) найдем строку «Тип» и нажмем на кнопку выбора (три точки). Проверим параметры:
2. Маска ввода в форме документа
Иногда ограничение стоит не в базе данных, а в самой визуальной форме. Перейдем на закладку «Формы» документа, откроем основную форму. Выберем поле ввода суммы на форме и откроем его свойства. Проверим свойство «Маска». Если там задан жесткий формат (например, ЧЦ=10; ЧДЦ=2), его нужно изменить или очистить.
3. Программная проверка в модуле
Выясним, нет ли программного запрета на ввод больших сумм. Для этого откроем Модуль объекта и проверим процедуру ПередЗаписью или ОбработкаПроверкиЗаполнения. Код может выглядеть примерно так:
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
Если СуммаДокумента > 99999999 Тогда
Сообщить("Сумма превышает допустимый лимит!");
Отказ = Истина;
КонецЕсли;
КонецПроцедуры
В этом случае необходимо либо закомментировать это условие, либо изменить пороговое значение.
Если документ все еще не удается найти или непонятно, где именно срабатывает ограничение, применим метод Замера производительности:
В открывшемся списке процедур мы увидим все модули, которые вызывались. Это кратчайший путь к поиску обработчиков конкретного документа.
Внимание: При изменении длины числа в типовой конфигурации учитывайте следующие риски:
XML или TXT), убедитесь, что принимающая сторона поддерживает суммы такой разрядности. В противном случае файл обмена будет отклонен из-за несоответствия формату (XSD-схеме).Таким образом, мы разобрали комплексный подход к поиску и модификации объектов в БГУ 2.0, что позволяет гибко адаптировать систему под нужды конкретного учреждения.