Вывод на экран формы нового документа в 8.2 Задача - из ТЗ программно сформировать документ, открыть его форму пользователю, чтобы он сам там уже заполнил нужные ему поля. В 7.7 сие было возможно, но показать табличную часть документа пользователю нельзя было не записав документ. Можно ли это в 8.2? Просто записать документ - это уже привязка к моменту времени, не хотелось бы этого делать если можно... |
можно |
А можно, пардон, код для примера? У меня есть переменная типа ДокументОбъект, что с ней дальше делать? |
Начинаю так: ТекДокумент = ДокТакогоТоВида.СоздатьДокумент(); (получаю переменную типа ДокументОбъект с пустой ссылкой ибо документ не записан). Далее, могу обратиться к ее табличной части и ее заполнить, так? А вот что дальше? Как вывести форму на экран и показать ее пользователю? |
НоваяСтркока = ДокументОбъект.Состав.Добавить() //заполняешь реквизиты ТЧ //получаешь форму и открываешь |
(5) 1) состав - это название ТЧ документа? 2) как получить форму и открыть? |
1) да 2) ПолучитьФорму().Открыть() :)))) |
(7) Огромное спасибо, все работает :). А как автоматом присвоить номер новому документу? Нумератор отсутствует, нумерация в пределах года. |
8-Stella12 > примерно так же как в 7.7 |
+9 установи дату и запиши |
(10) Дату установила на текущую до заполнения табличной части. Табличная часть заполняется программно (все вижу отладчиком), но при открытии формы она пустая :(. |
Попробовала метод Записать() перед выводом формы (вот только какая разница по сравнению с 7.7...) Форма все равно выдалась пустая. Однако при открытии из журнала выдалась прекрасно заполненная форма со всеми данными, в т.ч. и с номером. Что делать? Мне нужно на экран выдать именно форму с данными, чтобы пользователь мог ее продолжить редактировать. УТ 10.3. |
ээээ... [url]http://www.obrabotki.com/1s-openform-managedforms/[/url] |
Спасибо за ссылку, сохраню :). Но у меня неуправляемая форма... А в ней сделать так нельзя? В любом случае ситуация у меня странная, ведь документ я записываю уже :). Описываю что у меня происходит. В общем синтаксис у меня примерно такой: ДокОбъект.Дата = ТекущаяДата(); //заполняется ТЧ документа ДокОбъект.Записать(); ФормаДокумента = ДокОбъект.ПолучитьФорму("Документ.ТипДока.ФормаОбъекта"); ФормаДокумента.Открыть(); //на экран открывается девственно пустая форма После этого я пытаюсь закрыть эту форму, она мне предлагает сохранить изменения, я говорю "нет" :). В базе нахожу свой док и его открываю. Данные там все есть :). Где ошибка? |
По проблеме отбой, друг подсказал. |
(0) > В 7.7 сие было возможно, - звиздишь, не верю!!!! . Док = СоздатьОбъект("Документ.Реализация"); Док.Новый(); Док.Комментарий = "какой-то идентификатор"; . открой форму ИМЕННО ЭТОГО НОВОГО ДОКУМЕНТА |
16-Чучундер >"Шарик, ты балбес" КонтекстФормы=""; ОткрытьФорму("Документ.РасходныйОрдерТБ",КонтекстФормы); КонтекстФормы.Основание="Превед"; КонтекстФормы.Форма.Обновить(); |
(17) ты сам балбес*2, читать научись ;-) я просил открыть форму ИМЕННО ЭТОГО НОВОГО ДОКУМЕНТА, определямого (в т.ч. и заполнение реквизитов) выше по коду до (предполагаемого) открытия формы, я не просил манипулировать с формой открытого документа. |
(17) для облегчения понимания - давай попробуем так: открыть форму нового документа нужно модально... |
18-Чучундер >просил бы сразу денег, чего уж. все равно мимо темы |
(20) по (19) слился? ;-) |
(21)А как же синтакс помошник. Там прямым текстом написано - ОткрытьФормуНовогоДокумента |
Текущее время: 08:10. Часовой пояс GMT +3. |