- Зуп настроить движения по бухгалтерским регистрам
- Зуп настроить движения по бухгалтерским регистрам
- Детективная история
- Учимся видеть регистры
- Учимся анализировать регистры
- Учимся корректировать регистры
- Результат
- Как в ЗУП 3 посмотреть движения документа по регистрам?
- Похожие публикации
- Карточка публикации
- Порядок записи движений регистров при проведении документа
Зуп настроить движения по бухгалтерским регистрам
Дата публикации 21.10.2019
Использован релиз 3.1.11
В программе можно проанализировать движение документа по регистрам, например, «Начисление зарплаты и взносов». Для этого по кнопке «Еще» следует выбрать действие «Движения документа» (рис. 1) или воспользоваться сочетанием клавиш Ctrl+Shift+L. При этом откроется одноименная форма, в ней отражаются все регистры, в которые попадает информация из выбранного документа. Если необходимо получить информацию по одному конкретному регистру установите флажок «Выводить только» и выберите регистр из предложенного перечня. Кнопка «Сформировать».
Для быстрого доступа к регистрам, по которым документ произвел записи, можно сделать ссылки в самом документе. Для этого откройте форму «Настройка панели навигации» (Сервис и настройки — Настройки ). В этой форме по кнопке «Добавить» выберите необходимые регистры из предложенного списка доступных команд (слева) и нажмите кнопку «ОК». В результате в документе появятся ссылки на регистры (рис. 2). Чтобы проанализировать конкретный регистр, нажмите на одноименную ссылку.
Не пропускайте последние новости — подпишитесь
на бесплатную рассылку сайта:
- десятки экспертов ежедневно мониторят изменения законодательства и судебную практику;
- рассылка бесплатная, независимо от наличия договора 1С:ИТС;
- ваш e-mail не передается третьим лицам;
Источник
Зуп настроить движения по бухгалтерским регистрам
Детективная история
Сразу покажу на небольшом примере почему это так важно.
Пусть у нас есть начисление заработной платы за январь:
В начале февраля мы создаём ведомость на выплату зарплаты из кассы и нажимаем кнопку «Заполнить»:
И получаем следующее:
Но ведь за январь:
- Начисление 50 000 рублей
- НДФЛ 6 500 рублей
- Итого к выплате 43 500 рублей
Где закралась ошибка? Что пошло не так? Неужели теперь всегда вводить сумму к выплате вручную?
Опытный бухгалтер тут же сделает оборотно-сальдовую ведомость по 70 счёту:
И будет в ещё большем недоумении, потому что по данным отчёта к выплате выходят всё те же 43 500! И откуда же взялись лишние 5 000 рублей?
Причём такая ситуация (с любыми расчётами) может произойти как в «тройке», так и в «двойке».
Сегодня я попытаюсь приоткрыть завесу тайны — почему же иногда программа ведёт себя так странно. Я расскажу как в таких случаях находить и устранять ошибку. Ближе к концу статьи мы разберёмся — откуда же взялись эти самые 5 000 рублей.
Итак, поехали!
Учимся видеть регистры
При проведении документов 1С:Бухгалтерия 8 делает проводки по бухгалтерским счетам (кнопка ДтКт у любого документа):
Именно на основании этих проводок строятся все бухгалтерские отчёты: Анализ счёта, Карточка счёта, Оборотно-сальдовая ведомость.
Но есть огромный пласт данных, которые пишутся программой параллельно с проводками и используются для всего остального: заполнение КУДИР, книги покупок и продаж, регламентированной отчётности. заработной платы к выплате, наконец
Как вы уже, наверное, догадались этот пласт называется регистрами, вот он:
Я сейчас не буду вдаваться в подробности описания самих регистров, чтобы не запутать вас ещё больше.
Скажу лишь, что нам просто жизненно необходимо постепенно учиться «видеть» движения по этим регистрам, чтобы лучше понимать и, когда надо, корректировать поведение программы.
Давайте присмотримся к регистру «Зарплата к выплате» — именно он имеет смысл для решения нашей проблемы с лишними 5 000:
Мы видим две записи по этому регистру, сделанные в приход, то есть в плюс. Если пролистать экран в право, то мы увидим в первой строчке сумму к выплате «-6 500», а во второй «50 000».
Остаток по этому регистру -6 500 + 50 000 равен 43 500, который и должен попасть в документ «Ведомость на выплату из кассы», когда мы нажимаем на кнопку «Заполнить».
Ещё раз повторюсь — ведомость на выплату определяет нашу задолженность по заработной плате перед сотрудником не по 70 счёту, а по регистру «Зарплата к выплате» .
Получается мы знаем, что зарплата к выплате заполняется на основании этого регистра, но даже видя записи регистра не можем понять что не так.
Скорее всего мы не видим всей картины (может быть существуют другие записи по этому регистру) и напрашивается некий инструмент для анализа регистра подобный бухгалтерским отчётам.
Учимся анализировать регистры
И такой инструмент есть, он называется «Универсальный отчёт«.
Переходим в раздел «Отчеты» пункт «Универсальный отчёт»:
Выбираем тип регистра «Регистр накопления», регистр «Зарплата к выплате» и нажимаем кнопку «Сформировать»:
Получилось не очень информативно:
Всё потому, что требуется предварительная настройка отчёта, нажимаем кнопку «Показать настройки» и на закладке «Группировка» добавляем поле «Сотрудник»:
На закладке «Отборы» делаем отбор по нашей организации:
Нажимаем кнопку «Сформировать»:
Вот это уже более интересно. Видим остаток к выплате нашему сотруднику те самые 48 500 рублей!
Снова заходим в настройки отчёта и добавляем на закладку «Показатели» новое поле «Регистратор»:
Снова формируем отчёт:
Вот теперь мы прекрасно видим, что 5 000 появились как результат операции (видимо ввода остатков) 31 декабря 2014 года.
И нам нужно либо изменить эту операцию, либо вручную откорректировать регистр «Зарплата к выплате» и закрыть эти 5 000 рублей, например, 31 декабря 2015 года.
Давайте пойдём вторым путём. Итак, наша задача — сделать так, чтобы на начало 2016 года по регистру «Зарплата к выплате» не было нашей задолженности перед сотрудником.
Это делается ручной операцией.
Учимся корректировать регистры
Заходим в раздел «Операции» пункт «Операции, введенные вручную»:
Создаём новую операцию концом 2015 года:
Из меню «Ещё» выбираем пункт «Выбор регистров. «:
Указываем регистр «Зарплата к выплате» и нажимаем ОК:
Переходим на появившуюся закладку регистра и делаем расход на 5 000 рублей:
Этим самым мы как бы отнимаем от регистра 5 000 рублей по сотруднику, чтобы выйти на ноль к началу 2016 года.
Проводим операцию и заново формируем универсальный отчёт:
Всё получилось! Видим, что наша ручная операция от 31.12.2015 вывела остаток в ноль и зарплата к выплате после начисления равна ожидаемым 43 500.
Замечательно. И сейчас мы проверим это в ведомости на выплату.
Но прежде я хочу обратить ваше внимание на ещё один важный момент:
Обратите внимание, что остатки на начало и на конец по группировке «Сотрудник» показывают ерунду. Это никакая не ошибка, это нюанс, который нужно учитывать, связанный с архитектурными особенностями 1с.
Запомните. В том случае, если универсальный отчёт выводится с детализацией до документа (регистратора) — остатки по группировкам будут показывать ерунду.
Если нам требуются остатки по группировке сотрудник — нужно сначала удалить из настроек добавленный нами показатель «Регистратор»:
И только потом формировать отчёт:
Сейчас остатки показаны корректно.
Результат
Напоследок убедимся, что мы сделали всё правильно. Снова заходим в ведомость на выплату заработной платы за январь и нажимаем кнопку «Заполнить»:
Мы молодцы, на этом пока всё
Кстати, подписывайтесь на новые уроки.
С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).
| Подписывайтесь и получайте новые статьи и обработки на почту (не чаще 1 раза в неделю). |
Вступайте в мою группу ВКонтакте, Одноклассниках, Facebook или Google+ — самые последние обработки, исправления ошибок в 1С, всё выкладываю там в первую очередь.
Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.
Нажмите одну из кнопок, чтобы поделиться:
Источник
Как в ЗУП 3 посмотреть движения документа по регистрам?
Как просмотреть по каким регистрам и какие движения делает документ?
Посмотреть движения документа по регистрам может только пользователь с административными правами.
Начиная с версии ЗУП 3.1.10 просматривать движения документа по регистрам могут и пользователи со специальной ролью. Подробнее в публикации — РОЛЬ ДЛЯ ФОРМИРОВАНИЯ ОТЧЕТА О ДВИЖЕНИЯХ ДОКУМЕНТОВ (ЗУП 3.1.10).
Есть два варианта просмотра движений документа.
Вариант 1. С помощью отчета по движениям документа
В форме документа для этого необходимо нажать Еще — Движения документа:
Вариант 2. Просмотр движений документа по регистру через панель навигации формы.
Получите понятные самоучители 2021 по 1С бесплатно:
Для доступа к движениям документа необходимо открыть интересующий документ и в главном меню программы выбрать пункт Вид – Настройка панели навигации формы . В открывшемся окне левая колонка содержит список всех регистров, по которым может делать движения этот документ, интересующие регистры следует перенести в правую колонку:
Тогда в форме документа появится ссылка для просмотра движений документа по этому регистру:
Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно
Похожие публикации
- Как вывести движения документа в его форме по определенным регистрам.
- Как посмотреть историю изменения документа в 1СКогда с базой 1С работают несколько сотрудников, возникают вопросы: как.
- Схема движений по регистрам зарплаты.
- Схема движений по регистрам УСН по зарплате.
Карточка публикации
| Разделы: | Зарплата (ЗУП), Кадры (ЗУП), Настройки (ЗУП) |
|---|---|
| Рубрика: | Интерфейс 1С:ЗУП 3 / ПРОМО: 1С ЗУП / Работа с документами и отчетами 1С:ЗУП 3 |
| Объекты / Виды начислений: | |
| Последнее изменение: | 26.08.2019 |
ID задана и содержит ID поста $termini = get_the_terms( $post->ID, ‘post_tag’ ); // так как функция вернула массив, то логично будет прокрутить его через foreach() foreach( $termini as $termin )< echo '' . $termin->name . »; > /* * Также вы можете использовать: * $termin->ID — понятное дело, ID элемента * $termin->slug — ярлык элемента * $termin->term_group — значение term group * $termin->term_taxonomy_id — ID самой таксономии * $termin->taxonomy — название таксономии * $termin->description — описание элемента * $termin->parent — ID родительского элемента * $termin->count — количество содержащихся в нем постов */ —>
(1 оценок, среднее: 1,00 из 5)
Источник
Порядок записи движений регистров при проведении документа
Алгоритм проведения документа с учетом подписок на события
Если посмотреть свойства документа через палитру свойств, то можно увидеть два важных свойства: «Удаление движений» и «Запись движений при проведении», причем второе НЕ вынесено на закладку «Движения» окна редактирования документа.
1. Удаление движений.
Если свойство «Удаление движений» уставновлено в «Удалять автоматически», то ПЕРЕД началом проведения программа очищает все движения по регистрам. Фактически это означает запись пустого набора записей регистра с видом записи — замещение. А значит, программа выполняет код из процедур «ПередЗаписью» и «ПриЗаписи» модуля набора записей регистров.
Если для какого-либо регистра определена подписка на событие «При записи», то выполняется код из связанной процедуры.
2. Процедура «ОбработкаПроведения» модуля документа.
Обратим внимание: в начале обработки проведения у всех движений флаг модифицированности Ложь (значение возвращает метод Движения.Регистр.Модифицированность() ).
При работе с набором записей регистра (например, Движения.Регистр.Очистить() , Движения.Регистр.Добавить() и т.д.) флаг модифицированности становится Истина.
После записи движения в базу Движения.Регистр.Записать() модифицированность снова ложь.
Если в модуле процедуры подписки происходит запись набора регистра в явном виде ( .Записать() ), то программа выполняет код из процедур «ПередЗаписью» и «ПриЗаписи» модуля набора записей регистров и процедуры из подписки на событие «При записи» регистра.
3. Подписки на событие «При проведении» документа
Важно понимать : если в обработке проведения документа или в подписках на событие, вызванных ранее, не происходила запись движений регистров в явном виде (Движения.Регистр.Записать()), то движения документа еще НЕ записаны в базу. Поэтому их нельзя получить с помощью запроса, но можно получить из коллекции движений источника.
Очередность подписок на одно и то же событие явным образом не определяется 1С, но на практике подписки вызываются в порядке следования в ветке «Подписки на события» окна редактирования конфигурации.
Если регистры записываются с помощь метода Записать () , то выполняются все связанные процедуры.
4. Запись движений.
Вспомним про свойство «Запись движений при проведении» из настроек документа.
Если оно равно «Записывать модифицированные», то в базу будут записаны все движения документа, у которых флаг «Модифицированность» Истина.
Если оно равно «Записывать выбранные», то в базу будут записаны движения регистров, для которых мы явным образом указали необходимость записи.
Запись движений в базу происходит с режимом замещения Истина . Это означает, что будут записаны записи из текущего набора записей регистра коллекции Движения и очищены предыдущие записи.
И в конце р ассмотрим несколько примеров:
Пусть свойство документа «Запись движений при проведении» равно «Записывать модифицированные», а «Удаление движений» — «Не удалять автоматически».
При такой процедуре проведения документ при каждом перепроведении будет добавлять запись в регистр, записи будут множиться. Т.к. строка //*** добавляет записи в регистр, признак Модифицированности снимается.
Правильнее будет написать строку //*** как
или вообще ее опустить, и тогда программа сама запишет модифицированные движения.
В 1С 8 движения документа могут формироваться не только в обработке проведения, но и извне, например, из некоторой служебной обработки (так реализовано допроведение документов, восстановление авансов и т.д.).
В этом случае при перепроведении документа, если происходит изменение движений регистра бухгалтерии (флаг Модифицированности Истина), записи будут замещены записями, сформированными документом.
Перед началом проведения документа все реквизиты документа записываются в базу данных (т.е. программист может их получить с помощью запроса). Во внутренней памяти создается Объект документа, и у этого объекта есть коллекция движений, которая будет записана после окончания процедуры проведения (см. этап 4).
Если в процессе проведения документа движения по регистрам формируются не с помощью коллекции Движения, принадлежащей внутреннему объекту , а другими способами (вручную в форме набора записей или как в примере 2 и т.д.), то на этапе 4 эти записи будут замещены. Чтобы избежать замещения в типовых базах, для документа «ОперацияБух» свойство документа «Проведение» устанавливается в «Запретить».
Если документ должен проводиться по другим регистрам и нельзя запретить проведение, тогда нужно внимательно настраивать свойства документа:
— выбрать вариант записи движений «Записывать выбранные» и убедиться, что Движения.Регистр.Записывать = Ложь
— выбрать вариант записи движений «Записывать модифицированные» и контролировать признак Модифицированности для набора записей этого регистра.
Нужно понимать, что объект, полученный по ссылке (назовем его «ОбъектДок»), и внутренний объект («ЭтотОбъект»), созданный в памяти в момент проведения, это два разных экземляра объектов.
Соответственно и коллекции движений у них будут разные. У «ОбъектаДок» коллекция движений будет включать только записанный в базу набор записей регистра, а у «ЭтогоОбъекта» — как записанные, так и добавленные и незаписанные записи. По окончании проведения (этап 4) в базу будут записаны наборы записей «ЭтогоОбъекта», причем с признаком Замещать = Истина.
Если записи в набор записей добавляются по способу, описанному выше, то они могут быть замещены на этапе 4.
Источник