Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Быстрый запрос неоплаченных ведомостей ЗП
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.2 > Программирование обычных форм 1С 8.2 и не интерфейсной логики
bolobol
Приветствую.

Дано:
Есть список ведомостей на ЗП: ЗарплатаКВыплатеОрганизаций
Они используются в СписанииСРасчётногоСчёта, сколько фамилий в ведомости, столько раз в таблице ПеречислениеЗаработнойПлаты встречается и ведомость. В одном документе могут быть несколько ведомостей.
Надо:
Отобрать неоплаченные ведомости максимально эффективно.

Решение в лоб (синтаксис сокращён):
ВЫБРАТЬ РАЗЛИЧНЫЕ Ведомость из СписанияСРасчётногоСчетаПеречислениеЗаработнойПлаты ПОМЕСТИТЬ В ОплаченныеВедомости;
Выбрать Ссылка из ЗарплатаКВыплатеОрганизаций ГДЕ Ссылка НЕ В ОплаченныеВедомости


Запуск и... уж пятьдесят минут прошло... И оно понятно - каждый день количество ведомостей растёт, а выбираем из таблицы оплаченных все строки, сворачиваем, а затем из таблицы ведомостей просим проверить каждую, что она не входит в оплаченные.

Сумма(ОплаченнаяВедомость(i)*КолвоФИООплаченнойВедомости(i))+(КолвоОплаченныхВед
омостей*ВсегоВедомостей) => очень возрастающая сложность с каждым новым документом.


А как упростить?
Vofka
Ну а почему бы не ограничить выбор ведомостей по периоду? Я просто не понимаю для чего вы их выбираете за весь период? Разве возможно такое, что ведомость, которая была создана год назад и не была оплачена - будет оплачена сегодня?
bolobol
Цитата(Vofka @ 11.09.11, 18:40) необходимо зарегистрироваться для просмотра ссылки
Ну а почему бы не ограничить выбор ведомостей по периоду? Я просто не понимаю для чего вы их выбираете за весь период? Разве возможно такое, что ведомость, которая была создана год назад и не была оплачена - будет оплачена сегодня?


Ошибаются все, в том числе и операторы по вводу первичных документов. И месяц и год начисления могут наврать и люди не получат ЗП, а это недопустимо!
Batchir
Регистры Вам в помощь
bolobol
Цитата(Batchir @ 11.09.11, 19:11) необходимо зарегистрироваться для просмотра ссылки
Регистры Вам в помощь


Мдя... В первых же строках документации писано - документы не могут являться основанием для определения сути совершения хозяйственной операции... Честно облазил все регистры )) сделал бы сразу - точнее описал бы вопрос, спасибо!

Вот. В регистре ВзаиморасчётыСРаботникамиОрганизаций упоминается лишь ФИО, Сумма, ПериодВзаиморасчётов, но не ведомость. А значит, при положительном балансе вне нужного периода - выявлена будет ошибка оператора. Итого, достаточно проверять ведомости с периодом, в котором есть положительное начисление, да? А выплаченные авансы? По ним начислений нет никаких и их выплата записывает в регистр отрицательное начисление, значит, что до выплаты аванса по ЗарплатеКВыплатеОрганизаций - тут вот регистры... не помогают...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.