• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Как позиционировать тек. строку на ТЧ

  • Автор темы Дайнеко
  • Дата начала
Д

Дайнеко

Хочу, чтобы при открытии документа, курсор стал на определенную строку.
Код:
		Для Каждого СтрокаТов из Документ.Товары Цикл
Если ??? Тогда
НомСтр = СтрокаТов;
Прервать;
КонецЕсли;
КонецЦикла;

ДокФорма = Документ.ПолучитьФорму();
ДокФорма.Открыть();
Если ЗначениеЗаполнено(НомСтр) Тогда
ДокФорма.ЭлементыФормы.Товары.ТекущаяСтрока = НомСтр;
КонецЕсли;
Не пашет! ДокФорма.ЭлементыФормы.Товары.ТекущаяСтрока начальное значение Неопределено. Таким и остается.
В 7-ке делал по-другому - передавал в документ номер строки. А тот через Форма.Параметр получал и сам устанавливал строку.
Так бы и хотелось, но тогда может кто-то подскажет, как красиво передать параметры форме.
 
U

unknown181538

Покопался в СП. Попробуйте сначала определить отладчиком, какой тип имеет ТекущаяСтрока. Скорее всего, это не число вовсе.
Можно попробовать присвоить Документ.Товары[НомСтр-1], или присвоить это ТекущимДанным.
 
Д

Дайнеко

Через параметры сеанса?
Фи, батенька, у Вас дурной скус. Это как через глобальные переменные.

unknown181538 сказал(а):
Попробуйте сначала определить отладчиком, какой тип имеет ТекущаяСтрока. Скорее всего, это не число вовсе.
1) Я об этом и написал, = Неопределено и до и после присвоения.
2) Обращаю внимание, что я пытаюсь записать в нее не числовой номер строки, а строку ТЧ, которую запомнил в ходе просмотра док-та.
 
U

unknown181538

1) Я имел в виду, какой у нее тип, когда она определена.
2) Обращаю внимание, что я пытаюсь записать в нее не числовой номер строки, а строку ТЧ, которую запомнил в ходе просмотра док-та.
Да ваш скус тоже не восхищает) В переменной с названием НомСтр обычно ожидаю увидеть номер строки)
А вот присвоение текущим данным не проходит?
В УФ, сколько помню, ТекущаяСтрока - это некий идентификатор.
 
A

Allexei

Странно а у меня работает такая конструкция:

ЭлементыФормы.ТабличнаяЧасть1.ТекущаяСтрока = ТабличнаяЧасть1[2];

В результате при открытии активной становится 3- я строка.
Вызывается при открытии формы. Проверено в 8.1
 
Д

Дайнеко

Давайте расставим понятия. ТекущаяСтрока имеет тип строка ТЗ. Я с успехом пользуюсь ей в рамках открытой формы. Сейчас же не получилось присвоить ей значение, полученное в ходе перебора строк ТЧ Для Каждого. Выходит разные типы данных.

ЭлементыФормы.ТабличнаяЧасть1.ТекущаяСтрока = ТабличнаяЧасть1[2];
Спасибо, теперь я смогу позиционироваться по номеру строки. Даже, назло критиканам, не буду менять имя переменной.

Вот только одна мысль гложет: ЭлементыФормы.ТабличнаяЧасть1 - объект формы, а ТабличнаяЧасть1, т.к. написана без указания объекта, значит реквизит источника данных. Здесь выходит, они совпадают по типу.
 
D

Darlock

пасибо, теперь я смогу позиционироваться по номеру строки. Даже, назло критиканам, не буду менять имя переменной.
Пусть буду критиканом, НО: не по номеру строки, а по индексу.

ЭлементыФормы.ТабличнаяЧасть1 - объект формы, а ТабличнаяЧасть1, т.к. написана без указания объекта, значит реквизит источника данных

не факт, первый вариант - имя элемента формы (можно и "ЗООПАРК" написать) видеть вы будете то, что указано в графе "Данные" (как правило имя ЭУ и реквизита объекта (табличной части объекта и т.п.) совпадает.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!