ОБСУЖДЕНИЕ

Что исправить в запросе 1c 8.1?

1 ответов 4,1 тыс.
AI-выжимка обсуждения скоро

Краткие тезисы обсуждения со ссылками на ключевые ответы появятся здесь.

Статус
Закрыто для дальнейших ответов.
Автор темы
Запрос помечает на удаление элементы справочника, если остатки или обороты нулевые. или их вообще нет. А мне надо, чтобы помечались, если их ТОЛЬКО ВООБЩЕ НЕТ(остатков и оборотов). Что исправить?

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


СчетаУчетаОС=Новый СписокЗначений;
СчетаУчетаОС.Добавить(Счет1.Ссылка);
СчетаУчетаОС.Добавить(Счет2.Ссылка);
Запрос.УстановитьПараметр("СчетаУчетаОС", СчетаУчетаОС);
Запрос.УстановитьПараметр("НачПериода", НачПериода);
Запрос.УстановитьПараметр("КонПериода", КонПериода);
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();

Пока Выборка.Следующий() Цикл
ОбъектОС = Выборка.СсылкаОС.ПолучитьОбъект();
ОбъектОС.УстановитьПометкуУдаления(Истина);
КонецЦикла;
 
если их ТОЛЬКО ВООБЩЕ НЕТ(остатков и оборотов).
Рискну предположить, это означает: нужно удалить из базы ОС, которые вообще не использовались в проводках? Тогда и не нужны никакие фильтры по счетам или датам...

ВЫБРАТЬ
ОС.Ссылка КАК СсылкаОС
ИЗ
Справочник.ОсновныеСредства КАК ОС
ГДЕ
(НЕ ОС.Ссылка В
(ВЫБРАТЬ РАЗЛИЧНЫЕ
ХозрасчетныйСубконто.Значение
ИЗ
РегистрБухгалтерии.Хозрасчетный.Субконто КАК ХозрасчетныйСубконто
ГДЕ
ХозрасчетныйСубконто.Вид = ЗНАЧЕНИЕ(ПланВидовХарактеристик.ВидыСубконтоХозрасчетные.ОсновныеСредства)))
 
Статус
Закрыто для дальнейших ответов.