Как открыть форму внешней обработки в Серверном режиме в Управляемых формах? |
Я |
02.03.12 — 11:10
Делаю так:
Основнаяформа=ПолучитьФорму(«ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма», Новый Структура(«Ключ», ЭтотОбъект));
В файловом режиме 1С работает, а в серверном не работает, клиент толстый. Пишет:
Ошибка при вызове метода контекста (ПолучитьФорму): Неизвестное имя формы. Имя: «ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма».
Как сделать чтобы в серверном работала?
1 — 02.03.12 — 11:12
+0
&НаКлиенте
Функция МаяФункция() Экспорт
Основнаяформа=ПолучитьФорму(«ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма», Новый Структура(«Ключ», ЭтотОбъект));
КонецФункции
2 — 02.03.12 — 11:12
Запустить управляемого клиента?
3 — 02.03.12 — 11:16
а она у тебя точно ТвАяОбработка?
4 — 02.03.12 — 11:17
(2) конечно. А потом выходить ошибка которую я описать в (0)
5 — 02.03.12 — 11:17
(3) Да, иначе в файловом варианте бы не открылась.
6 — 02.03.12 — 11:17
а, ясно, «мы нэмэстные…»
7 — 02.03.12 — 11:20
(6) Да, у нас на районе все пишут «МаяОбработка»
Ну так что по теме? Знает кто-нибудь?
8 — 02.03.12 — 11:20
(5) и ты хочешь сказать, что в файловом в тонком клиенте она у тебя открывается?
9 — 02.03.12 — 11:20
(8) в ТОЛСТОМ файловом открывается.
10 — 02.03.12 — 11:20
В каком модуле располагается: Функция МаяФункция() Экспорт ?
11 — 02.03.12 — 11:22
(9) ну а форма-то какая открывается? Управляемая, или обычная?
12 — 02.03.12 — 11:23
(10) В общем модуле.
13 — 02.03.12 — 11:24
(11) Управляемая. Она так и называется «УправляемаяФорма»
14 — 02.03.12 — 11:27
(13) ну, мало ли. может, у вас там принято так называть обычные формы
15 — 02.03.12 — 11:27
кинь свою обработку на ифолдер. интересно поглядеть
16 — 02.03.12 — 11:34
(15) Ща попробую. Там релиться не надо?
17 — 02.03.12 — 11:35
18 — 02.03.12 — 11:41
а я не понял, где ты код из (0) пишешь? в другой обработке?
19 — 02.03.12 — 11:43
(18) Код из (0) в модуле объекта.
20 — 02.03.12 — 11:43
ага. в модуле объекта нет клиента. там тока сервер.
21 — 02.03.12 — 11:44
и мне непонятно зафига ты так сделал вообще?
22 — 02.03.12 — 11:45
(21) Потому что она вызывается из общего модуля общей командой для всех внешних обработок.
23 — 02.03.12 — 11:45
ты хочешь чтобы перед печатью этой внешней печатной формы вылезало окно настроек чтоли?
24 — 02.03.12 — 11:46
25 — 02.03.12 — 11:47
(20) Как сделать чтобы было клиент? Как я понял в файловом варианте само делается, потому что там нет сервера.
26 — 02.03.12 — 11:49
в файловом варианте есть сервер. но поскольку он крутится на твоей локальной машине, то и позволяет открыть окно настроек.
27 — 02.03.12 — 11:50
(26) Ну да. А на серверном варианте как открыть форму?
28 — 02.03.12 — 11:51
во-первых, ЭтотОбъект доступен на «Сервер, толстый клиент, внешнее соединение».
29 — 02.03.12 — 11:52
(28) и что?
30 — 02.03.12 — 11:53
(28) ЭтотОбъект можно вообще убрать, он не нужен. Щас там просто Объект, реквизит обработки.
31 — 02.03.12 — 11:57
К (0). Из внешнего модуля так вызывается:
ИмяФайла = «C:МаяОбработка.epf»;
Обработка = ВнешниеОбработки.Создать(ИмяФайла);
Обработка.Объект = ОбъектИзБазы;
ТабДокумент = Обработка.МаяФункция();
В (17) МаяФункция() заменена на функцию Печать()
32 — 02.03.12 — 11:58
Вообще строка Обработка.Объект = ОбъектИзБазы; роли не играет, не обращайте внимания.
33 — 02.03.12 — 11:59
ну не откроешь ты на сервере форму
34 — 02.03.12 — 12:00
во-вторых, внешняя обработка предварительно зарегистрированы в системе?
в-третьих, а как это открытие обработки на сервере? Кто ее ТАМ будет наблюдать?
может мы чего не поняли в твоей задуме?
35 — 02.03.12 — 12:07
36 — 02.03.12 — 12:08
У меня вот даже зарегистрировать внешнюю обработку не получается в толстом клиенте.
37 — 02.03.12 — 12:11
(34) Не на сервере, а на клиенте в серверном варианте.
38 — 02.03.12 — 12:13
(37)ну значит нужно прояснить только второй вопрос
39 — 02.03.12 — 12:15
(34) Как их регистировать в системе? И для чего?
40 — 02.03.12 — 12:22
(39) +1 для чего? после этого платформа позволит из модуля обработки открывать формы?
41 — 02.03.12 — 12:34
короче. твоя печатная форма должна быть создана по технологии внешних обработок 8.2
только тогда ты сможешь открыть ее форму.
42 — 02.03.12 — 12:35
делается это так:
ДобавитьКоманду(ТаблицаКоманд,
«Бла-бла-ба, то что пишем в менюшке»,
«ИМЯ_ТВОЕЙ_ФОРМЫ»,
«ОткрытиеФормы»,
);
43 — 02.03.12 — 12:36
+42 делается это в функции СведенияОВнешнейОбработке
44 — 02.03.12 — 12:38
Вот этого нужно тебе?
&НаКлиенте
Процедура ОткрытьОбработку(Команда)
Перем стрИмя, стрАдрес;
стрАдрес = «»;
Если НЕ ПоместитьФайл(стрАдрес, «D:ИмяОбработки.epf», , Ложь) Тогда
Возврат;
КонецЕсли;
стрИмя = ПодключитьВнешнююОбработку(стрАдрес);
Основнаяформа = ПолучитьФорму(«ВнешняяОбработка.» + стрИмя + «.Форма.Форма»);
Основнаяформа.Открыть();
КонецПроцедуры // ОткрытьОбработку()
&НаСервере
Функция ПодключитьВнешнююОбработку(Знач стрАдрес)
Возврат ВнешниеОбработки.Подключить(стрАдрес);
КонецФункции // ПодключитьВнешнююОбработку()
45 — 02.03.12 — 12:43
46 — 02.03.12 — 12:49
Спасибо, буду разбираться
47 — 02.03.12 — 13:48
(41) Не понял как это может помочь открыть форму внешней обработки. Это для типовой УТ? Похоже не то что нужно
48 — 02.03.12 — 13:53
(47) что конкретно тебе непонятно? ты делаешь дополнительную печатную форму для какого то документа. правильно?
49 — 02.03.12 — 13:53
(44) Пишет: Ошибка при вызове метода контекста (ПолучитьФорму): Неизвестное имя формы. Имя: «ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма»
50 — 02.03.12 — 13:54
(48) Да, но в той статье написано как сделать дополнительную печатную форму, это я сделал, работает.
Теперь мне надо открыть ее форму.
51 — 02.03.12 — 13:56
(50) я тебе дал код в (42)
ищи в своей обработке «ДобавитьКоманду(ТаблицаКоманд,»
и пиши туда вместо ИМЯ_ТВОЕЙ_ФОРМЫ имя формы как она у тебя обзывается в обработке
52 — 02.03.12 — 13:57
(49)я тебе рабочий код написал и выложил.
53 — 02.03.12 — 14:00
(52) и куда надо прикрутить этот «рабочий» код чтобы ТС мог напечатать внешнюю печатную форму?
54 — 02.03.12 — 14:03
(53)вопрос стоял, как открыть внешнюю обработку. Про печать ничего не слышал
55 — 02.03.12 — 14:13
56 — 02.03.12 — 14:32
(55)а в двух словах чего ему надо, если ты скачал и видел его файло.
57 — 02.03.12 — 14:35
(56) ровно то, что я написал. ему надо сделать внешнюю печатную форму для УТ11, которая прилепляется к нужным документам штатными средствами без изменения конфы и позволяет перед печатью открывать окно с некоторыми настройками.
58 — 02.03.12 — 14:36
но судя по тому, что ТС молчит, то предположу что он не осилил как же это сделать. видимо придется ему предложить купить эту форму ))))
59 — 05.03.12 — 05:52
(51) Этот код не работает. ДобавитьКоманду — такая процедура не определена.
(57) Вообще-то не для УТ11. Интересует как открыть форму в принципе, «с нуля»
60 — 05.03.12 — 05:54
(52) Код не работает.
Ошибка при вызове метода контекста (ПолучитьФорму): Неизвестное имя формы. Имя: «ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма»
61 — 05.03.12 — 06:52
(60)покажи код.
62 — 05.03.12 — 07:04
(61) Я его уже убрал. Смотри в (44)
63 — 05.03.12 — 07:08
(62)код в (44) работает.
64 — 05.03.12 — 07:11
(63) Действительно, работает. Ошибся
65 — 05.03.12 — 07:16
Почему-то в пятницу не работало. 1с перезапустил, заработало.
Вот так тоже рабюотает:
&НаКлиенте
Функция Печать() Экспорт
Перем стрАдрес;
стрАдрес = «»;
Если НЕ ПоместитьФайл(стрАдрес, «C:Temptmp.epf», , Ложь) Тогда
Возврат (Неопределено);
КонецЕсли;
Основнаяформа = ПолучитьФорму(«ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма»);
Основнаяформа.Открыть();
Возврат(Неопределено);
КонецФункции
66 — 05.03.12 — 07:19
(65)рандомный генератор пишешь?
67 — 05.03.12 — 07:23
Вот так тоже теперь работает:
&НаКлиенте
Функция Печать() Экспорт
//Перем стрАдрес;
//
//стрАдрес = «»;
//Если НЕ ПоместитьФайл(стрАдрес, «C:Temptmp.epf», , Ложь) Тогда
// Возврат (Неопределено);
//КонецЕсли;
//
Основнаяформа = ПолучитьФорму(«ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма»);
Основнаяформа.Открыть();
Возврат(Неопределено);
КонецФункции
68 — 05.03.12 — 07:24
Что за фигня! В пятницу не работало, а сейчас работает без всяких дополнений! Всего-то платформу перезапустил
69 — 05.03.12 — 07:28
(68)не делай как в (65) и (67), делай как в (44).
70 — 05.03.12 — 07:33
(69) Почему может быть такое сообщение?:
{ВнешняяОбработка.МаяОбработка.МодульОбъекта(52,14)}: Процедура или функция с указанным именем не определена (ПодключитьВнешнююОбработку)
71 — 05.03.12 — 07:36
(70)а давай я тебе по руке погадаю? Тыж меня в телепаты записал.
Я думаю, что сообщение об ошибке достаточно для понимания.
72 — 05.03.12 — 07:40
(71) твой код. Пишется ошибка.
Закомментированная строка не работает. Переделал как во второй строке, ошибку не выдает:
//стрИмя = ПодключитьВнешнююОбработку(стрАдрес);
стрИмя = ВнешниеОбработки.Подключить(стрАдрес);
73 — 05.03.12 — 07:49
(67)Если предполагать, что ты используешь код из (67), дополнив его куском кода из (72), то у меня разрыв шаблона — метод Подключить имеет доступность «Сервер, внешнее соединение», хотя у тебя выставлено &НаКлиенте.
Ты занимаешься мозгоимением??
74 — 05.03.12 — 07:52
&НаКлиенте
Функция Печать() Экспорт
Перем стрИмя, стрАдрес;
стрАдрес = «»;
Если НЕ ПоместитьФайл(стрАдрес, «C:Temptmp.epf», , Ложь) Тогда
Возврат (Неопределено);
КонецЕсли;
стрИмя = ВнешниеОбработки.Подключить(стрАдрес);
Основнаяформа = ПолучитьФорму(«ВнешняяОбработка.» + стрИмя + «.Форма.УправляемаяФорма»);
Основнаяформа.Открыть();
Возврат(Неопределено);
КонецФункции
&НаСервере
Функция ПодключитьВнешнююОбработку(Знач стрАдрес)
Возврат ВнешниеОбработки.Подключить(стрАдрес);
КонецФункции
75 — 05.03.12 — 07:53
Если использовать ПодключитьВнешнююОбработку вместо ВнешниеОбработки.Подключить, то выходит сообщение об ошибке:
Процедура или функция с указанным именем не определена (ПодключитьВнешнююОбработку)
76 — 05.03.12 — 07:55
Еще один косяк: Если переименовать мою обработку в любое имя кроме «МаяОбработка», то выходит сообщение об ошибке:
Неизвестное имя формы. Имя: «ВнешняяОбработка.блаблабла.Форма.УправляемаяФорма»
77 — 05.03.12 — 07:57
Третий косяк: Если взять другую обработку и задать ей имя «МаяОбработка», и открыть ее форму из той процедуры, то всё равно откроется форма старой обработки. Тоесть она как-то зарегистрировалась под этим именем, и не пойму когда и как она это сделала
78 — 05.03.12 — 08:17
(74)а где это «Функция Печать() Экспорт» расположено?
79 — 05.03.12 — 08:23
(78) В модуле объекта внешней обработки
80 — 05.03.12 — 08:26
(79)ты каким-то чудом вызываешь метод «Печать» из одной внешней обработки, а потом хочешь открыть другую внешнюю обработку «tmp.epf»??
А как ты вызываешь «Печать»?
81 — 05.03.12 — 08:31
(80) Из общего модуля вызываю:
ИмяФайла = «C:Temptmp.epf»;
Обработка = ВнешниеОбработки.Создать(ИмяФайла);
ТабДокумент = Обработка.Печать();
82 — 05.03.12 — 08:33
Я вызываю метод Печать одной внешней обработки, и хочу чтобы она сама открыла свою форму.
83 — 05.03.12 — 09:00
Ап.
84 — 05.03.12 — 09:12
хз, чего там у тебя как работает, но (74) не должен работать: &НаКлиенте и ВнешниеОбработки.Подключить не должны вместе дружить.
Еще раз: в (44) код достаточен для твоей задачи. «ОткрытьОбработку(Команда)» — это вызов по команде/кнопке на форме.
Открыл форму, сделал настройки, там же нажал кнопку/команду печать.
85 — 05.03.12 — 09:17
(84) Чтобы нажать кнопку на форме, нужно сперва открыть эту форму, а она не открывается. А вообще вызов внешней обработки и ее метода «Печать» нельзя менять. И почему работает ВнешниеОбработки.Подключить я не знаю. Могу выложить обработку чтобы посмотрели
86 — 05.03.12 — 09:30
(84) Вот выложил: http://ifolder.ru/29092486
Кнопка на обработке открывает такую же обработку и вызывает «Печать()». И твой код не работает.
{Форма.УправляемаяФорма.Форма(4)}: Ошибка при вызове метода контекста (Создать)
Обработка = ВнешниеОбработки.Создать(ИмяФайла);
по причине:
{ВнешняяОбработка.МаяОбработка.МодульОбъекта(11,14)}: Процедура или функция с указанным именем не определена (ПодключитьВнешнююОбработку)
стрИмя = <<?>>ПодключитьВнешнююОбработку(стрАдрес);
87 — 05.03.12 — 11:00
Ап.
88 — 05.03.12 — 11:26
(86)
ВнешниеОбработки не доступно в тонком клиенте
ПодключитьВнешнююОбработку это метод объекта. чтобы его вызвать, нужно сначала получить объект с помощью РеквизитФормыВЗначение. но сделать это можно только на сервере
а вообще зачем всё это нужно?
89 — 05.03.12 — 11:30
(88) У меня в ТОЛСТОМ клиенте
Этот метод вызывается в модуле объекта, тоесть получать объект не нужно, он уже есть.
Нужно просто разобраться. Почему оно не работает!
90 — 05.03.12 — 11:32
И как могут работать два метода ПоместитьФайл и ВнешниеОбработки.Подключить в одной процедуре!??! У них же разная доступность на клиенте и на сервере!
91 — 05.03.12 — 11:51
(89) тогда, ты будешь смеяться, всё работает
замени
Основнаяформа = ПолучитьФорму(«ВнешняяОбработка.» + стрИмя + «.Форма.УправляемаяФорма»);
Основнаяформа.Открыть();
на
ОткрытьФорму(«ВнешняяОбработка.» + стрИмя + «.Форма.УправляемаяФорма»,,,Истина);
в принципе можно и ПолучитьФорму использовать и потом открывать, только при попытке передать туда ключ уникальности ругается на количество параметров, хотя параметры и там и там одинаковые
92 — 05.03.12 — 11:55
(90) ты для какой конфы это безобразие ваяешь?
для УТ11 я тебе дал все карты в руки. у меня все работает, подключается, открывает форму настроек и печатает.
93 — 05.03.12 — 12:02
(91) если указать имя обработки «МаяОбработка», то работает. А если поменять имя и указать там новое имя, то не работает.
94 — 05.03.12 — 12:02
(92) Для пустой конфы. Тестовой
95 — 06.03.12 — 06:11
Выяснил что нужно хотябы раз открыть форму обработки через меню файл, и выполнить команду:
&НаКлиенте
Функция Команда1(Команда) Экспорт
Перем стрИмя, стрАдрес;
стрАдрес = «»;
Если НЕ ПоместитьФайл(стрАдрес, «C:Temptmp.epf», , Ложь) Тогда
Возврат (Неопределено);
КонецЕсли;
стрИмя = ВнешниеОбработки.Подключить(стрАдрес);
КонецФункции
Тогда в следующий раз форма открывается из модуля объекта нормально. Но как сделать чтобы не нужно было открывать ее в первый раз вручную?
96 — 06.03.12 — 08:03
(95)свойства конфигурации — Обычное приложение???
97 — 06.03.12 — 08:07
(96) Основной режим: Управляемое приложение
98 — 06.03.12 — 08:31
(97)да как так? открываю твою обработку в ут11 — в модуле формы уже ругань идет.
99 — 06.03.12 — 08:47
(98) Щас скачал ту которую выкладывал, открывается форма с одной кнопкой. Как так?
100 — 06.03.12 — 08:47
Платформа 8.2.15.289
asdfr1 |
|
||
---|---|---|---|
|
в сформированном отчёте при двойном щелчке необходимо вывести форму справочника, неудаётся дотянутся до самой формы.
Кодик=СписокИнф[2].Значение; Форма=Справочники.ИзделияВЭксплуатации.НайтиПоКоду(Кодик); Область.Параметры.ФормаИзделия= Форма.Открыть(); Где ФормаИзделия -ПараметрРасшифровки как то так, подскажите плиз |
Yandex |
|
||
---|---|---|---|
|
asdfr1 |
|
||
---|---|---|---|
|
Кодик=СписокИнф[2].Значение;
Найти=Справочники.ИзделияВЭксплуатации.НайтиПоКоду(Кодик); Форма = Найти.ПолучитьФорму(); Откр= Форма.Открыть(); Область.Параметры.ФормаИзделия= Откр; Ошибка при вызове метода контекста (ПолучитьФорму) |
E_Migachev |
|
||
---|---|---|---|
|
(0) asdfr1, а это что? -СписокИнф[2].Значение;
вообще тебе надо в обработке расшифровки или Выбора получить код элемента справочника, который ты хочешь открыть, а далее как-то так: Код 1C v 8.х
|
asdfr1 |
|
||
---|---|---|---|
|
СписокИнф[2].Значение — код элемента справочника |
E_Migachev |
|
||
---|---|---|---|
|
тогда Код 1C v 8.х
|
asdfr1 |
|
||
---|---|---|---|
|
какой нить примерчик можно ? из книги Радченко и синтаксиспомошника воспроизвёл.Сравнение на Неопределено сделал.Возвращаяет ошибку «Обращение к процедуре объекта как к функции (Открыть)»
Для Каждого Строка ИЗ ТЗ Цикл СправочникПоиск=Справочники.ИзделияВЭксплуатации.НайтиПоРеквизиту(«ЗаводскойНомер», ЗавНомерМля); Если Строка.ИзделиеВЭксплуатацииЗаводскойНомер=СправочникПоиск Тогда // Неопределено Сообщить(Строка.ИзделиеВЭксплуатацииЗаводскойНомер); Иначе Ёпта1=СправочникПоиск.ПолучитьФорму(); Изменено 17.01.13 14:20:13 по причине: изменилась ошибка |
asdfr1 |
|
||
---|---|---|---|
|
Вопрос закрыт! |
Подсказка: Щелкнув по значку |
Войти или зарегистрироваться
8.х Ошибка метода ПолучитьФорму
Тема в разделе «Конфигурирование на платформе «1С:Предприятие 8″», создана пользователем csusha, 20 фев 2011.
-
0/5,
Голосов: 0
-
Offline
csusha
- Регистрация:
- 7 фев 2011
- Сообщения:
- 19
- Симпатии:
- 0
- Баллы:
- 1
Подскажите пожалуйста. Я создала форму списка Задача1 и мне надо обеспечить ее открытие при запуске системы. И нижний листинг я добавила в конец процедуры ПриНачалеРаботыСистемы:
Задачи.Задача1.ПолучитьФорму(«ФормаСпискаПоИсполнителю»).Открыть();
Но мне выдается сообщение: Ошибка при вызове метода контекста (ПолучитьФорму): Недопустимое значение параметра (параметр номер ‘1’)
Задачи.Задача1.ПолучитьФорму(«ФормаСпискаПоИсполнителю»).Открыть();
csusha,
20 фев 2011
#1 -
Offline
skyther
- Регистрация:
- 15 авг 2010
- Сообщения:
- 4
- Симпатии:
- 0
- Баллы:
- 1
нужно так:
Задачи.Задача1.ПолучитьФормуСписка().Открыть();
skyther,
20 фев 2011
#2 -
Offline
csusha
- Регистрация:
- 7 фев 2011
- Сообщения:
- 19
- Симпатии:
- 0
- Баллы:
- 1
Спасибо, но так тоже не работает.
csusha,
21 фев 2011
#3
- Похожие темы
-
8.х
Ошибка при вызове метода контекста (Выполнить):Синтаксическая ошибка «И»
She,
3 сен 2009, в разделе: Отчеты и обработки для «1С:Предприятие 8»
- Ответов:
- 3
- Просмотров:
- 2.902
- mialord
- 4 сен 2009
-
8.х
Ошибка при вызове метода контекста (ПолучитьФорму): Нарушение прав доступа!
Uliss,
16 дек 2010, в разделе: Общие вопросы «1С:Предприятие 8»
- Ответов:
- 2
- Просмотров:
- 3.924
- Uliss
- 20 дек 2010
-
8.х ОБМЕН
Ошибка выполнения запроса (Ошибка при вызове метода контекста (Выполнить))
AlenaAS,
27 авг 2014, в разделе: Обмен данными в «1С:Предприятие 8»
- Ответов:
- 9
- Просмотров:
- 4.855
- nickpugachev
- 27 авг 2014
-
[РЕШЕНО]
Ошибка в обработке Ошибка при вызове метода контекста (Выполнить) плюс вылет программы
Primorsky,
12 янв 2015, в разделе: «1С:Бухгалтерия БП»
- Ответов:
- 3
- Просмотров:
- 18.079
- Primorsky
- 20 янв 2015
- Ваше имя или e-mail:
- У Вас уже есть учётная запись?
-
- Нет, зарегистрироваться сейчас.
- Да, мой пароль:
-
Забыли пароль?
-
Запомнить меня
-
- Искать только в заголовках
- Сообщения пользователя:
-
Имена участников (разделяйте запятой).
- Новее чем:
-
- Искать только в этой теме
- Искать только в этом разделе
- Отображать результаты в виде тем
-
Быстрый поиск
- Последние сообщения
Больше…
Толстый клиент
6_5.91 портативный вариант — более точно не скажу так как не запускается в принципе
Зарплата и управление персоналом, редакция 3.1 (3.1.17.94)
Процедура воспроизведения
1. открываем ЗУП из конфигуратора
2. устанавливаем запускать в ОП
3. Запускаем в ОП
4. Запустилась
5. Файл открыть — выбираем основной файл ИР ирПортативный.epf
6.
{ВнешняяОбработка.ирОбщий.МодульОбъекта(35006)}: Ошибка при вызове метода контекста (ПолучитьФорму)
Результат = ирПортативный.ПолучитьФорму(ИмяФормы, Владелец, Уникальность);
по причине:
Ошибка инициализации модуля: ВнешняяОбработка.ирПортативный.Форма.ПерезапускСеансаОбычная.Форма
по причине:
{ВнешняяОбработка.ирОбщий.МодульОбъекта(27005)}: При запуске сеанса из конфигуратора с текущим свойством конфигурации «Режим использования модальности» включается контроль модальности.
Рекомендуется изменить это свойство конфигурации либо запустить сеанс другим способом.
Результат = ирПортативный.ПолучитьФорму(ИмяФормы, Владелец, Уникальность);
7. так же внизу выводится сообщение:
При запуске сеанса из конфигуратора с текущим свойством конфигурации «Режим использования модальности» включается контроль модальности. Для его отключения рекомендуется перезапустить сеанс через открывшуюся форму.
но ни какое окно при этом не открывается
8. на портативной версии 6_4.18 данное окно на этой же базы открывается без проблем и ошибка не возникает, так же ошибка не возникает на версии 6_5.55
9. Данная ошибка воспроизводится на версии 6_5.87.2
Уважаемые пользователи форума, ору вам о помощи — не могли бы вы помочь устранить данную проблему
1C | ||
|
Суть модуля заключается в следующем — необходим поиск Номера документа на основе параметра &КатегорияТовара и как результат открытие его формы на экране.
Выскакивает следующая ошибка {Справочник.Номенклатура.Форма.ФормаЭлемента.Форма(18)}: Ошибка при вызове метода контекста (ПолучитьФорму)
Форма = ИскомыйДокумент.ПолучитьФорму();
по причине:
Элемент не выбран!
Добавлено через 23 минуты
Забыл добавить, что ВладельцыКатегорий — документ, а сам модуль написан на Справочник Номенклатура (с реквизитом категория товара — ссылка на соответствующий справочник)
Делаю так: В файловом режиме 1С работает, а в серверном не работает, клиент толстый. Пишет: Ошибка при вызове метода контекста (ПолучитьФорму): Неизвестное имя формы. Имя: «ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма». Как сделать чтобы в серверном работала?
Делаю так: В файловом режиме 1С работает, а в серверном не работает, клиент толстый. Пишет: Ошибка при вызове метода контекста (ПолучитьФорму): Неизвестное имя формы. Имя: «ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма». Как сделать чтобы в серверном работала?
Запустить управляемого клиента?
а она у тебя точно ТвАяОбработка?
конечно. А потом выходить ошибка которую я описать в
Да, иначе в файловом варианте бы не открылась.
а, ясно, «мы нэмэстные…»
Да, у нас на районе все пишут «МаяОбработка» Ну так что по теме? Знает кто-нибудь?
и ты хочешь сказать, что в файловом в тонком клиенте она у тебя открывается?
в ТОЛСТОМ файловом открывается.
В каком модуле располагается: Функция МаяФункция Экспорт ?
ну а форма-то какая открывается? Управляемая, или обычная?
Управляемая. Она так и называется «УправляемаяФорма»
ну, мало ли. может, у вас там принято так называть обычные формы
кинь свою обработку на ифолдер. интересно поглядеть
Ща попробую. Там релиться не надо?
а я не понял, где ты код из пишешь? в другой обработке?
ага. в модуле объекта нет клиента. там тока сервер.
и мне непонятно зафига ты так сделал вообще?
Потому что она вызывается из общего модуля общей командой для всех внешних обработок.
ты хочешь чтобы перед печатью этой внешней печатной формы вылезало окно настроек чтоли?
Как сделать чтобы было клиент? Как я понял в файловом варианте само делается, потому что там нет сервера.
в файловом варианте есть сервер. но поскольку он крутится на твоей локальной машине, то и позволяет открыть окно настроек.
Ну да. А на серверном варианте как открыть форму?
во-первых, ЭтотОбъект доступен на «Сервер, толстый клиент, внешнее соединение».
ЭтотОбъект можно вообще убрать, он не нужен. Щас там просто Объект, реквизит обработки.
К . Из внешнего модуля так вызывается:
Вообще строка Обработка.Объект = ОбъектИзБазы; роли не играет, не обращайте внимания.
ну не откроешь ты на сервере форму
во-вторых, внешняя обработка предварительно зарегистрированы в системе? в-третьих, а как это открытие обработки на сервере? Кто ее ТАМ будет наблюдать? может мы чего не поняли в твоей задуме?
У меня вот даже зарегистрировать внешнюю обработку не получается в толстом клиенте.
Не на сервере, а на клиенте в серверном варианте.
ну значит нужно прояснить только второй вопрос
Как их регистировать в системе? И для чего?
+1 для чего? после этого платформа позволит из модуля обработки открывать формы?
короче. твоя печатная форма должна быть создана по технологии внешних обработок 8.2 только тогда ты сможешь открыть ее форму.
+42 делается это в функции СведенияОВнешнейОбработке
Вот этого нужно тебе? &НаКлиенте Функция ПодключитьВнешнююОбработку(Знач стрАдрес)
Спасибо, буду разбираться
Не понял как это может помочь открыть форму внешней обработки. Это для типовой УТ? Похоже не то что нужно
что конкретно тебе непонятно? ты делаешь дополнительную печатную форму для какого то документа. правильно?
Пишет: Ошибка при вызове метода контекста (ПолучитьФорму): Неизвестное имя формы. Имя: «ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма»
Да, но в той статье написано как сделать дополнительную печатную форму, это я сделал, работает. Теперь мне надо открыть ее форму.
я тебе дал код в ищи в своей обработке «ДобавитьКоманду(ТаблицаКоманд,» и пиши туда вместо ИМЯ_ТВОЕЙ_ФОРМЫ имя формы как она у тебя обзывается в обработке
я тебе рабочий код написал и выложил.
и куда надо прикрутить этот «рабочий» код чтобы ТС мог напечатать внешнюю печатную форму?
вопрос стоял, как открыть внешнюю обработку. Про печать ничего не слышал
а в двух словах чего ему надо, если ты скачал и видел его файло.
ровно то, что я написал. ему надо сделать внешнюю печатную форму для УТ11, которая прилепляется к нужным документам штатными средствами без изменения конфы и позволяет перед печатью открывать окно с некоторыми настройками.
но судя по тому, что ТС молчит, то предположу что он не осилил как же это сделать. видимо придется ему предложить купить эту форму ))))
Этот код не работает. ДобавитьКоманду — такая процедура не определена. Вообще-то не для УТ11. Интересует как открыть форму в принципе, «с нуля»
Код не работает. Ошибка при вызове метода контекста (ПолучитьФорму): Неизвестное имя формы. Имя: «ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма»
Я его уже убрал. Смотри в
Действительно, работает. Ошибся
Почему-то в пятницу не работало. 1с перезапустил, заработало. Вот так тоже рабюотает:
рандомный генератор пишешь?
Вот так тоже теперь работает:
Что за фигня! В пятницу не работало, а сейчас работает без всяких дополнений! Всего-то платформу перезапустил
не делай как в и , делай как в .
Почему может быть такое сообщение?: {ВнешняяОбработка.МаяОбработка.МодульОбъекта(52,14)}: Процедура или функция с указанным именем не определена (ПодключитьВнешнююОбработку)
а давай я тебе по руке погадаю? Тыж меня в телепаты записал. Я думаю, что сообщение об ошибке достаточно для понимания.
твой код. Пишется ошибка. Закомментированная строка не работает. Переделал как во второй строке, ошибку не выдает:
Если предполагать, что ты используешь код из , дополнив его куском кода из , то у меня разрыв шаблона — метод Подключить имеет доступность «Сервер, внешнее соединение», хотя у тебя выставлено &НаКлиенте. Ты занимаешься мозгоимением??
&НаСервере Функция ПодключитьВнешнююОбработку(Знач стрАдрес)
Если использовать ПодключитьВнешнююОбработку вместо ВнешниеОбработки.Подключить, то выходит сообщение об ошибке: Процедура или функция с указанным именем не определена (ПодключитьВнешнююОбработку)
Еще один косяк: Если переименовать мою обработку в любое имя кроме «МаяОбработка», то выходит сообщение об ошибке: Неизвестное имя формы. Имя: «ВнешняяОбработка.блаблабла.Форма.УправляемаяФорма»
Третий косяк: Если взять другую обработку и задать ей имя «МаяОбработка», и открыть ее форму из той процедуры, то всё равно откроется форма старой обработки. Тоесть она как-то зарегистрировалась под этим именем, и не пойму когда и как она это сделала
а где это «Функция Печать Экспорт» расположено?
В модуле объекта внешней обработки
ты каким-то чудом вызываешь метод «Печать» из одной внешней обработки, а потом хочешь открыть другую внешнюю обработку «tmp.epf»?? А как ты вызываешь «Печать»?
Из общего модуля вызываю:
Я вызываю метод Печать одной внешней обработки, и хочу чтобы она сама открыла свою форму.
хз, чего там у тебя как работает, но не должен работать: &НаКлиенте и ВнешниеОбработки.Подключить не должны вместе дружить. Еще раз: в код достаточен для твоей задачи. «ОткрытьОбработку(Команда)» — это вызов по команде/кнопке на форме. Открыл форму, сделал настройки, там же нажал кнопку/команду печать.
Чтобы нажать кнопку на форме, нужно сперва открыть эту форму, а она не открывается. А вообще вызов внешней обработки и ее метода «Печать» нельзя менять. И почему работает ВнешниеОбработки.Подключить я не знаю. Могу выложить обработку чтобы посмотрели
Вот выложил: Кнопка на обработке открывает такую же обработку и вызывает «Печать». И твой код не работает. {Форма.УправляемаяФорма.Форма}: Ошибка при вызове метода контекста (Создать) Обработка = ВнешниеОбработки.Создать(ИмяФайла); по причине: {ВнешняяОбработка.МаяОбработка.МодульОбъекта(11,14)}: Процедура или функция с указанным именем не определена (ПодключитьВнешнююОбработку)
ВнешниеОбработки не доступно в тонком клиенте ПодключитьВнешнююОбработку это метод объекта. чтобы его вызвать, нужно сначала получить объект с помощью РеквизитФормыВЗначение. но сделать это можно только на сервере а вообще зачем всё это нужно?
У меня в ТОЛСТОМ клиенте Этот метод вызывается в модуле объекта, тоесть получать объект не нужно, он уже есть. Нужно просто разобраться. Почему оно не работает!
И как могут работать два метода ПоместитьФайл и ВнешниеОбработки.Подключить в одной процедуре!??! У них же разная доступность на клиенте и на сервере!
тогда, ты будешь смеяться, всё работает замени в принципе можно и ПолучитьФорму использовать и потом открывать, только при попытке передать туда ключ уникальности ругается на количество параметров, хотя параметры и там и там одинаковые
ты для какой конфы это безобразие ваяешь? для УТ11 я тебе дал все карты в руки. у меня все работает, подключается, открывает форму настроек и печатает.
если указать имя обработки «МаяОбработка», то работает. А если поменять имя и указать там новое имя, то не работает.
Для пустой конфы. Тестовой
Выяснил что нужно хотябы раз открыть форму обработки через меню файл, и выполнить команду: Тогда в следующий раз форма открывается из модуля объекта нормально. Но как сделать чтобы не нужно было открывать ее в первый раз вручную?
свойства конфигурации — Обычное приложение???
Основной режим: Управляемое приложение
да как так? открываю твою обработку в ут11 — в модуле формы уже ругань идет.
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям
Делаю так: В файловом режиме 1С работает, а в серверном не работает, клиент толстый. Пишет: Ошибка при вызове метода контекста (ПолучитьФорму): Неизвестное имя формы. Имя: «ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма». Как сделать чтобы в серверном работала?
Делаю так: В файловом режиме 1С работает, а в серверном не работает, клиент толстый. Пишет: Ошибка при вызове метода контекста (ПолучитьФорму): Неизвестное имя формы. Имя: «ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма». Как сделать чтобы в серверном работала?
Запустить управляемого клиента?
а она у тебя точно ТвАяОбработка?
конечно. А потом выходить ошибка которую я описать в
Да, иначе в файловом варианте бы не открылась.
а, ясно, «мы нэмэстные…»
Да, у нас на районе все пишут «МаяОбработка» Ну так что по теме? Знает кто-нибудь?
и ты хочешь сказать, что в файловом в тонком клиенте она у тебя открывается?
в ТОЛСТОМ файловом открывается.
В каком модуле располагается: Функция МаяФункция Экспорт ?
ну а форма-то какая открывается? Управляемая, или обычная?
Управляемая. Она так и называется «УправляемаяФорма»
ну, мало ли. может, у вас там принято так называть обычные формы
кинь свою обработку на ифолдер. интересно поглядеть
Ща попробую. Там релиться не надо?
а я не понял, где ты код из пишешь? в другой обработке?
ага. в модуле объекта нет клиента. там тока сервер.
и мне непонятно зафига ты так сделал вообще?
Потому что она вызывается из общего модуля общей командой для всех внешних обработок.
ты хочешь чтобы перед печатью этой внешней печатной формы вылезало окно настроек чтоли?
Как сделать чтобы было клиент? Как я понял в файловом варианте само делается, потому что там нет сервера.
в файловом варианте есть сервер. но поскольку он крутится на твоей локальной машине, то и позволяет открыть окно настроек.
Ну да. А на серверном варианте как открыть форму?
во-первых, ЭтотОбъект доступен на «Сервер, толстый клиент, внешнее соединение».
ЭтотОбъект можно вообще убрать, он не нужен. Щас там просто Объект, реквизит обработки.
К . Из внешнего модуля так вызывается:
Вообще строка Обработка.Объект = ОбъектИзБазы; роли не играет, не обращайте внимания.
ну не откроешь ты на сервере форму
во-вторых, внешняя обработка предварительно зарегистрированы в системе? в-третьих, а как это открытие обработки на сервере? Кто ее ТАМ будет наблюдать? может мы чего не поняли в твоей задуме?
У меня вот даже зарегистрировать внешнюю обработку не получается в толстом клиенте.
Не на сервере, а на клиенте в серверном варианте.
ну значит нужно прояснить только второй вопрос
Как их регистировать в системе? И для чего?
+1 для чего? после этого платформа позволит из модуля обработки открывать формы?
короче. твоя печатная форма должна быть создана по технологии внешних обработок 8.2 только тогда ты сможешь открыть ее форму.
+42 делается это в функции СведенияОВнешнейОбработке
Вот этого нужно тебе? &НаКлиенте Функция ПодключитьВнешнююОбработку(Знач стрАдрес)
Спасибо, буду разбираться
Не понял как это может помочь открыть форму внешней обработки. Это для типовой УТ? Похоже не то что нужно
что конкретно тебе непонятно? ты делаешь дополнительную печатную форму для какого то документа. правильно?
Пишет: Ошибка при вызове метода контекста (ПолучитьФорму): Неизвестное имя формы. Имя: «ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма»
Да, но в той статье написано как сделать дополнительную печатную форму, это я сделал, работает. Теперь мне надо открыть ее форму.
я тебе дал код в ищи в своей обработке «ДобавитьКоманду(ТаблицаКоманд,» и пиши туда вместо ИМЯ_ТВОЕЙ_ФОРМЫ имя формы как она у тебя обзывается в обработке
я тебе рабочий код написал и выложил.
и куда надо прикрутить этот «рабочий» код чтобы ТС мог напечатать внешнюю печатную форму?
вопрос стоял, как открыть внешнюю обработку. Про печать ничего не слышал
а в двух словах чего ему надо, если ты скачал и видел его файло.
ровно то, что я написал. ему надо сделать внешнюю печатную форму для УТ11, которая прилепляется к нужным документам штатными средствами без изменения конфы и позволяет перед печатью открывать окно с некоторыми настройками.
но судя по тому, что ТС молчит, то предположу что он не осилил как же это сделать. видимо придется ему предложить купить эту форму ))))
Этот код не работает. ДобавитьКоманду — такая процедура не определена. Вообще-то не для УТ11. Интересует как открыть форму в принципе, «с нуля»
Код не работает. Ошибка при вызове метода контекста (ПолучитьФорму): Неизвестное имя формы. Имя: «ВнешняяОбработка.МаяОбработка.Форма.УправляемаяФорма»
Я его уже убрал. Смотри в
Действительно, работает. Ошибся
Почему-то в пятницу не работало. 1с перезапустил, заработало. Вот так тоже рабюотает:
рандомный генератор пишешь?
Вот так тоже теперь работает:
Что за фигня! В пятницу не работало, а сейчас работает без всяких дополнений! Всего-то платформу перезапустил
не делай как в и , делай как в .
Почему может быть такое сообщение?: {ВнешняяОбработка.МаяОбработка.МодульОбъекта(52,14)}: Процедура или функция с указанным именем не определена (ПодключитьВнешнююОбработку)
а давай я тебе по руке погадаю? Тыж меня в телепаты записал. Я думаю, что сообщение об ошибке достаточно для понимания.
твой код. Пишется ошибка. Закомментированная строка не работает. Переделал как во второй строке, ошибку не выдает:
Если предполагать, что ты используешь код из , дополнив его куском кода из , то у меня разрыв шаблона — метод Подключить имеет доступность «Сервер, внешнее соединение», хотя у тебя выставлено &НаКлиенте. Ты занимаешься мозгоимением??
&НаСервере Функция ПодключитьВнешнююОбработку(Знач стрАдрес)
Если использовать ПодключитьВнешнююОбработку вместо ВнешниеОбработки.Подключить, то выходит сообщение об ошибке: Процедура или функция с указанным именем не определена (ПодключитьВнешнююОбработку)
Еще один косяк: Если переименовать мою обработку в любое имя кроме «МаяОбработка», то выходит сообщение об ошибке: Неизвестное имя формы. Имя: «ВнешняяОбработка.блаблабла.Форма.УправляемаяФорма»
Третий косяк: Если взять другую обработку и задать ей имя «МаяОбработка», и открыть ее форму из той процедуры, то всё равно откроется форма старой обработки. Тоесть она как-то зарегистрировалась под этим именем, и не пойму когда и как она это сделала
а где это «Функция Печать Экспорт» расположено?
В модуле объекта внешней обработки
ты каким-то чудом вызываешь метод «Печать» из одной внешней обработки, а потом хочешь открыть другую внешнюю обработку «tmp.epf»?? А как ты вызываешь «Печать»?
Из общего модуля вызываю:
Я вызываю метод Печать одной внешней обработки, и хочу чтобы она сама открыла свою форму.
хз, чего там у тебя как работает, но не должен работать: &НаКлиенте и ВнешниеОбработки.Подключить не должны вместе дружить. Еще раз: в код достаточен для твоей задачи. «ОткрытьОбработку(Команда)» — это вызов по команде/кнопке на форме. Открыл форму, сделал настройки, там же нажал кнопку/команду печать.
Чтобы нажать кнопку на форме, нужно сперва открыть эту форму, а она не открывается. А вообще вызов внешней обработки и ее метода «Печать» нельзя менять. И почему работает ВнешниеОбработки.Подключить я не знаю. Могу выложить обработку чтобы посмотрели
Вот выложил: Кнопка на обработке открывает такую же обработку и вызывает «Печать». И твой код не работает. {Форма.УправляемаяФорма.Форма}: Ошибка при вызове метода контекста (Создать) Обработка = ВнешниеОбработки.Создать(ИмяФайла); по причине: {ВнешняяОбработка.МаяОбработка.МодульОбъекта(11,14)}: Процедура или функция с указанным именем не определена (ПодключитьВнешнююОбработку)
ВнешниеОбработки не доступно в тонком клиенте ПодключитьВнешнююОбработку это метод объекта. чтобы его вызвать, нужно сначала получить объект с помощью РеквизитФормыВЗначение. но сделать это можно только на сервере а вообще зачем всё это нужно?
У меня в ТОЛСТОМ клиенте Этот метод вызывается в модуле объекта, тоесть получать объект не нужно, он уже есть. Нужно просто разобраться. Почему оно не работает!
И как могут работать два метода ПоместитьФайл и ВнешниеОбработки.Подключить в одной процедуре!??! У них же разная доступность на клиенте и на сервере!
тогда, ты будешь смеяться, всё работает замени в принципе можно и ПолучитьФорму использовать и потом открывать, только при попытке передать туда ключ уникальности ругается на количество параметров, хотя параметры и там и там одинаковые
ты для какой конфы это безобразие ваяешь? для УТ11 я тебе дал все карты в руки. у меня все работает, подключается, открывает форму настроек и печатает.
если указать имя обработки «МаяОбработка», то работает. А если поменять имя и указать там новое имя, то не работает.
Для пустой конфы. Тестовой
Выяснил что нужно хотябы раз открыть форму обработки через меню файл, и выполнить команду: Тогда в следующий раз форма открывается из модуля объекта нормально. Но как сделать чтобы не нужно было открывать ее в первый раз вручную?
свойства конфигурации — Обычное приложение???
Основной режим: Управляемое приложение
да как так? открываю твою обработку в ут11 — в модуле формы уже ругань идет.
Тэги: 1С 8
Комментарии доступны только авторизированным пользователям
asdfr1
Участник |
в сформированном отчёте при двойном щелчке необходимо вывести форму справочника, неудаётся дотянутся до самой формы. Кодик=СписокИнф[2].Значение; Область.Параметры.ФормаИзделия= Форма.Открыть(); Где ФормаИзделия -ПараметрРасшифровки как-то так, подскажите пожалуйста |
||
|
asdfr1
Участник |
Кодик=СписокИнф[2].Значение; Область.Параметры.ФормаИзделия= Откр; Ошибка при вызове метода контекста (ПолучитьФорму) |
||
|
Kivals |
И что не ясно? |
||
|
asdfr1
Участник |
И что не ясно? Неясно как открыть форму из отчёта. Найти=Справочники.ИзделияВЭксплуатации.НайтиПоКоду(Код); где Код код в справочнике. Форма = Найти.ПолучитьФорму(); Область.Параметры.ФормаИзделия= Откр; |
||
|
Kivals |
asdfr1, сделал что я писал выше? |
||
|
asdfr1
Участник |
asdfr1, сделал что я писал выше? Вернёт СправочникСсылка.<Имя справочника>; |
||
|
Radistka |
Вам вероятно тонко намекают проверить на случай, если у вас в переменной находится Неопределено или ПустаяСсылка НайтиПоКоду (FindByCode) Возвращаемое значение: |
||
|
Kivals |
Radistka, Ничего себе «тонко»! |
||
|
asdfr1
Участник |
Вам вероятно тонко намекают проверить на случай, если у вас в переменной находится Неопределено или ПустаяСсылка НайтиПоКоду (FindByCode) Возвращаемое значение: какой нить примерчик можно ? из книги Радченко и синтаксиспомошника воспроизвёл.Сравнение на Неопределено сделал.Возвращаяет ошибку «Обращение к процедуре объекта как к функции (Открыть)» Для Каждого Строка ИЗ ТЗ Цикл Если Строка.ИзделиеВЭксплуатацииЗаводскойНомер=СправочникПоиск Тогда Сообщить(Строка.ИзделиеВЭксплуатацииЗаводскойНомер); Иначе Ёпта1=СправочникПоиск.ПолучитьФорму(); |
||
|
Radistka |
Цензуры на вас нету.. хотя, может щас прийдёт. Кодик=СписокИнф[2].Значение; Если НайденнаяСсылка=Справочники.ИзделияВЭксплуатации.ПустаяСсылка() тогда иначеЕсли НайденнаяСсылка=Неопределено тогда Иначе КонецЕсли; научитесь пользоваться брейкпойнтами и определите в конце концов, что у вас находится в переменной «НайденнаяСсылка» |
||
|
asdfr1
Участник |
НайденнаяСсылка=Справочники.ИзделияВЭксплуатации.НайтиПоКоду(Кодик); Здесь пустая ссылка, в справочнике нет элемента с кодом 1654 |
||
|
Radistka |
ну вот собственно и ага. форму пустой ссылки 1Ска не открывает. |
||
|
asdfr1
Участник |
ну вот собственно и ага. форму пустой ссылки 1Ска не открывает. Иначе |
||
|
Kivals |
asdfr1, код — в теги [code=e1cv8][/code]! всегда (если больше 1ой строки)!!! В книге описано, что ожидается в переменных. Пройдись отладчиком по каждой строке и сравни с книгой. А вообще вот это: Обращение к процедуре объекта как к функции (Открыть) Ни о чем не говорит? Пробуй так: Форма = НайденнаяСсылка.ПолучитьФорму(); Но скорее всего будет так же, как и в самом начале: ПолучитьФорму(): Описание: Доступность: Пример: Если Не ТоварСсылка.Пустая() Тогда По идее должно сработать: Форма = Справочники[НайденнаяСсылка.Метаданные().Имя].ПолучитьФормуНовогоЭлемента(); |
||
|
asdfr1
Участник |
может это вообще не возможно? |
||
|
Radistka |
может это вообще не возможно? Вы отладчиком научились пользоваться? вам чтото предлагают — вы даже не пробуете это или просто не говорите нам что у вас получилось, а что нет из предложенного? или есть подозрение что рано или поздно, но над нами возьмёт верх любопытство и мы натурально попробуем сами это сделать, а потом выложим результат? ) какая разница самописная она или нет, вы же явно делаете дополнительный отчёт, а метаданные они и в африке метаданные. разберитесь с отладчиком уже и сравните каждую переменную у вас в коде с тем, что в ней должно быть — тип данных и значение в каждый момент времени и на разных данных. тем более, что вы прямо во время отладки имеете возможность примерить различные варианты строки кода, если это касается вызова функции. я по крайней мере, если не могу понять как вызвать правильно функцию, то дохожу до нужного момента в отладчике и перебираю все варианты, как могла бы выглядеть строка вызова функции. и ещё такой вопрос: вы уверены что вам необходимо это реализовывать в отчёте? зачем вам в ячейке хранить значение отличное от расшифровки? |
||
|
asdfr1
Участник |
отладчиком учусь, а то что «над нами возьмёт верх любопытство и мы натурально попробуем сами это» так не было и не будет! И метаданные действительно такие же в Африке. |
||
|
Radistka |
Реализовать это в отчёте для удобства, используя меньше бумажных носителей. при чём здесь бумажные носители? я имела ввиду уверены ли вы что вам нужен отчёт а не обработка. зачем вам в ячейке хранить значение отличное от расшифровки? так всё таки зачем? или у вас они совпадают? |
||
|
asdfr1
Участник |
Реализовать это в отчёте для удобства, используя меньше бумажных носителей. при чём здесь бумажные носители? я имела ввиду уверены ли вы что вам нужен отчёт а не обработка. зачем вам в ячейке хранить значение отличное от расшифровки? так всё таки зачем? или у вас они совпадают? Туплю. Отчёт или обработка — без разницы. Нашёл отчёт в ЗиК СпискиРаботников там как раз по клику делает то что нужно. |
||
|
Radistka |
Мысль первая: если совпадают, то поставьте в качестве значения в ячейку ссылку т.е. не ОбластьМакета.Параметры.ЗначениеЯчейки = ЭлементСправочника.Наименование; а ОбластьМакета.Параметры.ЗначениеЯчейки = ЭлементСправочника; Мысль вторая, возможно не рабочая: а если попробовать в расшифровку пихать не открытие формы а например ссылку на тот элемент справочника, который вам нужно открывать? |
||
|
asdfr1
Участник |
ОГРОМНОЕ спасибо |
||
|
Показывать по
10
20
40
сообщений
Новая тема
Ответить
Ksenia_Arh
Дата регистрации: 10.12.2018
Сообщений: 5
Добрый день!
1С:Предприятие 8.3 (8.3.12.1855)
Бухгалтерия государственного учреждения, редакция 1.0 (1.0.60.4)
При просмотре проводок по документу (любому документу), выходит ошибка (см. рис 1)
В подробнее:
{ОбщийМодуль.РаботаСДиалогами.Модуль(2786)}: Ошибка при вызове метода контекста (ПолучитьФорму)
Форма = Обработки.КорректировкаДвижений.ПолучитьФорму(«ОсновнаяФорма», Владелец);
по причине:
Ошибка инициализации модуля: Документ.ИзменениеКФО_Расчеты.МодульОбъекта
по причине:
{Документ.ИзменениеКФО_Расчеты.МодульОбъекта(2236)}: Значение не является значением объектного типа (Ссылка)
Форма = Обработки.КорректировкаДвижений.ПолучитьФорму(«ОсновнаяФорма», Владелец);
Проверка модулей не выявила ошибок.
Делала Тестирование и исправление, тоже не помогло (Администрирование -> Тестирование и исправление, были выставлены следующие параметры (галочки) Реиндексация таблиц информационной базы, Проверка логической целостности информационной базы, Проверка ссылочной целостности информационной базы, Пересчет итогов, Реструктуризация таблиц информационной базы. И радиокнопки Тестирование и исправление, Не изменять, Не изменять))
Подскажите, пожалуйста, как исправить ошибку?
Показывать по
10
20
40
сообщений
Читают тему: