|   |   | 
| 
 | Не хочет программно добавляться запись в Регистр сведений | ☑ | ||
|---|---|---|---|---|
| 0
    
        napagokc 18.12.12✎ 11:48 | 
        Не могу понять, что не так делаю...
  Пишу обработку, которая будет заменять МОЛ. МОЛ хранятся в регистре сведений - периодический, независимый. В обработке есть всего три реквизита: 1) ДатаМОЛ - дата, начиная с которой будет установлен новый МОЛ 2) Старый МОЛ 3) Новый МОЛ Программмно по отладчику все хорошо проходит, находит все, что нужно, заполняет все правильно, никаких ошибок нет. Но вот результата в базе я не вижу. То есть, запись не сохраняется. МенеджерЗаписиОС = РегистрыСведений.ОснСредства.СоздатьМенеджерЗаписи(); Пока Выборка.Следующий() Цикл Состояние("Производится замена МОЛ в ОС: " + Выборка.ОС); МенеджерЗаписиОС.Период = ДатаМОЛ; МенеджерЗаписиОС.МОЛ = НовыйМОЛ; МенеджерЗаписиОС.ОС = Выборка.ОС; Попытка МенеджерЗаписиОС.Записать(Истина); Исключение Сообщить("Не удалось заменить МОЛ для ОС: " + Выборка.ОС, СтатусСообщения.ОченьВажное); КонецПопытки; ОбработкаПрерыванияПользователя(); КонецЦикла; Наставьте на путь истинный, а то сбился я... :( | |||
| 1
    
        Defender aka LINN 18.12.12✎ 11:49 | 
        МенеджерЗаписиОС = РегистрыСведений.ОснСредства.СоздатьМенеджерЗаписи();
  в цикл засунь | |||
| 2
    
        Maxus43 18.12.12✎ 11:50 | 
        (1) хм... накуя?     | |||
| 3
    
        napagokc 18.12.12✎ 11:50 | 
        (1) Пробовал, не помогает     | |||
| 4
    
        Maxus43 18.12.12✎ 11:51 | 
        Мол - ресурс?     | |||
| 5
    
        napagokc 18.12.12✎ 11:52 | 
        (4) Да, МОЛ - ресурс.
  ОС - измерение. Больше измерений нет. | |||
| 6
    
        Maxus43 18.12.12✎ 11:52 | 
        запрос на всякий покажи     | |||
| 7
    
        zak555 18.12.12✎ 11:53 | 
        (2) запись - это запись, а не набор     | |||
| 8
    
        Maxus43 18.12.12✎ 11:54 | 
        (7) и?     | |||
| 9
    
        napagokc 18.12.12✎ 11:55 | 
        (6)
  Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ОснСредстваСрезПоследних.ОС КАК ОС, | ОснСредстваСрезПоследних.МОЛ |ИЗ | РегистрСведений.ОснСредства.СрезПоследних(&Дата, ) КАК ОснСредстваСрезПоследних |ГДЕ | ОснСредстваСрезПоследних.МОЛ = &МОЛ; Запрос.УстановитьПараметр("Дата", ДатаМОЛ); Запрос.УстановитьПараметр("МОЛ", СтарыйМОЛ); Выборка = Запрос.Выполнить().Выбрать(); | |||
| 10
    
        napagokc 18.12.12✎ 11:56 | 
        (9) Кавычку забыл. Убрал лишние регистры из запроса, которые только читабельность тут ухудшают, а суть не меняют. Так-то, запрос верный     | |||
| 11
    
        zak555 18.12.12✎ 11:58 | 
        (8) он и создаёт в обходе запись одну     | |||
| 12
    
        cw014 18.12.12✎ 11:59 | 
        Что то какой то глюк с менеджером записи есть такой. Он не меняет отбор, если заменять у него реквизиты     | |||
| 13
    
        Maxus43 18.12.12✎ 11:59 | 
        (11) да, но в цикле ключевые поля перезаполняются, соответственно позиционируется на другой...     | |||
| 14
    
        Maxus43 18.12.12✎ 12:00 | 
        хз, юзай наборзаписей, там косяков не видел     | |||
| 15
    
        MSII 18.12.12✎ 12:02 | 
        Перед записью вызывай Прочитать()     | |||
| 16
    
        napagokc 18.12.12✎ 12:02 | 
        ннда... Я же проверял :( Видимо, коряво проверил. Действительно, если 
  МенеджерЗаписиОС = РегистрыСведений.ОснСредства.СоздатьМенеджерЗаписи(); внести в цикл, то норм работает. Надо ж так :( Всем спасибо. | |||
| 17
    
        Maxus43 18.12.12✎ 12:04 | 
        мда, пора читать учебники... думал всегда и так работать будет)     | |||
| 18
    
        Жан Пердежон 18.12.12✎ 12:04 | 
        (13) ага, вот прямо так само берет и позиционируется, да?)     | |||
| 19
    
        Buster007 18.12.12✎ 12:06 | 
        (18) ну по идее менеджер позиционироваться должен перед записью -> должно работать)     | |||
| 20
    
        Defender aka LINN 18.12.12✎ 13:08 | 
        (19) Фирма 1С юзает другие идем     | |||
| 21
    
        Defender aka LINN 18.12.12✎ 13:08 | 
        *идеи     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |