55 / 18 / 19
Регистрация: 11.11.2014
Сообщений: 463

Получить индекс выбранного элемента в СЗ

28.08.2018, 16:56. Показов 8360. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. 1с8. ЧТо-то туплю. Как получить индекс выбранного элемента в ТЗ. Получаю так Элементы.ТЗ.ТекущаяСтрока. Но это не то
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.08.2018, 16:56
Ответы с готовыми решениями:

Как переносить реквизиты выбранного элемента справочника в документ
Обращаюсь к вам за помощью! Ситуация такая: есть справочник с реквизитами, также есть документ, в котором содержится табличная часть с...

У выбранного элемента нету реквизитов
Добрый день, Вот делаю заполнение таблицы, у ВидаВремени есть реквизит буквенный код, на толстой форме все работает, но на тонкой просто...

Автозаполнение реквизита ТЧ на основе выбранного элемента
Проблема такова. Имеется справочник со студентами, в котором имеются следующие реквизиты: ФИО (Наименование) ФормаОбучения и...

25
Модератор
Эксперт 1С
 Аватар для Dethmontt
4032 / 2977 / 594
Регистрация: 10.03.2011
Сообщений: 11,701
Записей в блоге: 1
28.08.2018, 20:28
Цитата Сообщение от Александр321321 Посмотреть сообщение
выбранного элемента
Выбранного куда?
0
Эксперт 1С
 Аватар для Tklwegsd
845 / 608 / 211
Регистрация: 24.07.2013
Сообщений: 2,102
28.08.2018, 20:31
Или откуда?
0
55 / 18 / 19
Регистрация: 11.11.2014
Сообщений: 463
29.08.2018, 08:17  [ТС]
Есть на форме таблица значений, где я могу выбирать значения, вот с этой таблицы и нужно. Проблема в том, что у меня есть 2 вкладки и когда я перехожу между ними, то у меня во вкладке где таблица, Элементы.ТЗ.ТекущаяСтрока каждый раз увеличивается(по неведомым мне причинам), поэтому я не могу удалить. Нужно узнать индекс.
0
Тест
Эксперт 1С
383 / 162 / 57
Регистрация: 26.02.2010
Сообщений: 1,245
29.08.2018, 08:58
у тз на форме должен быть номер строки. вот номерстроки-1 и будет индексом вроде как
0
55 / 18 / 19
Регистрация: 11.11.2014
Сообщений: 463
29.08.2018, 10:42  [ТС]
В том то и проблема что не удаётся получить номер строки.
Так выглядит Форма:
https://www.cyberforum.ru/atta... 1535527579
Каждый раз когда перехожу на вкладку рас счёт, выполняется код:
1C
1
2
3
4
5
6
Список.Очистить();
Запрос = Новый Запрос; 
//тут выбор данных
Пока Выборка.Следующий()=1  Цикл //Выбор данных из запроса  
            Список.Добавить(Выборка.ссылка); // Заполнение данными.     
КонецЦикла;
И каждый раз когда перехожу между вкладкой Общие и РС "Элементы.Список.ТекущаяСтрока" Возвращает, в данном случае, 'индекс' или что это не знаю, на 3 больше, т.е изначально первый эл - 0, второй -1 третий-2, перешёл между вкладками уже будет возвращать 3 4 5.
Вообще индекс можно получить так: Список.Индекс(тут элемент).
Элементы.Список.ТекущаяСтрока - разве не элемент возвращает? Мне выдаёт ошибку несоответствие типов
Миниатюры
Получить индекс выбранного элемента в СЗ  
0
Тест
Эксперт 1С
383 / 162 / 57
Регистрация: 26.02.2010
Сообщений: 1,245
29.08.2018, 10:51
Александр321321, а так:
1C
1
Элементы.Список.ТекущиеДанные
0
55 / 18 / 19
Регистрация: 11.11.2014
Сообщений: 463
29.08.2018, 10:56  [ТС]
Так он срабатывает только на клиенте и возвращает ДанныеФормыСтруктура
0
Тест
Эксперт 1С
383 / 162 / 57
Регистрация: 26.02.2010
Сообщений: 1,245
29.08.2018, 11:03
Александр321321, так на сервере нужно не через элемент обращатся, а через объект

Добавлено через 1 минуту
а ну да через объект не получить текущую строку

Добавлено через 1 минуту
а ну через выделенные строки можно получить индекс тогда наверное

Добавлено через 2 минуты
ну блин и элементы.Документы1.ТекущаяСтрока возвращает индекс
0
55 / 18 / 19
Регистрация: 11.11.2014
Сообщений: 463
29.08.2018, 11:38  [ТС]
Так это понятно) Просто сейчас мне надо реализовать удаление и добавление элементов. А из-за того что я получаю непонятные цифры с "ТекущаяСтрока" вместо индекса, всё сбивается. Либо добавлять или удалять элемент, потом заново запускать форму ещё раз удалить/добавить и тд, то тогда всё отлично) Но это явно не ожидаемый функционал

Добавлено через 1 минуту
В том то и дело, что если я удалю второй элемент из 5, он удалится, а потом захочу удалить 5й элемент, выдаст ошибку выход за пределы массива, потому что Текущая строка будет возвращать 4, а настоящий индекс уже будет равняться 3м, а был равным 4м до удаления 2го элемента

Добавлено через 26 минут
1C
1
2
3
Для каждого че из СписокЗн цикл
        Сообщить(че.ПолучитьИдентификатор());    
    КонецЦикла;
Таким кодом я могу перебрать все элементы СЗ и получить их индексы, но при этом когда я перехожу по вкладкам, то индексы увеличиваются, в чём проблема то

После СЗ.Очистить() Очищаются значения, а индексы продолжаются, как их обнулить, мб в этом проблема
0
Тест
Эксперт 1С
383 / 162 / 57
Регистрация: 26.02.2010
Сообщений: 1,245
29.08.2018, 11:47
не могу сообразить. Вот перешли на другую тз, там добавляется строка. вам добавленную строну нужно удалить? или какую?
0
55 / 18 / 19
Регистрация: 11.11.2014
Сообщений: 463
29.08.2018, 11:53  [ТС]
Выше скрин. Сама форма - это форма элемента. В вкладке общие различные реквизиты элемента, нас они не касаются. В выбранной вкладке расчётные счета находится таблица, которая очищается и заново заполняется(выше код), каждый раз, когда переходим на эту вкладку. В ней я и работаю со строками. И когда первый раз зашли на вкладку, всё отлично, индексы равны 0 и до количество()-1, а вот если я перейду на другую вкладку, потом снова на эту, данные удалятся и снова заполнятся, но вот индексы уже будут равны от количество() до количество()*2-1 и с каждой такой манипуляцией растёт. И если я попытаюсь удалить элемент таким индексом, то он его не находит, так как выход за пределы массива.
0
Тест
Эксперт 1С
383 / 162 / 57
Регистрация: 26.02.2010
Сообщений: 1,245
29.08.2018, 12:06
фантастика конечно. а для чего строки удаляете по одной?
0
55 / 18 / 19
Регистрация: 11.11.2014
Сообщений: 463
29.08.2018, 12:12  [ТС]
У контрагента есть несколько расчётных счетов, именно они в таблицу и выводятся, и если в рачётном счёте больше нет надобности, то он удаляется/изменяется/добавляется новый

Да весь прикол в том, что идентификатор каждый раз увеличивается, но при этом, если хочу удалить, то индексы используются начиная с нуля, вот он мне и нужен

Добавлено через 3 минуты
Цитата Сообщение от Александр321321 Посмотреть сообщение
Для каждого че из СписокЗн цикл
* * * * Сообщить(че.ПолучитьИдентификатор()); *
КонецЦикла;
Вот, неужели тут идентификатор не является индексом?
0
Тест
Эксперт 1С
383 / 162 / 57
Регистрация: 26.02.2010
Сообщений: 1,245
29.08.2018, 12:22
аааааа я ж перепутал. ну идентефикатор получается каждый раз новый генерируется, а индекс это 1234 по порядку ведь. проблемы с кнопкой удалить так?
0
55 / 18 / 19
Регистрация: 11.11.2014
Сообщений: 463
29.08.2018, 12:24  [ТС]
Да, чтоб удалить надо передать элемент, а чтоб выбрать элемент надо знать индекс, ну или как-то иначе
0
Тест
Эксперт 1С
383 / 162 / 57
Регистрация: 26.02.2010
Сообщений: 1,245
29.08.2018, 12:27
так удаляйте на клиенте через текущие данные?
0
55 / 18 / 19
Регистрация: 11.11.2014
Сообщений: 463
29.08.2018, 12:30  [ТС]
Так говорю же, не соответствие типов)
1C
1
2
Поз = Элементы.СписокСчетов.ТекущиеДанные;
СписокЗн.Удалить(Поз);
0
Тест
Эксперт 1С
383 / 162 / 57
Регистрация: 26.02.2010
Сообщений: 1,245
29.08.2018, 12:31
Вы так говорили про ТекущаяСтрока , с данными точно такая же ошибка?
0
55 / 18 / 19
Регистрация: 11.11.2014
Сообщений: 463
29.08.2018, 12:34  [ТС]
Такая ошибка с данными, а со строкой он удаляет, но только первый раз при условии что на вкладку РС я перешёл первый раз, если же нет, то выход за пределы массива
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.08.2018, 12:34
Помогаю со студенческими работами здесь

Заполнить поля из выбранного элемента справочника
День добрый если несложно объяснить Своего ума не хватает. Есть справочник Прокат с реквизитами Наименование и прокатныйНомер; Есть...

Получить индекс выбранного элемента radio.
Всем привет помогите разобратся почему так отробатывает... как другим способом можно получить id выбранной книжки? разметка такая:...

Как получить индекс выбранного элемента в ComboBox
Возникла маленькая проблемка... Есть таблица с которой считываются поля.. и при добавлении новой строки необходим combobox, чтобы я мог сам...

Получить индекс выбранного элемента списка QListWidget
Нужно записать индекс выбранного элемента списка QListWidget в переменную. С помощью какого метода это возможно? ...

Как получить индекс выбранного элемента AutoCompleteCustom?
Добрый день, есть TextBox коллекция AutoCompleteCustom заполняется из БД. По сути контекстный поиск по фамилиям. Вопрос такой из списка я...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru