Имя: Пароль:
1C
 
Присвоение переменной значения типа
0 Собеседник
 
17.08.07
12:59
Первый: "http://www.forum.mista.ru/topic.php?id=290037"

Второй:


Есть обработка с 3-мя формами
"Форма" - Основаная
"Форма1" и "Форма2"

В форме "Форма" есть такой код

Перем тзФормы Экспорт;

Процедура КнопкаНажатие(Элемент)
   Если Элемент = ЭлементыФормы.Кнопка1 Тогда
       ИмяФормы = "Форма1";
   ИначеЕсли Элемент = ЭлементыФормы.Кнопка2 Тогда    
       ИмяФормы = "Форма2";
   КонецЕсли;
   
   ОписаниеФормы = тзФормы.Найти(ИмяФормы,"Ключ");
   Если ОписаниеФормы = Неопределено Тогда
       НеобходимаяФорма = ЭтотОбъект.ПолучитьФорму(ИмяФормы);
       
       НоваяСтрока = тзФормы.Добавить();
       НоваяСтрока.Ключ = ИмяФормы;
       НоваяСтрока.Форма= НеобходимаяФорма;
   Иначе
       НеобходимаяФорма = ОписаниеФормы.Форма;
   КонецЕсли;
   
   Если НеобходимаяФорма.Открыта() Тогда
       НеобходимаяФорма.Активизировать();
   Иначе
       НеобходимаяФорма.Открыть();
   КонецЕсли;
КонецПроцедуры

тзФормы = Новый ТаблицаЗначений;
тзФормы.Колонки.Добавить("Ключ");

На форме "Форма" есть две кнопки "Кнопка1" и "Кнопка2"
для которых установлен обработчик события "КнопкаНажатие"

Откроем обработку в режиме предприятия,
нажмем на кнопку1, закроем обработку.

Откроем обработку в режиме конфигуратора
добавим на форму "Форма" табличное поле, сохраним обработку.

Откроем обработку в режиме предприятия...
Опа! табличного поля нет.

Лечится: перегрузить 1С или переименовать обработку.

Прикольно!


Релиз: 8.1.6.38. Менять не хочется. Страшно.
1 Собеседник
 
17.08.07
13:00
+(0) к заголовку "А много ли еще есть приколов?"
2 Собеседник
 
17.08.07
13:01
+(0) пол текста пропало:(

тзФормы = Новый ТаблицаЗначений;
тзФормы.Колонки.Добавить("Ключ");

>>>>

тзФормы = Новый ТаблицаЗначений;
тзФормы.Колонки.Добавить("Ключ");
тзФормы.Колонки.Добавить("Форма");
3 Собеседник
 
17.08.07
13:12
+(0) :( хотелось бы чтобы заголовок выглядел
"Присвоение переменной значения типа "Форма". А много ли еще есть приколов?"
4 НЕА123
 
17.08.07
13:24
Циклическая ссылка.
5 НЕА123
 
17.08.07
13:31
(4) + в обоих случаях.
6 Vbif
 
17.08.07
13:38
(0) а ты не пробывал закрыть все открытые тобой формы? в них прописана твоя форма и именно она открывается
7 Vbif
 
17.08.07
13:38
как только ты их закроешь, обработка будет работать как надо
8 НЕА123
 
17.08.07
13:48
+(6) ТЗ тоже надо убить. Скорее всего, до закрытия.
9 Vbif
 
17.08.07
13:52
(8) я посмотрел (платформа 8.1.7.37) и без убиения таблицы работает
10 Собеседник
 
17.08.07
14:35
Сорри, отлучалсО
(4) Циклическая ссылка где? у обработки 3 формы, ссылок на Основную нигде нет
И причем здесь это?
(6) пробовал - внесенные изменения не видны при открытии Основной формы
(8) помогло
Процедура ПриЗакрытии()
 тзФормы = "";
КонецПроцедуры

А в чем собственно прикол, то?
11 Собеседник
 
17.08.07
14:40
+(10) и что по поводу этого можете сказать v8: Прикол при передаче ЭтаФорма
12 НЕА123
 
17.08.07
14:58
м = Новый Массив;
м.Добавить(м);

и все. Иванаускас. м удалится только закрытии 1С.
13 Собеседник
 
17.08.07
15:45
(12) ?
А где есть похожий код в том, что было представлено?
Форма1  - объект раз
Форма2  - объект два
тзФормы - объект три.
14 НЕА123
 
17.08.07
16:00
(13) скорее всего из-за

Объект -> ТЗ -> формаN -> Объект
15 НЕА123
 
17.08.07
16:03
+(14) не, вот так
Объект -> форма -> ТЗ -> формаN -> Объект
16 Собеседник
 
17.08.07
16:08
(15) согласен.
Так оно и есть.
17 НЕА123
 
17.08.07
16:14
(16)чего-то теперь сомнения одолели ))) про истиность(15)
но, приблизительно, все же где-то там собака порылась.)))
18 Собеседник
 
17.08.07
16:17
НЕА123, сенкс.
Не будем "баловатся" с формами. Будем решать как-то по другому

Вообще расскажу зачем этот весь бредок был нужен.
В типовой: - редактирование контактной информации в форме списка регистра.
ПередНачаломИзменения или ...Добалением: Сколько раз на строке "пимкаеш" столько форм и отрывается.
Прилежная бабушка бухгалтер открыла случайно две формы. Редактировала последнюю.
После закрытия и сохранения "последней" формы, "увидела" что форма редактирования телефона все еще открыта (первая форма). Мужественно жмет ОК. В результате в регистре данные такие как были до изменений - форма, которая была открыта первой, не редактировалась.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn