Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Работа с расширениями 1С

Работа с расширениями 1С
Я
   location
 
13.09.21 - 15:49
Ошибка при выполнении расширения, ругается ошибка применения модуля ..... не соотвествует методу.
Но при этом выполняется нужная процедура с директивой ИзменениеИКонтроль.
Все выполняется правильно, только всех смущает ошибка, она появляется 1 раз когда запустить базу, следующий раз после следующего запуска.
Можно как то избавиться от нее?
   ДенисЧ
 
1 - 13.09.21 - 15:53
Можно. Исправить расширение.
   runoff_runoff
 
2 - 13.09.21 - 16:00
&Вместо
   location
 
3 - 13.09.21 - 16:01
(2) &Вместо такая же ошибка.
   location
 
4 - 13.09.21 - 16:01
(1) как исправить?
   VladZ
 
5 - 13.09.21 - 16:04
(4) План такой:
1. Прочитать внимательно ошибку.
2. Открыть код
3. Основательно подумать.
4. Исправить.
   runoff_runoff
 
6 - 13.09.21 - 16:18
(4) скопировать процедуру полностью с директивой &Вместо..
исправить куски кода. где надо.. поставить свои комментарии.. чтобы при следующем обновлении не забыть..
   location
 
7 - 13.09.21 - 16:27
Подскажите как правильно переделать изначально процедура была такая
УчетЗарплатыПереопределяемый.ДополнитьТаблицуЗарплатыАналитикойБухУчета(ТаблицаЗаработнойПлаты)
переделал на такую, т.к. необходимо было добавить доп данные 
УчетЗарплатыПереопределяемый.Доп1_ДополнитьТаблицуЗарплатыАналитикойБухУчета(ТаблицаЗаработнойПлаты, ПериодРегистрации);
Если у последней процедуры убрать период регистрации, тогда не ругается.
   runoff_runoff
 
8 - 13.09.21 - 16:39
состав параметров заимствованной процедуры не должен меняться..
   ДенисЧ
 
9 - 13.09.21 - 16:42
(7) "как правильно переделать"
Для начала документацию почитать...
   runoff_runoff
 
10 - 13.09.21 - 16:44
(7) надо создать общий модуль в расширении.. туда написать новую процедуру по образу и подобию оригинальной.. и сделать вызов этой новой процедуры..
   acht
 
11 - 13.09.21 - 16:48
(10) И попутно затащить в расширение еще пару десятков модулей, зависимые процедуры из которых внезапно станут экспортными =)
Кстати даже интересно стало, "экспорт" в сигнатуру входит? Не будет ли опять той же проблемы?
   acht
 
12 - 13.09.21 - 16:50
(7) Переписываешь свою расширяемую процедуру так, чтобы она принимала на вход в ТаблицаЗаработнойПлаты структуру. Проверяешь тип параметра.
Если прилетает не структура, то это обычный вызов, надо отрабатывать все по старому. Если структура, то извлекаешь оттуда свои ТаблицаЗаработнойПлаты и ПериодРегистрации и делаешь то, что хотел.
   runoff_runoff
 
13 - 13.09.21 - 16:56
(11) это навскидку.. думаю.. там всё проще.. но пусть сами разбираются
   runoff_runoff
 
14 - 13.09.21 - 16:58
(12) вызов тоже придется переделывать..
   acht
 
15 - 13.09.21 - 17:08
(14) Естественно. А как он иначе, даже в своей исходной постановке, будет свой новый параметр ПериодРегистрации передавать?

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.