|   |   | 
| 
 | Расписание Регламентных заданий | ☑ | ||
|---|---|---|---|---|
| 0
    
        Конфигуратор1с 29.10.13✎ 20:55 | 
        В общем есть набор баз, в которых необходимо по определенным расписаниям выполнять определенные действия. Базы с запретом изменений, поэтому регламентные задания добавлять в каждую базу нет возможности, да и дублировать код не хочется. Решил Сделать отдельную базу в которой справочник регламентных заданий, одно регламентное задание обходит справочник и стартует все "регламентные задания".  Вот собственно, вопрос, как реализовать старт регламентных заданий? то есть как часто основное регламентное задание должно стартовать? Раз в минуту не слишком будет сервак тормозить?     | |||
| 1
    
        Конфигуратор1с 29.10.13✎ 23:17 | 
        есть кто на мисте?     | |||
| 2
    
        grayshadow 30.10.13✎ 00:02 | 
        где-то мне встречалось описание, как сделать РЗ из внешней обработки... а то, что вы тут задумали, имхо, кпц как сложно:)     | |||
| 3
    
        Конфигуратор1с 30.10.13✎ 00:07 | 
        (2) что именно сложно? в справочнике забубенить расписание как в регламентных заданиях. И регламентное задание делает запрос по актуальным элементам справочника и выполняет код. Вот только мне непонятно с какой частотой его запускать что бы базки не положить     | |||
| 4
    
        grayshadow 30.10.13✎ 00:08 | 
        а как из "регламентной" базы будете в другие заходить? комобъектами?     | |||
| 5
    
        grayshadow 30.10.13✎ 00:09 | 
        а с какой частотой запускать - зависит что вы собираетесь там делать и сколько оно займет времени:)     | |||
| 6
    
        etc 30.10.13✎ 00:15 | 
        (0) Лучше на каждый вид обработки свое регламентное задание. Каждое будет со своим расписанием.     | |||
| 7
    
        Конфигуратор1с 30.10.13✎ 00:22 | 
        (4) ну куда комобъектами где просто запустить базку с обработкой, которая все и выполнить     | |||
| 8
    
        Конфигуратор1с 30.10.13✎ 00:24 | 
        (5) так запускать не сами процедуры а с какой частотой запускать запускалку)     | |||
| 9
    
        Конфигуратор1с 30.10.13✎ 00:26 | 
        (6) так в том и вопрос что у меня допустим есть несколько однотипных регламентных заданий но выполняемых в разное время для разных баз, Хотелось с помощью справочника это и разрулить .     | |||
| 10
    
        grayshadow 30.10.13✎ 00:47 | 
        (7) интересно увидеть кусок кода РЗ, который будет запускать другую базу. Если не ком/оле, то что? wscript.shell с длиннющей строкой запуска 1с? а как потом будете убивать сеанс?
 как бы там ни было... насколько я знаю, пока старое РЗ работает, новое не должно запускаться, так что пофиг на время выполнения:) а вот будут ли тормозить базы - зависит от способа запуска и еще много чего, имхо проще тупо потестировать разные интервалы... | |||
| 11
    
        Конфигуратор1с 30.10.13✎ 00:51 | 
        (10) та просто через командную строку )     | |||
| 12
    
        grayshadow 30.10.13✎ 00:56 | 
        по сути вызвав аналог wscript.shell, ога?:) 
 проблема в том, как вы оттуда вернете что-либо... а пока не вернете, "регламентная" база не поймет, завершилось ли задание... | |||
| 13
    
        Конфигуратор1с 30.10.13✎ 01:04 | 
        (12) а зачем? мне только выполнить процедуру и все)     | |||
| 14
    
        Конфигуратор1с 30.10.13✎ 01:04 | 
        (12) "по сути вызвав аналог wscript.shell, ога?:) "практически только будет родной 1совский "скрипт")     | |||
| 15
    
        grayshadow 30.10.13✎ 01:14 | 
        еще раз, я верно поняла?
 есть база "регламентная", нетиповая, в ней созданы нетиповые РЗ. есть другие типовые базы, в которых эти РЗ должны что-то сделать ок, рассмотрим работу РЗ. Пусть в 00:01 оно стартануло, сечас 01:01 и ему снова пора стартовать. Как оно поймет, завершился ли предыдущий экземпляр? ибо не будут одновременно выполняться 2 РЗ с одинаковым ключом и именем метода если не надо ждать завершения, а просто "запустить и всё" - не парьтесь, напишите батники и засуньте в планировщик винды (или что у вас на сервере?) | |||
| 16
    
        Конфигуратор1с 30.10.13✎ 01:19 | 
        (15) ну там где надо проверить завершение будет не батник а ком соединение) 
 (Кстати. спасибо за идею - надо будет механизм в справочнике докрутить проверки завершения) ) да батники не подходятибо непрозрачно и не управляемо. В идеале, в дальнейшем система должна работать без программиста и регулироваться пользователями. Но это так - дальние планы) | |||
| 17
    
        grayshadow 30.10.13✎ 01:25 | 
        ну так сразу и надо подключаться через ком, нахрен тогда сдался WSH:)
 но тогда возникает еще одна веселуха: должна быть куча РЗ - отдельное на каждую базу и каждую задачу - и каждое со своим ком-объектом... По итогу в одной базе будут шариться сразу несколько ком-объектов, а это может быть хреново по производительности... | |||
| 18
    
        grayshadow 30.10.13✎ 01:26 | 
        а самое веселое, если они одновременно захотят провести один и тот же документ:)))     | |||
| 19
    
        Конфигуратор1с 30.10.13✎ 01:29 | 
        (17) (18) ну вот это уже задача их правильно по времени разнести) тут проблем не должно возникнуть.     | |||
| 20
    
        grayshadow 30.10.13✎ 01:31 | 
        а если они разносятся по времени, то теряет смысл изначальный вопрос" "как часто запускать запускалку":)     | |||
| 21
    
        Конфигуратор1с 30.10.13✎ 01:32 | 
        (20) а можно как то проверить что РЗ еще не завершилось?     | |||
| 22
    
        grayshadow 30.10.13✎ 01:34 | 
        посмотрите в УТ11 обработку Регламентные и фоновые задания, она как-то это понимает:)     | |||
| 23
    
        grayshadow 30.10.13✎ 01:36 | 
        вот так: 
 ТекущиеЗадания = РегламентныеЗадания.ПолучитьРегламентныеЗадания(); | |||
| 24
    
        Конфигуратор1с 30.10.13✎ 02:31 | 
        (22) спс)     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |