gifts2017

Рабочий стол для 1С. На управляемой форме

Опубликовал Алексей Ан (An-Aleksey) в раздел Программирование - Работа с интерфейсом

Рабочий стол в виде внешней обработки. Реализован на управляемой форме с минимальным функционалом и открытым кодом.
Позволяет размещать ссылки на основные формы Справочников, Документов, Отчетов и Обработок.

Идеей для написания данной обработки стала публикация Svetozor'а (http://infostart.ru/public/21671/). Отдельный респект за идею.

Предложенная обработка также представляет собой аналог рабочего стала Windows, но реализованная на управляемой форме.

Функционал реализован самый минимальный - создание, очистка ярлыков, переход по ссылке. Но код открытый - можно настраивать "под себя". В этом как раз и причина столь ранней публикации обработки. Идей в доработке множество, но основные моменты (связанные с доступом к определенному списку объектов по ролям) повлияют на универсальность.

 

Паралельно хотелось-бы получить рекомендации:

• Можно-ли установить прозрачный фон для рисунков табличного документа?

• Как отрабатывает механизм Drag&Drop на управляемой форме, если у ячеек табличного документа установлен признак гиперссылки?

 

UPD 01.11.2011.

Добавлена возможность перетаскивания ячеек

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

Наименование Файл Версия Размер
DeskTop 177
.epf 215,54Kb
21.02.13
177
.epf 215,54Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Яков Коган (Yashazz) 12.10.11 13:56
Идее-то уже сто лет в обед, да и для управляемых форм вроде как было.
А уж для обычных форм - полно.

Красивое перетаскивание иконок сделали?
2. Сергей Королев (extrim-style) 12.10.11 14:35
3. Алексей Ан (An-Aleksey) 12.10.11 15:16
(1) Буду благодарен за ссылочки на аналоги в управляемых (не нужно будет велосипедостроением заниматься) :)
По перетаскиванию иконок как раз основная проблема (о чем собсно отметил в описании к публикации). Пока бьюсь с обработчиком перетаскивания. Чую что-то не так делаю, но болезнь пока не выявлена :)
4. UncleVader (UncleVader) 13.10.11 11:00
5. Евгений Билык (evgeniy.bilyk) 13.10.11 12:23
Есть конфигурация Управление торговлей для Украины, редакция 2.3. Стоит на 1с 8.2 в режиме запуска "обычное приложение".
Я так понимаю, чтобы эта обработка работала, нужно запускаться в режиме "Управляемое приложение"?
6. Евгений Билык (evgeniy.bilyk) 13.10.11 12:28
и можно ли как-то сделать, чтобы запускалась в режиме "Обычное приложение"?
7. Алексей Ан (An-Aleksey) 13.10.11 13:20
(5) Уже много раз сталкивался с этой проблемой.
Вот что отвечают в 1С:
935446
К сожалению, это невозможно. Свойство "Использовать управляемые формы в обычном приложении" не влияет на внешние обработки и отчёты. В обычном приложении можно открывать только обычные формы таких объектов, а в управляемом только управляемые. Это ограничение платформы.

>>Очень жаль. В 8.2.14 ничего по этому поводу не изменится?

Нет. И в последующем не планируется.


Для того чтобы открыть управляемую форму отчета/обработки в обычном приложении (при условии что стоит флаг "Управляемые формы в обычном приложении"), ее необходимо встроить в конфигурацию...
8. Евгений Билык (evgeniy.bilyk) 13.10.11 15:58
Ура! получилось))
для того чтобы обработка запустилась в обычном приложении, нужно было флаг установить "Использовать управляемые формы в толстом клиенте в обычном режиме"

Спасибо))!
9. Евгений Билык (evgeniy.bilyk) 13.10.11 16:06
вот бы еще перетаскивание иконок, то ваще супер было бы))
автору спасибо, весчь полезная)!
10. Алексей Ан (An-Aleksey) 14.10.11 11:02
(9) С перетаскиванием совсем не получается... :(

Всплыли 2 проблемы:
1. В поле табличного документа перетаскиваемую ячейку можно только за границу ячейки, а когда курсор находится во внутренней области вместо перетаскивания получается выделение ячеек.
Сомнительное удовольствие - пытаться спозиционироваться на краю ячейки, занятие не для слабонервных скажу я вам.

2. Для ячеек табличного документа события "Начало перетаскивания" и "Окончание перетаскивания" срабатывают, а вот событие "Проверка перетаскивания" ни в какую. Тестировал как внешнюю обработку из под тонкого клиента на платформе 8.2.13.219. Соответственно не возможно определить куда должна будет перемещена ячейка.

Подобная ситуация рассматривалась на партнерском форуме.


Коллеги, кто нибудь сталкивался с подобной задачей? Как решали?
В общем пока думаю реализовать с помощью контекстного меню "Скопировать, Вырезать, Вставить".
11. Алексей Ан (An-Aleksey) 14.10.11 13:33
Обновил обработку.

Добавлены возможности:
• Копирования и перенос ячеек
• Изменение наименования
• Настройка цвета заголовков и размера ячеек
+ НаименованияОбъектовКоторыеНеПомещаютсяВЯчейке обрезаются
12. Sergey Shh (ves_sergey) 17.10.11 12:35
ждем развития с нетерпением.
13. FFFF FFF (Gasdrubal) 19.10.11 06:23
а зачем это? скоро все ОС станут похожи на браузеры. а вы браузер делаете похожим на ОС
14. Алексей Ан (An-Aleksey) 19.10.11 10:01
(13)
а вы браузер делаете похожим на ОС
Мне так удобнее
citana; UncleVader; +2 Ответить
15. UncleVader (UncleVader) 19.10.11 12:23
Очень нужны настраиваемые секции-области для размещения виджетов (справочники, журналы, произвольные формы)
16. Алексей Ан (An-Aleksey) 19.10.11 12:53
(15) Боюсь, что не совсем понял...
Вы имеете в виду настройку для уточнения формы объекта для открытия (напр. если у объекта несколько форм списка)?
17. UncleVader (UncleVader) 19.10.11 13:54
(16) Я имею в виду возможность разметки рабочего стола на зоны: в одной выводить команды и всякие ярлыки, в другой например список документов, в третью поместить еще какой-нибудь список. Ну то есть прикрутить возможность вывода произвольных списков в нужном месте рабочего стола
An-Aleksey; +1 Ответить 1
18. Алексей Ан (An-Aleksey) 19.10.11 14:13
(17)Фантастика!
Спасибо за идею, мне оч. нравится.
Уже прикинул пару вариантов реализации.
19. Юрий Лазаренко (TitanLuchs) 20.10.11 18:01
Так а с перетаскиванием как? Будет? Пока, как я понял, можно просто создать ярлык в любом месте и он будет там висеть?
20. Алексей Ан (An-Aleksey) 20.10.11 18:18
(19) Для чисто практических вещей добавлена возможность вырезать и вставить в другую ячейку.

Если говорить про эстетику, то тут следующее - у поля табличного документа перетаскивание элементов возможно только при наведении на самый-самый краешек ячейки. Удобства "нуль".
Единственная альтернатива (которую пока вижу) - это заменить на поле HTML и писать на нем. Пока не планирую - во первых очень трудоемко, во вторых код будет трудно-модифицируемый.
21. Юрий Лазаренко (TitanLuchs) 20.10.11 18:20
(20) Я в итоге так и перешел на HTML-поле, когда решал подобную задачу. Трудоемко, но намного юзабельней.
22. Юрий Лазаренко (TitanLuchs) 20.10.11 18:21
(20) Но попыток реализовать что-то подобное на табличном документе не оставляю, так что результат ваших поделок интересен!