#0
by vladimir-boy
Есть такой запрос: ГДЕ РасценкиТехнологическихОпераций.ТехнологическаяОперация.Ссылка ЕСТЬ NULL В результатеЗапроса: Выходят некоторые записи у которых измерение "ТехнологическаяОперация"(Справочник) было грохнуто - <Объект не найден> (225:99de0025901805cd11e01e78470e8ce4), причём не понятно почему записи данного Регистра Сведений висят в базе, ведь измерение "ТехнологическаяОперация" идёт с флагом "Ведущее". Как удалить эти записи??? Спасибо за ответы.
#1
by Maxus43
так и удаляй, отбор на "<Объект не найден> (225:99de0025901805cd11e01e78470e8ce4" ставь как обычно
#10
by Maxus43
битые ссылки дают null при неявном соединении, как например через точку. так ищут битые ссылки в запросах
#11
by H A D G E H O G s
а) Сдедать копию б)Отловить запрос в профайлере. в) Заменить Select на delete г) Profit
#14
by Maxus43
пилять, вы чо усложняете? запросом обычным ищутся битые ссылки легко, и так же легко на них ставится отбор потом и удаляются записи из регистров
#21
by Лефмихалыч
у меня где-то даже обработка есть, которой в любых регистрах можно крошить записи с битыми ссылками
#22
by Maxus43
я тоже не молод, но даже на 8.0 было именно так, всегда так было) не помню я чтоб 1с отвергала такой нежный подход
#25
by vladimir-boy
+ НЕ СРАБАТЫВАЕТ, к сожаленью: МойЗапрос = Новый Запрос; МойЗапрос.Текст="ВЫБРАТЬ
#27
by vladimir-boy
С таким кодом вообще ошибка вываливается: {Форма.ФормаОтчета.Форма(1326)}: Поле объекта недоступно для записи (ТехнологическаяОперация) Код:
#29
by vladimir-boy
Да буду стараться сам, спасибо огромное итак, сообщу обязательно если у меня получится
#30
by GANR
У самого возникает инстинктивное желание SQL припахивать всюду где не лень , но надо по православному . Я склоняюсь к чему-то ещё более православному варианту - восстановить несуществующие объекты, на которые имеются ссылки в РС. Для этого можно воспользоваться типовой обработкой ВыгрузкаЗагрузкаДанныхXML.epf . Отобрал в архивной копии базы "битые" объекты, выгрузил в xml, загрузил в целевую базу - всё... и кодить не надо. По сути ВыгрузкаЗагрузкаДанныхXML.epf реализует такой алгоритм: GUID_ПотерянногоЭлемента = Новый УникальныйИдентификатор("6ce92cb6-6d92-11e0-afc8-003048f27c5f");
#31
by vladimir-boy
Спасибо! Вот это очень интересное решение путём восстановления объекта измерения, опробую такой вариант обязательно.
#32
by alexei366
Да хз, измерение как понимаю ссылка на спр какойто, ну так и сделать запрос по регистру с левым соединением на таблице справочника, и в условии ЕСТЬNULL на колонку таблицы справочника к примеру на туже самую ссылку. И вернет тебе запрос все измерения коих нет в справочнике уже, ну а дальше удаляй
#34
by GANR
А чтобы узнать, какие элементы в копии соответствуют "битым" ссылкам (GUIDы-то в "битой" базе есть)
#35
by Reset
Удаляется элементарно, на раз-два. Другое дело, что ты пока не освоил работу с даже элементарными механизмами платформы - выбороками из запроса, записями рс, наборами.
#36
by vladimir-boy
maybe , но поверь что вариант только прокатит(сдаётся мне), который предложил GANR Предложи реальный код, пожалуйста
#37
by Reset
Что предлагать? Ответ на вопрос в сабже дан в посте . Писать за тебя код не буду, уж извини. +1 к. то же говорит дело, но это уже вопрос подхода в конкретном случае.
#39
by Reset
Я бы делал (это уже выходит за рамки заданного вопроса) сначала поиск ссылок по базе, если есть ссылки в других местах, кроме РС, то "восстанавливал" бы объект. Иначе удадял из регистра.
#42
by vladimir-boy
Ок. Намёк понятен. Буду биться как рыба об лёд, но попытаюсь достичь результата!
#45
by fisher
ИМХО, самый простой способ - оживить регистраторов по битым ссылкам и тут же их грохнуть вместе с записями.
#46
by Reset
у него вроде на справочник(ТехнологическаяОперация) "висит" ссылка, а не на регистратор. Хотя согласен, если этот регистр таки подчинен регистратору, тогда правильней, действительно, в документе проставить правильное значение(выбрать существующий элемент) и перепровести. Или восстановить элемент справочника по ссылке. А не удалять часть движений документа. Впрочем, это укладывается в ;)
#47
by GANR
На примере : 1. Строчка в ТИИ <Объект не найден> (225:99de0025901805cd11e01e78470e8ce4) Вот по п.3 и надо вычислить живую Ссылку в копии и скормить .
#48
by Reset
Если по примеру , у него уже есть готовая ссылка как результат запроса и преобразования представления уида туда-сюда не нужны.
#49
by Reset
то есть в можно сразу к четвертой строке приступать ОбъектПоСсылке.УстанвитьСсылкуНового(Ссылка_ПотерянногоЭлемента_ПолученнаяИзЗапроса);
#50
by fisher
Без разницы. Измерение-то ведущее. Если создать элемент справочника по битой ссылке и тут же его грохнуть - всё будет в ажуре.
#51
by Reset
Собственно, не возражаю, если других ссылок, кроме как в РС нету. А если нету то почему просто не грохнуть :) без разницы в общем
#52
by GANR
О! запрос. Тогда БитаяСсылка.УникальныйИдентификатор Ищем в копии базы по , ВыгрузкаЗагрузкаДанныхXML.epf
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Как удалить с печатной формы документа колонку.
- не могу удалить строки из Табличного Поля
- Удалить из конфигуратора документ либо модуль документа
- Как быстро удалить записи из регистра сведений
- Удалить записи регистра накопления
- Свойства НОВОЙ записи при копировании записи Регистра Сведений
- Нужно удалить записи регистра сведений "Удалить права доступа пользователей"
- Как в Excel поставить/удалить группировку по некоторым строкам, и удалить по другим
- v8: как удалить записи из регистра сведений подчиненный регистратору, у которого нету ссылки на реги
- Удалить из регистра бухгалтерии записи с битым регистратором
- Сообщение пользователю при записи на сервере о текущем состояние записи
В этой группе 1С
- mySql. Долго выполняется запрос из-за фазы Sending data
- Тип Отбор - ввод по строке (АвтоПодборТекста(), ОкончаниеВводаТекста())
- УФ: программно обратиться к свойствам командной панели для табличной части
- Изменение данных справочника в дереве значений
- Не срабатывает установка фиксированных настроек в СКД
- Перестали корректно работать регламентные задания MS Server 2012
- Как "отключить" план обмена по условию?
- Обмен между конфами УТ+Розница (обе для Украины)
- Ведомость взаиморасчетов с контрагентами УПП
- Для УТ11 нужны печатные формы мх-1 и мх-3
- СКД группировка максимум, затем сумма
- УФ почему то некоторые формы объектов 1с открывает модально, другие нет
- БлокировкаДанных. Метод ИспользоватьИзИсточникаДанных
- недостаточно свободной памяти на сервере 1с предприятия
- v7: Как вывести в виде выпадающего списка названия листов Excel
- Запись в регистр без проведения документа
- Запретить редактирование списка баз
- УТ11 и драйвера на весы
- ТЗ для планов обмена
- v8: Программное создание колонки нет возможности редактирования