8.х ОБМЕН Конвертация данных справочника из 7.7 в 8.2

Тема в разделе "Обмен данными в "1С:Предприятие 8"", создана пользователем Natalya, 18 окт 2011.

  1. TopicStarter Overlay
    Natalya
    Offline

    Natalya Опытный в 1С

    Регистрация:
    7 фев 2008
    Сообщения:
    57
    Симпатии:
    0
    Баллы:
    26
    Здравствуйте.

    Конвертирую данные справочника из 7.7 в 8.2 с помощью правил конвертации.
    В 7.7 длина кода состаляет 10 знаков (тип строка), в 8.2 - 9 знаков (тип строка).
    Нужно написать модуль кода - код = Прав(Объект.код,9) при выгрузке данных из 7.7.

    В правиле конвертации в обработчике событий "При выгрузке" я пишу код, и при выгрузке появляется ошибка "Функция не обнаружена (ПКС_ПриВыгрузке_ОсновныеСредства_Код_Свойство2)".

    Подскажите, как исправить эту ошибку.

    Спасибо.

    1с 7.7 Комплексная ред 4.5, 1с 8.2 УПП
  2. TODD22
    Offline

    TODD22 Профессионал в 1С Команда форума

    Регистрация:
    23 фев 2009
    Сообщения:
    4.756
    Симпатии:
    147
    Баллы:
    104
    Может лучше сделать "новую" нумерацию?
    У вас могут быть проблемы с уникальностью.
    Пример:
    0000123
    0000124
    0000125
    Вот теперь уберите последнюю цифру в каждой строке.....
    получится три элемента с кодом 000012

    З.Ы. Хотя вы же с "права" берёте... тогда норм должно быть.
  3. TopicStarter Overlay
    Natalya
    Offline

    Natalya Опытный в 1С

    Регистрация:
    7 фев 2008
    Сообщения:
    57
    Симпатии:
    0
    Баллы:
    26
    Новую нумерацию нельзя. Справочник "Основные средства", код - это инвентарный номер.
  4. uza
    Offline

    uza 1С, VBA (EXCEL), VB (.NET + WEB)

    Регистрация:
    10 июл 2007
    Сообщения:
    1.845
    Симпатии:
    1
    Баллы:
    29
    Ы. А если попробовать конвертацию делать через промежуточную БД? Где банально перенумеровать справочник (Код = ОбрезанныйКод).
    А то и вовсе перенумеровать справочник в текущей БД и образать длину кода?
    А увеличить разрядность БД "приемника" (8.2) - не вариант?
  5. TopicStarter Overlay
    Natalya
    Offline

    Natalya Опытный в 1С

    Регистрация:
    7 фев 2008
    Сообщения:
    57
    Симпатии:
    0
    Баллы:
    26
    Всё получилось.
    В правиле конвертации в обработчике событий "При выгрузке" для кода написать "ПривестиНомерКДлине(Значение, 9)".
    При сохранении правил поставить галочку "создавать модуль", он сохранится в текстовом файле. Далее этим модулем заменить старый модуль обработки V77Exp.ert. И запустить эту обработку в 1с 7.7.
  6. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.409
    Симпатии:
    316
    Баллы:
    104
    Вы же для семерки пишете - а код модуля выгрузки не забываете формировать при сохранении правил и заменять им стандартный в обработке?


    Вижу сами разобрались уже.
  7. TopicStarter Overlay
    Natalya
    Offline

    Natalya Опытный в 1С

    Регистрация:
    7 фев 2008
    Сообщения:
    57
    Симпатии:
    0
    Баллы:
    26
    Теперь группы 2 раза загружаются.
    В обработчике событий "При выгрузке" я написала код:
    Код:
    Значение = ПривестиНомерКДлине(Источник.Код, 9);
    
    Загружается группа с элементами, с кодом 000000101 (в 7.7 код - 0000001011), без названия. И ещё одна группа без элементов, с преобразованным кодом 000001011, с наименованием.

    Напишите, пожалуйста, как картинку вставить?
  8. fineosun
    Offline

    fineosun Опытный в 1С

    Регистрация:
    15 мар 2011
    Сообщения:
    57
    Симпатии:
    0
    Баллы:
    26
    А это у вас, видимо, правило для Родителя не то же самое, что и для элементов. Правило для родителя тоже надо также исправить
Похожие темы
  1. agostev
    Ответов:
    6
    Просмотров:
    4.782
  2. nickvv
    Ответов:
    6
    Просмотров:
    2.345
  3. kogor
    Ответов:
    3
    Просмотров:
    2.943
  4. midavp
    Ответов:
    3
    Просмотров:
    3.516
  5. eViLL
    Ответов:
    2
    Просмотров:
    362
Загрузка...

Поделиться этой страницей