Группы "быстрых" индикаторов на формах 1с7.

18.06.12

Разработка - Работа с интерфейсом

Индикация влож. циклов, параллел. процессов; динам.гистограммы.
Индикаторы: реагируют на отрицат.шаги - не только Прогресс-Индикаторы.
"Быстрые": вывод на экран не на каждом, а на заранее расчитанном  шаге.
Управление: инверсия белого-черного, переворот линейки.
Можно записывать истории Процессов.  Возможны вертикальный
и компактный вывод.

Скачать файлы

Наименование Файл Версия Размер
Демонстрация соместной работы 11 Индикаторов
.zip 23,24Kb
23
.zip 23,24Kb 23 Скачать

Развитие (и,повидимому, завершение) //infostart.ru/public/138502/

Завершение, потому что не вижу, что можно еще сделать без подключаемых компонент (раскраски разные - это мелочи).

Ну а компоненты делать не к чему - ушла она, семерка.

Использованы те же принципы но:

      - Внутренние скалярные переменные Индикатора( программисту не видны и не нужны) замененны на массивы;

      - Индикаторы пронумерованы (как и поля вывода на Форме), что позволяет выводить любое их количество; 

      - Расчитывается как верхняя граница шагов вывода (как и ранее), так и нижняя. Вывод производиться при достижении

        любо из границ (т.е. возможны отрицательные шаги);

      - Добавлено дополнительное управление: отрезания "хвоста" (для гистограм нобходимо),  инверсия белог-черного,

        поворот линейки на 180 градусов. Режим каждого индикатора задается один раз, перед началом процесса;

      - Добавлена возможность записи в оперативной памяти историй Процессов. 

      -Добавлена возможность вывода вместо линейки в 10 односимвольных полей, расположенных любым образом.

 

Описание работы.

 

       Если в Форме предусмотрено текстовое поле "ЗагТекстИндикатор" - заголовок выводится 

в это поле; иначе - он присоединяется слева к Линейке индикатор.

   
       Если в Форме предусмотрено текстовое поле "ПолеТекстИндикатор" - индикатор выводится
в это поле; иначе - в строку "Состояние".
       

       Предусмотрено следующее соответствие номера Индикатора и текстовых строк Формы:
             Номер индикатора=0 - ЗагТекстИндикатор,ПолеТекстИндикатор;
             Номер индикатора=1 - ЗагТекстИндикатор1,ПолеТекстИндикатор1;
             Номер индикатора=2 - ЗагТекстИндикатор2,ПолеТекстИндикатор2;
             и т.д. - всего предусмортрено 30 индикаторов на Форме (если нужно - хоть 1000000!).

             Вывод каждого Индикатора может производиться и в 10 односимвольных полей,
             которые можно расположить на форме любым образом.
             Пример:
             Поле ПолеТекстИндикатор2 не задано, но заданы односимвольные текст.поля -
             ПолеТекстИндикатор2_1, ПолеТекстИндикатор2_2,..., ПолеТекстИндикатор2_10.
             Вывод индикатора №2 будет производиться в эти поля (вместо линейки).
             Таким образом возможны и вертикальные гистограммы (если не лень описывать поля).

       Поля можно и не создавать, вывод будет идти в стр."Состояние()". 

      (если больше одного - сплошной "Киш-Миш"!)

 

       При любом вызове необходимо в перем. "НомИнд" передать номер вызываемого Индикатора.

       (при одном индикаторе на Форме - не обязательно передавать 0).

 

Возможны 3 режима вызова:
     1. Если Начало=1 - вызов перед началом Индикации (началом Процесса) -
           начальное "праграмирование".
           В перем."Парам1" передаем заглавие линейки Индикатора, а в перем. "Парам2" передаем
           заранее вычесленное полное количество (или 0) каких-либо действий (операций,шагов) процесса.
           В переменной "НомИнд" предается номер индикатора (нулевой номер передавать не обязательно).

           В переменной "Режим" передается режим работы (установка 1,2 и 3 бита), а именно:
           Режим=1  -  не будет выводиться "хвост" Индикатора (количество,время,прогноз);
           Режим=2  -  инверсия черного-белого на линейке индикатор;
           Режим=4  -  поворот линейки на 180 градусов.
           Режимы можно складывать,т.е. возможные режимы: 0,1,2,3,4,5,6,7.

           В переменную "Конт" передается контекст текущей формы (для случая, когда индикатор расположен 

           в глоб.Модуле и в форме определено поле для вывода индикатора - "ПолеТекстИндикатор").

          В перем "СохрИст" передается признак сохранения истории индицируемого процесса. 
             Если СохрИст=1 тогда в элементе массива ИндикаторИстория(НомИнд+1) создается
             ТаблицаЗначений с колонками: "З" - Заголовок; "Ш" - номер шага; "В" - текущее время.
             В эту ТЗ в дальнейшем записываются все шаги Процесса.
             По окончанию процесса программист может записать все это в файл.
             Сохранение истории при большом количестве шагов "съедает" память и уменьшает 
             скорость в 3-4 раза (все равно, идикатор работает как минимум вдвое быстрее "классических").

     2. В перем "Парам1" передается текущее количество шагов отображаемого  
           процесса (>=0), в перем "Парам2" можно передавать тек.заголовок Индикатора.  

          В переменной "НомИнд" предается номер индикатора (нулевой номер передавать не обязательно

          Индикатор в перем. ИндикаторИстория(НомИнд+1) (если задана ТЗ) добавляет строку шага процесса.

).

          В таком режиме процедура вызывается на каждом шаге процесса

     3. Вызов без параметров -глИндикатор(,,НомИнд) - очистка поля (или строки "Состояние()")
           и всех сопутствующих переменных. Заметим, если Индекатор на Форме не один -
           передача номера обязательна! Шестым параметром можно передать Контекст Формы
           (например в процедуре "ПриОткрытии()": глИндикатор(,,,,,Контекст);
           в этом случае передавать номер нет надобности).

ВАЖНО!

При начальных установках (перед началом процесса) в четвертый параметр ("Начало") необходимо (и обязательно!) передать 1!  

 

См. также

1С:Фото номенклатуры 7.7 - решение для работы с фотографиями номенклатуры в 1С:7.7 (включая формат PNG)

Работа с интерфейсом Логистика, склад и ТМЦ Платформа 1С v7.7 1С:Торговля и склад 7.7 Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Решение для разработчика и конечного пользователя для работы с фотографиями номенклатуры: систематизация, хранение, отображение, а также выгрузка на Яндекс-Диск и FTP (кроме версии лайт). Поддерживаются графические форматы: bmp, jpg, gif, tiff, а также png - не поддерживаемый штатными средствами 1С. Выполнено без использования внешних компонент (кроме функции выгрузки на FTP). Поставляется как в виде пустой конфигурации с набором объектов и модулей для работы с фото, так и в виде обновления к 1С:Торговля и склад 7.7. Выполнено в двух версиях: "полная" и "лайт".

5000 руб.

18.10.2022    5160    1    45    

3

WebЦвета для 1с77 FormEx

Инструментарий разработчика Работа с интерфейсом Платформа 1С v7.7 Абонемент ($m)

Обработка с фрагментами кода для программного использования набора цветов из коллекции WebЦвета 1с версии 8+ в 1с версии 77. Требуется предварительное подключение сторонней библиотеки FormEх. Будет полезно программистам 1с 77, 1с 8. Да и вообще при программировании на любом языке при потребности использовать коллекцию цветов WebЦвета.

1 стартмани

30.03.2022    4543    2    igor7777    4    

5

К привязкам элементов форм (1С 7.7, FormEx)

Работа с интерфейсом Платформа 1С v7.7 Конфигурации 1cv7 Бесплатно (free)

Публикация имеет цель обратить внимание на возможность улучшения интерфейса.

15.12.2021    4466    62    Cерый    13    

6

Выбор цвета для 1С 7.7

Работа с интерфейсом Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Простая и удобная внешняя обработка для выбора цвета без применения внешних компонент.

1 стартмани

09.06.2020    7025    3    vap_pig    5    

3

Производственный календарь для 1С 7.7

Учет рабочего времени Работа с интерфейсом Платформа 1С v7.7 Конфигурации 1cv7 Россия Абонемент ($m)

Обработка производственного календаря с возможностью импорта и экспорта xls для 1С 7.7 (7.70.027) без изменения конфигурации.

1 стартмани

18.09.2019    12580    6    Jill    8    

3

Альтернативная обработка "Выбор периода"

Работа с интерфейсом Оперативный учет 7.7 1С:Торговля и склад 7.7 Абонемент ($m)

Альтернативная обработка ввода периода для 1С 7.7.

1 стартмани

27.03.2019    6588    3    v.a.n-    11    

2

Несколько табличных частей в 1С:7.7 - это просто

Работа с интерфейсом Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

При программировании на платформе V7 достаточно часто возникает задача создать несколько табличных частей документа (или справочника). Традиционно эта задача имеет несколько решений..

1 стартмани

01.05.2018    22421    27    Gkmy    11    

5
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. smitti911 13.06.12 18:08 Сейчас в теме
Ай молодец, теперь уж точно в теме индикации процессов 1с 7 поставлена жырная точка. УРА !!!
2. Famza 84 14.06.12 08:21 Сейчас в теме
Ну то что 7ка ушла - тоже верно
3. newold2 124 14.06.12 09:11 Сейчас в теме
Все же готовлю обновление, где будет добавлено сохранение при индикации историй процессов.
Вспомнил, для анализа "затычек" при проведении документов делал специальную программку сохранения шагов процесса.
Легко и непринужденно она вошла в Индикатор. Добавлен массив ИндикаторИстория(30), в котором храняться
ТаблицыЗначений со всеми шагами Процессов (хранить или не хранить историю задается начальными установками
Индикатора). Хранение большого количества шагов (500000 и более) "съедает" много памяти и уменьшает
скорость Индикатора в 3-4 раза (все равно не менее чем в 2 раза быстрее "классического".
Перенос этих ТЗ в файл по завершению процесса (создание этаких "Логов") оставляю на совести использующего программиста (хоть что-то он должен делать).
4. newold2 124 15.06.12 10:23 Сейчас в теме
Выложил обновление. У-ф-ф, кажется все!
5. newold2 124 18.06.12 12:37 Сейчас в теме
Не утерпел. Добавил возможность вывода каждого Индикатора вместо Линейки в 10 заранее назначенных
односимвольных полей, которые на форме можно располагать произвольным образом. Так что теперь возможны (ядро
все тоже) вертикальные, круговые, квадратные и т.п. индикаторы. В "демонстрашку" добавил два таких примера.
Подход тот-же:
- определено текстовое поле "линейки" - вывод в него;
- определены 10 односимвольных текстовых полей - вывод в них;
- на форме ничего не определено - вывод в строку "Состояние()".
Как описывать поля написано в пояснении, в теле программы, в help.

Исправил ошибку совмещения режимов "Инверсия"+ "Гистограмма".
Оставьте свое сообщение