Имя: Пароль:
1C
1С v8
Обратится из одной формы к другой форме(ВнешнийОтчет)
,
0 Popkorm
 
26.01.12
17:55
Подскажи как обратится из одной форме к другой,чет так не работает:
НайденнаяФорма = ОтчетОбъект.Метаданные().ПолучитьФорму(МояФорма);
1 DrShad
 
26.01.12
17:55
а с хера ли оно через метаданные должно сработать
2 DmitryPavlik
 
26.01.12
18:00
ПолноеИмя = СтрЗаменить(ВыбраннаяСтрока.ТипЗначения,"Ссылка.",".");
           Объект = Метаданные.НайтиПоПолномуИмени(ПолноеИмя).Имя;// Метаданные.НайтиПоПолномуИмени(ПолноеИмя).ОсновнаяФормаСписка
           Если Найти(ПолноеИмя,"Документ")>0 Тогда
               ФормаСписка = Документы[Объект].ПолучитьФормуСписка();
           ИначеЕсли Найти(ПолноеИмя,"Справочник")>0 Тогда
               ФормаСписка = Справочники[Объект].ПолучитьФормуСписка();
           ИначеЕсли Найти(ПолноеИмя,"Перечисление")>0 Тогда
               ФормаСписка = Перечисления[Объект].ПолучитьФормуСписка();
           ИначеЕсли Найти(ПолноеИмя,"ПланСчетов")>0 Тогда
               ФормаСписка = ПланыСчетов[Объект].ПолучитьФормуСписка();                
           КонецЕсли;

вот кусок - покоапйся))
3 Popkorm
 
26.01.12
18:06
(2)что то для внешнихотчетов/обработок не нашел
4 DrShad
 
26.01.12
18:10
у внешних нет Метаданных
5 DrShad
 
26.01.12
18:14
формы в пределах одного объекта?
6 Popkorm
 
26.01.12
18:15
(5)да
7 DrShad
 
26.01.12
18:16
ЭтотОбъект.ПолучитьФорму(МояФорма) и вот так не работает?
8 Popkorm
 
26.01.12
18:21
Все вот так заработала:
   НайденнаяФорма  =  ЭтотОбъект.Метаданные().Формы.МояФорма;
   НайденнаяФорма1 = ЭтотОбъект.ПолучитьФорму(НайденнаяФорма);
   НайденнаяФорма1.ОткрытьМодально();
9 Popkorm
 
26.01.12
18:22
и как тогда понять что у внешних нет Метаданные??!!
10 DrShad
 
26.01.12
18:24
в дереве конфигурации найди свой внешний отчет
11 Popkorm
 
26.01.12
18:28
(10)в данном случаи Метаданные какого либо объекта 1С(конфы/внешнихотчетов)
12 Mort
 
26.01.12
18:31
гм. А так не судба?

ЭтотОбъект.ПолучитьФорму("МояФорма");
13 Popkorm
 
26.01.12
18:33
(12)так МояФорма = неопределенно,достучатся надо до МояФормы
14 DrShad
 
26.01.12
18:33
(12) в (7) ему уже писали
15 Mort
 
26.01.12
18:34
(14) Кавычки забыл.
16 DrShad
 
26.01.12
18:36
(15) в (0) МояФорма это переменная, поэтому кавычки ненужны
17 Popkorm
 
26.01.12
18:36
так стоп,извеняюсь.......Кавычки же надо,работает так:
   НайденнаяФорма1 = ЭтотОбъект.ПолучитьФорму("МояФорма");
   НайденнаяФорма1.ОткрытьМодально();
18 Popkorm
 
26.01.12
18:37
(16)да-да,забыл про них.....
19 Mort
 
26.01.12
18:38
(16) Я телепатировал )
20 DrShad
 
26.01.12
18:44
(19) а я поверил ТС, видимо таки никому нельзя верить :)
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший