Имя: Пароль:
1C
1С v8
Есть ли типовая процедура сравнения Объекта с сохраненной копией?
0 1dvd
 
12.11.13
13:10
В форме (скажем, элемента справочника) узнать какие реквизиты изменились как? Можно написать универсальную процедуру, которая переберёт метаданные и выявит отличия. Но, может уже есть в типовых конфах такая?
1 shuhard
 
12.11.13
13:12
(0) сравнение объектов в типовой конечно есть
2 1dvd
 
12.11.13
13:13
(1) как обзывается?
3 shuhard
 
12.11.13
13:14
(2) сравнить - объединить с конфигурацией трам-пам-пам
4 1dvd
 
12.11.13
13:15
(3) я говорю про данные, про функцию. Типа:

Функция СравнитьОбъектССылкой(Объект, Ссылка) Экспорт
    ...
5 Михаил Козлов
 
12.11.13
13:16
(3) Похоже, нужно сравнение объекта с тем, что сохранено в БД. Типовых не видел, написать недолго.
6 Maxus43
 
12.11.13
13:16
в типовых есть сравнение в версионировании, принцип тот же, оттуда скомуниздить можно
7 1dvd
 
12.11.13
13:16
(5) да, вот это и хотел узнать
8 shuhard
 
12.11.13
13:17
(4)[В форме (скажем, элемента справочника) узнать какие реквизиты изменились как?]
ты сам себя то понял ?
9 ILM
 
гуру
12.11.13
13:17
(3) А есть способ групповой передачи затрат, а то 20 документов с корректировкой затрат по 1 подразделению уже бесят?
10 ILM
 
гуру
12.11.13
13:18
по каждому...
11 1dvd
 
12.11.13
13:19
(8) да.

Как узнать какие реквизиты изменились в форме элемента справочника?

так, надеюсь, понятней
12 ILM
 
гуру
12.11.13
13:21
На инфостарте была работа с журналом регистрации.
В типовых смотри отчет версии объекта, версионирование д.б. включено.
13 ILM
 
гуру
12.11.13
13:21
(12) к (11)
14 1dvd
 
12.11.13
13:21
(12) ты совсем не понял чего мне надо
15 1dvd
 
12.11.13
13:24
(12)

1. Пользователь открывает форму элемента справочника для редактирования.
2. Вносит изменения.
3. Пока форма открыта и не записана в БД элемент справочника имеет одни значения реквизитов, а на форме - другие. Вот как мне программно узнать какие реквизиты изменил пользователь?
16 ILM
 
гуру
12.11.13
13:27
Есть признак Модифицирован, истина если меняли.
А так везде используют

Перем СтараяНоменклатура;

ПриОткрытии()
  СтараяНоменклатура = Номенклатура;

и т.д.
17 ILM
 
гуру
12.11.13
13:27
При открытии заполняешь в память, а потом проверяешь.
18 1dvd
 
12.11.13
13:28
(16) глупости. Реквизитов может быть 100500
19 DexterMorgan
 
12.11.13
13:30
(18) Создать ТЗ, ЗаполнитьЗначенияСвойств, Запихнуть в запрос и соединить с объектом бд?
20 1dvd
 
12.11.13
13:31
(18)
Тем более, что оно и так сохранено в БД.

Если Номенклатура<>Ссылка.Номенклатура Тогда
21 SeraFim
 
12.11.13
13:39
Если не ошибаюсь, в БСП подсистема для обмена данными работает так:
Перед записью объекта смотрим в правила обмена, какие реквизиты этого объекта переносятся. Потом сравниваем их все. Если есть изменения, тогда регистрируем объект для обмена
22 SeraFim
 
12.11.13
13:41
+(21) Типа у объекта 10 реквизитов, из них только 5 переносим. Если изменился только тот реквизит, который не надо переносить, то соответственно и весь объект нет смысла переносить.
24 Serg_1960
 
12.11.13
17:08
(0) Если есть версионирование в твоей типовой конфигурации - то там смотри, там есть.
26 Михаил Козлов
 
12.11.13
18:07
(25) Еще по ТЧ нужно пройтись.
27 Pasha
 
12.11.13
18:13
(0)Why?
29 kiruha
 
12.11.13
18:33
(28)
И причем здесь "связанные элементы" ?
30 kiruha
 
12.11.13
18:34
Они не входят в объект
31 kiruha
 
12.11.13
18:42
(25)
Проверять надо
Реквизиты
Стандартные реквизиты
Реквизиты ТЧ
Общие реквизиты
Дополнительные свойства и характеристики если нужны
33 kiruha
 
12.11.13
23:17
(32)
Понятия не имею что имеет ввиду автор. Вероятно перед записью проверять.
34 mistеr
 
13.11.13
00:08
(0) А зачем, можно узнать? Чую запах велосипедной краски...
35 zladenuw
 
13.11.13
00:14
а это не подходит ? СравнениеЗначений  ?