Имя: Пароль:
1C
1С v8
v8: пометить на удаление документ по ссылке
,
0 Proshka
 
26.10.11
07:54
Такая засада- у меня есть несколько видов документов, помеченных на удаление. Дело в том, что на эти документы есть ссылка на документы "КорректировкаЗаписейРегистров". Руками искать эти коррректировки и удалять слишком долго- у меня этих документов порядка 4000. никто не подскажет как програмно пометить на удаление корректировку записей регистров?
1 Найч
 
26.10.11
07:56
операции - обработки - "групповая обработка справочников и документов"
начни с этого, или пиши сам обработку с запросом.
2 Proshka
 
26.10.11
08:03
да групповой обработкой нельзя- там нужные есть корректировки записей регистров. У меня просто в базе несколько ненужных организаций, по ним есть документы, ссылки у которых на эти корректировки. Как то надо обработку писать..пока не придумаю как...
3 Рэйв
 
26.10.11
08:04
ВЫБРАТЬ
   
   Док.Корректировка
ИЗ
   Документ.ТвойДок КАК Док
ГДЕ
       Док.Корректировка<>&ПараметрПустаяСсылкаКорректировка

Если Реквизит корректировка составной, то придется так    

ГДЕ
       НЕ РеализацияТоваров.ДокументОснование.Ссылка Есть NULL
4 Рэйв
 
26.10.11
08:05
то есть

Док.Корректировка.Ссылка Есть NULL
5 Proshka
 
26.10.11
08:08
что это нам даст? я выберук только документы а мне нужно дотянуться до корректировки записей регистров для этих доков
6 Proshka
 
26.10.11
08:09
тут надо как то использовать механизм поиска ссылок на объект, потом в нем делать отбор по документу "Корректировка записей регистров" и этот документ помечать на удаление
7 Рэйв
 
26.10.11
08:10
(5)Вообщето ты возьмешь не документы, а заполенную ссылку на корректировку.Если она не пустая. Если я правилльно понял тебе именно это надо
8 Рэйв
 
26.10.11
08:11
+
А вообще не мешало бы менее косноязычно расшифровать фразу

>>Дело в том, что на эти документы есть ссылка на документы "КорректировкаЗаписейРегистров"
9 Proshka
 
26.10.11
08:13
(8) ну как...есть масса докуменнтов, скажем платежное поручение исходящее, у них есть ссылки у каждой платежки к отдельному документу корректировка записей регистров...
10 Рэйв
 
26.10.11
08:14
(9)Ну вот запросом из (3)Ты выберишь из них ссылки на корректировки.В объхходе результата делай .Получитьобъект() и делай с ним что хочешь.
11 Proshka
 
26.10.11
08:16
все, догнал, спс
12 Proshka
 
26.10.11
09:10
поле не найдено-Док,Корректировка
13 Proshka
 
26.10.11
09:19
ап.
14 hhhh
 
26.10.11
09:27
(12) ну ты сам определись, как твое поле называется, то название и ставь. Чего ты тупо переписал пример?
15 Proshka
 
26.10.11
10:05
так вот в чем и вопрос- поля, которое отвечает за ссылки на другие объекты в частности на документ корректировка записей регистров просто нет. я думаю надо попробывать использовать механизм поиска ссылок на объекты из штатки....
16 Proshka
 
26.10.11
10:38
ап..
17 Рэйв
 
26.10.11
10:40
(15)Что значит нет поля?  Ты же вроде говорил что ссылка хранится в документе?
18 ptiz
 
26.10.11
10:44
(15) Сдается мне, что документы цепляются движениями "Корректировок". Хочешь движения стереть?
19 Proshka
 
26.10.11
11:02
да нет, объясняю подробно на одном примере: есть документ помеченный на удаление, скажем платежка. при попытке удалить ее штатными средствами выясняется, что на эту платежку есть ссылка в документе "Корректировка записей регистров". если бы была одна платежка тогда проблем бы не было- удалил один документ корректировка записей регистров и все., потом укдалил платежку, но этих платеже тысячи 4, поэтому хочу програмно по ним пройтись и выцепить как то связь на документы корректировака записей регистров
20 Reset
 
26.10.11
11:13
Так до конца и не понял, что нужно автору, но, возможно, поможет НайтиПоСсылкам()
21 Reset
 
26.10.11
11:19
Кроме того, что-то подсказывает, что пометка на удаление документа корректировки не поможет - движения останутся (это документ не проводимый скорее всего). Придется удалять движения,см (18)
22 Reset
 
26.10.11
11:21
и в третий раз)
после (12) мне уже жалко базу после такого спеца :)
23 Рэйв
 
26.10.11
11:23
(19)Поэтому я и просил некосноязычно объяснить в каком документе какая ссылка.
вот так попробуй:

ВЫБРАТЬ
   
   Док.СсылкаНаПомеченныйДокумент
ИЗ
   Документ.Корректировка КАК Док
ГДЕ
       Док.СсылкаНаПомеченныйДокумент.ПометкаУдаления
24 Reset
 
26.10.11
11:30
(23) Если это тот тип документа, который мне подсказывает телепат, там нет ссылок вообще (документ имеет движения, но не имеет табличной части). То есть запрос становится несколько сложнее - нужно искать в регистрах (скорее всего в большом количестве,если не во всех), а не в документах. Но зачем искать, если НайтиПоСсылкам делает то же самое?
Повторюсь, мой телепат мог ошибиться и автору нужно совсем нечто другое
25 Рэйв
 
26.10.11
11:31
(24)Нет. Вряд ли..Тогда бы заругалось на то, что он используется в записях регистров.  а если конкретно указало корректировку, значит в шапки гдето скорее всего
26 Reset
 
26.10.11
11:41
(25) Оно регистратор движения указывает, когда находит в регистре, подчиненном регистратору.
Кроме того, если ссылка есть в шапке, структура подчиненности показала бы связь. А она не показывает, да, автор? :)

Ладно, поучаствовал в уничтожении чьей-то инфы, надо и над своей поработать :)
27 ptiz
 
26.10.11
11:57
(25) Это твоё убеждение расходится с тем, как работает 1С.
28 Рэйв
 
26.10.11
12:05
(27)Это было предположение.
Основная теорема систематики: Новые системы плодят новые проблемы.