Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 окт 2021, 00:50

УТ 10.3: Загрузка данных из Excel реквизитов и свойств номенклатуры

Автор AIFrame, 19 окт 2016, 05:47

0 Пользователей и 1 гость просматривают эту тему.

AIFrame

Вид разработки
Внешняя обработка
Базовая версия.
Загрузка данных типа "Строка" или "Число". Для объектов не пилил, т.к. для нашей задачи не требовалось, поэтому флаг "Создавать объекты" ни делает ничего.
Возможна загрузка любого реквизита номенклатуры (по метаданным) или связанного свойства (регистр Знач.Свойств Объектов).

Перед выполнением загрузки идет проверка первой строки, чтобы вы смогли убедиться, что задали правильные номера колонок.
Связь с excel через com-объект.
Читает .xls.
Соответствие задается по коду товара.

MuI_I_Ika

Круто. Старая добрая классика, никогда не устаревающая

shtrek

УНФ 1.6
тонкий клиент
не устанавливается обработка через
Администрирование - Дополнительные отчеты и обработки -
Создать - Предупреждение безопастности - Продолжить -
выбор файла обработки

Далее имею
Невозможно подключить дополнительную обработку из файла...
И дальше - Бла,бла,..., ну и про метод объекта/который не обнаружен/
СведенияОВнешнейОбработке
Через файл-открыть имею пустую страницу...
Есть какие то варианты загрузки данной обработки?
Спасибо.

AIFrame


Eugeneer

Разработка для всех версий УТ и 1С. На обычных и управляемых формах
https://subsystems.ru/solutions/program=159/
SubSystems.Ru - Автоматическая загрузка прайсов в 1С из Excel

Клим

Здравствуйте!

Пытаюсь доработать вашу обработку, чтобы загружать "Значения свойств объектов".

По сути для одной строки файла происходит вот такая запись. Всё проходит без ошибок и даже значение записывается. Но что-то явно не то, т.к. таким образом записываются любые значения в свойство, значения которого ограничены списком ("Значения свойств объектов"). Вероятно нужно записывать как-то по-другому (может быть через код значений свойства?). Более того, когда после такой записи захожу в карточку товара, я вижу в свойствах нужное значение, но оно пропадает, если встать в поле со значением.
Подскажите, пожалуйста, что я не учитываю. Обновленную обработку выложу сюда.

ЭксКодТовара = Лист.Cells(Строка,НомерКолонкиКод).Text;
Товар = Справочники.Номенклатура.НайтиПоКоду((ЭксКодТовара));
Свойство = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоКоду(СтрокаСвойств.Свойство.Код);
ДанныеДляЗаписи = СокрЛП(Лист.Cells(Строка,СтрокаСвойств.КолонкаТД).Text);

ЗначСвойств = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьМенеджерЗаписи();
ЗначСвойств.Объект = Товар;
ЗначСвойств.Свойство = Свойство;
ЗначСвойств.Значение = ДанныеДляЗаписи;
ЗначСвойств.Записать();


AIFrame

Ты пишешь текст там, где ожидается ссылка на элемент справочника ЗначениеСвойствОбъектов.

ДанныеДляЗаписи = СокрЛП(Лист.Cells(Строка,СтрокаСвойств.КолонкаТД).Text);
Тип - строка.
Попробуй получив эту строку найти соотв. значение свойства
СсылкаЗначенияСвойства = Справочники.ЗначенияСвойствОбъектов.НайтиПоКоду(СокрЛП(ДанныеДляЗаписи));
И уже СсылкаЗначенияСвойства вставлять в ЗначСвойств.Значение

Виталий.shiko

Клим, здравствуйте.

Могли бы выложить вашу версию обработки, которая позволяет добавлять "Значения свойств объектов".
Чертовски нужна такая штука, а куда дописать ваш кусочек кода ума не приложу.

Я буду весьма вам благодарен.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru Rambler's Top100

Поиск