0
bahtik
25.12.13
✎
19:19
|
Здравствуйте!
Такая ситуация. 1С 8.3.4, интерфейс Такси. Есть справочник "ТМЦ", есть справочник "Классификатор единиц измерения", есть регистр сведений "Единицы измерения ТМЦ", имеющий два измерения "ТМЦ", "ЕдиницаИзмерения" и ресурс "Коэффициент". Задача в том, чтобы при выборе единицы измерения в табличной части документа (реквизит типа "СправочникСсылка.КлассификаторЕдиницИзмерения"), как-то связать этот выбор с ТМЦ в этой же строке табличной части. Если бы это был подчиненный справочник, то это можно было бы сделать просто через свойство "СвязиПараметровВыбора". Но т.к. это регистр сведений, то я решил эту задачу так: у элемента формы "ЕдиницаИзмерения" установил свойство "РежимВыбораИзСписка" в истину, ну и назначил процедуру для события "НачалоВыбора":
&НаКлиенте
Процедура ПереченьТМЦЕдиницаИзмеренияНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
МассивЕдиниц = СерверПолучитьСписокЕдиницИзмеренияТМЦ(Элементы.ПереченьТМЦ.ТекущиеДанные.ТМЦ);
Элементы.ПереченьТМЦЕдиницаИзмерения.СписокВыбора.ЗагрузитьЗначения(МассивЕдиниц);
Элементы.ПереченьТМЦЕдиницаИзмерения.СписокВыбора.НайтиПоЗначению(Элементы.ПереченьТМЦЕдиницаИзмерения);
КонецПроцедуры
&НаСервереБезКонтекста
Функция СерверПолучитьСписокЕдиницИзмеренияТМЦ(ТМЦ)
МассивЕдиниц = Новый Массив;
Выборка = РегистрыСведений.ЕдиницыИзмеренийТМЦ.Выбрать(Новый Структура("ТМЦ", ТМЦ));
Пока Выборка.Следующий() Цикл
МассивЕдиниц.Добавить(Выборка.ЕдиницаИзмерения);
КонецЦикла;
Возврат МассивЕдиниц;
КонецФункции // ПолучитьМассивЕдиниц()
В принципе, работает, но почему-то, если единица уже выбрана, при выборе список открывается, но не позиционируется на текущую выбранную единицу. Кто-нибудь подскажет, как можно этот недостаток устранить? Или может быть, есть более грамотный вариант решения этой задачи?
|
|
2
bahtik
25.12.13
✎
19:31
|
И, кстати еще один попутный вопрос: как я уже сказал, у элемента формы "ЕдиницаИзмерения" я установил свойство "РежимВыбораИзСписка" в значение "Истина". Но событие "НачалоВыбораИзСписка" у этого элемента все равно не возникает. А по прежнему возникает просто "НачалоВыбора". Когда же тогда возникает "НачалоВыбораИзСписка"?
|
|