Ситуация в следующем: есть 2 АБСОЛЮТННО ИДЕНТЧИННЫЕ по платформе и релизам (1С:Предприятие 8.3 (8.3.10.2252) и Зарплата и Управление Персоналом, редакция 2.5 (2.5.119.1)) базы. Отличаются только содержимым, т.к. 2 разные независимые фирмы. В отчете "Расчетные Ведомости Организаций", при создании, если нет какого-либо движения, то соответственно нет и этой колонки, например "НДФЛ" или "Отпуск". То же относится и колонке "Конечное сальдо". НО руководство решило, что эта колонка ("Конечное сальдо") должна быть всегда... Ответив - "Есть", взялся за реализацию. Сохранил его как внешний, в данных "конечный остаток" закоментировал
//ИМЕЮЩИЕ
// СУММА(СальдоПоПериодам.СуммаВзаиморасчетовКонечныйОстаток) <> 0
161a @ Сегодня, 17:36
,
Я думаю что за вывод колонок отвечает совсем другой код. Вы просто условие убрали.
А что по Вашему Вы закомментировали?
так условие вывода, или я не прав? просветите, плиз
если не условие, то почему в одной работает?
161a @ Сегодня, 17:36
,
у меня под рукой ЗУПа нет, какой регистр в запросе используется? Если виртуальная таблица и в параметрах виртуальной таблицы есть свойство "Метод дополнения" - выставьте ему значение "ДвиженияИГраницыПериода", в таком случае даже если остатки на начало/конец будет = 0, в выборку строки все равно попадут
ок, седня уже поздно, а завтра гляну
Открывайте СКД, в полях Роль ставьте птицу Обязательное
увы, вирт. таблиц нет...
ВЫБРАТЬ РАЗРЕШЕННЫЕ РАЗЛИЧНЫЕ
НАЧАЛОПЕРИОДА(РегламентированныйПроизводственныйКалендарь.ДатаКалендаря, МЕСЯЦ) КАК ПериодРегистрации
ПОМЕСТИТЬ Периоды
ИЗ
РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь
ГДЕ
РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &НачалоПериода И &КонецПериода
;
ВЫБРАТЬ РАЗРЕШЕННЫЕ
СальдоПоПериодам.Период КАК ПериодРегистрации,
СальдоПоПериодам.Организация КАК Организация,
ВЫБОР
КОГДА СальдоПоПериодам.Организация.ГоловнаяОрганизация = ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)
ТОГДА СальдоПоПериодам.Организация
ИНАЧЕ СальдоПоПериодам.Организация.ГоловнаяОрганизация
КОНЕЦ КАК ГоловнаяОрганизация,
СУММА(СальдоПоПериодам.СуммаВзаиморасчетовКонечныйОстаток) КАК Результат,
"Я" КАК Группа,
6 КАК ПриоритетГруппы,
NULL КАК ПриоритетВидаРасчета,
СальдоПоПериодам.Физлицо КАК Физлицо,
"Конечное сальдо" КАК ИмяВидаРасчета,
NULL КАК Регистратор,
Неопределено КАК Ведомость
{ВЫБРАТЬ
ПериодРегистрации,
Организация.*,
ГоловнаяОрганизация.*,
Результат,
Группа,
Физлицо.*,
ИмяВидаРасчета}
ИЗ
(ВЫБРАТЬ
Периоды.Период КАК Период,
Сальдо.Физлицо КАК Физлицо,
Сальдо.Организация КАК Организация,
СУММА(Сальдо.СуммаВзаиморасчетовОстаток) КАК СуммаВзаиморасчетовКонечныйОстаток
ИЗ
(ВЫБРАТЬ РАЗЛИЧНЫЕ
НАЧАЛОПЕРИОДА(РегламентированныйПроизводственныйКалендарь.ПериодРегистрации, МЕСЯЦ) КАК Период
ИЗ
Периоды КАК РегламентированныйПроизводственныйКалендарь
ГДЕ
РегламентированныйПроизводственныйКалендарь.ПериодРегистрации МЕЖДУ &НачалоПериода И &КонецПериода
И &ЕстьГруппировкаПоПериодуРегистрации
{ГДЕ
(НАЧАЛОПЕРИОДА(РегламентированныйПроизводственныйКалендарь.ПериодРегистрации, МЕСЯЦ)) КАК ПериодРегистрации}
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ РАЗЛИЧНЫЕ
МАКСИМУМ(НАЧАЛОПЕРИОДА(РегламентированныйПроизводственныйКалендарь.ПериодРегистрации, МЕСЯЦ))
ИЗ
Периоды КАК РегламентированныйПроизводственныйКалендарь
ГДЕ
РегламентированныйПроизводственныйКалендарь.ПериодРегистрации МЕЖДУ &НачалоПериода И &КонецПериода
И (НЕ &ЕстьГруппировкаПоПериодуРегистрации)
{ГДЕ
(НАЧАЛОПЕРИОДА(РегламентированныйПроизводственныйКалендарь.ПериодРегистрации, МЕСЯЦ)) КАК ПериодРегистрации}
ИМЕЮЩИЕ
МАКСИМУМ(НАЧАЛОПЕРИОДА(РегламентированныйПроизводственныйКалендарь.ПериодРегистрации, МЕСЯЦ)) ЕСТЬ НЕ NULL ) КАК Периоды
ВНУТРЕННЕЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
ВзаиморасчетыСРаботникамиОрганизацииОстаткиИОбороты.Организация КАК Организация,
&НачалоПериода КАК Период,
ВзаиморасчетыСРаботникамиОрганизацииОстаткиИОбороты.Физлицо КАК Физлицо,
ВзаиморасчетыСРаботникамиОрганизацииОстаткиИОбороты.СуммаВзаиморасчетовОстаток КАК СуммаВзаиморасчетовОстаток
ИЗ
РегистрНакопления.ВзаиморасчетыСРаботникамиОрганизаций.Остатки(&НачалоПериода {(&НачалоПериода)}, {(Физлицо), (Организация)}) КАК ВзаиморасчетыСРаботникамиОрганизацииОстаткиИОбороты
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
ВзаиморасчетыСРаботникамиОрганизацииОстаткиИОбороты.Организация,
ВзаиморасчетыСРаботникамиОрганизацииОстаткиИОбороты.Период,
ВзаиморасчетыСРаботникамиОрганизацииОстаткиИОбороты.Физлицо,
ВзаиморасчетыСРаботникамиОрганизацииОстаткиИОбороты.СуммаВзаиморасчетовОборот
ИЗ
РегистрНакопления.ВзаиморасчетыСРаботникамиОрганизаций.Обороты(&НачалоПериода {(&НачалоПериода)}, &КонецПериода {(&КонецПериода)}, Месяц, {(Физлицо), (Организация)}) КАК ВзаиморасчетыСРаботникамиОрганизацииОстаткиИОбороты
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
НДФЛКЗачету.Организация,
&НачалоПериода,
НДФЛКЗачету.ФизЛицо,
НДФЛКЗачету.СуммаНДФЛКЗачетуОстаток
ИЗ
РегистрНакопления.НДФЛКЗачету.Остатки(&НачалоПериода {(&НачалоПериода)}, {(Физлицо), (Организация)}) КАК НДФЛКЗачету
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
НДФЛКЗачету.Организация,
НДФЛКЗачету.Период,
НДФЛКЗачету.ФизЛицо,
НДФЛКЗачету.СуммаНДФЛКЗачетуОборот
ИЗ
РегистрНакопления.НДФЛКЗачету.Обороты(&НачалоПериода {(&НачалоПериода)}, &КонецПериода {(&КонецПериода)}, Месяц, {(Физлицо), (Организация)}) КАК НДФЛКЗачету) КАК Сальдо
ПО (Сальдо.Период <= Периоды.Период)
ГДЕ
(НЕ Сальдо.Физлицо ЕСТЬ NULL )
СГРУППИРОВАТЬ ПО
Сальдо.Организация,
Сальдо.Физлицо,
Периоды.Период) КАК СальдоПоПериодам
ГДЕ
(НЕ СальдоПоПериодам.Физлицо ЕСТЬ NULL )
СГРУППИРОВАТЬ ПО
СальдоПоПериодам.Период,
СальдоПоПериодам.Организация,
СальдоПоПериодам.Физлицо,
ВЫБОР
КОГДА СальдоПоПериодам.Организация.ГоловнаяОрганизация = ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)
ТОГДА СальдоПоПериодам.Организация
ИНАЧЕ СальдоПоПериодам.Организация.ГоловнаяОрганизация
КОНЕЦ
ИМЕЮЩИЕ
СУММА(СальдоПоПериодам.СуммаВзаиморасчетовКонечныйОстаток) <> 0
Там так просто не получится - мало того, что СКД модифицирует запрос, так еще после компоновки отрабатывает процедура удаления "ненужных" полей.
но почему тогда все получилось в другой базе?
Потому, что ,скорее, в другой базе есть остатки, а в текущей нет.
ничего подобного. специально выбирал, когда и там и там нет остатков
никто не знает?
что именно смотреть? куда копать-то?
Результат запроса - есть группировка с Остатками или нет
кеш почистить там, где не работает.
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua