| 
    
        
     
     | 
    
    
  | 
где могут формироваться движения документа | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        kathleen    
     26.02.16 
            ✎
    14:12 
 | 
         
        Помогите, кто-нибудь. Документ формирует движения по нескольким регистрам,но я не могу найти это в коде. По некоторым из них все ок, ставлю точку останова на КонецПроцедуры обработкаПроведения(), вызываю движения и вижу по ним таблицу движения. По другим только <> и пустая таблица, однако после проведения движения заполнены. Подскажите, где искать?     
         | 
|||
| 
    1
    
        Господин ПЖ    
     26.02.16 
            ✎
    14:13 
 | 
         
        в подписке допустим     
         | 
|||
| 
    2
    
        Волшебник    
     модератор 
    26.02.16 
            ✎
    14:13 
 | 
         
        поставь точку останова в модуле набора записей регистра и посмотри стек вызовов     
         | 
|||
| 
    3
    
        kathleen    
     26.02.16 
            ✎
    14:17 
 | 
         
        (2)Ага, сейчас попробую, а что значит посмотреть стек вызовов?     
         | 
|||
| 
    4
    
        ИС-2    
     26.02.16 
            ✎
    14:19 
 | 
         
        в меню отладка     
         | 
|||
| 
    5
    
        Михаил Козлов    
     26.02.16 
            ✎
    14:22 
 | 
         
        Движения (например, по РН ПартииТоваровНаСкладах или ПродажиСебестоимость) могут формироваться "извне" (модуль УправлениеЗапасамиУправленческийУчет) и в коллекции движений Вы их не увидите (пока не прочитаете).     
         | 
|||
| 
    6
    
        kathleen    
     26.02.16 
            ✎
    14:34 
 | 
         
        (2)Остановился передзаписью() только вызов функции ОбщегоНазначения.УдалитьДвиженияРегистратора(ЭтотОбъект, Отказ)     
         | 
|||
| 
    7
    
        vde69    
     26.02.16 
            ✎
    14:40 
 | 
         
        у меня вообще все движения формируются в модуле менеджера документа по ссылке (без объекта) и соответственно в коллекции движений объекта появятся только после чтения колекции....     
         | 
|||
| 
    8
    
        kathleen    
     26.02.16 
            ✎
    14:59 
 | 
         
        помогите, куда еще копать?     
         | 
|||
| 
    9
    
        ObjectRelation Model    
     26.02.16 
            ✎
    15:01 
 | 
         
        (7) а у меня в модуле набора записей одного регистра формируется набор записей другого регистра     
         | 
|||
| 
    10
    
        ObjectRelation Model    
     26.02.16 
            ✎
    15:01 
 | 
         
        +(9) тем самым код записи движений собран в одном месте, а не разбросан по документам     
         | 
|||
| 
    11
    
        kathleen    
     26.02.16 
            ✎
    15:05 
 | 
         
        (10)но точка останова ПередЗаписью в модуле набора записей все равно же должна срабатывать?     
         | 
|||
| 
    12
    
        vde69    
     26.02.16 
            ✎
    15:18 
 | 
         
        (11) объясняю
 
        коллекция движений содержит кроме самих данных еще и флаг "Использовать" (или похожий, точно не помню)... где-то в недрах проведения я пишу прямо в регистр "ПартииТМЦ" а в Движения.ПартииТМЦ.Использовать ставлю в ЛОЖЬ при этом в конце модуля проведения движения будут пустые а регистр будет с данными, и фиксация транзакции не затрет ничего нужного....  | 
|||
| 
    13
    
        vde69    
     26.02.16 
            ✎
    15:22 
 | 
         
        (12) чем это удобно
 
        1. Восстановление движений и последовательности без перезаписи документа (документ не попадает в обмены, проще с датой запрета редактирования и т.д.) 2. Фоновые операции, роботы и т.д. не требуют прав на запись документа, только регистры.... 3. лог 1с содержит только явные записи документа, простое перепроведение туда не попадает  | 
|||
| 
    14
    
        vde69    
     26.02.16 
            ✎
    15:24 
 | 
         
        (13)+ 
 
        4. возможно формировать движения к непроведенному документы 5. удобно реализовывать проведение по статусу 6. блокировки только на записываемый регистр (да можно проводить только по выбраному регистру)  | 
|||
| 
    15
    
        Cyberhawk    
     26.02.16 
            ✎
    15:25 
 | 
         
        "где-то в недрах проведения я пишу прямо в регистр "ПартииТМЦ"" // Имеешь в виду создание независимого набора записей (через менеджер регистра и СоздатьНаборЗаписей()) и подкладывание его под ссылку-регистратор?     
         | 
|||
| 
    16
    
        vde69    
     26.02.16 
            ✎
    15:26 
 | 
         
        (15) да... работает на ура!     
         | 
|||
| 
    17
    
        kathleen    
     29.02.16 
            ✎
    15:37 
 | 
         
        ну подскажите еще наводку какую-нибудь, точки останова нигде не срабатывают, ни в модуле набора записей ПередЗаписью(), ни в подписке при записи регистров, где искать?     
         | 
|||
| 
    18
    
        kathleen    
     29.02.16 
            ✎
    15:37 
 | 
         
        такое ощущение, что где-то вне конфигурации записи формируются     
         | 
|||
| 
    19
    
        Sergz66    
     29.02.16 
            ✎
    15:56 
 | 
         
        (18)Отладка-то включена?     
         | 
|||
| 
    20
    
        INT    
     29.02.16 
            ✎
    15:59 
 | 
         
        (5) Тоже долго возился с ПродажиСебестоимость. Автор проверь этот вариант)     
         | 
|||
| 
    21
    
        hhhh    
     29.02.16 
            ✎
    16:03 
 | 
         
        (18) поищите СоздатьНаборЗаписей() этого регистра в общих модулях где-нибудь     
         | 
|||
| 
    22
    
        samozvanec    
     29.02.16 
            ✎
    16:04 
 | 
         
        (18) глобальным поиском можно поискать     
         | 
|||
| 
    23
    
        vde69    
     29.02.16 
            ✎
    16:08 
 | 
         
        перед записью - включаешь замер производительности
 
        после записи - останавливаешь текст копируешь в блокном и поиском ищешь имя регистра  | 
|||
| 
    24
    
        kathleen    
     29.02.16 
            ✎
    16:09 
 | 
         
        (20)но в модуле набора записей должно же остановиться? Я уже в процедура в этом общем модуле кучу точек наставила.     
         | 
|||
| 
    25
    
        kathleen    
     29.02.16 
            ✎
    16:10 
 | 
         
        (23)А как включить замер производительности?     
         | 
|||
| 
    26
    
        hhhh    
     29.02.16 
            ✎
    16:11 
 | 
         
        (24) может у вас отладка на сервере выключена     
         | 
|||
| 
    27
    
        vde69    
     29.02.16 
            ✎
    16:13 
 | 
||||
| 
    28
    
        kathleen    
     29.02.16 
            ✎
    16:13 
 | 
         
        (26)другие точки срабатывают. например ставлю точку в конец обработкапроведения, захожу в движения по трем регстрам вижу, по трем нет.     
         | 
|||
| 
    29
    
        kathleen    
     29.02.16 
            ✎
    16:15 
 | 
         
        ПередЗаписью() в этих регистрах срабатывает только на строку удаления движений по регистратору, вообще странно, потом по идее он где-то записывает новые и должно снова сработать, но нет же     
         | 
|||
| 
    30
    
        vde69    
     29.02.16 
            ✎
    16:17 
 | 
         
        (29) перед записью - в ДОКУМЕНТЕ !!!!     
         | 
|||
| 
    31
    
        kathleen    
     29.02.16 
            ✎
    16:21 
 | 
         
        (30)и после записи в документе? Сейчас проверю     
         | 
|||
| 
    32
    
        kathleen    
     29.02.16 
            ✎
    16:23 
 | 
         
        (30) после записи нету, при записи может?     
         | 
|||
| 
    33
    
        vde69    
     29.02.16 
            ✎
    16:25 
 | 
         
        (32) при записи будет не честно, по тому как подписки отрабатывают позже, а вот после записи - гарантировано ЗА транзакцией...
 
        на тестовой добавь процедуру и проверь  | 
|||
| 
    34
    
        hhhh    
     29.02.16 
            ✎
    16:33 
 | 
         
        (32) если ставите точку в конец обработкапроведения, то сама запись в регистр происходит после конецПроцедуры обработки проведения. Правильно, что вы ее не видите.     
         | 
|||
| 
    35
    
        vde69    
     29.02.16 
            ✎
    16:41 
 | 
         
        я как то тоже долго искал сабж... оказалось регистр накопления писался в модуле расчета начислений прямой записью... это круче чем подписки.... отладчик туда не сам заходит, только если принудительно точку остановки там ставить :)     
         | 
|||
| 
    36
    
        kathleen    
     29.02.16 
            ✎
    16:43 
 | 
         
        Блииин, кажись дело и самом деле в отключенной на сервере отладке, обратились к админу, теперь точки стали срабатывать. Впервые просто довелось с клиент-серверной работать. Может и найду сейчас.     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |