Имя: Пароль:
1C
 
Как вызывать процедуры и формы одной внешней обработки из другой
0 Девушка-Вамп
 
05.05.08
13:05
Как можно вызывать процедуры и формы одной внешней обработки из другой???
1 Irbis
 
05.05.08
13:07
Обработка=Обработки.Тратата.Создать();
все экспортные процедуры и функции, а также формы будут доступны
2 IronDemon
 
05.05.08
13:07
Можно. Если процедура экспортная.

Выборка.Документ.ПолучитьОбъект().Печать(МакетРеализации, КолвоЭкземпляров, ПечататьНаПринтер);
3 Девушка-Вамп
 
05.05.08
13:32
(2) а что в выборку включается?
(1) у меня обе обработки внешние (не встроенные в конфигурацию) такой метод не срабатывает :(
4 wHammer
 
05.05.08
13:34
процедура должна находится в модуле обработки и с ключ. словом экспорт
5 wHammer
 
05.05.08
13:35
(4) хотя с внешними не знаю
6 IronDemon
 
05.05.08
13:35
(3) ВнешниеОтчетыМенеджер.Создать (ExternalReportsManager.Create)
ВнешниеОтчетыМенеджер (ExternalReportsManager)
Создать (Create)
Синтаксис:
Создать(<Полное имя файла>)
Параметры:
<Полное имя файла> (обязательный)
Тип: Строка. Полное имя файла внешнего отчета.
Возвращаемое значение:
Тип: ВнешнийОтчет.
Описание:
Создает объект внешнего отчета по указанному файлу внешнего отчета.
7 zyto
 
05.05.08
13:36
(3)У тебя другой метод срабатывает.
МояПерваяОбработка = ВнешниеОбработки.Создать(с:\СУПЕРОБРАБОТКА.epf);
МояВтораяОбработка = ВнешниеОбработки.Создать(с:\ПУПЕРОБРАБОТКА.epf);
ПервоеЗначение = МояПерваяОбработка.Посчитать(123);
ВтороеЗначение = МояВтораяОбработка.Пересчитать(456);
8 IronDemon
 
05.05.08
13:36
В (1) все правильно написано
9 Девушка-Вамп
 
05.05.08
13:36
(4)всё так у меня до вызова процедуры дело ещё не дошло - я не знаю каким образом добраться до самой внешней обработки
10 IronDemon
 
05.05.08
13:37
(9) А мы знаем :)
11 zyto
 
05.05.08
13:38
+(7)Очепятался...
МояПерваяОбработка = ВнешниеОбработки.Создать("с:\СУПЕРОБРАБОТКА.epf");
12 Девушка-Вамп
 
05.05.08
13:42
а можно сделать реквизит обработки и в типе данных этого реквизита выбрать внешнюю обработку?
если да то как добиться того чтобы в каталоге "внешние обработки" который находится в типе данных реквизита появилась ещё 1-а строчка с нужной внешней обработкой (а не только ссылка на текущий отчёт)
13 Девушка-Вамп
 
05.05.08
13:43
(8) я уже вижу - большое пасибо!!!
;)
14 Irbis
 
05.05.08
13:43
(12)Раньше фотку в студию просили ...
15 zyto
 
05.05.08
13:49
(12)Чую не тем путём идёте...
16 Девушка-Вамп
 
05.05.08
13:55
(14) так ссылку уже неск. раз выкладывала :)
17 Irbis
 
05.05.08
14:01
(16) Значит не помогло ... Для внешних отчетов и обработок смотри (11). Дальше через точку доступно все что надо (реквизиты, формы, экспортные процедуры и функции ...)
18 Девушка-Вамп
 
05.05.08
14:05
отчёт открывается - только теперь ругается на переменные (они в основном модуле определены как экспортные, открываем форму отчёта из которого эти переменные вызываются - и оно ошибку выдаёт)
19 Кураж
 
05.05.08
14:11
Чё за беспредел? Где фотка? )
20 Irbis
 
05.05.08
14:13
смотри в каком месте и на что ругается. Как переменные инициализируются во внешнем отчете? Может форму отчета и не стоит открывать?
21 Девушка-Вамп
 
05.05.08
14:13
(19) так куда выкладывать то?
кст мне тоже интересно на учасникав форума посмотреть :)
22 Девушка-Вамп
 
05.05.08
14:17
(20) так она зачемто сама открывает основную форму отчёта
а атм при открытии прописано определение этих переменных - вот на них и ругается
ну типа:
общий модуль:
Перем мДействиеПолеВводаВидСравненияПриИзменении Экспорт;
Перем мДействиеПолеВводаЗначениеПриИзменении Экспорт;
.......... чёто тут ещё идёт........
мДействиеПолеВводаВидСравненияПриИзменении = Неопределено;
мДействиеПолеВводаЗначениеПриИзменении = Неопределено
конец общего модуля.

модуль основной формы:

Процедура ПриОткрытии()
   
   мДействиеПолеВводаВидСравненияПриИзменении = Новый Действие("ПолеВводаВидСравненияПриИзменении");
   мДействиеПолеВводаЗначениеПриИзменении = Новый Действие("ПолеВводаЗначениеПриИзменении");
23 Девушка-Вамп
 
05.05.08
14:38
аа - что попало написала
отчёт внешний создаёт, а к процедурам которые в нём содержаться со словом экспорт обращаться не желает почемуто :(
24 zyto
 
05.05.08
15:14
(22)Давай попорядку.
При чём тут общий модуль. Как ругается. Давай больше кода.
25 Bizon2005
 
05.05.08
16:37
Фотка то будет?
26 Девушка-Вамп
 
06.05.08
06:10
(24) в общем модуле отчета пишу следующее:

Перем УниверсальныйОТчет Экспорт;
УниверсальныйОтчет = ВнешниеОбработки.Создать("C:\УниверсальныйОтчет.erf");

в этом же отчёте в процедуре при открытии основной формы пишу так:

УниверсальныйОтчет.ФормаПриОткрытии(УниверсальныйОтчет, ЭтотОбъект, ЭтаФорма);

в УниверсальномОтчёте в общем модуле существует такая процедура:

Процедура ФормаПриОткрытии(Объект, Отчет, Форма, СоставПанелиДополнительныхЭлементовФормы = Неопределено, ИмяОбъекта = Неопределено) Экспорт

дальше если пытаюсь открыть свой отчёт выдаёт следующую ошибку:
}: Метод объекта не обнаружен (ФормаПриОткрытии)

вроде всё длаю как написано - а не получается :(
27 Девушка-Вамп
 
06.05.08
06:10
(25) так куда слать то? :)
28 Девушка-Вамп
 
06.05.08
06:28
блин, ужас! чувствую себя натуральной блондинкой:
всё работает - просто написать надо было не ВнешниеОбработки а Внешние отчёты
29 Девушка-Вамп
 
06.05.08
06:39
новый вопрос: во встроенном отчёте есть такой текст:

ФлажокИспользование.Данные = мПутьКПостроителюОтчета + ".ПостроительОтчета.Отбор." + ЭлементОтбора.Имя + ".Использование";

мПутьКПостроителюОтчета = "ОтчетОбъект.УниверсальныйОтчет";

как его епределать так чтобы он на внешнем отчёте тоже срабатывал?