Имя: Пароль:
1C
1С v8
Помогите разобратся с взаимодествием между процедурами общего модуля
0 1sik
 
04.01.14
23:47
У меня в конфе на 8.2 есть два общих модуля, имеющие совершенно одинаковые свойства,Галки(Клиент упр прил. Клиент обыч. прил, сервер,вызов сервера), глобальный не ставил. В первом модуле есть одна функция,без директивы компиляции. Когда в первый модуль добавляю кусок кода что ниже, при сохранение ругается ...

{ОбщийМодуль.МодульЗапускаОкончаниРаботыПроиложения.Модуль(15,4)}: Процедура или функция с указанным именем не определена (ФлагСервер)
      <<?>>ФлагСервер(); (Проверка: Тонкий клиент)


Когда этот кусок добавляю во второй модуль не ругается при сохранение.
С чем это может быть связано?

  &НаКлиенте
  Функция Флаг()
  
      ФлагСервер();
  
  КонецФункции // Флаг()
  
  &НаСервере
Функция ФлагСервер()

    

КонецФункции // ФлагСервер()
1 zulu_mix
 
05.01.14
00:05
ну функция обычно что то возвращает, а ты ее как процедуру вызываешь.
2 1sik
 
05.01.14
00:10
Я уже пробовал писать внутрь функции Возврат истина; и менял ее на процедуру все та же ошибка.
3 GROOVY
 
05.01.14
00:12
ИмяМодуля.ИмяПроцедуры()
4 1sik
 
05.01.14
00:20
(3) Спасибо. Заработало.
Но так работает только если убрать галку глобальный.
И когда писал без имени модуля контекстная подсказка дала написать просто ФлагСервер().
5 GROOVY
 
05.01.14
00:21
Значит оставить галку глобальный и долго думать из какого контекста (клиент или сервер) вызывается процедура.
6 1sik
 
05.01.14
00:23
Я принудительно указывал  директиву "на клиенте" у той функции из которой вызывал.

&НаКлиенте
  Функция Флаг()
  
      ФлагСервер();
  
  КонецФункции // Флаг()
7 GROOVY
 
05.01.14
00:30
(6) Зачем? Директивы компиляции в формах работают.
8 1sik
 
05.01.14
00:37
Понял свою ошибку. Что то меня переклинило, что если функция не на клиенте, то ее из модуля управляемого приложения не вызвать будет. Вот и создал первую функцию как промежуточный шаг.
Совсем во взаимодействиях запутался, на 8.2 не приходилось работать. Теперь все что надо сделал, все работает.
Спасибо за помощь.
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший