Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
13 дек 2024, 03:52

Запрос из ОстаткиИОбороты - сортировка при одинаковой дате

Автор Leviathan, 01 мар 2011, 16:51

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

Leviathan

Здравствуйте!
Использую 1С 8.1
Делаю запрос из РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты с периодичностью по регистратору. У меня в базе куча документов с одинаковой датой и временем 00:00. При этом, проводились они в каком-то некоем порядке, который косвенно виден в виде остатков по регистру на начало.

Например
ОстатокНаНачало|Изменение|ОстатокНаКонец|
100 шт|-2 шт|98 шт
98 шт|-5 шт|93 шт

Хочется видеть в отчете проводки именно в таком очевидном порядке, но как это сделать? В Периоде время стоит 00:00... не могу понять по какому полю написать УПОРЯДОЧИТЬ.

Заранее спасибо за совет.

Klyacksa

Вообще, докуменрты проводятся всегда на МоментВремени(), поэтому даже с одинаковой датой, у них есть свой порядок.
А просто по дате не сортирует в нужном порядке?
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

cska-fanat-kz

Помимо Период у регистра есть поле МоментВремени.
По нему и сортируйте.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Leviathan

Что-то я такое поле только в документе видел, а не в регистре..


|ВЫБРАТЬ
| ХозрасчетныйОстаткиИОбороты.Счет,
| ХозрасчетныйОстаткиИОбороты.Субконто1,
| ХозрасчетныйОстаткиИОбороты.Субконто2,
| ХозрасчетныйОстаткиИОбороты.Субконто3,
| ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток,
| ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток,
| ХозрасчетныйОстаткиИОбороты.СуммаОборот,
| ХозрасчетныйОстаткиИОбороты.Регистратор,
| ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстаток,
| ХозрасчетныйОстаткиИОбороты.КоличествоОборот,
| ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстаток,
|   ХозрасчетныйОстаткиИОбороты.МоментВремени
|ПОМЕСТИТЬ ВПроводки
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатаНач,&ДатаКон,Регистратор,,Счет=&Счет,,Субконто2=&Склад) КАК ХозрасчетныйОстаткиИОбороты


Говорит, поле ХозрасчетныйОстаткиИОбороты.МоментВремени не найдено

cska-fanat-kz

МоментВремени у виртуальных таблиц регистров нет.
Только у основной.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Leviathan

Посоветуйте пожалуйста как выйти из положения - неужели джойнить к Хозрасчетный к Хозрасчетный.ОстаткиИОбороты? Как-то абсурдно выглядит... и по какому полю их связывать?

cska-fanat-kz

Остаток на начало периода

ОБЪЕДИНИТЬ

<<запрос по ОСНОВНОЙ ТАБЛИЦЕ>>

ОБЪЕДИНИТЬ

Остаток на конец периода


Остаток по текущей строке ЗапросаПоОснТаблице считать самому в переменках ТекНачОст и ТекКонОст.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Leviathan

Огромное спасибо, теперь все сортируется как надо. Я сделал немного по-другому - через временную таблицу (просто мне так понятнее)


|ВЫБРАТЬ
| ХозрасчетныйОстаткиИОбороты.Счет,
| ХозрасчетныйОстаткиИОбороты.Субконто1,
| ХозрасчетныйОстаткиИОбороты.Субконто2,
| ХозрасчетныйОстаткиИОбороты.Субконто3,
| ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток,
| ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток,
| ХозрасчетныйОстаткиИОбороты.СуммаОборот,
| ХозрасчетныйОстаткиИОбороты.Регистратор,
| ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстаток,
| ХозрасчетныйОстаткиИОбороты.КоличествоОборот,
| ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстаток
|ПОМЕСТИТЬ ВПроводки
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДатаНач,&ДатаКон,Регистратор,,Счет=&Счет,,Субконто2=&Склад) КАК ХозрасчетныйОстаткиИОбороты
|ИНДЕКСИРОВАТЬ ПО Регистратор;
|
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| Хозрасчетный.Регистратор,
| Хозрасчетный.МоментВремени
|ПОМЕСТИТЬ ВСортОрдер
|ИЗ
| РегистрБухгалтерии.Хозрасчетный КАК Хозрасчетный
|ГДЕ
| (Хозрасчетный.СчетДт = &Счет
| ИЛИ Хозрасчетный.СчетКт = &Счет)
| И Хозрасчетный.Период МЕЖДУ &ДатаНач И &ДатаКон
| И Хозрасчетный.Регистратор.Склад = &Склад
|ИНДЕКСИРОВАТЬ ПО Регистратор;

и затем в итоговом запросе связал эти две таблицы

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск