Кнопка динамического отбора в списке документов/справочнике

Публикация № 118843 28.02.12

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

Меню отбора в один клик, заполняющееся возможными значениями из текущей колонки.

Мне давно хотелось иметь возможность не залезать в дебри отбора, а иметь возможность одним лёгким касанием установить отбор по реквизиту, с учетом только возможных вариантов.

Тоесть не лазить по всему справочнику контрагентов, а выбрать из перечня реально встречающихся в текущем списке документов, причем еще и желательно с учетом уже установленных  по прочим реквизитам этих документов.

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

Код излагаю ниже, а в файле публикации - работающий пример, где фильтр реализован во внешней обработке с динамическим списком документов "Реализация товаров и услуг". (обработка для 8.2, но сам принцип реализуется в любой восьмерке).

UPD 2012-03-13: поправил код и обновил файл с примером. теперь, если мы стоим на колонке, по которой уже отфильтрован список, всё равно меню заполняется всеми значениями из этой колонки (с учетом других отборов). Вследствие этого, не будет "одиноких" меню из одного значения.

 

//будем использовать префикс кдо - "кнопки динамического отбора" для нашей подсистемы
Перем кдоМассивПунктовМеню;
Перем
кдоПодменю;
Перем
кдоДинамическийСписок;


Процедура
кдоДействияФормыИнициализация(Кнопка)
   
//__________________________________________________________________________________________________________________________
    //настройки подсистемки
    //__________________________________________________________________________________________________________________________
    //в принципе, их можно вынести в модуль формы
   
ПредставлениеПустогоЗначения="(не заполнено)";
   
ОграничениеКоличестваПунктовМеню=20;
   
кдоПодменю=ЭлементыФормы.ДействияФормы.Кнопки.Фильтр;

   
кдоЭлементФормыСписок=ЭлементыФормы.Список;
   
кдоДинамическийСписок=ДокументСписок;
   
//__________________________________________________________________________________________________________________________

   
Состояние();

   
кдоПодменю.Кнопки.Очистить();
   
кдоМассивПунктовМеню.Очистить();
   
Действие=Новый Действие("кдоНажатиеНаПунктМенюОтбора");


   
//добавим готовые, установленные уже отборы

   
ТекущаяКолонкаИмя=кдоЭлементФормыСписок.ТекущаяКолонка.Имя;
    Если
кдоДинамическийСписок.Отбор.Найти(ТекущаяКолонкаИмя)=Неопределено Тогда
       
Сообщить("такого отбора нет");
        Возврат;
    КонецЕсли;

   
СчетчикПунктовМеню=0;
   
ВремяНач=ТекущаяДата();
   
ИмяДокумента=кдоЭлементФормыСписок.ТекущаяСтрока.метаданные().Имя;
   
запрос=новый Запрос;

   
СоставнаяЧастьЗапросаОтбор=" ГДЕ     ";
    Для каждого
ЭлементОтбора Из  кдоДинамическийСписок.Отбор Цикл
        Если
ЭлементОтбора.Использование Тогда

            Если
ЭлементОтбора.ПутьКДанным <> ТекущаяКолонкаИмя Тогда
               
СоставнаяЧастьЗапросаОтбор=СоставнаяЧастьЗапросаОтбор+Символы.ПС+" ВыбраннаяТаблица."+ЭлементОтбора.ПутьКДанным +" В(&"+ЭлементОтбора.ПутьКДанным+") И";
            КонецЕсли;



            Если
ТипЗнч(ЭлементОтбора.Значение)<>Тип("СписокЗначений") Тогда
               
ПараметрСписокЗначений=Новый СписокЗначений;
               
ПараметрСписокЗначений.Добавить(ЭлементОтбора.Значение);
            Иначе
               
ПараметрСписокЗначений=ЭлементОтбора.Значение;
            КонецЕсли;

           
запрос.УстановитьПараметр(ЭлементОтбора.ПутьКДанным,ПараметрСписокЗначений);//ЭлементОтбора.Значение);


           
Если Ложь Тогда кдоМассивПунктовМеню=Новый  Массив;КонецЕсли;


           
СтруктураУправленияПунктаМеню=Новый Структура;
           
СтруктураУправленияПунктаМеню.Вставить("Действие","Сбросить");
           
СтруктураУправленияПунктаМеню.Вставить("ИмяОтбора",ЭлементОтбора.Имя);
           
СтруктураУправленияПунктаМеню.Вставить("Значение",Неопределено);
           
кдоМассивПунктовМеню.Добавить(СтруктураУправленияПунктаМеню);

           
СчетчикПунктовМеню=СчетчикПунктовМеню+1;

       
НоваяКнопка=кдоПодменю.Кнопки.Добавить(СчетчикПунктовМеню,ТипКнопкиКоманднойПанели.Действие,
        ?(
ЗначениеЗаполнено(ЭлементОтбора.Имя),строка(ЭлементОтбора.Имя),ПредставлениеПустогоЗначения)
        ,
Действие);
       
НоваяКнопка.Пометка=Истина;


           
//СтруктураЗначенийПунктовМеню;
            //СтруктураЗначенийПунктовМеню.Вставить("_"+Строка(СчетчикПунктовМеню),ТекСтрока[ТекущаяКолонкаИмя]);
        //      НоваяКнопка=Подменю.Кнопки.Добавить(СчетчикПунктовМеню,ТипКнопкиКоманднойПанели.Действие,
        //?(ЗначениеЗаполнено(ТекСтрока[ТекущаяКолонкаИмя]),строка(ТекСтрока[ТекущаяКолонкаИмя]),ПредставлениеПустогоЗначения)
        //,Действие);
       
КонецЕсли;
    КонецЦикла;

   
НоваяКнопка=кдоПодменю.Кнопки.Добавить(,ТипКнопкиКоманднойПанели.Разделитель,,);

    Если
Прав(СоставнаяЧастьЗапросаОтбор,1)="И" Тогда
       
СоставнаяЧастьЗапросаОтбор=Лев(СоставнаяЧастьЗапросаОтбор, СтрДлина(СоставнаяЧастьЗапросаОтбор)-1);
    КонецЕсли;
    Если
СтрДлина(СокрЛП(СоставнаяЧастьЗапросаОтбор))=3 Тогда
       
//небыло ни одного условия
       
СоставнаяЧастьЗапросаОтбор=" ";
    КонецЕсли;

   
Запрос.Текст=
   
"ВЫБРАТЬ РАЗЛИЧНЫЕ ПЕРВЫЕ "+ОграничениеКоличестваПунктовМеню+"
    |   ВыбраннаяТаблица."
+ТекущаяКолонкаИмя+"
    |ИЗ
    |   Документ."
+ИмяДокумента+" КАК ВыбраннаяТаблица
    |"
+СоставнаяЧастьЗапросаОтбор+"
    |УПОРЯДОЧИТЬ ПО
    |   "
+ТекущаяКолонкаИмя;

   
Таблица=запрос.Выполнить().Выгрузить();
   
ВремяКон=ТекущаяДата();
    Для каждого
ТекСтрока Из  Таблица Цикл
       
СчетчикПунктовМеню=СчетчикПунктовМеню+1;

       
НоваяКнопка=кдоПодменю.Кнопки.Добавить(СчетчикПунктовМеню,ТипКнопкиКоманднойПанели.Действие,
        ?(
ЗначениеЗаполнено(ТекСтрока[ТекущаяКолонкаИмя]),строка(ТекСтрока[ТекущаяКолонкаИмя]),ПредставлениеПустогоЗначения)
        ,
Действие);


        Если
ТипЗнч(Отбор[ТекущаяКолонкаИмя].Значение)=Тип("СписокЗначений") Тогда
            Если
Отбор[ТекущаяКолонкаИмя].Значение.найтиПоЗначению(ТекСтрока[ТекущаяКолонкаИмя])<>Неопределено Тогда
               
//такое значение есть в списке
               
НоваяКнопка.пометка=Истина;
            КонецЕсли;
        КонецЕсли;

        Если Ложь Тогда
кдоМассивПунктовМеню=Новый  Массив;КонецЕсли;

       
СтруктураУправленияПунктаМеню=Новый Структура;
       
СтруктураУправленияПунктаМеню.Вставить("Действие","Установить");
       
СтруктураУправленияПунктаМеню.Вставить("ИмяОтбора",ТекущаяКолонкаИмя);
       
СтруктураУправленияПунктаМеню.Вставить("Значение",ТекСтрока[ТекущаяКолонкаИмя]);

       
кдоМассивПунктовМеню.Добавить(СтруктураУправленияПунктаМеню);
    КонецЦикла;

КонецПроцедуры


Процедура
кдоНажатиеНаПунктМенюОтбора(Кнопка)

   
НомерЭлемента=Число(Кнопка.Имя)-1;
   
ЗначениеПунктаМеню  = кдоМассивПунктовМеню[НомерЭлемента].Значение;
   
ИмяОтбора           = кдоМассивПунктовМеню[НомерЭлемента].ИмяОтбора;
   
Действие            = кдоМассивПунктовМеню[НомерЭлемента].Действие;

    Если
Действие="Сбросить" Тогда
       
кдоДинамическийСписок.Отбор[ИмяОтбора].использование= ложь;
       
ЗначениеОтбора=кдоДинамическийСписок.Отбор[ИмяОтбора].Значение;
        Если
ТипЗнч(ЗначениеОтбора)=Тип("СписокЗначений") Тогда
           
кдоДинамическийСписок.Отбор[ИмяОтбора].Значение=Новый СписокЗначений;
        КонецЕсли;

       
кдоПодменю.Кнопки.удалить(Кнопка);

    ИначеЕсли
Действие="Установить" Тогда
       
ЗначениеОтбора=кдоДинамическийСписок.Отбор[ИмяОтбора].Значение;

       
кдоДинамическийСписок.Отбор[ИмяОтбора].видСравнения=ВидСравнения.ВСписке;
       
кдоДинамическийСписок.Отбор[ИмяОтбора].использование=Истина;

        Если
Кнопка.Пометка Тогда
           
//нужно удалять
           
Если ТипЗнч(ЗначениеОтбора)=Тип("СписокЗначений") Тогда

               
ИскомыйЭлемент=ЗначениеОтбора.найтиПоЗначению(ЗначениеПунктаМеню);
                Если
ИскомыйЭлемент<>Неопределено Тогда
                   
ЗначениеОтбора.удалить(ИскомыйЭлемент);

                    Если
ЗначениеОтбора.Количество()=0 Тогда
                       
кдоДинамическийСписок.Отбор[ИмяОтбора].использование=Ложь;
                    Иначе
                       
массив=ЗначениеОтбора.ВыгрузитьЗначения();
                       
ЗначениеОтбора.ЗагрузитьЗначения(массив);
                       
кдоДинамическийСписок.Отбор[ИмяОтбора].использование=Ложь;
                       
кдоДинамическийСписок.Отбор[ИмяОтбора].использование=Истина;
                    КонецЕсли;
                КонецЕсли;
            Иначе
               
кдоДинамическийСписок.Отбор[ИмяОтбора].Использование=Ложь;
            КонецЕсли;

        Иначе
            Если
ТипЗнч(ЗначениеОтбора)=Тип("СписокЗначений") Тогда
               
ЗначениеОтбора.Добавить(ЗначениеПунктаМеню);
            Иначе
               
СписокЗначений=Новый СписокЗначений;
               
СписокЗначений.Добавить(ЗначениеПунктаМеню);
               
кдоДинамическийСписок.Отбор[ИмяОтбора].Значение=СписокЗначений;
            КонецЕсли;

        КонецЕсли;

       
Состояние();

    КонецЕсли;
   
кдоДинамическийСписок.Отбор[ИмяОтбора].использование= не ДокументСписок.Отбор[ИмяОтбора].использование;
   
кдоДинамическийСписок.Отбор[ИмяОтбора].использование= не ДокументСписок.Отбор[ИмяОтбора].использование;


   
Кнопка.пометка=не Кнопка.пометка;

   
кдоДействияФормыИнициализация(Неопределено);
КонецПроцедуры


Процедура
кдоДокументСписокПриАктивизацииКолонки(Элемент)
   
кдоДействияФормыИнициализация(Неопределено);
КонецПроцедуры

//нам не нужен строковый идентификатор, поэтому используем массив
кдоМассивПунктовМеню=Новый Массив;

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

Наименование Файл Версия Размер
Обработка с примером динамического фильтра

.epf 24,43Kb
78
.epf 24,43Kb 78 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. scape 281 29.02.12 01:18 Сейчас в теме
Хорошая идея! Но как всегда, сделаю все по своему... :D
7. chmod660 416 29.02.12 12:18 Сейчас в теме
(1), (2), (3) - спасибо за отзыв!
Переработка и использование приветствуется, особенно с фидбеком ))
Есть мнение, что на большом массиве данных заполнение дерева возможных вариантов отбора будет небыстрым.
Но, тем не менее, интересно будет посмотреть реализацию.


(4) Для управляемых небыло необходимости, но при возможности гляну.
2. ta44ik 57 29.02.12 04:28 Сейчас в теме
Идея хорошая) Но красивше было бы дерево сделать, так и сделаю) Ну типо конрагенты - подстроки соответственно значения, отмеченные - вверх, ну и все такое)
chmod660; +1 Ответить
3. andrei.k 29.02.12 08:13 Сейчас в теме
Отличная идея, спасибо. В любом случает все делается под себя. Спасибо.
4. milanse 36 29.02.12 08:44 Сейчас в теме
А для управляемых форм ?
5. OLEG4120 162 29.02.12 09:06 Сейчас в теме
У Вас есть небольшие ошибки в коде, приведенном в публикации.
Например отсутствие определения переменных
кдоПодменю;
кдоДинамическийСписок;
кдоМассивПунктовМеню;

массив вообще-то есть, но
Если Ложь Тогда кдоМассивПунктовМеню=Новый  Массив;КонецЕсли;

а так +
chmod660; +1 Ответить
8. chmod660 416 29.02.12 12:29 Сейчас в теме
(5) Благодарю!
Поправил публикацию. (в обработке эти определения есть)
Процитированный вами код - это уловка, чтобы конфигуратор видел нужный тип переменной и добавлял контекстную подсказку.
9. OLEG4120 162 29.02.12 14:04 Сейчас в теме
6. пользователь 29.02.12 10:31
Сообщение было скрыто модератором.
...
10. dkprim 5 29.02.12 16:47 Сейчас в теме
Идея очень хорошая! Буду адаптировать под свои потребности. Автору спасибо )
11. rus128 2 29.02.12 18:23 Сейчас в теме
Классная идея!
Странно, что это до сих пор не реализовано в платформе и в типовых...
12. yoyoman 01.03.12 05:35 Сейчас в теме
Ой и правда, юзабилити очень высокое)
13. YakshinAnd 01.03.12 10:00 Сейчас в теме
Начинаю пользоваться. Часто приходится тестить разные отборы, а тут такое счастье, которое облегчит жизнь и сэкономит много времени. Спасибо огромное)!
14. fomix 33 01.03.12 10:20 Сейчас в теме
Спасибо автору за идею и реализацию. Однако руки чешутся сделать подменю фильтра не выборочно для конкретного вида документа, а для всех списков...
15. chmod660 416 01.03.12 10:54 Сейчас в теме
всем спасибо за положительные отзывы, очень приятно.

(14) fomix, не знаю, как программно добавить менюшку прям сразу ко всем формам. всё равно править код придется. Процедуру инициализации меню можно доработать и вынести во внешний модуль (чтобы осталась одна), но код её вызова всё равно в форму надо добавлять.
А так - специально делал настраиваемым, чтобы для любой формы подходило, лишь правильно надо указать 3 (три) переменных. Ну и немножко доделаю, чтобы и для справочников работало.
16. fomix 33 01.03.12 11:41 Сейчас в теме
18. Boroda 90 05.03.12 00:35 Сейчас в теме
Судя по количеству положительных отзывов - очень неплохая вещица! Думаю, будет работать в любых конфигурациях. Спасибо за интересное решение.
19. krund 10.03.12 13:37 Сейчас в теме
Решение интересное. Жаль, что сделана под себя.
20. chmod660 416 12.03.12 13:16 Сейчас в теме
(19) krund, почему жаль?
Вроде пытался сделать универсальной, можно брать и пользоваться, а можно - дорабатывать.
21. pt_olga 62 12.03.12 22:11 Сейчас в теме
спасибо автору, быстро, удобно, красиво :)
22. Kamikadze 46 12.03.12 22:24 Сейчас в теме
23. Kamikadze 46 15.03.12 17:15 Сейчас в теме
В строке ИмяДокумента=кдоЭлементФормыСписок.ТекущаяСтрока.метаданные().Имя;

должно быть так: ИмяДокумента=кдоЭлементФормыСписок.ТекущаяСтрока.метаданные().Данные.

и строки неограниченой длинны фильтр не отрабатывает.
24. chmod660 416 15.03.12 18:01 Сейчас в теме
(23) Kamikadze, спасибо!
Я буду накапливать исправления, чтобы не изменять по чайной ложке и не нагружать модератора. Но все уведомления и предложения приветствуются.
25. Valerich 1630 27.03.12 16:19 Сейчас в теме
я бы предложил основной функционал сделать универсальным:
- добавление подменю на панель при открытии (в типовых такую процедуру можно вызывать из процедур, всегда отрабатывающих при открытии)
- формирование подменю (достаточно передавать правильный набор параметров, чтобы этой процедуре было "фиолетово" откуда ее вызвали.

тогда ценность публикации вырастет в разы

А вообще идея отличная, за что и + автору
26. unoDosTres 30.05.12 12:06 Сейчас в теме
когда слишком большой список в меню фильтра он весь не помещается, добавить бы полосу прокрутки внизу и вверху, и еще когда реквизит незаполнен, стоит добавить исключение, а то ошибка на доедает выскакивать )
а вообще идея отличная ПЛЮСУЮ
27. chmod660 416 30.05.12 12:48 Сейчас в теме
(26) unoDosTres, список ограничен параметром ОграничениеКоличестваПунктовМеню.
Можно переделать запрос (убрав "ПЕРВЫЕ "+ОграничениеКоличестваПунктовМеню+"), тогда 1С сама будет дорисовывать стрелки прокрутки. Мне это показалось неудобным, да и небыстрым.
про ошибку: не видел, напишите, как воспроизвести - исправим.
28. unoDosTres 31.05.12 10:38 Сейчас в теме
(27)
оказалось, что ошибка связана не с незаполненностью реквизита, я проверял на УТ, реквизит адрес доставки,а как сказал kamikadze в (23) строки неограниченной длинны фильтр не отрабатывает, так что оказалось что об этом вы уже знаете
29. Kamikadze 46 31.05.12 11:21 Сейчас в теме
я подсистему внедрил - пользователм понравилась, такая себе юзабилюшка, не особо важно, но приятно :)
30. пользователь 03.04.13 18:51
Сообщение было скрыто модератором.
...
31. пользователь 03.04.13 18:52
Сообщение было скрыто модератором.
...
32. Foxux 03.04.13 18:52 Сейчас в теме
глюк какой то в предыдущем посте, сорри
33. Inerren 02.03.12 11:49 Сейчас в теме
Огромное спасибо! Особенно за выложенный отдельно код. Будет интересно поковырять. =)
Оставьте свое сообщение

См. также

Расширенная работа с графическими схемами. Построение схемы БП с помощью графической схемы. Переработка под 8.3 (8.2 и 8.1 так же поддерживается)

Работа с интерфейсом Платформа 1С v8.3 Россия Абонемент ($m)

В 1с есть объект графическая схема. Но как знаете схема это только создается вручную и только. Программного создания нет. В предыдущих публикациях есть пример как ее собирать. Данный модуль имеет расширенную функциональность. В нем разобраны все объекты полностью плюс добавлен объект Схема, который сам может строить графическую схему опираясь уже не на квадратики а только на логику.

10 стартмани

16.08.2012    41526    7    vladnet    39    

25

Альтернативный способ добавления элементов и реквизитов на формы

Работа с интерфейсом Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Россия Абонемент ($m)

Предлагаю альтернативный вариант добавления динамически создаваемых элементов и реквизитов на форму.

1 стартмани

09.09.2019    25977    46    bmk74    9    

83

Расширенная настройка динамического списка УФ

Работа с интерфейсом Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Открывая управляемую форму выбора и не увидев там видимых в форме списка элементов, часто хочется узнать причину их отсутствия там, т. е. какой наложен отбор. Но стандартная настройка списка управляемой формы показывает только пользовательские настройки, скрывая от пользователя фиксированный отбор. Предлагаю вам расширение конфигурации с расширенной настройкой динамического списка, отображающей пользователю кроме пользовательских настроек еще фиксированные.

1 стартмани

31.05.2017    47308    178    tormozit    25    

135

Открывашка ячеек таблиц

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

Глобальное сочетание клавиш для открытия объекта по ссылке из текущей ячейки любой таблицы в большинстве управляемых форм

1 стартмани

27.10.2018    29045    16    tormozit    39    

107

Лучший подарок для бухгалтера - счёты 8.2 (со звуком)

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

(Толстый клиент) Подарите бухгалтеру счеты, и он(а) Вас никогда не забудет.

1 стартмани

13.05.2011    50250    925    Tatitutu    45    

163

Визуализация событий на временной шкале средствами "Поле HTML документа"

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

Интересный способ наглядно отобразить события на временной шкале. Например, может быть применен для красивого вывода документов по клиенту. Тестировалось на платформе 8.3.12.1469

1 стартмани

31.07.2018    36108    159    Plotks2017    27    

236

Работа с данными выбора

Работа с интерфейсом Платформа 1С v8.3 Россия Абонемент ($m)

В управляемом интерфейсе заложена мощная возможность описывать связи реквизитов формы через параметры. Установка параметров связей позволяет ограничить выбор данных так, чтобы целостность данных была обеспечена на этапе ввода. Однако без дополнительного программирования задать можно только самые простые связи. Такие условия связи, как зависимость от реквизита через точку или зависимость через дополнительное отношение, заданное в регистре сведений - уже задать без программирования не получится.

1 стартмани

17.07.2018    96315    33    kalyaka    17    

74

Интерактивный интерфейс

Рабочее место Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Обработка (отдельная панель меню), позволяющая настраивать интерфейс пользователя интерактивно (права не настраивает). Мне очень пригодилось, так как приходится прописывать индивидуальный интерфейс, каждому пользователю (а их уже сотни). Выложил 2 версии одна в виде таблицы, вторая в виде выпадающего меню

1 стартмани

29.10.2011    26778    65    Vin_Tik    9    

12

Цветовые схемы для конфигуратора 1С (Популярные цветовые схемы для C# - теперь и для 1С) (Теперь 8.2 - 8.3)

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

Тёмные цветовые схемы кода. То, что было доступно всем передовым средствам разработки, теперь доступно и на 1С. 13.12.17 UPD: Теперь работает с платформой 8.3

3 стартмани

07.10.2013    52046    199    Chernov_Dmitriy    83    

58

NativeDraw: Компонента рисования для 1С [V2.6.2]

Разработка внешних компонент Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Рисуйте в формах 1С, также предлагается небольшое количество нерисовальных функций

3 стартмани

13.07.2015    61949    486    ПерваяСистема    154    

117

Выполнение JavaScript кода из 1С в объекте Поле HTML Документа (HTML 5) и вызов события в 1С ПриНажатии

Работа с интерфейсом Языки и среды Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Пример выполнения JS кода из 1С в Поле HTML Документа под управляемыми формами, с удобным получением результата в 1С(С помощью вызова привязанного события ПриНажатии к элементу ПолеHTMLДокумента)

1 стартмани

22.03.2016    114283    189    igo1    66    

184

Подборка иконок для подсистем 1С:8.2, 8.3 (740 шт.) PNG 48х48

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Подборка иконок для подсистем 1С: Предприятие 8.2, 8.3 (УП) в формате PNG 48*48 с сохранением прозрачности.

10 стартмани

19.12.2011    137043    1271    Lesha1C    74    

228

Кнопки управления группировками табличного документа для управляемых форм

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

Универсальный механизм управления группировками табличного документа из управляемой формы

1 стартмани

02.06.2015    35026    31    unichkin    9    

24

3D в 1С или Стерео Картинки(SIRDS).Не верь своим глазам.

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Стереокартинки в 1С (из разряда "Сделай сам") или дождалить ЗD в 1С Вы когда нибудь видели стереокартинку ? Понравилось ? Теперь Вы можете сами сделать такую же. Очень хороший тренажер для глаз, снимает стресс и усталость.

1 стартмани

01.11.2010    35943    316    Tatitutu    28    

70

v8 Телепат 0.4.7.1 - консоль ПОЛЬЗОВАТЕЛЯ. Скажи "Нет!" громоздким интерфейсам. Не шутка! [обновлено 03.12.2013]

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Данная обработка позволяет выполнять различные действия набирая команды с помощью клавиатуры. Есть версии для 8.1, 8.2 (обычные и управляемые формы) Обновлено до Версии 0.4.7 Добавлена работа с дополнительными внешними отчетами и обработками, поиск по представлению документы, избранное, журналы, полнотекстовый поиск 0.4.7.1 Исправлена ошибка при первом сохранении Избранное.

1 стартмани

01.08.2011    43985    770    anig99    126    

176

Статусбар процедур на сервере

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

Набор инструментов, позволяющий запустить любую Вашу процедуру &НаСервере в фоновом режиме и отображать пользователю состояние её выполнения.

100 руб.

16.09.2013    41107    74    30    

54

Коллекция полезных кнопок и процедур для отчетов и обработок v3.00

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Собрал в одном месте полезные кнопки и процедуры, которые по мере необходимости можно использовать в своих разработках.

2 стартмани

09.01.2012    66727    2055    mtv:)    184    

587

Размещение PDF в Поле HTML управляемой формы для просмотра веб-клиентом

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

Объекты ActiveX недоступны для размещения в управляемых формах, как было ранее в обычных, при этом необходимость размещения таких объектов востребована. Покопался на форумах, мне нужно было разместить файл PDF в управляемой форме, чтобы доступ был в веб-клиенте. В тонком клиенте получилось (не как в обычной форме, но довольно просто), а в веб-клиенте потребовалось покопаться. Привожу описание как сделал размещение файла PDF, с целью чтобы вы не спотыкались на моих граблях.

1 стартмани

07.07.2014    256070    53    sapervodichka    35    

91

Программный вывод таблицы значений на управляемую форму 8.2

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Обработка демонстрирует пример вывода таблицы значений с произвольной структурой на управляемую форму 8.2. Вывод таблицы реализован в виде отдельной процедуры, в которую таблица значений передается в качестве параметра. Это позволяет встроить её в общий модуль, и удобно использовать при необходимости.

1 стартмани

21.06.2013    58868    322    hiduk    22    

45

Эмулятор рабочего стола для УФ

Универсальные обработки Работа с интерфейсом Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Эмуляция основных возможностей рабочего стола для УФ. Добавление/изменение/перетаскивание иконок, вызов объектов конфигурации, внешних отчётов и обработок, сторонних файлов. Толстый и тонкий клиент, только средствами 1С.

1 стартмани

25.11.2013    26137    52    Yashazz    13    

22

Просмотр изображений через тонкий клиент с жесткого диска сервера UPD

Работа с интерфейсом Универсальные функции Платформа 1С v8.3 Абонемент ($m)

Загрузка с сервера, автоматическое масштабирование, увеличение-уменьшение, поворот. На примере просмотра фотографии сделанных торговыми агентами через систему приема заявок МОБИ-С. UPD: при вставке кода процедуры УстановитьТекстHTMLСФото не вставился собственно html код, исправил

1 стартмани

28.11.2013    28370    26    anig99    9    

12

Слайд шоу высокого качества на рабочий стол (3.2.0.1)

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Мне очень хочется сделать для вас что-нибудь приятное. Эти обработки запускают слайд шоу на рабочем столе в любой конфигурации 1С:Предприятия 8.1 и 8.2 (толстый клиент)

1 стартмани

17.04.2010    39048    1526    alexk-is    70    

133

Как рисовать диаграммы в Excel

Загрузка и выгрузка в Excel Работа с интерфейсом Платформа 1С v8.3 Абонемент ($m)

Что делать, если средствами 1С не получается нарисовать диаграмму, которую хочет Заказчик? Выход есть!

1 стартмани

10.10.2013    25625    134    Сисой    1    

11

Разукрашка - раскраска кода 1С:Предприятия и Delphi (5.8.1.2)

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Сделай свою страничку краше. Используй «Разукрашку» для раскрашивания исходного программного кода и текста запроса 1С:Предприятия или программного кода на Delphi. Цвета текста программы в сформированной Web-странице будут как в конфигураторе.

1 стартмани

04.05.2009    75220    2487    alexk-is    171    

324

Вариант динамического интерфейса

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Интерфейс представлен в виде прикрепленной формы с закладками и командными панелями, а заполняется динамически в зависимости от пользователя.

1 стартмани

22.06.2009    17390    328    Ivon    29    

27

Суммирование областей отчета и не только...

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

Суммирование областей в отчете и списке документов по выделенным диапазонам.

1 стартмани

08.06.2010    19650    218    logarifm    17    

34

Удобный выбор периода

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Позволяет в один клик выбрать практически любой период.

1 стартмани

16.09.2011    38846    230    Adeptus    59    

68

Видео проигрыватель на управляемой форме 1с 8.2

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Видел много решений открытия "внешнего проигрывателя" из Windows, в самой 1С на форме не видел. Может кому пригодиться достаточно простой способ реализации.

1 стартмани

29.08.2013    17165    105    demart-omsk    7    

12

Рабочий стол для менеджера УТ 10.3.х и Розницы 1.0.х - всех версий под 8.3 и 8.2

Работа с интерфейсом Рабочее место Платформа 1С v8.3 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием Россия Управленческий учет Абонемент ($m)

Рабочий стол для УТ 10.3 и Розница 1.0 всех версий под 8.2 и под 8.3 – создавался для удобства работы пользователей в системе. Все на Рабочем столе: Журналы Документов, Документы, Справочники, Отчеты + Время и Дата.

3 стартмани

11.09.2012    28734    238    kaiman_fedor_yandex    12    

42

УТ 11: Ускоряем форму подбора номенклатуры

Работа с интерфейсом Платформа 1С v8.3 1С:Управление торговлей 10 Бухгалтерский учет Абонемент ($m)

При внедрении УТ 11 столкнулся с медленной работой формы подбора. А именно - список сильно тормозил при его прокрутке - после каждой прокрутки колесика мышки список задумывался на несколько секунд. В связи с тем, что компания, в которой происходило внедрение, торгующая, то под угрозой стала эффективность ее работы и здесь я не преувеличиваю. При этом усиление железной части (было закуплено новое серверное оборудование) проблему не решило, верней решило частично - вместо 3-х секунд между движениями колесиком мышки список стал думать 2 секунды, что было по прежнему неприемлемо, хотя админы гордо заявляли о беспрецедентных 30 процентах прироста производительности.

1 стартмани

29.08.2013    52516    352    TSSV    51    

66

Обработка "EditPeriod": традиционный диалог настройки периода на Web-клиенте и тонком клиенте.

Универсальные обработки Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Обработка имитирует функционал системного объекта «НастройкаПериода». Обеспечивает работу альтернативного диалога настройки периода, как в режиме обычного приложения, так и в Web-клиенте и в тонком клиенте.

1 стартмани

12.07.2013    27741    29    yuraos    28    

19

1С 8 Настраиваемый рабочий стол

Работа с интерфейсом Платформа 1С v8.3 1С:Управление торговлей 10 Россия Абонемент ($m)

Настраиваемая форма рабочего стола для обычного приложения.

1 стартмани

17.08.2012    19892    261    rustamsmax    12    

22

Цветной журнал документов

Обработка документов Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Разработка, которая поможет вам скрасить вашу жизнь и сохранить зрение. Создан журнал документов с возможностью их цветового выделения по определенному реквизиту (организации, складу, контрагенту и т. д.).

1 стартмани

23.11.2009    16869    662    Svetozor    43    

72

Географическая схема Харькова (.geo)

Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Географическая схема Харькова в формате 1С. (Полный план города).

10 стартмани

20.03.2009    27077    222    adun    42    

53

Универсальное, горизонтальное, настраиваемое иерархическое меню

Работа с интерфейсом Платформа 1С v8.3 1С:Бухгалтерия 2.0 1С:Управление производственным предприятием Абонемент ($m)

Создавая рабочий стол, далее появилась идея воплотить формирование элементов меню в виде формы закрепленной сверху. А потом появилась идея добавить к вышереализованному возможность завершения сеансов пользователей по таймеру и оповещение по электронной почте.

1 стартмани

03.04.2013    14363    1    iones    10    

16

Раскрашивание справочников. Пример.

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

Раскрашивание справочников 8.2. Готовый пример "разукрашивания" справочника "Номенклатура". Внедрение за 2 минуты.

1 стартмани

29.03.2013    8785    49    NazarovV    10    

13

Редактор MXL – вырезание группировок в любом отчете

Универсальные обработки Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Часто встречал у пользователей желание быстрым способом убрать из отчета MXL ненужный уровень группировок. Но подходящего инструмента не нашел, поэтому написал свой.

1 стартмани

11.04.2013    22583    44    fixin    19    

15

v8.2 Управляемые формы: добавляем произвольное пользовательское меню в основное меню 1С без модификации конфигурации.

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

Часто ли Вы задумывались о возможности создания собственного подменю в основном меню 1С? Часто ли Вам приходилось отказываться от "красивого" решения Вашей задачи без вышеупомянутой возможности? Вашему вниманию предлагается технология, дающая возможность добавить подменю в главное меню 1С 8.2 УФ, полностью сформированное "обычным" способом.

1 стартмани

24.03.2013    29019    70    MarSeN    48    

55

3 в 1: отчеты 1С в Word: динамические таблицы, разная ориентация страниц, объединение тысячи отчетов в один файл word

Управление взаимоотношениями с клиентами (CRM) Работа с интерфейсом Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Рассмотрим 3 вещи, по которым очень часто возникают вопросы: 1. как выводить динамически формируемые таблицы с разным количеством строк (программно добавлять строки в файл word); 2. как в одном отчете в Word сделать одну страницу в книжной ориентации, а другие - в альбомных; 3. как в одном файле Word получить сразу 1000 отчетов с разной ориентацией страниц, с разными динамически сформированными таблицами.

1 стартмани

28.12.2012    8276    100    Flashill    13    

41