Чот завис.
Нужно создать новый документ и открыть его форму. Управляемые формы.
Как правильно делать?
Чот завис.
Нужно создать новый документ и открыть его форму. Управляемые формы.
Как правильно делать?
Луч света :)
На уф это оказывается не так очевидно как на обычных формах. Пару решений нашел в энторнете - все кривые.
Новый документ надо заполнить.
Форма = ПолучитьФорму("Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента, Новый Структура(), ЭтаФорма, УникальныйИдентификатор);
ДанныеФормы = Форма.Объект;
ДанныеФормы.Организация = ...
ДанныеФормы.Партнер = ...
Форма.Открыть();
после открытия можно вызывать процедуры формы
Форма.Процедура1()
для заполнения каких-то периферийных реквизитов
ой. щас напижжу. пжжи
тут же клиент и сервер. я наобум написал
В типовых куча служебных реквизитов на форме - Итоги, статусы серий, и полно всякого другого. В итоге документ открывается кривой.
(8) если делать через получить форму и использовать обработчики формы - откроется нормальный.
Поэтому в типовых обработчики эскпортные
Процедура СкладПриИзмененииЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
&НаКлиенте Процедура Команда1(Команда) Форма = ПолучитьФорму("Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента"); ДанныеФормы = Форма.Объект; ЗаполнитьФорму(ДанныеФормы); КопироватьДанныеФормы(ДанныеФормы, Форма.Объект); Форма.Открыть(); Форма.ОрганизацияПриИзмененииСервер(); КонецПроцедуры &НаСервере Процедура ЗаполнитьФорму(ДанныеФормы) ДанныеФормы.Организация = Справочники.Организации.УправленческаяОрганизация; КонецПроцедуры
я обычно так делаю
И это одна из причин моего посыла поноса разрабам типовых особенно ЗУПа, потому что все пересчеты на уровне формы, особо через жопу для НДЛФ
[...]. Оказывается процедуры формы можно вызывать даже если они не экспортные. Че за [...]? Разрыв шаблона.
можно и так
Форма.ОрганизацияПриИзмененииСервер(); Форма.Открыть();
т.е. так даже лучше
Hans В типовых куча служебных реквизитов на форме - Итоги, статусы серий, и полно всякого другого. В итоге документ открывается кривой.
надо использовать процедуры формы, чтобы заполнять это
Форма = ПолучитьФорму("Документ.РеализацияТоваровУслуг.ФормаОбъекта"); ОбъектФормы = Форма.Объект; ЗаполнитьРеализациюНаСервере(ОбъектФормы, АдресХранилища); КопироватьДанныеФормы(ОбъектФормы, Форма.Объект); // Это не экспортная процедура Форма.ПриЧтенииСозданииНаСервере(); Форма.Открыть();
Плять, я этого даже не знал.
(21) хотя да. модификаторов доступа в 1с нет. только Экспорт
ну вот так вот. я уже несколько лет эту фичу знаю. как-то случайно что ли обнаружил
(21) ООП только у нас нет для зис, но в целом логично.
он тебя троллит
(26) согласен
михуил не пэчи [...] (25) не работает