Информационный поток
Задания вакансии материалы разработки сообщения форума
Яндекс-директ

Изменение типа дополнительного реквизита БСП

  • Добавить свою разработку
 
Лавелина Инна
Связаться с автором
08.12.2016 00:14:45
0
После создания реквизита, по умолчанию, изменение типа реквизита не доступно.

Для того, чтобы все-таки изменить тип, необходимо открыть карточку реквизита и выбрать пункт меню: "Еще - Разрешить редактирование реквизитов".

После этого появится возможность изменить тип. Система может предупредить, что уже есть введенные значения с данным набором типов и Вы можете все сломать. 

Но что именно Вы можете сломать и какой истинный масштаб трагедии Вы не узнаете. 
Скриншоты
Описание

В БСП в части дополнительных реквизитов имеем следующую структуру.

 

Настройки дополнительных реквизитов хранятся в объекте "ПланВидовХарактеристик.ДополнительныеРеквизитыИСведения"

Сами значения реквизитов хранятся в табличной части "ДополнительныеРеквизиты" соответствующих справочников и документов.

 

Таким образом для корректного изменения типа у дополнительного реквизита необходимо найти  в базе существующие значения данного реквизита, определить минимальный набор используемых им типов и их квалификаторов.

 

После чего можно изменять тип реквизита, но так, чтобы состав типов содержал уже используемые типы и квалификаторы были не "меньше" используемых.


Пример:

Есть некий абстрактный дополнительный реквизит Реквизит1 с доступными типами {Контрагент, Договор, Строка(100)}

Проанализировав базу, определили, что данный реквизит принимает значения с типом Контрагент и Строка. Причем максимальное строковое значение имеет длину 50. 

Таким образом, мы можем безболезненно удалить из списка доступных типов данного дополнительного реквизита тип Договор, а длину строковых значений уменьшить до 50. Также можем добавить другие произвольные типы.

 

Для верности анализ существующих значений в базе лучше проводить в монопольном режиме, чтобы в промежутке между анализом и изменением типа кто-то не добавил новое значение дополнительного реквизита с новым типом.

 

Для автоматизации описанных действий собственно и написана данная обработка.

 

На самом деле, на момент написания обработки автор не обнаружил типовой функционал, разрешающий изменения типа (о чем сообщила пользователь kn, за что ей огромное спасибо :)) . Но даже после этого тайного знания функционал обработки может быть полезен, для более взвешенного принятия решения об изменении типа. 


ОБЯЗАТЕЛЬНО!!! Перед изменением необходимо сохранить копию текущей базы.


Ограничения: Управляемые формы


Примеры использования обработки.

 

Добавление "Строки" в типы дополнительного реквизита:

 


 

Проверка на удаление используемого типа (вариант изменения нового типа после анализа данных базы);

 


Проверка на удаление используемого типа (вариант изменения нового типа до анализа данных базы);


Отблагодарить автора

Ключевые слова:   БСП   дополнительные реквизиты   обработка   изменение типа
Файлы для скачивания
0
    ≡ к списку разработок