Имя: Пароль:
1C
1С v8
как удалить несуществующий документ о_О
0 grayshadow
 
24.06.16
20:49
побилась база УТ 10.3 под 8.1
в таблице ОтчетОРозничныхПродажах.Товары появились записи с пустой ссылкой на документ (на скрине видно: http://www.screencast.com/t/nJK4CAx5so); отбор стоял на пустое ЗначениеУсловияАвтоматическойСкидки
из-за этого нельзя обновить конфу, ругается, что ЗначениеУсловияАвтоматическойСкидки не должно быть null
ТиИ вываливается с той же ошибкой
chdbfl ничего не находит
я в тупике - как это удалить?!:)
1 Cyberhawk
 
24.06.16
20:52
ИР тебе в помощь
2 Garykom
 
гуру
24.06.16
20:54
Почисти

ДокументаВыборка = Документы.ОтчетОРозничныхПродажах.Выбрать();
Пока ДокументаВыборка.Следующий() Цикл
ДокументаОбъекта = ДокументаВыборка.ПолучитьОбъект();
Для Каждого ТекСтр Из ДокументаОбъекта Цикл
  ТекСтр.ЗначениеУсловияАвтоматическойСкидки  = "";
КонецЦикла;
КонецЦикла;

Тока код слегка дописать
3 grayshadow
 
24.06.16
20:55
(1) ИР - попробую скачать...
(2) так не будет там этого документа! ссылки же нету на него... консоль запросов на "выбрать ссылка... где ЗначениеУсловия... есть null" ничего не возвращает
4 grayshadow
 
24.06.16
20:59
(1) а под 8.1 есть вообще ИР?
5 youalex
 
24.06.16
21:00
(0) через скуль можно очистить. Маловероятно, но может быть индекс еще.  
(3) ВЫБРАТЬ Ссылка ИЗ Документ.ОтчетОРозничныхПродажах.Товары КАК Товары ЛЕВОЕ СОЕДИНЕНИЕ Документ.ОтчетОРозничныхПродажах КАК Док По Товары.Ссылка = Док.Ссылка ГДЕ Док.Ссылка is null
6 grayshadow
 
24.06.16
21:01
(5) файловая база, но может затащить в скуль...
но что делать с результатом запроса?:)
7 Garykom
 
гуру
24.06.16
21:01
(3) >так не будет там этого документа! ссылки же нету на него

Так сложно понять что нужно грохнуть эти кривые ссылки?
8 grayshadow
 
24.06.16
21:02
(7) я это прекрасно понимаю и спрашиваю: КАК грохнуть?:)
9 mehfk
 
24.06.16
21:02
(0) А если попробовать создать док с нужным гуидом?
10 Garykom
 
гуру
24.06.16
21:02
(7)+ Т.е. не грохнуть в смысле удалить/очистить а наоборот правильно заполнить чтобы не null было.
11 grayshadow
 
24.06.16
21:03
(9) нету гуида, нету ссылки на документ, записи в Товарах не принадлежат ни одному из документов ОРП
12 youalex
 
24.06.16
21:04
(6) результат запроса покажет какие записи "битые". но его можно сразу в скуле выполнить. Кстати не факт что оно зальется.
Еще есть особо изощренный способ - сохранить конфу, выгрузить доки в хмель обработкой, удалить док из конфы, обновить, вернуть док в конфу - загрузить из хмеля
13 grayshadow
 
24.06.16
21:04
(10) привязать к какому-то из существующих ОРП? как? у меня есть только вариант хекс-редактора
14 grayshadow
 
24.06.16
21:06
(12) битые, да, вопрос как до них достучаться через 1с, когда нет документа:)
15 grayshadow
 
24.06.16
21:07
(12) xml вариант, но база толстая (dt 1 гб)... на крайняк можно будет попробовать...
16 mehfk
 
24.06.16
21:07
(11) В твбличной части есть ссылка.
17 grayshadow
 
24.06.16
21:08
(12) интересно ВыгрузкаЗагрузкаXML увидит пустую ссылку...
18 grayshadow
 
24.06.16
21:08
(16) покажите глупому юзверю, как ее увидеть?:)
19 mehfk
 
24.06.16
21:10
Ну так в (5) запрос.
20 youalex
 
24.06.16
21:10
(17) если у тебя нет записанного документа с нулевым гуидом, то нет)
21 mehfk
 
24.06.16
21:12
(19)+ там будет "Объект не найден..........", останется только преобразоватьв гуид.
22 grayshadow
 
24.06.16
21:13
ВЫБРАТЬ
    ДокТовары.Ссылка
ИЗ
    Документ.ОтчетОРозничныхПродажах.Товары КАК ДокТовары
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ОтчетОРозничныхПродажах КАК Док
        ПО ДокТовары.Ссылка = Док.Ссылка
ГДЕ
    Док.Ссылка ЕСТЬ NULL

Ссылка
<Объект не найден> (180:8cb3ac9e17e12aee11e60effa1601345)
<Объект не найден> (180:8cb3ac9e17e12aee11e60effa1601345)
<Объект не найден> (180:8cb3ac9e17e12aee11e60effa1601345)
<Объект не найден> (180:8cb3ac9e17e12aee11e60effa1601345)
<Объект не найден> (180:8cb3ac9e17e12aee11e60effa1601345)
и пустая строчка, которая и есть это самое
23 youalex
 
24.06.16
21:13
(21) нет. прикол в том что там (в таблице ТЧ) - Ссылка - пустая, как я понял.  То есть все интереснее)
24 grayshadow
 
24.06.16
21:13
(23) совершенно верно:)
25 youalex
 
24.06.16
21:15
Попробуй еще (но очень не факт опять же) - через:
Удаление = Новый УдалениеОбъекта(Документы.ОтчетОРозничныхПродажах.ПустаяСсылка());
Удаление.ОбменДанными.Загрузка = Истина;
Удаление.Записать();
26 mehfk
 
24.06.16
21:15
(24) Оноочо, Михалыч. Походу это результат кривово ТиИ 8.1.
27 mehfk
 
24.06.16
21:17
Я бы делал: Tool_1cd, выгрузка таблицы в xml, редактирование xml руками и загрузка его обратно.
28 grayshadow
 
24.06.16
21:18
(25) не помогло, строчки остались
29 mehfk
 
24.06.16
21:18
Одновременно с этим попробовать выгрузить dt, загрузить в скульную базу и там уже грохнуть прямым запросом.
30 grayshadow
 
24.06.16
21:18
(26) да, до меня эта база уже сыпалась:(
31 mehfk
 
24.06.16
21:20
(30) Они (1с) создание шапок при наличии ТЧ в ТиИ только относительно недавно сделали (два-три ода как), до этого там было черт знает что.
32 youalex
 
24.06.16
21:21
(28) в принципе да, логично. раз ссылки нет (пустой) в основной таблице, то ничего не удаляет.  Тогда остается скуль и манипуляции с выгрузкой/загрузкой данных документа.
33 mehfk
 
24.06.16
21:21
В общем будет скучно - пиши мой ник псина народ ру.
34 grayshadow
 
24.06.16
21:22
8.1 вообще задницо какое-то:)
ок, спасибо коллеги, завтра на свежую голову попробую Tool_1cd и удаление скулем! (то и другое - нетривиальные задачи:)
35 grayshadow
 
24.06.16
21:23
(33) люблю собак;) если что-то не пойдет то обязательно:)
36 mehfk
 
24.06.16
21:29
скулем можно и апдейт таблицы тч сделать с присвоением гуида, и шапку попробовать создать (это сложнее)
37 grayshadow
 
24.06.16
21:30
нахрен шапку, мне бы конфу обновить... это узел РИБ, и у них обмен не идет...
38 mehfk
 
24.06.16
21:31
(37) Может проще из ЦБ заново начальный образ сформировать?
39 grayshadow
 
24.06.16
21:32
(38) в эту сторону тоже думала... будет долго и печально, зато наверняка...
40 grayshadow
 
24.06.16
21:34
наверно завтра все сразу буду делать... пока образ генерится, попробую почистить старую базу
41 mikecool
 
24.06.16
22:01
создать в 1с новый документ, прописать его гуид битым ссылкам - не предлагать?
42 4St
 
25.06.16
21:30
А если создать новый документ ОРП, и через УстановитьСсылкуНового присвоить ему гуид из (22)?
Только с учётом того,что порядок символов в гуиде меняется
43 youalex
 
25.06.16
22:24
(42) "и пустая строчка, которая и есть это самое"
44 mistеr
 
25.06.16
22:37
(23) (24) По идее ТИИ с опцией "удалять объект" должно справиться.