![]() |
из отчета Запрос после ОткрытьФорму Отчет. В нем Таблица значений, заполняемая по запросу. Есть кнопка Создать новый документ. После его создания/редактирования, таблица значений в отчете должна обновиться. Вопрос. Как это сделать? Прописала : ОткрытьФорму("Документ.Заявка"); ЗапросПоДокументам(); Так он сперва выполняет запрос, а потом уже открывает форму. Ну и конечно, новые данные не попадают в ТЗ отчета. Что делать? |
ОткрытьФормуМодально? ничего не понял... |
(1) А я понял, но только одно: судя по другим веткам, такая задача автору явно не по зубам. |
(2) я так поняла, вы всегда отказываетесь от задач, которые вам "не по зубам". Наверное, прямо с пеленок умели программировать в 1С и никаких проблем не было. По-сему,следуя вашей логике, я просто не имею права узнавать то, что не знаю... |
(3) Ути-пути, какие мы сердитые! Ладно, открою вам то, на что вы имеете право: на самом деле строчка ОткрытьФорму() выполняется [b]раньше[/b], чем ЗапросПоДокументам(). Просто движок 1С не ждет (и не должен ждать!), пока прочитаются соответствующие таблицы, выполнится код ПриОткрытии() документа "Заявка" и отрисуется на экране его диалог. ЗапросПоДокументам() выполняется [b]параллельно[/b] со всей этой кухней, может и [b]закончиться раньше[/b], вот и кажется, что "он сперва выполняет запрос". Ферштеен? Ну, а остальные ваши проблемы сначала надо перевести с женского языка на программистский. |
Подожду ответа от тех, кто знает решение задачи. (4)это я и так знаю. |
5-Lisonia > Дык, решение-то вполне очевидно: запрос должен ждать записи документа. Как минимум. А то и проведение оного. И непременно закрытия формы. А уже потоооом включать [em]энтуазизм[/em] и перебирать записи в журнале... ;) Так что ответ дан. Сразу. |
5-Lisonia > Правильное решение задачи: Когда пользователь желает из отчета создать или отредактировать документ - отчет должен открыть форму документа так, чтобы владельцем формы оказался сам отчет. В событии "После записи" формы документа нужно вызвать оповещение о выборе, передав в качестве значения выбора ссылку на записанный документ. В событии "Обработка выбора" формы отчета нужно описать код обновления данных в отчете. *достал попкорн и с интересом ждет реакции ТС* |
(7) Может, это и "правильное решение задачи", но вот с "событием "После записи" формы документа" может получиться маааленькая заминка - ветка размещена в секции "v7". |
8-Ткачик > Давно? 20 минут назад вроде в v8 была. Я фиг знает, у ТС ветки то там, то тут, форум на них вообще болт клал, никогда не знаешь о чем люди говорят. Кругом одни уроды © |
9-Reaper > И [em]Прописала : ОткрытьФорму("Документ.Заявка");[/em] ничего не говорит? И душа не ёкнула? :D |
10-VZ >Ни разу. Методы одинаковые, тип параметра - тоже. А что в параметре - я и не смотрю. Контекстная подсказка же. |
забавная девушка... Главное, что все виноваты |
а может от аечки сплясать? зачем ваще открывать эту самую форму перед запросом? Какая великая цель ? |
в самом тупом варианте поркомендовал бы в отчете сделать кнопку "обновить". Остальные варианты тоже есть, но сложнее для обсуждения ... Для примера: 1- модальное открытие 2- использование генерации событий и тд |
Проситите, что не отвечала - не было возможности... ДР, знаете ли... (12) никого виноватыми не считаю, что Вы?)) (9) мне нужно решать задачи и в v7 и v8. Поясню, может быть не будете столь строги со мной... Так судьба сложилась, что большое предприятие развалилось. Работали на v7. И конфы писали, и изменения вносили не хилые... Но, оказывается, многие аспекты v7 даже не приходилось затрагивать.. Посему нужно восполнять знания. На НР - и v7 и v8, которую вообще с нуля приходится осваивать...Надеюсь на понимание и поддержку, ибо больше искать ответы не где... Ребят, спасибо за совет, вы очень завуалированно дали ответ )) Все получилось! ОткрытьФормуМодально - и тогда после записи документа команда передается на след. строку. т.е. ОткрытьФормуМодально <НовыйЗапросОбновленияФормы> |
15-Lisonia > Примечание: Для "восьмерки" [em]ОткрытьФормуМодально [/em]ныне не приветствуется ;) |
Спасибо, буду знать )) Но это - в "семерке". |
Текущее время: 10:04. Часовой пояс GMT +3. |