Вход | Регистрация
 

Заведение свойств размер и цвет у товаров в УПФ 1.6

Заведение свойств размер и цвет у товаров в УПФ 1.6
Я
   falselight
 
26.05.20 - 07:42
В базе УНФ 1.6, в категориях товара
Свойства Цвет и Размер в новых категориях заведены неправильно.
Надо объединить свойства Цвет и Размер в категориях, в качестве основного элемента -
выбрать элементы в которых указано имя "Цвет_Основной", "Размер_Основной".
Также при заведении новых характеристик сделать проверку на повторение свойств
и при этом делать создавать общее свойство.

Подскажите пожалуйста, свойства и цвет эти вводятся в свойства и значения, характеристик номенклатуры?
   Winnie Buh
 
1 - 26.05.20 - 08:57
какой-то набор слов
категория <> характеристика <> свойство
   hhhh
 
2 - 26.05.20 - 10:20
(0) что такое УПФ?
   falselight
 
3 - 26.05.20 - 16:20
(2)

Управление нашей фирмой, редакция 1.6 (1.6.13.60) 

Есть свойства для категорий и для характеристик. Общие. Цвет и Размер. Но для некоторых категорий были введены те же свойства, но дублирующие уже имеющиеся.
Мне нужно сейчас эти дубли, переписать на общие, основные свойства.

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

Буду сейчас разбираться.
   falselight
 
4 - 27.05.20 - 05:54
Подсчкажите пожалуйста, каким образом ПланВидовХарактеристик.ДополнительныеРеквизитыИсведения
связан со справочником КатегорииНоменклатуры?
   falselight
 
5 - 27.05.20 - 06:17
Где нужно выявить, что у категорий номенклатуры. задан не верный размер? Нужно тот у которого имя Размер_Основной - Это значение плана видов характеристик
ДополнительныеРеквизитыИСведения . Подскажите пожалуйста.
   Ёпрст
 
6 - 27.05.20 - 09:42
(5) посмотреть запросом, выполнить в консоле, там же изменить на нужный
   falselight
 
7 - 27.05.20 - 10:13
(6) Обработку делаю. как это в консоле изменить на нужный?
   Ненавижу 1С
 
8 - 27.05.20 - 10:39
так заведены как что: доп.реквизиты, доп. свойства или характеристики?
   falselight
 
9 - 27.05.20 - 11:59
Выбираю дополнительные характеристики номенклатуры
как сейчас в объекте полученном по ссылке подменить свойство
на

НужноеСвойствоЦвет ???

&НаСервере
Процедура ВыполнитьКорректировкуНаСервере()
    НужноеСвойствоЦвет   = ПланыВидовХарактеристик.ДополнительныеРеквизитыИСведения.НайтиПоРеквизиту("Имя", "Цвет_Основной");
    //

    Запрос       = Новый Запрос;
    Запрос.Текст = "
        |ВЫБРАТЬ
        |    ХарактеристикиНоменклатурыДополнительныеРеквизиты.Ссылка                КАК ХарактеристикаСсылка,
        |    ХарактеристикиНоменклатурыДополнительныеРеквизиты.Ссылка.Владелец       КАК ВладелецНоменклатура,
        |    ХарактеристикиНоменклатурыДополнительныеРеквизиты.Свойство.Ссылка       КАК СвойствоСсылка,
        |    ХарактеристикиНоменклатурыДополнительныеРеквизиты.Свойство.Наименование КАК СвойствоНаименование,
        |    ХарактеристикиНоменклатурыДополнительныеРеквизиты.Свойство.Заголовок    КАК СвойствоЗаголовок,
        |    ХарактеристикиНоменклатурыДополнительныеРеквизиты.Свойство.Имя          КАК СвойствоИмя,
        |    ХарактеристикиНоменклатурыДополнительныеРеквизиты.Значение              КАК Значение
        |ИЗ
        |    Справочник.ХарактеристикиНоменклатуры.ДополнительныеРеквизиты КАК ХарактеристикиНоменклатурыДополнительныеРеквизиты
        |ГДЕ
        |    ХарактеристикиНоменклатурыДополнительныеРеквизиты.Свойство.Заголовок = ""Цвет""
        |    И ХарактеристикиНоменклатурыДополнительныеРеквизиты.Свойство.Имя = """"";
    Рез = Запрос.Выполнить();
    Если Рез.Пустой() Тогда
        Выборка = Рез.Выбрать();
        Пока Выборка.Следующий() Цикл
            Если СтрНайти(Выборка.СвойствоИмя, "Цвет2") <> 0 Тогда
                Продолжить;
            КонецЕсли;
            Если СтрНайти(Выборка.СвойствоИмя, "Цвет3") <> 0 Тогда
                Продолжить;
            КонецЕсли;
            Если СтрНайти(Выборка.СвойствоИмя, "Цвет4") <> 0 Тогда
                Продолжить; 
            КонецЕсли;
            // 

            ХарактеристикаОбъект = Выборка.ХарактеристикаСсылка.ПолучитьОбъект();
            ХарактеристикаОбъект
        КонецЦикла;
    КонецЕсли;
   falselight
 
10 - 27.05.20 - 12:00
(9+) То есть я получил объект, у которого в табличной части есть строка у которой мне нужно подменить свойство?
   falselight
 
11 - 27.05.20 - 12:40
Та отработает ли? На сколько оптимальный код?

            // 

            ХарактеристикаОбъект = Выборка.ХарактеристикаСсылка.ПолучитьОбъект();
            Для Каждого СтрДопР Из ХарактеристикаОбъект.ДополнительныеРеквизиты Цикл
                Если СтрДопР.Свойство.Заголовок = "Цвет" Тогда
                    СтрДопР.Свойство = НужноеСвойствоЦвет;
                КонецЕсли;
            КонецЦикла;
            ХарактеристикаОбъект.Записать();
            Сообщить("У характеристики " + Выборка.ХарактеристикаНаименование + ", свойство " + Выборка.СвойствоНаименование + " изменено на " + НужноеСвойствоЦвет);
        КонецЦикла;
   falselight
 
12 - 27.05.20 - 15:12
Gjlcrf;bnt gj;fkeqcnf gj fkujhbnve
   falselight
 
13 - 27.05.20 - 15:13
Подскажите пожалуйста по алгоритму
   falselight
 
14 - 28.05.20 - 04:49
Имею выборку.
И заполненную ею табличную часть обработки.
Нужно в характеристике что есть в тч, изменить реквизит её табличной части.
Оптимальный ли такой код ?????
    Для Каждого СтрХНЦвета Из ХарактеристикиНоменклатурыЦвета Цикл
        Если СтрНайти(СтрХНЦвета.СвойствоИмя, "Цвет2") <> 0 Тогда
            Продолжить;
        КонецЕсли;
        Если СтрНайти(СтрХНЦвета.СвойствоИмя, "Цвет3") <> 0 Тогда
            Продолжить;
        КонецЕсли;
        Если СтрНайти(СтрХНЦвета.СвойствоИмя, "Цвет4") <> 0 Тогда
            Продолжить; 
        КонецЕсли;
        // 

        ХарактеристикаОбъект = СтрХНЦвета.Характеристика.ПолучитьОбъект();
        Для Каждого СтрДопР Из ХарактеристикаОбъект.ДополнительныеРеквизиты Цикл
            Если СтрДопР.Свойство.Заголовок = "Цвет" Тогда
                СтрДопР.Свойство = НужноеСвойствоЦвет;
            КонецЕсли;
        КонецЦикла;
        ХарактеристикаОбъект.Записать();
        Сообщить("У характеристики " + СтрХНЦвета.Характеристика + ", свойство " + СтрХНЦвета.Свойство + " изменено на " + НужноеСвойствоЦвет.Наименование);
        //

        СвойствоОбъект = СтрХНЦвета.Свойство.ПолучитьОбъект();
        СвойствоОбъект.УстановитьПометкуУдаления(Истина);
        Сообщить("Свойство " + СтрХНЦвета.Свойство + " помечено на удаление.");
        //

    КонецЦикла;

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.