Имя: Пароль:
1C
1С v8
Управляемые формы. ВыделенныеСтроки
, ,
0 pessok
 
30.08.11
12:41
Доброго времени суток. Снова возник вопрос по управляемым формам.
Во внешней обработке вызывается форма выбора справочника. Нужно заполнить ТЧ в обработке из ВыделенныеСтроки этой формы. Как к этим выделенным строкам подобраться через управляемую форму?
1 pessok
 
30.08.11
13:04
ап.
2 Юрий Лазаренко
 
30.08.11
13:09
(0) ИмяФормыВыбора.ИмяЭлементаСписка.ТекущиеДанные
Как-то так
3 Sarmen
 
30.08.11
13:10
Элементы.Список.ВыделенныеСтроки
4 pessok
 
30.08.11
13:12
да я вот думаю пойти другим путем и сделать просто в обработке свою форму выбора и уже в ней шаманить...
5 pessok
 
30.08.11
13:12
(3) а управляемых формах не пашет ((
6 Sarmen
 
30.08.11
13:13
уверен? :)
7 Sarmen
 
30.08.11
13:13
тебя чем МножественныйВыбор не устраивает?
8 pessok
 
30.08.11
13:20
(6) уверен, только что пробовал :)
(7) а как через множественный выбор сделать?..
9 pessok
 
30.08.11
13:30
(7) МножественныйВыбор это какбэ булево значение, указывающее на то, может он быть или нет...
10 jump if zero
 
30.08.11
13:39
&НаКлиенте
Процедура КонтрагентыОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
СтандартнаяОбработка =Ложь;
   
Форма = ПолучитьФорму("Справочник.Контрагенты.ФормаВыбора");
МассивВС = Форма.Элементы.Список.ВыделенныеСтроки;

   
КонецПроцедуры


да почему то Массив выделенных строк пуст ??
11 pessok
 
30.08.11
13:47
(10) есессна пуст, форма не открыта, строки не выделены. С этим я тоже столкнулся
12 pessok
 
30.08.11
13:51
(3) кстати фик знает, внезапно заработал обход, но сам массив дейсвительно пуст...
13 jump if zero
 
30.08.11
13:52
как не открыта , она уже была открыта еще перед этим в процедуре
&НаКлиенте
Процедура КонтрагентыНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)

ПолучитьФорму
Получает форму или управляемую форму. Перед получением осуществляется поиск уже открытой такой же формы
14 pessok
 
30.08.11
14:07
а, ну да, вообще. я делаю так:
&НаКлиенте
Процедура РеализацияТоваровДокументРеализацииНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
   СтандартнаяОбработка = Ложь;
   ВыбФорма = ПолучитьФорму("Документ.РеализацияТоваровУслуг.Форма.ФормаВыбора",,Элемент);
   ВыбФорма.Открыть();
   Для Каждого ВыделеннаяСтрока Из ВыбФорма.Элементы.Список.ВыделенныеСтроки Цикл
       НСтр = Объект.РеализацияТоваров.Добавить();
       НСтр.ДокументРеализации = ВыделеннаяСтрока;
   КонецЦикла;
КонецПроцедуры

не хочет заносить
15 pessok
 
30.08.11
15:06
ап, чтоли...
16 Mort
 
30.08.11
15:16
(14) Ясен перец не хочет. В начале выбора открывай форму (параметр множественный выбор ещё в неё брось).
А в событии ОбработкаВыбора твоего элемента читай выбранное значение, это будет массив.
17 pessok
 
30.08.11
15:50
(16) мерси, попробую
18 pessok
 
30.08.11
20:17
блин. не работает, что-т я совсем туплю, видимо...
&НаКлиенте
Процедура РеализацияТоваровДокументРеализацииОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
   ВыбранноеЗначение = Ложь;
   СтандартнаяОбработка = Ложь;
   ВыбФорма = ПолучитьФорму("Документ.РеализацияТоваровУслуг.Форма.ФормаВыбора",,Элемент);
   ВыбранныеСтроки = ВыбФорма.Элементы.Список.ВыделенныеСтроки;
   Для Каждого ВыбраннаяСтрока Из ВыбФорма.Элементы.Список.ВыделенныеСтроки Цикл
//ВыделенныеСтроки = 0 :(
       Нстр = Объект.РеализацияТоваров.Добавить();
       НСтр.ДокументРеализации = ВыбраннаяСтрока;
   КонецЦикла;
КонецПроцедуры

&НаКлиенте
Процедура РеализацияТоваровДокументРеализацииНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
   СтандартнаяОбработка = Ложь;
   ВыбФорма = ПолучитьФорму("Документ.РеализацияТоваровУслуг.Форма.ФормаВыбора");
   ВыбФорма.Элементы.Список.МножественныйВыбор = Истина;
   ВыбФорма.Открыть();
КонецПроцедуры
19 pessok
 
30.08.11
21:00
разобрался, спасибо
AdBlock убивает бесплатный контент. 1Сергей