Имя: Пароль:
1C
1С v8
Синтаксическая ошибка при вызове функции из расширения
,
0 ildary
 
16.02.18
13:33
Уважаемые специалисты, посоветуйте пожалуйста, что можно сделать в таком случае: 1С 8.3.10.2699, УТ11.4.2, пилю расширение с добавленным серверным модулем, из которого вызываю функцию из внешней обработки.
Всё работает, но - при каждой записи обработки - конфигуратор ругается на ошибку "Переменная не определена (ОбщегоНазначенияСерверДобавленный)" - где ОбщегоНазначенияСерверДобавленный - это мой модуль. Как избавиться от этой ошибки?

p.s. Отказ от расширения - не выход.
1 Рэйв
 
16.02.18
13:37
сделать модуль видимым там где ты его вызываешь
2 ildary
 
16.02.18
13:48
(1) скажите пожалуйста, как это правильно сделать?
3 Рэйв
 
16.02.18
13:53
(2)А сам код выполняется? То есть ругается только когда записывается обработка?
4 hhhh
 
16.02.18
14:01
(2) ну, правой кнопкой на этом модуле, и выбираешь "включить в расширение"
5 ildary
 
16.02.18
14:11
(3) да, само выполнение без ошибок. Ошибка выходит только при записи обработки в конфигураторе.

(4) Извините, но модуль в расширении - не унаследованный, а добавленный вручную мной.
6 ildary
 
16.02.18
14:12
Кстати а не будет ли правильным не создавать свой модуль со своими процедурами и функциями, а наследовать существующий и добавлять процедуры и функции в нём?
7 hhhh
 
16.02.18
15:31
(5) а, понятно. внешняя обработка не в расширении, поэтому расширение не видно.
8 ildary
 
16.02.18
15:33
(7) А как быть? Терпеть, пока 1С не допилит?
9 Cyberhawk
 
16.02.18
15:33
(6) Это риск конфликта, когда в оригинальный модуль добавят такой же метод. Так что вряд ли.
10 Вафель
 
16.02.18
15:35
это они не плохо сделали, что в коде конфигурации не видно объектов расширений
11 Вафель
 
16.02.18
15:35
*наоборот плохо
12 Cyberhawk
 
16.02.18
15:35
(10) Нету "тесной интеграции" типа
13 Cyberhawk
 
16.02.18
15:36
Т.е. доработка максимально обособлена от мамки
14 ildary
 
16.02.18
22:45
(13) Хорошее обособление, просто замечательное. Делаю добавление в расширение формы элемента номенклатуры, в котором вызываю функцию из добавленного модуля. Теперь оба объекта (добавленный модуль и форма) - находятся в одном окне и по идее должны видеть друг друга в конфигураторе - не не видят. В режиме предприятия вызов проходит. Хочется процитировать Вовочку: "Не вижу логики"...
15 Cyberhawk
 
16.02.18
22:52
(14) Друг друга это как? Чего ты такого добавил в форму, что должен видеть общий модуль? :)
16 ildary
 
16.02.18
22:56
(15) Я добавил на форму свою кнопку (программно, тут всё работает замечательно), и в модуле формы обработчик команды, который вызывает функцию общего модуля (добавленного). И в режиме предприятия всё работает, но при записи расширения синтаксис-контроль орёт, что нет такого общего модуля. Особенно грустно, когда в конфигураторе открыты несколько окон расширения - и каждое ругается. И выключать синтаксис-контроль не хочется... Могу выслать расширение - оно небольшое (пока), пишется под УТ11.4.2.
17 ildary
 
16.02.18
22:58
(15) уточню - не общий модуль что-то должен видеть, а его должны видеть. Я его добавил в расширении, и при редактировании других объектов в этом расширении - конфигуратор не должен притворяться, что этого модуля нет.
18 ildary
 
16.02.18
23:11
И последнее наблюдение: создаю (не наследуя) в расширении второй модуль, в котором делаю вызов первого созданного. Во втором модуле встаю на название вызываемой процедуры и нажимаю F12 - конфигуратор (как и положено) переходит куда надо. Но при нажатии во втором модуле на "Проверка модуля" - опять ошибка...
19 Cyberhawk
 
16.02.18
23:15
Сырая вещь эти расширения, однако.
А если конфигурацию БД расширения обновить, ошибка тоже сохраняется?
20 ildary
 
16.02.18
23:32
(19) сделал это и заодно еще перезашел в конфигуратор - ошибка ушла. Большое спасибо за подсказку!!!