![]() |
![]() |
![]() |
|
Как во время выполнения обработки обновлять форму | ☑ | ||
---|---|---|---|---|
0
Velber
24.07.09
✎
00:30
|
Во время работы обработки, ее форма не изменяется и только после выполнения обработки изменяет все данные.
Как во время ее выполнения обновлять форму? |
|||
1
Velber
24.07.09
✎
00:30
|
Пробовал через Форма.Обновить(1) но все равно не обновляется.
|
|||
2
Ёпрст
гуру
24.07.09
✎
00:30
|
Форма.Обновить(0)
|
|||
3
Ёпрст
гуру
24.07.09
✎
00:31
|
(1) текст в студию..
|
|||
4
Стрелок
24.07.09
✎
00:31
|
Форма.Обновить(1)
(2) стыдно не знать |
|||
5
Один С
24.07.09
✎
00:31
|
хочешь мультики показывать?
|
|||
6
Velber
24.07.09
✎
00:32
|
ну что-то подобное)
|
|||
7
Стрелок
24.07.09
✎
00:32
|
у меня на форме лог загрузки выводится вов время работы формы
|
|||
8
Ёпрст
гуру
24.07.09
✎
00:32
|
(4) Стыдно не знать ЧТО ?!
|
|||
9
Velber
24.07.09
✎
00:32
|
(7) а как это сделать?
|
|||
10
Ёпрст
гуру
24.07.09
✎
00:33
|
Нахрена взводить флаг модифицированности формы ?
|
|||
11
Velber
24.07.09
✎
00:33
|
просто во время выполнения цикла, все висит, как дать команду форме обновиться?
|
|||
12
Ёпрст
гуру
24.07.09
✎
00:33
|
(11) я знаю как, но лучше пусть (7) тебе ответит :)...
|
|||
13
Velber
24.07.09
✎
00:34
|
Может вы там порешаете свои отношения потом, действительно нужно.
|
|||
14
Стрелок
24.07.09
✎
00:34
|
(13) ты не указывай чего и как нам делать. а слушай и жди.... щас код нарою
|
|||
15
Velber
24.07.09
✎
00:36
|
Почему все такие злые... жесть просто
|
|||
16
Ёпрст
гуру
24.07.09
✎
00:36
|
(15) Кто злой ?
|
|||
17
Стрелок
24.07.09
✎
00:36
|
Процедура ПровестиДокументы()
Если Вопрос("Провести документы?","Да+Нет")="Нет" Тогда Возврат; КонецЕсли; ХодЗагрузки=ХодЗагрузки+ ТекущееВремя()+" Начало проведение документов"+РазделительСтрок; Форма.Обновить(1); Док=СоздатьОбъект("Документ"); Документы.ВыбратьСтроки(); Пока Документы.ПолучитьСтроку()<>0 Цикл Док.НайтиДокумент(Документы.Документ); Если Док.Провести()=1 Тогда Документы.Проведен=2; ХодЗагрузки=ХодЗагрузки+ ТекущееВремя()+" Документ "+СокрЛП(Документы.Документ)+" успешно проведён"+РазделительСтрок; Иначе ХодЗагрузки=ХодЗагрузки+ ТекущееВремя()+" Документ "+СокрЛП(Документы.Документ)+" провести не удалось"+РазделительСтрок; КонецЕсли; КонецЦикла; ХодЗагрузки=ХодЗагрузки+ ТекущееВремя()+" Проведение документов завершено"+РазделительСтрок; Форма.Обновить(1); Этап=4; КонецПроцедуры Процедура СоздатьОбязательства() ФинОбязательства_=СоздатьОбъект("ТаблицаЗначений"); ФинОбязательства_.Загрузить(ФинОбязательства); ФинОбязательства_.Свернуть("НомерРегистрации,ЕДРПОУ,КЭКВ,РСчет,ОрганизацияСтр,Организация,ДатаЗанесения","Сумма"); // грузим юр.обязательства ХодЗагрузки=ХодЗагрузки+ ТекущееВремя()+" Начало загрузки юридических обязательств"+РазделительСтрок; Форма.Обновить(1); Если ЮрОбязательства.КоличествоСтрок()<>0 Тогда Если Вопрос("В таблице уже существуют загруженные данные"+РазделительСтрок+ "по юридическим обязательствам. Вы действительно продолжать?","Да+Нет")="Нет" Тогда Возврат; Иначе ЮрОбязательства.УдалитьСтроки(); КонецЕсли; КонецЕсли; ФинОбязательства_.ВыбратьСтроки(); Пока ФинОбязательства_.ПолучитьСтроку()<>0 Цикл ЮрОбязательства.НоваяСтрока(); ЮрОбязательства.НомСтр=ЮрОбязательства.КоличествоСтрок(); ЮрОбязательства.НомерРегистрации=ФинОбязательства_.НомерРегистрации; ЮрОбязательства.ДатаЗанесения=ФинОбязательства_.ДатаЗанесения; ЮрОбязательства.ЕДРПОУ=ФинОбязательства_.ЕДРПОУ; ЮрОбязательства.КЭКВ=ФинОбязательства_.КЭКВ; ЮрОбязательства.Организация=ФинОбязательства_.Организация; ЮрОбязательства.ОрганизацияСтр=ФинОбязательства_.ОрганизацияСтр; ЮрОбязательства.Сумма=ФинОбязательства_.Сумма; ЮрОбязательства.ДатаДо=ФинОбязательства_.ДатаЗанесения; КонецЦикла; Форма.Закладки.ДобавитьЗначение("ЮрОбязательства","Юр.обязательства"); ХодЗагрузки=ХодЗагрузки+ ТекущееВремя()+" Окончание загрузки юридических обязательств"+РазделительСтрок; Форма.Обновить(1); ХодЗагрузки=ХодЗагрузки+ ТекущееВремя()+" Начало загрузки платёжных поручений"+РазделительСтрок; Форма.Обновить(1); ФинОбязательства.ВыбратьСтроки(); Пока ФинОбязательства.ПолучитьСтроку()<>0 Цикл Платежки.НоваяСтрока(); Платежки.НомСтр=ФинОбязательства.НомСтр; Платежки.НомерРегистрации=ФинОбязательства.НомерРегистрации; Платежки.ДатаЗанесения=ФинОбязательства.ДатаЗанесения; Платежки.ЕДРПОУ=ФинОбязательства.ЕДРПОУ; Платежки.КЭКВ=ФинОбязательства.КЭКВ; Платежки.Организация=ФинОбязательства.Организация; Платежки.РСчет=ФинОбязательства.РСчет; Платежки.ОрганизацияСтр=ФинОбязательства.ОрганизацияСтр; Платежки.Сумма=ФинОбязательства.Сумма; КонецЦикла; Форма.Закладки.ДобавитьЗначение("Платежки","Плат.поручения"); ХодЗагрузки=ХодЗагрузки+ ТекущееВремя()+" Окончание загрузки платёжных поручений"+РазделительСтрок; Форма.Обновить(1); Этап=2; КонецПроцедуры ХодЗагрузки - переменная модуля. на форме текстовое поле в формуле которого написано ХодЗагрузки |
|||
18
Стрелок
24.07.09
✎
00:36
|
(15) тебе просто показалось ;)
|
|||
19
Стрелок
24.07.09
✎
00:38
|
(10) флаг модифицированности вызывает обновление формы если юзать текстовый реквизит так как указано в 17 то при этом он появится на экране
если юзать реквизит формы и ему присваивать значение(не через форму) то изменения на форме станут видны только после обновления картинки - т.е. чаще всего в конце работы обработки |
|||
20
Ёпрст
гуру
24.07.09
✎
00:39
|
(19) Праильно, но нафига там флаг модифицированности в 1 при этом затачивать?
|
|||
21
Ёпрст
гуру
24.07.09
✎
00:39
|
:)
Усё и без модифицированности работает.. |
|||
22
Ёпрст
гуру
24.07.09
✎
00:41
|
(0) если интересно,что еще можно сделать на форме, можешь посмотреть :
http://infostart.ru/projects/3276/ http://infostart.ru/projects/2573/ |
|||
23
Стрелок
24.07.09
✎
00:41
|
(20) а ты попробуй без - изменения на форме появятся только после отработки процедуры. так в 1С задумано (я с Альфом консультировался). форма обновляется либо по взводу флага этого либо при появлении надписи "Для подсказки нажмите Ф1" т.е. когда отработала процедура от начала до конца
|
|||
24
Velber
24.07.09
✎
00:41
|
Огромное СПАСИБО!!! Все получилось!
|
|||
25
Стрелок
24.07.09
✎
00:42
|
(24) как?
|
|||
26
Ёпрст
гуру
24.07.09
✎
00:42
|
(23)всё может быть..я обходился другими методами..
|
|||
27
Стрелок
24.07.09
✎
00:43
|
(26) какими?
|
|||
28
Velber
24.07.09
✎
00:46
|
Просто для текстового поля убрал идентификатор и оставил только в формулу
|
|||
29
Стрелок
24.07.09
✎
00:47
|
ааааа ну я же говорил. фишка именно в этом
|
|||
30
Ёпрст
гуру
24.07.09
✎
00:48
|
(27) через ложное закрытие или ПриПовторномОткрытии можно сделать
Хотя, твоя не совсем правда..Слепил такой код: Пока 1=1 Цикл Форма.ТекстНаФорме.Заголовок(ТекущееВремя()); Форма.Обновить(0); КонецЦикла; усё работает :) |
|||
31
Velber
24.07.09
✎
00:48
|
))))
|
|||
32
Velber
24.07.09
✎
00:49
|
Спасибо сильно выручили! Вы только не деритесь)))
|
|||
33
Стрелок
24.07.09
✎
00:54
|
(30) читаем русские буквы включив мозг
ЗЫ кстати - часики на форме не так делаются... красивее и главное - в фоне работают. а не в цикле бесконечном |
|||
34
Ёпрст
гуру
24.07.09
✎
00:57
|
(33) Ё.. я просто тебе показал, что всё работает без модифицированности формы..
А по-поводу часиков - у Рупора на сайте есть прекрасная демонстрашка.. |
|||
35
AcaGost
24.07.09
✎
00:58
|
ОбработкаОжидания(<?>);
|
|||
36
Стрелок
24.07.09
✎
00:59
|
(34) ага именно про рупоровский метод я и говорю.....
а обновление формы без модификации.... сделай на форме два реквизита типа дата и попробуй их поменять в ходе работы процедуры.... сильно удивишься разнице между Обновить(0) и Обновить(1) |
|||
37
Стрелок
24.07.09
✎
00:59
|
(35) ну что ты.... РасчитатьРегистрыНа(<?>)
|
|||
38
Ёпрст
гуру
24.07.09
✎
01:04
|
(36) и чего ? Реквизиты диалога типа едит не обновятся вообще, хоть с форма.Обновить(0), хоть с Форма.Обновить(1) ...пока цикл до конца не доедет..
Если только цикл не делать другими методами.. |
|||
39
Стрелок
24.07.09
✎
01:04
|
(38) если сделать Обновить(1) то обновятся сразу ;)
|
|||
40
Стрелок
24.07.09
✎
01:05
|
(+39) поправка - если это будет ДО цикла или запроса
я так понимаю цикл и запрос грузят систему хорошо и не остаётся ресурсов на он-лайн обновление формы. а вот всё остальное позволяет компу "найти время" для обновления формы |
|||
41
Ёпрст
гуру
24.07.09
✎
01:06
|
(39) Ха.. но автору то нужно - во время цикла..!
:) Так что с форма.Обновиьт(1) ты явно погорячился :) |
|||
42
Ёпрст
гуру
24.07.09
✎
01:07
|
Можно сделать и в диалогах типа edit ... если отдать отрисовку , например в ложное закрытие формы..
|
|||
43
Стрелок
24.07.09
✎
01:08
|
(41) не погорячился. в цикле обновляется через текстовый реквизит с формулой
|
|||
44
Стрелок
24.07.09
✎
01:08
|
в цикле не работает обновление реквизитов формы
|
|||
45
ZDenis
24.07.09
✎
01:14
|
(43) но через текстовый реквизит с формой обновляется и с Обновить(0) =))
|
|||
46
Стрелок
24.07.09
✎
01:16
|
(45) далеко не всегда
|
|||
47
Стрелок
24.07.09
✎
01:16
|
(+46) закономерности не выявил но для надёжности всегда ставлю 1
|
|||
48
Ёпрст
гуру
24.07.09
✎
01:16
|
(44) работает :)
http://webfile.ru/3793988 |
|||
49
Стрелок
24.07.09
✎
01:19
|
(48) конечно работает. метода рупора в чистом виде... отчепись ;)
|
|||
50
Ёпрст
гуру
24.07.09
✎
01:20
|
(49) не.. у Рупора там через повторное открытие сделано..
|
|||
51
Стрелок
24.07.09
✎
01:25
|
(50) дащаз.... я знаю и юзаю методу через псевдозакрытие как раз....
|
|||
52
ZDenis
24.07.09
✎
01:25
|
У меня и так работает, все обновляется
http://webfile.ru/3793999 |
|||
53
ZDenis
24.07.09
✎
01:26
|
52 без закрытия и с форма обновить(0)
|
|||
54
Стрелок
24.07.09
✎
01:29
|
(52) а что ещё кроме бесконечного обновления формы выполнится может? задача то другая - вывести параллельное обновление формы и полезную работу
|
|||
55
Cthulhu
24.07.09
✎
01:47
|
тюблин...
Дитер, харош триндеть. Всю жизень обновляю как Ёпрст показал - назначением текстовому рекыизиту заголовка и форма.обновить(0), для отражения процесов, для прогресс-бара, и даже екзотику для пробы - в функции, вызываемой из запроса... все работает... шо ты дойеппался до формулы... |
|||
56
Стрелок
24.07.09
✎
01:48
|
(55) пшёл в пень. кто ещё до кого докапался ;)
каждый делает так как удобно.... я делаю так. но самое смешное что у автора темы по ёпрсту и тебе - не сработало а по мне - сработало. так что... иди хава |
|||
57
Стрелок
24.07.09
✎
01:48
|
иди хавай мозг другим ;)
|
|||
58
Cthulhu
24.07.09
✎
01:51
|
(56): тычотупой?.. это ты тут истеришь и холивор на пустом месте разводишь, а у меня все спокойно работает как надо (несмотря на то что я "с АЛьФом" не "консультировался")))))
(57): намекаеш шо у тя пожblвиццо нечем?.. (шудго, не пенься))) |
|||
59
Стрелок
24.07.09
✎
01:52
|
(55) слушая гуру. ты говоришь всегда пользовался методом ёпрста. не сложно будет мне кинуть обработку реальную интересно uzkyenm не на трёхстрочечный код а на реально полезную обработку например с прогресс-баром... только давай договоримся - она точно будет твоя а не чья то... хорошо? ну как земляк земляку . у тебя же их куева туча должно быть
|
|||
60
Стрелок
24.07.09
✎
01:53
|
(58) слышь ты многоликий анус..... иди у петросяна поучись... остряк-самоучка.
|
|||
61
Cthulhu
24.07.09
✎
01:56
|
(59): дятел, по слогам читай - я сказа КАК у Ёпрста, превожу для тупых: "как в посте (30)"...
(60): накуа мне питрасян если ты тут выступаеш не хуже ))))) |
|||
62
Стрелок
24.07.09
✎
01:57
|
(61) ті тупой? я тебе говорю - кидай свою обработку со своим методом обновления - мне интересно глянуть. если конечно они у тебя есть, в чём я сильно сомневаюсь....
|
|||
63
Cthulhu
24.07.09
✎
02:01
|
(62): та не, то ты тупой.. и говори так своей бабушке, дятел, у тя чо, и руки тоже отломали?.. у нас для нищих лакеев нет, те сказали как и что - тестируй сам, мне для тебя пур-прогрессбары из обработок, лопатящих мои данные, выковыривать никакого мотиву нет - ни интересу (ибо тупишь а тупые мне неинтересны) и даже скверносовишь...
|
|||
64
Cthulhu
24.07.09
✎
02:03
|
ЗЫ: спать_на.. завтро доругаемся..
|
|||
65
Злопчинский
24.07.09
✎
22:51
|
слабо чего-то понял.. в отпуске видать потомучто...
на форме есть реквизит строка неогр.длины многострочное поле ввода куда во время выполнения обработки пишется лог полеПротокола=ПолеПротокола+РасзделительСтрок+"очередная инфа" Форма.Обновить(); - в одно обработке - все обновляеся; - в другой аналогичной - только после окончания выполнения кода. .. ??? |
|||
66
Ёпрст
гуру
24.07.09
✎
23:00
|
(65) речь про текст на форме и реквизит диалога типа строка...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |