Заполнить новый документ и открыть форму.

  1. 5 г. назад

    Чот завис.
    Нужно создать новый документ и открыть его форму. Управляемые формы.

    Как правильно делать?

    Ответы: (25) (26)
  2. :)

    Ответы: (2)
  3. Луч света :)

    На уф это оказывается не так очевидно как на обычных формах. Пару решений нашел в энторнете - все кривые.

  4. Новый документ надо заполнить.

  5. Форма = ПолучитьФорму("Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента, Новый Структура(), ЭтаФорма, УникальныйИдентификатор);
    ДанныеФормы = Форма.Объект;
    ДанныеФормы.Организация = ...
    ДанныеФормы.Партнер = ...
    Форма.Открыть();

  6. после открытия можно вызывать процедуры формы
    Форма.Процедура1()
    для заполнения каких-то периферийных реквизитов

  7. ой. щас напижжу. пжжи

  8. тут же клиент и сервер. я наобум написал

  9. В типовых куча служебных реквизитов на форме - Итоги, статусы серий, и полно всякого другого. В итоге документ открывается кривой.

    Ответы: (9) (16)
  10. (8) если делать через получить форму и использовать обработчики формы - откроется нормальный.

  11. Поэтому в типовых обработчики эскпортные

    Процедура СкладПриИзмененииЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт
    Ответы: (17)
  12. &НаКлиенте
    Процедура Команда1(Команда)
    	
    	Форма 		= ПолучитьФорму("Документ.РеализацияТоваровУслуг.Форма.ФормаДокумента");
    	ДанныеФормы = Форма.Объект;
    	ЗаполнитьФорму(ДанныеФормы);
    	КопироватьДанныеФормы(ДанныеФормы, Форма.Объект);
    	Форма.Открыть();
    	Форма.ОрганизацияПриИзмененииСервер();
    	
    КонецПроцедуры
    
    &НаСервере
    Процедура ЗаполнитьФорму(ДанныеФормы)
    	
    	ДанныеФормы.Организация = Справочники.Организации.УправленческаяОрганизация;
    	
    КонецПроцедуры
  13. я обычно так делаю

  14. И это одна из причин моего посыла поноса разрабам типовых особенно ЗУПа, потому что все пересчеты на уровне формы, особо через жопу для НДЛФ

  15. [...]. Оказывается процедуры формы можно вызывать даже если они не экспортные. Че за [...]? Разрыв шаблона.

  16. 20.12.2019 10:20:33 отредактировано jsmith82

    можно и так

    Форма.ОрганизацияПриИзмененииСервер();
    Форма.Открыть();
    

    т.е. так даже лучше

  17. Hans В типовых куча служебных реквизитов на форме - Итоги, статусы серий, и полно всякого другого. В итоге документ открывается кривой.

    надо использовать процедуры формы, чтобы заполнять это

  18. Fynjy Поэтому в типовых обработчики эскпортные

    Процедура СкладПриИзмененииЗавершение(РезультатВопроса, ДополнительныеПараметры) Экспорт

    без разницы, экспортные они или нет

    Ответы: (19)
  19. Форма = ПолучитьФорму("Документ.РеализацияТоваровУслуг.ФормаОбъекта");
    ОбъектФормы = Форма.Объект;
    ЗаполнитьРеализациюНаСервере(ОбъектФормы, АдресХранилища);
    КопироватьДанныеФормы(ОбъектФормы, Форма.Объект);
    // Это не экспортная процедура
    Форма.ПриЧтенииСозданииНаСервере();
    Форма.Открыть();

    Плять, я этого даже не знал.

    Ответы: (19) (20) (22)
  20. (17)(18) это скорее минус разрабам - сх.яли они видны.

    Ответы: (21)
  21. (18) ну ты когда внешние обработки заполнения пишешь, разве не используешь неэкспортные процедуры для обработки строк табличной части для заполнения периферийных реквизитов

    Ответы: (22)
  22. (19) потому что хозяин обращается (this)

    Ответы: (23) (24)
  23. jsmith82 (18) ну ты когда внешние обработки заполнения пишешь, разве не используешь неэкспортные процедуры для обработки строк табличной части для заполнения периферийных реквизитов

    Копировал все эти служебные приблуды в обработку заполнения. Реально не знал что можно так делать.

  24. (21) хотя да. модификаторов доступа в 1с нет. только Экспорт
    ну вот так вот. я уже несколько лет эту фичу знаю. как-то случайно что ли обнаружил

  25. (21) ООП только у нас нет для зис, но в целом логично.

  26. (0) ОткрытьЗначение(СоздатьДокумент())

    Ответы: (26) (29)
  27. MIK (0) ОткрытьЗначение(СоздатьДокумент())

    Документ еще не должен быть записан. А что должно возвращать СоздатьДокумент() ?

    Ответы: (28)
  28. он тебя троллит

  29. (26) согласен

  30. 20.12.2019 16:22:22 отредактировано Aistovich

    михуил не пэчи [...] (25) не работает

или зарегистрируйтесь чтобы ответить!