Имя: Пароль:
1C
1С v8
уникальность записи регистра сведений
,
0 ВПоискахИстины
 
01.11.13
16:14
Регистр сведений, записи вводятся через форму записи.

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

Как это делается правильно?



PS
Уникальность документа или элемента справочника можно определить ссылкой. Соотв-но все документы кроме этого: "Выбрать Ссылка Из Документ.Имя где Ссылка<>&ЭтотДок".

В регистре сведений можно добавить реквизит Ссылка, и в форме записи перед тем как записать присваивать при необходимости уникальный идентификатор. Соотв-но все записи кроме этой: "Выбрать Ссылка Из РегСв.Имя Где Ссылка<>&СсылкаНаЭтуЗапись".
Но как-то добавлять реквизит в РС не хочется..
Спасибо.
1 mikecool
 
01.11.13
16:15
уникальность РС = набор уникальных измерений
2 mikecool
 
01.11.13
16:15
+1 плюс период, если периодический
3 ВПоискахИстины
 
01.11.13
16:15
Регистр не подчинен регистратору, не периодический.
4 ВПоискахИстины
 
01.11.13
16:16
(2) Но перед тем как записал запись, запросом вытаскиваются ее начальные значения.
5 mikecool
 
01.11.13
16:16
и что?
6 Dimaster
 
01.11.13
16:23
(4) Вообщето регистр сведений на то и регистр сведений, что туда нельзя сделать 2 записи с одинаковыми измерениями. Зачем их сравнивать перед записью, если механизм платформы делает это сам???
7 User_Agronom
 
01.11.13
16:26
(6) + не даст записать еще один набор с такими измерениями.
8 ВПоискахИстины
 
01.11.13
16:36
У меня структура регистра Заместитель-Замещаемый-ДатаС-ДатаПо, ресурсы Выполняется, Завершена.

При выборе одной настройки, заместитель не должен замещать 2+ замещаемых в один период.

В регистре:
Зам - Босс1 - 01.01.13 - 10.01.13

Если открыть эту запись и поменять Босс1 на Босс2, то  перед записью при взятии запросом данных мы получим "Зам-Босс1-..". Соотв-но программа скажет, что запись с таким заместителем уже есть, хотя по факту это перезапись.
9 ВПоискахИстины
 
01.11.13
16:38
(1) понял, что делать, спасибо:). Буду проверять на совокупность старых значений измерений.
10 Wobland
 
01.11.13
16:38
(8) сам придумал?
11 rozer76
 
01.11.13
16:40
смотри...
1) записываешь в транзакции
2) сначала читаешь запросом но перед этим накладываешь "исключительную блокировку" на читаемые измерения
3) по результатам (2) принимаешь решение ...
12 ВПоискахИстины
 
01.11.13
16:47
(8) да
13 ВПоискахИстины
 
01.11.13
16:50
(11) понял как. спасибо:) пятница, голова моя совсем не варит(
Основная теорема систематики: Новые системы плодят новые проблемы.