• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

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

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

Дайнеко

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

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

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

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