proverka_na_modificirovannost_obekta_naservere

Применять на сервере перед записью

Функция ОбъектМодифицирован(Объект, ПроверятьТабличныеЧасти = Истина, ПроверятьСтандартные = Истина) Экспорт  
    
    Ссылка = Объект.Ссылка;
    Метаданное = Ссылка.Метаданные();
    
    Для каждого Реквизит из Метаданное.Реквизиты Цикл
        Если Объект[Реквизит.Имя] <> Ссылка[Реквизит.Имя] Тогда
            Возврат Истина;
        КонецЕсли;
    КонецЦикла;
    
    Если ПроверятьСтандартные Тогда
    Для каждого Реквизит из Метаданное.СтандартныеРеквизиты Цикл
        Если Объект[Реквизит.Имя] <> Ссылка[Реквизит.Имя] Тогда
            Возврат Истина;
        КонецЕсли;
    КонецЦикла;
    КонецЕсли;
    
    
    Если ПроверятьТабличныеЧасти Тогда
        Для каждого ТЧ из Метаданное.ТабличныеЧасти Цикл
            
            Если Объект[ТЧ.Имя].Количество() <> Ссылка[ТЧ.Имя].Количество() Тогда
                Возврат Истина;
            КонецЕсли;
                        
            Для Индекс = 0 по Объект[ТЧ.Имя].Количество()-1 Цикл
                ОбъектСтрокаТЧ = Объект[ТЧ.Имя][Индекс];
                СсылкаСтрокаТЧ = Ссылка[ТЧ.Имя][Индекс];
                Для каждого РеквизитТЧ из ТЧ.Реквизиты Цикл
                    Если ОбъектСтрокаТЧ[РеквизитТЧ.Имя] <> СсылкаСтрокаТЧ[РеквизитТЧ.Имя] Тогда
                        Возврат Истина;
                    КонецЕсли;
                КонецЦикла;
            КонецЦикла;
            
        КонецЦикла;        
    КонецЕсли;
    
    Возврат Ложь;
    
КонецФункции
  • /sites/data/pages/proverka_na_modificirovannost_obekta_naservere.txt
  • Последнее изменение: 2021/03/19 14:05
  • tro