|   |   | 
| 
 | Запустить процедуру после проведения вне транзакции | ☑ | ||
|---|---|---|---|---|
| 0
    
        Aceforg 19.11.15✎ 13:08 | 
        Как запустить свою процедуру после проведения документа вне транзакции?
 Подписки не канают, "ПослеЗаписи" и ОбработчикиОжидания" на клиенте. Нужно на сервере! Фоновые задания? Тогда как узнать, что транзакция завершилась? | |||
| 1
    
        Ненавижу 1С гуру 19.11.15✎ 13:12 | 
        в общем случае никак, а зачем?     | |||
| 2
    
        bolobol 19.11.15✎ 13:16 | 
        В план обмена левый пусть добавляется документ. Появился и проведён - значит нужно обделать дела вокруг проведения.     | |||
| 3
    
        Aceforg 19.11.15✎ 13:20 | 
        Чтобы документы по 50к строк не зарегистрировались для обмена, если не изменились.     | |||
| 4
    
        VikingKosmo 19.11.15✎ 13:24 | 
        при регистрации проверять изменился ли документ?     | |||
| 5
    
        Aceforg 19.11.15✎ 13:25 | 
        Сами по себе документы не страшны для обмена, но пользователи иногда нечаянно перепроводят документы. Или "чаянно" групповой обработкой. После обмен зависает на часа 2 - 3     | |||
| 6
    
        Aceforg 19.11.15✎ 13:25 | 
        (4) Да, если не изменился отменить регистрацию     | |||
| 7
    
        VikingKosmo 19.11.15✎ 13:26 | 
        (6) не надо ничего отменять, нужно перед регистрацией проверять, поменялся ли документ или нет. Profit!     | |||
| 8
    
        Лефмихалыч 19.11.15✎ 13:36 | 
        (0) При записи генерировать в базе какой-то объект, в котором будет храниться ссылка на проведенный документ.
 Регламентным заданием обрабатывать эти объекты, выполнять нужные действия и помечать объекты, как обработанные. Что за объект использовать - вариантов тьма. Регистр сведений, план обмена, справочник, - да что угодно. | |||
| 9
    
        Aceforg 19.11.15✎ 17:09 | 
        (7) Так и сделал, отменил авторегистрацию. Если объект изменился, то программная регистрация
 (8) Спасибо за идею, возьму на заметку | |||
| 10
    
        VikingKosmo 19.11.15✎ 17:13 | 
        (9) авторегистрация - зло     | |||
| 11
    
        aleks_default 19.11.15✎ 17:15 | 
        (10)+1     | |||
| 12
    
        Aceforg 19.11.15✎ 17:16 | 
        (10) А как документы регистрируется, если в правилах регистрации нет никакого отбора.     | |||
| 13
    
        aleks_default 19.11.15✎ 17:18 | 
        (12) сам прописываешь узлы-получатели     | |||
| 14
    
        VikingKosmo 19.11.15✎ 17:21 | 
        (12) а что мешает написать ПРО?     | |||
| 15
    
        VikingKosmo 19.11.15✎ 17:21 | 
        причем не надо изобретать никаких велосипедов. В БСП все уже изобрели...     | |||
| 16
    
        Fragster гуру 19.11.15✎ 17:23 | 
        запускаешь фоновое, ему в параметр - ссылку. в фоновом пытаешься установить блокировку на эту ссылку. если время ожидания достаточно - то сразу после транзакции код в фоновом пойдет дальше. я так в http://catalog.mista.ru/public/173394/ потоки синхронизирую (через блокировку константы)     | |||
| 17
    
        Fragster гуру 19.11.15✎ 17:23 | 
        ссылку на документ, который проводится     | |||
| 18
    
        Serg_1960 19.11.15✎ 17:23 | 
        (0) Ты не сказал волшебные слова - "РИБ", "обмен по правилам" :)
 Перепроведение - это изменение документа или нет? А если документ не изменили, но движения стали другими - то это как? | |||
| 19
    
        Serg_1960 19.11.15✎ 17:25 | 
        Имхо, в типовых уже есть регистр, который позволяет понять изменился документ или нет. Подскажу: версионирование.     | |||
| 20
    
        Aceforg 19.11.15✎ 17:25 | 
        (14) А кто сказал что нет ПРО?
 В БСП есть такое что при перепроведении без изменении не регистрировалось? | |||
| 21
    
        VikingKosmo 19.11.15✎ 17:26 | 
        (20) ЕМНИП в БСП, в МРО таки проверяется изменился ли объект или нет.     | |||
| 22
    
        Гёдза 19.11.15✎ 17:28 | 
        (21) Нет не проверяет     | |||
| 23
    
        aleks_default 19.11.15✎ 17:29 | 
        А если документ не изменили, но движения стали другими - то это как? - это из рубрики "сделано кривыми руками"?     | |||
| 24
    
        Fragster гуру 19.11.15✎ 17:31 | 
        (23) такое запросто может быть при автоподборе партий/автозачете авансов     | |||
| 25
    
        Fragster гуру 19.11.15✎ 17:31 | 
        непонятно, чем мешает повторная выгрузка документа...     | |||
| 26
    
        Serg_1960 19.11.15✎ 17:33 | 
        (23) Не обязательно как что, так "кривые ручки". При обмене с различными конфигурациями нет смысла обмениваться движениями - документ проводится в базе-получателе - в типовых есть функционал "отложенное проведение".     | |||
| 27
    
        Fragster гуру 19.11.15✎ 17:46 | 
        (26) но ведь перепровести документ в получателе надо, ведь приехавшие _другие_ данные также могут повлиять на тот же зачет авансов...     | |||
| 28
    
        aleks_default 19.11.15✎ 17:53 | 
        (25) Видимо у них там простыни по 100500 строк, которые вешают обмен.     | |||
| 29
    
        Aceforg 19.11.15✎ 17:58 | 
        (25) по 50к, 3 таких документа вешают обмен на 2-3. Пользователи никак не научатся закрывать без сохранения, да и кнопка "Провести и закрыть" такая большая)     | |||
| 30
    
        Fragster гуру 19.11.15✎ 18:12 | 
        (29) сделай открытие таких документов в r/o, включение редактирования по кнопке в выпадающем меню     | |||
| 31
    
        Aceforg 19.11.15✎ 18:18 | 
        (30) Если надо было бы усложнить редактирование и перепроведение, я бы так и сделал. 
 Но задачу поставили, отрезать на... регистрацию при перепроведении. | |||
| 32
    
        VikingKosmo 19.11.15✎ 18:20 | 
        (31) Объект.ДополнительныеСвойства.Вставить("ОтключитьМеханизмРегистрацииОбъектов", Истина)     | |||
| 33
    
        Aceforg 19.11.15✎ 18:23 | 
        (31) Спасибо, но поезд уже ушел     | |||
| 34
    
        bolobol 19.11.15✎ 18:28 | 
        (32) И чо?
 По теме (сам бьюсь с фильтрацией регистраций): Документ по каким-то причинам (флуктуации на солнце, луна в седьмом доме) не дошёл до некоторого узла, но там он нужен. Как заставить его туда отправиться? Надо делать два _изменения_, простой перезаписью уже не обойтись. Проблема начинается тогда, когда на вскидку не видно - какого документа не хватает обновить в узле. И тут через пень-колоду регистрировать вручную документы на обмен, что ой как не удобно и пользователи сами не могут это сделать. Надумано? Нет. Я ушёл в отпуск и неделю долбили перепроведение вдоль и поперёк, чтобы заставить документ отправиться в нужный узел - не осилили. Оказалось - запрещена регистрация не изменённых объектов - никто даже не догадался копать там) | |||
| 35
    
        VikingKosmo 19.11.15✎ 18:32 | 
        (34) и все, ни кто никуда не регистрируется     | |||
| 36
    
        bolobol 19.11.15✎ 19:18 | 
        (35) Насколько мне известно - ДополнительныеСвойства - это структура для хранения некоторых данных, но никак не команд, тем более - это не отключатель механизма регистрации, даже если так обозвать элемент структуры. С чего бы документ перестанет регистрироваться?
 ОбменДанными.Загрузка= Истина; - это команда, и то, нужно указать откуда загрузка, чтобы только туда не регистрировалось, а во всё остальное - зарегистрируется - как пить дать! | |||
| 37
    
        Fragster гуру 19.11.15✎ 21:41 | 
        (36) ну, видимо, либо в БСП, либо у автора этот случай обрабатывается. Также ОбменДанных.Получатели.Автозаполенение = Ложь, или как там... давно СП не открывал...     | |||
| 38
    
        Serg_1960 20.11.15✎ 00:06 | 
        Память не изменяет :)
 http://its.1c.ru/db/metod8dev/content/2269/hdoc | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |