Множественный выбор значения дополнительного свойства при обмене с сайтом на Битрикс

Публикация № 1177575

Разработка - Системная интеграция - Интеграция с WEB

Множественный выбор Битрикс Модуль обмена

При настройке обмена между конфигурациями УТ 10.3 и сайтом на битриксе может возникнуть такая проблема: в битриксе на сайте поддерживается множественный выбор значений дополнительного свойства номенклатуры, в 1с нет. Один из способов решения этой проблемы рассмотрим в этой статье.

Используемые конфигурации: Управление торговлей 10.3.57.3.

Модуль обмена битрикс 7.0.1.8 (https://1c.1c-bitrix.ru/ecommerce/download.php).

В справочнике номенклатуры заведено несколько позиций, добавлено дополнительное свойство «Тип одежды», с типом значения «Значения свойств объектов»,  в типовой конфигурации «Тип одежды» может принимать только одно значение и выгрузку попадает только одно значение, необходимо настроить выгрузку нескольких значений.

С настройками по умолчанию выгрузка  дополнительных свойств  из 1с в файле import будет иметь следующий вид

Где ИД – Уникальный идентификатор Свойства «Тип Одежды»
Значение - Уникальный идентификатор значения свойства «Спортивная».

Один из способ решения данной задачи, приведен на форуме Битрикса https://dev.1c-bitrix.ru/community/forums/messages/forum26/topic19114/message335911/#message335911


Я сделаю немного по - другому, для этого мне придется внести изменения в типовую конфигурацию УТ 10.3, изменить xsd схему обмена и подправить процедуру выгрузки доп. свойств на сайт в модуле обмена Битрикс.

1.    Изменения в типовой конфигурации УТ 10.3

В конфигураторе в  плане видов характеристик «Свойства объектов» добавляем реквизит мультивыбор тип Булево.

В пользовательском режиме, проставляем галочку, и делаем Тип значения составной. «Строка» и «Значения свойств объектов»

В конфигураторе в карточке номенклатуры, на вкладке «Свойства» в колонке "Значение" активируем кнопку Открытия, в процедуре открытия вставляем следующий код

Процедура СвойстваИЗначенияЗначениеОткрытие(Элемент, СтандартнаяОбработка)
	Если ЭтаФорма.ЭлементыФормы.СвойстваИЗначения.ТекущиеДанные.Свойство.Мультивыбор Тогда
		СтандартнаяОбработка = Ложь;
		Запрос = Новый Запрос;
		
		Запрос.Текст = "ВЫБРАТЬ
		|	ЗначенияСвойствОбъектов.Ссылка
		|ИЗ
		|	Справочник.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
		|ГДЕ
		|	ЗначенияСвойствОбъектов.Владелец = &Владелец";
		
		Запрос.УстановитьПараметр("Владелец",ЭтаФорма.ЭлементыФормы.СвойстваИЗначения.ТекущиеДанные.Свойство); 		
		
		СП = Новый СписокЗначений();
		СП.ЗагрузитьЗначения(Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка")); 		
		ЭлементыФормы.СвойстваИЗначения.Колонки["Значение"].ЭлементУправления.СписокВыбора = СП;	
	Иначе
		СП  = Новый СписокЗначений();
		ЭлементыФормы.СвойстваИЗначения.Колонки["Значение"].ЭлементУправления.СписокВыбора = Новый СписокЗначений();	
		
	КонецЕсли;	
	
	МассивПодстрок = ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок(Элемент.Значение,";");
	
	Для Каждого ЭлементСписка  Из ЭлементыФормы.СвойстваИЗначения.Колонки["Значение"].ЭлементУправления.СписокВыбора Цикл 
	НайденноеЗначение = МассивПодстрок.Найти(ЭлементСписка.Значение.Наименование);		
		ЭлементСписка.Пометка = НайденноеЗначение <> Неопределено;
	КонецЦикла;

	ИтоговаяСтрока = "";
	Если ЭлементыФормы.СвойстваИЗначения.Колонки["Значение"].ЭлементУправления.СписокВыбора.ОтметитьЭлементы() Тогда
 
		Для Каждого ЭлементСписка Из ЭлементыФормы.СвойстваИЗначения.Колонки["Значение"].ЭлементУправления.СписокВыбора Цикл
			Если ЭлементСписка.Пометка Тогда	
			ИтоговаяСтрока = ?(ИтоговаяСтрока ="",?(ЭлементСписка.Значение="","   ",ЭлементСписка.Значение),""+ИтоговаяСтрока +";" +	?(ЭлементСписка.Значение="","   ",ЭлементСписка.Значение)); 						
			КонецЕсли;	
		КонецЦикла;	
	Элемент.Значение = ИтоговаяСтрока;	
КонецЕсли;

КонецПроцедуры

После открытия в режиме предприятия, и нажатии на кнопку открытия, открывается окно с внесенными значениями, остается галочками отметить нужные свойств

 

 

В базе данное свойство будет храниться как строка, и в дальнейшем мы будем работать с этим свойство как со строкой. Это не совсем удобно, в частности накладывает ограничения, на переименования значений, поэтому дополнительно будем хранить в отдельном реквизите, значения уникальных идентификаторов, чтобы обращаться к значениям свойств не по наименованию, а по ГУИД

В регистр сведений Значения свойств объектов добавляем реквизит УИД тип строка (1024)

В обработку  "Значения свойств объекта" в табличную часть  «СвойстваИЗначения» добавляем реквизит  УИД тип строка (1024)

Следует учитывать, что при такой длине строки плюс разделители, можно будет хранить порядка 27 значений. Если требуется больше значений, строку лучше сделать неограниченной длины, но для это придется сильнее модифицировать запрос, который приведен ниже.

В обработке "Значения свойств объекта" проводим следующие модификации:

в модуле объекта в процедуре ПрочитатьТаблицуСвойствИЗначений() в запрос добавляем строку

   |	СвойстваОбъектов.Наименование КАК Наименование,
   |	ЗначенияСвойствОбъектов.УИД КАК УИД
   |ИЗ
   |	(ВЫБРАТЬ

В процедуру ЗаписатьЗначенияСвойств()

Добавляем строку кода    Запись.УИД = Строка.УИД;

Если ЗначениеЗаполнено(Строка.Значение) Тогда

	Запись = НаборЗаписейЗначенияСвойств.Добавить();
	
	Запись.Объект   = ОбъектОтбораЗначений;
	Запись.Свойство = Строка.Свойство;
	Запись.Значение = Строка.Значение;
	Запись.УИД = Строка.УИД;

КонецЕсли;

В форму элемента Справочника номенклатуры, на закладке Свойства, добавляем скрытую колонку УИД,  в качестве данных указываем колонку «УИД» из обработки  ЗначенияСвойствОбъекта.

Модифицируем нашу процедуру  в форме элемента номенклатуры, по кнопке открытия значения свойства, с учетом реквизита УИД.

Если ЭтаФорма.ЭлементыФормы.СвойстваИЗначения.ТекущиеДанные.Свойство.Мультивыбор Тогда
		СтандартнаяОбработка = Ложь;
		Запрос = Новый Запрос;
		
		Запрос.Текст = "ВЫБРАТЬ
		|	ЗначенияСвойствОбъектов.Ссылка
		|ИЗ
		|	Справочник.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
		|ГДЕ
		|	ЗначенияСвойствОбъектов.Владелец = &Владелец";
		
		Запрос.УстановитьПараметр("Владелец",ЭтаФорма.ЭлементыФормы.СвойстваИЗначения.ТекущиеДанные.Свойство); 		
		СП = Новый СписокЗначений();
		СП.ЗагрузитьЗначения(Запрос.Выполнить().Выгрузить().ВыгрузитьКолонку("Ссылка")); 		
		ЭлементыФормы.СвойстваИЗначения.Колонки["Значение"].ЭлементУправления.СписокВыбора = СП;	
	Иначе
		СП  = Новый СписокЗначений();
		ЭлементыФормы.СвойстваИЗначения.Колонки["Значение"].ЭлементУправления.СписокВыбора = Новый СписокЗначений();		
	КонецЕсли;	
	ТекСТрока = ЭлементыФормы.СвойстваИЗначения.ТекущаяСтрока;	
	МассивПодстрок = ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок(ТекСТрока.УИД,";");
	МассивЭлементов = Новый Массив();
	Для Каждого ЭлементМассиваПодстрок Из  МассивПодстрок Цикл
		Если ЭлементМассиваПодстрок = "" Тогда
			Продолжить;
		КонецЕсли;
		МассивЭлементов.Добавить(XMLЗначение(Тип("СправочникСсылка.ЗначенияСвойствОбъектов"), ЭлементМассиваПодстрок));
	КонецЦикла;
	
	Для Каждого ЭлементСписка  Из ЭлементыФормы.СвойстваИЗначения.Колонки["Значение"].ЭлементУправления.СписокВыбора Цикл 
		НайденноеЗначение = МассивЭлементов.Найти(ЭлементСписка.Значение);		
		ЭлементСписка.Пометка = НайденноеЗначение <> Неопределено;
	КонецЦикла;
	
	ИтоговаяСтрока = "";
	ИтоговаяСтрокаУИД = "";
	Если ЭлементыФормы.СвойстваИЗначения.Колонки["Значение"].ЭлементУправления.СписокВыбора.ОтметитьЭлементы() Тогда
		
		Для Каждого ЭлементСписка Из ЭлементыФормы.СвойстваИЗначения.Колонки["Значение"].ЭлементУправления.СписокВыбора Цикл
			Если ЭлементСписка.Пометка Тогда	
				ИтоговаяСтрока = ?(ИтоговаяСтрока ="",?(ЭлементСписка.Значение="","   ",ЭлементСписка.Значение),""+ИтоговаяСтрока +";" +?(ЭлементСписка.Значение="","   ",ЭлементСписка.Значение)); 						
				ИтоговаяСтрокаУИД = ?(ИтоговаяСтрокаУИД ="",?(ЭлементСписка.Значение="","   ",XMLСТрока(ЭлементСписка.Значение)),""+ИтоговаяСтрокаУИД +";" +?(ЭлементСписка.Значение="","   ",XMLСТрока(ЭлементСписка.Значение))); 				
			КонецЕсли;	
		КонецЦикла;	
		Элемент.Значение = ИтоговаяСтрока;
		ТекСТрока.УИД =ИтоговаяСтрокаУИД; 
	КонецЕсли;

2. Корректировка xsd схемы выгрузки.

В Разделе Типы Объектов ЗначенияСвойства Добавляем новое свойство ЗначениеСвойства, и  в него добавляем свойство Значение

 

3. Корректировка  процедуры выгрузки  доп. свойств на сайт в модуле обмена Битрикс.


В модуле Б_ПроцедурыИФункцииВыгрузкиДанныхНаСайт В процедуре СформироватьВременныеТаблицыПоИнформацииОТоварахПакета()


В подзапросе

ЗапросПоСвойствам = "ВЫБРАТЬ РАЗРЕШЕННЫЕ

| СвойстваОбъектов.Ссылка КАК СвойствоНоменклатуры,

 

Добавляем строки

 

|ЗначенияСвойствОбъектов.УИД КАК УИД,
|ЕСТЬNULL(ЗначенияСвойствОбъектов.Свойство.МультиВыбор, ЛОЖЬ) КАК МультиВыбор
|ПОМЕСТИТЬ ВремЗначенияСвойствТовара

 

В модуле Б_ОбменССайтомСерверВыгрузкаДанных В процедуре ВыгрузитьСвойстваXDTO()  для нашего свойства с признаком мультивыбор, удаляем лишний тип значения с типом "Строка"

 

XDTOСвойство.ТипЗначений = "Строка";

Если  ТекСвойство.СвойствоНоменклатуры.Мультивыбор И Типы.Количество() = 2 Тогда
	//Типы.Удалить(0)
	КолвоЭлементовКоллекции = Типы.Количество(); 
	Для ОбратныйИндекс = 1 По КолвоЭлементовКоллекции Цикл 
		ЭлементКоллекции = Типы[КолвоЭлементовКоллекции - ОбратныйИндекс]; 
		
		Если ЭлементКоллекции = Тип("Строка") Тогда 
			Типы.Удалить(КолвоЭлементовКоллекции - ОбратныйИндекс); 
		КонецЕсли; 
		
	КонецЦикла; 
КонецЕсли;

Если НЕ Типы.Количество() <> 1 Тогда

Меняем Процедуру  ВыгрузитьСвойстваНоменклатурыXDTO(). Привожу процедуру целиком

Процедура ВыгрузитьСвойстваНоменклатурыXDTO(ПараметрыОбмена, Владелец, ВладелецТип, ВыборкаНоменклатуры, лМенеджерВременныхТаблиц);
	
	XDTOЗначенияСвойствТип 	= Б_ОбщиеПроцедурыИФункцииОбменаССайтом.ПолучениеТипОбъектаXDTO(ПараметрыОбмена, "ЗначенияСвойств", Истина, ВладелецТип);
	XDTOЗначенияСвойстваТип = Б_ОбщиеПроцедурыИФункцииОбменаССайтом.ПолучениеТипОбъектаXDTO(ПараметрыОбмена, "ЗначенияСвойства");
	XDTOЗначенияСвойствМножТип = Б_ОбщиеПроцедурыИФункцииОбменаССайтом.ПолучениеТипОбъектаXDTO(ПараметрыОбмена, "ЗначениеСвойства", Истина, XDTOЗначенияСвойстваТип);
	
	Запрос = Новый Запрос;
	запрос.МенеджерВременныхТаблиц = лМенеджерВременныхТаблиц;
	запрос.Текст =  "ВЫБРАТЬ *
	|ИЗ
	|	ВремЗначенияСвойствТовара КАК ВремЗначенияСвойствТовара
	|ГДЕ
	|	(ВремЗначенияСвойствТовара.Номенклатура = &Номенклатура)";
	
	Запрос.УстановитьПараметр("Номенклатура", ВыборкаНоменклатуры.Номенклатура);
	Выборка = Запрос.Выполнить();
	
	Если НЕ Выборка.Пустой() тогда	
		ВыборкаСвойств = Выборка.Выбрать();
		XDTOЗначенияСвойств = ПараметрыОбмена.МояФабрикаXDTO.Создать(XDTOЗначенияСвойствТип);
		
		Пока ВыборкаСвойств.Следующий() Цикл
			
			XDTOЗначенияСвойства = ПараметрыОбмена.МояФабрикаXDTO.Создать(XDTOЗначенияСвойстваТип);
			
			XDTOЗначенияСвойства.Ид = XMLСтрока(ВыборкаСвойств.ИдентификаторСвойства);
			
			МассивТипов =    ВыборкаСвойств.ИдентификаторСвойства.ТипЗначения.Типы(); 
			Если ВыборкаСвойств.МультиВыбор 
				И ТипЗНЧ(ВыборкаСвойств.Значение) = Тип("Строка") Тогда
				
				МассивПодстрок = ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок(ВыборкаСвойств.УИД,";");
				Для Каждого ЗначениеЭлемента Из МассивПодстрок Цикл
					//ЭлементСвойства = Справочники.ЗначенияСвойствОбъектов.НайтиПоНаименованию(ЗначениеЭлемента,Истина);
					
					//Для каждого Свойство из ВыборкаСвойств.Значение Цикл
					XDTOЗначенияМножСвойств = ПараметрыОбмена.МояФабрикаXDTO.Создать(XDTOЗначенияСвойствМножТип);
					XDTOЗначенияМножСвойств.Значение = ЗначениеЭлемента;
					XDTOЗначенияСвойства.ЗначениеСвойства.Добавить(XDTOЗначенияМножСвойств);
					//КонецЦикла;
					
				КонецЦикла;
				XDTOЗначенияСвойств.ЗначенияСвойства.Добавить(XDTOЗначенияСвойства);
				
			Иначе
				
				//XDTOЗначенияСвойства = ПараметрыОбмена.МояФабрикаXDTO.Создать(XDTOЗначенияСвойстваТип);
				//
				//XDTOЗначенияСвойства.Ид = XMLСтрока(ВыборкаСвойств.ИдентификаторСвойства);
				
				XDTOЗначенияСвойства.Значение.Добавить(XMLСтрока(ВыборкаСвойств.ИдентификаторЗначения));
				
				XDTOЗначенияСвойств.ЗначенияСвойства.Добавить(XDTOЗначенияСвойства);	
			КонецЕсли;	
			
		КонецЦикла;
		Владелец.ЗначенияСвойств = XDTOЗначенияСвойств;
	КонецЕсли;

	
КонецПроцедуры

С вышеприведенными доработками выгрузка  дополнительных свойств  из 1с в файле import будет иметь следующий вид

На стороне Битрикс ничего дорабатывать не надо, значения должны встать автоматом.

Основной недостаток данного решения - это отсутствие контроля ссылочной целостности, при удалении значений свойств. Чтобы не пропали данные необходимо предусмотреть дополнительные механизмы

Скачать файлы

.zip
Наименование Файл Версия Размер
Множественный выбор р в дополнительных свойствах при обмене с сайтом на Битрикс:

.zip 11,13Kb
13.01.20
1
11,13Kb 1 Скачать

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. smarsel 23.03.20 15:13 Сейчас в теме
Думаю отличная вещь! Нужно реализовать! В свое время искал везде, не нашел, смирился. А вот и попалась! Спасибо.
2. gernad 22.04.20 19:32 Сейчас в теме
Прекрасная идея! Правда, не удалось привести эту доработку в рабочее состояние по вашей инструкции.

Не совсем понятно, где именно вы размещаете блок кода:

|ЗначенияСвойствОбъекта.УИД КАК УИД,
|ЕСТЬNULL(ЗначенияСвойствОбъекта.Свойство.МультиВыбор, ЛОЖЬ) КАК МультиВыбор
|ПОМЕСТИТЬ ВремЗначенияСвойствТовара
3. handscenter 33 28.04.20 11:40 Сейчас в теме
(2) ищите в этой процедуре часть запроса помещающую выборку во временную таблицу и размещайте перед ней

|ПОМЕСТИТЬ ВремЗначенияСвойствТовара
4. jo0506 11 02.07.20 07:03 Сейчас в теме
попытался все это запихнуть в стандартный обмен ут 10.3. Версия 2.04 Commerce XML.
битрикс почемуто не хавает...

				<ЗначенияСвойств>
					<ЗначенияСвойства>
						<Ид>62bc665a-dabb-11e5-8a52-7824af9d7d33</Ид>
						<ЗначенияСвойства>
							<Значение>38c39af6-b218-11ea-a815-7824af9d7d33</Значение>
						</ЗначенияСвойства>
						<ЗначенияСвойства>
							<Значение>38c39afb-b218-11ea-a815-7824af9d7d33</Значение>
						</ЗначенияСвойства>
						<ЗначенияСвойства>
							<Значение>fe2543d6-7bf2-11e7-9842-7824af9d7d33</Значение>
						</ЗначенияСвойства>
						<ЗначенияСвойства>
							<Значение>62bc665d-dabb-11e5-8a52-7824af9d7d33</Значение>
						</ЗначенияСвойства>
					</ЗначенияСвойства>
					<ЗначенияСвойства>
						<Ид>383d7c9d-e02b-11e5-8a52-7824af9d7d33</Ид>
						<Значение>Китай</Значение>
					</ЗначенияСвойства>
				</ЗначенияСвойств>
Показать
Оставьте свое сообщение

См. также

Аналоги номенклатуры для УТ 11.4, КА 2.4, ERP 2.4, Розница 2.2, Розница 8. Магазин автозапчастей. Расширение Промо

Рабочее место Оптовая торговля Розничная торговля Управление торговлей Оптовая торговля Розничная торговля v8 Розница ERP2 УТ11 КА2 Автомобили, автосервисы Оптовая торговля, дистрибуция, логистика Россия УУ Абонемент ($m)

Расширение для работы с аналогами номенклатуры. Отлично подходит для работы с кроссами запчастей и товаров с аналогичными свойствами. Поддерживаемые конфигурации: УТ 11.4, КА 2.4, ERP 2.4, Розница 2.2, Розница 8. Магазин автозапчастей. Лёгкое подключение, без изменения конфигурации.

10 стартмани

30.08.2019    15248    13    AleSSandre    25    

HTTP сервисы по OpenAPI спецификациям

Практика программирования WEB v8 1cv8.cf Абонемент ($m)

Начинаем путь разработки HTTP сервисов с создания спецификаций OpenAPI. Автодокументация сервисов формата Swagger UI без зависимостей. Настройка сервисов в режиме предприятия.

1 стартмани

29.06.2020    1590    1    shmalevoz    19    

Выбираем российского провайдера для интеграции с WhatsApp

WEB Интеграция v8 Россия Абонемент ($m)

Собственно, почему выбираем именно провайдера и почему российского? WhatsApp, создавая свое API, преследовал две цели - делать деньги и минимизировать спам. И чтобы убить сразу двух зайцев, было принято решение предлагать API исключительно через партнеров. Ну а вопрос по поводу российского партнера скорее уже риторический. И не только из-за курса рубля, но и из-за таланта работать с российскими телефонными номерами, коим одарены далеко не все провайдеры. Между тем статья не претендует на всесторонний анализ всех возможностей всех провайдеров. Мы копнем лишь верхушку айсберга этого немаленького рынка.

1 стартмани

19.05.2020    2887    0    ripreal1    1    

DaJet QL - расширяемый язык запросов

Интеграция WEB v8 Абонемент ($m)

DaJet QL поддерживает практический полный синтаксис SQL Server 2005-2016. Кроме этого это расширяемый язык запросов. Обращение к объектам СУБД выполняется в терминах метаданных 1С. Доступ к возможностям этого языка запросов реализован в виде web api сервиса. Результаты запросов возвращаются в виде JSON.

1 стартмани

20.04.2020    4381    9    zhichkin    16    

Внешняя компонента для работы по Web-socket протоколу Промо

Разработка внешних компонент WEB v8 Абонемент ($m)

Кто когда-нибудь сталкивался с обменом данными по Web-Socket (wss) протоколу из 1С, тому известно, что в платформе отсутствуют данные механизмы (не путать с HTTP запросами и WebServices). Предлагается использовать внешнюю компоненту, написанную по технологии NativeAPI, для подключения и обмена с серверами из 1С-Предприятия, работающими по протоколу Web-Socket.

5 стартмани

30.03.2018    22797    32    Ditron    68    

Telegram bot API - разбор документации с примерами

WEB v8 Абонемент ($m)

Перевод документации на язык 1С.

1 стартмани

06.04.2020    20051    29    leongl    29    

Пример работы с Trello из 1С

WEB v8 1cv8.cf Россия УУ Абонемент ($m)

Небольшая конфигурация содержит примеры обмена с онлайн-сервисом Trello.

1 стартмани

15.02.2020    8541    35    terrorion    8    

Взаимодействие HTML (COM объект, WebKit) с 1С (обычные и управляемые формы)

Внешние источники данных WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Показан пример использования HTML (COM объект, WebKit) в 1С (8.3).

2 стартмани

18.01.2020    6053    19    Deniskinr83    0    

Работа с релизами 1С и договорами ИТС Промо

WEB БСП (Библиотека стандартных подсистем) v8 1cv8.cf Абонемент ($m)

Работа с релизами 1С и партнерским кабинетом.

2 стартмани

15.08.2019    11982    34    RocKeR_13    10    

Google drive - менеджер файлов

WEB Внешние источники данных v8 1cv8.cf Россия Абонемент ($m)

Синхронизация с гугл диском легко и просто!

10 стартмани

05.12.2019    7443    22    zykov_vitaliy    22    

Работа с Яндекс-картами в 1С (вывод меток, прокладка маршрута, отображение балуна, вывод меток в кластеры) (обычное и управляемое приложение)

WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Работа с Яндекс-картами в 1С (управляемое приложение). Обработка показывает, как можно найти адреса на карте Яндекс, проложить маршрут.

2 стартмани

20.11.2019    9663    97    Denr83    0    

Пример взаимодействия HTML (COM объект, WebKit) с 1С (динамический отбор) (обычные и управляемые формы)

WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Показан пример использования WebKit в 1С (8.3).

2 стартмани

18.11.2019    7514    12    Denr83    0    

Проверка VAT номеров Промо

WEB v8 1cv8.cf Абонемент ($m)

Обработка для вызова сервиса проверка VAT номера.

1 стартмани

26.11.2018    10515    0    wtlz    1    

"Живые" картинки со Snap.SVG

Практика программирования WEB Работа с интерфейсом v8 Абонемент ($m)

В статье рассмотрен пример использования http-сервисов для визуализации данных

1 стартмани

24.10.2019    12059    17    blackhole321    7    

Яндекс сервисы [Расширение]

Универсальные обработки WEB v8 1cv8.cf Абонемент ($m)

Расширение для работы с Яндекс-сервисами (предиктор,переводчик,проверка орфографии)

1 стартмани

24.10.2019    9771    7    noprogrammer    8    

Интеграция 1С с сайтом (магазином) WordPress (WooCommerce) с помощью Rest API сайта. Часть 1. Авторизация

WEB v8 Абонемент ($m)

Интеграция 1С с сайтом (магазином) WordPress (WooCommerce) с помощью функционала Rest API предоставляемого платформой (CMS) WordPress (WooCommerce). Без дополнительных приложений на PHP/вставьте сюда любой другой язык программирования/.

1 стартмани

12.10.2019    19520    18    osivv    30    

Трекинг номеров РПО в Почте России Промо

WEB Оптовая торговля Оптовая торговля v8 Оптовая торговля, дистрибуция, логистика Абонемент ($m)

Относительно недавно Почта России стандартизировала и описала сервисы получения информации о регистрируемом почтовом отправлении (РПО). Представляю вашему вниманию конфигурацию-обертку над сервисами Почты России. Она позволяет просто (http-запросы) и без изменений конфигурации подключить сервисы отслеживания к своим информационным системам.

2 стартмани

28.03.2016    24616    9    Smaylukk    3    

Telegram бот на 1С

WEB v8 1cv8.cf Абонемент ($m)

Telegram бот на 1С в виде внешней обработки, встраиваемой в типовые 1С 8.3.

1 стартмани

24.09.2019    12089    28    budidich    19    

Выгрузка номенклатуры в социальную сеть Вконтакте

WEB Оптовая торговля Розничная торговля Оптовая торговля Розничная торговля v8 1cv8.cf Абонемент ($m)

Обработка для быстрой и легкой выгрузки товаров Вконтакт. Так просто еще не было)))

2 стартмани

14.08.2019    11657    41    kaliuzhnyi    43    

Путеводитель по истории релизов

WEB v8 1cv8.cf Абонемент ($m)

Отчет по истории выпуска релизов и анализа информации по обновлениям.

5 стартмани

13.08.2019    11535    10    YPermitin    18    

Работа с картой. Кадастровый учет (Росреестр). Тематические карты Промо

WEB Рабочее место v8 v8::УФ 1cv8.cf Абонемент ($m)

Внешняя обработка для работы с картами в 1С. Получения изображения с публичной кадастровой карты России, построения тематических карт

5 стартмани

31.08.2017    15835    10    vipchep    0    

Подключение к сайту и отправка или получение данных по API (POST, GET...) (с описанием кода)

WEB v8 1cv8.cf Абонемент ($m)

Простая обработка по отправке или получение данных с любого сервера главное знать ресурс (выполняемую функцию) и тело запроса.

1 стартмани

12.08.2019    10023    17    MaxPowerr    5    

Использование HTTP-сервиса для создания "фронтенда" HTML/CSS/jQuery с кэшированием

WEB v8 1cv8.cf Абонемент ($m)

В статье описан способ создания "фронтенда" на HTML/CSS/jQuery и скрипт кеширования AJAX запросов на PHP.

1 стартмани

06.08.2019    12889    15    Sedaiko    24    

Конфигурация для обмена данными (интеграционная шина)

Внешние источники данных WEB v8 1cv8.cf Абонемент ($m)

Система позволяет организовать обмен данными, как с базами 1С, так и любыми другими приложениями. Система представляет собой отдельную конфигурацию. Система позволяет организовать гибкие возможности по настройке обмена. В качестве брокера сообщений, для передачи данных, используется отдельная самостоятельная конфигурация на 1С. Комплект поставки содержит файл расширения для "клиентской" части шины, данное расширение позволяет без снятия "ключа" организовать гибкий механизм обмена данными.

4 стартмани

08.07.2019    9440    26    miha-28    16    

Работа с картами 1С 4 в 1: Яндекс, Google , 2ГИС, OpenStreetMap(OpenLayers) Промо

Универсальные обработки WEB v8 1cv8.cf Абонемент ($m)

С каждым годом становится все очевидно, что использование онлайн-сервисов намного упрощает жизнь. К сожалению по картографическим сервисам условия пока жестковаты. Но, ориентируясь на будущее, я решил показать возможности API выше указанных сервисов: Инициализация карты Поиск адреса на карте с текстовым представлением Геокодинг Обратная поиск адреса по ее координатами Взаимодействие с картами - прием координат установленного на карте метки Построение маршрутов по указанным точками Кластеризация меток на карте при увеличении масштаба Теперь также поддержка тонкого и веб-клиента

1 стартмани

28.12.2012    99864    1144    Smaylukk    348    

Шаблон http-сервиса для вашего проекта

Внешние источники данных WEB Мобильная разработка v8 v8::Mobile 1cv8.cf Абонемент ($m)

Http-сервис для обмена данными в формате JSON. Обработчики этого сервиса находятся во внешней обработке, что позволяет дорабатывать его без изменения конфигурации. Также прилагаю пример мобильного приложения для работы с данным сервисом (получает номенклатуру и остатки на складе). Сервис очень быстро разворачивается и масштабируется под ваши задачи.

3 стартмани

04.05.2019    16961    66    MarkoSokolov    47    

1C + Python + Django Rest Framework + Vue.js. Опыт несложной full-stack разработки

Практика программирования Внешние источники данных Обмен через XML WEB Разработка v8 1cv8.cf Абонемент ($m)

В этой статье мы рассмотрим путь и основные моменты создания небольшого вэб-сервиса, который мы называем "Онлайн Прайс-лист". Выгрузка из 1С, бэкенд, фронтенд, получение заказов в 1С.

1 стартмани

22.04.2019    29326    32    riposte    63    

1С и WebKit. Вариант взаимодействия

WEB v8 1cv8.cf Абонемент ($m)

В результате перехода на WebKit тип свойства Документ у поля, имеющего вид ПолеHTMLДокумента, изменился с COMОбъект на ВнешнийОбъект. Также изменилась DOM модель документа, доступная через это свойство.

2 стартмани

23.02.2019    24318    69    mi1man    55    

Пример использования REST API Яндекс Диска Промо

WEB v8 1cv8.cf Абонемент ($m)

Пример использования REST API Яндекс Диска: чтение диска, добавление каталога, загрузка файла, скачивание файлов или каталогов, удаление файлов или каталогов.

1 стартмани

26.06.2018    21380    33    MKFreeUser    14    

Строим маршруты на картах в 1С с помощью OpenStreetMap, OSRM и Leaflet

WEB v8 1cv8.cf Транспорт, автопарки, такси Абонемент ($m)

Краткая статья о том как вывести на карту (в 1С) маршруты с помощью OpenStreetMap, OSRM и Leaflet. По данной системе очень мало примеров, но так как OpenStreetMap является бесплатным сервисом и не требует никаких ключей и регистраций, и является довольно мощным механизмом, решил написать небольшую статью "как это сделать?". В первую очередь скажу, все намного проще, если вы используете последнюю версию платформы (8.3.14), где есть поддержка практически всех браузеров (IE 11, EDGE, Mozilla), но что делать если у нас не самая свежая платформа, где поддержка только IE 9?

2 стартмани

12.02.2019    21075    83    Ditron    62    

Яндекс карта в документе "Заказ клиента" на закладке "Доставка". (Расширение) УТ 11.4

Обработка документов WEB Оптовая торговля Оптовая торговля v8 УТ11 Россия УУ Абонемент ($m)

Показ яндекс карты в документе "Заказ клиента" на закладке "Доставка" и печать карты для курьера с контактными данными. (Расширение)

3 стартмани

05.02.2019    9334    12    ret    6    

Яндекс карты 2.1. Построение маршрута. Передача длины маршрута в реквизит формы

WEB v8 1cv8.cf Абонемент ($m)

Пригодится как пример использования Яндекс карты 2.1 для построения маршрута.

1 стартмани

24.01.2019    11532    67    John_d    32    

Работа с публикациями "Инфостарт" Промо

Практика программирования О сообществе WEB v8 УУ Абонемент ($m)

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    18698    12    RocKeR_13    16    

HTTP-сервис + интерфейс jquery.mobile + QR-код. Остатки в магазине с устройства под Android, Apple, Windows без установки 1С

Управление торговлей Оптовая торговля Учет ТМЦ Оптовая торговля Учет ТМЦ v8 УУ Абонемент ($m)

Была поставлена задача: Предоставить продавцам магазина быстрый доступ к остаткам размеров товара на складе магазина не отходя от покупателя.

1 стартмани

16.01.2019    11370    13    John_d    7    

Веб-форма авторизации/регистрации/восстановления пароля для веб-клиента 1С с помощью HTML/CSS/PHP/HTTP-сервисов 1С

WEB v8 1cv8.cf Абонемент ($m)

Пришла в голову идея создать универсальную веб-форму входа в веб-клиент 1С на HTML/CSS/PHP/HTTP-сервисы 1С. Чтобы прямо как на нормальных сайтах. Заодно и для ознакомления с 1С с новой, для себя, стороны. Интересно было попробовать интеграцию PHP - 1С.

1 стартмани

08.11.2018    14957    25    Бэнни    18    

Загрузка чека онлайн-касс (загрузка товаров из чека)

Внешние источники данных WEB Кассовые операции Розничная торговля Кассовые операции Розничная торговля v8 1cv8.cf Абонемент ($m)

Обработка-пример, позволяет любому и из любой конфигурации загрузить информацию о товарах из чека(и не только) с сервера ФНС proverkacheka.nalog.ru

2 стартмани

08.10.2018    17023    31    echo77    44    

Конфигурация для просмотра публичных телеграм каналов Промо

WEB v8 Абонемент ($m)

Просмотр и каталогизация в более удобном виде публичных телеграм каналов, групп и чатов.

1 стартмани

02.06.2018    15987    10    DO_WHILE_LOOP    7    

SOAP для чайников

Обмен через XML WEB v8 1cv8.cf Абонемент ($m)

Немножко про SOAP сервис. И пример работы с подключением и получением данных по SOAP за 5 минут.

1 стартмани

05.09.2018    40281    36    dusha0020    18    

Класс-обработка “Работа с картами Яндекс”

Разработка внешних компонент WEB v8 Абонемент ($m)

Как показать точку или маршрут на карте Яндекс. Как получить координаты по строке адреса (геокодирование).

1 стартмани

01.08.2018    21215    182    RSConsulting    15    

HTTP Сервисы: Путь к своему сервису. Часть 1

Практика программирования WEB v8 1cv8.cf Абонемент ($m)

Уже много было написано про http-сервисы, но то и дело всплывают «Новые» статьи по обмену между базами V8 по COM, что «Немножко» удивляет. Решил внести свои 5 копеек, поработаем с http-сервисом.

1 стартмани

15.07.2018    73020    23    dsdred    24    

Обмен файловыми базами данных через Yandex диск Промо

WEB v8 Россия Абонемент ($m)

Выполнение операций обмена с Yandex диском для файловых БД, по протоколу WebDav, в автоматическом или ручном режимах.

1 стартмани

11.06.2018    15346    5    slimper    1    

Чтение сжатого gzip, deflate HTTP ответа сервера. Без ВК. Уменьши время загрузки и сократи трафик в 3 раза

WEB v8 1cv8.cf Абонемент ($m)

В платформе 1С:Предприятие не реализовано штатного механизма декодирования ответа веб серверов, в которых присутствует gzip сжатие. Некоторые использовали WinHttpRequest.5.1 , кто-то писал ВК. Друзья, хватит. Вот вам решение.

1 стартмани

08.06.2018    13507    68    Malfarion    16    

Интеграция между Atlassian Jira и 1С:Предприятие 8.3 используя Jira REST API (выборка, создание и изменение запросов, чтение, создание и удаление записей о работах, чтение комментариев и другие возможности)

Внешние источники данных WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Внешняя обработка на управляемой форме для 1С:Предприятие 8.3 по интеграции с Atlassian Jira используя Jira REST API. Ключевые функции: выборка запросов с использованием JQL; добавление и изменение запросов; добавление, изменение и удаление записей о работах; чтение комментариев к запросам; сохранение всех ключевых параметров между сеансами работы. Тестирование проводилось на платформе 1С (8.3.11.2954) совместно с JIRA Server platform (7.3.7)

1 стартмани

24.04.2018    27854    162    Ko1t    73    

Простая и пошаговая интеграция Яндекс-Алисы и 1С

WEB v8 Абонемент ($m)

Интеграция Алисы и 1С через http сервис на платформе 8.3.9. Используем виртуальный сервер, сертификат от letsencrypt, и делаем простые запросы к базе из Алисы.

1 стартмани

09.04.2018    20486    18    kiv1c    34    

Сервер push сообщений “Push0k“ 18.05 Промо

WEB v8 1cv8.cf Абонемент ($m)

Аналог других “мессенджеров“. Позволяет практически все то же самое, что и другие решения. За исключением смайлов, эмодзи, голосовой и видео связи. Основное отличие от других решений, открыта и доступна для изменения серверная и клиентская часть месенджера. Общедоступной серверной части нет, за серверную часть отвечаете вы сами.

1 стартмани

19.12.2017    16121    12    PloAl    20    

Построение маршрута доставки с расчётом расстояния для любой базы УФ Промо

Универсальные обработки WEB Оптовая торговля Оптовая торговля v8 v8::УФ 1cv8.cf Абонемент ($m)

Графическое изображение маршрутного листа по картам гугл. Работает на любой конфигурации с управляемыми формами. Использует новую версию api google-карт от 13.02.2018 года под IE11.

10 стартмани

24.02.2018    32366    41    KorotkovRV    16