УФ на сервере не вызывается процедура глобального серверного модуля? #804190


#0 by Elf56
Всем доброго времени суток Имеется 1С:Предприятие 8.3 (8.3.10.2466) Конфа самописная с использованием БСП. Не могу понять почему так происходит. Перевожу документ на управляемые формы с обычных. Есть Экспортная процедура ИнициализацияМеханизмаПечати находящаяся в глобальной общем модуле со свойствами 1. Глобальный 2. Сервер 3. Клиент (обычное приложение) 4. Вызов сервера. В документе при открытии вот так вызываю нужную процедуру КонецПроцедуры Ругается на то, что {Документ.СторнированиеОплаты.Форма.ФормаДокументаУФ.Форма(81,2)}: Процедура или функция с указанным именем не определена (ИнициализацияМеханизмаПечати) Почему так ведь общий модуль компилируется на стороне сервера и вызов тоже происходит со стороны сервера? Всем заранее спасибо.
#1 by 1dvd
ИмяМодуля.ИнициализацияМеханизмаПечати(...
#2 by Elf56
Пишу вот так сХранилищеДополнительнойИнформации.ИнициализацияМеханизмаПечати( Выдает ошибку {Документ.СторнированиеОплаты.Форма.ФормаДокументаУФ.Форма(81,2)}: Переменная не определена (сХранилищеДополнительнойИнформации)     <<?>>сХранилищеДополнительнойИнформации.ИнициализацияМеханизмаПечати( (Проверка: Сервер)
#3 by Elf56
Хотя имя модуля копирую
#4 by Elf56
поднял
#5 by Fedor-1971
ИнициализацияМеханизмаПечати( - поищи глобальным поиском по общим модулям, определишься где она есть, проверь флажки на модуле и пиши как в
#6 by Вафель
какие флажки у модуля?
#7 by Fedor-1971
Клиент(упр.приложение), Сервер, Внешнее соединение, Клиент (обычное приложение), Вызов сервера и т.д.
#8 by Elf56
Проверил еще раз. Не где больше эта процедура не встречается как в общем модуле сХранилищеДополнительнойИнформации, а его флажки (свойства) я выше описал. Причем на обычных формах все работает, а на управляемых нет
#9 by Fedor-1971
возможно, конфликт  Глобальный (и так доступен наКлиенте и наСервере) и Сервер (живёт только наСервере), для ОФ срабатывает Глобальный и всё работает, для УФ в первую очередь  предполагается контекст НаКлиенте. Если очень нужно оставить флажки на месте оберни код инструкциями препроцессора #Если наСервере #КонецЕсли
#10 by Elf56
ААА все нашел косяк в самом общем модуле стоит выше на 10 процедур условие #Если Клиент Тогда так, как очень высоко сразу не заметил, но ведать не зря там это условие поставили, как теперь сделать так, чтобы все правильно работало если я скажем уберу это условие только с одной процедуры к чему это приведет не известно
#11 by Elf56
Вынес процедур общего модуля за #Если Клиент Тогда ошибки посыпались сервера в этой процедуре ИнициализацияМеханизмаПечати ой ну и гемор с этими УФ
#12 by Fedor-1971
так попробуй и узнаешь. Проверь поиском где вызываются процедуры из инструкций препроцессора вызывай свою процедуру в ПриОткрытии и не трогай препроцессор. (лишний раз ломанёшься наСервер и всё, за то код общих модулей останется стандартным)
#13 by Elf56
да дело то в чем свойство "Клиент (управляемое приложение)" в общем модуле не стоит, а вызов получится из управляемого клиента, если поставить это свойство в модуле ошибки посыпятся во всем модуле. Вот и запара получается не знаю что делать
#14 by Вафель
а почему не пользуешься типовыми механизмами БСП?
#15 by Elf56
например это какие ?
#16 by Fedor-1971
я не про флажок модуля, а про препроцессор, возвращай назад свою процедуру в обёртку НаКлиенте и вызов её перенеси из ПриСозданииНаСервере в ПриОткрытии
#17 by Elf56
так я же написал что я так и сделал вот такая ошибка вылезает {Документ.СторнированиеОплаты.Форма.ФормаДокументаУФ.Форма(265,2)}: Процедура или функция с указанным именем не определена (ИнициализацияМеханизмаПечати)     <<?>>ИнициализацияМеханизмаПечати( (Проверка: Тонкий клиент)
#18 by Elf56
это все из за того, что нет в этом общем модуле установленного свойства "Клиент (управляемое приложение)"
#19 by Fedor-1971
возможно что и так, посмотри на ИТС как 1С рекомендует расставлять флажки. Тут остаётся рулить обёрткой процедур препроцессором если нужен смешанный режим работы
#20 by Вафель
смешанные модули: клиент-сервер очень не рекомендуются, только для реальных случаев, когда контекст совсем не важен
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С