|   |   | 
| 
 | СоздатьНаборЗаписей регистр сведений | ☑ | ||
|---|---|---|---|---|
| 0
    
        letovd 18.07.19✎ 09:42 | 
        Для чего нужно указывать отбор в регистре сведений, при использовании метода СоздатьНаборЗаписей?
 И почему НаборЗаписей нужно очищать после записи (если планируется запись в цикле нескольких наборов), или это не обязательно? | |||
| 1
    
        Cyberhawk 18.07.19✎ 09:44 | 
        Отбор необязательно указывать у НЗ. Это у МЗ обязательно перед чтением заполнить все поля ключа.     | |||
| 2
    
        Cyberhawk 18.07.19✎ 09:45 | 
        Очищать тоже конечно же необязательно. Просто надо понимать что происходит на каждой строчке кода и сопоставлять это с тем, что требуется.     | |||
| 3
    
        letovd 18.07.19✎ 09:48 | 
        (1) Без отбора в цикле записывает только одну запись в регистр     | |||
| 4
    
        Cyberhawk 18.07.19✎ 09:49 | 
        (3) Сочувствую     | |||
| 5
    
        ДенисЧ 18.07.19✎ 09:55 | 
        (3) А зачем писать в цикле?     | |||
| 6
    
        letovd 18.07.19✎ 10:00 | 
        (5) Нужно несколько записей.
 Сейчас проверил, без отбора записывает, если сперва прочитать регистр, в общем нужно разбираться с этим делом. Статью бы хорошую найти | |||
| 7
    
        ДенисЧ 18.07.19✎ 10:02 | 
        (6) "Статью бы хорошую найти"
 Любая книга по программированию в 1с | |||
| 8
    
        ДенисЧ 18.07.19✎ 10:03 | 
        (6) И да
 нз = РегистрыСведений.МойРегистр.СоздатьНаборЗаписей(); з = нз.Добавить();з.Реквизит=Реквизит1;з.Ресурс = Ресурс1; з = нз.Добавить();з.Реквизит=Реквизит2;з.Ресурс = Ресурс2; нз.Записать(Истина); Одной записью сделает несколько записей... | |||
| 9
    
        letovd 18.07.19✎ 10:10 | 
        (8) Да нет, у меня записи берут данные из выборки     | |||
| 10
    
        letovd 18.07.19✎ 10:14 | 
        (8) 
 нз.Записать(Истина); Зачем указывать "явно" истина, если это значение по умолчанию и имеет смысл лишь нз.Записать(Ложь) | |||
| 11
    
        kuzyara 18.07.19✎ 10:16 | 
        >Для чего нужно указывать отбор в регистре сведений, при использовании метода СоздатьНаборЗаписей? 
 Представь что для того чтобы сделать update набора записей - нужно указать where какие перезатрутся. | |||
| 12
    
        Cyberhawk 18.07.19✎ 10:21 | 
        (10) Для повышения наглядности / читаемости кода. На сам исполняемый код это не влияет конечно.     | |||
| 13
    
        ДенисЧ 18.07.19✎ 10:21 | 
        (10) Чтобы было понятно сразу. У меня нет привычки опираться на умолчания.     | |||
| 14
    
        ДенисЧ 18.07.19✎ 10:22 | 
        (9) Перепишем код
 нз = РегистрыСведений.МойРегистр.СоздатьНаборЗаписей(); выб = Запрос.Выполнить().Выбрать(); Пока выб.Следующий(); з = нз.Добавить(); з.Реквизит=Выб.Реквизит; з.Ресурс = выб.Ресурс; КонецЦикла; нз.Записать(Истина); | |||
| 15
    
        kuzyara 18.07.19✎ 10:24 | 
        > Статью бы хорошую найти
 web.archive.org/web/20180823045849/http://1c-wiki.ru/wiki/Регистр_сведений | |||
| 16
    
        letovd 18.07.19✎ 10:25 | 
        (12) Некое "правило" хорошего тона 1С?
 (14) у меня точно такой же, я же и писал изначально (15) Спасибо!!! | |||
| 17
    
        ДенисЧ 18.07.19✎ 10:31 | 
        (16) 1. Правило написания красивого кода
 2. И что у тебя не работало? У меня работает, у тебя нет? У нас разные 1с? | |||
| 18
    
        letovd 18.07.19✎ 10:32 | 
        (17) я метод "записать" не вытащил из цикла     | |||
| 19
    
        НичегоНе Понятно 18.07.19✎ 10:40 | 
        (15)Твою мать, то чувство когда wiki которую ты писал, даже упавшую вытаскивают из архива и называют еще хорошей статьей. Надо возвращать ее на место значит.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |