8.х Обработка замены характеристик номенклатуры?

Тема в разделе "Отчеты и обработки для "1С:Предприятие 8"", создана пользователем DeniNikitin, 23 авг 2010.

  1. TopicStarter Overlay
    DeniNikitin
    Offline

    DeniNikitin Опытный в 1С

    Регистрация:
    2 июл 2008
    Сообщения:
    51
    Симпатии:
    0
    Баллы:
    26
    Ситуация следующая:
    Изначально для номенклатуры были созданы характеристики через значения свойств объектов, потом создали характеристики с типом число, как написать обработку чтобы заменить текущую характеристику на характеристику с типом число, и при этом не нарушить целостность данных и штрих кодов с характеристиками?

    Заранее благодарен!
  2. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Т.е. сейчас у вас свойство элемента справочника имеет тип "Значение свойств объектов (классификатор)", а вы хотите заменить его на тип "Число"?

    Эм. и еще. а как связано свойство номенклатуры и штрихкод?
  3. TopicStarter Overlay
    DeniNikitin
    Offline

    DeniNikitin Опытный в 1С

    Регистрация:
    2 июл 2008
    Сообщения:
    51
    Симпатии:
    0
    Баллы:
    26
    Да так и есть, но просто для штрихкодов номенклатуры также указаны характеристики или я просто чего не понимаю!?
  4. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Постойте, какие у штрих кодов характеристики? Всмысле у штрих-кода есть свойство "Характеристика номенклатуры", но это совершенно другое, и к "Свойствам" (т.е. к тем данным, которые вводятся на закладке Свойства) справочника Номенклатура не имеет отношения.
  5. TopicStarter Overlay
    DeniNikitin
    Offline

    DeniNikitin Опытный в 1С

    Регистрация:
    2 июл 2008
    Сообщения:
    51
    Симпатии:
    0
    Баллы:
    26
    Я не имел ввиду вкладку свойство, а имел ввиду вкладку характеристика!
  6. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Понял.

    Ну так что можно попробовать: делаете характеристику составного типа (ЗначенияСвойствОбъектов + Число). Пишите обработку, в которой выбираете из РС "ЗначенияСвойствОбъектов" все записи с нужным свойством, и перезаписываете их, используя приведение к типу Число.
    Потом характеристику эту делаете простого типа (оставляете только Число).
  7. TopicStarter Overlay
    DeniNikitin
    Offline

    DeniNikitin Опытный в 1С

    Регистрация:
    2 июл 2008
    Сообщения:
    51
    Симпатии:
    0
    Баллы:
    26
    Пример кода обработки не могли бы привести, а то я написал, а результата не получаю?
  8. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Думаю будет приблизительно так:
    Сам запрос:
    Код:
    "ВЫБРАТЬ
    ЗначенияСвойствОбъектов.Объект,
    ЗначенияСвойствОбъектов.Значение
    ИЗ
    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ГДЕ
    ЗначенияСвойствОбъектов.Свойство = &МоеСвойство"
    
    
    потом далее:
    Код:
    МЗ = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();
    Пока Выборка.Следующий() Цикл
    МЗ.Объект = Выборка.Объект;       
    МЗ.Свойство = МоеСвойство;
    МЗ.Прочитать();
    Если МЗ.Выбран() Тогда
    МЗ.Значение = Число(Выборка.Значение);
    МЗ.Записать();
    КонецЕсли;
    КонецЦикла;
    
    
    На копии базы только делайте, набирал прям здесь, не проверял.
  9. TopicStarter Overlay
    DeniNikitin
    Offline

    DeniNikitin Опытный в 1С

    Регистрация:
    2 июл 2008
    Сообщения:
    51
    Симпатии:
    0
    Баллы:
    26
    Спасибо сейчас попробую!

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