Имя: Пароль:
1C
1С v8
Не назначается дата в поле Период в независимом периодическом РегистреСведений 1с
0 9451523
 
28.03.22
08:49
Привет Всем

Пытаюсь удалить запись периодического независимого РегистраСведений , запись не удаляется
осмотрел в отладчике поле Период показывает 01.01.0001 хотя должна присвоиться значение с типом Дата, вот код процедуры:

Процедура УдалитьЗаписьРегистра(Структура) Экспорт
Движение = РегистрыСведений.Вызовы.СоздатьМенеджерЗаписи();
Движение.Период = Структура.Запись.Период;
Движение.Оператор = Структура.Запись.Оператор;
Движение.Прочитать();
Если Движение.Выбран() Тогда
Движение.Удалить();
КонецЕсли;
КонецПроцедуры
Структура это результат выборки из запроса
какой уже день бьюсь не могу решить задачу, платформа 8.3 самописная кофигурация
1 acht
 
28.03.22
08:58
Ну показывай, что у тебя в структуре
2 acht
 
28.03.22
09:04
И скриншот периодичности регистра заодно
3 Vlaloplo
 
28.03.22
09:07
Заходишь в стандартные реквизиты регистра, находишь период, в свойствах выставляешь "Заполнять из данных заполнения", profit
4 Vlaloplo
 
28.03.22
09:07
Предположу, что на 8.2 это дело пытаешься провернуть
5 Vlaloplo
 
28.03.22
09:08
Ну или действительно в структуре заполнения у тебя пустая дата
6 9451523
 
28.03.22
09:13
нет дата не пустая

это сам запрос
Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    Вызовы.Период КАК Период,
    |    Вызовы.Компания КАК Компания,
    |    Вызовы.Водитель КАК Водитель,
    |    Вызовы.ВидЗапроса КАК ВидЗапроса,
    |    Вызовы.Запрос КАК Запрос,
    |    Вызовы.СтрокаДаты КАК СтрокаДаты,
    |    Вызовы.Оператор КАК Оператор,
    |    Вызовы.FCD КАК FCD,
    |    Вызовы.Примечание КАК Примечание,
    |    Вызовы.Заполнен КАК Заполнен,
    |    Вызовы.СпецСообщение КАК СпецСообщение,
    |    Вызовы.Бонус КАК Бонус
    |ИЗ
    |    РегистрСведений.Вызовы КАК Вызовы
    |ГДЕ
    |    Вызовы.Период = &Период
    |    И Вызовы.Оператор = &Оператор";
    
    Запрос.УстановитьПараметр("Оператор", СтруктураОтбора.Запись.Оператор);
    Запрос.УстановитьПараметр("Период", СтруктураОтбора.Запись.Период);
    
    РезультатЗапроса = Запрос.Выполнить().Выгрузить();
    
    //ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    //
    //Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    //    
    //КонецЦикла;
    Возврат РезультатЗапроса;
7 9451523
 
28.03.22
09:14
периодичность в пределах секунды
8 9451523
 
28.03.22
09:16
вот так правильнее

Процедура УдалитьЗаписьРегистра(Структура)    Экспорт
    Движение = РегистрыСведений.Вызовы.СоздатьМенеджерЗаписи();
    Выборка = ОтборЗаписейЗапросов(Структура);
    Движение.Период = Выборка[0].Период;    
    Движение.Оператор = Выборка[0].Оператор;
    Движение.Прочитать();
    Если Движение.Выбран() Тогда
        Движение.Удалить();
        
    КонецЕсли;
КонецПроцедуры
9 9451523
 
28.03.22
09:17
в структуре дата есть но в регистре не присваевается ни как
10 Vlaloplo
 
28.03.22
09:17
(8), в (3) пробовал?
11 9451523
 
28.03.22
09:19
да поставил галочку Заполнять из данных заполнения, сработало но запись сама не удалилась хотя в отладчике дата присвоилась, в чем косяк?
12 Vlaloplo
 
28.03.22
09:24
Уверен, что запись с такими полями существует (в разрезе той же секунды)? как вариант попробуй через отбор установить эти же поля и записать пустой набор
13 Vlaloplo
 
28.03.22
09:25
14 9451523
 
28.03.22
09:27
пробывал по отбору ругается что нет такого поля период
15 rudnitskij
 
28.03.22
16:21
(0) Не проще удалить с помощью набора записей?