Имя: Пароль:
1C
1С v8
Новый <<?>>Действие .. Конструктор не найден
0 Stim
 
17.08.12
17:21
в файловой базе прокатывает код в общем модуле:

кнопка = форма.элементы.добавить("мояКнопка",Тип("КнопкаФормы"),ФОрма.элементы.ФормаКоманднаяПанель)  ;
   Команда = форма.Команды.Добавить("МояКоманда");
   Команда.Действие = Новый Действие("моеДействие");
   Кнопка.Картинка = БиблиотекаКартинок.АктивироватьЗадачу;
   Кнопка.Отображение = ОтображениеКнопки.Картинка;
   Кнопка.ИмяКоманды ="моеИмя";    

в клиент-серверной при запуске выдает ошибку


Конструктор не найден
   Команда.Действие = Новый <<?>>Действие("моеДействие");

почему?
1 ДенисЧ
 
17.08.12
17:24
на доступность смотри
2 Kom-off
 
17.08.12
17:24
Первым делом почистить кэш клиент-серверной, на всякий случай. Вторым делом посмотреть область доступности функции моеДействие(), т.е. дерективы &НаКлиента, &НаСервере, возможно дело в них.
3 Азат
 
17.08.12
17:24
на клиенте недоступен.. ох уж эта разница клиент-сервер...
4 netDog
 
17.08.12
17:26
Новый Действие() работает кажется только на толстом клиенте. Если это так, то может быть этот метод вызывается в общем модуле который на сервере?
5 acsent
 
17.08.12
17:34
это же уф, какое действие?
6 acsent
 
17.08.12
17:35
(2) чуть что сразу кэш??????
7 acsent
 
17.08.12
17:35
(2) ты и машину наверно чинишь пинанием по колесам?
8 Stim
 
17.08.12
17:52
(5) что же, на УФ нельзя действия назначать?
9 Господин ПЖ
 
17.08.12
17:57
(8) сюрприз...
10 Stim
 
17.08.12
18:01
(9) можно)

только нужно писать
Команда.Действие = "моеДействие";

вместо

Команда.Действие =  Новый Действие("моеДействие");
11 vmv
 
17.08.12
18:11
(0) путь кода выбранный вами очень череват, посмотрите в строну функциональных опций, своей настройки прав.

абсурдно же формировать палитру свойств кнопки в коде - это абсурдно в 99% случаев
12 Stim
 
17.08.12
18:15
(11) вы 2 раза произнесли "абсурдно"
это абсурдно я считаю
13 zzz14
 
27.08.12
07:03
Была похожая ситуация. Использовал директиву

#Если ТолстыйКлиентОбычноеПриложение Тогда
#КонецЕсли