Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[Прочее]

внешняя обработка для изменения свойств номенклатуры

Simon-Phoenix
читатель
офлайн
Дата регистрации: 16.11.2007
Сообщений: 3
Пост №1
 
16.11.2007 07:15

"1С восьмерка<br>занимаюсь совсем недавно, так что может вопрос и простой, но для меня сложный )<br><br>ситуация: нужно изменить одно из свойств товара, в часности Основной производитель<br><br>есть форма, в которой указывается изменяемое свойство и какое значение ему присваивать, подгрузка списка номенклатуры, у которой нужно изменить указанное свойство, осуществляется из экселевского файла<br><br>модуль формы:<br><br>Перем ВыборФайла, Exel;<br><br><br>Процедура КнопкаВыполнитьНажатие(Элемент)<br> <br> Если ВыборФайла.Выбрать() Тогда<br> <br> Файл = Exel.Workbooks.Open(ВыборФайла.ПолноеИмяФайла);<br> Табл = Файл.WorkSheets(1);<br> <br> ЗначенияСвойствОбъектов = РегистрыСведений.ЗначенияСвойствОбъектов;<br> НаборСвойств = ЗначенияСвойствОбъектов.СоздатьНаборЗаписей();<br> <br> <br> Для СчСтрок = 1 По КоличествоСтрок Цикл<br> <br> КодТовара = Табл.Cells(СчСтрок, 1).Text;<br> Товар = Справочники.Номенклатура.НайтиПоНАИМЕНОВАНИЮ(КодТовара).Ссылка;<br> <br> Если Товар.Пустая() Тогда<br> Сообщить("Не найден элемент справочника: Код - " + КодТовара + " Наименование - " + Табл.Cells(СчСтрок, 1).Text);<br> <br> Продолжить;<br> <br> КонецЕсли;<br> <br> НовоеСвойство = НаборСвойств.Добавить();<br> НовоеСвойство.Объект = Товар;<br> НовоеСвойство.Свойство = Свойство;<br> НовоеСвойство.Значение = Значение;<br> <br> <br> КонецЦикла;<br> НаборСвойств.Записать();<br> <br> КонецЕсли;<br> <br> <br> Файл.Close();<br> Exel.Quit();<br>КонецПроцедуры<br><br><br>Exel = Новый COMОбъект("Excel.Application",);<br>ВыборФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);<br>ВыборФайла.МножественныйВыбор = Ложь;<br><br><br>проблема в том, что фактически создается новый РегистрыСведений.ЗначенияСвойствОбъектов, затирая уже имеющийся, а мне же надо, чтобы он добавлял запись, если таковой не присутствует, либо изменял уже существующую, меняя в ней свойство...третий день сижу, зарывшись в пособия разработчика 1С )...поможите плз )"

Simon-Phoenix
читатель
офлайн
Дата регистрации: 16.11.2007
Сообщений: 3
Пост №2
 
16.11.2007 10:06

"попытался добавить в код<br> НаборСвойств.Отбор.Объект.Установить(Товар);<br> НаборСвойств.Отбор.Свойство.Установить(Свойство);<br> НаборСвойств.Прочитать();<br>если ставлю перед<br> НовоеСвойство = НаборСвойств.Добавить();<br> НовоеСвойство.Объект = Товар;<br> НовоеСвойство.Свойство = Свойство;<br> НовоеСвойство.Значение = Значение;<br>то новые записи добавляет, но старые не редактирует, ругаясь, что запись уже существует в списке...т.е. ведет себя так, будто Запись=Ложь<br>если ставлю перед<br> НаборСвойств.Записать(Истина);<br>то вообще никакой реакции не получаю, будто обработка и не выполнялась )"

Simon-Phoenix
читатель
офлайн
Дата регистрации: 16.11.2007
Сообщений: 3
Пост №3
 
16.11.2007 10:57

все, разобрался

Показывать по 10 20 40 сообщений

Читают тему:

Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация