Имя: Пароль:
1C
1С v8
Нужно изменить данные в справочнике
,
0 Nolan
 
15.05.15
11:08
Добрый день! Есть справочник "Номенклатура", в этот справочник я вывожу таблицу значений, в котором выводятся записи регистра сведений "Тарифная сетка". Вот задача такая, чтобы когда я изменяю строку этой таблицы значений в справочнике "Номенклатура", создавалась запись в регистре сведений "Тарифная сетка" текущей датой. Знаю что для этого мне нужно создать две процедуры

&НаКлиенте
Процедура ТарифнаяСетка1ПриОкончанииРедактирования(Элемент, НоваяСтрока, ОтменаРедактирования)
ТарифнаяСетка1ПриОкончанииРедактированияНаСервере();
КонецПроцедуры

&НаСервереБезКонтекста
Процедура ТарифнаяСетка1ПриОкончанииРедактированияНаСервере()    
КонецПроцедуры

Что писать в процедуре &НаСервереБезКонтекста???
1 hhhh
 
15.05.15
11:12
ну, создать запись в регистре сведений. Это же очевидно.
2 Nolan
 
15.05.15
11:16
(1) как их создать кодом?
3 D_E_S_131
 
15.05.15
11:20
(2) Через менеджер записи.
4 Nolan
 
15.05.15
11:22
(3) можешь подсказать где прочитать об этом?
5 Nolan
 
15.05.15
11:23
(3) или может пример какой-то?
6 tixis
 
15.05.15
11:34
(5) РегистрыСведений."ТвойРЕгистр".СоздатьМенеджерЗаписи();
все есть в СП, если у тебя нет СП, тут много народу кто продает
7 Nolan
 
15.05.15
11:37
(6) Спасибо, сейчас буду пробовать.
8 Nolan
 
15.05.15
11:57
Сделал так
&НаСервереБезКонтекста
Процедура ТарифнаяСетка1ПриОкончанииРедактированияНаСервере()
ТарифнаяСетка1 = РегистрыСведений.ТарифнаяСетка.СоздатьМенеджерЗаписи();
ТарифнаяСетка1.Разряд = Разряд;
ТарифнаяСетка1.Период = ТекущаяДата();
ТарифнаяСетка1.Прочитать();

КонецПроцедуры

что-то не правильно переменная не определенна. Подскажите как исправить?
9 Бубка Гоп
 
15.05.15
11:59
(8) передавай разряд параметром. без контекста же
10 SirRoland
 
15.05.15
11:59
На разряд не ругается?
Вы ведь &НаСервереБезКонтекста
11 Nolan
 
15.05.15
12:01
(10) Вот ругается именно на разряд
12 Бубка Гоп
 
15.05.15
12:01
(11) -> (9)
13 Nolan
 
15.05.15
12:02
(12) ага, понял) сейчас попробую)
14 Nolan
 
15.05.15
18:33
вот так все работает
МенеджерЗаписи = РегистрыСведений.ТарифнаяСетка.СоздатьМенеджерЗаписи();
    МенеджерЗаписи.Разряд = Разряд;
    МенеджерЗаписи.Номенклатура = Номенклатура;
    МенеджерЗаписи.Период = ТекущаяДата();    
    МенеджерЗаписи.СуммаИсполнение = СуммаИсполнение;
    МенеджерЗаписи.СуммаКонтроль = СуммаКонтроль;
    МенеджерЗаписи.СуммаОбработка = СуммаОбработка;
    МенеджерЗаписи.Записать();

спасибо за помощь
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.