Поиск пропусков в нумерации документов запросом

12.10.17

Задачи пользователя - Анализ учета

Предлагается отчет на основе системы компоновки данных для выявления нарушений последовательности нумерации документов. Применяются методы из статей "Выразить строку как число и строку как дату в запросе" [http://infostart.ru/public/170336/] и "Быстрое определение интервалов в запросе" [http://infostart.ru/public/402534/]. Это позволяет решить задачу быстро и непосредственно в запросе.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование SM По подписке [?] Купить один файл
Отчет "Пропуски в нумерации" (обычная форма)
.erf 11,54Kb
23
23
1 SM
Скачать Купить за 1 850 руб.
Отчет "Пропуски в нумерации" (управляемая форма)
.erf 12,13Kb
30
30
1 SM
Скачать Купить за 1 850 руб.

Идея решения заключается в том, что сначала строковые номера документов выбранного вида преобразуется в числовые номера. Метод из статьи "Выразить строку как число и строку как дату в запросе" позволяет игнорировать префиксы, так как нечисловые символы номера автоматически заменяются нулями. Затем на множестве числовых номеров определяются интервалы между соседними номерами. Как нарушение выводятся все интервалы, величина которых больше единицы.

Интервалы определяются методом из статьи "Быстрое определение интервалов в запросе". За счет этого достигается гибкость и высокое быстродействие отчета.

Приводятся две версии отчета. Один для обычных форм, а второй - для управляемых. Они построены на основе СКД и содержат минимум вспомогательного кода. Настройки отчета содержат только период выборки документов. Запрос выбирает данные по всем организациям информационной базы и всем видам документов, которые определены в метаданных конфигурации.

Основой всего является запрос:

ВЫБРАТЬ	"0" КАК Цифра, 0 КАК Позиция, 1 КАК Вес
ПОМЕСТИТЬ СистемаСчисления
ОБЪЕДИНИТЬ ВЫБРАТЬ "1", 1, 10
ОБЪЕДИНИТЬ ВЫБРАТЬ "2", 2, 100
ОБЪЕДИНИТЬ ВЫБРАТЬ "3", 3, 1000
ОБЪЕДИНИТЬ ВЫБРАТЬ "4", 4, 10000
ОБЪЕДИНИТЬ ВЫБРАТЬ "5", 5, 100000
ОБЪЕДИНИТЬ ВЫБРАТЬ "6", 6, 1000000
ОБЪЕДИНИТЬ ВЫБРАТЬ "7", 7, 10000000
ОБЪЕДИНИТЬ ВЫБРАТЬ "8", 8, 100000000
ОБЪЕДИНИТЬ ВЫБРАТЬ "9", 9, 1000000000
ОБЪЕДИНИТЬ ВЫБРАТЬ "10",10,10000000000
;
ВЫБРАТЬ РАЗРЕШЕННЫЕ	"РеализацияТоваровУслуг" КАК ТипДокумента, Организация КАК Организация, Ссылка, Номер
ПОМЕСТИТЬ Документы
ИЗ Документ.РеализацияТоваровУслуг
ГДЕ Дата МЕЖДУ &НачалоПериода И &КонецПериода
;
ВЫБРАТЬ	ТипДокумента, Ссылка, Организация, СУММА(СтепениДесяти.Вес * Цифры.Позиция) / МИНИМУМ(СтепениДесяти.Вес) КАК Номер
ПОМЕСТИТЬ Дано
ИЗ Документы
СОЕДИНЕНИЕ СистемаСчисления КАК СтепениДесяти ПО (ИСТИНА)
СОЕДИНЕНИЕ СистемаСчисления КАК Цифры ПО (ПОДСТРОКА(Номер, 11 - СтепениДесяти.Позиция, 1) = Цифры.Цифра)
СГРУППИРОВАТЬ ПО ТипДокумента, Ссылка, Организация
;
ВЫБРАТЬ ТипДокумента, Организация, Номер + 1 КАК НомерПары, Номер КАК НижняяГраница, Номер КАК ВерхняяГраница
ПОМЕСТИТЬ Тур0
ИЗ Дано
;
ВЫБРАТЬ	ТипДокумента, Организация, ВЫРАЗИТЬ(НомерПары / 2 КАК ЧИСЛО(15, 0)) КАК НомерПары
	, МИНИМУМ(НижняяГраница) КАК НижняяГраница,	МАКСИМУМ(ВерхняяГраница) КАК ВерхняяГраница, МИНИМУМ(ВерхняяГраница) КАК НачалоИнтервала, МАКСИМУМ(НижняяГраница) КАК КонецИнтервала
ПОМЕСТИТЬ Тур1
ИЗ Тур0
СГРУППИРОВАТЬ ПО ТипДокумента, Организация, ВЫРАЗИТЬ(НомерПары / 2 КАК ЧИСЛО(15, 0))
;
ВЫБРАТЬ ТипДокумента, Организация, НачалоИнтервала, КонецИнтервала
ПОМЕСТИТЬ Интервалы
ИЗ Тур1
ГДЕ НачалоИнтервала + 1 < КонецИнтервала
;
ВЫБРАТЬ	Интервалы.ТипДокумента, Интервалы.Организация, Дано1.Ссылка КАК Документ1, Дано2.Ссылка КАК Документ2
ИЗ Интервалы КАК Интервалы 
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Дано КАК Дано1 ПО Интервалы.ТипДокумента = Дано1.ТипДокумента И Интервалы.Организация = Дано1.Организация И Интервалы.НачалоИнтервала = Дано1.Номер
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Дано КАК Дано2 ПО Интервалы.ТипДокумента = Дано2.ТипДокумента И Интервалы.Организация = Дано2.Организация И Интервалы.КонецИнтервала = Дано2.Номер

Перед компоновкой текст данного запроса "распаковывается" для обработки всех видов документов и для выполнения необходимого числа "итераций" определения интервалов. Для 11-значных номеров требуется 37 итераций.

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

пропуски нумерация

См. также

Анализ учета Закрытие периода Бухгалтер Платформа 1С v8.3 Бухгалтерский учет 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х Россия Бухгалтерский учет Налоговый учет Налог на прибыль НДС Платные (руб)

Каждый бухгалтер не раз сталкивался с требованием от налоговой инспекции пояснить расхождения в показателях декларации по Налогу на прибыль («Доходы от реализации» + «Внереализационные доходы») и налоговой базой по НДС за год. Являются ли ошибкой подобные расхождения? Как пояснить налоговой их причину? Отчет «Анализ расхождений выручки НДС и Налога на прибыль в декларациях» для 1С (БП 3.0 ПРОФ и КОРП, КА 2, ЕRP) поможет найти все расхождения.

7200 руб.

21.10.2017    85643    282    171    

272

Регламентированный учет и отчетность Анализ учета Бюджетный учет Бизнес-аналитик Бухгалтер Пользователь Руководитель проекта Платформа 1С v8.3 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Налоговый учет Управленческий учет Платные (руб)

Расширение «Отчет ГОЗ» для 1С:Бухгалтерия 3.0 ПРОФ и КОРП позволяет автоматизировать ведение раздельного учета и подготовку отчетности для Торговых и Производственных организаций, участвующих в ГосОборонЗаказе. Эффективный инструмент ведения раздельного учета по гособоронзаказам для Торговых и Производственных компаний

94700 руб.

20.02.2024    1018    1    0    

5

Анализ учета Бухгалтер Пользователь Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Россия Управленческий учет Платные (руб)

Расширение автоматически анализирует управленческий учёт 1С:УНФ, помогает находить и исправлять ошибки, а также проверять те места, которые хорошо бы проверить. Разработка для тех, кто хочет построить управленческий финансовый учет в УНФ.

12000 руб.

28.07.2022    8934    7    25    

25

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Анализ учета Системный администратор Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 1С:Управление торговлей 11 Платные (руб)

Данная обработка позволит Вам легко и просто, а главное - быстро, выполнить сравнение данных между ЛЮБЫМИ базами (и РИБ, по правилам конвертаций) по контрольным суммам выбранных объектов баз 1С, работающих на платформах 8.3 и выше. Удобный и понятный интерфейс в виде &amp;quot;мастера&amp;quot;. Высокая скорость сравнения достигается за счет специального алгоритма расчета контрольной суммы объекта/записи и сравнения по данным суммам объектов 2х баз через файл. Имеется возможность выбора реквизитов, по которым система будет сравнивать объекты. Сравнение количества записей в движениях документов, возможность сравнивать данные по правилам конвертации и не только! Выбор объектов конфигурации для КАЖДОГО узла в отдельности с индивидуальным отбором для каждого объекта конфигурации, работа с FTP, сохранение или загрузка настроек, сохранение или загрузка результата сравнения, регистрация на обмен объекта и его движений.

16800 руб.

27.10.2017    41875    23    13    

41

Менеджеры внешних отчетов Анализ учета Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х Платные (руб)

Расширение «Контрольные отчеты» для автоматизации процесса проверки ведения учета в ПП. Со списком ошибок могут работать ответственные пользователи. Помогает в процессе внедрения ПП находить нарушения в бизнес-процессах. 

12000 руб.

08.08.2023    1712    2    1    

5

Анализ учета Бухгалтер Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Бухгалтерский учет Платные (руб)

Обработка позволяет сравнивать количественные остатки номенклатуры между Бухгалтерия 3.0 и УТ 11.5

3600 руб.

06.02.2023    4282    8    2    

13

Анализ учета Зарплата Программист Бухгалтер Пользователь Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка является вспомогательным инструментом проверки выполненных расчетов по зарплате в конфигурациях ЗУП 3.1 и ЗКГУ 3.1. Результаты обработки носят информационный характер и предназначены для привлечения внимания пользователя. Рекомендуется запускать обработку в конце каждого месяца, после расчета зарплаты, исчисления налогов и формирования ведомостей.

6000 руб.

28.09.2015    34843    7    35    

30

Анализ учета Рабочее место Программист Бухгалтер Платформа 1С v8.3 Система компоновки данных 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием Россия Бухгалтерский учет Налоговый учет Управленческий учет Платные (руб)

Вы хотите централизованно хранить все свои проверки в одном рабочем месте, а не помнить разбросанные по внешним отчетам, файлам, компьютерам разрозненные отчетики/обработки ? Вы хотите гибко настраивать центральное рабочее место контроля под себя? Вы хотите проанализировать свою учетную систему по порядку 40 встроенных проверок, где каждая проверка выдает итоговый результат ошибок и каждая проверка описана, что она проверяет и для чего это проверять? Тогда вам сюда!

1500 руб.

29.08.2017    30792    26    13    

35
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Mortiferus 362 30.12.15 10:08 Сейчас в теме
пытался запустить в своей УТ11 (11.1.2.31), платформа 8.3.5.1517. сначала ругается на строку 14 (ЭтотОбъект недоступно). При исправлении и запуске дальнейшем выходит такая ошибка:
Прикрепленные файлы:
2. ildarovich 7897 30.12.15 12:14 Сейчас в теме
(1) Mortiferus, видимо, я недостаточно протестировал отчеты - не во всех конфигурациях. Проблема, кажется, была в документах с числовой нумерацией. Преобразование номеров этим документам не нужно. Сейчас пока я такие документы вообще исключил из анализа. Отчеты обновил, попробуйте теперь!
3. Mortiferus 362 30.12.15 14:34 Сейчас в теме
(2) скачал заново. та же ошибка.
4. ildarovich 7897 30.12.15 14:51 Сейчас в теме
(3) Mortiferus, хорошо, тогда мне нужно время, чтобы воспроизвести именно эту ситуацию (комбинацию конфигурации и платформы). Сообщите также версию СУБД.
5. Mortiferus 362 30.12.15 14:55 Сейчас в теме
6. denis_aka_wolf 79 09.12.16 08:02 Сейчас в теме
(1)Кликнул по картинке чтобы посмотреть на ошибку, а затем на "ОК" чтобы закрыть ;)
Demosagro; +1 Ответить
7. roman77 333 10.10.17 11:42 Сейчас в теме
В УТ 11.3.4.93 не работает.

Ошибка в запросе набора данных
по причине:
{(857, 5)}: Неоднозначное поле "Документ.Дата"
ГДЕ <<?>>Документ.Дата МЕЖДУ &НачалоПериода И &КонецПериода
8. ildarovich 7897 11.10.17 17:25 Сейчас в теме
(7) Только что проверил, у меня работает. Специально поставил демо-базу УТ11.3.4.93, выбрал 15-ый год (в демо-базе за этот год документы), результат на скриншоте 1.
Наверное, нужно поставить отладчик в строку модуля отчета как показано на скриншоте 2 и посмотреть внимательно текст запроса (блок, заканчивающийся 857 строкой). Какой он у вас?
Прикрепленные файлы:
9. ildarovich 7897 12.10.17 12:20 Сейчас в теме
(7) + (8) Нашел причину неработоспособности отчета в ситуации, описанной в (7).
Дело в том, что у вас доработанная конфигурация и один из реквизитов одного из документов тоже называется "Документ" (!). Так же как синоним таблицы в запросе. Поправил в отчете, файл перезалил, теперь эта ситуация обрабатывается.
Если будут проблемы со скачиванием новой, исправленной версии, обратитесь через личное сообщение, я вам ее вышлю.
wowik; roman77; +2 Ответить
10. roman77 333 12.10.17 12:35 Сейчас в теме
Точно, есть такой реквизит.
Оставьте свое сообщение