Задвоение в запросе #572925


#0 by Yeahkaterina
Здравствуйте! Подскажите пожалуйста, как правильно реализовать запрос. Запрос такой:    ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК СуммаОборотДт,        ГДЕ            АктСверкиВзаиморасчетовПоДаннымОрганизации.Дата МЕЖДУ &НачПериода И &КонПериода Дело в том, что необходимо выбрать еще счет из ХозрасчетныйОстаткиИОбороты. Но если в запросе указать еще счет :    ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК СуммаОборотДт,    [b]ХозрасчетныйОстаткиИОбороты.Счет[/b]           .           .           .           . Тогда контрагенты задваиваются и обороты показываются неправильные. Подскажите пожалуйста как поступить
#1 by zak555
точно Пол:    Мужской ?
#2 by Yeahkaterina
не заметила)
#3 by zak555
что за вложенный запрос и что нужно получить ?
#4 by Yeahkaterina
Вообще это будет внешняя обработка для формирования и печати актов сверки. Все  выводится в ТЧ и необходимо, чтоб при двойном щелчке на ячейке с оборотами выводилась ОСВ по данному контрагенту  и счету. Вложеный запрос - из документа АктСверкиВзаиморасчетов. Запрос = Новый Запрос;        ГДЕ            АктСверкиВзаиморасчетовПоДаннымОрганизации.Дата МЕЖДУ &НачПериода И &КонПериода
#5 by Лефмихалыч
а какая религия запрещает формировать именно непосредственно ОСВ с заранее программно установленными отборами?
#6 by Yeahkaterina
Извините, не поняла Вас( Можно по-подробнне?
#7 by MikleV
совсем разучился человечьим языком разговаривать:D
#8 by Лефмихалыч
в конфигурации уже присутствует отчет ОСВ, зачем писать такой же, но другой, который к тому же еще и не работает?
#9 by Yeahkaterina
Я знаю, что в конфигурации уже присутствует отчет ОСВ. я вызываю его из своей внешней обработки т.к. процедура ОткрытьОСВ Экспортная: И у меня открывается ОСВ по выбраному контрагенту, но открывается она по всему счету 62, а мне нужно именно по счету 62.01 или 62.02. для этого и хочу добавить в запросе поле счет.
#10 by MikleV
ОткрытьОСВ (Организация, ПланыСчетов.Хозрасчетный.РасчетыСПокупателями,НачПериода, КонПериода, ВыбраннаяСтрока.Контрагент)
#11 by MikleV
ОткрытьОСВ (Организация, ПланыСчетов.Хозрасчетный.РасчетыПоАвансамПолученным,НачПериода, КонПериода, ВыбраннаяСтрока.Контрагент)
#12 by MikleV
не?
#13 by Yeahkaterina
неа
#14 by Yeahkaterina
Я же не знаю в каком случае какой параметр мне передавать
#15 by ChAlex
У вас во вложенном запросе формируется таблица где по каждому клиенту несколько записей (в разрезе АктВзаим и ДоговорВидДоговора) которая потом соединяется с остаками регистра - естесвенно будет не то что удваиваться, а и утраиваться и т.п. Остается обход выборки методом СледующийПоЗначению
#16 by ChAlex
А нафиг аж 2 контрагента в конечном запросе?
#17 by ChAlex
Используйте ЕстьNULL(ХозрасчетныйОстаткиИОбороты.Субконто1,ВложенныйЗапрос.Контрагент) КАК Контрагент вместо двух полей    ХозрасчетныйОстаткиИОбороты.Субконто1 КАК КонтрагентРег,    ВложенныйЗапрос.Контрагент КАК КонтрагентДок,
#18 by Yeahkaterina
Это для себя (для наглядности)
#19 by ChAlex
- ну и какая наглядность может быть в бардаке? Чем больше кода, тем больше ошибок - мимнимзируйте по возможности любой код - и многое сложное сразу станет прозрачней и ясней
#20 by Yeahkaterina
Если я не выбираю из регистра счет, то все обороты показываются правильные
#21 by Yeahkaterina
Это творческий беспорядок)))))
#22 by ChAlex
ну так те же грабли - (В ИЕРАРХИИ!!!) а это значит что в выборке и обороты по субсчетам и тоже по одному клиенту несколько записей. Тогда группируйте и остатки регистра по клиенту
#23 by ChAlex
И все равно в данном варианте грамотней строить выборку с обходом в 3-х циклах (по числу измерений вашей конечной таблицы)
#24 by ChAlex
.. а вот тут и смотреть ваши цифры
#25 by ChAlex
:) слегка буквочки попропуска - сорри
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С