Имя: Пароль:
1C
 
Почему у меня регистр не обнуляется??
0 Мисти
 
01.03.17
21:52
НаборЗаписей = РегистрыСведений.Кос_НомераСчетов.СоздатьНаборЗаписей();
            НаборЗаписей.Отбор.Собственник.Значение      = Источник.Кос_Собственник.Ссылка;
            НаборЗаписей.Отбор.НомерЧислом.Значение  =  НомерБезПрефикса;
            НаборЗаписей.Отбор.Удаленный.Значение  =  Ложь;
            НаборЗаписей.Отбор.Период.Значение  =  Источник.Дата;
            
            НаборЗаписей.Отбор.Собственник.Использование = Истина;
            НаборЗаписей.Отбор.НомерЧислом.Использование = Истина;
            НаборЗаписей.Отбор.Удаленный.Использование = Истина;
            НаборЗаписей.Отбор.Период.Использование = Истина;
            НаборЗаписей.Прочитать();
            НаборЗаписей.Очистить();
            НаборЗаписей.Записать(Истина);
1 Fram
 
01.03.17
22:01
(0) Отладчик так и не получилось освоить? :)
что в наборе после Прочитать?
2 Мисти
 
01.03.17
22:11
Одна запись.
Очистить - 0 записей.
Смотрю в базе - все записи на месте.
3 Fram
 
01.03.17
22:18
ну варианта 3
1. транзакция отменяется далее в коде
2. не в той базе смотрите
3. в базе надо нажать кнопочку Обновить, чтобы увидеть изменения
4 EvgeniuXP
 
01.03.17
22:19
зачем истина, когда есть установить :)
5 Мисти
 
01.03.17
22:21
EvgeniuXP, а как? Я где-то давно это украла, везде работает.
(3) Видимо, есть 4 вариант. Пока не знаю, какой.
6 EvgeniuXP
 
01.03.17
22:23
НаборЗаписей.Отбор.ФизЛицо.Установить(ФизЛицо);
    НаборЗаписей.Отбор.Тип.Установить(Перечисления.ТипыКонтактнойИнформации.Адрес);
    НаборЗаписей.Отбор.Вид.Установить(Справочники.ВидыКонтактнойИнформации.ФактАдресФизЛица);
7 EvgeniuXP
 
01.03.17
22:23
Значение и Использование можешь выкинуть.
8 Мисти
 
01.03.17
22:25
А есть разница? В след. раз так напишу!
9 Lexey_
 
01.03.17
22:26
(8) НаборЗаписей.Прочитать();
    НаборЗаписей.Очистить();
тоже выкинь
10 EvgeniuXP
 
01.03.17
22:27
(8) в два раза меньше строк кода... хотя если чукча писатель, еще и воровством занимается
11 EvgeniuXP
 
01.03.17
22:28
(9) и не знает, что установив отборы там и так набор пустой и можно не читать и не очищать :)
12 EvgeniuXP
 
01.03.17
22:29
то надо лечиться, т.е. на курсы.
13 Мисти
 
01.03.17
22:31
Почему это пустой с отборами? Я своими глазами видела  1
Сейчас, кстати, 0. Что-то там с периодом не то.
14 Lexey_
 
01.03.17
22:33
(13) 1 это после Прочитать(), а до - 0, пустой
15 Мисти
 
01.03.17
22:37
Установить отборы и записать? Тогда обнулится, что ли?
Короче, заработало! Там было сразу 3 ошибки - Удаленный я ставила наоборот, период не тот и поначалу у Записать() не было Истины!
16 Fram
 
01.03.17
22:40
(15)
РегистрСведенийНаборЗаписей.<Имя регистра сведений>.Записать (InformationRegisterRecordSet.<Имя регистра сведений>.Write)
РегистрСведенийНаборЗаписей.<Имя регистра сведений> (InformationRegisterRecordSet.<Имя регистра сведений>)
Записать (Write)
Синтаксис:

Записать(<Замещать>)
Параметры:

<Замещать> (необязательный)

Тип: Булево.
Определяет режим замещения существующей записи в соответствии с текущими установками отбора. Истина - перед записью существующие записи будут удалены. Ложь - записи будут дописаны к уже существующим в информационной базе записям.
Значение по умолчанию: Истина. <---------
17 Мисти
 
01.03.17
22:42
Тогда я не понимаю. Потому что видела количество 1 до записать, 0 - после и в базе всё равно оставалось.
18 Fram
 
01.03.17
22:43
(17) самая банальная невнимательность!
19 Мисти
 
01.03.17
23:00
Новая заковыка!
            Запрос = Новый Запрос;
            Запрос.УстановитьПараметр("ВыбПериод", НачалоГода(Источник.Дата));
            Запрос.УстановитьПараметр("ВыбСобственник", Источник.Кос_Собственник);
            Запрос.УстановитьПараметр("ВыбУдаленный", Ложь);
            Запрос.Текст =
            "ВЫБРАТЬ ПЕРВЫЕ 1
            |    Кос_НомераСчетовСрезПоследних.НомерЧислом
            |ИЗ
            |    РегистрСведений.Кос_НомераСчетов.СрезПоследних(
            |            &ВыбПериод,
            |            Собственник = &ВыбСобственник
            |                И Удаленный = &ВыбУдаленный) КАК Кос_НомераСчетовСрезПоследних
            |
            |УПОРЯДОЧИТЬ ПО
            |    Кос_НомераСчетовСрезПоследних.НомерЧислом УБЫВ";
20 Мисти
 
01.03.17
23:02
У меня там есть запись от прошлого года.
Я задаю период - этот год, по идее результат запроса должен быть пустой.
Почему мне выдают прошлогоднюю  запись?
Мне нужно было завести какой-то специальный реквизит для периода? Период, который образовался от периодического реквизита - не отбирает?
21 Lexey_
 
01.03.17
23:13
(20) "Почему мне выдают прошлогоднюю  запись?" потому что она является последней на дату &ВыбПериод
22 Fram
 
02.03.17
06:07
(20) как думаете, почему ваши ожидания не имеют ничего общего с действительностью?
Ответ в (12).
Периодический регистр сведений это азы 1с 8!!!
23 Мимохожий Однако
 
02.03.17
06:44
(0) "НаборЗаписей.Отбор.Собственник.Значение      = " Три точки прикольны
24 EvgeniuXP
 
02.03.17
21:47
(15) молодец, это третья ошибка, и нашла сама :)
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс