|
Доп реквизиты УТ 11 |
☑ |
0
gvozdoderov
26.03.13
✎
16:33
|
Добрый день!
Подскажите пожалуйста как в УТ11 изменить значение дополнительного реквизита справочника Номенклатуры или добавить новое значение и установить его в справочнике. Сам реквизит при это создавать не надо.
|
|
1
lxndr
26.03.13
✎
16:35
|
1. Открываешь нужную номенклатуру
2. На форме находишь нужный доп. реквизит
3. Меняешь его значение
4. Сохраняешь номенклатуру
|
|
2
gvozdoderov
26.03.13
✎
16:35
|
(1) в конфигураторе
|
|
3
lxndr
26.03.13
✎
16:41
|
Если Не ПустаяСтрока(Источник.КаталожныйНомер) Тогда
СтрокаДопРеквизита = Объект.ДополнительныеРеквизиты.Добавить();
СтрокаДопРеквизита.Свойство = Параметры.ДопРеквизитНоменклатурыКаталожныйНомер;
СтрокаДопРеквизита.Значение = Источник.КаталожныйНомер;
КонецЕсли;
|
|
4
gvozdoderov
26.03.13
✎
16:46
|
(3) а как через ссылку на номенклатуру докапаться до списка доп.реквизитов и поменять нужный?
>> СтрокаДопРеквизита = Объект.ДополнительныеРеквизиты.Добавить();
- это добавляется новый доп. реквизит в форму объекта?
|
|
5
lxndr
26.03.13
✎
16:48
|
(4) Ищи так:
СтрокаДопРеквизита = Ссылка.ДополнительныеРеквизиты.Найти(ДопРеквизит, "Свойство");
|
|
6
gvozdoderov
26.03.13
✎
16:55
|
(5) спасибо!
|
|
7
gvozdoderov
26.03.13
✎
17:20
|
(5) пробую записать новое значение в доп. реквизит
Номенклатура = СтрокаНоменклатура.Номенклатура.ПолучитьОбъект();
ДополнительныеРеквизиты = Номенклатура.ДополнительныеРеквизиты.Найти(Свойство,"Свойство");
Если ДополнительныеРеквизиты <> Неопределено Тогда
Значение = ДополнительныеРеквизиты.Значение;
Если Справочники.ЗначенияСвойствОбъектов.НайтиПоНаименованию(ЧтоДобавить) <> Неопределено Тогда
ЗначениеДопРек = ДополнительныеРеквизиты.Значение.ПолучитьОбъект();
ЗначениеДопРек = Справочники.ЗначенияСвойствОбъектов.НайтиПоНаименованию(ЧтоДобавить);
КонецЕсли;
не записывается. на Записать() ругается
|
|
8
gvozdoderov
26.03.13
✎
17:27
|
докапаться вроде докапался до этих доп. реквизитов, теперь вот сообразить не могу как сохранить новое значение
|
|
9
lxndr
26.03.13
✎
17:33
|
ералаш какойто в (7)
Номенклатура = СтрокаНоменклатура.Номенклатура.ПолучитьОбъект();
ДополнительныеРеквизиты = Номенклатура.ДополнительныеРеквизиты.Найти(Свойство,"Свойство");
Если ДополнительныеРеквизиты <> Неопределено Тогда
ДополнительныеРеквизиты.Значнение = Справочники.ЗначенияСвойствОбъектов.НайтиПоНаименованию(ЧтоДобавить) <> Неопределено Тогда
Номенклатура.Записать();
КонецЕсли;
|
|
10
lxndr
26.03.13
✎
17:34
|
(9) * в 4 строке конечно убрать <> и правее
|
|
11
gvozdoderov
26.03.13
✎
17:39
|
(10) Все здорово! Спасибо! С меня пиво)
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший