Имя: Пароль:
1C
1С v8
v8: Последовательность "ПартионныйУчет", удалить записи с пустым регистратором..
0 dave2000
 
22.10.13
17:58
Случилась беда! В ходе експериментов с последовательностью "ПартионныйУчет", там появились записи с пустым регистратором. Как их удалить??

Вот результат запроса:
http://i.piccy.info/i8/163f2de2be2cd070a64774a14fb7d3bd/1382449703/11063/222003/2013_10_22_164252.png



Вот сам запрос:

    ВЫБРАТЬ
        "ПартионныйУчет.Границы" КАК Последовательность,
        ПартионныйУчетГраницы.МоментВремени КАК МоментВремени,
        ПартионныйУчетГраницы.Организация КАК Организация,
        ПартионныйУчетГраницы.ПроведенВХронологическойПоследовательности КАК ПроведенВХронологическойПоследовательности,
        ПартионныйУчетГраницы.Период КАК Период,
        ПартионныйУчетГраницы.Регистратор КАК Регистратор
    ИЗ
        Последовательность.ПартионныйУчет.Границы КАК ПартионныйУчетГраницы
    ГДЕ
        ПартионныйУчетГраницы.Организация В(&Организации)
    
    ОБЪЕДИНИТЬ ВСЕ
    
    ВЫБРАТЬ
        "ПартионныйУчет",
        ПартионныйУчет.МоментВремени,
        ПартионныйУчет.Организация,
        ПартионныйУчет.ПроведенВХронологическойПоследовательности,
        ПартионныйУчет.Период,
        ПартионныйУчет.Регистратор
    ИЗ
        Последовательность.ПартионныйУчет КАК ПартионныйУчет
    ГДЕ
        НЕ ПартионныйУчет.ПроведенВХронологическойПоследовательности
        И ПартионныйУчет.Организация В(&Организации)



Если пытаюсь получить список этих записей програмно, чтобы перезаписать с пустым набором, оно после Прочитать() выдаёт пустой набор.

Набор = Последовательности.ПартионныйУчет.СоздатьНаборЗаписей();
//Набор.Отбор.Регистратор.Установить(Неопределено);  //независимо от наличия этой строки выдаёт пустой набор
Набор.Прочитать();
Таб = Набор.Выгрузить();
Таб.ВыбратьСтроку();


Как всё таки удалить записи с пустым регистратором??? Неужели лезть в физические таблицы??
1 ВикторП
 
22.10.13
18:00
мне кажется, что в самой последовательности их - записей с пустым регистратором нет
2 bugz2003
 
22.10.13
18:10
ИЗ
        Последовательность.ПартионныйУчет.Границы КАК ПартионныйУчетГраницы
    ГДЕ
        ПартионныйУчетГраницы.Организация В(&Организации)

добавь

ГДЕ Регистратор.Дата = &ПустаяДата
3 dave2000
 
22.10.13
18:18
(1) Ты прав, я спутал записи и границы. Действительно, записей с пустым регистратором нет. Но вопрос остаётся открытым: как удалить границы с пустым регистратором? (на картинке помечены стрелками)

(2) Так оно их просто не будет показывать в запросе, а нам же нужно именно удалить все границы с пустым регистратором.
4 dave2000
 
23.10.13
10:23
Что, ни у кого больше нет идей, как удалить эти пустые границы?
http://i.piccy.info/i8/163f2de2be2cd070a64774a14fb7d3bd/1382449703/11063/222003/2013_10_22_164252.png

Именно границы, а не записи. С записями есть возможность работать програмно, а с границами нельзя :(
5 vvp91
 
23.10.13
10:40
Граница с пустым регистратором - это правильные границы. Эти границы показывают, что последовательность актуальна.

Удалять их не надо! А надо читать большие желтые книжки.
6 pumbaEO
 
23.10.13
10:43
(5) где в желтых книжках написано?
7 vvp91
 
23.10.13
10:43
>> (4) С записями есть возможность работать програмно, а с границами нельзя
Кто сказал такую глупость?
У менеджера последовательности есть методы работы с границами. Как ни странно, но они называются: УстановитьГраницу, ПолучитьГраницу, ПолучитьГраницы.