Как получить данные текущей строки 1с
Перейти к содержимому

Как получить данные текущей строки 1с

  • автор:

Как получить данные текущей строки 1с

Народ, подскажите как получить текущую строку на УФ:

ТекущаяСтрока = Элементы.ТаблицаНакладных.ТекущаяСтрока; — не срабатывает.

а ТекущиеДанные?
Для начала, что значит «не срабатывает»?
Ну и где нужно её получить: сервер или клиент?

Пишу на клиенте —

Передаю на сервер

Ошибка отображения типов:
Отсутствует отображение для типа ‘ДанныеФормыЭлементКоллекции’

Получить текущую строку хочу на элемент.тч

и передать ее значения на сервер

Ну просто у элемента формы текущая строка — идентификатор строки таблицы. Т.е. чтобы получить данные строка на сервере надо у реквизита вызвать метод «НайтиПоИдентификатору».
Ну а на клиенте достаточно брать свойство «ТекущиеДанные», которое из себя представляет «клиентский объект», который на сервер не отправить.

Как получить текущие данные строки табличной части на форме в 1с 8.3?

Сейчас мы рассмотрим с Вами как получить текущие данные строки в табличной части на форме в 1с 8.3 (управляемые формы). Для начала нам нужно НаКлиенте обратится к самой форме, после этого выбрать, текущий элемент, а затем текущие данные. В приведенном ниже коде мы высчитываем сумму строки в событии ПриИзмененииКоличества.

Как получить текущие данные строки в табличной части управляемой формы

Если у Вас возникли какие-то вопросы Вы можете воспользоваться нашими услугами 1с программистов, и они обязательно помогут Вам в решении любых вопросов.

Свойства ТекущиеДанные и ТекущаяСтрока

Табличное поле предоставляет свойства ТекущиеДанные и ТекущаяСтрока . Отличие между этими свойствами состоит в том, что свойство ТекущиеДанные содержит значения считанных данных текущей строки табличного поля, а свойство ТекущаяСтрока содержит значение, идентифицирующее строку.

Следует отметить, что свойство ТекущиеДанные содержит коллекцию значений текущей строки, соответствующую коллекции колонок отображаемого динамического списка, при этом если нужного поля нет в текущих данных, то его можно добавить в коллекцию полей списка используя метод Добавить() коллекции колонок списка.

Свойство ТекущиеДанные предназначено для получения значений колонок текущей строки, а свойство ТекущаяСтрока для получения и установки текущей строки табличного поля.

Следует понимать, что для объектных данных (Справочник, Документ и т.д.) в качестве значения свойства ТекущаяСтрока используется ссылка на объект базы данных. Соответственно при обращении к свойствам этого значения будет выполняться считывание объекта базы данных.

Типичной ошибкой является обращение к данным строки с использованием свойства ТекущаяСтрока . В этом случае будет выполняться считывание данных объекта из базы данных, что может существенно снизить производительность работы табличного поля. Например, приведенный ниже фрагмент текста программы является неэффективным:

&НаКлиенте Процедура СправочникСписокПриАктивизацииСтроки(Элемент) Сообщить("Цена color:#FF0000">+ ЭлементыФормы.СправочникСписок.ТекущаяСтрока.Цена); КонецПроцедуры

Рекомендуется для обращения к данным объекта использовать свойство ТекущиеДанные . Правильный фрагмент приведен ниже:

&НаКлиенте Процедура СправочникСписокПриАктивизацииСтроки(Элемент) Cообщить("Цена color:#FF0000">+ ЭлементыФормы.СправочникСписок.ТекущиеДанные.Цена); КонецПроцедуры

Если есть идентификатор текущей строки (т.е. свойство ТекущаяСтрока ), можно получить ТекущиеДанные . И наоборот:

&НаКлиенте Процедура ПолучитьТекущиеДанныеПоИдентификатору() // Получаем идентификатор текущей строки ИдентификаторТекущейСтроки = ЭлементыФормы.СправочникСписок.ТекущаяСтрока; // Получаем данные по идентификатору строки ДанныеТекущейСтроки = Элементы.Материалы.ДанныеСтроки(ИдентификаторТекущейСтроки); КонецПроцедуры
&НаКлиенте Процедура ПолучитьИдентификаторТекущихДанных() // Получаем данные текущей строки ДанныеТекущейСтроки = ЭлементыФормы.СправочникСписок.ТекущиеДанные; // Получаем идентификатор текущих данных ИдентификаторТекущейСтроки = ДанныеТекущейСтроки.ПолучитьИдентификатор(); КонецПроцедуры
  • Дерево значений
  • Вычисляемые колонки в списках
  • Отбор строк табличной части
  • Можно ли использовать форму списка в качестве формы выбора?
  • Как обработать выбор значения в поле ввода
  • Добавление реквизитов и элементов на форму
  • Программное создание таблицы формы

Каталог оборудования

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Производители

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Функциональные группы

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Категории блога
Облако тегов

  • 1С:Предприятие (31)
  • API (29)
  • Bash (43)
  • CLI (125)
  • CMS (139)
  • CSS (50)
  • Frontend (75)
  • HTML (66)
  • JavaScript (150)
  • Laravel (72)
  • Linux (172)
  • MySQL (76)
  • PHP (125)
  • React.js (66)
  • SSH (27)
  • Ubuntu (70)
  • Web-разработка (509)
  • WordPress (73)
  • Yii2 (69)
  • БазаДанных (95)
  • Битрикс (66)
  • Блог (29)
  • Верстка (43)
  • ИнтернетМагаз… (84)
  • КаталогТоваров (87)
  • Класс (30)
  • Клиент (28)
  • Ключ (28)
  • Команда (88)
  • Компонент (60)
  • Конфигурация (68)
  • Корзина (32)
  • ЛокальнаяСеть (33)
  • Модуль (34)
  • Навигация (31)
  • Настройка (144)
  • ПанельУправле… (29)
  • Плагин (33)
  • Пользователь (26)
  • Практика (101)
  • Сервер (77)
  • Событие (28)
  • Теория (106)
  • Установка (68)
  • Файл (51)
  • Форма (58)
  • Фреймворк (192)
  • Функция (36)
  • ШаблонСайта (68)

Как получить данные текущей строки 1с

При этом если удалить выше несколько строк, то нумерация сбивается (первая строка может иметь номер больше 1, смотря сколько строк перед ней было удалено)

Мб ТекущиеДанные? А индекс строки не пробовали применить?
(1) а где взять индекс строки?
На сервере код выполняется. ТекущиеДанные не доступны
Придется передавать номер строки с клеента. (((
Индекс равен номеру строки -1
(5) а номер строки только на клиенте можно получить?
ПолучитьИдентификатор, НайтиПоИдентификатору, далее — СП
(7) что к чему вообще не понял
(6) Контейнер Элементы доступен в тонком клиенте пля)
(7) получить идентификатор строки, найти по идентификатору.
(9) значит в (5) бесполезняк (((
(11)чем 7 не устраивает? через этот способ можно сделать?
А если ещё в СП прочитать, что такое в УФ ТекущаяСтрока…
у каждой задачки в 1С куча способов решения.

(12) кто сказал что (7) не устраивает? Вполне годится.
Только не понятно что он подразумевал под СП, но и без этого думаю будет работать.

(15) объясните мне, как люди работают без СП?
(16) без какого еще СП. Сперва расшифруй
Синтакс помощник. Ваш К.О.
З.Ы. Сам сначала мозг ломал, читая сообщения тут=)
*Синтакс-Помощник, да простят меня боги одноэса
определенно пятница уже начинается

а чтобы мозг больше не ломали, вот так должна выглядеть строка из (0):

Так и писали бы по-понятному — Ctrl+F1, а то СП какой-то, хрен догадаешься.
(22) именно так я и сделал.

Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *