|
свойства номенклатуры | ☑ | ||
---|---|---|---|---|
0
Woolf
10.08.11
✎
17:04
|
Всем доброго времени суток! Вот чего то никак сообразить не могу:
обработкой записал в регистр сведений ЗначенияСвойствОбъектов Цвета и Размеры. Открываю справочник Номенклатуры. Цвета записаны, а Размеры нет. Подскажите, плз, чего проверить вот в упрощенном виде обработка: НовЗапись.Объект = ТоварСсылка; НовЗапись.Свойство = пвхСвойство.Ссылка; НовЗапись.Значение = сСпрЗначСвОб; НаборЗаписейЗначенияСвойств.Записать(); |
|||
1
Михаил Козлов
10.08.11
✎
17:05
|
Посмотите прямо в регистре, что записано.
|
|||
2
ssh2006
10.08.11
✎
17:07
|
"вот в упрощенном виде обработка" - мало кода. Приведи код
|
|||
3
Woolf
10.08.11
✎
17:08
|
(1)-в том то и дело, что в регистре все красиво записано.
И размер тоже, а открываю закладку "свойства" у этого товара - а там пусто. Чего не так? |
|||
4
ssh2006
10.08.11
✎
17:08
|
(3) ошибка в коде
|
|||
5
Woolf
10.08.11
✎
17:10
|
(2)
Перем Excel; Перем МетаДок; Перем ИмяДокумента; Перем ТаблицаРеквизитов; Перем НовыйДокУЦН; Перем ОшибкиКоличество; Перем ИмяФайла; Перем СпрТЦ; Процедура ДобавитьШК(Товар, ШК) Набор = РегистрыСведений.Штрихкоды.СоздатьМенеджерЗаписи(); Набор.Владелец = Товар; Набор.Качество = Справочники.Качество.Новый; Набор.ЕдиницаИзмерения = Товар.ЕдиницаХраненияОстатков; Набор.ТипШтрихкода = ПланыВидовХарактеристик.ТипыШтрихкодов.EAN13; Набор.Штрихкод = ШК; Попытка Набор.Записать(); Исключение Сообщить("Произошла ошибка " + ОписаниеОшибки() + "Штрих-код не записан " + ШК + "."); КонецПопытки; Сообщить("Для товара: " + СокрЛП(Товар.Наименование) + " добавлен штрих-код " + ШК); КонецПроцедуры Функция ПоискНоменклатуры(Штрихкод) СпрНомРа = Справочники.Номенклатура; Товар = СпрНомРа.ПустаяСсылка(); Запрос = Новый Запрос(" | ВЫБРАТЬ | Штрихкоды.Штрихкод, | Штрихкоды.Владелец КАК Товар | ИЗ | РегистрСведений.Штрихкоды КАК Штрихкоды | ГДЕ | Штрихкоды.Штрихкод = &Штрихкод |"); запрос.УстановитьПараметр("Штрихкод",Штрихкод); Результат = Запрос.Выполнить().Выбрать(); Пока Результат.Следующий() Цикл Товар = Результат.товар; КонецЦикла; Возврат Товар; КонецФункции Функция КонтрольЦелесообразностиЗаписиЦеныНоменклатуры(РезПоиска,МассивТипЦен,СамаЦена) Целесообразность = Истина; Запрос = Новый Запрос(" | ВЫБРАТЬ | ЦеныСрезПоследних.Цена КАК Цена, | ЦеныСрезПоследних.ТипЦен | ИЗ | РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаОкончания,ТипЦен В (&МассивТипЦен)) КАК ЦеныСрезПоследних | ГДЕ | ЦеныСрезПоследних.Номенклатура = &Номенклатура |"); Запрос.УстановитьПараметр("ДатаОкончания",ТекущаяДата()); Запрос.УстановитьПараметр("МассивТипЦен", МассивТипЦен); Запрос.УстановитьПараметр("Номенклатура", РезПоиска); Результат = Запрос.Выполнить().Выбрать(); Пока Результат.Следующий() Цикл Цена = Результат.Цена; КонецЦикла; Попытка Если Цена = Число(СамаЦена) Тогда Целесообразность = Ложь; КонецЕсли; Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; Возврат Целесообразность; КонецФункции Процедура ЗаписатьСвойство(ТоварСсылка,НаименованиеСвойства,ЗначениеСвойства) пвхСвойство = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию(НаименованиеСвойства,Истина); Если пвхСвойство = неопределено Тогда пвхСвойство = ПланыВидовХарактеристик.СвойстваОбъектов.СоздатьЭлемент(); пвхСвойство.Наименование = НаименованиеСвойства; пвхСвойство.Записать(ложь); КонецЕсли; СпрЗначСвОб = Справочники.ЗначенияСвойствОбъектов; сСпрЗначСвОб = СпрЗначСвОб.НайтиПоНаименованию(ЗначениеСвойства,Истина); Если сСпрЗначСвОб = СпрЗначСвОб.ПустаяСсылка() Тогда НовРазмер = СпрЗначСвОб.СоздатьЭлемент(); НовРазмер.Наименование = ЗначениеСвойства; НовРазмер.Владелец = пвхСвойство; НовРазмер.Записать(); сСпрЗначСвОб = НовРазмер.Ссылка; КонецЕсли; НаборЗаписейЗначенияСвойств = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьНаборЗаписей(); НаборЗаписейЗначенияСвойств.Отбор.Объект.Установить(ТоварСсылка); НаборЗаписейЗначенияСвойств.Отбор.Свойство.Установить(пвхСвойство.Ссылка); НаборЗаписейЗначенияСвойств.Прочитать(); Если НаборЗаписейЗначенияСвойств.Количество()=0 Тогда НовЗапись = НаборЗаписейЗначенияСвойств.Добавить(); Иначе НовЗапись = НаборЗаписейЗначенияСвойств[0]; КонецЕсли; НовЗапись.Объект = ТоварСсылка; НовЗапись.Свойство = пвхСвойство.Ссылка; НовЗапись.Значение = сСпрЗначСвОб; НаборЗаписейЗначенияСвойств.Записать(); КонецПроцедуры Процедура ИмпортИзExcel() экспорт Если НайтиФайлы(ПутьКФайлу).Количество() = 0 Тогда Предупреждение("Не найден файл экспорта MS Excel"); Возврат; КонецЕсли; Сообщить("Инициализация MS Excel ..."); Попытка Excel = Новый COMОбъект("Excel.Application"); Исключение Предупреждение("Не удалось инициализировать MS Excel"); Возврат; КонецПопытки; СпрНомРа = Справочники.Номенклатура; РодительскаяПапка = Справочники.Номенклатура.НайтиПоНаименованию("Импорт из EXCEL"); СпрКлЕдИзм = Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию("шт"); СпрТЦ = Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("Закупочные"); ТекВалюта = Справочники.Валюты.НайтиПоНаименованию("руб."); ВидНоменклатуры = Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Товар (пр. ТМЦ)"); СтавкаНДС = Перечисления.СтавкиНДС.БезНДС; СпрГТД = Справочники.НомераГТД; СпрНомГруппа = Справочники.НоменклатурныеГруппы; СпрСтрана = Справочники.КлассификаторСтранМира; СпрХарКа = Справочники.ХарактеристикиНоменклатуры; СпрСерии = Справочники.СерииНоменклатуры; НаборЗаписей = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьНаборЗаписей(); //СпрЕдиницыИзмерения = Справочники.ЕдиницыИзмерения.НайтиПоНаименованию(""); Если СпрКлЕдИзм.Пустая() Тогда Предупреждение("Единица измерения не найдена!"); Возврат; КонецЕсли; Если СпрТЦ.Пустая() Тогда Предупреждение("Тип цен не найден!"); Возврат; КонецЕсли; Если ТекВалюта.Пустая() Тогда Предупреждение("Валюта не обнаружена!"); Возврат; КонецЕсли; Попытка Excel.Workbooks.Open(ПутьКФайлу); ОшибкиКоличество = 0; ОчиститьСообщения(); ВремяСтарта = ТекущаяДата(); Для Каждого Лист Из Excel.Sheets Цикл //Проверка на соответствие ячеек //"НомерСтроки"-"Наименование товара"-"Код"-"ШтрихКод"-"Количество"-"Цена" ОписаниеОшибкиСодержанияПолей = ""; Если Лист.Cells(3,1).Value <> "Н стр" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + "В первом столбце должен Номер строки!"; КонецЕсли; Если Лист.Cells(3,2).Value <> "Артикул" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + Символы.ПС + "Во втором столбце должен быть Артикул!"; КонецЕсли; Если Лист.Cells(3,3).Value <> "Номенклатура" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + Символы.ПС + "В третьем столбце должна быть Номенклатура!"; КонецЕсли; // Если Лист.Cells(3,4).Value <> "Группа" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + Символы.ПС + "В четвёртом столбце должна быть Группа!"; КонецЕсли; // Если Лист.Cells(3,5).Value <> "Цвет" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + Символы.ПС + "В пятом столбце должен быть Цвет!"; КонецЕсли; Если Лист.Cells(3,6).Value <> "Размер" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + Символы.ПС + "В шестом столбце должен быть Размер!"; КонецЕсли; Если Лист.Cells(3,7).Value <> "Полнота" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + Символы.ПС + "В седьмом столбце должно быть Количество!"; КонецЕсли; Если Лист.Cells(3,8).Value <> "Код" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + Символы.ПС + "В восьмом столбце должен быть Код!"; КонецЕсли; Если Лист.Cells(3,9).Value <> "Штрихкод" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + Символы.ПС + "В девятом столбце долджен быть штрихкод!"; КонецЕсли; Если Лист.Cells(3,10).Value <> "ГТД" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + Символы.ПС + "В десятом столбце должен быть ГТД!"; КонецЕсли; Если Лист.Cells(3,11).Value <> "Страна" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + Символы.ПС + "В одиннадцатом столбце должна быть Страна!"; КонецЕсли; Если Лист.Cells(3,12).Value <> "Кол" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + Символы.ПС + "В двенадцатом столбце должно быть Количество!"; КонецЕсли; Если Лист.Cells(3,13).Value <> "Цена" Тогда ОписаниеОшибкиСодержанияПолей = ОписаниеОшибкиСодержанияПолей + Символы.ПС + "В тринадцатом столбце должна быть Цена!"; КонецЕсли; Если ОписаниеОшибкиСодержанияПолей <> "" Тогда //Сообщить(ОписаниеОшибкиСодержанияПолей); Продолжить; КонецЕсли; КЧ = Новый КвалификаторыЧисла(15,2); КС = Новый КвалификаторыСтроки(); Массив = Новый Массив; Массив.Добавить(Тип("Строка")); ОписаниеТиповС = Новый ОписаниеТипов(Массив, , КС); Массив.Очистить(); Массив.Добавить(Тип("Число")); ОписаниеТиповЧ = Новый ОписаниеТипов(Массив, , ,КЧ); ЕдиницыИзмерения = Справочники.ЕдиницыИзмерения; ИмяЛиста = Врег(СокрЛП(Лист.Name)); НовыйДокУЦН = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент(); НовыйДокУЦН.Дата = ТекущаяДата(); НовыйДокУЦН.НеПроводитьНулевыеЗначения = Истина; НоваяСтрока = НовыйДокУЦН.ТипыЦен.Добавить(); НоваяСтрока.ТипЦен = Справочники.ТипыЦенНоменклатуры.НайтиПоНаименованию("Закупочные"); ПоследняяСтрока = Лист.UsedRange.Rows.Count; Для Строка = 4 По ПоследняяСтрока Цикл Индикатор = цел(Строка/ПоследняяСтрока*100); ОбработкаПрерыванияПользователя(); НСтр = Лист.Cells(Строка,1).Value; Артикул = Лист.Cells(Строка,2).Value; ИхНоменклатура = Лист.Cells(Строка,3).Value; ИхНомГруппа = Лист.Cells(Строка,4).Value; Цвет = Лист.Cells(Строка,5).Value; Размер = Лист.Cells(Строка,6).Value; Полнота = Лист.Cells(Строка,7).Value; Код = Лист.Cells(Строка,8).Value; Штрихкод = Лист.Cells(Строка,9).Text; ГТД = Лист.Cells(Строка,10).Text; Страна = Лист.Cells(Строка,11).Value; Кол = Число(Лист.Cells(Строка,12).Text); Цена = Лист.Cells(Строка,13).Text; //находим номенклатуру в справочнике //по штрихкоду //если нет - создаём её РезПоиска = ПоискНоменклатуры(Штрихкод); Если РезПоиска = СпрНомРа.ПустаяСсылка() Тогда //Создаём новый элемент НовыйТовар = СпрНомРа.СоздатьЭлемент(); НовыйТовар.Артикул = Артикул; НовыйТовар.Наименование = СокрЛП(ИхНоменклатура); НовыйТовар.НаименованиеПолное = СокрЛП(ИхНоменклатура); НовыйТовар.БазоваяЕдиницаИзмерения = СпрКлЕдИзм; НовыйТовар.ВидНоменклатуры = ВидНоменклатуры; НовыйТовар.Родитель = РодительскаяПапка; НовыйТовар.СтавкаНДС = СтавкаНДС; // сНомГруппа = СпрНомГруппа.НайтиПоНаименованию(ИхНомГруппа,Истина); Если сНомГруппа = СпрНомГруппа.ПустаяСсылка() Тогда НоваяГруппа = СпрНомГруппа.СоздатьЭлемент(); НоваяГруппа.Наименование = ИхНомГруппа; НоваяГруппа.Записать(); сНомГруппа = НоваяГруппа.Ссылка; КонецЕсли; НовыйТовар.НоменклатурнаяГруппа = сНомГруппа; // //поиск в справочнике стран СпрСтрана = Справочники.КлассификаторСтранМира.НайтиПоНаименованию(Страна,Истина); Если СпрСтрана.Пустая() Тогда ТекСтрана = Справочники.КлассификаторСтранМира.СоздатьЭлемент(); ТекСтрана.Наименование = Страна; ТекСтрана.НаименованиеПолное = Страна; ТекСтрана.Записать(); СпрСтрана = ТекСтрана.Ссылка; КонецЕсли; НовыйТовар.СтранаПроисхождения = СпрСтрана; СсылкаГТД = СпрГТД.НайтиПоКоду(ГТД); Если СсылкаГТД = Справочники.НомераГТД.ПустаяСсылка() Тогда НовыйГТД = СпрГТД.СоздатьЭлемент(); НовыйГТД.Код = ГТД; НовыйГТД.Записать(); СсылкаГТД = НовыйГТД.Ссылка; КонецЕсли; НовыйТовар.ВестиУчетПоСериям = Истина; НовыйТовар.НомерГТД = СсылкаГТД; НовыйТовар.Записать(); СпрСерии = Справочники.СерииНоменклатуры; НоваяСерия = СпрСерии.СоздатьЭлемент(); НоваяСерия.Владелец = НовыйТовар.Ссылка; НоваяСерия.НомерГТД = СсылкаГТД; НоваяСерия.Наименование = ГТД; НоваяСерия.Записать(); ЕИ = ЕдиницыИзмерения.СоздатьЭлемент(); ЕИ.Наименование = "шт"; ЕИ.Владелец = НовыйТовар.Ссылка; ЕИ.Коэффициент = 1; ЕИ.Записать(); НовыйТовар.ЕдиницаХраненияОстатков = ЕИ.Ссылка; НовыйТовар.Записать(); РезПоиска = НовыйТовар.Ссылка; ДобавитьШК(РезПоиска, Штрихкод); Иначе НайденнаяСсылкаЕИ = ЕдиницыИзмерения.НайтиПоНаименованию("шт",Истина,,РезПоиска); Если НайденнаяСсылкаЕИ = ЕдиницыИзмерения.ПустаяСсылка() Тогда ЕИ = ЕдиницыИзмерения.СоздатьЭлемент(); ЕИ.Наименование = "шт"; ЕИ.Владелец = РезПоиска; ЕИ.Записать(); РезПоиска.ЕдиницаХраненияОстатков = ЕИ.Ссылка; РезПоиска.Записать(); Иначе ЕИ = НайденнаяСсылкаЕИ; Конецесли; СсылкаГТД = СпрГТД.НайтиПоКоду(ГТД); Если СсылкаГТД = Справочники.НомераГТД.ПустаяСсылка() Тогда НовыйГТД = СпрГТД.СоздатьЭлемент(); НовыйГТД.Код = ГТД; НовыйГТД.Записать(); СсылкаГТД = НовыйГТД.Ссылка; КонецЕсли; ОбъектНомРа = РезПоиска.ПолучитьОбъект(); ОбъектНомРа.ВестиУчетПоСериям = Истина; ОбъектНомРа.ВестиУчетПоХарактеристикам = ложь; ОбъектНомРа.НомерГТД = СсылкаГТД; Если Артикул <> "" Тогда ОбъектНомРа.Артикул = Артикул; КонецЕсли; Если РезПоиска.НоменклатурнаяГруппа = СпрНомГруппа.ПустаяСсылка() Тогда сНомГруппа = СпрНомГруппа.НайтиПоНаименованию(ИхНомГруппа,Истина); Если сНомГруппа = СпрНомГруппа.ПустаяСсылка() Тогда НоваяГруппа = СпрНомГруппа.СоздатьЭлемент(); НоваяГруппа.Наименование = ИхНомГруппа; НоваяГруппа.Записать(); сНомГруппа = НоваяГруппа.Ссылка; КонецЕсли; ОбъектНомРа.НоменклатурнаяГруппа = сНомГруппа; КонецЕсли; ОбъектНомРа.Записать(); СпрСерии = Справочники.СерииНоменклатуры; ВыборкаСерий = СпрСерии.Выбрать(,РезПоиска); псСпрСерии = СпрСерии.ПустаяСсылка(); НайденаСерия = псСпрСерии; Пока ВыборкаСерий.Следующий() Цикл НайденаСерия = ВыборкаСерий.Ссылка; Прервать; КонецЦикла; Если НайденаСерия = СпрСерии.ПустаяСсылка() Тогда НоваяСерия = СпрСерии.СоздатьЭлемент(); НоваяСерия.Владелец = РезПоиска; НоваяСерия.НомерГТД = СсылкаГТД; НоваяСерия.Наименование = ГТД; НоваяСерия.Записать(); КонецЕсли; Сообщить("Для существующего товара " + СокрЛП(РезПоиска) + " установлен ГТД: " + СокрЛП(ГТД)); КонецЕсли; //ЗаписатьСвойство(РезПоиска,НаименованиеСвойства,ЗначениеСвойства); ЗаписатьСвойство(РезПоиска,"размер",Размер); ЗаписатьСвойство(РезПоиска,"цвет",Цвет); //ЗаписатьСвойство(РезПоиска,"торговая марка",ТорговаяМарка); Если Строка(Полнота) <> "" Тогда ЗаписатьСвойство(РезПоиска,"полнота",полнота); КонецЕсли; //А нужно ли устанавливать цены? //Может они уже записаны в таком же значении? МассивТипЦен = Новый Массив; МассивТипЦен.Добавить(СпрТЦ); ЦелесообразностьВводаНовойЦены = КонтрольЦелесообразностиЗаписиЦеныНоменклатуры(РезПоиска,МассивТипЦен,Цена); Если ЦелесообразностьВводаНовойЦены = Истина Тогда НоваяСтрока = НовыйДокУЦН.Товары.Добавить(); НоваяСтрока.ТипЦен = СпрТЦ; НоваяСтрока.Номенклатура = РезПоиска; НоваяСтрока.ЕдиницаИзмерения = ЕИ.Ссылка; НоваяСтрока.Цена = Цена; НоваяСтрока.Валюта = ТекВалюта; КонецЕсли; КонецЦикла; НовыйДокУЦН.Ответственный = ПараметрыСеанса.ТекущийПользователь; НовыйДокУЦН.Комментарий = "Документ сформирован на основании файла excel " + СокрЛП(лПолучитьИмяФайлаИзПолногоПути(ПутьКФайлу)); //НовыйДокУЦН.ПолучитьФорму().Открыть(); НовыйДокУЦН.Записать(РежимЗаписидокумента.Запись); Документы.УстановкаЦенНоменклатуры.ПолучитьФормуСписка().Открыть(); КонецЦикла; Если ОписаниеОшибкиСодержанияПолей <> "" Тогда Сообщить(ОписаниеОшибкиСодержанияПолей); КонецЕсли; //СоздатьТаблицуПоЛисту(ТаблицаРеквизитов,"Лист1"); Если ОшибкиКоличество > 0 Тогда ЗавершениеОбработки(); Возврат; КонецЕсли; //ДобавитьДокументы(); // //Документы[ИмяДокумента].ПолучитьФормуСписка().Открыть(); ВремяФиниша = ТекущаяДата(); ВремяРаботыМин = Цел((ВремяФиниша - ВремяСтарта)/60); ВремяРаботыСек = (ВремяФиниша - ВремяСтарта) - ВремяРаботыМин * 60; Сообщить(?(ОшибкиКоличество>0,"Выявлено " + СокрЛП(строка(ОшибкиКоличество))+ " ошибок",""),СтатусСообщения.Информация); Сообщить("Время выполнения:" + строка(ВремяРаботыМин) + " мин. " + строка(ВремяРаботыСек) + " сек.",СтатусСообщения.Информация); ЗавершениеОбработки(); Сообщить("Обработка завершена!",СтатусСообщения.Информация); Надпись = "Выполнено"; Исключение ЗавершениеОбработки(); Предупреждение(ОписаниеОшибки()); КонецПопытки; КонецПроцедуры |
|||
6
ssh2006
10.08.11
✎
17:20
|
Используй отладку - поставь точку останова в процедуре записи и посмотри, появляются ли там размеры вообще
|
|||
7
Жан Пердежон
10.08.11
✎
17:20
|
пвх подчиненный наверно
|
|||
8
Aprobator
10.08.11
✎
17:22
|
сдается мне, что где то отбор включен по умолчанию.
|
|||
9
Aprobator
10.08.11
✎
17:30
|
а не - все проще. Назначение свойства кто указывать будет? Вот свойство цвет явно уже было у номенклатуры, а свойство размер создавалось в коде. А там ляп - назначение свойства (Справочник Номенклатура) не указан.
|
|||
10
Жан Пердежон
10.08.11
✎
17:33
|
точнее да, не подчиненный, а
НазначениеСвойства - не заполнено |
|||
11
Woolf
10.08.11
✎
17:54
|
(9) - я жутко извиняюсь, но ранее я прописал у номенклатуры и Цвет, и Размер. То есть, выражаясь по простонародному, в карточке номенклатуры напротив "Цвет" стоит "красный", а напротив "Размер" ничего нет. А в регистре красота - все написано и прописано.
|
|||
12
Aprobator
10.08.11
✎
17:55
|
(11) ищи одноименное свойство, но не у справочника номенклатура. Больше в голову ничего не приходит.
|
|||
13
Aprobator
10.08.11
✎
17:56
|
+(12) у тебя же нет контрольки, что свойство именно от Номенклатуры схватилось.
|
|||
14
Woolf
10.08.11
✎
17:59
|
(13) опа
в точку у "Характеристик номенклатуры" тоже есть Размер "у тебя же нет контрольки" - а как ее прописать? |
|||
15
Жан Пердежон
10.08.11
✎
18:19
|
вот этот кусок кода исправить надо:
пвхСвойство = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию(НаименованиеСвойства,Истина); Если пвхСвойство = неопределено Тогда пвхСвойство = ПланыВидовХарактеристик.СвойстваОбъектов.СоздатьЭлемент(); пвхСвойство.Наименование = НаименованиеСвойства; пвхСвойство.Записать(ложь); КонецЕсли; |
|||
16
Woolf
10.08.11
✎
18:24
|
(15) - эт понятно, а как НазначениеСвойства указать?
пвхСвойство.НазначениеСвойства = |
|||
17
Aprobator
11.08.11
✎
09:49
|
(16) после = проблема что поставить что ли?
|
|||
18
Aprobator
11.08.11
✎
09:51
|
в обработке лучше укажи список свойств явно через реквизиты. Тебе так проще будет. Код в (15) вообще не катит.
|
|||
19
Aprobator
11.08.11
✎
09:53
|
а еще проще на время работы твоей обработки, раз уж свойство создано. Переименуй Размер у характеристики номенклатуры в Размер1 например. После того как обработка отработает - вернешь все взад.
|
|||
20
Жан Пердежон
11.08.11
✎
10:54
|
(16) там предопределенное значение будет, в первая строка в (15) тоже не катит
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |