Индикация прогресса выполнения фонового задания на управляемой форме внешней обработки

Публикация № 1174382 27.12.19

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

Длительная операция прогресс отладка дополнительная обработка индикация процесса фоновое задание отслеживание статуса выполнения индикатор управляемые формы БСП ВнешняяОбработка ДлительныеОперации ФоновыеЗадания

Внешняя обработка с фоновым выполнением и индикацией процесса для любой конфигурации на основе БСП >= 2.3 без изменения конфигурации и встраивания обработки в "Дополнительные отчеты и обработки".

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

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

Отличие данной обработки от других в том, что максимально упрощен код, использующий механизмы БСП для индикации процесса выполнения длительного процесса, и это все реализовано на внешней обработке, которую не нужно встраивать в справочник "Дополнительные отчеты и обработки". Отладку можно производить прям в самом теле обработки, предварительно прописав параметр "РежимОтладки" (раздел "Отладка длительных операций").

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

и получения результатов выполнения фонового задания на клиент

Код модуля обработки

 

 

&НаСервере

//здесь имитация длительной операции на сервере
Процедура ВыполнитьПримерНаСервере(СтруктураПараметров, АдресРезультата) Экспорт

    //проверим структуру входящих параметров (задаются на форме)

    Если СтруктураПараметров = Тип("Структура") 
            И НЕ ЗначениеЗаполнено(СтруктураПараметров.ТекущийПользователь) Тогда
        Возврат;
    КонецЕсли;
    
    ТекущийПользователь = СтруктураПараметров.ТекущийПользователь;
    КоличествоИтераций   = 0;
    МассивИтераций         = Новый Массив;
    
    //формируем возвращаемую структуру на клиент

    СтруктураВозврата = Новый Структура("ТекущийПользователь, ВремяНачала, ВремяОкончания, КоличествоИтераций, МассивИтераций");
    СтруктураВозврата.Вставить("ТекущийПользователь", "Тек. пользователь: "+ ТекущийПользователь);
    СтруктураВозврата.Вставить("ВремяНачала",          "Время начала: "+ ТекущаяДата());
    

    //имитируем длительную операцию 100 сек - 100%
    ВремяЗавершения = ТекущаяДата() + 100; //выполняем 100 сек
    Пока ТекущаяДата() < ВремяЗавершения Цикл
        Процент = 100 - (ВремяЗавершения - ТекущаяДата());
        Если НЕ (Процент % 10) И Процент Тогда
            ДлительныеОперации.СообщитьПрогресс(Процент, "Обработано: "+Строка(КоличествоИтераций));
            КоличествоИтераций=КоличествоИтераций+1;
            МассивИтераций.Добавить(Строка(КоличествоИтераций)+ ". " + ТекущаяДата());
        КонецЕсли;
    КонецЦикла;
    
    СтруктураВозврата.Вставить("КоличествоИтераций",    "Количество итераций: "+КоличествоИтераций);
    СтруктураВозврата.Вставить("ВремяОкончания",         "Время окончания: "+ ТекущаяДата());
    СтруктураВозврата.Вставить("МассивИтераций",        МассивИтераций);
    

    //помещаем в ВХ данные для клиента
    ПоместитьВоВременноеХранилище(СтруктураВозврата, АдресРезультата);

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


 

 

создаем форму обработки, в модуль формы помещаем

 


 

//здесь понадобится для примера заполнить текущего пользователя,

// параметры естественно могут быть другими, все что можно поместить в структуру

&НаКлиенте
Процедура КомандаПуск(Команда)
        
    ПараметрыЗапуска          = Новый Структура("ТекущийПользователь");
    ПараметрыЗапуска.Вставить("ТекущийПользователь",ПолучитьТекущийПользователь());
    
    СтруктураФоновогоЗадания = ВыполнитьФоновоеЗаданиеНаСервере(ПараметрыЗапуска, УникальныйИдентификатор);
    
    ПараметрыОжидания = ДлительныеОперацииКлиент.ПараметрыОжидания(ЭтотОбъект);
    ПараметрыОжидания.ВыводитьПрогрессВыполнения = Истина;
    // указываем интервал обновления состояния в секундах, если не указать, 
    // то интервал будет увеличиваться при каждой итерации в 1.4 раза.
    ПараметрыОжидания.Интервал = 10;
    
    ДлительныеОперацииКлиент.ОжидатьЗавершение(СтруктураФоновогоЗадания, Новый ОписаниеОповещения("ОбработатьДанные", ЭтотОбъект), ПараметрыОжидания);
        
КонецПроцедуры

&НаСервере
Функция ВыполнитьФоновоеЗаданиеНаСервере(ПараметрыЗапуска, УникальныйИдентификатор)

    НаименованиеЗадания = НСтр("ru = 'Фоновое задание длительной тестовой операции");
    
    ВыполняемыйМетод = "ДлительныеОперации.ВыполнитьПроцедуруМодуляОбъектаОбработки";
    
    ПараметрыЗадания = Новый Структура;
    ПараметрыЗадания.Вставить("ИмяОбработки", РеквизитФормыВЗначение("Объект").ИспользуемоеИмяФайла);
    ПараметрыЗадания.Вставить("ИмяМетода", "ВыполнитьПримерНаСервере");
    ПараметрыЗадания.Вставить("ПараметрыВыполнения", ПараметрыЗапуска);
    ПараметрыЗадания.Вставить("ЭтоВнешняяОбработка", Истина);
    ПараметрыЗадания.Вставить("ДополнительнаяОбработкаСсылка",Неопределено);
    
    ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор);
    ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания;
    ПараметрыВыполнения.ЗапуститьВФоне = Истина;
    ПараметрыВыполнения.Вставить("ИдентификаторФормы", УникальныйИдентификатор); 
    
    СтруктураФоновогоЗадания = ДлительныеОперации.ВыполнитьВФоне(ВыполняемыйМетод, ПараметрыЗадания, ПараметрыВыполнения);
    
    Возврат СтруктураФоновогоЗадания;
    
КонецФункции



// здесь также понадобится обработать возвращаемый массив ЗаполнитьМассивИтераций(Данные.МассивИтераций), 
// если например, нужно вывести какой-нибудь список обработанных документов, можно закомментить

&НаКлиенте
Процедура ОбработатьДанные(Результат, ДополнительныеПараметры) Экспорт
    
    Если Результат = Неопределено Тогда
        Возврат;
    ИначеЕсли Результат.Статус = "Ошибка" Тогда
        ОбщегоНазначенияКлиентСервер.СообщитьПользователю(Результат.ПодробноеПредставлениеОшибки);
    ИначеЕсли Результат.Статус = "Выполнено" Тогда
        // обрабатываем результат
        Данные = ПолучитьИзВременногоХранилища(Результат.АдресРезультата);
        Если ТипЗнч(Данные) = Тип("Структура") Тогда
            Сообщить(Данные.ТекущийПользователь);
            Сообщить(Данные.ВремяНачала);
            Сообщить(Данные.КоличествоИтераций);
            Сообщить(Данные.ВремяОкончания);
            ЗаполнитьМассивИтераций(Данные.МассивИтераций);
        КонецЕсли;
        
    КонецЕсли;

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

 

 

UPD: По наработкам данной статьи добавлена возможность запуска обработки в клиент-серверном варианте.

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

Наименование Файл Версия Размер
ИндикацияУФФайловыйВариант.epf

.epf 8,40Kb
52
.epf 8,40Kb 52 Скачать
ИндикацияУФКлиентСерверныйВариант.epf

.epf 8,90Kb
4
.epf 8,90Kb 4 Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. VmvLer 27.12.19 09:26 Сейчас в теме
В общих модулях итак код выполнения в фоне максимально упрощен и примеры запуска можно найти в конфигах.

Так что очередная попытка халтуры в стиле сухариков, когда крошки хлеба крошат в пакетик и вопят, что это крута.

Да и перестаньте обманывать надуманными отличиями от сотен подобных костылей, кроме "Пожалуйста, подождите..." и индикатора времени в сообщение нечего вывести, т.к. в 90% случаев вычислить результирующую коллекцию в фоне до старта задания невозможно.
fokin; Evg-Lylyk; dime2; user1274438; +4 5 Ответить
2. 1sig 214 27.12.19 09:29 Сейчас в теме
(1) во внешней обработке, чтобы все это взлетело без встраивания в "Дополнительные внешние отчеты и обработки"?
4. webester 25 27.12.19 10:24 Сейчас в теме
Не показывать код жлобство конечно) Но спасибо и на том, что есть.
5. 1sig 214 27.12.19 11:03 Сейчас в теме
(4) с замечанием согласен, принято, сам жлобство не люблю, чуть позже по примеру аналогичных публикаций будет оформлен и код обязательно, если что ловите на слове)
CodeNull; +1 Ответить
3. VmvLer 27.12.19 09:30 Сейчас в теме
Муся, не нервируй меня
(с)классика к/ф
6. Lancelot-2M 114 29.12.19 03:05 Сейчас в теме
А что с замерами производительности? Как оно работает с индикацией и без на конкретных таких рабочих выборках (ну хотя бы за 100 000 неважно чего)?
8. 1sig 214 29.12.19 09:22 Сейчас в теме
(6) хороший вопрос, нагрузочное тестирование не проводилось, по времени ограничений не было, пользователь просто хотел видеть - на каком этапе идет обработка пакетов документов. Пример длительной операции в данном задании - только пример, он не хорош с точки зрения холостой загрузки проца, в 1С к сожалению так и не появился встроенный метод Delay, поэтому проц грузится большую часть времени впустую в данном условии цикла "ТекущаяДата() < ВремяЗавершения"
15. serverstar 31 14.09.21 18:20 Сейчас в теме
(8) (почти) бесконечный цикл иногда тоже бывает полезен 🙃
7. webester 25 29.12.19 04:29 Сейчас в теме
(6)Я так понимаю,единственное, что влияет на производительность это вот эта строчка
ДлительныеОперации.СообщитьПрогресс(Процент, "Обработано: "+Строка(КоличествоИтераций));

В остальном разницы нет. 5 там строк или 55000
9. manlak 77 30.12.19 11:52 Сейчас в теме
Класс! Давно искал такую штуку.
10. PowerBoy 3197 09.01.20 07:56 Сейчас в теме
Меня смущает вот эта строка:
ПараметрыЗадания.Вставить("ИмяОбработки", РеквизитФормыВЗначение("Объект").ИспользуемоеИмяФайла);

Передается путь и имя файла на клиенте, а выполняться серверный код будет на сервере и файл не найдет.
MaxTolya; maksa2005; +2 Ответить
11. 1sig 214 09.01.20 09:29 Сейчас в теме
(10) для серверной базы верное замечание! но как вариант, расшарить на машине-сервере, где крутится сервер 1С, общедоступную сетевую папку, поместить файл внешней обработки туда и запускать с нее - найдет файл, проверено :)
12. Xershi 963 13.01.20 21:00 Сейчас в теме
(10) ну код кривой у автора что поделать. Я давно использую в своих наработках такой подход.
Единственный момент в старых бсп 2.3 процент без допила не выводится.
serverstar; +1 Ответить
16. serverstar 31 14.09.21 18:22 Сейчас в теме
13. maksa2005 364 14.08.20 15:23 Сейчас в теме
Каталог не обнаружен 'C:\Users\litvinov\Desktop\PUBID_1174382-ИндикацияУФ.epf'
{ОбщийМодуль.ДлительныеОперации.Модуль(649)}: Обработка = ВнешниеОбработки.Создать(Параметры.ИмяОбработки, БезопасныйРежим);
{(1)}:ДлительныеОперации.ВыполнитьПроцедуруМодуляОбъектаОбработки(Параметры[0],Параметры[1])
{ОбщийМодуль.ОбщегоНазначения.Модуль(4797)}: Выполнить ИмяМетода + "(" + ПараметрыСтрока + ")";
{ОбщийМодуль.ДлительныеОперации.Модуль(768)}: ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыПроцедуры);
{ОбщийМодуль.ДлительныеОперации.Модуль(759)}: ВыполнитьПроцедуру(ВсеПараметры.ИмяПроцедуры, ВсеПараметры.ПараметрыПроцедуры);

по причине:
Ошибка подключения внешних метаданных
по причине:
Каталог не обнаружен 'C:\Users\litvinov\Desktop\PUBID_1174382-ИндикацияУФ.epf'
14. 1sig 214 14.08.20 18:54 Сейчас в теме
(13)
запускайте обработку с общедоступной сетевой папки,
PowerBoy в (10) сообщении написал, в чем причина такой ошибки.
17. zels 170 13.06.22 08:49 Сейчас в теме
Как вывести "палку" индикатора?
18. triviumfan 30 18.08.22 11:41 Сейчас в теме
Нерабочая, как пример не подойдёт.
19. 1sig 214 18.08.22 13:19 Сейчас в теме
(18) обработка рабочая, на какой конфигурации запускаете?
20. triviumfan 30 18.08.22 14:26 Сейчас в теме
(19) Нету передачи обработки на сервер, это решение лишь для файловой базы, которая по сути нигде не используется.
Пришлось самому пилить.
21. 1sig 214 18.08.22 17:13 Сейчас в теме
(20) добавлена возможность запуска обработки в клиент-серверном варианте
Оставьте свое сообщение

См. также

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

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

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

10 стартмани

16.08.2012    38871    0    vladnet    39    

Шаблон внешней обработки на основе БСП с фоновым выполнением модуля обработки и выводом индикации фонового задания

Инструментарий разработчика БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Абонемент ($m)

Шаблон внешней обработки на основе БСП, с фоновым выполнением модуля обработки и выводом индикации фонового задания, как для подключения к подсистеме дополнительные отчеты и обработки, так и без подключения.

1 стартмани

31.08.2022    2130    35    VdZMWOnC    3    

[Расширение] Смена стиля оформления интерфейса

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

Ещё с времен платформы 8.3.13 можно изменять цвет стилей интерфейса главного окна. Данное расширение позволит вам выбрать из подготовленных десятка стилей на свой вкус.

1 стартмани

01.07.2022    4796    88    rpgshnik    57    

Выделение текущей строки в отчете (сделать сразу во всех отчетах и ничего не сломать)

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

Как за 10 минут упростить работу с отчётами программистам и пользователям. Добавить ВО ВСЕ ОТЧЁТЫ механизм автоматического выделения текущей строки отчёта (той, на которой установлен курсор). И ПРИ ЭТОМ НИЧЕГО НЕ СЛОМАТЬ.

1 стартмани

17.10.2021    7504    8    Патриот    49    

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

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

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

1 стартмани

09.09.2019    22234    41    bmk74    8    

Работа с картами в 1С на примере бесплатной библиотеки Leaflet

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

Разработка функционала отображения и выбора пунктов доставки на карте прямо в 1С с помощью бесплатной библиотеки Leaflet. Тестирование производилось на платформе 8.3.15.1534 на тонком клиенте.

1 стартмани

31.03.2021    18579    54    Parsec1C    19    

БСП - рабочие примеры асинхронного запуска функций и процедур

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

В данной публикации я привожу рабочие примеры асинхронного использования функций и процедур конфигурации на БСП

4 стартмани

02.11.2020    11796    28    quazare    3    

Универсальные функции для работы с цветом в 1С

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

Все на что мы смотрим состоит из цветов в том числе и то, что есть в конфигурациях на 1С :) За время своей работы скопилось достаточно 1С-функций, которые что-то делают с цветом. Это публикация - попытка их систематизировать. Что есть: работа с HEX, HSV, HSL, CMYK представлениями цвета, конвертации из одной системы хранения в другую, работа с каталогами RAL, работа со случайными цветами, контрастные и инверсные цвета, трансформация цветов (осветление, затемнение, градации серого, смешивание цветов), работа с именованными CSS-цветами и т.п. В общем концептуально.

1 стартмани

07.08.2020    8775    18    Diversus    9    

Работа с релизами 1С и договорами ИТС Промо

WEB-интеграция БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Работа с релизами 1С и партнерским кабинетом.

2 стартмани

15.08.2019    26342    68    RocKeR_13    39    

Открыть форму внутри другой формы - наконец-то возможно!

Работа с интерфейсом Управляемые формы Абонемент ($m)

Я давно мечтал о возможности открытия форм 1С внутри других форм, мне время от времени попадаются задачи, где это бы пригодилось. И вот в версии 8.3.16 наконец-то это можно реализовать! Конечно, это не совсем то, что я ожидал, но получилось все равно интересно. Давайте посмотрим.

1 стартмани

15.04.2020    28240    37    CyberCerber    66    

Делаем из СКД Excel (ну, почти)

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

Несложный в использовании способ внедрить в обычный отчет СКД возможность редактировать значения ресурсов отчета (а-ля Excel) и получать отредактированные значения для дальнейшей обработки.

1 стартмани

26.01.2020    20990    31    herfis    16    

Декомпиляция условного оформления

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

Обработка автоматически генерирует полный код создания условного оформления формы любой сложности. Достаточно настроить для формы в конфигураторе условное оформление, а затем выбрать данную форму в обработке. В результате будет сгенерирован программный код создания условного оформления.

2 стартмани

23.12.2019    15543    69    XilDen    7    

Менеджер открытых форм [update 12.12.21] Промо

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

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

1 стартмани

13.04.2017    28241    54    SeiOkami    19    

Многоуровневые списки выбора с оформлением элементов

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

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

1 стартмани

17.12.2019    16368    2    azhilichev    5    

[Взрыв шаблона!] Новый способ программной настройки условного оформления

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

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

1 стартмани

01.12.2019    25984    70    mszsuz    13    

Конфигурация для администраторов "Центр управления базами" для 8.3 УФ

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

Конфигурация предназначена для централизованного управления информационными базами предприятия. Разработана на БСП версии 2.4.4.76. В работе использует COM-соединение.

3 стартмани

09.10.2019    14633    52    WhiteOwl    17    

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

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

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

1 стартмани

31.05.2017    43258    166    tormozit    25    

Шаблон разработки печатных форм и подключения к конфигурациям на БСП 2.х и БСП 3.0

Печатные формы БСП (Библиотека стандартных подсистем) Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

«Вместо поставки внешних печатных форм в виде внешних обработок рекомендуется вести их разработку с помощью расширений конфигурации.» [ИТС, БСП гл. 3.38 Печать] У меня задачи типа «Требуется разработать печатную форму …» появляются регулярно, но с временными интервалами. Что бы вести разработку единообразно, для конфигураций на БСП, я заготовил шаблон для таких задачек, который позволяет мне сразу приступить к разработке макета и алгоритма формирования печатной формы, а «обертка» из БСП уже готова.

1 стартмани

04.10.2019    48423    77    tolX5    21    

Отслеживание выполнения фонового задания

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

Запуск фонового задания из модуля внешней обработки. Отслеживание выполнения задания в виде прогресса, расположенного на форме.

17.08.2019    51344    ids79    22    

[Механизм интерфейса] Свой флажок (чекбокс)

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

Создадим свой флажок для интерфейса, используем простой универсальный алгоритм.

1 стартмани

09.08.2019    27459    24    rpgshnik    44    

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

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

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

1 стартмани

27.10.2018    26059    14    tormozit    38    

Отбор на управляемой форме из списка значений

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

Пример простого удобного отбора любых данных ссылочного типа на управляемой форме. Работа обработки проверена на релизе: 1С:Предприятие 8.3.13.1513.

1 стартмани

09.08.2019    44104    49    nagaitseff    6    

Обработка-редактор HTML

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

Редактор HTML для управляемого интерфейса 8.3.

1 стартмани

10.06.2019    17382    102    ValeriVP    11    

Программное добавление элементов на управляемую форму

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

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

1 стартмани

13.02.2019    113289    63    spec8s    44    

Расширение: Темы для 1С 8.3 Промо

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

Расширение позволяет сменить цвет оформления для интерфейса Такси.

3 стартмани

10.02.2019    29587    189    spec8s    28    

Рисуем и распознаем нарисованное при помощи нейросети

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

Используем нейронную сеть для распознавания нарисованных объектов.

1 стартмани

03.10.2018    21714    51    DO_WHILE_LOOP    28    

Визуализация графики в 1С

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

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

1 стартмани

12.09.2018    18735    25    milkers    10    

Продвинутое рисование в табличном документе (стрелок и не только)

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

Вспоминаем геометрию и основы компьютерной графики. Матрицы и аффинные преобразования на плоскости.

1 стартмани

24.07.2018    24865    22    WalterMort    31    

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

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

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

1 стартмани

13.05.2011    48042    924    Tatitutu    45    

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

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

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

1 стартмани

17.07.2018    83741    27    kalyaka    17    

Иерархическая диаграмма

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

Концепция диаграммы по иерархической структуре данных, например по номенклатуре (продажи или остатки на складах).

2 стартмани

17.06.2018    21861    21    DrAku1a    7    

Markdown и 1С:Предприятие. Визуализация разметки MD в поле HTML документа

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

Пример работы с документами Markdown (MD) на платформе 1С:Предприятие 8. Используется поле HTML документа, подключение JavaScript библиотеки преобразования разметки Markdown в HTML.

1 стартмани

12.06.2018    15289    22    infosoft-v    12    

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

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

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

1 стартмани

31.07.2018    32962    154    Plotks2017    27    

Рисуем стрелки в табличном документе

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

Рисуем стрелки средствами 1С .

1 стартмани

01.06.2018    22562    10    pm74    10    

Печатная форма, сделанная как расширение конфигурации для БП 3.0. Новые возможности БСП

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

Печатные формы на внешних обработках скоро канут в лету. На смену им приходят ПФ, реализованные в виде расширений конфигурации. Не нашел на сайте примеров таких расширений. Привожу пример подобного расширения для БП 3.0.

1 стартмани

06.12.2017    36753    63    kwazi    6    

Вставка снимка экрана (screenshot) в форматированный документ

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

Пример работы с буфером обмена и программной вставки скриншота в форматированный документ.

1 стартмани

30.08.2017    32508    51    Boneman    14    

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

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

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

1 стартмани

29.10.2011    24691    65    Vin_Tik    9    

Программное создание элементов графической схемы (через XSLT)

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

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

1 стартмани

20.07.2017    30002    82    lazarenko    20    

Рисуем в 1С

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

Вдруг захотелось порисовать в paint, а его использование заблокировано корпоративными политиками. Бывало такое? Тогда прошу под кат...

1 стартмани

11.05.2017    27196    84    pallid    35    

Отчёт на разных листах (а-ля EXCEL), управляемые формы + выгрузка в Excel без COM

Работа с интерфейсом Загрузка и выгрузка в Excel Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Столкнулся с задачей вывода отчёта на разных листах (а-ля Excel), предлагаю мини статью со своим скромным опытом по этому вопросу. Если есть решение лучше, напишите об этом в комментариях.

1 стартмани

07.04.2017    26699    79    Ibrogim    17    

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

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

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

3 стартмани

07.10.2013    48252    196    Chernov_Dmitriy    82    

Графическая схема. Управление при помощи XDTO.

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

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

2 стартмани

16.01.2017    35790    155    Alxby    25    

Управляемые формы. Итоги в динамических списках

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

Многие задаются вопросами расчета итогов динамических списков в управляемых формах. Здесь мы не будем претендовать на академичность, оставим споры, что мол это не нужно, что это все равно что считать бородатых мужиков на движущемся эскалаторе, что это дополнительная нагрузка. Все это понимают, Кто не понимает - поймет на практике. Поэтому основываемся на... "снегопад, снегопад, если женщина просит..." или "..а мня плевать - мне очень хочется.." Я попытался решить практические проблемы при расчете и выводе итогов. В приложении примеры расчета итогов в иерархическом справочнике и журнале документов.

1 стартмани

15.12.2016    55168    15    argut    17    

Образец внешней обработки с длительной операцией на базе БСП 2.3 (Переработанная)

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

Переработанная внешняя обработка для запуска длительных операций на базе БСП 2.3. Показывает прогресс, не требует изменений в конфигурации, лёгкая в отладке и использовании, работает в безопасном режиме, простая для понимания.

1 стартмани

30.11.2016    43794    204    ЕСТЬNULL    15