Имя: Пароль:
1C
1С v8
обращение к модулю объекта
,
0 rinaty17
 
30.07.13
13:25
может кто сталкивался. помогите
у меня в переменной хранится имя процедуры объекта.
как используя его вызвать процедуру объекта?
1 Капитан О
 
30.07.13
13:26
выполнить
2 cw014
 
30.07.13
13:26
ВЫПОЛНИТЬ("ПеременнаяМоегоОбъекта." + МояПеременнаяПроцедуры);
3 rinaty17
 
30.07.13
13:36
(2) не совсем понимаю как его использовать
4 Капитан О
 
30.07.13
13:37
(3) нужно заставить платформу исполнить (2)
5 cw014
 
30.07.13
13:38
(3) Чего тут непонятного? Ты как процедуру исполняешь? Примерно так: ПеременнаяМоегоОбъекта.ПроцедураОбъекта();
У тебя есть переменная, заданная так: МояПеременнаяПроцедуры = "ПроцедураОбъекта";

Получается строка: "ПеременнаяМоегоОбъекта." + МояПеременнаяПроцедуры + "()" = "ПеременнаяМоегоОбъекта.ПроцедураОбъекта()";

Эту строку пихаешь в процедуру "Выполнить" как параметр
6 Defender aka LINN
 
30.07.13
13:39
(0) Может лучше не надо?
7 Лефмихалыч
 
30.07.13
13:40
Записать = "Удалить()";
объект = ЭтотОбъект;
Выполнить("объект."+Записать);
8 Лефмихалыч
 
30.07.13
13:40
Мвахахахаха-ха




ха
9 rinaty17
 
30.07.13
13:40
вот кусочек кода
Отчет = Отчеты[Стр.СинонимОтчета].Создать();
                
Если Стр.УниверсальныйОтчет Тогда
                    Отчет.УниверсальныйОтчет.ДатаНач = НачалоМесяца(ТекущаяДата());
                    Отчет.УниверсальныйОтчет.ДатаКон = КонецДня(ТекущаяДата());
                ИначеЕсли ЗначениеЗаполнено(Стр.Дата) Тогда
                    Отчет[Стр.Дата] = КонецДня(ТекущаяДата());
                ИначеЕсли ЗначениеЗаполнено(Стр.ДатаНачала) И ЗначениеЗаполнено(Стр.ДатаОкончания) Тогда
                    Отчет[Стр.ДатаНачала] = НачалоМесяца(ТекущаяДата());
                    Отчет[Стр.ДатаОкончания] = КонецДня(ТекущаяДата());
                КонецЕсли;
                
в Стр.НаименованиеПроцедурыСформировать - здесь храниться инфа о названии процедуры
10 rinaty17
 
30.07.13
13:42
т.е нужно написать
Выполнить(Отчет +"."+Стр.НаименованиеПроцедурыСформировать+"());
11 cw014
 
30.07.13
13:42
(9)
Выполнить("Отчет." + Стр.НаименованиеПроцедурыСформировать + "()");

С тебя 300 рублев

А вообще - отойди от комьютера и позови специалиста
12 cw014
 
30.07.13
13:42
(10) Отчет - это переменная, содержащая имя переменной отчета?
13 Rovan
 
гуру
30.07.13
13:45
(10) получилось ?
14 rinaty17
 
30.07.13
13:51
все работает, спс
15 cw014
 
30.07.13
13:52
(14) С тебя 300 рублев
16 Капитан О
 
30.07.13
13:53
16 минут между (2) и (10). неплохо
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.