|
Помогите как избавиться от мутабельного параметра | ☑ | ||
---|---|---|---|---|
0
Обработка
05.03.13
✎
07:34
|
Создал подписку при проведении и при проведении пишет
Ошибка при выполнении обработчика - 'ОбработкаПроведения' по причине: Попытка передачи с клиента на сервер мутабельного значения 1-го параметра метода РазделениеЗатратОбработкаПроведения (). Процедура РазделениеЗатратОбработкаПроведения(Источник, Отказ, РежимПроведения) Экспорт // Вставить содержимое обработчика. ПроводкиРН = ОбщегоНазначения.ПолучитьНаборЗаписейПоСсылке(Источник.Ссылка, РегистрыНакопления["ЗатратыБухгалтерскийУчет"],Истина); //ТЗ = Новый ТаблицаЗначений; //ТЗ = ПроводкиРН.Выгрузить(); Для Каждого Запись ИЗ ПроводкиРН цикл Если Запись.СтатьяЗатрат.Разделение Тогда Запись.Сумма = Запись.Сумма*0.82; Запись.НоменклатурнаяГруппа = Справочники.НоменклатурныеГруппы.НайтиПоКоду("000000002"); Конецесли; КонецЦикла; Для Каждого СтрокаТЗ ИЗ ТЗ цикл Если СтрокаТЗ.СтатьяЗатрат.Разделение Тогда НоваяЗапись = ПроводкиРН.Добавить(); НоваяЗапись.Период = СтрокаТЗ.Период; НоваяЗапись.Подразделение = СтрокаТЗ.Подразделение; НоваяЗапись.СчетУчета = СтрокаТЗ.СчетУчета; НоваяЗапись.Организация = СтрокаТЗ.Организация; НоваяЗапись.СтатьяЗатрат = СтрокаТЗ.СтатьяЗатрат; НоваяЗапись.КодОперации = СтрокаТЗ.КодОперации; НоваяЗапись.НоменклатурнаяГруппа = Справочники.НоменклатурныеГруппы.НайтиПоКоду("000000003"); НоваяЗапись.Сумма = СтрокаТЗ.Сумма-(СтрокаТЗ.Сумма*0.82); Конецесли; КонецЦикла; ПроводкиРН.записать(); |
|||
1
Обработка
05.03.13
✎
07:34
|
Конечно тут нет рема:
ТЗ = Новый ТаблицаЗначений; ТЗ = ПроводкиРН.Выгрузить(); |
|||
2
sda553
05.03.13
✎
07:52
|
Ну так возьми свой Источник и сделай его не мутабельным
|
|||
3
sda553
05.03.13
✎
07:53
|
Например вместо объекта предавай ссылку
|
|||
4
Обработка
05.03.13
✎
08:07
|
(2) В саму процедуру или из процедуры дальше???
тут- ОбщегоНазначения.ПолучитьНаборЗаписейПоСсылке(Источник.Ссылка, |
|||
5
Галахад
гуру
05.03.13
✎
08:13
|
Источник это чего? Нафиг он нужен, если все равно "Источник.Ссылка"
|
|||
6
Stepa86
05.03.13
✎
08:18
|
(0) перенеси обработчик в модуль чисто северный без галки "Вызов сервера"
|
|||
7
Defender aka LINN
05.03.13
✎
08:19
|
(6) Будет валиться со словами "Обработчик не найден".
(0) Поставь в модуле с обработчиком флаги "Клиент", "Внешнее соединение" и "Сервер" |
|||
8
Stepa86
05.03.13
✎
08:24
|
(7) а с галкой клиент упадет на формировании ТЗ.
если будет валится с ошибкой "Обработчик не найден", то нужно добавить галку "Клиент (обычное приложение). |
|||
9
Defender aka LINN
05.03.13
✎
08:25
|
(8) Доктор, я вы у меня где увидели про управляемое приложение?
|
|||
10
Stepa86
05.03.13
✎
08:27
|
+(8) в ут11 и бсп обработчики размещаются в модулях с галками "Сервер", "Внешнее соединение", "Клиент (Обычное приложение) и без галки "Вызов сервера" и это считаются чисто серверными модулями с обратной совместимостью для обычного приложения
|
|||
11
Stepa86
05.03.13
✎
08:29
|
(9) в 8.2 как то принято, что есть клиент и есть клиент(обычное приложение). и харош выделываться, одно и то же ведь советуем
|
|||
12
sda553
05.03.13
✎
11:49
|
Если на модуле стоит исполнение на клиете, то наверно не просто так это сделали. Нефиг галки исполнения на клиенте ставить из за всякой фигни.
Как говорил прапорщик в армии: "инженер, мучился, ночами не спал, все думал какое крепление тут лучше будет. А вы тут на момент решили приклеить, вместо положенного шурупа" |
|||
13
Classic
05.03.13
✎
11:50
|
"Мутатор мыть надо"(с) !
|
|||
14
Обработка
05.03.13
✎
11:55
|
Всем спасибо. Короче создал отдельную общий модуль для этого события. Включил флажки заработало.
Специально глянул на те модули которые обрабатывают аналогичные события там везде включено. Пока так глубже изучу может быть поменяю код |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |