Форум программистов, компьютерный форум, киберфорум
1С: Типовые и стандартные решения
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.81/107: Рейтинг темы: голосов - 107, средняя оценка - 4.81
2 / 2 / 0
Регистрация: 21.11.2011
Сообщений: 57
1
1C 8.x (тонкий)

Размещение табличной части в форме списка (УФ)

16.08.2014, 10:15. Показов 19443. Ответов 29
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день! Была задача: есть форма списка заказов. И руководителю надо видеть заказ и его табличную часть. Сделал элементарно: создал вторую таблицу и при позиционировании в списке заказов вывожу в эту таблицу табличную часть документа.

Руководителю не понравилось, мол надо сразу у всех заказов видеть табличную часть сразу. Собственно вопрос, как в форме списка одну строку разбить на n строк (в заказах может быть от 1 до 6 позиций соответственно)

Пример:

| Номер| Дата |Контрагент |Комплектация |Количество поступило|
___________________________________________________________
| 00001|21.08.14|ООО "Петя"|Номенклатура1| 3/2 |
| | | |Номенклатура2| 7/3 |
| | | |Номенклатура3| 2/3 |
--------------------------------------------------------------------
| 00002|23.08.14|ООО "Галя"|Номенклатура2| 6/2 |
| | | |Номенклатура7| 2/1 |
| | | |Номенклатура4| 4/3 |

Вот такой мне надо видеть форму списка. Возможные решения: попробовать сделать в макете - это единственный вариант который я придумал, но очень не хочется. Руководителю объяснить, что в динамическом списке вывести так нельзя невозможно. (по крайней мере я не знаю, может и есть способы). Колонку с количеством я вывел, чтобы показать, что помимо номенклатуры будут и другие колонки.

Благодарю за какие-нибудь мысли.

З.ы. Мне кажется, что в обычной форме можно использовать процедуру "при выводе", но здесь управляемая.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.08.2014, 10:15
Ответы с готовыми решениями:

Копирование данных из ячейки одной Табличной Части на форме в такую же ячейку другой Табличной части на этой же форме
Всех с Новым годом и грядущим Рождеством пособите начинающему: затык такой - НА форме есть две...

Запрос. Условие: строка из первой табличной части равна любой строке из другой табличной части
Есть документ "РаспределениеМатериаловНаВыпуск". У этого документа имеется "Форма документа". На...

Экспорт в эксель табличной части подчиненной формы с учетом полей-комбобоксов в табличной части
Добрый день. Пришло пожелание от коллег выгружать информацию из табличной подформы в...

Запись в БД табличной части на форме
Подскажите, пожалуйста, как правильно сделать запись? Пишу свое web приложение, в котором будет...

29
Модератор
Эксперт 1С
4029 / 2974 / 591
Регистрация: 10.03.2011
Сообщений: 11,702
Записей в блоге: 1
18.08.2014, 10:43 21
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от duk337 Посмотреть сообщение
Задокументировано где-нибудь?
Что по новым объектам 1С с документацией худо...

Добавлено через 16 минут
duk337, есть описание на ИТС

Вот ссылка - http://its.1c.ru/db/metod81#co... 0%BE%D0%BA

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

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

Избавиться от этого, не меняя запрос можно, убрав указание основной таблицы. При этом запрос становится полностью статическим и для каждой строки выборки генерируется суррогатный ключ - простое число.
Суррогатный ключ обеспечивает уникальную идентификацию строк для динамического списка, что обеспечивает его правильную работу.
Добавлено через 1 минуту
З.Ы.

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

Добавлено через 15 секунд
З.Ы.Ы.
Осталось определиться с ключом
2
2955 / 1767 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
18.08.2014, 11:48 22
Ага, в примере осн.таблица - тч справочника.
У меня не вышло тч дока сделать основной таблицей, а я как раз хотел извернуться как в примере. Впрочем, это бы не помогло, поскольку Номенклатура опять была бы в тираже.

Цитирую для ТС:
"Избавиться от этого, не меняя запрос можно, убрав указание основной таблицы. При этом запрос становится полностью статическим и для каждой строки выборки генерируется суррогатный ключ - простое число."

Не по теме:

Кулибины, блин



Добавлено через 4 минуты
чё-то форум глючит у меня: то по два раза, то пропала часть добавки:
дин.список, судя по всему, держит имя таблицы для запроса по единичному значению. Т.о. возможен дин. отбор. Ну, а статика, как говорится - фигурное катание с генерацией ключа.

Добавлено через 19 минут
Ещё некогда проверить: для статического варианта дерево она отработает, интересно? (ИТОГИ)
1
Модератор
Эксперт 1С
4029 / 2974 / 591
Регистрация: 10.03.2011
Сообщений: 11,702
Записей в блоге: 1
18.08.2014, 14:58 23
Цитата Сообщение от duk337 Посмотреть сообщение
Ещё некогда проверить: для статического варианта дерево она отработает, интересно? (ИТОГИ)
Неа...
2
2 / 2 / 0
Регистрация: 21.11.2011
Сообщений: 57
18.08.2014, 15:23  [ТС] 24
Ребят, т.е. получается, табличную часть в запросе можно использовать только для отборов? А Вывести ее никак?
Я в интернете нашел одну тему: http://www.sql.ru/forum/872819... kom-spiske
Здесь человек уверяет, что можно, но не приводит примера. Он же является владельцем этой темы на разных форумах судя по формулировке задачи, но нигде не написано как это добиться...

Еще на partners.v8.1c.ru я натыкался на такую же тему, но ее никто не прокомментировал аж с 2012г висит.
0
2955 / 1767 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
19.08.2014, 09:29 25
ТЧ в дин списке можно получить только в статике и в плоском виде, поскольку на самом деле это будет одна таблица на все документы с искусственным ключом строки. Динамическая подкачка - бекар. Dethmontt всё верно осветил.
1
2 / 2 / 0
Регистрация: 21.11.2011
Сообщений: 57
19.08.2014, 16:17  [ТС] 26
ТЧ в дин списке можно получить только в статике и в плоском виде, поскольку на самом деле это будет одна таблица на все документы с искусственным ключом строки. Динамическая подкачка - бекар. Dethmontt всё верно осветил.
А статика это обычная ТЧ которую я заполняю или через запрос, или через цикл? После чего делаю группировку по ключевому полю?
0
Модератор
Эксперт 1С
4029 / 2974 / 591
Регистрация: 10.03.2011
Сообщений: 11,702
Записей в блоге: 1
19.08.2014, 16:21 27
Цитата Сообщение от Heltarion Посмотреть сообщение
Здесь человек уверяет, что можно, но не приводит примера
Можно но не в одном списке
1
2955 / 1767 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
19.08.2014, 21:44 28
Цитата Сообщение от Heltarion Посмотреть сообщение
это обычная ТЧ
мы о форме списка говорим? Ну, эмуляция ТЗ, скорее, с единственной группировкой по искусственному номеру строки. Я так думаю. Я ж с тонкими формами не работаю, только натыкаюсь иногда
1
2 / 2 / 0
Регистрация: 21.11.2011
Сообщений: 57
22.08.2014, 09:56  [ТС] 29
Вот и я... У нас все базы на обычных формах, а тут пришло время новых технологий и желания руководства переделать имеющиеся решения под их запросы. Спасибо большое буду делать в два списка. И на всякий случай сделаю отчет в котором и будет предложена данная задача, пускай кликает по группировке и проваливается в документ...
0
2955 / 1767 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
22.08.2014, 10:29 30
Heltarion, я столкнулся тоже: тонкая форма списка с группировкой. Консалтер просит её допилить: изменить группировку на док и сверху добавить новую по стрингу (стринг по ситуации через ВЫБОР КОГДА ТОГДА) раскрасить по третьему признаку. Казалось бы... Но я даже кувыркаться с дин.списком не стал: СКД в толстой форме отчета. Чутьё подсказало, что не смогу я работать с двумя ТЧ дока так, как хочется и ещё захочется.
А зачем мне тонкая на УПП? - свихнёшься с ней потом перепиливать по желанию заказчика из-за неожиданных ограничений, нервы трепать из-за какой-то формочки.
0
22.08.2014, 10:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.08.2014, 10:29
Помогаю со студенческими работами здесь

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

Значение строки табличной части получить в табличной части другого документа
Есть документ ПриходнаяНакладная (товар приходит от поставщика по его цене), с табличной частью...

Программное заполнение табличной части документа из табличной части справочника
Доброго! Ситуация, поставившая меня в тупик. Имеем 1с 8.2 УФ Имеем справочник "Работ" Имеем...

Автоматическое заполнение табличной части документа из табличной части другого
Добрый день. Совсем недавно начал изучать 1С и пока не могу найти решения собственной задачи)...


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

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru