Имя: Пароль:
1C
1С v8
Управляемые формы. Получить текущую колонку ТЧ из форму внешней обработки
0 Sun125
 
16.03.15
10:55
Управляемые формы.
Есть внешняя печатная форма с клиентским вызовом (нужно было на клиенте получить форму документа).
В форме обработки
&НаКлиенте
Процедура Печать(Идентификатор, МассивОбъектов) Экспорт

    Для Каждого Ссылка Из МассивОбъектов Цикл
        Если ТипЗнч(Ссылка) = Тип("ДокументСсылка.ЗаказНаПроизводство") Тогда
            ФормаДок = ПолучитьФорму("Документ.Заказ.ФормаОбъекта",Новый Структура("Ключ",Ссылка),);
        ТекСтрока = ФормаДок.Элементы.ТЧ.ТекущиеДанные;
Текущую строку получить могу, но вот как получить текущую колонку?
1 D_E_S_131
 
16.03.15
10:57
К данным документа можно обращаться непосредственно из базы, необязательно открывать форму.
2 Sun125
 
16.03.15
10:58
(1) Подскажите, как тогда без получения формы получить текущую строку и текущую колонку?
3 Остап Сулейманович
 
16.03.15
10:58
(0) У неоткрытой формы нет ни текущей строки, ни текущей колонки. Для этого кто-то должен по конкретной ячейке щелкнуть пышкой / тапнуть паальцем / пощелкать ТАБом.
4 Sun125
 
16.03.15
11:00
(3) ну да, имеется в виду, что мышкой выбрали конкретную ячейку ТЧ (выбрана строка и колонка). Нажимаю Печать, запускается внешняя печатная форма. И как теперь найти, какая строка/колонка выбрана?
5 Sun125
 
16.03.15
11:01
(3) имеете в виду, что кроме получения формы, ее нужно еще и открыть?
6 Остап Сулейманович
 
16.03.15
11:03
(4) "мышкой выбрали конкретную ячейку ТЧ (выбрана строка и колонка). Нажимаю".
И вот здесь то и нужно передать, что там у тебя выделено.
И только потом "Печать".
7 Остап Сулейманович
 
16.03.15
11:07
+ (6) А для табличного поля открытой формы вполне есть метод ТекущаяКолонка().
8 Sun125
 
16.03.15
11:17
что за метод ТекущаяКолонка(), в синтаксис-помощнике его нет
9 Sun125
 
16.03.15
11:21
(7) Форма получена и открыта, но ТекущаяСтрока = Неопределено, а на ТекущуюКолонку вообще ругается, что поле не обнаружено
10 Sun125
 
16.03.15
11:23
В форме обработки
&НаКлиенте
Процедура Печать(Идентификатор, МассивОбъектов) Экспорт

    Для Каждого Ссылка Из МассивОбъектов Цикл
ФормаДок = ПолучитьФорму("Документ.Заказ.ФормаОбъекта",Новый Структура("Ключ",Ссылка),);
ФормаДок.Открыть()
        ТекСтрока = ФормаДок.Элементы.ТЧ.ТекущиеДанные;
ТекСтрока = ФормаДок.Элементы.ТЧ.ТекущаяСтрока; // Неопределено
ТекСтрока = ФормаДок.Элементы.ТЧ.ТекущаяКолонка; // Поле не обнаружено

Пытаюсь передать на клиенте то, что выбрано,
а потом Запускаю ПечатьНаСервере()
11 Остап Сулейманович
 
16.03.15
11:33
(8) Так же как получаешь "текущуюСтроку".
ИмяКолонки  = ФормаДок.Элементы.ТЧ.ТекущийЭлемент.Имя;
Само значение получить из коллекции ТекущийДанные.
12 yavasya
 
16.03.15
11:35
(0) помог тебе с добавлением ВПФ в форму дока ?
13 yavasya
 
16.03.15
11:52
(10) я думаю так нельзя. команда печать вызывает открытие ВПФ, а ты хочешь другим событием. Единственный ход-это пилить конфу.
14 Sun125
 
16.03.15
11:56
(11) Спасибо, получилось!