Прибрати проводки документа
Служба для одного рідкісного, але глухого випадку: у документа знятий прапорець проведення, а записи операцій під ним лишились. Такий документ застрягає намертво — провести його заново не можна (унікальний індекс проводок відбиває другу), видалити теж не можна (захист обліку бачить живі проводки). Раніше вихід був один — правити базу руками. Тепер адміністратор прибирає проводки цією службою, після чого документ або видаляється, або проводиться заново.
Де шукати: Модулі → Фінанси → Служби → Прибрати проводки документа
Розбір на прикладі
Вікно питає рівно дві речі, і обидві не треба шукати — система сама їх надрукувала:
- Мітка проводки (реєстр) — службове ім'я реєстру, якому належить проводка;
- Номер документа.
Звідки їх узяти: коли система відмовилась видалити документ, останнім рядком відмови вона надрукувала мітку й номер — наприклад CashOut 42. Ці два слова й переносяться в поля як є. Підказка в самому вікні каже те саме.
Кнопка «За розкладом» у вікні є, але неактивна, і це не недогляд: операція незворотна, планувальнику вона не віддається — запуск за розкладом прямим запитом сервер теж відхиляє («Операцію не можна поставити на розклад: її не скасувати!»).
Що служба перевіряє, перш ніж щось прибрати
Вона не вірить уведеному і встановлює три факти поспіль — на будь-якому може відмовити.
Проводка існує. Немає проводки з такою міткою й номером — чесна відмова «Проводок за цією міткою і номером не знайдено», а не тихе «готово».
Мітка — це реєстр документів. Власник визначається за ознакою: мітка, що збігається з описом реєстру, і є реєстром-власником. Складені мітки валютних операцій і мітки основних засобів описами реєстрів не є — за ними власника встановити нічим, і служба відмовляє замість того, щоб зносити наосліп. Проводки основних засобів прибираються своїми службами.
Документ-власника служба шукає за тією адресою, яку реєстр оголошує для своїх проводок: зазвичай це номер документа, у «Статей надходжень/витрат» — сам запис. Якщо такої адреси в записах реєстру немає, збіг мітки з описом реєстру нічого не доводить, і служба відмовляє так само, як на мітках, що реєстрами не є. Так буває з міткою AutSimPeriods: вона збігається з описом реєстру «Витрати майбутніх періодів», але такі проводки створює служба «Створення записів операцій із симуляцій» за власною нумерацією, і номер проводки не є номером картки. Такі проводки прибирає адміністратор.
Документ справді в суперечливому стані. Якщо документ на місці й прапорець проведення в нього стоїть — відмова: проводки законні, знімати їх треба штатним зняттям підтвердження, а не цією службою. У реєстрах «Виробництво» й «Операції виробництва» прапорця немає — документ проводить статус, і служба судить за ним: «Розпочато» чи «Завершене» — та сама відмова, а «Створено» за живої проводки — суперечливий стан, і проводку служба прибере. Якщо в реєстру прапорця проведення немає взагалі («Сервісні платежі», «Статті надходжень/витрат»), служба відмовить: проводки належать живому запису. Але й сам такий запис, поки під ним є проводки, не видаляється — відмова видалення відсилає до адміністратора. Штатного виходу для таких реєстрів немає: їхні проводки прибирає адміністратор. Якщо ж документа немає зовсім — проводка осиротіла, і прибрати її якраз і треба.
Саме видалення йде тим самим шляхом, яким проводки прибирає звичайне зняття підтвердження, — з тими самими хуками й перерахунком вітрини. Служба не вигадує другого способу робити те саме. Тому діє й замок закритого періоду: проводку з датою в закритому періоді служба не прибере.
Після видалення вона ще раз питає в бази, чи зникла проводка. Якщо та чомусь лишилась — служба падає й відкочує все, замість того щоб відзвітувати «готово».
Типові ситуації
«Проводок за цією міткою і номером не знайдено». Або мітку чи номер перенесено з одруком, або проводки вже прибрані — спробуйте видалити документ ще раз.
«Документ проведено — його проводки легітимні». Це не той випадок, для якого служба зроблена. Відкрийте документ і зніміть підтвердження звичайним способом: проводки підуть самі. Виняток — «Таблиці робіт»: штатного зняття проведення в них немає, тож проводки проведеної таблиці прибирає адміністратор.
«Період закритий!» Проводка датована періодом, закритим у «Закриття внесення змін». Служба знімає її тим самим шляхом, що й ручне видалення, тому чекає, поки період відкриють або внесуть вас у список користувачів, яким зміни в ньому дозволено.
Мітка не схожа на ім'я реєстру (наприклад, у валютної операції або в основних засобів). Служба відмовить навмисно. Для основних засобів є свої служби; в інших випадках потрібен адміністратор.
Відмова про реєстр, спільний з іншою компанією. Якщо ваша компанія бере записи операцій (або реєстр документа) у спільне користування з іншої, служба відмовить ще до пошуку проводки й назве цей реєстр: прибирати проводки може лише компанія, якій реєстр належить, — інакше служба знесла б проводку її документа. Запустіть службу в тій компанії.
Проводки прибрано, а документ усе одно не видаляється. Отже, його тримає щось інше — прочитайте текст нової відмови цілком: він називає причину.