0
- 05.09.2012 - 12:23
|
Есть запрос: ВЫБРАТЬ УправленческийОстатки.Счет КАК Счет, УправленческийОстатки.Субконто1 КАК Субконто1, УправленческийОстатки.Субконто2 КАК Субконто2, УправленческийОстатки.КоличествоРазвернутыйОстаток Дт КАК КоличествоРазвернутыйОстатокДт, УправленческийОстатки.КоличествоРазвернутыйОстаток Кт КАК КоличествоРазвернутыйОстатокКт ИЗ РегистрБухгалтерии.Управленческий.Остатки(, Счет = ЗНАЧЕНИЕ(ПланСчетов.Основной.РасчетыСПоставщиками) , , ) КАК УправленческийОстатки УПОРЯДОЧИТЬ ПО УправленческийОстатки.Счет.Код, УправленческийОстатки.Субконто1.Наименование, УправленческийОстатки.Субконто2.Наименование ИТОГИ СУММА(КоличествоРазвернутыйОстатокДт), СУММА(КоличествоРазвернутыйОстатокКт) ПО Счет При его выполнении получается такой результат: http://s018.radikal.ru/i507/1209/78/12a351996711.jpg т.е. выводится итог по счету и детальные записи Теперь изменим запрос - установим расчет итога по полю Субконто2 вместо поля Счет: ВЫБРАТЬ ... ИТОГИ ... ПО Субконто2 При выполнении этого запроса получается такой результат: http://s45.radikal.ru/i108/1209/9f/166afcc2fc9b.jpg т.е. результат запроса не содержит записей. Вопрос - почему не выводятся итог по Субконто2 и детальные записи? Выложил информационную базу с описанным примером (размер 10Мб) доступна по этой ссылке - http://www.fayloobmennik.net/2172418 Запрос находится в Обработке "ОбработкаВывестиТаблицуЗначений". | |
1
- 05.09.2012 - 12:44
| ИМХО - на уровне СУБД транслируется в запрос к таблице остатков и оборотов по счетам/субсчетам и субконто _ACCTtl2, а записей в этой таблице попросту нет, поскольку для этого счёта определено единственное субконто | |
2
- 05.09.2012 - 14:11
| 1-roma n > Не понял твоей мысли. Почему ты пишешь что записей в таблице остатков нет? Они есть, запрос к таблице остатков возвращает детальные записи в которых значение Субконто2 = Null, далее итоговые записи, насколько я понимаю, должны строиться на основании детальных записей, т.е. должен рассчитываться итог по полю Субконто2 со значением Null, а этого не происходит, более того из результата запроса исчезают детальные записи. Это мне и не понятно. | |
3
- 05.09.2012 - 18:36
|
2-eeyore > мысль в том, что детальные записи можно получить по разному. Но дело, скорее всего не в этом, а в механике сбора итогов. Как набрать строку итога? Сформировать список различных значений в поле выборки . Для каждого значения из этого списка (в нашем случае значение единственное: NULL) Для каждой строки выборки проверить значение поля на равенство обрабатываемому значению списка. Если значение в строке выборки равно значению списка - увеличить агрегат, строку подчинить. Но фишка в том, что для платформы результат любого сравнения с NULL есть false... ЗЫ Вообще, если с выборкой предстоят какие-то дополнительные манипуляции (группировка, итоги, соединения к другой выборке) от NULL лучше избавиться дабы избежать подобных сюрпризов | |
4
- 05.09.2012 - 19:22
| 3-roma n > Я тебя понял, спасибо. | |
| Интернет-форум Краснодарского края и Краснодара |