Как проверить, что было изменено значение определенной колонке в ТЧ документе
По теме из базы знаний
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
Попробовала по этой ссылке, выбрала 3.3. Соединение по индексу.
Но у меня не работает. В ТЧ 3 строки, если я меняю в последней, то все ок. А если в предпоследней, то не работает. Может быть дело в том, что я не правильно Измерения обозначила. В данном случае Измерения это что?
Но у меня не работает. В ТЧ 3 строки, если я меняю в последней, то все ок. А если в предпоследней, то не работает. Может быть дело в том, что я не правильно Измерения обозначила. В данном случае Измерения это что?
Функция РазницаТаблицЗначений(Таблица0, Таблица1, Измерения) Экспорт
Отбор = Новый Структура(Измерения);
Ресурсы = Новый Массив;
Для ИндексКолонки = 0 По Таблица0.Колонки.Количество() - 1 Цикл
Если НЕ Отбор.Свойство(Таблица0.Колонки[ИндексКолонки].Имя) Тогда
Ресурсы.Добавить(ИндексКолонки)
КонецЕсли
КонецЦикла;
Таблица1.Колонки.Добавить("Знак", Новый ОписаниеТипов("Число"));
Таблица1.ЗаполнитьЗначения(1, "Знак");
НовыйИндекс = Таблица1.Индексы.Добавить(Измерения);
Разница = Таблица1.СкопироватьКолонки();
Для Каждого Строка0 Из Таблица0 Цикл
ЗаполнитьЗначенияСвойств(Отбор, Строка0);
Строки1 = Таблица1.НайтиСтроки(Отбор);
Если Строки1.Количество() = 0 Тогда
ЗаполнитьЗначенияСвойств(Разница.Добавить(), Строка0)
Иначе
Строка1 = Строки1[0];
Для Каждого Ресурс Из Ресурсы Цикл
Если Строка0[Ресурс] <> Строка1[Ресурс] Тогда
ЗаполнитьЗначенияСвойств(Разница.Добавить(), Строка0);
ЗаполнитьЗначенияСвойств(Разница.Добавить(), Строка1);
Прервать
КонецЕсли
КонецЦикла;
Строка1.Знак = 0
КонецЕсли
КонецЦикла;
Для Каждого Строка1 Из Таблица1.НайтиСтроки(Новый Структура("Знак", 1)) Цикл
ЗаполнитьЗначенияСвойств(Разница.Добавить(), Строка1);
КонецЦикла;
Таблица1.Колонки.Удалить("Знак");
Таблица1.Индексы.Удалить(НовыйИндекс);
Возврат Разница
КонецФункции
Показать
ни кто не заморачивается такими проверками!!!,
просто переписываютданные регистра текущими данными (как обработка проведения)
а если актуально анализировать кто и что именно менял в документе, то включают историю изменения
просто переписываютданные регистра текущими данными (как обработка проведения)
а если актуально анализировать кто и что именно менял в документе, то включают историю изменения