Конвертация данных 2 - Отмена проведения документов в 7.7 при повторной загрузке

21.10.10

База данных - Инструменты администратора БД

При повторной загрузке данных в 1С бывает необходимо отменить проведение у существующих документов.

Делая обмен между семерочными конфигурациями на КД2, столкнулся с тем, что не отменяется проведение уже загруженных документов при повторной загрузке. Исследуя этот вопрос, обнаружил что в обработке загрузки v77imp.ert есть функция

Функция ОтменитьПроведение(Объект, СтатусВПравилах="Авто", СтатусВФайле="НеИзвестен")

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

Процедура ЗагрузитьДокументV8(Объект, Вид, ИмяПравила)

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

ОтменитьПроведение  =   Число(Объект.ПолучитьАтрибут("ОтменитьПроведение"));

Но переменная ОтменитьПроведение далее нигде не используется.

Итак, чтобы включить возможность отмены проведения документов, я сделал изменения в конфигурации Конвертация (2.1.3.1), в обработке ВыгрузкаКонвертации:

1. Макет "ПроцедурыИФункцииМодуляВыгрузки"

Добавил атрибут к узлу Объект в функции ВыгрузитьПоПравилу() (смотрите комментарии):

Функция ВыгрузитьПоПравилу(Источник, Приемник, ВходящиеДанные, ИсходящиеДанные, ИмяПКО = "", УзелСсылки = "", ТолькоПолучитьУзелСсылки = 0,
    ...
    Если Приемник = мПустоеЗначение Тогда //строка 2827 в типовой конфигурации 2.1.3.1
        Приемник = СоздатьУзел("Объект");
        УстановитьАтрибут(Приемник, "Нпп", Нпп);
        УстановитьАтрибут(Приемник, "Тип", ПолучитьРеквизитПКО(НомерПКО, "Приемник"));
        УстановитьАтрибут(Приемник, "ИмяПравила", ПолучитьРеквизитПКО(НомерПКО, "Код"));
        //для отмены проведения документов
        //в обработчике ПередВыгрузкой ПКО документа написать:
        //ВходящиеДанные = СоздатьОбъект("СписокЗначений");
        //ВходящиеДанные.ДобавитьЗначение(1, "ОтменитьПроведение");
        Попытка
            УстановитьАтрибут(Приемник, "ОтменитьПроведение", ВходящиеДанные.Получить("ОтменитьПроведение"));
        Исключение
        КонецПопытки;
        //конец для отмены проведения документов

2. Макет "ПроцедурыИФункцииМодуляЗагрузки"

Добавил в процедуру ЗагрузитьДокументV8()  одну строчку (см. комментарии)

Процедура ЗагрузитьДокументV8(Объект, Вид, ИмяПравила)
    ...
    СтатусПроведения   =    гТабКэшПараметровЗагрузки.СтатусПроведения;
    ОтменитьПроведение  =   Число(Объект.ПолучитьАтрибут("ОтменитьПроведение"));
    ОбъектБД.НайтиДокумент(ТекущийОбъект);
    //отмена проведения документов
    ОтменитьПроведение(ОбъектБД,,ОтменитьПроведение);
    //конец отмена проведения документов

3. И все - работает.

В файле данных появился новый атрибут:

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

См. также

Инструменты администратора БД Системный администратор Программист Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

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

1 стартмани

18.02.2022    4011    0    igor7777    6    

2

Инструменты администратора БД Программист Пользователь Оперативный учет 7.7 1С:Торговля и склад 7.7 Управленческий учет Абонемент ($m)

Боремся с бардаком. Работы в прошлых датах запрещены. Непроведенные документы (по разным причинам) - автоматом переносятся в начало текущего дня при запуске любого первого сеанса 1С в текущем дне. Задержка старта 1С - практически незначима. Не требует настройки, не требует допрограммирования (исключая один оператор вставки в процедуру старта системы). Можно обработку выполнять вручную с любой периодичностью.

2 стартмани

25.05.2020    5875    2    CheBurator    3    

2

Журнал регистрации Инструменты администратора БД Системный администратор Программист Платформа 1С v7.7 Конфигурации 1cv7 Бесплатно (free)

Рассмотрим систему на базе Elasticsearch, Logstash и Kibana (ELK Stack) для анализа логов 1С Предприятие 7.7 с целью визуализации и анализа событий 1С.

22.01.2019    11556    phsin    20    

28

Инструменты администратора БД Системный администратор Программист Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

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

1 стартмани

22.04.2017    15858    4    devlabnn    2    

6

Инструменты администратора БД Бухгалтер Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 Украина Бухгалтерский учет Абонемент ($m)

Перепроведение по счету для конфигурации Бухгалтерский учет для Украины, 1С: Предприятие 7.7

1 стартмани

23.09.2016    3851    1    Genyak    1    

0

Инструменты администратора БД Системный администратор Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Периодически сталкивался со следующими проблемами при печати в 1С: 7.7 работающей под терминалом: 1) После замены принтера на клиентской машине 1С пытается печатать на старый принтер. 2) Отсутствует предварительный просмотр при печати. 3) Не работает печать без предварительного просмотра (пакетная печать документов). 4) В некоторых формах печатает, в некоторых нет.

1 стартмани

09.06.2016    28034    19    tux    3    

1

Инструменты администратора БД Системный администратор Программист Платформа 1С v7.7 Платформа 1С v8.3 Бесплатно (free)

Часто бывает необходимо отслеживать состояние часто повторяющихся регламентных заданий. Например, синхронизация данных с IP-телефонией, которая может производиться каждую минуту, синхронизация с сайтами, синхронизация данных с различными системами. Использовать для этих целей логирование 1С чрезвычайно неэффективно и не удобно. В таких случаях удобно использовать подход, применяемый в Unix-системах: писать логи в обычные текстовые файлы, а потом делать их обработку через эффективно работающие Unix-команды: grep, tail, cat, less и т.п.

18.05.2016    37101    rudjuk    21    

34
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ЗАК 21.10.10 08:13 Сейчас в теме
А в чем это xml файл открыт на скрине?
2. nicxxx 255 21.10.10 08:32 Сейчас в теме
3. Арчибальд 2709 21.10.10 08:57 Сейчас в теме
Фишка невелика, но хорошо оформлена и несомненно полезна. +
4. artbear 1563 21.10.10 09:50 Сейчас в теме
(3) +1
(0) На всякий случай уточню: название процедуры ЗагрузитьДокументV8, а работает все-таки для 77, верно?
5. nicxxx 255 21.10.10 10:29 Сейчас в теме
(4) да, все верно. v77imp.ert - это типа универсальная обработка загрузки - может загружать в 7.7 как из 8(0/1/2), так и из 7.7, поэтому наверно чтобы идеологию не нарушать - все называния восьмерочные...имхо, конечно.
6. mark2k 28.10.10 10:03 Сейчас в теме
Оставьте свое сообщение