|
Как открыть дополнительную форму документа?
Jackman, RomaH, программистище, ZaЖизнь, Буковка, Волшебник, Ненавижу 1С, Mr_Boogie, Timon1405, saaken, Prog_man, Chai Nic, LienXo, baza1, _Batoo, Hawk_1c, Tefal, RVN, alexela, lEvGl, Мультук, yurikmellon2, Доминошник, АЛьФ, formista2000, CepeLLlka, Климов Сергей, maxab72, vbus, ReaLg, trad, kostik79, Смотрящий, Rico_1C
| ☑ |
0
Chai Nic
19.11.24
✎
13:26
|
Есть документ, у него основная форма с данными. Мне надо часть данных вынести в дополнительную форму документа, и открывать её по кнопке.
Доп.форму создал, вытащил на неё нужные поля из Объекта, открываю её из основной формы методом ОткрытьФорму("Документ.МойДокумент.Форма.ДопФорма"), она открывается, но пустая, никак не связана с объектом, который был в основной форме.
Как допформу открыть с привязкой к открытому объекту, подскажите?
|
|
1
Волшебник
19.11.24
✎
13:29
|
Ф = Объект.ПолучитьФорму("ДопФорма");
Ф.Открыть();
|
|
2
Chai Nic
19.11.24
✎
13:32
|
(1) "Метод объекта не обнаружен (ПолучитьФорму)"
Этот метод только в толстом клиенте работает. А у меня УФ.
|
|
3
Mr_Boogie
19.11.24
✎
13:34
|
|
|
4
Климов Сергей
19.11.24
✎
13:38
|
(2) Примерно так:
&НаКлиенте
Процедура СложноеЦенообразование(Команда)
ЭтаФорма.Записать();
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Ключ", Объект.Ссылка);
ОписаниеОповещения = Новый ОписаниеОповещения("РедактированиеЦенообразованияЗавершение", ЭтотОбъект);
ОткрытьФорму("Документ.Спецификация.Форма.ФормаЦенообразования", ПараметрыФормы,,,,,ОписаниеОповещения);
КонецПроцедуры
|
|
5
Волшебник
19.11.24
✎
13:39
|
(2) Жалкие неудачники
|
|
6
Chai Nic
19.11.24
✎
13:43
|
(3)(4)
Если я через ПараметрыФормы передаю Объект, а потом в другой форме в ПриСозданииНаСервере пытаюсь сделать Объект=Параметры.Объект, то получаю ошибку "Нельзя изменять поле, содержащее объект данных формы"
|
|
7
RVN
19.11.24
✎
13:46
|
И при этом вы хотите в 1С классы, ООП и прочие модные навороты. Вот и представьте какой трэш будет в конфигурациях, если уж такие простые вещи вызывают вопросы....
P.S. (6) Обратите внимание в приведенном примере передают не Объект, а ссылку
|
|
8
Волшебник
19.11.24
✎
13:47
|
(7) Мы ещё хотим лямбды и вложенные функции.
|
|
9
Chai Nic
19.11.24
✎
13:47
|
(7) Вы предлагаете заполнить заново по этой ссылке реквизиты формы вручную? При том, что эта форма является формой документа. Как это тогда сделать? А если документ ещё не записан и ссылки нет?
|
|
10
Chai Nic
19.11.24
✎
13:49
|
Если нельзя, то так и скажите, буду тогда вручную делать через простую форму, без привязки к объекту, передавая в неё коллекции через параметры..
|
|
11
Мультук
19.11.24
✎
13:49
|
(0)
Зачем вы это делаете?
Вам страниц мало ? Играйтесь со страницами и "Видимость"
|
|
12
Chai Nic
19.11.24
✎
13:50
|
(11) Ок. Если это настолько сложно, то пусть будет так.
|
|
13
RVN
19.11.24
✎
13:52
|
(8) Вот почему-то вспомнилось:
Стюардесса в салоне нового лайнера объявляет о то, что находится в самолете:
- На первой палубе - багаж, на второй - бар, на третьей - поле для гольфа, на четвертой бассейн.
И добавляет:
- А теперь, господа, пристегнитесь. Сейчас со всей этой хуйней мы попробуем взлететь.
И вот результат:
https://mode1976.livejournal.com/35976.html
|
|
14
Prog_man
19.11.24
✎
13:58
|
(0) &НаКлиенте
Процедура мДобавитьКомментарий(Команда)
ПараметрыФормы = Новый Структура("Ключ", Объект.Ссылка);
Оповещение = Новый ОписаниеОповещения("мОбновитьФорму", ЭтотОбъект);
ОткрытьФорму("Документ.ПеремещениеТоваров.Форма.ФормаДокументаКомментарий", ПараметрыФормы, ЭтотОбъект,,,,Оповещение,РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
КонецПроцедуры
&НаКлиенте
Процедура мОбновитьФорму(Результат, ДополнительныеПараметры) Экспорт
ЭтаФорма.Прочитать();
КонецПроцедуры
|
|
15
RomaH
19.11.24
✎
13:56
|
есть такой злой метод "КопироватьДанныеФормы"
|
|
16
Chai Nic
19.11.24
✎
14:10
|
(15) Спасибо! Это работает.
|
|
17
RomaH
19.11.24
✎
14:26
|
тока не увлекайся - 1БИТ насовал его во всюду
и доп реквизиты формы теперь не "обновляются" - кроме того что при создании/чтении и после записи надо их перечитывать, так еще и после каждого вызова этого метода
|
|