gifts2017

Найдите расхождения в отчетах за считанные секунды

Опубликовал Павел Васянин (Designer1C) в раздел Отчеты - Анализ учета

Найдите отличия в двух похожих отчетах !
Просто скопируйте выделенные области сверяемых отчетов и затем вставьте в два окна этой обработки
Так способом можно сверять данные и из Excel-отчетов
В помощь аналитикам, аудиторам,бухгалтерам и программистам. которые ищут расхождения в отчетах
Отчет универсальный и работает в любой конфигурации 1С:Предприятия 8.2/8.3.

Иногда перед аналитиком, аудитором, программистом, бухгалтером, менеджером возникает вопрос поиска расхождений в отчетах

Ситуации могут быть различными :

1.После переноса данных требуется убедиться в корректности переноса данных (бухгалтеру, программисту, менеджеру)

2.Неправильно работает отчет в рабочей базе данных (программисту)

3.После перепроведения документов требуется выявить отличия

4.Причина неизвестна, а расхождения случайно обнаружились

5.Разнородные отчеты из одного источника данных показывают различные данные (аналитику, аудитору, программисту, бухгалтеру)

Внимание : если в сравниваемых отчетах разное количество строк, если часть аналитики из одного отчета отсутствует в другом отчете, то эта обработка позволит быстро найти и такие расхождения

Данная обработка помогает сверять любые табличные отчеты 1С:Предприятия и Excel.

Откройте обработку : 

Можете через буфер обмена вставить в левую и правую табличные части сверяемые области отчетов.

Области отчетов можно брать из 1С:Предприятия 7.7, 1С:Предприятия 8, Excel : выделяете в другой программе область отчета и вставляете в табличную часть этой обработки.

Другой способ : можете указать имена файлов MXL (формат отчетов 1С:Предприятия) для сверки. Ими могут быть ранее сохраненные файлы отчетов, созданные в 1С:Предприятии 7.7, 1С:Предприятии 8

При выборе файла программа сразу считывает его содержимое в поле соответствующего табличного документа : 

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

Строка начальная : Данные в обоих сверяемых отчетах начинаются со строки № 2. Хотя не обязательно чтобы начало данных в отчетах совпадало. Указываем номера начальных строк для левого и правого отчетов.

Колонка измерения : Указать нужно аналитическую колонку. Это может быть колонка, в которой находится название : номенклатуры, подотчетного лица, контрагента, валюты, договора, заказа покупателя, сотрудника, статьи затрат, код бухгалтерского счета/субсчета,  и т.д.. А также можно указать дополнительные аналитические колонки. В данном примере будем сверять по колонке "Номенклатура" (колонка № 2) и "Характеристика номенклатуры" (колонка № 3). В обоих сверяемых отчетах номера колонок в примере совпадают.

Колонка ресурса : Укажем, какие числовые колонки планируется сверять. В данном примере будем сверять колонки № 4 "Товары на складах" и "Количество". Внимание : в ячейках должны находиться цифры (а также разделители "точка" или "запятая", еще могут быть знаки "+" или "-"). Совет : если в этих ячейках есть слова ("день", "дней", "руб", "у.е." и т.п.) то непосредственно в табличном документе выполните замену по всем ячейкам этой колонки такого текста на пустую строку.

Например, требуется сравнить такие отчеты по остаткам отпусков : 

Выделите колонку № 2 и затем в горизонтальном меню выберите команду : 

В этом окне укажите : 

Затем удалите "день" и "дня". После чего можно выполнить сверку отчетов.

Вернемся к предыдущему, основному примеру. После подготовки отчетов нажимаем кнопку "Сравнить". Программа сворачивает данные по колонкам аналитики и определяет расхождения в ресурсах : 

После выполнения сверки активируется закладка "Результат сравнения". Как Вы видите на рисунке, в отчете справа не было одной номенклатурной позиции ("Группа 2 ЛДСП сортI/I/... темный (Феликс)"). Программа сверки нашла это отличие.

Результат сверки можно вывести в отчет кнопкой "Печать" : 

Для сравнения новых данных следует нажать кнопку "Новая сверка". При этом очистятся таблицы с исходными данными. И активируется первая закладка.

 

Что касается возможностей Excel, то : 

1.Не везде Excel установлен. Например, на некоторых терминальных серверах при работе через RDP

2.При сверке отчетов с разным количеством строк требуется не только формула разности но и совпадения колонок измерений (аналитических колонок)

3.Если в отчетах соотношение аналитики "многие ко многим" с разным количеством, то нужно как-то сворачивать аналитику, прежде чем выполнять сверку таких отчетов.

4.Если в одном отчете есть такая аналитика, которой нет во втором отчете, то нужно как-то это учитывать

Скачать файлы

Наименование Файл Версия Размер
СравнениеОтчетов.epf 50
.epf 27,35Kb
16.08.15
50
.epf 27,35Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Юрий Машков (newtype) 10.08.15 11:13
Здравствуйте.Скачал вашу обработку и попытался воспользоваться. Кол. измер.=1, ресурса=2. Возможно я не так что-то делаю, но отличий не получаю.Они есть-напр. у Еня Николая.
В результате сравнения-пусто. Юрий.
Прикрепленные файлы:
сейчас.mxl
было.mxl
2. Павел Васянин (Designer1C) 10.08.15 15:16
Вы все правильно сделали.
Я не указал, что в колонке "Ресурс" должны быть только числа.
Если сделать замену слов "дня" и "дней" на пустую строку, то сравнение работает
На рисунке видно, , что таблицы загружены непосредственно из файлов MXL
Я выделил колонку № 2 и в горизонтальном меню "Правка" выбрал команду заменить.
Тип значения ячеек (из строки в число) менять не требуется, программа сделает это автоматически.
Результат получен.
Прикрепленные файлы:
3. Василий Коровин (vasyak319) 10.08.15 15:29
Я так понимаю, что сравнить Номенклатура-Склад-Количество уже не прокатит. Зачем тратить время на создание бледной копии Excelя? Причём я, понятное дело, не про весь Excel, а именно про сравнение в нём двух наборов данных.
4. Павел Васянин (Designer1C) 10.08.15 16:06
(1) newtype, Небольшие уточнения для Вас в предыдущем моем сообщении
5. Юрий Машков (newtype) 10.08.15 17:09
Благодарю за уточнения, сделал ,как Вы написали,результат получил.
6. Павел Васянин (Designer1C) 12.08.15 18:10
(3) vasyak319,
Допустим, Вы задали мне прекрасный наводящий вопрос :
Я так понимаю, что сравнить Номенклатура-Склад-Количество уже не прокатит.

Благодарю Вас за интерес к разработке !
Рекомендация : Используйте принцип сужения поиска. Сначала найдите расхождения по складам. А затем найдите расхождения на складе каждом по номенклатуре.
7. Павел Васянин (Designer1C) 12.08.15 18:35
(3) vasyak319,
Допустим, Вы мне задали ключевой вопрос :
Зачем тратить время на создание бледной копии Excelя?

А насколько просто применить приемы сверки отчетов в блестящем оригинале Excel ?

Например, сколько Вам времени Вам нужно,
1)Чтобы самостоятельно в Excel найти расхождения в двух отчетах ?
2)Чтобы объяснить пользователю как сверять отчеты в Excel ?
Практический вопрос : как найти расхождения в отчетах по подотчетникам, когда в одном 150 строк, а в другом 168 строк ?
Уточнение : в обоих отчетах есть общие ФИО, но в первом отчете есть Иванов, Петров (которых нет во втором отчете), а во втором отчете есть Сидоров (которого нет в первом отчете)
И некоторые ФИО введены по нескольку раз...

А то что Вы умеете убеждать своих коллег освоить полезные навыки работы с Excel (в части поиска расхождений в отчетах) в разгар рабочего дня, когда срочно нужно найти различия, у меня нет сомнений.
Уверен, что Ваши подопечные в большинстве своем умеют пользоваться богатыми функциями Excel и для сверки различных отчетов, да и в других не менее сложных вопросах тоже обладают навыками благодаря Вашему навыку объяснять и убеждать в необходимости учиться.
Надеюсь, что Вы и мне подскажите, какими манипуляциями в Excel можно сверить два отчета, которые я описал.
Так как мои попытки поиска таких методов (Яндекс) не привели к искомому результату
8. Василий Коровин (vasyak319) 12.08.15 19:37
(7) Designer1C, несколько секунд и на то и на то. А приём простой: копипастим два набора данных на лист, сортируем каждый по нужным столбцам, после чего в первой свободной колонке пишем формулу с разницей между колонкой одного набора и соответствующей колонкой другого.
Случай нескольких числовых колонок и/или нескольких столбцов для Экселя означает задержку на лишнюю секунду, а вашей поделке будет в принципе не под силу.
10. Павел Васянин (Designer1C) 12.08.15 22:56
(8) vasyak319,
Уважаемый коллега ! Этот способ я тоже знаю. И потому был вынужден создать подобную обработку.
Вы дали решение для идеального случая, когда колонок равное количество, и ФИО совпадают в колонках. Так бывает. Но не всегда
Попробуйте еще раз ответить на мой вопрос.
11. Павел Васянин (Designer1C) 12.08.15 23:04
(9) echo77,
Этот способ "Файлы - Сравнение файлов" тоже может использоваться в отдельных случаях,
Попробуйте колонки немного подвинуть в одном из отчетов.
Или в одном отчете разделитель - запятая, а в другом - точка.
Или из разных отчетов сравнить данные.
Или данные из 1С:7.7 и 1С:8

И попробуйте сравнить отчеты по задаче, которую я озвучил

И разницу по ФИО "Сравнение отчетов" подсчитает ?
12. Павел Васянин (Designer1C) 12.08.15 23:07
(9) echo77,
Подборка полезностей и приемов по ссылке очень хорошая. За труд спасибо ! Дело полезное.
13. Павел Васянин (Designer1C) 12.08.15 23:50
(8) vasyak319,
Уважаемый коллега ! Способ анализа расхождений, который Вы противопоставляете в Вашей полемике, очень интересный : одновременный анализ расхождений и по входящему остатку, и по приходу, и по расходу, и по конечному остатку.
Наверное, Вы так работаете : одновременный анализ и остатков, и оборотов,. Честь и хвала.
Я обычно в практике сосредотачиваю внимание сначала на одной колонке, например на входящем остатке. Информации хватает для анализа и принятия решений. Затем только сравниваю и приход, расход. А потом и конечный остаток, если еще есть необходимость...
Если несколько колонок (ресурсов) сравнивать : видимо Вы создаете несколько колонок сравнения с формулами и тоже "растягиваете". Кому-то это нравится.
По паре столбцов сравнение : интересная мысль склеивания нескольких колонок. Это просто реализовать.

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

А вот "Иванов С.П." в одном отчете встречается 3 раза, а в другом только 1 раз. Снова раздвигаем ячейки ?
Жду Ваших предложений !
14. Павел Васянин (Designer1C) 03.09.15 15:32
(9) echo77, Как я понял из ссылки на Вашу же статью, Вы предлагаете пользоваться стандартным способом "Файл - Сравнить файлы"
Я описывал этот способ в другой своей публикации : Технология поиска изменений в остатках и оборотах по регистрах накопления.
Этот способ подходит для отчетов, сформированных одним и тем же отчетом. Разницу в отчетах он не формирует.
Отчет о расхождениях не создает
Информация об ошибках не сгруппирована.
А так очень хорошая штука и в некоторых случаях она помогает
15. Павел Васянин (Designer1C) 03.09.15 15:51
(8) vasyak319, Уважаемый коллега !
Благодаря Вашим критическим замечаниям и моей производственной необходимости обработка для сверки отчетов доработана.
Теперь обработка может сверять два разных отчета по любому количеству измерений
Измерения (если используется несколько измерений для сверки) должны быть соседними колонками в отчете.
Если сверяется по одному измерению, то конечную колонку измерений указывать не требуется.

Технология сверки отчетов с помощью данной обработки для 1С простая :
1.Сохранить оба сверяемых файла в формате MXL
2.В режиме 1С:Предприятие 8.2/8.3 открыть обработку "Сверка отчетов"
3.Указать (выбрать) имена сверяемых файлов отчетов
4.Указать параметры сверки : номер начальной строки сверки, начальная колонка измерения и последняя колонка измерения, колонка ресурса.
5.Нажать кнопку "Сравнить"

В результате получится отчет : для каких измерений какие расхождения и какие сверяемые ресурсы.

Технология сверки отчетов в Excel тоже простая :
1.Сохранить оба сверяемых отчета в формате XLS
2.Открыть (запустить) EXCEL
3.Открыть оба ранее сохраненных отчета
4.Отсортировать обо отчета по требуемым колонкам измерений
5.Создать новый отчет, на который перенести сверяемые колонки (измерения и ресурсы) из обоих отчетов
Если в отчетах много колонок, загромождающих поле отчета, то удалить лишние колонки из скопированных областей
6.Добавить колонку "Разница"
7.Указать в ячейке колонки формулу для получения расхождения.
8.Скопировать ячейку во все ячейки на высоту всего отчета
9.Визуально найти строку в которой есть расхождение
10.Убедиться, что измерения в строке совпадают.
Если измерения в строке не совпадают, то сделать раздвижку в одном из отчетов
11.Создать дополнительный отчет по расхождениям с указанием измерений и количественно-суммовых показателей и расхождений между ними.

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