1с как сравнить две таблицы значений
Таблица значений — специальный объект в программировании 1С 8.3, который позволяет хранить промежуточные значения в виде двумерного массива со строками и колонками. Таблицы значений можно использовать как источник данных в запросе.
Таблицу значений, как любую коллекцию, можно обойти циклом. Например:
Получить нужную строку можно по индексу, например:
Индексы в 1С начинается с 0 (нуля).
Рассмотрим основные свойства и методы этого объекта на примерах.
Создание и использование таблиц значений 1С в примерах
Создать таблицу можно следующим образом:
Добавить колонки в таблицу значений 1С:
Крайне рекомендую указывать кроме первого еще и второй параметр — тип данных. Он поможет избежать некоторых ошибок.
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
После создания колонок добавим несколько новых строк и заполним колонки:
Добавим еще одну колонку:
Которую мы можем заполнить одинаковыми значениями двумя способами — перебором таблицы или функцией ЗаполнитьЗначения:
Сообщим пользователю название первой в списке программы (индекс таблицы значений в 1С начинается с «0»:
Скопировать строку таблицы значений 1С, для примера — первую:
Поиск в таблице значений 1С с ценой «17400» с помощью структуры:
Сортировка программ в таблице по цене:
Количество строк в таблице:
Выгрузить колонку таблицы значений в массив 1С:
Чтобы удалить строку в таблице значений, нужно передать саму строку или индекс в метод «Удалить». Два варианта:
Полностью скопировать таблицу значений 1С можно так:
Просуммировать итог по колонке таблицы значений:
Свернуть таблицу можно так:
При этом в таблице останутся только различные значения из колонки «ВерсияПлатформы» с суммированными полями «Цена».
Ну и напоследок очистим строки таблицы значений 1С 8.3 полностью:
И удалим все колонки:
Если Вы начинаете изучать 1С программирование, рекомендуем наш курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
При наличии БСП в конфигурации рекомендуется использовать метод КоллекцииИдентичны (сравнивает две коллекции строк (в т.ч. ТаблицаЗначений), для которых доступен обход посредством оператора Для каждого … Из … Цикл.
Функция Сравнить_Две_Таблицы_Значений ( ТЗn1 , ТЗn2 ) Экспорт
// Данный метод программно сравнивает две таблицы значений по всем признакам
Если ТипЗнч ( ТЗn1 ) <> Тип ( "ТаблицаЗначений" ) Тогда
Сообщить ( "Параметр N1 не является Таблицой значений" );
Возврат Ложь;
КонецЕсли;
Если ТипЗнч ( ТЗn2 ) <> Тип ( "ТаблицаЗначений" ) Тогда
Сообщить ( "Параметр N2 не является Таблицой значений" );
Возврат Ложь;
КонецЕсли;
Если ТЗn1 . Количество () <> ТЗn2 . Количество () Тогда
Сообщить ( "Количество строк у таблиц значений различное" );
Возврат Ложь;
КонецЕсли;
Если ТЗn1 . Колонки . Количество () <> ТЗn2 . Колонки . Количество () Тогда
Сообщить ( "Количество колонок у таблиц значений различное" );
Возврат Ложь;
КонецЕсли;
// Предварительно сортируем обе таблицы по одному и тому же уникальному ключу
ТЗn1 . Сортировать ( "УникКлюч Возр" ); // прим. УникКлюч - свой идентиф.
ТЗn2 . Сортировать ( "УникКлюч Возр" );
// Преобразуем
СтрВнутр ТЗn1 = ЗначениеВСтрокуВнутр ( ТЗn1 . Скопировать ());
СтрВнутр ТЗn2 = ЗначениеВСтрокуВнутр ( ТЗn2 . Скопировать ());
Если СтрВнутр ТЗn1 <> СтрВнутр ТЗn2 Тогда
Возврат Ложь;
Иначе
Возврат Истина;
КонецЕсли;
Функция Сравнить_Две_Таблицы_Значений ( ТЗn1 , ТЗn2 ) Экспорт
// Данный метод программно сравнивает две таблицы значений по характеристикам и значениям
Если ТипЗнч ( ТЗn1 ) <> Тип ( "ТаблицаЗначений" ) Тогда
Сообщить ( "Параметр N1 не является Таблицой значений" );
Возврат Ложь;
КонецЕсли;
Если ТипЗнч ( ТЗn2 ) <> Тип ( "ТаблицаЗначений" ) Тогда
Сообщить ( "Параметр N2 не является Таблицой значений" );
Возврат Ложь;
КонецЕсли;
Если ТЗn1 . Количество () <> ТЗn2 . Количество () Тогда
Сообщить ( "Количество строк у таблиц значений различное" );
Возврат Ложь;
КонецЕсли;
Если ТЗn1 . Колонки . Количество () <> ТЗn2 . Колонки . Количество () Тогда
Сообщить ( "Количество колонок у таблиц значений различное" );
Возврат Ложь;
КонецЕсли;
// Провека полей
Для Каждого КолонкаТЗn Из ТЗn1 . Колонки Цикл
Если ТЗn2 . Колонки . Найти ( КолонкаТЗn . Имя ) = Неопределено Тогда
Возврат Ложь;
КонецЕсли;
КонецЦикла;
Для Каждого КолонкаТЗn Из ТЗn2 . Колонки Цикл
Если ТЗn1 . Колонки . Найти ( КолонкаТЗn . Имя ) = Неопределено Тогда
Возврат Ложь;
КонецЕсли;
КонецЦикла;
// Формирование строки индекса (для оптимизации поиска по ТЗ)
СтрокаИндексаТЗ = "" ;
Для Каждого КолонкаТЗn Из ТЗn1 . Колонки Цикл
Если СтрокаИндексаТЗ = "" Тогда
СтрокаИндексаТЗ = КолонкаТЗn . Имя ;
Иначе
СтрокаИндексаТЗ = СтрокаИндексаТЗ + "," + КолонкаТЗn . Имя ;
КонецЕсли;
КонецЦикла;
// Вставка индекса
ТЗn 2. Индексы . Добавить ( СтрокаИндексаТЗ );
// Сравнения имён колонок ТЗ (необязательно если заведомо различны, можно закомментировать)
//Для Каждого СтрокаТаблицы Из ТЗn1 Цикл
// Для Каждого КолонкаТаблицы Из ТЗn1.Колонки Цикл
// Для Каждого СтрокаТаблицы Из ТЗn2 Цикл
// Если СтрокаТаблицы[КолонкаТаблицы.Имя] <> СтрокаТаблицы[КолонкаТаблицы.Имя] Тогда
// Сообщить("Имя колонки ТЗ N1 не совпадает с именем колонки ТЗ N2");
// Возврат Ложь;
// КонецЕсли;
// КонецЦикла;
// КонецЦикла;
//КонецЦикла;
// Проверка записей
Для Каждого СтрокаТаблицы Из ТЗn1 Цикл
СтруктураПоиска = Новый Структура ;
Для Каждого Колонка Из ТЗn1 . Колонки Цикл
СтруктураПоиска . Вставить ( Колонка . Имя , СтрокаТаблицы [ Колонка . Имя ]);
КонецЦикла;
СтрокиТаблицы = ТЗn2 . НайтиСтроки ( СтруктураПоиска );
Если СтрокиТаблицы . Количество () <> 1 Тогда
Возврат Ложь;
КонецЕсли;
// Формирование строки индекса (для оптимизации поиска по ТЗ)
СтрокаИндексаТЗ = "" ;
Для Каждого КолонкаТЗn Из ТЗn2 . Колонки Цикл
Если СтрокаИндексаТЗ = "" Тогда
СтрокаИндексаТЗ = КолонкаТЗn . Имя ;
Иначе
СтрокаИндексаТЗ = СтрокаИндексаТЗ + "," + КолонкаТЗn . Имя ;
КонецЕсли;
КонецЦикла;
// Вставка индекса
ТЗn2 . Индексы . Добавить ( СтрокаИндексаТЗ );
Для Каждого СтрокаТаблицы Из ТЗn2 Цикл
СтруктураПоиска = Новый Структура ;
Для Каждого Колонка Из ТЗn2 . Колонки Цикл
СтруктураПоиска . Вставить ( Колонка . Имя , СтрокаТаблицы [ Колонка . Имя ]);
КонецЦикла;
СтрокиТаблицы = ТЗn1 . НайтиСтроки ( СтруктураПоиска );
Если СтрокиТаблицы . Количество () <> 1 Тогда
Возврат Ложь;
КонецЕсли;
Таблица значений в 1С 8.3 это универсальная коллекция, которая максимально моделирует двумерную таблицу базы данных. Она имеет колонки различных типов (число, строка, дата, булево), в т.ч. неопределённого типа, строки с различным содержимым, свойства и методы для работы с колонками и строками. Таблицу значений можно заполнять произвольным кодом, из наборов регистров, или по результатам работы запроса, построителя запроса, процессора СКД, загружать из других табличных частей, заполнять массивами. Её можно использовать для заполнения табличных частей документов, справочников, наборов регистров, как источник данных в запросах, построителях запросов, построителях отчётов и наборах данных СКД. В Таблице значений есть выгрузка журнала регистрации и результатов поиска ссылок.
// Создаем таблицу значений
ТЗ = Новый ТаблицаЗначений ;
// Добавляем колонки в таблицу значений
ТЗ . Колонки . Добавить ( "Овощь" );
ТЗ . Колонки . Добавить ( "Цвет" );
ТЗ . Колонки . Добавить ( "Вкус" );
// Добавляем строки в таблицу значений
Стр = ТЗ . Добавить ();
Стр . Овощь = "Дыня" ;
Стр . Цвет = "Желтая" ;
Стр . Вкус = "Сладкая" ;
Стр = ТЗ . Добавить ();
Стр . Овощь = "Лук" ;
Стр . Цвет = "Зеленый" ;
Стр . Вкус = "Горький" ;
Стр = ТЗ . Добавить ();
Стр . Овощь = "Помидор" ;
Стр . Цвет = "Красный" ;
Стр . Вкус = "Сочный" ;
// Добавляем в таблицу значений колонку с описанием типа и заголовка
ОписаниеВеса = Новый ОписаниеТипов ( "Число" , Новый КвалификаторыЧисла ( 14 , 2 ));
ТЗ . Колонки . Добавить ( "ВесОвоща" , ОписаниеВеса , "Вес овоща в граммах" );
ТЗ [ 0 ]. ВесОвоща = 2500. 50 ;
ТЗ [ 1 ]. ВесОвоща = 39. 07 ;
ТЗ [ 2 ]. ВесОвоща = 90. 45 ;
// Перечисляем все строки в таблице значений
Для Каждого Стр Из ТЗ Цикл
Сообщить ( Стр . Овощь + " " + Стр . Цвет + " " + Стр . Вкус + " " + Стр . ВесОвоща );
КонецЦикла;
// Перечисляем все колонки в таблице значений
Для Каждого Колонка Из ТЗ . Колонки Цикл
Сообщить ( Колонка . Имя );
КонецЦикла;
// Выгружаем колонку названий таблицы значений в массив
МассивОвощей = ТЗ . ВыгрузитьКолонку ( "Овощь" );
// Ничего не измениться, так как массив не менялся
ТЗ . ЗагрузитьКолонку ( МассивОвощей , "Овощь" );
// Заполнение значения в колонке для всех строк таблицы. Обнулим вес во всех строках
ТЗ . ЗаполнитьЗначения ( 0 , "ВесОвоща" );
// Перезапишем на новые веса
ТЗ [ 0 ]. ВесОвоща = 2500 ;
ТЗ [ 1 ]. ВесОвоща = 40 ;
ТЗ [ 2 ]. ВесОвоща = 90 ;
// Расчет итогов по колонке в таблице значений
ИтогПоКолонке = ТЗ . Итог ( "ВесОвоща" ); // Общий вес овощей = 2630
// Поиск строки в Таблице значений - найдём строчку с яблоком и покажем его цвет
СтрокаПоиска = ТЗ . Найти ( "Помидор" );
Если СтрокаПоиска <> Неопределено Тогда
Сообщить ( СтрокаПоиска . Цвет ); // Красный
КонецЕсли;
// Ищем строку в таблице значений поиском значения в определенных колонках
// будем искать по слову "Сочный" в колонках "Вкус" и "Цвет"
СтрокаПоиска = ТЗ . Найти ( "Сочный" , "Вкус, Цвет" );
Если СтрокаПоиска <> Неопределено Тогда
Сообщить ( СтрокаПоиска . Овощь ); // Помидор
КонецЕсли;
// Добавляем ещё один красный овощь Перец, Вариант №1
Стр = ТЗ . Добавить ();
Стр . Овощь = "Перец" ;
Стр . Цвет = "Красный" ;
Стр . Вкус = "Сладкий" ;
Стр . ВесОвоща = 120 ;
// Добавляем ещё один красный овощь Перец, Вариант №2
Стр = ТЗ . Добавить ();
Стр [ "Овощь" ] = "Перец" ;
Стр [ "Цвет" ] = "Красный" ;
Стр [ "Вкус" ] = "Сладкий" ;
Стр [ "ВесОвоща" ] = 120 ;
// Выполняем поиск в Таблице Значений (неуникальные значения)
Отбор = Новый Структура ;
Отбор . Вставить ( "Цвет" , "Красный" );
Строки = ТЗ . НайтиСтроки ( Отбор );
Для Каждого Стр Из Строки Цикл
Сообщить ( Стр . Овощь ); // Помидор Перец
КонецЦикла;
// Сдвигаем первую строку Таблицы Значений на одну позицию вперёд
ТЗ . Сдвинуть ( 0 , 1 );
// Возвращаем обратно строку Таблицы Значений
ТЗ . Сдвинуть ( 1 , - 1 );
// Скопировать (выгрузить) табличную часть документа/справочника/. в Таблицу Значений
ТЗ = ТабличнаяЧастьN . Выгрузить ();
// Создаем полную копию Таблицы Значений
КопияТЗ = ТЗ . Скопировать ();
// Создаем копию таблицы значений по нужным колонкам - будет только две колонки Овощь и Цвет
КопияТЗ = ТЗ . СкопироватьКолонки ( "Овощь, Цвет" );
// Создаем полную копию Таблицы Значений по отбору
Отбор = Новый Структура ;
Отбор . Вставить ( "Овощь" , "Помидор" );
// Таблица Значений будет содержать только строчку с помидором
КопияТЗ = ТЗ . Скопировать ( Отбор );
// Таблица Значений будет содержать цвет и вес помидора
КопияТЗ = ТЗ . Скопировать ( Отбор , "Цвет, ВесОвоща" );
// Сворачиваем Таблицу значений по колонке "Вкус", просуммируем по весу
ТЗ . Свернуть ( "Вкус" , "ВесОвоща" );
// Отсортируем Таблицу Значений по колонке
ТЗ . Сортировать ( "ВесОвоща Возр" );
// Отсортируем Таблицу Значений по нескольким колонкам
ТЗ . Сортировать ( "ВесОвоща Возр, Вкус Убыв" );
// Удаляем строку из Таблицы Значений (по индексу или по значению)
ТЗ . Удалить ( 0 );
// Очистим (удалим) все строки из Таблицы Значений
ТЗ . Очистить ();
Марина, консультант в Neti, рассказывает, как легко сравнить объемные таблицы в 1С.
Часто мы сталкиваемся с задачами, где необходимо сверить данные двух файлов или таблиц до изменений и после. Это не проблема, если в каждом источнике небольшое количество строк и максимум одна страница. А если предстоит найти отличия в файлах, состоящих из сотен страниц и тысяч строк? Искать глазами трудно и долго — велика вероятность что-то не заметить и потратить на столь утомительное занятие часы, дни, а то и недели. В статье я поделюсь 4 способами сравнить объемные таблицы по различным значениям, которые легко освоит любой пользователь.
Способ № 1: сравнить таблицы в базе 1С
На любой платформе 1С есть типовая обработка «Сравнить файлы». Находится в верхнем левом углу: «Главное меню — Файл — Сравнить файлы».
Чтобы начать работать, добавьте сопоставляемые файлы в окошки «Сравнить» и «С». Укажите «Как» сравнить: табличный документ, текстовый документ или двоичное сравнение. Нажмите клавишу «ОК».
Открылось окно с обеими таблицами, в которых цветом выделены отличающиеся значения.
На верхней панели инструментов доступны следующие команды →
позволяют переходить по различиям от текущего значения к следующему и обратно, в это время в основном окне будет выделена ячейка с отличием;
меняет порядок сравнения: если ее нажать, то правый лист окажется слева,
а левый — справа;
— настройка ячеек по цветам.
В нижней части окна отображается подсказка, что означает каждый цвет.
Плюсы
- не требует дополнительного программного обеспечения;
- моментально показывает все изменения без предварительных настроек;
- удобный интерфейс: когда на любой части окна прокручиваешь первый файл вверх/вниз или вправо/влево, в то же время параллельно ему прокручивается второй.
Минусы
- ограниченное количество форматов — работает только с .txt и .mxl. Нельзя вставить Excel-файлы;
- невозможно сохранить результат сравнения во внешний файл. Даже если скопировать данные и вставить в тот же Excel, цветное выделение различий не перенесется;
- нет дополнительных формул, например, чтобы вывести сумму по колонке.
Способ № 2: сравнить таблицы в Excel
Самый распространенный метод: выгружаете первоначальный вариант отчета и тот же отчет с поправками в формате .xls и сверяете их в Microsoft Excel, пользуясь доступными формулами.
Для примера приведу стандартную формулу «Если».
1. Выделяем пустую ячейку. В ней будет отображаться результат функции.
2. В верхней панели кликаем на ярлык формулы f×
3. В предложенном списке выбираем функцию «ЕСЛИ», нажимаем «ОК».
4. Задаем условие в поле «Лог-выражение». На скрине-примере условие следующее: если значение ячейки по колонке «Конечный остаток» левой таблицы равен значению ячейки по колонке «Конечный остаток» справа.
5. В поле «Значение_если_истина» указываем, какой вывод нужно вывести, если значения равны.
6. В поле «Значение_если_ложь» обозначаем, какой вывод нужно вывести, если значения различны.
В таблице автоматически отобразился результат по выделенной строке. Чтобы вывести итоги по другим строкам, наведите мышку на правый нижний угол первой ячейки с формулой, захватите и протяните по колонке вниз до конца таблиц.
В скрине-примере видно, что гораздо больше итогов с выводом «отличаются», что не соответствует действительности — некоторые строки с одним и тем же регистратором не располагаются друг напротив друга. Выбранная функция этот момент не контролирует, поэтому вышли ложные результаты. Чтобы исключить такие ошибки, прежде чем использовать формулу, необходимо обе таблицы вручную откорректировать и проставить строки с одним и тем же регистратором в одну линию.
Способ занимает много времени, особенно если сводка состоит из тысячи строк. Его удобно использовать, работая с небольшим объемом данных.
В маленьких файлах вы можете суммировать значения ячеек в колонках и тем самым выходить на строки с различиями.
Если хотите быстро найти нужные ячейки, не вчитываясь в каждую строку и не напрягая зрение, воспользуйтесь функционалом «Условное форматирование».
Вот один из примеров настройки:
Плюсы
- гибкая система функций, условий. Можно самостоятельно прописать практически любые условия по сравнению, выделению, форматированию данных.
Минусы
- иногда потребуется не один час, чтобы подстроить таблицу для шаблонной формулы;
- при сверке объемных документов, даже с использованием формул, легко не заметить нужную ячейку и допустить ошибки по невнимательности.
Способ №3: использовать «Средство сравнения электронных таблиц»
«Средство сравнения электронных таблиц» — отдельное ПО, устанавливаемое вместе с пакетом версии Microsoft Office 2013 Pro+ и Microsoft Office 365 Pro+. В других версиях этой программы нет.
Чтобы ее запустить, в меню «Пуск» выберите: «Все программы — Microsoft Office — Средство сравнения электронных таблиц (Spreadsheet Compare 2013)».
На вкладке «Главное» (Home) нажмите «Сравнить файлы» (Compare Files).
В окошках «Сравнить» (Compare) и «С» (To) укажите нужные файлы формата Excel. Нажмите «ОК».
Выбранные файлы распределились в разных частях рабочего окна, отличающиеся ячейки в них выделены цветом. Вы можете отрегулировать, какие различия показывать, а какие нет, с помощью настройки Option, которая расположена в левой нижней части окна. Тут же указано, что означает каждый цвет.
Правее от окошка Option отображается список всех ячеек, где отличаются значения. Если вы кликните на интересующую строку, в табличных частях программа автоматически выделит эти ячейки и вам не придется искать их глазами.
В правом нижнем углу показывается статистика по отличиям: общее количество различающихся значений, число ячеек с разным форматом и прочее.
Результаты сравнения можно сохранить в Excel по команде: «Экспорт результатов» (Export Results) на вкладке «Главное» (Home). Есть возможность скопировать итоги и вставить их в любое другое текстовое ПО: «Копировать результаты в буфер обмена» (Copy Results to Clipboard).
Плюсы
- позволяет быстро и просто сверять готовые таблицы;
- можно сохранить результат для дальнейшего использования;
- есть автоматическое выделение всех отличающихся ячеек, фильтр по интересующим параметрам.
Минусы
- нельзя редактировать табличные части;
- работает только с форматом Excel;
- доступна в Microsoft Office 2013 Pro+ и Microsoft Office 365 Pro+.
Способ № 4: использовать Excel Power Query
Power Query — технология подключения к данным, которая помогает обнаруживать, подключать, объединять и уточнять данные из различных источников для анализа.
Чтобы начать с ней работать, необязательно заранее подготавливать файлы Excel, сохранять, копировать таблицы. Power Query позволяет загружать данные:
- из интернета;
- внешнего файла форматом Excel, CSV, XML;
- баз данных SQL, Access, IBM DB2 и других;
- Azure;
- веб-служб Dynamics 365,
- Facebook.
Самые продвинутые пользователи могут «Написать запрос с нуля».
В этой статье я подробно опишу только сопоставление двух таблиц. На первый взгляд, способ очень трудный и долгий, но если вы освоите его, то процесс будет занимать не больше 10 минут.
Перед вами две таблицы в Excel. Нужно преобразовать каждую в умную таблицу. Для этого выделите нужный диапазон, на вкладке «Главная» кликните на «Форматировать как таблицу» или на клавиатуре нажмите Ctrl+T.
Теперь с каждой таблицы необходимо создать отдельные запросы для сравнения. Выделите любую ячейку в первой таблице и перейдите на вкладку Power Query «Из таблицы или диапазона». Она откроется в «Редакторе Power Query». Рекомендую задать ей «Имя» в свойствах, чтобы в дальнейшем не путать файлы. При необходимости уберите лишние строки и столбцы.
Нажмите «Закрыть и загрузить в …», выберите «Только создать подключение» и кликните на кнопку «Загрузить».
Повторите все шаги со вторым документом.
В правой части окна появились два запроса с указанными именами таблиц. На панели инструментов выберите команду «Слияние» и укажите поочередно созданные запросы. По одному разу в каждой части окна кликом выделите колонки, по которым нужно объединить файлы. Тип соединения «Полное внешнее (все строки из обеих таблиц)». Кликните на «ОК».
Вы снова попали в «Редактор Power Query». Здесь обе таблицы объединены в одну путем слияния указанных столбцов. В «Свойствах» задайте имя новому документу — раскройте крайнюю правую колонку, нажав на иконку
Следующий этап — вывести отличия таблиц в отдельную колонку. На вкладке «Добавление столбца» выберите «Условный столбец». В окне настройки задайте «Имя нового столбца» и проставьте условия сравнений колонок и какой вывод должен отразиться при их соблюдении. Правил можно задавать неограниченное количество с помощью команды «Добавить правило».
В примере задано:
1. Если в колонке «Регистратор» первой таблицы стоит значение null, а во второй таблице это значение заполнено, значит документ «Добавили».
2. Если в колонке «Регистратор1» второй таблицы стоит значение null, значит документ «Удалили».
3. Если значения колонок «Конечный остаток» и «Конечный остаток1» не равны, значит данные «Изменили».
Обратите внимание на третье условие. Чтобы в «Значении» выбрать нужную колонку, кликните на иконку. Затем «Выберите столбец». Только тогда появится выпадающий список допустимых колонок.
Обязательно заполните в левом нижнем углу значение «В противном случае» — оно будет исполняться, если ни одно из вышеприведенных условий не выполнено. Нажмите «ОК».
В «Редакторе» появилась крайняя правая колонка, в которой выведены результаты сравнения по каждой строке. С помощью удобного фильтра можно вывести только строки с интересующим итогом.
Итог: таблицы до сравнения и объединенная сводка с готовыми результатами для анализа.
Плюсы
- исключены ошибки по невнимательности, вам нужно только указать, что с чем сравнивать и что вывести в вывод;
- надстройка работает со множеством форматов и различными источниками данных.
Минусы
Надеюсь, методы, о которых я рассказала, пригодятся вам в работе и сделают процесс сравнения таблиц и данных проще и легче.
Конечно, сразу скажу, что такой способ предполагает сравнение только по текстовому представлению данных.
Т.е., например, число 5 и строка «5» не покажут разницы.
Но для других случаев этот пример будет очень полезен.
p.s. искал такой же вариант на ИС, но, увы, не нашел…
Related Posts
13 Comments
Плагиат. Не плохо бы было, если автор указал ссылку на первоисточник.
(1) u_n_k_n_o_w_n, слышали про Синтакс-помощник ?
Конечно, сразу скажу, что такой способ предполагает сравнение только по текстовому представлению данных.
Т.е., например, число 5 и строка «5» не покажут разницы.
А как насчет выводить тип значения в отдельной колонке? Тогда можно и типы сравнивать вашим этим способом)
(3) ya.Avoronov, не, это не для этого случая…
Тогда бы я использовал совсем другой инструментарий….
Сравнение файла для кого-то новость? Помню когда-то к подсистеме версионирования прикручивал, удобно было. Ну и стоит отметить, что (если я не ошибаюсь) работает только на обычном приложении, на управляемом вроде бы не взлетало.
(3) ya.Avoronov, В принципе, можно в отдельную колонку вывести тип и сравнивать на здоровье :)))
(5) necropunk, почему бы на УФ ей не летать?
(1) u_n_k_n_o_w_n, (5) necropunk, вот смотрю я на ваши комменты и думаю — ну точно не для вас публиковал
(7) увы, только толстый клиент. Сам обломался, когда хотел в свое решение вставить однажды. Пришлось вручную этот функционал писать, ибо о решении в (8) не знал.
(9) да я ничего против публикации не имею, просто дополнил.
Есть способ проще: Файл — Сравнить файлы…
Есть способ чуть сложнее: поискать на Инфостарте. Тут есть даже разработки, умеющие сравнивать и показывать разницу между числовыми значениями…
(12) DrAku1a, мда… теперь я понимаю зачем есть галочка «Отключить комментарии»
Читайте также: