Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Табличный документ - выбор строки
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.1 (8.0)
Alisa
Формируется табличный документ
Вот процедура:

запрос = новый запрос;
    запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
                   |    НормаДетали.Ссылка КАК Док,
                   |    НормаДетали.Ссылка.Дата КАК Дата,
                   |    НормаДетали.НомерСтроки КАК НомерСтроки
                   |ИЗ
                   |    Документ.Норма.Детали КАК НормаДетали
                   |ГДЕ
                   |    НормаДетали.Наименование = &Ссылка
                   |    ИЛИ НормаДетали.ЗагМатериал = &Ссылка
                   |
                   |УПОРЯДОЧИТЬ ПО
                   |    Дата
                   |АВТОУПОРЯДОЧИВАНИЕ";
    запрос.УстановитьПараметр("Ссылка", ссылка);
    Выборка = запрос.Выполнить().Выбрать();
    
    Если выборка.Количество() = 0 тогда возврат; КонецЕсли;
    тд = новый ТабличныйДокумент;
    макет = ПолучитьМакет("списокПД");
    мкт = макет.ПолучитьОбласть("шапка");
    мкт.Параметры.Ссылка = ссылка;
    мкт.Параметры.Объект = "подетальных";
    тд.Вывести(мкт);
    мкт = макет.ПолучитьОбласть("строка");
    сч = 1;
    пока Выборка.Следующий() цикл
        мкт.Параметры.номер = сч;
        мкт.Параметры.Заполнить(выборка);
        тд.Вывести(мкт);
        сч = сч + 1;
    КонецЦикла;
    тд.АвтоМасштаб = истина;
    тд.ОтображатьСетку= ложь;
    тд.ТолькоПросмотр = истина;
    тд.Показать("Список подетальных");


В табличном документе показывается название документа и номер строки

необходимо зарегистрироваться для просмотра ссылки

Подскажите, как сделать чтобы когда становишься на номер строки - документ открывался именно на этой строке?
Batchir
Необходимо использовать форму, на неё кинуть поле табличного документа, в него выводить отчет и написать процедуру расшифровки ячейки поля табличного документа.
Alisa
Ну насчет формы - понятно. Сделала - все работает.
Но все-таки.
Если уже существует табличный документ (см.выше) - в нем когда становишься на название документа - этот документ открывается - но на первой строке. Есть ли все же какая-то команда, которую можно было бы внести в процедуру обработки запроса, чтобы когда становишься на номер строки - документ открывался именно на ней.
Или в таком случае используется только форма?
Batchir
В тойже процедуре в которой вы открываете документ и организуйте поиск и активацию строки, например,
// ДокСсылка - ссылка на открываемый документ
// НомСтр - номер строки на которую нужно спозиционироваться    
ФормаДокумента = ДокСсылка.ПолучитьФорму();
ФормаДокумента.ЭлементыФормы.Товары.ТекущаяСтрока = ФормаДокумента.ЭлементыФормы.Товары.Значение[НомСтр-1];
ФормаДокумента.Открыть();
Alisa
Извините, что надоедаю, но ДокументФорма - это понятно - сделала - работает. Я имела ввиду в той процедуре(см.выше), которая была изначально - можно что-то изменить (дописать) чтобы выполнялось тоже самое. Или только использовать создание формы.
Batchir
Если понял правильно, то реализовать можно только следующим образом:
Создается форма, на форму кидается поле табличного документа, запускается процедура заполнения поля табличного документа, Пишется обработка расшифровки ячейки. По другому вроде никак.
Alisa
Цитата(Batchir @ 10.10.10, 21:23) необходимо зарегистрироваться для просмотра ссылки
Если понял правильно, то реализовать можно только следующим образом:
Создается форма, на форму кидается поле табличного документа, запускается процедура заполнения поля табличного документа, Пишется обработка расшифровки ячейки. По другому вроде никак.



Все, спасибо - вопрос закрыт
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.