Имя: Пароль:
1C
1С v8
Битые ссылки в таблице регистра "Остатки"
,
0 mashunka
 
16.03.17
13:26
День добрый!
Конфигурация УТ10.3. После свертки БД и удаления помеченных объектов в отчете по взаиморасчетам с контрагентами появились остатки по документам <объект не найден>. При этом оборотов по этим документам нет, только остатки - при попытке развернуть отчет за период, в который попадет удаленный документ он просто исчезает - и из остатков, и из оборотов.
1. Удаление выполнялось штатными средствами, программа дала удалить документы, ссылок на них не было.
2. В самом регистре "Взаиморасчеты с контрагентами по документам расчетов" этих ссылок нет.
3. Простейший отчет по ВИРТУАЛЬНОЙ таблице ВзаиморасчетыСконтрагентамиПоДокументамРасчетовОстатки дает строки с этими битыми ссылками.
4. Тестирование и исправление с установкой "Очищать пустые ссылки" не помогло. Пересчет итогов тоже.

ВОПРОС: как еще можно удалить строки из таблицы остатков? Как-то программно это можно сделать?
1 mehfk
 
16.03.17
13:33
2 mashunka
 
16.03.17
13:38
(1) пересчет итогов я делала уже раз 5, не помогает :(
3 youalex
 
16.03.17
13:44
(2) из конфигуратора делали пересчет?
4 mashunka
 
16.03.17
13:44
(3) и из конфигуратора, и из предприятия
5 Рэйв
 
16.03.17
13:49
(0)Выбери запросом все битые регистраторы

Выбрать Рег.Регистратор
Из РегистрНакопления.Твой КАК Рег
ГДЕ Рег.Регистратор.ссылка Есть NULL

тРез=Запрос.Выполнить().Выгрузить()
потом:
Для Каждого Стр из тРез цикл
   Набор=РегистрыНакопления.ТвойРег.СоздатьНаборЗаписей();
   Набор.Отбор.Регистратор.Установить(Стр.регистратор);
   Набор.Записать(Истина);
Конеццикла;

//

ну и пересчет конечно потом
6 Рэйв
 
16.03.17
13:51
+(5)выбрать РАЗЛИЧНЫЕ в запросе.
7 mashunka
 
16.03.17
13:55
(5) в том-то и дело, что в таблице регистра НЕТ таких записей и  подобный запрос возвращает пусто.
А вот если я делаю запрос:
ВЫБРАТЬ
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом,
ИЗ
    РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.Остатки(, ) КАК ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки

Тогда только результирующая таблица содержит битые ссылки! И как мне их удалить отсюда? Из таблицы ОСТАТКИ
8 youalex
 
16.03.17
14:04
(7) >И как мне их удалить отсюда?
если грубо, можно сохранить конфу, выгрузить записи из регистра в xml,  снести его в конфигураторе, обновить базу, потом все вернуть
Или попробовать сделать "погашающую" запись, с тем же набором измерений и отрицательными ресурсами,  через набор записей.
Но лучше все-таки в текущей ситуации разобраться..
9 Dmitrii
 
гуру
16.03.17
14:09
Пробовали выключить использование итогов и текущих итогов для проблемного регистра, а потом включить?
10 Рэйв
 
16.03.17
14:18
(7)Выгрузи базу в dt и загрузи обратно.Оно должно само все сделать как надо
11 mashunka
 
16.03.17
14:25
(8) если грубо, то можно еще и выгрузку данных в идентичную конфигурацию сделать
Но хотелось бы все-таки вариант попроще...
12 mashunka
 
16.03.17
14:28
(10) это как раз клиент прислал базу, выгруженную в дт
так что не помогает
13 mashunka
 
16.03.17
14:38
(9) ну вот сейчас попробовала, тоже не сработало...
14 sitex
 
naïve
16.03.17
15:04
(0) Может как вариант восстановить и удалить , если их не много.
15 DrShad
 
16.03.17
15:11
(13) а как вы смотрите что в физической таблице их нет?
16 НЕА123
 
16.03.17
15:17
(5)+(7) = Киев, дядька, бузина
не?