Подсчет количества документов в базе



Подсчет количества документов, введенных пользователями

При работе удаленных пользователей (и не только) в некоторых организация существует оплата работы по введенных каждым пользователем документов. Причем подсчет осуществялется по видам документов по разному: какие-то совсем не учитываются, другие учитываются все документы за один день как один документ, учитывается количество строк в табличных частях документов и пр. (принцип подсчета описан в справке). Обработка была написана под конкретную ситуацию, но ее можно легко настроить под свою ситуацию: список обрабатываемых документов берется из списка в процедуре ПриОткрытии, в цикле после запроса обрабатываются документы по условию и пр.

Писал для себя, т.к. пришлось подрабатывать у одной из таких фирм, подсчет докуметов возлагался на исполнителя, а подсчитывать документы вручную не смог себя заставить.   

Добавлена версия для 1С Предприятие 8.3

Понадобилась для небольшой бухгалтерской фирмы, которая ведет учет у клиентов, а цена за услуги складывается в зависимости от количества обрабатываемых документов.

03.07.2024

Добавлено возможность выбора видов документов, которые будут исключены из обработки

04.08.2024

Исправлена ошибка подсчета документов без записей табличных частях (без табличных частей). Спасибо за обнаруженную ошибку Антон Дмитриев (Voblhned).

12 Comments

  1. Vond

    Интересная постановка задачи и вопроса. Хотя такое же (подобное) делали юзеры через консолькуСКД, ну предложим и этот вариант.

    Reply
  2. Claus32

    (1) Vond, Первое желание было сделать через СКД, но не смог решить проблему в лоб и пошел таким путем через запрос и обработку результата запроса в цикле. Интересно было бы посмотреть как такая проблема решена через СКД, если есть возможность дайте ссылку.

    Reply
  3. musatov1c.ru

    Переменная не определена БухгалтерскийУчетПреопределяемый 🙁

    Reply
  4. Claus32

    (3) musatov1c.ru, если запускать на конфигурации НЕ «БухгалтерияПредприятия», то такая ошибка появляется. Обработку поправил и выложил.

    P.S.

    Закомментируйте строчку, на какую ругается.

    Reply
  5. Voblhned

    А зачем группировка по дате?

    Reply
  6. Voblhned

    При указании 1, в счетах фактурах появляются минуса, то есть отнимает документ. Вау, норм.

    КолДокДоп = Цел((КолСтрок-1)/КоличествоСтрокСумма)

    , если в документе нету строк, то получается этот документ становится с минусом, а значит если сделать:

    1. документ поступления товара с 1м товаром

    2. Счет фактуру

    3. Количество строк сумма 1

    4. Отчет выдаст 1

    то есть счет фактура бесплатно.

    Предлагаю решение:

    Если КолСтрок > 0 тогда
    КолДокДоп = Цел((КолСтрок-1)/КоличествоСтрокСумма);  //сучка
    Иначе
    КолДокДоп = Цел((КолСтрок)/КоличествоСтрокСумма);
    КонецЕсли;
    Reply
  7. Claus32

    (5) Сейчас уже точно не вспомню для чего нужна эта была группировка по дате … но было такое требование к отчету у тех кто принимал и оплачивал выполненные работы.

    Если есть потребность, чтобы убрать эту группировку (указать на форме), то можно сделать. Вообщем, по свободному времени добавлю.

    Reply
  8. Claus32

    (6) Спасибо за замечание, действительно ошибка. Исправил.

    P.S.

    Хотя тот кто оплачивал, настаивали, счет-фактура не должна оплачиваться, как и все другие документы, которые вводятся и заполняются на основании другого документа.

    При необходимости в этом отчете можно исключить эти виды документов из подсчета.

    Reply
  9. lvk74

    Добрый день. Отчет очень понравился. НО…. В отчет не выходят документы с видом «ОперацияБух», хотя в поле «МетаданныеДокументы» стоит данный документ (Операция). Сколько не бьюсь, понять не могу почему нет данного документа. А в целом отчет очень хороший.

    Reply
  10. lvk74

    и еще. В документе списание с расчетного счета (когда фактически всего одна строка) выводит в большинстве случаев количество строк = 11. Но это некритично. Можно и самим подправить.

    Reply
  11. Claus32

    (9) Добрый день! Документ «ОперацияБух» не совсем документ в классическом виде, он выступает регистратором для ручных бухгалтерских проводок, т.е. у этого документа нет табличных частей.

    С точки зрения учета эти документы трудно «оценить», т.к. это не стандартные ручные операции и трудно определить их «ценность». На данный момент выход: не учитывать эти документы.

    По свободному времени я доработаю этом механизм и документ «ОперацияБух» будет учитывать проводки, созданные этой ручной операцией.

    Спасибо за отзыв!

    Reply
  12. Claus32

    (10) Спасибо за замечание, исправлю эту ошибку.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *