|
Нужно изменить данные в справочнике |
☑ |
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
|
вот так все работает
МенеджерЗаписи = РегистрыСведений.ТарифнаяСетка.СоздатьМенеджерЗаписи();
МенеджерЗаписи.Разряд = Разряд;
МенеджерЗаписи.Номенклатура = Номенклатура;
МенеджерЗаписи.Период = ТекущаяДата();
МенеджерЗаписи.СуммаИсполнение = СуммаИсполнение;
МенеджерЗаписи.СуммаКонтроль = СуммаКонтроль;
МенеджерЗаписи.СуммаОбработка = СуммаОбработка;
МенеджерЗаписи.Записать();
спасибо за помощь
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший