18.03.2003, 10:52 | #1 |
Участник
|
Progress Bar в CodeUnit Attain
Привет Всем!
Вопрос на засыпку: Создаю CodeUnit , в котором в таблице для некоторых полей меняю какое-либо значение, и, хочу вывести прогресс бар....Как это можно сделать? |
|
18.03.2003, 13:08 | #2 |
Участник
|
Окно -> Dialog
Всего -> Integer Позиция -> Integer Таблица -> Record Окно.OPEN('Прогресс ' + '@1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@'); Таблица.reset; Всего:=Таблица.Count; Позиция:=0; if Таблица.find('-') then begin repeat Позиция+=1; Окно.UPDATE(1,ROUND(Позиция/Всего*10000,1)); until Таблица.next()=0; end; Окно.CLOSE; |
|
18.03.2003, 14:50 | #3 |
Участник
|
СПАСИБИЩЕ
Огромный Тебе сабж и, при случае, бутылку пива :-)
|
|
18.03.2003, 17:10 | #4 |
Участник
|
Нет проблем.
Кстати, на больших таблицах, для подсчета количества строк, вместо COUNT лучше использовать COUNTAPPROX. Будет немного быстрее. |
|
19.03.2003, 13:27 | #5 |
Участник
|
Привет!
Слушай, мона задать тебе еще вопросик? В общем ситуация такая: общий заказ. Набор строк в нем всегда одинаковый, известный и постоянный, к примеру 10 позиций. Теперь, хочу сделать так: На Header повесить еще одну закладку и повесить туда 10 CheckBox'ов, считая что первый чекбоск отображает первый товар, второй-второй и тд.... Далее: При открытии формы хотся, чтобы все чекбоксы активировались, т е если колво соответствующего товара=1, то чекбокс был TRUE, если же =0, то, соответственно FALSE. И, если изменить значение чекбокса, то, изменится и количество товара. А теперь проблемы: 1 - На какой тригер повесить установку начального значения тригера, чтобы он настроился при открытии формы и пересчитывался при изменении кол-ва товара с строках заказа. Код тригера я сделал такой: PHP код:
2- Как Сделать так, чтобы при изменении значения чекбокса не только изменилось количество товара в соответствующей строке, а запустился тригер строки продажи(он срабатывает, когда меняешь колво ручками....).(То есть подставились бы соотв количества для отгрузки, для выставления счета, пересчиталась сумма строки и тд и тп). Вот такая вот задачка, если мысли будут какие нить, делись! Заранее спасибо |
|
19.03.2003, 16:17 | #6 |
Участник
|
Во-первых, для данной ситуации лучше использовать триггер OnAfterGetRecord в форме заголовка. Он выполняется всегда, когда ты получаешь запись из БД. Т.е. если пользователь нажмет Page Up или Page Down, произойдет его выполненте.
Далее, когда ты изменяешь количество в строках, выполняется триггер из таблицы Продажа Строка (Sales Line), в котором и прописаны все изменения в строке, т.е. пересчет скидок, сумм и т.д. Чтобы заставить его выполниться принудительно делаем следующее: Validate(Quantity,1); К сожалению, как сделать обратное преобразование, т.е. чтобы при изменении количества в строках изменялась галочка, я не знаю. Возможно, если ты добавишь эти поля (Fin1...Fin10) в таблицу Продажа Заголовок (Sales Header), то тогда в таблице Продажа Строка на триггер OnValidate для поля количества в самом конце можно сделать так: SalesHeader.get("Document Type","Document No."); //получаем заголовок продажи { получаешь номер строки в текущем документе, к примеру, 5 ... } if SalesHeader.Quantity<>0 then begin SalesHeader."Fin5":=true; end else begin SalesHeader."Fin5":=false; end; SalesHeader.modify; |
|
19.03.2003, 18:02 | #7 |
Участник
|
По поводу изменений строк из хедера: все сработало, КЛЕВА!!!!!!!!!
По поводу изменений хедера из строк: все работает, только пришлось повесить обработчик на тригер OnActivateForm()......... ПАСИБА! |
|
02.07.2003, 06:56 | #8 |
Участник
|
Извините, а не подскажите, что такое Progress bar? и где используют.
Заранее, спасибо. |
|
02.07.2003, 09:50 | #9 |
NavAx
|
Progress Bar - это просто украшение по большому счету. Окошко, в котором нарисована полоска серого цвета, по ходу выполнения каких-то действий полоска потихоньку заполняется синим и поверх от нее отображается, насколько процентов она заполнена (цвета не обязательно такие). Используется например так : есть отчет, который обрабатывает таблицу, в таблице 10000 записей. Соответственно, в начале выполнения отчета прогрессбар будет заполнен на ноль процентов, в конце - на сто процентов (каждые 100 записей таблицы - 1%). Наблюдать прогресс бар можно даже в интернет эксплорере (пока страничка открывается, внизу окна синяя полоска растет, правда, процентики не пишутся).
|
|
|
Похожие темы | ||||
Тема | Ответов | |||
Navision Attain через Citrix | 2 | |||
Переход на Navision Attain | 3 | |||
attain - Переход на attain | 8 | |||
80 Codeunit Attain | 5 | |||
1С и Attain | 2 |
|