8.х Программно создать свойство ПВХ

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем TODD22, 26 авг 2015.

  1. TopicStarter Overlay
    TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.759
    Симпатии:
    147
    Баллы:
    104
    Здравствуйте.

    Как можно создать программно доп свойство в типовой УПП для справочника основных средств?
    --- Объединение сообщений, 26 авг 2015 ---
    То есть не записать значение свойства. А создать новое свойство. Задать ему идентификатор и назначить его справочнику основных средств.
  2. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    7.581
    Симпатии:
    717
    Баллы:
    204
    ээээ....
    Код:
    НовыйПВХ = ПланыВидовХарактеристик.<ПланВХ>.СоздатьЭлемент();
    НовыйПВХ.НазначениеСвойств = ПланыВидовХарактеристик.НазначенияСвойсвКатегорийОбъектов.Справочник_ОсновныеСредства;
    НовыйПВХ.Наименование = "Мое доп. свойство ОС";
    НовыйПВХ.ТипЗначения = Тип(<ДоступныйТипЗначения>);
    НовыйПВХ.Записать();
    TODD22 нравится это.
  3. TopicStarter Overlay
    TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.759
    Симпатии:
    147
    Баллы:
    104
    Получилось :)

    Только я написал:
    НовыйПВХ.ТипЗначения = Новый ОписаниеТипов("Строка");
  4. TopicStarter Overlay
    TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.759
    Симпатии:
    147
    Баллы:
    104
    Проблема не могу создать элемент ПВХ.
    Вот код:


    Код:
    ПараметрыСтроки = Новый КвалификаторыСтроки(36);
      
        ПВХ = ПланыВидовХарактеристик.СвойстваОбъектов.СоздатьЭлемент();
        ПВХ.ТипЗначения = Тип("Строка");
        ПВХ.НазначениеСвойства = ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ОсновныеСредства;
        ПВХ.Наименование = "Идентификатор";
        ПВХ.Записать();
    Вот так не работает. Тип "Строка" не устанавливается.

    Если делаю так:


    Код:
    ПараметрыСтроки = Новый КвалификаторыСтроки(36);
        Массив = Новый Массив;
        Массив.Добавить(Тип("Строка"));
        ПВХ = ПланыВидовХарактеристик.СвойстваОбъектов.СоздатьЭлемент();
        ПВХ.ТипЗначения = Новый ОписаниеТипов(Массив,,,,ПараметрыСтроки,,);
        ПВХ.НазначениеСвойства = ПланыВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ОсновныеСредства;
        ПВХ.Наименование = "Идентификатор";
        ПВХ.Записать();
    Пробовал так:

    ПВХ.ТипЗначения = Новый ОписаниеТипов("Строка",,,,ПараметрыСтроки,,);
    Не проходит синтаксический контроль. Пишет что конструктор не найден. При чём дома на УПП этот код срабатывает.
  5. TopicStarter Overlay
    TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.759
    Симпатии:
    147
    Баллы:
    104
    Разобрался.
    Было:
    ПВХ.ТипЗначения = Новый ОписаниеТипов(Массив,,,,ПараметрыСтроки,,);
    Надо:
    ПВХ.ТипЗначения = Новый ОписаниеТипов(Массив,,ПараметрыСтроки);

    Но почему дома первый вариант работал.... не понятно.

Поделиться этой страницей