Как правильно создавать номенклатуру программно?

1. user765762 18.12.20 11:15 Сейчас в теме
прошу судить не строго сам новичок

Как правильно создавать номенклатуру программно?

парсю по API номенклатуру по http получаю json
<response>
<item>
<article>25288</article>
<name>Материнская плата Gigabyte H310M H</name>
<full_name>Материнская плата, Gigabyte, H310M H (4719331803445/3797), LGA1151v2, iH310, 2xDDR4, 4xSATA3, 1xD-Sub, 1xHDMI, 1xPCI-Ex16, 2xPCI-Ex1, mATX</full_name>
<category>3590</category>
<sort>128</sort>
<price1>21851</price1>
<price2>24090</price2>
<priceMarkdown/>
<quantity>1</quantity>
<quantityMarkdown>0</quantityMarkdown>
<isnew>0</isnew>
<ishit>0</ishit>
<ispromo>0</ispromo>
<article_pn>GAH310MH2-00-G</article_pn>
<barcode>4719331803797</barcode>
</item>
</response>
Показать


Помогите. готов заплатить
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. FatPanzer 18.12.20 11:29 Сейчас в теме
(1)
Как правильно создавать номенклатуру программно?
НоваяНоменклатура = Справочники.Номенклатура.СоздатьЭлемент();

Номер карты дать для оплаты?
harmer; chizh.84; +2 1 Ответить
3. DJDUH 17 18.12.20 13:44 Сейчас в теме
(2) скорее всего так:
Запрос = Новый Запрос("Выбрать ссылка Из Справочник.Номенклатура Где Артикул = "25288" И Не пометкаУдаления");
Рез = Запрос.выполнить();
Если Рез.ПУстой() ТОгда
       НоваяНоменклатура = Справочники.Номенклатура.СоздатьЭлемент();
Иначе
      Сообщить("Такая номка уже есть с артикулом 25288");
КонецЕсли;
4. harmer 1 18.12.20 14:47 Сейчас в теме
(2) После оплаты, в качестве бонуса уж напишите еще как сохранять)
5. user1498686 18.12.20 23:26 Сейчас в теме
JSON дальше видишь как структуру или как текст ?


Если Парсер.article <> "" Тогда 
	
Запрос = Новый Запрос;
Запрос.Текст="ВЫБРАТЬ
             |	Номенклатура.Ссылка КАК Ссылка
             |ИЗ
             |	Справочник.Номенклатура КАК Номенклатура
             |ГДЕ
             |	Номенклатура.ЭтоГруппа = ЛОЖЬ
             |	И Номенклатура.Артикул = &Артикул" ;
Запрос.УстановитьПараметр("Артикул",Парсер.article);

Если Запрос.Выполнить().Пустой() Тогда 
	Ном = Справочники.Номенклатура.СоздатьЭлемент();
Иначе 
	//Здесь получим чтобы обновить
	выборка = Запрос.Выполнить().Выбрать();
	Выборка.Следующий();
	Ном =Выборка.Ссылка.ПолучитьОбъект();	
КонецЕсли;	


Ном.Наименование =Парсер.name;
Ном.НаименованиеПолное = Парсер.full_name;
Ном.Артикул =  Парсер.article;

//Дальше остальные реквизиты

//Записать базовую единицу

//Записать баркод в регистр баркодов 

Ном.Записать(); 

КонецЕсли;

Показать


Не сказал какая конфа. Скорее всего будет ошибка при записи т.к. пару вспомогательных справочников еще писать надо. Как минимум это единицы измерения. Остальное зависит от конфы.
6. muskul 19.12.20 06:23 Сейчас в теме
Нужно посмотреть обработку события смены вида номенклатуры. она перезаполняет в 99% то что нужно.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот