Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
12.08.2011, 11:28
|
|||
|---|---|---|---|
|
|||
Табличная часть документа в динамическом списке |
|||
|
#18+
Добрый день. В настоящее время 1с позволяет выводить в динамических списках документы (справочники) и их табличные части, используя в запросе списка конструкцию вида ".Товары.( ". При этом на форме при перемещении по списку документов автоматически отображается содержимое табличной части каждого. Помогите, пожалуйста, в нескольких вопросах, возникших при таком использовании динамических списков. 1. Можно ли и каким образом организовать подобный вывод любых связанных таблиц? Например, список элементов справочника и данные связанного с ним регистра сведений, где ссылка на справочник является измерением. 2. Каким образом написать запрос списка так, чтобы в табличной части добавить колонку со связанной информацией? Конструкции вида: ВЫБРАТЬ ДокументЗаказПоставщику.Ссылка, ДокументЗаказПоставщику.Номер, ДокументЗаказПоставщику.Дата, ДокументЗаказПоставщику.Товары.( НомерСтроки, Номенклатура, Количество, кУсловияПоставкиНоменклатурыСрезПоследних.СрокИзготовления ) ИЗ Документ.ЗаказПоставщику КАК ДокументЗаказПоставщику ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.кУсловияПоставкиНоменклатуры.СрезПоследних КАК кУсловияПоставкиНоменклатурыСрезПоследних ПО ДокументЗаказПоставщику.Товары.Номенклатура = кУсловияПоставкиНоменклатурыСрезПоследних.Номенклатура выдают результат с перемножением числа строк табличной части (профайлер показывает, что связь регистра с тч происходит, но результат подзапроса с основной таблицей связывается только по документу, не номенклатуре). 3. Каковы могут быть причины значительного, на порядок, замедления вывода динамических списков (при перелистывании, например) с назначенной основной таблицей по сравнению со списком без основной таблицы? (при наличии дополнительных колонок в списке - левых соединений с основной таблицей). версия платформы: 8.2.13.219 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.08.2011, 11:56
|
|||
|---|---|---|---|
Табличная часть документа в динамическом списке |
|||
|
#18+
calmius, 1) Нет. Нужен произвольный запрос с параметром. 2) Произвольный запрос ВЫБРАТЬ ДокументЗаказПоставщику.Ссылка, ДокументЗаказПоставщику.Номер, ДокументЗаказПоставщику.Дата, ДокументЗаказПоставщику.Товары.( НомерСтроки, Номенклатура, Количество, кУсловияПоставкиНоменклатурыСрезПоследних.СрокИзготовления ) ИЗ Документ.ЗаказПоставщику КАК ДокументЗаказПоставщику ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.кУсловияПоставкиНоменклатуры.СрезПоследних КАК кУсловияПоставкиНоменклатурыСрезПоследних ПО ДокументЗаказПоставщику.Товары.Номенклатура = кУсловияПоставкиНоменклатурыСрезПоследних.Номенклатура Как раз наоборот. Происходит связывание по номенклатуре. Надо добавить условие Рестр.Регистратор = Документ.Ссылка. 3) Каждое изменение позиции основного списка приводит к формированию данных для связанного динамического списка по новой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.08.2011, 13:19
|
|||
|---|---|---|---|
|
|||
Табличная часть документа в динамическом списке |
|||
|
#18+
ADHP, на 2) и 3): здесь речь именно об одном списке, включающем подчиненные таблицы, а не двух связанных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.08.2011, 16:49
|
|||
|---|---|---|---|
Табличная часть документа в динамическом списке |
|||
|
#18+
2) Регистр сведений - не подчинённая таблица. 3) Я правильно понимаю, что речь об одном и том же списке, с установленной основной таблицей и без оной? Динамическое считывание разрешено? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.08.2011, 16:55
|
|||
|---|---|---|---|
Табличная часть документа в динамическом списке |
|||
|
#18+
Кстати в документации по программе есть неточность. Объединения нельзя использовать только если указана основная таблица. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.08.2011, 17:32
|
|||
|---|---|---|---|
|
|||
Табличная часть документа в динамическом списке |
|||
|
#18+
Правильно. Не важно в данном случае, скорость падает в любом варианте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
12.08.2011, 22:14
|
|||
|---|---|---|---|
|
|||
Табличная часть документа в динамическом списке |
|||
|
#18+
AHDPКстати в документации по программе есть неточность. Объединения нельзя использовать только если указана основная таблица.Тоесть нельзя писать "Левое соединенние" если не указал основную таблицу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.08.2011, 05:52
|
|||
|---|---|---|---|
Табличная часть документа в динамическом списке |
|||
|
#18+
calmius, Что правильно? Привидите тексты запросов, описания настроек и временные характеристики. А то не совсем понятно, что вас смущает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.08.2011, 06:27
|
|||
|---|---|---|---|
Табличная часть документа в динамическом списке |
|||
|
#18+
Программист 1с, Ты наверное не так прочитал ;) Объединение - формирование итогового результата путём объедения результатов нескольких (не связанных между собой) запросов, возвращающих одинаковые по структуре результаты. Количество записей в результирующем наборе будет равно сумме записей в подзапросах (Объеденить все) или будет равно колиличеству уникальных записей (Объеденить). Если есть уверенность, что наличие дублей не критично или их не может быть, то для увеличения бысродействия следует явно указывать Объеденить все. Например получим список всех уникальных физических лиц, которые были введены в базу. Выбрать "" + Фамилия + Имя + Отчество Из ФизическиеЛица Объеденить Выбрать НаименованиеПолное Из Контрагенты Где ЮрФизЛицо = ЗНАЧЕНИЕ(Перечисление.ЮрФизЛицо.ФизЛицо) Соединение - формирование результирующего набора данных на основании двух и более таблиц, обычно на основании условия(ий) связи между ними. В 1С может быть неявным (через точку, которая порождает левое соединение). Количество записей зависит от условий связи таблиц и условий наложенных на данные в таблицах. Например получим список банков-контрагентов ВЫБРАТЬ Контрагенты.Ссылка КАК Контрагент ИЗ Справочник.Контрагенты КАК Контрагенты СОЕДИНЕНИЕ Справочник.Банки КАК Банки ПО Контрагенты.Наименование = Банки.Наименование Соединение не следует путать с добавлением в итоговый набор данных столбцов с данными или структурой отличных от содержащихся в таблице и полученных путём преобразования данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=28&tablet=1&tid=1521115]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
38ms |
get topic data: |
8ms |
get forum data: |
4ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 263ms |
| total: | 385ms |

| 0 / 0 |
