Имя: Пароль:
1C
1С v8
Вызов общих модулей со стороны клиента
, ,
0 bcosta
 
28.09.11
18:44
Мне нужно вызвать в модуле управляемого приложения процедуру общего модуля, выполняемую на сервере. С этим проблем нет. Но как дальше в модуле управляемого приложения использовать результат выполнения этой процедуры? В процедуре получаю только результат одной переменной. Ее и нужно запомнить.

Т.е., например, при запуске системы выполняется процедура общего модуля, и затем, в зависимости от полученной переменной, в модуле управляемого приложения продолжаются какие-то действия.

Перепробовал всевозможные варианты с объявлением переменных, изменением свойств общего модуля и директив компиляции.
1 Reaper_1c
 
28.09.11
18:45
В 1с внезапно! есть функции
2 zak555
 
28.09.11
18:46
зачем делать действия в управляемом приложении ?
3 bcosta
 
28.09.11
18:51
(1) Да что процедуры, что функции - никак не получается.
Ты лучше напиши поподробнее, если знаешь как нужно сделать.
Заранее спасибо;)
4 zak555
 
28.09.11
18:52
(3) передать структуру возвратом ?
5 bcosta
 
28.09.11
18:53
(2) Нужно перед запуском 1С, т.е. в процедуре ПередНачаломРаботыСистемы(Отказ) управляемого приложения, проделать некоторые действия.
6 zak555
 
28.09.11
18:54
(5) ну так есть регламентированные задания
планировщики и т.д.
7 bcosta
 
28.09.11
18:57
Дело в том, что я только учусь на 1с программировать, и это задание из курса обучения, и это нужно сделать самым простым способом, т.к. этого всего я пока как бы не знаю))
8 Стальная Крыса
 
28.09.11
19:00
(0) "В процедуре получаю только результат одной переменной. Ее и нужно запомнить. "

сумбурно как-то...

куда запомнить, для чего ?
9 zak555
 
28.09.11
19:00
(7) что за курс ?
10 bcosta
 
28.09.11
19:06
общий модуль:

ФункцияОбщегоМодуля() Экспорт
    Если Перем1 < Перем2 Тогда
         Перем3 = 0;
    КонецЕсли;
КонецФункции

модуль управляемого приложения:

Процедура ПередНачаломРаботыСистемы(Отказ)
    //Вызов общего модуля
    ОбщийМодуль.ФункцияОбщегоМодуля();
    Если Перем3 = 0 Тогда
         какие-то действия
    КонецЕсли;
КонецПроцедуры

т.е. как Перем3 использовать в модуле управляемого приложения?
11 bcosta
 
28.09.11
19:07
этот вариант модуля управляемого приложения не работает
12 bcosta
 
28.09.11
19:08
(7) я не помню как называется. там несколько книг.
13 bcosta
 
28.09.11
19:53
ну неужели никто мне не поможет?
14 Либерал
 
28.09.11
19:58
общий модуль:

Функция ФункцияОбщегоМодуля() Экспорт
    Если Перем1 < Перем2 Тогда
         Перем3 = 0;
    Иначе
        Перем3 = 1;
     КонецЕсли;
     Возврат Перем3;
КонецФункции


модуль управляемого приложения:


Процедура ПередНачаломРаботыСистемы(Отказ)
    //Вызов общего модуля

    Перем3 = ОбщийМодуль.ФункцияОбщегоМодуля();
    Если Перем3 = 0 Тогда
         какие-то действия
    КонецЕсли;
КонецПроцедуры
15 shpioleg
 
28.09.11
21:21
Можно и процедуркой:

Процедура ПриНачалеРаботыСистемы()
   Перем ВозврЗначение;
   ОбщийМодуль1.ФункцияОбщегоМодуля(,,ВозврЗначение);
       Сообщить ("Значение:" + ВозврЗначение);
КонецПроцедуры
Процедура ФункцияОбщегоМодуля(Перем1=0,Перем2=0,Перем3) Экспорт
   Перем3 = 1;
   Если Перем1 < Перем2 Тогда
        Перем3 = 0;
   КонецЕсли;
КонецПроцедуры
16 bcosta
 
28.09.11
23:05
(14) {ОбщийМодуль.НаСервере.Модуль(10,25)}: Процедура не может возвращать значение
   Возврат РазрешитьЗапуск<<?>>; (Проверка: Сервер)
17 bcosta
 
28.09.11
23:09
Блин, туплю
18 bcosta
 
28.09.11
23:10
(14) Все работает, спасибо. Про возврат-то я и забыл.
19 bcosta
 
28.09.11
23:10
(15) Так не попробовал, о все равно спасибо