Приветствую.
Дано:
Есть список ведомостей на ЗП: ЗарплатаКВыплатеОрганизаций
Они используются в СписанииСРасчётногоСчёта, сколько фамилий в ведомости, столько раз в таблице ПеречислениеЗаработнойПлаты встречается и ведомость. В одном документе могут быть несколько ведомостей.
Надо:
Отобрать неоплаченные ведомости максимально эффективно.
Решение в лоб (синтаксис сокращён):
ВЫБРАТЬ РАЗЛИЧНЫЕ Ведомость из СписанияСРасчётногоСчетаПеречислениеЗаработнойПлаты ПОМЕСТИТЬ В ОплаченныеВедомости;
Выбрать Ссылка из ЗарплатаКВыплатеОрганизаций ГДЕ Ссылка НЕ В ОплаченныеВедомости
Запуск и... уж пятьдесят минут прошло... И оно понятно - каждый день количество ведомостей растёт, а выбираем из таблицы оплаченных все строки, сворачиваем, а затем из таблицы ведомостей просим проверить каждую, что она не входит в оплаченные.
Сумма(ОплаченнаяВедомость(i)*КолвоФИООплаченнойВедомости(i))+(КолвоОплаченныхВед
омостей*ВсегоВедомостей) => очень возрастающая сложность с каждым новым документом.
А как упростить?
Причина редактирования: Выделяйе код!!!