AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: База знаний и проекты
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.08.2007, 17:41   #41  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Цитата:
Вот так всегда...
На самом интересном месте выясняется, что не Иван Иванович, а Петр Петрович
не в среду, а в понедельник,
и не продал, а купил...
mazzy, а я где-то писал, что это отчет? или это только твои предположения?

Цитата:
Какого черта беспокоится о юзабилити, если "Пользователи вообще ничего не увидят"?
Пользователи видят прогресс операции. Больше ничего. Если бы последовательность действий можно было бы свести к одному прогресс-бару - с удовольствием бы сделал именно так.
Старый 09.08.2007, 17:43   #42  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Андре Посмотреть сообщение
mazzy, а я где-то писал, что это отчет? или это только твои предположения?
Да, действительно, только предположения...
В коде был использован ReportId.
__________________
полезное на axForum, github, vk, coub.
Старый 09.08.2007, 17:43   #43  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Цитата:
Угу. И в пакетном режиме тоже не работает
Ты меня почти убедил, повесил на настройку.

Цитата:
А он еще и не работает?
А как же 20 минут?
Работает у меня на ноуте и работает в промышленной эксплуатации - это очень разные вещи
Старый 09.08.2007, 17:44   #44  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Цитата:
В коде был использован ReportId.
Идентификатор поступившего на вход документа (excel-файла). Сам он был сформирован не в Аксапте. Моя задача его сохранить в системе, распарсить, на основе него породить ряд новых excel-документов.
Короче, один reportId обрабатывается только один раз. Второй раз будет уже другой reportId.
Старый 09.08.2007, 17:49   #45  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Андре Посмотреть сообщение
Короче, один reportId обрабатывается только один раз. Второй раз будет уже другой reportId.
Т.е. вызывающий метод еще и идентификатор уникальный должен сгенерить...
что-то уж очень ограниченная область применения получается. нафих-нафих.
__________________
полезное на axForum, github, vk, coub.
Старый 09.08.2007, 17:53   #46  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Цитата:
Т.е. вызывающий метод еще и идентификатор уникальный должен сгенерить...
что-то уж очень ограниченная область применения получается. нафих-нафих.
Либо я потерял нить рассуждения, либо ты.... Данный код не относится к прогресс-бару. Если заменить его на sleep(1000) ничего не изменится.
Для отображения прогресс бара ничего генерить не надо. Если это требуется для логики операции - то пож-та.
Старый 09.08.2007, 17:54   #47  
Recoilme is offline
Recoilme
злыдень
Аватар для Recoilme
Злыдни
 
895 / 192 (8) ++++++
Регистрация: 18.06.2003
Камешек в стандартный пргресс-бар:
Тормозит ли градусник?
Цитата:
Сообщение от glibs Посмотреть сообщение
Можно не устанавливать итог. А в тексте иногда можно написать что-то типа

Удаление записей в любимой таблице. Запись 39284 из 5847847.
Цитата:
Сообщение от kashperuk Посмотреть сообщение
2. А есть ли updateInterval? или каждый раз при incCount() выполняется перерисовка формы?
Стандартный прогресс выполняет кучу телодвижений по обсчетам на каждую итерацию, особенно это заметно при выводе settext. И плевать он хотел на апдейт интервал. Разница в быстродействии при вызове settext и без него - в разы.
__________________
Ибо зло есть лучшая сила человека. "Человек должен становиться все лучше и злее" -- так учу я. /Ф. Ницше/
Старый 09.08.2007, 17:57   #48  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
В общем это... о вкусах не спорят. Главное, чтобы мы не поссорились из-за пустяков.
Цитата:
Сообщение от Андре
...
Есть последовательность длительных невложенных операций, которые выполняются при запуске пользователем некой периодической операции.
...
По теме вот чего я еще скажу напоследок.

Сразу предупреждаю, что мнение у меня нетрадиционное и встречаемое многими с агрессией.

В моем представлении "длительная операция" — это минуты хотябы две-три.

Пользователь, который регулярно или хотябы время от времени сидит тупо перед монитором и смотрит кино под названием "Красивый прогресс-бар"... он либо работает по принципу "работа не волк — в лес не убежит" (т.е. вредитель с т.з. бизнеса), либо пенсионер, который уже все в жизни успел сделать, либо ... (я промолчу).

В общем, в сервер пакетной обработки нужно такие задачи с инфологом и уведомлением об успешной обработке, а не прогресс-бары для них рисовать красивые. Такое вот мое IMHO.
__________________
С уважением,
glibs®
За это сообщение автора поблагодарили: mazzy (5).
Старый 09.08.2007, 17:58   #49  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Андре Посмотреть сообщение
Данный код не относится к прогресс-бару.
К стандартному - не относится.
К самодельному - очень даже.

Цитата:
Сообщение от Андре Посмотреть сообщение
Для отображения прогресс бара ничего генерить не надо. Если это требуется для логики операции - то пож-та.
Как это не надо, если у тебя внутри запрос по этому идентификатру идет.

Цитата:
Сообщение от Recoilme Посмотреть сообщение
Камешек в стандартный пргресс-бар:
Тормозит ли градусник?


Стандартный прогресс выполняет кучу телодвижений по обсчетам на каждую итерацию, особенно это заметно при выводе settext. И плевать он хотел на апдейт интервал. Разница в быстродействии при вызове settext и без него - в разы.
Еще один неразобравшийся, блин... Recoilme, прочитайте ту ветку до конца.
Не хотите использовать - не используйте.

В общем, ясно.
Андре, спасибо за интересное обсуждение.
__________________
полезное на axForum, github, vk, coub.
Старый 09.08.2007, 18:00   #50  
otkudao
Гость
 
n/a
1. Если делается для бухгалтеров (да и любых других конечных пользователей), то логи и проценты завершения ошибочное завершение исправить не помогут. Все равно программера вызывать. А ему это не надо.
2. Т.к. полезность информационной составляющей сомнительна, остается только "успокаивающая составляющая". А она в стандарте есть.
3. 1% ситуаций, в котором используется новый прогрессбар приведет к постоянному дерганию программиста "сделайте нам красивенькое окошечко сообщений" в остальных 99%... Оно Вам надо?
Старый 09.08.2007, 18:06   #51  
Андре is offline
Андре
Moderator
Сотрудники компании GMCS
 
2,375 / 464 (20) +++++++
Регистрация: 03.12.2001
Цитата:
Как это не надо, если у тебя внутри запрос по этому идентификатру идет.
Код взят из блока "Пример использования". Запрос идет не внутри прогресс бара. Замени на
X++:
for (int i=0; i<=1000; i++)
  progress.nextStep();
ничего не изменится.

Цитата:
Андре, спасибо за интересное обсуждение.
Тебе спасибо
Старый 09.08.2007, 18:13   #52  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Вот проект.
Содержит немного доработанные куски кода Андре.
Job для демонстрации возможностей (кстати, для Маззи туда впихнул стандартный прогресс бар еще - именно так и работает все при установке Оракла, или СКЛ сервера)

Класс для тестирования - правда здесь только быстродействие.
Трафик клиент/сервер нету времени пока, попозже может еще потестю.

Мои результаты - самописный вариант быстрее.
Правда я использовал неоптимизированные методы стандартного класса. С ними стандартный, думаю, выиграл бы.

И, специально для Сергея - да, класс не работает без GUI, и у него куча недостатков. Но как идея мне нравится. Доразвить его просто нужно
И опять же - это не замена стандартного прогресс бара, а просто его дополнение.
И как видно из демонстрационного примера, они вполне могут сосуществовать.
Изображения
 
Вложения
Тип файла: xpo SYS_ProgressForm.xpo (30.1 Кб, 291 просмотров)
За это сообщение автора поблагодарили: Андре (5).
Старый 09.08.2007, 18:26   #53  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от kashperuk Посмотреть сообщение
Мои результаты - самописный вариант быстрее.
Потому что проще.

Код проще в разы.
Эффект на сервере 11.75/13.6 = 86%.
Эффект на клиенте 19.22/26.19 = 73%

Т.е. ускорение на 15%-30%.
За счет неуниверсальности, небезопасности и кучи потраченного времени программиста.

Я чего? Против что-ли?
__________________
полезное на axForum, github, vk, coub.
Старый 09.08.2007, 18:32   #54  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от kashperuk Посмотреть сообщение
Мои результаты - самописный вариант быстрее.
Не. Категорически не согласен.
SetText для стандартного делается ВНУТРИ цикла, а для самописного ЗА циклом.
AndyD говорил о тормознутости самого java-кода и работы со строками.
Какие проблемы у SysOperationProgress?
В данном случае начинает работать этот аспект.
__________________
полезное на axForum, github, vk, coub.
Старый 09.08.2007, 18:33   #55  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Цитата:
Сообщение от mazzy Посмотреть сообщение
За счет неуниверсальности, небезопасности и кучи потраченного времени программиста.
Да, универсальности пока нет. Да и ненужна она здесь.
безопасность надо бы, конечно, довинтить, кому нужно будет, сделает.
А вот про вермя программиста несогласен.

Я сделал интерфейсный класс.
Поэтому использовать даже проще, чем стандартный.
И код метода
doTestStandartProgressbar
на пару строк больше,чем код метода
doTest

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

Цитата:
Сообщение от mazzy Посмотреть сообщение
Я чего? Против что-ли?
Может и нет.
Но выглядит все так, как будто да
Старый 09.08.2007, 18:38   #56  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Вот результаты, если вынести setText за циклы.

Правда, справедливости ради, стоит заметить, что у стандартного прогресс бара интервал обновления больше (то есть реже обновляется)
Изображения
 
Старый 09.08.2007, 18:39   #57  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от kashperuk Посмотреть сообщение
И код метода
doTestStandartProgressbar
на пару строк больше,чем код метода
doTest
Угу. Внутри цикла, который выполняется 100тыс раз.

Не давай ты своему начальнику втирать про пару строк будешь?
Мне не надо.
__________________
полезное на axForum, github, vk, coub.
Старый 09.08.2007, 18:41   #58  
kashperuk is offline
kashperuk
Участник
Аватар для kashperuk
MCBMSS
Соотечественники
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,361 / 2084 (78) +++++++++
Регистрация: 30.05.2004
Адрес: Atlanta, GA, USA
Цитата:
Сообщение от mazzy Посмотреть сообщение
Угу. Внутри цикла, который выполняется 100тыс раз.

Не давай ты своему начальнику втирать про пару строк будешь?
Мне не надо.
ну, мы говорим о работе программиста, а не о том, сколько раз выполняться будет.
А работа программиста не усложняется. Вот я о чем
Старый 09.08.2007, 18:46   #59  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от kashperuk Посмотреть сообщение
Вот результаты, если вынести setText за циклы.
Во! Это похоже на правду.
Нажмите на изображение для увеличения
Название: 1.gif
Просмотров: 414
Размер:	32.6 Кб
ID:	2865

Цитата:
Сообщение от kashperuk Посмотреть сообщение
Правда, справедливости ради, стоит заметить, что у стандартного прогресс бара интервал обновления больше (то есть реже обновляется)
Ну, дык.
Т.е. программист:
1. затратил время
2. сделал менее универсальный, менее безопасный код
3. сделал менее быстрый код
4. вдобавок не подумал о параметрах по умолчанию.

Опять же ничего не имею против конкретного Андре.
Он действительно сделал интересную штуку. За это ему огромное спасибо.

Я хочу сказать о подходе.
Если есть стандартный функционал, то его НАДО знать, а не выкидывать со словами "ща мы тут за 20 минут на коленке наваяем".
__________________
полезное на axForum, github, vk, coub.
Старый 09.08.2007, 19:19   #60  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от mazzy Посмотреть сообщение
Я хочу сказать о подходе.
Если есть стандартный функционал, то его НАДО знать, а не выкидывать со словами "ща мы тут за 20 минут на коленке наваяем".
Не могу удержаться. Извините.

Но суть проблемы в том, что в данном случае задача повышения юзабилити решается за счет тотального переписывания. Зачем выкидывать ядро стандартного прогресс-бара? Почему не переделать только уровень представления/отображения?

Ведь в стандартном прогресс-баре все представление-отображение СПЕЦИАЛЬНО собрано в одном месте в классе SysOperationProgressForm. СПЕЦИАЛЬНО форма болванка нарисована - SysOperationProgress.

Дык, ведь нет. Выкидывается ВЕСЬ код, чтобы СОЗДАТЬ аналогичный, только хуже.
Грустно
__________________
полезное на axForum, github, vk, coub.
За это сообщение автора поблагодарили: glibs (5).
Теги
benchmark, progress bar, интерфейс, как правильно, crm2011

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
ProgressBar exodus DAX: База знаний и проекты 7 20.08.2008 11:33
ProgressBar в StatusBar(е) Morpheus DAX: База знаний и проекты 8 10.09.2007 15:21
Как запустить свой класс при входе пользователя в систему? miaa DAX: Программирование 2 24.05.2007 15:04
Как сказать форме подогнать свой размер Prof DAX: Программирование 10 25.11.2005 16:33
Как создать свой Web-портал? Zman DAX: Программирование 4 21.01.2005 11:23

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 09:15.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.