Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
19 Окт 2017, 02:49
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Использование полей из не связанных наборов данных не допустимо  (Прочитано 2435 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн МолчановАнтон

  • *
  • Сообщений: 11
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-06-10
  • Сайт: 
  • Профессия: Программист 8.1
Добрый день!
Пытаюсь сформировать отчет на основе документа уатЗаявкиНаРемонт
Через конструктор запросов добавляю нужные мне поля

ВЫБРАТЬ
   уатЗаявкаНаРемонт.ВидОборудования КАК НаименованиеОборудования,
   уатЗаявкаНаРемонт.Наработка КАК НаработкаДоТО,
   уатЗаявкаНаРемонт.Одометр КАК НаработкаПриПостановкеНаРемонт,
   уатЗаявкаНаРемонт.ТС.Модель.Наименование КАК МодельТС,
   уатЗаявкаНаРемонт.ВидОбслуживания.Наименование КАК ВидРемонта,
   уатЗаявкаНаРемонт.ДатаНачала КАК ДатаНачалаРемонта,
   уатЗаявкаНаРемонт.ДатаОкончания КАК ДатаОкончанияРемонта,
   уатЗаявкаНаРемонт.Работы.(
      СУММА(Количество)
   ) КАК ВремяВРемонте,
   уатЗаявкаНаРемонт.Материалы.(
      СУММА(Количество)
   ),
   уатЗаявкаНаРемонт.Трудозатраты.(
      СУММА(Человекочасы)
   )
ИЗ
   Документ.уатЗаявкаНаРемонт КАК уатЗаявкаНаРемонт

При формировании отчета выскакивает ошибка: Использование полей из не связанных наборов данных не допустимо
Подскажите пожалуйста что я делаю не так?


Оффлайн mixqn

  • Администратор
  • *****
  • Сообщений: 1346
  • РЕПУТАЦИЯ: 166
  • КПД: 12%
  • Who is John Galt?
  • Регистрация: 2012-08-15
  • Сайт: 3gmaster.net
  • Профессия: Программист 1С
 уатЗаявкаНаРемонт.Работы.(
      СУММА(Количество)
   ) КАК ВремяВРемонте,
никогда не использовал подобные конструкции, поэтому предположу, что дело может быть в этом. попробуйте написано нормальное левое соединение и нормальные группировки без вложенных конструкций

Оффлайн МолчановАнтон

  • *
  • Сообщений: 11
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-06-10
  • Сайт: 
  • Профессия: Программист 8.1
У меня одна таблица, как можно сделать левое соединение?
уатЗаявкаНаРемонт.Работы.(
      СУММА(Количество)
   ) КАК ВремяВРемонте,
никогда не использовал подобные конструкции, поэтому предположу, что дело может быть в этом. попробуйте написано нормальное левое соединение и нормальные группировки без вложенных конструкций

Оффлайн mixqn

  • Администратор
  • *****
  • Сообщений: 1346
  • РЕПУТАЦИЯ: 166
  • КПД: 12%
  • Who is John Galt?
  • Регистрация: 2012-08-15
  • Сайт: 3gmaster.net
  • Профессия: Программист 1С
:D
ну как это одна?
у вас их на секундочку 4!!!
1. Документ.уатЗаявкаНаРемонт
2. Документ.уатЗаявкаНаРемонт.Работы
3. Документ.уатЗаявкаНаРемонт.Материалы
4. Документ.уатЗаявкаНаРемонт.Трудозатраты
Добавлено: 10 Июн 2016, 11:54

присоедините к основной таблице документа все остальные по ссылке, вытащите интересующие вас числовые поля, а затем укажите группировки

Оффлайн МолчановАнтон

  • *
  • Сообщений: 11
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-06-10
  • Сайт: 
  • Профессия: Программист 8.1
Получилось!
Подробно и грамотно всё объяснили по шагам, спасибо!
Выводит в таком виде в каком нужно, только суммирует неправильно
РемонтРаботы.Количество = 31,200 (вместо 7,800)
РемонтМатериалы.Количество = 112,000 (вместо 7)
РемонтТрудозатраты.Человекочасы = 64,000 (вместо 4)

:D
ну как это одна?
у вас их на секундочку 4!!!
1. Документ.уатЗаявкаНаРемонт
2. Документ.уатЗаявкаНаРемонт.Работы
3. Документ.уатЗаявкаНаРемонт.Материалы
4. Документ.уатЗаявкаНаРемонт.Трудозатраты
Добавлено: 10 Июн 2016, 11:54

присоедините к основной таблице документа все остальные по ссылке, вытащите интересующие вас числовые поля, а затем укажите группировки

Оффлайн Kironten

  • *****
  • Сообщений: 873
  • РЕПУТАЦИЯ: 182
  • КПД: 21%
  • Регистрация: 2013-08-12
  • Сайт: 
  • Профессия: Ученик 1С
Некорректные соединения
Наплодилось полей.
В первом случае кратность 4 во втором и третьем 16000.
Показывайте как соединили

Оффлайн МолчановАнтон

  • *
  • Сообщений: 11
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-06-10
  • Сайт: 
  • Профессия: Программист 8.1
Связал так:





Некорректные соединения
Наплодилось полей.
В первом случае кратность 4 во втором и третьем 16000.
Показывайте как соединили
Добавлено: 14 Июн 2016, 07:16

Не понимаю как правильно сгрупировать данные, у меня получается что данные дублируются в каждой строке - не понимаю как этого избежать? Подскажите пожалуйста


Последний раз редактировалось: МолчановАнтон; 14 Июн 2016, 07:16. Причина: Объединение сообщений

Оффлайн mixqn

  • Администратор
  • *****
  • Сообщений: 1346
  • РЕПУТАЦИЯ: 166
  • КПД: 12%
  • Who is John Galt?
  • Регистрация: 2012-08-15
  • Сайт: 3gmaster.net
  • Профессия: Программист 1С
Смотрите, при таком написании запроса работать будет следующим образом:
1. берется одна строка из основной таблицы Документ.уатЗаявкаНаРемонт
2. к ней слева добавляются все строки - Документ.уатЗаявкаНаРемонт.Работы. допустим, там таковых 3. получаем уже 3 строки
3. к результату шага 2 слева добавляются все строки из таблицы Документ.уатЗаявкаНаРемонт.Материалы. допустим, там их еще 2. на этом шаге общее количество строк 6.
4. к результату шага 3 слева присоединяются все строки таблицы Документ.уатЗаявкаНаРемонт.Трудозатраты. допустим, их там еще 3. на выходе имеем 18 строк.

отсюда и ваши проблемы.

чтобы этого избежать, группировку надо делать после каждого соединения.
1. выбрали 1 строку из основной таблицы.
2. сделали соединение, сгруппировали, в результате так же 1 строка
3. шаг 2 повторить столько раз, сколько всего соединение. в вашем случае - 3 раза. на выходе останется 1 строка по каждой ссылке.


Теги:
 

Перенос данных из 1с 82 БП (базовая) в 1с 82 БГУ (базовая)

Автор Владимир87Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 7211
Последний ответ 06 Дек 2014, 17:40
от дфтын
Поиск по бае данных,(полнотекстовый поиск)

Автор kot_ooРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 0
Просмотров: 3797
Последний ответ 19 Май 2014, 15:40
от kot_oo
Как исправить при обновлении ИБ: Ошибка в запросе набора данных по причине: {(58, 2)}: Несовместимые типы "ВЫБОР" <<?>>ВЫБОР

Автор dollРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 1979
Последний ответ 01 Янв 2017, 20:27
от Геннадий ОбьГЭС
"Задваивание" данных в отчете

Автор mashencev_antonРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 13
Просмотров: 6952
Последний ответ 15 Окт 2015, 11:21
от Mari_beginner
Куда сохраняются данные в режиме работы клиент при выгрузке данных обработкой "Универсальный обмен данными в формате XML"

Автор xDDРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 6716
Последний ответ 13 Ноя 2014, 08:23
от cska-fanat-kz

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

oleg-x
86 Сообщений
alex0402
52 Сообщений
AIFrame
40 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
38 Сообщений
Oldman06
31 Сообщений
Golickoff Golickoff
30 Сообщений
vitasw
29 Сообщений
MuI_I_Ika MuI_I_Ika
18 Сообщений
BuhRust
14 Сообщений
AsadRoman
13 Сообщений

* Кто онлайн

  • Точка Гостей: 173
  • Точка Скрытых: 0
  • Точка Пользователей: 1
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal