Имя: Пароль:
1C
 
Конвертация. перенос признака проведения в 1с 7.7
,
0 NastyMosk
 
26.09.14
09:23
Добрый день!
Делаю конвертацию данных из 8.3 в 7.7. Не могу понять как мне провести/пометить на удаление/распровести документы. В 7ке это методы и через ПКС нельзя перенести-будет ругаться на неверное имя реквизита. Передачи в параметр данных из источника для 7ки тоже нет. В конфигурации 7.7 нельзя ничего дорабатывать, а значит и не могу добавить общий реквизит документов, чтоб передавать туда признак. Доработать модуль загрузки в 7.7, чтоб распознавал Проведен  и ПометкаУдаления и выполнял соответствующие методы у меня не получилось. Помогите(((
1 Defender aka LINN
 
26.09.14
09:24
РежимЗаписи
2 NastyMosk
 
26.09.14
09:35
Игнорирует РежимЗаписи
3 Fedor-1971
 
26.09.14
10:20
(0) Через ПКС без получателя сохрани в файле признак, а в ПослеЗагрузки ПКО проверь оный и вызови нужные методы (пометки на удаление или отмену проведения).
4 NastyMosk
 
29.09.14
08:53
Для своих целей решила использовать поле Комментарий. При выгрузке в ПКС прописала чтобы в поле комментарий попадало служебное слово "Проведен/" или "Пометка/". В ПКО объекта после загрузки прописываю следующий код:
            Если Найти(Объект.Комментарий, "Проведен/")>0 Тогда
                ПозицияДроби = Найти(Объект.Комментарий,"/");
                ИскомаяСтрока = Прав(Объект.Комментарий,СтрДлина(Объект.Комментарий) -ПозицияДроби);
                Объект.Комментарий=ИскомаяСтрока;
                Объект.Провести();
            КонецЕсли;    
            
            Если Найти(Объект.Комментарий, "Пометка/")>0 Тогда
                ПозицияДроби = Найти(Объект.Комментарий,"/");
                ИскомаяСтрока = Прав(Объект.Комментарий,СтрДлина(Объект.Комментарий) -ПозицияДроби);
                Объект.Комментарий=ИскомаяСтрока;
                Объект.Записать();
                Объект.Удалить(0);
            КонецЕсли;

Таким образом привожу поле комментарий в исходный вид и выполняю с документом необходимые действия. Но с пометкой на удаление этого будет недостаточно. Т.к. в обработке загрузки в самом конце процедуры ЗагрузитьДокументV8() имеется следующий код
Если ПустоеЗначение(ПометкаУдаления) = 1 Тогда
        Если ОбъектБД.ПометкаУдаления() = 1 Тогда    ОбъектБД.СнятьПометкуУдаления();    КонецЕсли;
    Иначе
        Если ОбъектБД.ПометкаУдаления() = 0 Тогда    ОбъектБД.Удалить(0);                КонецЕсли;
    КонецЕсли;

Его нужно закомментировать
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший