Завершение работы пользователей

Публикация № 89350

Администрирование - Информационная безопасность

139
!Обновление от 12.03.2012!. Следующая версия обработки завершения работы пользователей. Обработка находится в alpha тестировании. На данный момент работает обычная форма. Управляемая форма создана, но на ней нет функционала. Обработку так же можно запускать как внешнюю, с ограниченным функционалом (описание см ниже). Решил выложить обработку, дабы не забросить проект, т.к. текущая работа забирает фактически все время, а определенные наработки по 2 версии уже есть. Буду рад тесту, любым комментариям и помощи. По мере выявления ошибок буду стараться их исправлять.

Версия 12.03.2012

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

 

Основные возможности обработки:

  1. просматривать список активных пользователей (список отключенных пользователей);
  2. устанавливать действия не активным пользователям (к примеру сообщение при входе)
  3. быстрое отключением пользователей в два нажатия
  4. выбор шаблонов сообщений (если справочник есть в конфигурации)
  5. создание гибких шаблонов завершения работы
  6. сохранение настроек
  7. возможность использования как внешней обработки (с ограниченными возможностями)
  8. задавать кто не будет отключен для сервисной работы;
  9. установка монопольного режима (автоматическая установка монопольного режима при выходе всех пользователей)
  10. выдержка времени не подключения;
  11. запрет подключения к базе в течении определенного времени;
  12. отправка сообщений пользователям (3 вида отправки)
  13. гибкое оповещение о необходимости выхода
  14. запрет работы пользователей пока конфигурация не совпадает с конфигурацией БД
  15. не ограниченное количество режим заврешения работы с возможностью написания вставок кода
  16. отображение информации о пользователях, которые ограничены в подключении к ИБ, а так же оставшееся время ограничения
  17. гибкая система разрешения входа в ИБ
  18. возможность быстрого продления ограничения доступа на 5 или 10 - 15 минут

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

 

В случае доработки конфигурации

1. необходимы объекты есть в cf файле, который сделан на базе пустой конфигурации

список необхоимых объектов:

  1.1 Справочники   

    - ШаблоныСообщенийЗавершения    
    - ШаблоныЗавершенияРаботы    
    - ВариантыЗавершенияРаботы    

  1.2 Обработка    

    - ЗавершениеРаботыПользователейEX2    

  1.3 Регистр сведений

    - ОтключениеПользователейEX    

  1.4 Перечисление  

    - ДействияСПользователямиEX

  1.5 Модуль обычного приложения

Процедура ПередНачаломРаботыСистемы(Отказ)
    //какой то код
    СтартПроверкиОтключения(Отказ);
КонецПроцедуры


Процедура
ПриЗавершенииРаботыСистемы()
    //какой то код
    СтопПроверкиОтключения();
КонецПроцедуры

 1.6 Общий модуль

   - ОтключениеПользователейEX2

 

2. необходимо заполнить справочник "Варианты завершения работы"

При необходимости можно добавить свои варианты завершения, с необходимым кодом. 

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

 

Версия 06.09.2011 

Пояснения по начальному встраиванию в конфигурацию можно так же смотреть тут http://store-1c.blogspot.com/2011/03/1_27.html (если что то не получается Smile)

Основные возможности обработки:

  1. просматривать список активных пользователей;
  2. задавать кто не будет отключен для сервисной работы;
  3. возможность быстрого отключения;
  4. установка монопольного режима;
  5. выдержка времени не подключения;
  6. запрет подключения к базе в течении определенного времени;
  7. отключение не всех пользователей.
  8. отправка сообщений пользователям
  9. гибкое оповещение о необходимости выхода
  10. 4 режима завершения
    1. Запрет дальнейшего подключения по установленному времени и отключение пользователей от ИБ
    2. Завершение работы пользователей, с возможностью дальнейшего подключения к ИБ
    3. Перезапуск сессии пользователя(ей) ИБ
    4. Завершение работы ИБ с подтверждением пользователя(ей)
  11. отображение информации о пользователях, которые ограничены в подключении к ИБ, а так же оставшееся время ограничения
  12. гибкая система разрешения входа в ИБ
  13. возможность быстрого продления ограничения доступа на 5 или 10 мину

 

Доработка конфигурации:

  • Обработка настройки отключения (в приложении)
  • Регистр сведений
  • Общий модуль
  • Модуль приложения

Обращаю внимание на то что:

Для УПП, КА, УТ, БП необходимо изменить следующий код во всех модулях обработки 
ТекПользователь = УправлениеПользователями.ОпределитьТекущегоПользователя(); 
на следующий: 
ТекПользователь = глЗначениеПеременной("глТекущийПользователь");

 

Регистр сведений

доОтключениеПользователей, непереодический, с независимым режимом записи.

Измерения:

Пользователь - справочник пользователи, ведущее или основной отбор

Ресурсы:

  • Отключить - Булево;
  • ЗапретПодключения - Булево;
  • БыстроеОтключение - Булево;
  • СостояниеОтключения - Строка, 30 символов, переменная;
  • Сообщение - Строка, 300 символов, переменная;
  • ДатаВремяПуска - Дата, Дата и время;
  • ОтключениеМинут - Число, 2 разряда; 
  • ПаузаДоОтключения - Число, 3 разряда, точность 2. 
  • ДействиеОтключения - Строка, 30 символов, переменная; 
  • ОбменСообщений - Строка, 255 символов

Общий модуль "доОтключениеПользователей"

Функция ИзСекундВчасы(Секунд = 0)

    Часов = Цел(Секунд/3600);
   
СекОстМин = Секунд%3600;
   
Минут = Цел(СекОстМин/60);
   
Сек = СекОстМин%60;
    Если
Часов < 10 Тогда
       
Часов = "0" + СокрЛП(Часов);
    Иначе
       
Часов = СокрЛП(Часов);
    КонецЕсли;
    Если
Минут < 10 Тогда
       
Минут = "0" + СокрЛП(Минут);
    Иначе
       
Минут = СокрЛП(Минут);
    КонецЕсли;
    Если
Сек < 10 Тогда
       
Сек = "0" + СокрЛП(Сек);
    Иначе
       
Сек = СокрЛП(Сек);
    КонецЕсли;
    Возврат
Часов + ":" + Минут + ":" + Сек;

КонецФункции

// Процедура контроля возможности подключения.
//
Процедура СтартПроверкиОтключения(Отказ) Экспорт
   
Пользователь = УправлениеПользователями.ОпределитьТекущегоПользователя();
   
Зп = Новый Запрос;
   
Зп.УстановитьПараметр("Пользователь",Пользователь);
   
Зп.Текст = "ВЫБРАТЬ
               |    доОтключениеПользователей.Пользователь,
               |    доОтключениеПользователей.ЗапретПодключения,
               |    доОтключениеПользователей.ДатаВремяПуска,
               |    доОтключениеПользователей.ОтключениеМинут,
               |    доОтключениеПользователей.ПаузаДоОтключения,
               |    доОтключениеПользователей.ОбменСообщений
               |ИЗ
               |    РегистрСведений.доОтключениеПользователей КАК доОтключениеПользователей
               |ГДЕ
               |    доОтключениеПользователей.Пользователь = &Пользователь"
;
   
РезультатЗп = Зп.Выполнить().Выбрать();
    Если
РезультатЗп.Следующий() Тогда
        Если
РезультатЗп.ЗапретПодключения Тогда
           
НеПодключать = Ложь;
           
// Расчет времени не подключения
           
ТекДата = ТекущаяДата();
           
СтартДата = РезультатЗп.ДатаВремяПуска;
           
ВремяПаузы = РезультатЗп.ОтключениеМинут * 60 + РезультатЗп.ПаузаДоОтключения * 15;
           
ДельтаПаузы = ТекДата - СтартДата;
            Если
ВремяПаузы > ДельтаПаузы Тогда
               
НеПодключать = Истина;
            КонецЕсли;
           
// Конец Расчета времени не подключения
           
Если НеПодключать Тогда
               
#Если Клиент Тогда
                   
Если РезультатЗп.ОбменСообщений <> "" Тогда
                       
ТекДата = ТекущаяДата();
                       
СтартДата = РезультатЗп.ДатаВремяПуска;
                       
ВремяПаузы = РезультатЗп.ОтключениеМинут * 60 + РезультатЗп.ПаузаДоОтключения * 60;
                       
ДельтаПаузы = ТекДата - СтартДата;
                       
ПредполагаемоеВремя = ИзСекундВЧасы(ВремяПаузы - ДельтаПаузы);
                       
ПредВремя = ТекДата + (ВремяПаузы - ДельтаПаузы);
                        Если
Найти(РезультатЗп.ОбменСообщений, "#sys") > 0 Тогда
                           
ОчищенноеСообщение = Сред(РезультатЗп.ОбменСообщений, 5, СтрДлина(РезультатЗп.ОбменСообщений) - 4);
                           
Предупреждение("Подключение запрещено. Ведутся сервисные работы. " + ОчищенноеСообщение + Символы.ПС + "Предполагаемое время разрешения входа в базу: " + Строка(ПредВремя) + " (через " + Строка(ПредполагаемоеВремя) + ")", 20, "Подключение...");
                        Иначе
                           
Предупреждение("Подключение запрещено. Ведутся сервисные работы. " + РезультатЗп.ОбменСообщений  + Символы.ПС + "Предполагаемое время разрешения входа в базу: " + Строка(ПредВремя) + " (через " + Строка(ПредполагаемоеВремя) + ")", 20, "Подключение...");
                        КонецЕсли;
                    Иначе
                       
Предупреждение("Подключение запрещено. Ведутся сервисные работы."  + Символы.ПС + "Предполагаемое время разрешения входа в базу: " + Строка(ПредВремя) + " (через " + Строка(ПредполагаемоеВремя) + ")", 5, "Подключение...");
                    КонецЕсли;
               
#КонецЕсли
               
Отказ = Истина;
            КонецЕсли;
        КонецЕсли;
    КонецЕсли;
   
// Проверка и опрос состояния отключения
   
ПодключитьОбработчикОжидания("ЦиклическийВызов",15);
КонецПроцедуры
// СтартПроверкиОтключения()

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

       
//---------------------------------------
       
Если СостояниеОткл = "Запрет подключения" Тогда
           
ДействиеЗавершения = "Запрет подключения";
           
СостОткл = "Ожидание";
           
Запись.СостояниеОтключения = СостОткл;
           
Запись.ПаузаДоОтключения = ВремяОткл;
           
Запись.Записать();
           
#Если Клиент Тогда
               
Сигнал();
               
Сигнал();
               
Сигнал();
               
Предупреждение(Запись.Сообщение,15,"Предупреждение");
           
#КонецЕсли
       
ИначеЕсли СостояниеОткл = "Запрет подключения +" Тогда
           
ДействиеЗавершения = "Запрет подключения";
           
СостОткл = "Мини ожидание";
           
Запись.СостояниеОтключения = СостОткл;
           
Запись.ПаузаДоОтключения = ВремяОткл;
           
Запись.Записать();
           
#Если Клиент Тогда
               
Сигнал();
               
Сигнал();
               
Сигнал();
               
Предупреждение(Запись.Сообщение,15,"Предупреждение");
           
#КонецЕсли

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


       
ИначеЕсли СостояниеОткл = "Перезапуск ИБ" Тогда
           
ДействиеЗавершения = "Перезапуск ИБ";
           
СостОткл = "Ожидание";
           
Запись.СостояниеОтключения = СостОткл;
           
Запись.ПаузаДоОтключения = ВремяОткл;
           
Запись.Записать();
           
#Если Клиент Тогда
               
Сигнал();
               
Сигнал();
               
Сигнал();
               
Предупреждение(Запись.Сообщение,15,"Предупреждение");
           
#КонецЕсли
       
ИначеЕсли СостояниеОткл = "Перезапуск ИБ +" Тогда
           
ДействиеЗавершения = "Перезапуск ИБ";
           
СостОткл = "Мини ожидание";
           
Запись.СостояниеОтключения = СостОткл;
           
Запись.ПаузаДоОтключения = ВремяОткл;
           
Запись.Записать();
           
#Если Клиент Тогда
               
Сигнал();
               
Сигнал();
               
Сигнал();
               
Предупреждение(Запись.Сообщение,15,"Предупреждение");
           
#КонецЕсли

       
ИначеЕсли СостояниеОткл = "Завершение с подтверждением" Тогда
           
ДействиеЗавершения = "Завершение с подтверждением";
           
СостОткл = "Ожидание";
           
Запись.СостояниеОтключения = СостОткл;
           
Запись.ПаузаДоОтключения = ВремяОткл;
           
Запись.Записать();
           
#Если Клиент Тогда
               
Сигнал();
               
Сигнал();
               
Сигнал();
               
Предупреждение(Запись.Сообщение,15,"Предупреждение");
           
#КонецЕсли
       
ИначеЕсли СостояниеОткл = "Завершение с подтверждением +" Тогда
           
ДействиеЗавершения = "Завершение с подтверждением";
           
СостОткл = "Мини ожидание";
           
Запись.СостояниеОтключения = СостОткл;
           
Запись.ПаузаДоОтключения = ВремяОткл;
           
Запись.Записать();
           
#Если Клиент Тогда
               
Сигнал();
               
Сигнал();
               
Сигнал();
               
Предупреждение(Запись.Сообщение,15,"Предупреждение");
           
#КонецЕсли


       
ИначеЕсли СостояниеОткл = "Ожидание" Тогда
           
Время = ВремяОткл;
           
Время = Время - 0.25;
           
//Состояние ("Ожидание выхода из системы через" + ИзСекундВчасы(Время * 60), 100,"Ожидание выхода из системы через" + ИзСекундВчасы(Время * 60), БиблиотекаКартинок.ДлительнаяОперация48);
           
Если Время = 0 Тогда
               
СостОткл = "Предупреждение +";
            Иначе
               
СостОткл = "Ожидание";
            КонецЕсли;
           
Запись.СостояниеОтключения = СостОткл;
           
Запись.ПаузаДоОтключения = Время;
           
Запись.Записать();
        ИначеЕсли
СостояниеОткл = "Предупреждение +" Тогда
           
СостОткл = "Мини ожидание";
           
Запись.СостояниеОтключения = СостОткл;
           
Запись.ПаузаДоОтключения = 2;
           
Запись.Записать();
           
#Если Клиент Тогда
               
Сигнал();
               
Сигнал();
               
Сигнал();
               
Предупреждение(Запись.Сообщение,15,"Предупреждение!");
           
#КонецЕсли
       
ИначеЕсли СостояниеОткл = "Мини ожидание" Тогда
           
Время = ВремяОткл;
           
Время = Время - 0.25;
            Если
Время * 60 < 60 Тогда
                Если
Время * 60 = 0 Тогда
                   
ПоказатьОповещениеПользователя("Внимание! Завершение работы!", ,"Система завершает работу...");
                Иначе
                   
ПоказатьОповещениеПользователя("Внимание! Завершение работы!", ,"Работа в системе будет завершена менее чем через " + Строка(Время * 60) + " секунд");
                КонецЕсли;
            КонецЕсли;
           
//Состояние ("Ожидание выхода из системы через" + ИзСекундВчасы(Время * 60), 100,"Ожидание выхода из системы через" + ИзСекундВчасы(Время * 60), БиблиотекаКартинок.ДлительнаяОперация48);
           
Если Время = 0 Тогда
               
СостОткл = "Отключение";
            Иначе
               
СостОткл = "Мини ожидание";
            КонецЕсли;
           
Запись.СостояниеОтключения = СостОткл;
           
Запись.ПаузаДоОтключения = Время;
           
Запись.Записать();
        ИначеЕсли
СостояниеОткл = "Отключение" Тогда
           
#Если Клиент Тогда
               
Сигнал();
               
Сигнал();
               
Сигнал();
               
СостОткл = "Сеанс выключен";
               
Запись.СостояниеОтключения = СостОткл;
               
Запись.Записать();
                Если
ДействиеОткл = "Запрет подключения" Тогда
                   
Сообщить("1С Предприятие завершает работу через 15 секунд...", СтатусСообщения.ОченьВажное);
                   
Сообщить("Сохраните все данные!", СтатусСообщения.ОченьВажное);
                ИначеЕсли  
ДействиеОткл = "Завершение работы" Тогда
                   
Сообщить("1С Предприятие завершает работу через 15 секунд...", СтатусСообщения.ОченьВажное);
                   
Сообщить("Сохраните все данные!", СтатусСообщения.ОченьВажное);
                ИначеЕсли  
ДействиеОткл = "Перезапуск ИБ" Тогда
                   
Сообщить("1С Предприятие будет перезапущено через 15 секунд...", СтатусСообщения.ОченьВажное);
                   
Сообщить("Сохраните все данные!", СтатусСообщения.ОченьВажное);
                ИначеЕсли  
ДействиеОткл = "Завершение с подтверждением" Тогда
                   
Сообщить("Установлено завершение работы пользователей, пожалуйста, завершите работу!", СтатусСообщения.ОченьВажное);
                КонецЕсли;
           
#КонецЕсли
       
ИначеЕсли СостояниеОткл = "Сеанс выключен" Тогда
           
#Если Клиент Тогда
               
Сигнал();
               
Сигнал();
               
Сигнал();
                Если
ДействиеОткл = "Запрет подключения" Тогда
                   
СтопПроверкиОтключения();
                   
Предупреждение("Система завершила работу!. Нажмите ""ОК"" для выхода", 5,"Внимание!");
                   
ПрекратитьРаботуСистемы();
                ИначеЕсли  
ДействиеОткл = "Завершение работы" Тогда
                   
СтопПроверкиОтключения();
                   
Предупреждение("Система завершила работу!. Нажмите ""ОК"" для выхода", 5,"Внимание!");
                   
ПрекратитьРаботуСистемы();
                ИначеЕсли  
ДействиеОткл = "Перезапуск ИБ" Тогда
                   
СтопПроверкиОтключения();
                   
Предупреждение("Система завершила работу!. Нажмите ""ОК"" для выхода", 5,"Внимание!");
                   
ПрекратитьРаботуСистемы(Истина);
                ИначеЕсли  
ДействиеОткл = "Завершение с подтверждением" Тогда
                   
ЗавершитьРаботуСистемы(Истина);
                   
СостояниеОткл = "Мини ожидание";
                   
СостОткл = "Мини ожидание";
                   
Запись.СостояниеОтключения = "Мини ожидание";
                   
Запись.БыстроеОтключение = Истина;
                   
Запись.ПаузаДоОтключения = 2;
                   
Запись.Отключить = Истина;
                   
Запись.Записать();
                КонецЕсли;
           
#КонецЕсли

       
ИначеЕсли СостояниеОткл = "Работа разрешена" Тогда
                   
Запись.СостояниеОтключения = "Ложь";
                   
Запись.БыстроеОтключение = Ложь;
                   
Запись.Отключить = Ложь;
                   
Запись.ЗапретПодключения = Ложь;
                   
Запись.ДействиеОтключения = "Ложь";
                   
Запись.Записать();
                   
Предупреждение("Работа в системе разрешена, можно продолжать работу!",15,"Предупреждение!");
   
//  КонецЕсли;
   
КонецЕсли;
       
//-----------------------------------------
       
Если Запись.ОбменСообщений <> "" Тогда
           
//ПоказатьОповещениеПользователя("Новое сообщение", ,Запись.ОбменСообщений);
           
Если Найти(Запись.ОбменСообщений, "#sys") = 0 Тогда
               
Сообщить(Запись.ОбменСообщений, СтатусСообщения.Информация);
               
Запись.ОбменСообщений = "";
               
Запись.Записать();
            Иначе
            КонецЕсли;
        КонецЕсли;
    КонецЦикла;
КонецПроцедуры
// ЦиклическийВызов()

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


Модуль обычного приложения (модуль управляемого приложения)

Процедура ПередНачаломРаботыСистемы(Отказ)
   
//какие - то вызовы
   
СтартПроверкиОтключения(Отказ);
КонецПроцедуры

Процедура
ПриЗавершенииРаботыСистемы()
   
//какие - то вызовы
   
СтопПроверкиОтключения();
КонецПроцедуры

139

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

Наименование Файл Версия Размер
Завершение работы пользователей EX 2 (версия 12.03.2012)
.epf 75,76Kb
12.03.12
738
.epf 75,76Kb 738 Скачать
Конфигурация с объектами (версия 12.03.2012)
.cf 157,25Kb
12.03.12
133
.cf 157,25Kb 133 Скачать
Обработка заполнения справочника "Варианты завершения работы" (версия 12.03.2012)
.epf 6,23Kb
24.05.12
90
.epf 6,23Kb 90 Скачать
Завершение работы пользователей EX (версия 06.09.2011)
.epf 22,61Kb
15.03.12
378
.epf 22,61Kb 378 Скачать

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

Комментарии
Избранное Подписка Сортировка: Древо
1. Re:аниматор 423 06.09.11 17:54 Сейчас в теме
2. SinglCOOLer 210 06.09.11 19:33 Сейчас в теме
ахха )) видимо был уставший )) поправлю )
3. Yashazz 2889 07.09.11 00:44 Сейчас в теме
Это не обработка. Это подсистема. И в данном случае это минус, т.к. многое из предложенного запросто реализуемо без вмешательства в конфигурацию.
4. SinglCOOLer 210 07.09.11 06:02 Сейчас в теме
никто и не спорит, просто как вариант, в будущем все это будет дорабатываться, перерабатываться :)
5. pencroff 122 07.09.11 13:19 Сейчас в теме
Yashazz пишет:

Это не обработка. Это подсистема. И в данном случае это минус, т.к. многое из предложенного запросто реализуемо без вмешательства в конфигурацию.

Не совсем понятно как можно реализовать отключение пользователей без изменения конфигурации? Объясните концепцию.
wadlos; SinglCOOLer; +2 Ответить
86. Yashazz 2889 15.03.12 13:48 Сейчас в теме
(5) А вы посмотрите http://infostart.ru/public/75853/ и узнаете, что все эти операции можно делать, нисколько не меняя конфигурацию.
87. SinglCOOLer 210 15.03.12 13:53 Сейчас в теме
(86) Yashazz, там есть одно НО, только для клиент серверного варианта. Глубоко сомневаюсь что все кто качают обработки подобные моей, работают именно с клиент - сервером.
90. echo77 1097 18.03.12 21:27 Сейчас в теме
(87) Если используется файл-серверный вариант, то выход пользователя из базы реализуется путем убийства процесса 1С на стороне клиента - это аварийный вариант, он не очень хороший, но не требует вмешательства в конфигурацию
6. SinglCOOLer 210 07.09.11 14:10 Сейчас в теме
pencroff пишет:
Не совсем понятно как можно реализовать отключение пользователей без изменения конфигурации? Объясните концепцию.


тут видимо подразумеваются совсем минимальные изменения конфигурации ну или использование каких то сторонних средств, хотя и самому интересно услышать на будущее для новой версии )
7. Psylocibine 08.09.11 09:35 Сейчас в теме
Мне тоже интересно) Как без вмешательства то?
И это... может стоит в виде cf это всё оформить?
8. i-sever 08.09.11 15:54 Сейчас в теме
9. madmpro 08.09.11 16:23 Сейчас в теме
Для УПП, КА, УТ придется изменить следующий код во всех модулях обработки
ТекПользователь = УправлениеПользователями.ОпределитьТекущегоПользователя();
на следующий:
ТекПользователь = глЗначениеПеременной("глТекущийПользователь");
SinglCOOLer; +1 Ответить
10. SinglCOOLer 210 08.09.11 20:44 Сейчас в теме
Спасибо за информацию, добавлю на главную страницу
11. Gasdrubal 12.09.11 05:44 Сейчас в теме
жаль. что не во все типовые конфигурации подобное внедряется, иногда приходится дописывать самому((

Код действительно некомпактный. Неплохо бы ужать.
12. SinglCOOLer 210 12.09.11 08:07 Сейчас в теме
Gasdrubal пишет: жаль. что не во все типовые конфигурации подобное внедряется, иногда приходится дописывать самому((
Код действительно некомпактный. Неплохо бы ужать.

Будет обязательно новая версия, переработанная, сейчас просто времени немного не хватает
13. slauter77 19 12.09.11 09:28 Сейчас в теме
Интегрировал в БП 2.20.1 платформа 8.2
Не работает!
Не выгоняет пользователей! Даже сообщения не выдает!
В чем может быть причина?
14. SinglCOOLer 210 12.09.11 13:12 Сейчас в теме
slauter77 пишет:

Интегрировал в БП 2.20.1 платформа 8.2

Не работает!

Не выгоняет пользователей! Даже сообщения не выдает!

В чем может быть причина?


посмотреть отладчиком идет ли вызов из модуля Общий модуль "доОтключениеПользователей" процедуры ЦиклическийВызов. Проверьте добавлен ли код в процедуру ПередНачаломРаботыСистемы (СтартПроверкиОтключения(Отказ)) и в тот ли модуль он добавлен (управляемое или обычное приложение)
15. slauter77 19 12.09.11 20:57 Сейчас в теме
Проверил под отладчиком. Вызов идет. Проблема видимо в том что функция ОпределитьТекущегоПользователя() в БП возвращает либо "истину" либо "ложь" а не самого пользователя. привожу саму функцию из БП (сорри за оверквотинг если че ;) ):

// Процедура создания пользователя.
// Параметры:
// Нет.
//
Функция ОпределитьТекущегоПользователя(ОписаниеОшибкиОпределенияПользователя) Экспорт

Перем ТекущийПользователь;

ИмяПользователя = ИмяПользователя();
ПолноеИмяПользователя = ПолноеИмяПользователя();

Если ПустаяСтрока(ИмяПользователя) Тогда
// пользователь не авторизовался
ИмяПользователя = "НеАвторизован";
ПолноеИмяПользователя = "Не авторизован";
КонецЕсли;

// Если для пользователя не указано полное имя -
// устанавливаем его равным имени пользователя
Если ПустаяСтрока(ПолноеИмяПользователя) Тогда
ПолноеИмяПользователя = ИмяПользователя;
КонецЕсли;

ОбъектПользователь = Справочники.Пользователи.СоздатьЭлемент();

ОбъектПользователь.Код = ИмяПользователя;
ОбъектПользователь.Наименование = ПолноеИмяПользователя;

Попытка

ОбъектПользователь.Записать();

Исключение

ОписаниеОшибкиОпределенияПользователя = "Пользователь : " + ИмяПользователя + " не был найден в справочнике пользователей. Возникла ошибка при добавлении пользователя в справочник.
|" + ОписаниеОшибки();
Возврат Ложь;

КонецПопытки;

ТекущийПользователь = ОбъектПользователь.Ссылка;
ПолныеПрава.УстановитьПараметрСеансаТекущийПользователь();


Набор = РегистрыСведений.НастройкиПользователей.СоздатьНаборЗаписей();
Набор.Отбор.Пользователь.Использование = Истина;
Набор.Отбор.Пользователь.Значение = ТекущийПользователь;

// установим пользователю основную организацию
Запрос = Новый Запрос();
Запрос.Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| Организации.Наименование,
| Организации.Ссылка
|ИЗ
| Справочник.Организации КАК Организации";
Выборка = Запрос.Выполнить().Выбрать();

КоличествоЗаписейВВыборке = Выборка.Количество();

Если КоличествоЗаписейВВыборке = 1 Тогда

// выбирать не из чего - запишем значения без лишних вопросов
Выборка.Следующий();
ОсновнаяОрганизация = Выборка.Ссылка;

ИначеЕсли КоличествоЗаписейВВыборке > 0 Тогда

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

КонецЕсли;

Запись = Набор.Добавить();

Запись.Пользователь = ТекущийПользователь;
Запись.Настройка = ПланыВидовХарактеристик.НастройкиПользователей.ОсновнаяОрганизация;
Запись.Значение = ОсновнаяОрганизация;

Запись = Набор.Добавить();

Запись.Пользователь = ТекущийПользователь;
Запись.Настройка = ПланыВидовХарактеристик.НастройкиПользователей.ЗапрашиватьПодтверждениеПриЗакрытии;
Запись.Значение = Истина;

Запись = Набор.Добавить();

Запись.Пользователь = ТекущийПользователь;
Запись.Настройка = ПланыВидовХарактеристик.НастройкиПользователей.ПоказыватьВДокументахСчетаУчета;
Запись.Значение = Истина;

Запись = Набор.Добавить();

Запись.Пользователь = ТекущийПользователь;
Запись.Настройка = ПланыВидовХарактеристик.НастройкиПользователей.ОсновнойОтветственный;
Запись.Значение = ТекущийПользователь;

Запись = Набор.Добавить();

Запись.Пользователь = ТекущийПользователь;
Запись.Настройка = ПланыВидовХарактеристик.НастройкиПользователей.ЗапрашиватьВидОперацииПриВводеНового;
Запись.Значение = Истина;

Попытка

Набор.Записать();

Исключение

ОписаниеОшибкиОпределенияПользователя = "Ошибка при записи настроек нового пользователя.
|" + ОписаниеОшибки();
Возврат Ложь;

КонецПопытки;

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

Возврат Истина;

КонецФункции
16. SinglCOOLer 210 13.09.11 07:22 Сейчас в теме
Тогда нужно руководствоваться вот этим:

Обращаю внимание на то что:
Для УПП, КА, УТ, БП необходимо изменить следующий код во всех модулях обработки
ТекПользователь = УправлениеПользователями.ОпределитьТекущегоПользователя();
на следующий:
ТекПользователь = глЗначениеПеременной("глТекущийПользователь");
17. artbear 1159 13.09.11 15:40 Сейчас в теме
SinglCOOLer пишет: Тогда нужно руководствоваться вот этим:
Обращаю внимание на то что:
Для УПП, КА, УТ, БП необходимо изменить следующий код во всех модулях обработки
ТекПользователь = УправлениеПользователями.ОпределитьТекущегоПользователя();
на следующий:
ТекПользователь = глЗначениеПеременной("глТекущийПользователь");


ИМХО нужно этот код закинуть в Попытку Исключение
тогда обработка станет рабоочей в разных типовых конфах 1С
vanpip; Sas001; SinglCOOLer; +3 Ответить
18. SinglCOOLer 210 14.09.11 13:47 Сейчас в теме
19. artbear 1159 14.09.11 17:46 Сейчас в теме
(18) ОФФ. Напишу В плане обучения как Модератор пользователю:
понравилась чья-то фраза или предложение, поощри человека плюсом, не ленись :)
ЗЫ сам на плюс не напрашиваюсь :)
20. Sas001 15.09.11 10:51 Сейчас в теме
всё-таки хотелось бы без интеграции, а просто внешним отчётом. ИМХО, полезнее так будет. хотя для 8 ничего страшного в интеграции нет.
21. Sas001 15.09.11 10:51 Сейчас в теме
в любом случае спасибо за идеи и за код.
RexxS; SinglCOOLer; +2 Ответить
22. SinglCOOLer 210 15.09.11 12:33 Сейчас в теме
Sas001 пишет:

в любом случае спасибо за идеи и за код.


Всегда рад помочь. Сейчас как раз собираю мнения людей что как лучше сделать и какие то варианты. Планирую сделать чтобы обработку можно было использовать и как только внешнею с ограниченными возможностями так и встраивать ее :)
23. zog 16.09.11 11:21 Сейчас в теме
Большое спасибо, понравилось
SinglCOOLer; +1 Ответить
24. SergDi 19.09.11 19:19 Сейчас в теме
вкусная штука, вот только еще бы тонкий клиент прикрутить
SinglCOOLer; +1 Ответить
25. SinglCOOLer 210 19.09.11 19:21 Сейчас в теме
SergDi пишет:

вкусная штука, вот только еще бы тонкий клиент прикрутить


сейчас разрабатывается 2 версия, там будут более расширенные возможности + тонкий клиент
26. Gribo 21.09.11 12:11 Сейчас в теме
28. SinglCOOLer 210 26.09.11 07:56 Сейчас в теме
(26) Gribo, планирую закончить к 10 октября, сильно не тороплюсь стараюсь качественно писать
27. ozar 23.09.11 00:01 Сейчас в теме
Вещь нужная, жду выхода нового релиза, в этом слишком много кода менять надо...
SinglCOOLer; +1 Ответить
29. Pashikuss 26.09.11 11:43 Сейчас в теме
30. i132 115 27.09.11 10:54 Сейчас в теме
Стоит добавить запрет на вход пока конфигурация не совпадает с конфигурацией базы данных: подгтовили обновление МД поросили всех выйти => внесли изменнеия => (можно входить) => запустили всех кого закрывали (если рабочее время)
SinglCOOLer; +1 Ответить
31. SinglCOOLer 210 27.09.11 10:59 Сейчас в теме
(30) i132, спасибо за идею, буду реализовывать. Если есть у кого то еще идеи и предложения буду рад услышать.
32. vetalm 90 27.09.11 14:57 Сейчас в теме
в первоначальной обработке присутствовала ошибка которая позволяла коимтообразом не "выганятся" пользователям. В данной разработке пофиксен баг?
SinglCOOLer; +1 Ответить
33. vetalm 90 27.09.11 16:26 Сейчас в теме
Еще предложение заменить полосу регулировки с вариантами отключения на переключатели - аргумент: не видно что скрывается за положениями полосы, пока не переключишь не узнаеш.
34. vetalm 90 27.09.11 19:57 Сейчас в теме
еще просьба - установить привязки элементов формы - невозможно развернуть форму на весь экран а в оригинальном виде видны только 2,5 строки с пользователями
35. SinglCOOLer 210 27.09.11 20:00 Сейчас в теме
vetalm пишет:

в первоначальной обработке присутствовала ошибка которая позволяла коимтообразом не "выганятся" пользователям. В данной разработке пофиксен баг?


поищу сей баг, тестеры поищут, думаю отловим
36. SinglCOOLer 210 27.09.11 20:01 Сейчас в теме
vetalm пишет:

Еще предложение заменить полосу регулировки с вариантами отключения на переключатели - аргумент: не видно что скрывается за положениями полосы, пока не переключишь не узнаеш.


согласен, в новой версии сей механизм проработан по новому, все будет более наглядно и гибко
37. SinglCOOLer 210 27.09.11 20:02 Сейчас в теме
vetalm пишет:

еще просьба - установить привязки элементов формы - невозможно развернуть форму на весь экран а в оригинальном виде видны только 2,5 строки с пользователями


эта недоработка уже устранена в новой версии, все растягиваемо во всех видах приложений
38. SinglCOOLer 210 27.09.11 20:03 Сейчас в теме
Всем спасибо за предложения!
39. vetalm 90 27.09.11 20:13 Сейчас в теме
также не работает быстрое (30 сек) отключение
SinglCOOLer; +1 Ответить
40. SinglCOOLer 210 27.09.11 20:17 Сейчас в теме
vetalm пишет:

также не работает быстрое (30 сек) отключение


спасибо, учту при разработке
41. igor_1c 12 03.10.11 11:54 Сейчас в теме
я аналогичную систему делал на 7.7. Очень устал выгонять пользователей по телефону, особенно когда они уходят на обед. Единственное -открытые документы не сохранялись. Другая проблема возникла: пока выгоняю одних - другие уже заходят. Поэтому пришлось - ставить блокировку на вход
42. Qseft 05.10.11 16:17 Сейчас в теме
Интерфейс понравился, удобно.
43. SinglCOOLer 210 09.10.11 21:16 Сейчас в теме
Всем привет. Для тех кто ждет новый релиз: к сожалению он задерживается, работы ведутся но не так быстро как рассчитывал, очень много повседневной работы наволилось навалилось :(
44. vetalm 90 10.10.11 15:37 Сейчас в теме
:( хех ждемс.

Еще мысль "вслух": Добавить сюда возможность, как один из вариантов, использование штатной блокировки (через БлокировкаСеанса).
SinglCOOLer; +1 Ответить
45. SinglCOOLer 210 13.10.11 11:56 Сейчас в теме
vetalm пишет:

:( хех ждемс.



Еще мысль "вслух": Добавить сюда возможность, как один из вариантов, использование штатной блокировки (через БлокировкаСеанса).


Спасибо за идею, такая возможность уже реализована.
46. dawnds8 13.10.11 12:00 Сейчас в теме
+++++ Спасибо!!! месяц бегал по конторе, как ошарашенный вырубал всех.. а тут нажал и все.. спасибки удружил))) ну все.. бойся бухгалтер)))) всех поотрублю...............................)))))))))))))))))))))))
SinglCOOLer; +1 Ответить
47. KS_LEO 14.10.11 13:41 Сейчас в теме
вот спасибо, давно искал что то этакое, и наконец то нашел. автору респект и +
SinglCOOLer; +1 Ответить
48. SinglCOOLer 210 14.10.11 13:47 Сейчас в теме
dawnds8 пишет:

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


ахаха )) скоро выйдет новая версия, еще более беспощадная :)
49. vetalm 90 28.10.11 16:47 Сейчас в теме
:-) видимо автор готовит целый арсенал репресивных методов убиения нерадивых бухгалтеров
50. SinglCOOLer 210 31.10.11 07:26 Сейчас в теме
(49) vetalm, это да )) хочу охватить все возможные методы, так сказать, в одном месте, на данный момент готово где-то 60%
51. see1c.ru 50 31.10.11 20:31 Сейчас в теме
Немного протестил:

1. Оставшееся время отключенных пользователей меньше оставшегося времени пользователей которые на момент отключения в базе не работали.

2. Ставлю время отключения через 3 минуты, включение через 5 мин. по прошествии 10 минут захожу под отключенным пользователем , его состояние отключения "Не активно".

Общие пожелания:

Подразумевается, что список пользователей в базе не маленький, предлагаю расширить табличное поле "СписокАктивныхПользователей", а то больше 2-х пользователей не помещается.

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

Поле "Сообщение" узкое.

Кнопки со скрытыми пунктами тоже не очень удобны.

Желательно добавить Управляемую форму.
SinglCOOLer; +1 Ответить
52. SinglCOOLer 210 01.11.11 07:27 Сейчас в теме
(51) see1c.ru, спасибо за тест, теперь по пунктам

1) Хорошее замечание, обязательно учту это
2) Сейчас механизм отключения перерабатывается, надеюсь подобных проблем удастся избежать

По пожеланиям. Сейчас все формы полностью растягиваемые, механизм выбора варианта завершения переработан. Над полями сообщений тоже поработал, теперь они гораздо больше, в т.ч. переработаны и кнопки. Управляемая форма будет, собственно сейчас в основном из за нее и замедляется процесс разработки, т.к. приходится отлаживать работу и для обычной формы и для управляемой + в управляемых формах есть определенные сложности.
sergson1; +1 Ответить
53. che444 15.11.11 10:19 Сейчас в теме
+ автору за классный инструмент в моем арсенале
SinglCOOLer; +1 Ответить
54. sergson1 15.11.11 10:34 Сейчас в теме
Порой даже мелкие нюансы работы очень важны, обработка классная. Давно искал большое спасибо!!!
55. SinglCOOLer 210 17.11.11 12:58 Сейчас в теме
спасибо за добрые слова, тем кто ждет 2 версию, обычное приложение полностью готово, остается до насадить все на управляемую форму :)
56. Attest 3 21.11.11 14:47 Сейчас в теме
Спасибо долго искал, судя по описанию наиболее адекватный продукт. Скачаю протестирую. Заранее благодарен!
57. bercut0077 3 26.12.11 12:26 Сейчас в теме
Спасибо, автору + , жаль не работает в управляемом интерфейсе (Тип не определен Запрос) планируется ли расширить функционал для управляемого интерфейса и когда ждать обновлений?
58. vetalm 90 04.01.12 19:27 Сейчас в теме
Автор в этом то году порадуешь нас обновлением?
59. andru_dv 06.01.12 21:57 Сейчас в теме
Полезная вещь, тоже хочу спросить.
Когда будет обновление для управляемого интерфейса?
60. olegtymko 400 06.01.12 22:11 Сейчас в теме
(59) andru_dv, поддерживаю) скорее бы)
61. Massimo 10.01.12 12:27 Сейчас в теме
спасибо за обработку...
помогите с решением проблемы, при открытии обработки выдает эту ошибку:
{ВнешняяОбработка.доОбработкаОтключения.МодульОбъекта(133)}: Поле объекта не обнаружено (доОтключениеПользователей)
	ОтклПользователей = РегистрыСведений.доОтключениеПользователей;

типовая конфа УПП 1.3.20.1
как бороться?
62. Massimo 10.01.12 12:41 Сейчас в теме
паходу без правки УПП'шной конфигурации эту обработку не запустить((, жаль. не хотелось бы сниматься с поддержки 1с.
63. SinglCOOLer 210 11.01.12 08:34 Сейчас в теме
День добрый, не было никак времени посмотреть, сегодня думаю посмотрю вечером что это такое. Времени свободного совсем нет. Самое главное избежать в новой версии подобного.
67. a_a 16.02.12 08:31 Сейчас в теме
По большому счету такой функционал редко нужен, да и допиливать конфигурацию ради корректного выхода пользователей тоже лишнее, использую намного более простые вещи и доволен как слон.
69. SinglCOOLer 210 12.03.12 12:34 Сейчас в теме
Версия обновилась. Учел комментарии по предыдущей, переработал интерфейс.
71. Жолтокнижниг 249 13.03.12 17:20 Сейчас в теме
зачем такие извращения /CЗавершитьРаботуПользователей (поддерживается всеми станд конфигами) и все робит
72. Жолтокнижниг 249 13.03.12 17:22 Сейчас в теме
зачем такие извращения /CЗавершитьРаботуПользователей (поддерживается всеми станд конфигами) и все робит, более подробно тут http://infostart.ru/public/63716/ и тут http://infostart.ru/public/104654/
73. SinglCOOLer 210 13.03.12 20:54 Сейчас в теме
(72) Жолтокнижниг, ну не спорю что все робит, только в чем извращения? разные методы.
74. Жолтокнижниг 249 13.03.12 21:59 Сейчас в теме
Извращения, на мой взгляд, в правке конфиги и дальнейшей ее поддержке ( когда обслуживаешь не одну базу а неколько десятков организаций с разными конф), хотя я еще не смотрел твое творение
77. SinglCOOLer 210 14.03.12 07:52 Сейчас в теме
(74) Жолтокнижниг, по поводу правки конфигурации - каждому своё, хочешь правишь - хочешь нет. Для этого она умеет запускаться как внешняя обработка. Некоторые места действительно могут быть написаны не совсем оптимально, как говорится нет предела совершенству, да и я указал что это достаточно сырая alpha (не причесанная)версия. По поводу пожеланий буду делать список, по возможности добавлять.
...
Если НЕ ЗначениеЗаполнено(ВремяНачалаБлокировки)
ИЛИ ВремяНачалаБлокировки - ТекущийМомент <= ИнтервалПрекратить Тогда

ПрекратитьРаботуСистемы(Истина);
...

Не совсем про это понял, там есть возможность в настройках поставить выдерживание дополнительной паузы перед отключением.
75. Жолтокнижниг 249 13.03.12 22:00 Сейчас в теме
первое замечание. как уже писалось почему в код не засунуть обработку конфиги или же попытка-исключение, также предусмотреть поддержку конф других поставщиков, надо создавать универсальные, легкие инструменты
76. Жолтокнижниг 249 13.03.12 22:32 Сейчас в теме
и еще обрати внимание на такой код в
Процедура КонтрольРежимаЗавершенияРаботыПользователей() Экспорт
...
Если НЕ ЗначениеЗаполнено(ВремяНачалаБлокировки)
ИЛИ ВремяНачалаБлокировки - ТекущийМомент <= ИнтервалПрекратить Тогда

ПрекратитьРаботуСистемы(Истина);
...

те почти мгновенное отключение пользователей.

Еще одним пожеланием было бы, возможность выполнения какой либо операции после блокировки(обработка, скрипт и т.д) тогдаб цены ей не было ;)
78. Гость 14.03.12 11:05
Для конфигураций Управление торговлей, комплексная автоматизация и управление производственным предприятием необходимо будет изменить следующий код во всех-всех модулях обработки
ТекПользователь = УправлениеПользователями.ОпределитьТекущегоПользователя();
на следующий код:
ТекПользователь = глЗначениеПеременной("глТекущийПользователь");
SinglCOOLer; +1 Ответить
79. SinglCOOLer 210 14.03.12 13:56 Сейчас в теме
(78) Гость, спасибо за комментарий, добавлю в список исправлений
80. klel 14.03.12 19:40 Сейчас в теме
Спасибо друзья за такую разработку :) будем смотреть и пробовать в будущем понадобится =)
81. Программулькин 287 15.03.12 06:25 Сейчас в теме
коменты не читал, сильно в нюансы не вникал. Скачал *.cf объединил со своей конфигурацией (добавил всё кроме свойств и справочника пользователей). и НЕ работает.Я в расстройстве. Не работают ни блокировки, ни сообщения.
Минус ставить не охота. Что не не так? моя конфа: Зарплата и Управление Персоналом, редакция 2.5 (2.5.47.1) клиент-серверная версия. SQL 2005
82. SinglCOOLer 210 15.03.12 07:30 Сейчас в теме
(81) Программулькин, справочник заполнили? обычно так не работает когда нет кода


Модуль обычного приложения

Процедура ПередНачаломРаботыСистемы(Отказ)
//какой то код
СтартПроверкиОтключения(Отказ);
КонецПроцедуры


Процедура ПриЗавершенииРаботыСистемы()
//какой то код
СтопПроверкиОтключения();
КонецПроцедуры
Показать


или не заполнен справочник "Варианты завершения работы" (см описание)

Сейчас специально скачал свой CF накатил его на нетиповую 1С:Предприятие 8.2 (8.2.13.205) Зарплата и Управление Персоналом, редакция 2.5 (2.5.31.4), все сработало.

Проверьте пожалуйста. За то, что не стали минус ставить сходу, спасибо :)
83. Программулькин 287 15.03.12 08:33 Сейчас в теме
да, справочник пустой. Вот рекомендация: либо в справке, либо ещё как добавить стандартное заполнение справочника, главное что бы было очевидно, как его заполнять,и можно было "на лету" (без разбора кода) разобраться (тупо нету времени, а вечером не охота...лень, лучше жене время уделить...). Есть шаблон заполнения справочника?
Идея, и функционал хорошие, (я бы по другому переделал, но лень, может потом на досуге), подобные видел, щупал, не устраивали, а это ничего так, нормально.
SinglCOOLer; +1 Ответить
84. SinglCOOLer 210 15.03.12 08:42 Сейчас в теме
(83) Программулькин, шаблон есть в виде картинки в описании, а вообще идея хорошая, сделаю мехинзм, который будет проверять заполненность предопределенных элементов автоматически :)
85. SinglCOOLer 210 15.03.12 10:15 Сейчас в теме
Добавил обработку заполнения справочника "Варианты завершения работы"
91. sumixam 29.06.12 09:22 Сейчас в теме
вещь очень полезная жду под управляемое приложение
92. SinglCOOLer 210 03.10.12 15:17 Сейчас в теме
(91) sumixam, пока времени совсем нет
100. TrinitronOTV 16.12.13 17:44 Сейчас в теме
(92) когда всё-таки появится данная обработка под управляемые формы?
101. SinglCOOLer 210 16.12.13 18:18 Сейчас в теме
(100) TrinitronOTV, очень сложный вопрос, времени свободного нет
93. eugen91 06.12.12 15:49 Сейчас в теме
На первый взгляд позволяет решать многие задачи. Будем знакомится более подробно.
94. free-lancer-2018 26.02.13 09:10 Сейчас в теме
В бухгалтерии выскакивает ошибка, не работает

{ВнешняяОбработка.ЗавершениеРаботыПользователейEX2.МодульОбъекта(122)}: Недостаточно фактических параметров
ТекПользователь = УправлениеПользователями.ОпределитьТекущегоПользователя();
95. sotona13 17.07.13 10:20 Сейчас в теме
ЗКБУ 8.2 отказывается
почему- сам не знаю
файловый вариант
96. buhkaz 05.08.13 21:55 Сейчас в теме
Добрый день!
В публикации Вы написали:
Обращаю внимание на то что:
Для УПП, КА, УТ, БП необходимо изменить следующий код во всех модулях обработки
ТекПользователь = УправлениеПользователями.ОпределитьТекущегоПользователя();
на следующий:
ТекПользователь = глЗначениеПеременной("глТекущийПользователь");


Дело в том, что я просто бухгалтер и мне сложно самой это сделать. Но мне очень нужна данная обработка, так как часто приходится перепроводить и удалять документы в монопольном режиме. У меня Комплексная автоматизация...
97. SinglCOOLer 210 06.08.13 04:35 Сейчас в теме
(96) buhkaz, попробую поправить
98. nbv8608 1 29.10.13 07:01 Сейчас в теме
99. natic18 03.12.13 14:20 Сейчас в теме
В УПП 1.3 объединил конфигурации, заполнил обработкой шаблоны. В результате работает половина функций, а самая главная - выгонять пользователей НЕ РАБОТАЕТ!!!.
102. Alexander.Dyatchenko 11.01.14 00:44 Сейчас в теме
Отчего это у меня?

{МодульОбычногоПриложения(181,3)}: Процедура или функция с указанным именем не определена (СтартПроверкиОтключения)
<<?>>СтартПроверкиОтключения(Отказ);
{МодульОбычногоПриложения(496,4)}: Процедура или функция с указанным именем не определена (СтопПроверкиОтключения)
<<?>>СтопПроверкиОтключения();
103. Alexander.Dyatchenko 11.01.14 01:25 Сейчас в теме
Полный провал с клиент-серверными взаимодействиями.
УПП 1.3 - НЕ РАБОТАЕТ - ЧАС потратил в пустую.
Автор! Обидно!
104. Nicholas 736 11.02.15 12:25 Сейчас в теме
Отличная разработка. Спасибо автору!
Для КА пришлось сделать замену на глТекущийПользователь как описано в описании установки, а также сделал общий модуль привелигированным, т.к. были проблемы с правами на не стандартных интерфейсах.
105. Andru83 13.07.15 15:28 Сейчас в теме
106. movis08 23.06.16 12:34 Сейчас в теме
Любопытно опробовать))
Хотел сам написать, а тут такое
Оставьте свое сообщение

См. также

Списание (корректировка) задолженности контрагентов УНФ 1.6 5

Инструменты и обработки Программист Бухгалтер Внешняя обработка (ert,epf) v8 УНФ Украина БУ Дебиторская и кредиторская задолженность Абонемент ($m) Закрытие периода Обработка документов

Обнуление задолженности контрагентов в конфигурации "Управление небольшой (нашей) фирмой" версии 1.6 с помощью документа "Корректировка регистров".

1 стартмани

24.07.2019    4478    4    DMon    1       

Вам нравятся запросы в 1С? 14

Инструменты и обработки Программист Конфигурация (md, cf) v8 v8::Запросы 1cv8.cf Абонемент ($m) Практика программирования Разработка

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

1 стартмани

03.07.2019    10369    1    m-rv    79       

Запуск 1С под любым пользователем (без необходимости указания пароля) 65

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 v8::Права 1cv8.cf Абонемент ($m) Информационная безопасность

Предназначается для запуска сеанса другого пользователя из своего сеанса 1С (если пароль вам неизвестен).

1 стартмани

02.07.2019    11196    102    sapervodichka    0       

Регистрация документов с измененной суммой 2

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Обработка документов

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

1 стартмани

20.04.2019    4737    1    ryan    0       

Блин, мы забыли включить регламентные задания… 51

Инструменты и обработки Системный администратор Программист Конфигурация (md, cf) v8 Абонемент ($m) Сервисные утилиты

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

1 стартмани

08.04.2019    7324    10    slozhenikin_com    36       

Безопасная работа с транзакциями во встроенном языке 187

Статья Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования Разработка

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

1 стартмани

25.03.2019    15329    7    tormozit    35       

Коннектор: удобный HTTP-клиент для 1С:Предприятие 8 532

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования Внешние источники данных WEB Универсальные функции Инструментарий разработчика Универсальные обработки

Коннектор - библиотека для работы с HTTP запросами. Библиотека берет на себя всю рутину работы с HTTP запросами. Буквально в одну строку можно получать данные, отправлять, не заботясь о необходимости конструирования URL, кодирования данных и т.п.

1 стартмани

31.01.2019    27958    264    bonv    109       

Валовая прибыль для УПП 1.3, КА 1.1 в режиме РАУЗ (работа типового отчета без доработок конфигурации) 6

Инструменты и обработки Бухгалтер Пользователь Внешняя обработка (ert,epf) v8 КА1 УПП1 УУ Абонемент ($m) Обработка документов

Простое и мгновенное решение для использования типового отчета "Валовая прибыль" в конфигурациях "Управление производственным предприятием 1.3", "Комплексная автоматизация 1.1" (а также отраслевых решений на их базе) при включенном режиме РАУЗ (расширенная аналитика учета затрат). Не требует настройки или изменения конфигурации, либо может быть, для дополнительного удобства, интегрировано в нее с минимальными доработками.

2 стартмани

21.01.2019    6899    6    stvorl    3       

Централизованное управление списком доступных баз 1С у пользователей 8

Инструменты и обработки Системный администратор Архив с данными v8 1cv8.cf Россия Windows Абонемент ($m) Стартеры 1С Сервисные утилиты Рабочее место

Когда в локальной сети много пользователей, а еще большое количество различных баз и при этом каждому нужны свои, то администрирование этого зоопарка превращается в АД! Этот комплекс позволяет централизованно управлять списком доступных баз в разрезе пользователей. За пару кликов можно добавить или убрать базу у всех пользователей.

5 стартмани

05.12.2018    5886    7    RomikR    7       

Многопоточная обработка данных 47

Инструменты и обработки Системный администратор Программист Конфигурация (md, cf) v8 v8::УФ 1cv8.cf Абонемент ($m) Производительность и оптимизация (HighLoad) Администрирование данных 1С

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

1 стартмани

23.11.2018    11471    46    _ASZ_    14       

Обнуление остатков регистров бухгалтерии и накопления 42

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 v8::БУ v8::ОУ v8::УФ КА1 БП2.0 ЗУП2.5 УТ10 УПП1 УНФ БГУ ERP2 БП3.0 УТ11 УХ КА2 ЗУП3.x Россия Абонемент ($m) Универсальные обработки Чистка базы

Обработка позволяет обнулить остатки по регистру накопления или бухгалтерии на определенную дату. Поддерживается большинство типовых конфигураций (БП 3, БП 2, УТ 11, УТ 10, ЗУП 3, ЗУП 2, БГУ 2, БГУ 1, ERP, УПП, КА 2, КА 1, УХ 3, УХ 1, УНФ). Гибкая настройка (отборы, заполнение реквизитов и любых полей корр. счета, возможность обнулять ресурсы выборочно). Несколько режимов работы. Два интерфейса: простой и с расширенным набором настроек.

2 стартмани

19.11.2018    10176    173    morozov.sv    30       

Очистка кэша 1С 8 (8.0, 8.1, 8.2, 8.3). Грамотная чистка кэша 1С с сохранением настроек. 35

Инструменты и обработки Системный администратор Компонента, плагин (dll, vbs,..) v8 1cv8.cf Россия Windows Абонемент ($m) Чистка базы Сервисные утилиты Администрирование данных 1С

Эффективное средство для устранения ошибок, возникающих в локальном кэше 1С на клиенте, которым легко сможет воспользоваться пользователь с любым уровнем знаний. Wsf-скрипт, созданный на стандартном языке автоматизации Windows - "WSH JScript", очищает кэш 1С просто, быстро и безопасно. Кроме варианта, очищающего кэш текущего пользователя, имеется также вариант для чистки кэша 1С всех пользователей терминального-сервера.

1 стартмани

04.11.2018    20050    296    Eugen-S    34       

Работа с публикациями "Инфостарт" 14

Инструменты и обработки Программист Архив с данными v8 УУ Абонемент ($m) Практика программирования О сообществе WEB

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    9484    10    RocKeR_13    16       

Помощник корректировки остатков ЕГАИС в небольшом магазине. Розница 2.2 12

Инструменты и обработки Бухгалтер Внешняя обработка (ert,epf) v8 Розница Розничная и сетевая торговля (FMCG) Рестораны, кафе и фаст-фуд Россия УУ Розничная торговля Абонемент ($m) Обработка документов

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

5 стартмани

08.09.2018    15476    78    asdfgcom    45       

Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции 65

Инструменты и обработки Программист Бизнес-аналитик Приложение (apk) v8 Windows Абонемент ($m) Инструментарий разработчика Практика программирования

Данная публикация содержит в себе редактор и интерактивную карту склада или иного помещения, на которой в реальном времени отображается позиция устройства, координаты которого вычисляются по уровням сигнала нескольких роутеров Wi-Fi. В статье и приложенным к ней разработкам предлагаются инструменты и методика для реализации вычисления точной геопозиции внутри помещений с помощью нейронной сети. Конфигурация написана на релизе 1С:Предприятие 8.3.12.1412, клиентское приложение имеет минимальный уровень совместимости SDK -16.

5 стартмани

09.08.2018    15959    23    informa1555    26       

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

Инструменты и обработки Программист Архив с данными v8 Россия Абонемент ($m) Практика программирования Работа с интерфейсом

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

1 стартмани

17.07.2018    22085    13    kalyaka    15       

Очистка периодических регистров посредством T-SQL (удаление записей, кроме среза последних) 4

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 Абонемент ($m) Чистка базы

Обработка для ленивых. Составит вместо Вас запрос для SQL, который удалит все не актуальные записи (т.е все, кроме среза последних)

5 стартмани

22.06.2018    8782    14    Alexander.Shvets    9       

ВСТАВИТЬ В Справочник.Номенклатура (Код, Наименование) ЗНАЧЕНИЯ ("001", "Новый товар") 105

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::Запросы 1cv8.cf Абонемент ($m) Практика программирования

Вас не обманывают ваши глаза, это запрос на изменение данных! И это работает без прямого доступа к БД, регистрации и смс.

1 стартмани

01.06.2018    20044    86    m-rv    57       

БСП: Дополнительная обработка (Регламенты), примеры от простого к сложному 240

Статья Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Практика программирования БСП (Библиотека стандартных подсистем)

Очень много попадается странных решений, которые можно решить через БСП:Дополнительные отчеты и обработки. Я бы вообще БСП из-за этой подсистемы переименовал в «Большое Спасибо Программистам». Поработаем с подсистемой в части написания регламентных заданий.

1 стартмани

10.05.2018    27916    28    dsdred    34       

Как выполнить отчет на СКД через COM и получить данные отчета? 86

Статья Программист Архив с данными v8 УПП1 Россия Windows Абонемент ($m) Практика программирования

Для чего это нужно. Например, нужно в одной базе получить какой-либо показатель из другой базы. Этот показатель вычисляется в каком-либо сложном отчете, который написан на СКД. Можно, конечно, "скопипастить" текст запроса из другой базы, немного подправить его и выполнять в том же COM подключении. Но с этим теряется гибкость: если отчет изменился, то нужно помнить о том, что где-то есть его "немного модифицированная" копия. В статье будет рассмотрен пример получения данных из базы ЗУП.

2 стартмани

08.05.2018    18160    10    wowik    3       

Автоматическое заполнение графиков в ЗУП 3.1 6

Инструменты и обработки Бухгалтер Архив с данными v8 v8::СПР ЗУП3.x Россия БУ Зарплата Учет рабочего времени Абонемент ($m) Обработка справочников

Данная разработка будет актуальна для организаций с большим количеством графиков (несколько десятков/сотен).

1 стартмани

05.05.2018    9679    15    notserioussam    1       

Работа со схемой запроса 176

Статья Программист Конфигурация (md, cf) v8 v8::Запросы Абонемент ($m) Инструментарий разработчика Практика программирования

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

1 стартмани

24.04.2018    28807    74    kalyaka    34       

Добавление возможности в конфигурации ЗУП 3.1 работать с фотографиями сотрудников (Зарплата и Управление Персоналом, редакция 3.1) 18

Инструменты и обработки Бухгалтер Расширение (cfe) v8 v8::СПР ЗУП3.x БУ Управление персоналом (HRM) Абонемент ($m) Обработка справочников

Добавление возможности в ЗУП 3.1 работать с фотографиями сотрудников (физических лиц). Расширение тестировалось на релизе ЗУП 3.1.5.129.

1 стартмани

09.04.2018    16445    45    charivnick    3       

Регистры правил [Расширение] 14

Инструменты и обработки Системный администратор Программист Расширение (cfe) v8 v8::Права УТ11 Абонемент ($m) Инструментарий разработчика Информационная безопасность

Регистры правил - права доступа, запрет редактирования, автоподстановка реквизитов и т.д.

10 стартмани

15.03.2018    11107    28    33lab    0       

Повышение качества разработок и онлайн контроль ошибок 163

Статья no Расширение (cfe) v8 Абонемент ($m) Журнал регистрации

Анализ ошибок и сбор ошибок журнала регистраций из десятков и сотен баз в одном месте.

09.03.2018    19833    136    DitriX    47       

Заполняем по шаблону (по умолчанию) 68

Инструменты и обработки Программист Архив с данными v8 v8::УФ 1cv8.cf Абонемент ($m) Практика программирования

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

1 стартмани

08.02.2018    18074    20    mvxyz    17       

Права доступа ролей 6

Отчеты и формы Системный администратор Программист Внешний отчет (ert,erf) v8 v8::Права 1cv8.cf Абонемент ($m) Информационная безопасность

Отчет по правам доступа ролей, выводит в удобной краткой форме права доступа в разрезе ролей на интересующие нас объекты метаданных или объекты метаданных, к которым есть доступ у интересующей нас роли. Показывает наличие RLS и позволяет сравнить роли.

1 стартмани

05.02.2018    12894    78    Serge R    1       

Бесплатная проверка контрагентов в ФНС (общий модуль с алгоритмом). На примере выводим статус в список справочника контрагентов 124

Статья Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Практика программирования

Если вам интересно проверить контрагенте в ФНС, вам поможет данная публикация. Весь алгоритм работы строится на основе данных, полученных с сервиса http://npchk.nalog.ru совершенно бесплатно.

1 стартмани

01.02.2018    25429    62    rpgshnik    46       

Корректировка остатков ЕГАИС, возврат из регистра 2, загрузка ТТН из файлов, другое для УТ10.3 15

Инструменты и обработки Бухгалтер Внешняя обработка (ert,epf) v8 v8::ОУ УТ10 Россия БУ Розничная торговля Абонемент ($m) Обработка документов

Набор обработок для автоматизации работы с ЕГАИС: Обработка корректировки остатков ЕГАИС для УТ 10.3, аналогичная имеющимся в УТ 11, Рознице 2.2. Автоматически формирует документы "Передача в торговый зал", "Акт постановки на баланс в торговом зале", "Акт списания в торговом зале". Обработка возврата из регистра 2 с подбором справок Б. Обработка формирования ТТН из файлов xml.

1 стартмани

24.01.2018    18120    5    biz-intel    3       

Расширение возможностей печати: Вывод произвольного нижнего и верхнего колонтитула 8

Отчеты и формы Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Печатные формы документов Практика программирования Универсальные функции

Расширяем функционал вывода нижнего / верхнего колонтитула. Стандартно 1С имеет достаточно ограничений по выводу и наполнению колонтитулов содержимым, взять хотя бы такие, как вывод только текста и отсутствие ограничения на номер конечной страницы. А при разработке кода сталкиваешься с тем, что свой блок с нижним колонтитулом нужно прижимать к низу страницы. Казалось бы быстро решаемый вопрос, но и в нем есть нюансы. Сейчас я расскажу о том, как решалась эта задача. UPD 15.02.2018. Добавлен вывод верхнего колонтитула; Вывод колонтитулов на первой и последней странице управляется параметрами; Научился считать страницы: Добавлено заполнение переменных аналогичных стандартным из колонтитулов; Задаются форматы даты и времени. Ограничения прежние: 1. Повторно сформировать табличный документ после смены параметров страницы интерактивно.; 2. Передавать данные для более плотной печати как можно более мелко нарезанными кусками.

1 стартмани

29.12.2017    23076    21    agent00mouse    0       

Расчет начисления зарплаты со сложной формулой, по данным из внешнего источника. ЗУП 3.1 35

Инструменты и обработки Бухгалтер Внешняя обработка (ert,epf) v8 v8::СПР ЗКГУ3.0 ЗУП3.x БУ Зарплата Абонемент ($m) Обработка документов Загрузка и выгрузка в Excel

Расчет начисления зарплаты со сложной формулой, по данным из внешнего источника по данным экономического отдела. ЗУП 3.1.

3 стартмани

20.12.2017    26155    29    mvv1975    5       

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

Инструменты и обработки Программист Расширение (cfe) v8 БП3.0 Абонемент ($m) Практика программирования Универсальные печатные формы

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

1 стартмани

06.12.2017    18721    52    kwazi    6       

Копирование меню в Трактир Management 2

Инструменты и обработки Бухгалтер Внешняя обработка (ert,epf) v8 1cv8.cf Рестораны, кафе и фаст-фуд Россия УУ Производство готовой продукции (работ, услуг) Абонемент ($m) Обработка документов

Механизм копирования меню в Трактир Management. Данная обработка расширяет функционал типового решения Трактир Management, позволяя быстро вводить в эксплуатацию новую точку путём создания нового меню на основании имеющегося.

1 стартмани

28.11.2017    14701    2    integrator1983    0       

Быстрое удаление неиспользуемых версий 1С:Предприятие 8, кэша метаданных и информационных баз 45

Инструменты и обработки Системный администратор Приложение (exe) v8 Windows Абонемент ($m) Сервисные утилиты

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

1 стартмани

14.11.2017    15049    85    bonv    15       

Очистка регистрации обмена 4

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 v8::ОУ УТ10 Абонемент ($m) Чистка базы

Данная обработка предназначена для очистки узла. Для очистки необходимо указать период,организацию.

1 стартмани

19.09.2017    9902    4    serg-lom89    0       

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

Инструменты и обработки Программист Расширение (cfe) v8 v8::УФ 1cv8.cf Абонемент ($m) Практика программирования

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

1 стартмани

30.05.2017    85458    14    signum2009    45       

Многопоточность. Универсальный «Менеджер потоков» (фреймворк) с отслеживанием зависимости объектов 176

Статья Программист Архив с данными v8 1cv8.cf Россия Абонемент ($m) Практика программирования Математика и алгоритмы Универсальные функции Производительность и оптимизация (HighLoad)

Восстановление партий, расчет зарплаты, пакетное формирование документов или отчетов - теперь все это стало доступнее. * Есть желание повысить скорость работы медленных алгоритмов! Но... * Нет времени думать о реализации многопоточности? * о запуске и остановке потоков? * о поддержании потоков в рабочем состоянии? * о передаче данных в потоки и как получить ответ из потока? * об организации последовательности? Тогда ЭТО - то что надо!!!

26.05.2017    39614    168    DarkAn    86       

Упрощение работы с актами сверки в УТ/КА/УПП - вывод номеров счетов в документе и печатной форме 3

Инструменты и обработки Бухгалтер Внешняя обработка (ert,epf) v8 КА1 УТ10 УПП1 БУ УУ Дебиторская и кредиторская задолженность Абонемент ($m) Обработка документов Печатные формы документов

Обычно акт сверки с клиентами содержат информацию о документах реализации товаров (накладных) и выполненных платежах. Но платежи делаются на основании счетов, номера которых отсутствуют в актах, что затрудняет собственно сверку. Данная обработка находит соответствующие расходным накладным счета/заказы, показывает их в форме документа и выводит в печатную форму акта.

2 стартмани

12.05.2017    13214    2    denmax    2       

Автокликер для 1С 70

Инструменты и обработки Системный администратор Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Сервисные утилиты

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

1 стартмани

03.04.2017    24237    69    slava_1c    49       

Загрузка номенклатуры по штрихкоду: Управление Торговлей 11.3; Розница 2.2; Розница для Казахстана 2.2 100

Инструменты и обработки Системный администратор Программист Бухгалтер Внешняя обработка (ert,epf) v8 v8::ОУ v8::УФ Розница УТ11 Розничная и сетевая торговля (FMCG) Рестораны, кафе и фаст-фуд Россия УУ Оптовая торговля Розничная торговля Ценообразование, анализ цен Абонемент ($m) Обработка справочников Ценообразование, прайсы

Розница 2.2, Управление Торговлей 11.3. Создание номенклатуры из интернета с помощью сканера штрихкодов либо терминала сбора данных. Варианты создания, автовыбор наилучшей позиции, источники, цены, загрузка картинки - всё это очень гибко и просто настраивается. Текущие открытые источники: barcode-list.ru(на текущий момент не работает); goodsmatrix.ru; ean13.info(может не работать капча); barcodes.olegon.ru. Автор программы не несёт ответственность за информацию, предоставляемую перечисленными выше открытыми источниками, так же не отвечает за их работоспособность. Данные источники принадлежат не автору программы. Данная программа нужна лишь для автоматизированного поиска информации на них.

10 стартмани

30.03.2017    41798    49    myALKleon    37       

DroidRAC2 - консоль администрирования кластера серверов 1С:Предприятие 8.3 под Android 26

Инструменты и обработки Системный администратор Приложение (apk) v8 1cv8.cf Android Абонемент ($m) Администрирование данных 1С

DroidRAC2 - клиент для RAS-сервиса кластера серверов платформы 1С:Предприятие 8.3 под Android.

1 стартмани

24.02.2017    15357    12    user700211_a.straltsou    11       

Статистика базы данных с отбором по подсистемам (кол-во и открытие списков: документов, справочников, регистров) и анализ наличия основных реквизитов: универсальная обработка (два файла - обычный и управляемый режим) 5

Инструменты и обработки Системный администратор Программист Архив с данными v8 v8::УФ 1cv8.cf Россия Windows Абонемент ($m) Статистика базы данных

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

1 стартмани

20.02.2017    13255    46    strelec13    11       

Удаление помеченных объектов, замена ссылок. Обычное и управляемое приложение. Не монопольно, включая рекурсивные ссылки, с отбором по метаданным и произвольным запросом 92

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Чистка базы

Обработка удаления помеченных объектов с расширенным функционалом. Работает в обычном и управляемом приложении. Монопольный и разделенный режим работы. Отображение и отбор по структуре метаданных. Отборы данных произвольными запросами. Копирование и сохранение отборов. Удаление циклических ссылок (рекурсия). Представление циклических в виде дерева с отображением ключевых ссылок, не позволяющих удалить текущий объект информационной базы. Удаление записей связанных независимых регистров сведений. Групповая замена ссылок. Индикатор прогресса при поиске и контроле ссылочности.

10 стартмани

31.10.2016    40816    528    m..adm    186       

Простой способ индексирования интервалов 182

Статья Программист Конфигурация (md, cf) v8 Абонемент ($m) Практика программирования

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

1 стартмани

28.09.2016    32434    39    ildarovich    22