Нашел в инете кусок кода выгрузки\загрузки DBF.
Спр.Отдел \\ПеречислениеСсылка.Отдел
Значения не подставляются, т.е. это реквизит в форме остается пустым. Что не так делаю и как правильно ? Выгрузка проходит корректно, значения в таблице DBF-файла есть.
И ещё мелочь, но хочется знать на будущее. Почему в пути указаны два слеша, вместо одно бэк-слеша - работает оба варианта.
Процедура ОсновныеДействияФормыЗагрузить(Кнопка)
БД = Новый XBase;
БД.ОткрытьФайл("C://1.dbf"); \\?
Если БД.Открыта() тогда
БД.Первая();
Пока НЕ БД.ВКонце() Цикл
Спр=Справочники.Сотрудники.СоздатьЭлемент();
Спр.Наименование = СокрЛП(БД.Name);
Спр.Отдел = СокрЛП(БД.Local); \\?
Спр.Записать();
БД.Следующая();
КонецЦикла;
КонецЕсли;
(2) Если ДБФ для переноса данных, то используй ЗначениеВСтрокуВнутр() и ЗначениеИзСтрокиВнутр() для выгрузки и загрузки значения перечисления соответственно.
Если ДБФ для чтения юзерам, то при загрузке ищи перечисление по наименованию.
Вроде сделал, только пришлось увеличить длину выгружаемого поля с 50 на 100. Спасибо!
А если бы это были разные конфигурации ? ЗначениеВСтрокуВнутр() и ЗначениеИзСтрокиВнутр() строковые представления этих функций справедливы только для одной конфигурации!?
(5) "строковые представления этих функций справедливы только для одной конфигурации!?"
Ещё строже - для одной ИБ (или РИБ), т.к. в эту строку выгружается уникальный идентификатор объекта, который, сам понимаешь, никогда не повторяется.
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан