|
1С v8. Удаление объектов | ☑ | ||
---|---|---|---|---|
0
User_Agronom
08.01.13
✎
14:37
|
Можно ли программно установить метку удаления на объект не получая и не записывая его?
Вариант приведённый ниже не подходит(( Объект1 = Выборка.ПолучитьОбъект(); Объект1.ПометкаУдаления=Истина; Объект1.Записать(); Нужно просто установить метку (удалить его полностью) |
|||
1
zak555
08.01.13
✎
14:38
|
установить метку != удалить его полностью
|
|||
2
Нуф-Нуф
08.01.13
✎
14:38
|
"Нужно просто установить метку (удалить его полностью)" ты бы определился, шашечки или ехать
|
|||
3
acsent
08.01.13
✎
14:38
|
без объекта никак
|
|||
4
1Сергей
08.01.13
✎
14:38
|
>>Нужно просто установить метку (удалить его полностью)
это пять |
|||
7
Тот
08.01.13
✎
14:40
|
Оригинально. Перевожу на русский. "Можно ли изменить объект, не записывая его?"
Ответ. "Можно. Только он не изменится." |
|||
8
Тот
08.01.13
✎
14:41
|
А почему приведенный вариант то не подходит?
|
|||
9
acsent
08.01.13
✎
14:43
|
скорее всего вопрос в том чтобы избежать события передзаписью
|
|||
10
1Сергей
08.01.13
✎
14:43
|
Объект1 = Выборка.ПолучитьОбъект();
Объект1.Удалить(); не? |
|||
11
Нуф-Нуф
08.01.13
✎
14:44
|
настоящие адинеснеги убивают запись в физических таблицах. и никаких "ПередЗаписью"
|
|||
12
1Сергей
08.01.13
✎
14:45
|
Пардон,
Объект1.УстановитьПометкуУдаления(Ыстына); |
|||
13
User_Agronom
08.01.13
✎
14:45
|
(8) Объект кривой. Он не запишется, так как там много ошибок.
Нужно его просто удалить. (10) Спс, сейчас попробую. |
|||
14
User_Agronom
08.01.13
✎
14:45
|
(12) сейчас попробую.
|
|||
15
Тот
08.01.13
✎
14:46
|
(9) Так переписать его. Проверить - была только пометка установлена или нет.
|
|||
16
acsent
08.01.13
✎
14:47
|
(14) не поможет. Првильно все проверки перед записью ставить после
проверки ОбменДанными.Загрузка = Истина |
|||
17
Тот
08.01.13
✎
14:47
|
(13) Ага. Давай. Получишь битые ссылки.
|
|||
18
User_Agronom
08.01.13
✎
14:47
|
(12) Не катит. Он всё равно объект перезаписывает
|
|||
19
User_Agronom
08.01.13
✎
14:48
|
(17) Не получу. Эти объекты ни с чем не связаны.
|
|||
20
User_Agronom
08.01.13
✎
14:48
|
В идеале просто выставить метки и штатным образом удалить. Если что-то с чем-то и связано - так оно не удлалится
|
|||
21
1Сергей
08.01.13
✎
14:49
|
(19) тогда удали их из конфигурации
|
|||
22
User_Agronom
08.01.13
✎
14:50
|
(21) А как насчет контроля: вдруг где-то с чем-то связано?
|
|||
23
acsent
08.01.13
✎
14:50
|
update ... set DeletionMark = 1
|
|||
24
Тот
08.01.13
✎
14:50
|
(18) Может там перед удалением процедура имеется?
|
|||
25
1Сергей
08.01.13
✎
14:53
|
(22) Операции > Поиск ссылок на Объекты
|
|||
26
User_Agronom
08.01.13
✎
14:53
|
(9) Да. Нужно избежать события "перед записью"
Я неправильно выразился |
|||
27
User_Agronom
08.01.13
✎
14:54
|
(25) кривых объектов около 400. Все их искать долго.
На то мы и программисты)) |
|||
28
Тот
08.01.13
✎
14:54
|
(26) Так закомменти его. А после удаления - восстанови.
|
|||
29
User_Agronom
08.01.13
✎
14:55
|
(10) - это работает.
Но, насколько я понимаю, просто удаляется объект: без контроля зависимостей. |
|||
30
1Сергей
08.01.13
✎
14:56
|
(29) прально понимаешь
|
|||
31
Тот
08.01.13
✎
14:57
|
(29) Правильно понимаешь. Без контроля ссылочной целостности удаляет.
|
|||
32
Тот
08.01.13
✎
14:57
|
(29) Потом можешь пройтись лечилкой. Восстановит что-то как-то криво.
|
|||
33
User_Agronom
08.01.13
✎
15:03
|
С одним подобным случаем я уже справился. (просто заполнял пустые значения - всё равно же потом удалять). Осталось всего два кривых объекта, которые оказалось несложно проверить вручную через (25)
Теперь второй. Осложняется тем, что для того, чтобы записать нужно править правильные объекты (чего не хотелось бы). Самое интересное, можно щелкнуть правой кнопкой мыши и без всякой записи установить метку удаления. Поэтому родилась мысль, что это можно сделать программно. Но не знаю как(( |
|||
34
Mafoni
08.01.13
✎
15:20
|
А УстановитьПометкуУдаления ?? Не катит ???
|
|||
35
Aprobator
08.01.13
✎
15:25
|
(13) если конца типовая и объект не переписке через одно место, то может помочь:
|
|||
36
Aprobator
08.01.13
✎
15:26
|
Млин. Андроид замахал слова подменять (
|
|||
37
Mafoni
08.01.13
✎
15:26
|
(34) + ОбменДанными.Загрузка = Истина - в стандартных конфах в процедуре ПередЗаписью есть проверка на то откуда записывается объект!!
|
|||
38
Mafoni
08.01.13
✎
15:27
|
(36) будь мужиком юзай вин 8!!!
|
|||
39
Aprobator
08.01.13
✎
15:34
|
(38) на таблетке?
|
|||
40
Mafoni
08.01.13
✎
15:36
|
Бросай колеса нафиг они к добру не доведут ! :)
|
|||
41
User_Agronom
08.01.13
✎
15:37
|
(35) Конфигурация типовая.
Старт был дан другим программистом. Этот "программист" наделал кучу косяков. Пытаюсь по одному избавляться. Я думаю, что нормальный программист (и даже админ) должен понимать вещи вроде (31) и отдавать отчет своим действиям. Метка удаления тем и хороша, что практически ничего не изменяет. Т.е. висячих ссылок не будет. А уж по 3-5 объектам можно и (25) провести проверку и анализ. |
|||
42
Mafoni
08.01.13
✎
15:39
|
(41) нормальный программист перед тем как сделать важные изменения backup делает !
|
|||
43
User_Agronom
08.01.13
✎
15:43
|
(42) Это правильно.
Но когда пишешь код нужно представлять, что этот код делает. Можно просто удалить и забить. А потом будет висеть куча ссылок битых и пр. пр. пр. И никто, кроме программиста, про это в конторе не узнает |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |