Документы и Справочники в JSON

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

Разработка - Системная интеграция - Обмен через XML

JSON

58
Пример выгрузки всех данных Документа или Справочника в JSON

Весь код представлен здесь, скачивать обработки нет необходимости.

Для обычных форм:

&НаСервере
функция ПолучитьСтруктуру(знач Объект)
	Структура = Новый Структура(); /// реквизиты     
	Для каждого Реквизит из Объект.Метаданные().СтандартныеРеквизиты Цикл
		Если ТипЗнч(Объект[Реквизит.Имя]) = тип("Число") ИЛИ ТипЗнч(Объект[Реквизит.Имя]) = тип("Дата") ИЛИ ТипЗнч(Объект[Реквизит.Имя]) = тип("Булево") тогда
			Структура.Вставить(Реквизит.Имя, Объект[Реквизит.Имя]);
		иначе
			Структура.Вставить(Реквизит.Имя, Строка(Объект[Реквизит.Имя]));
		КонецЕсли;
	КонецЦикла; 
	
	Для каждого Реквизит из Объект.Метаданные().Реквизиты Цикл
		Если ТипЗнч(Объект[Реквизит.Имя]) = тип("Число") ИЛИ ТипЗнч(Объект[Реквизит.Имя]) = тип("Дата") ИЛИ ТипЗнч(Объект[Реквизит.Имя]) = тип("Булево") тогда
			Структура.Вставить(Реквизит.Имя, Объект[Реквизит.Имя]);
		иначе
			Структура.Вставить(Реквизит.Имя, Строка(Объект[Реквизит.Имя]));
		КонецЕсли;
		Если  ТипЗнч(Объект[Реквизит.Имя]) = тип("СправочникСсылка.Организации") ИЛИ ТипЗнч(Объект[Реквизит.Имя])  = тип("СправочникСсылка.Контрагенты") тогда
			Структура.Вставить(Реквизит.Имя+"ИНН", Объект[Реквизит.Имя].ИНН);
			Структура.Вставить(Реквизит.Имя+"КПП", Объект[Реквизит.Имя].КПП);
		КонецЕсли;
		//т.к. код или номер объекта для индефикации
		Если НЕ Объект[Реквизит.Имя] = Неопределено и Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(Объект[Реквизит.Имя])) тогда
			Структура.Вставить(Реквизит.Имя+"Код", Объект[Реквизит.Имя].Код);
		ИначеЕсли НЕ Объект[Реквизит.Имя] = Неопределено и Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(Объект[Реквизит.Имя])) тогда
			Структура.Вставить(Реквизит.Имя+"Номер", Объект[Реквизит.Имя].Номер);
		КонецЕсли;
	КонецЦикла;    
	
	Для каждого ТабличнаяЧасть из Объект.Метаданные().ТабличныеЧасти Цикл
		//вариант1 Теут //infostart.ru/profile/502386/ +
		ТаблизазНач = Объект[ТабличнаяЧасть.Имя].Выгрузить();
		Для Каждого Колонка Из ТаблизазНач.Колонки цикл
			Массив =  ТаблизазНач.ВыгрузитьКолонку(Колонка.Имя);
			МассивВстроку = Новый Массив;
			МассивКодНомер = Новый Массив;
			МассивАртикул = Новый Массив;
			МассивИНН = Новый Массив;
			МассивКПП = Новый Массив;
			
			Для Каждого Стр из Массив цикл
				Если ТипЗнч(Стр) = тип("Число") ИЛИ ТипЗнч(Стр) = тип("Дата")  ИЛИ ТипЗнч(Стр) = тип("Булево") тогда
					МассивВстроку.Добавить( Стр);
				иначе
					МассивВстроку.Добавить( Строка(Стр));
				КонецЕсли;
				Если  ТипЗнч(Стр) = тип("СправочникСсылка.Номенклатура") тогда
					МассивАртикул.Добавить(Стр.Артикул);
				КонецЕсли;
				Если  ТипЗнч(Стр) = тип("СправочникСсылка.Организации") ИЛИ ТипЗнч(Стр) = тип("СправочникСсылка.Контрагенты") тогда
					МассивИНН.Добавить(Стр.ИНН);
					МассивКПП.Добавить(Стр.КПП);
				КонецЕсли;
				//т.к. код или номер объекта для индефикации
				Если НЕ Стр = Неопределено и Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(Стр)) тогда
					МассивКодНомер.Добавить(Стр.Код);
				ИначеЕсли НЕ Стр = Неопределено и Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(Стр)) тогда
					МассивКодНомер.Добавить(Стр.Номер);
				КонецЕсли;
			КонецЦикла;
			Структура.Вставить(ТабличнаяЧасть.Имя+Колонка.Имя, МассивВстроку);
			//проверяем и добавляем дополнительные колонки
			Если МассивАртикул.Количество() > 0 тогда
				Структура.Вставить(ТабличнаяЧасть.Имя+Колонка.Имя + "Артикул", МассивАртикул);
			КонецЕсли;
			Если МассивКодНомер.Количество() > 0 тогда
				Структура.Вставить(ТабличнаяЧасть.Имя+Колонка.Имя + "КодНомер", МассивКодНомер);
			КонецЕсли;
			Если МассивКПП.Количество() > 0 тогда
				Структура.Вставить(ТабличнаяЧасть.Имя+Колонка.Имя + "КПП", МассивКодНомер);
			КонецЕсли;
			Если МассивИНН.Количество() > 0 тогда
				Структура.Вставить(ТабличнаяЧасть.Имя+Колонка.Имя + "ИНН", МассивКодНомер);
			КонецЕсли;
			
		КонецЦикла;
		//вариант1 -
		
		////вариант2 Будаев  //infostart.ru/profile/798953/  +
		//ТаблицаЗнач = Объект[ТабличнаяЧасть.Имя].Выгрузить();
		//МассивТабЧасти = Новый Массив;
		//Для Каждого СтрТЗ Из ТаблицаЗнач Цикл
		//    СтруктураСтр = Новый Структура;
		//    Для Каждого Колонка Из ТаблицаЗнач.Колонки Цикл
		//        Если ТипЗнч(СтрТЗ[Колонка.Имя]) = тип("Число") ИЛИ ТипЗнч(СтрТЗ[Колонка.Имя]) = тип("Дата") ИЛИ ТипЗнч(СтрТЗ[Колонка.Имя]) = тип("Булево") тогда
		//            СтруктураСтр.Вставить(Колонка.Имя, СтрТЗ[Колонка.Имя]);
		//        Иначе
		//            СтруктураСтр.Вставить(Колонка.Имя, Строка(СтрТЗ[Колонка.Имя]));
		//        КонецЕсли;
		//        
		//        Если НЕ СтрТЗ[Колонка.Имя] = Неопределено и Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(СтрТЗ[Колонка.Имя])) тогда
		//            СтруктураСтр.Вставить(Колонка.Имя+"Код", СтрТЗ[Колонка.Имя].Код);
		//        ИначеЕсли НЕ СтрТЗ[Колонка.Имя] = Неопределено и Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(СтрТЗ[Колонка.Имя])) тогда
		//            СтруктураСтр.Вставить(Колонка.Имя+"Номер", СтрТЗ[Колонка.Имя].Номер);
		//        КонецЕсли;
		//    КонецЦикла;
		//    МассивТабЧасти.Добавить(СтруктураСтр);
		//КонецЦикла;
		//Структура.Вставить(ТабличнаяЧасть.Имя, МассивТабЧасти);
		//// вариант2 -
	КонецЦикла;
	Структура.Вставить("ВыполнилВыгрузку", Пользователи.ТекущийПользователь().Наименование);
	Возврат Структура;
	
КонецФункции

Для управляемых форм

&НаКлиенте
Процедура ВыгрузитьВ_JSON(Команда)
	Если Объект.СсылкаНаОбъект = Неопределено ИЛИ Объект.Каталог = "" тогда
		Сообщить("Объект или каталог не выбран.");
		Возврат;
	КонецЕсли;
	//	ПримерКаталога = "C:\Folder\";
	ТипСсылки = ЭтоСправочникИлиДокумент();
	Если ТипСсылки = Неопределено тогда
		Сообщить("Для данного типа выгрузка не предусмотрена. Только справочники или документы");
		Возврат;
	КонецЕсли;		
	Каталог = Объект.Каталог;
	ИмяФайлаОтправки = Каталог + "\" + ТипСсылки+".json";
	ВыполнитьСериализацию(ИмяФайлаОтправки);
	Сообщить( ИмяФайлаОтправки);
КонецПроцедуры

Процедура ВыполнитьСериализацию(ИмяФайлаОтправки)
	ЗаписиJSON = Новый ЗаписьJSON;
	ЗаписиJSON.ОткрытьФайл(ИмяФайлаОтправки,,, Новый ПараметрыЗаписиJSON(, Символы.Таб));
	НастройкиСериал = Новый НастройкиСериализацииJSON;
	НастройкиСериал.ВариантЗаписиДаты  = ВариантЗаписиДатыJSON.ЛокальнаяДата;
	НастройкиСериал.ФорматСериализацииДаты  = ФорматДатыJSON.ISO;
	//СтруктураДокумента = ПолучитьСтруктуру(Объект.СсылкаНаОбъект);
	//ЗаписатьJSON(ЗаписиJSON, СтруктураДокумента, НастройкиСериал);
	Значение = Объект.СсылкаНаОбъект.ПолучитьОбъект();
	СериализаторXDTO.ЗаписатьJSON(ЗаписиJSON, Значение, НазначениеТипаXML.Явное);
	ЗаписиJSON.Закрыть();
КонецПроцедуры

Тестировалось на Управление производственным предприятием, редакция 1.3 (1.3.122.2) и 1С:Комплексная автоматизация 2 (2.4.7.141), платформа 8.3.13.1513

Пример результата

{
	"#type": "jcfg:DocumentObject.ЗаказКлиента",
	"#value": {
		"Ref": "0227135d-296e-11e5-92f1-0050568b35ac",
		"DeletionMark": false,
		"Date": "2017-07-13T18:46:57",
		"Number": "ТД00-000028",
		"Posted": true,
		"Партнер": "2f5f7e5c-f873-11df-aecd-0015e9b8c48d",
		"Контрагент": "2f5f7e5d-f873-11df-aecd-0015e9b8c48d",
		"Организация": "51ed67a3-7220-11df-b336-0011955cba6b",
		"Соглашение": "b49127d4-752b-11df-b338-0011955cba6b",
		"Сделка": "00000000-0000-0000-0000-000000000000",
		"Валюта": "26093579-c180-11e4-a7a9-000d884fd00d",
		"СуммаДокумента": 27000,
		"ГрафикОплаты": "f0e40f8c-7390-11df-b338-0011955cba6b",
		"ЖелаемаяДатаОтгрузки": "0001-01-01T00:00:00",
		"Склад": "6f87e83f-722c-11df-b336-0011955cba6b",
		"ЦенаВключаетНДС": true,
		"Менеджер": "a4212b3d-730a-11df-b338-0011955cba6b",
		"ДополнительнаяИнформация": "",
		"ДокументОснование": null,
		"НеОтгружатьЧастями": true,
		"Статус": "КОбеспечению",
		"МаксимальныйКодСтроки": 6,
		"ДатаСогласования": "2019-06-21T00:00:00",
		"Согласован": true,
		"ФормаОплаты": "ПлатежнаяКарта",
		"БанковскийСчет": "51ed67dd-7220-11df-b336-0011955cba6b",
		"БанковскийСчетКонтрагента": "50d41479-e4f3-11e0-af8f-0015e9b8c48d",
		"Касса": "00000000-0000-0000-0000-000000000000",
		"СуммаАвансаДоОбеспечения": 0,
		"СуммаПредоплатыДоОтгрузки": 0,
		"ДатаОтгрузки": "2017-07-16T00:00:00",
		"АдресДоставки": "Москва Нагорная улица 34",
		"НалогообложениеНДС": "ПродажаОблагаетсяНДС",
		"СкидкиРассчитаны": true,
		"ХозяйственнаяОперация": "РеализацияКлиенту",
		"Комментарий": "",
		"НомерПоДаннымКлиента": "",
		"ДатаПоДаннымКлиента": "0001-01-01T00:00:00",
		"Грузоотправитель": "00000000-0000-0000-0000-000000000000",
		"Грузополучатель": "00000000-0000-0000-0000-000000000000",
		"БанковскийСчетГрузоотправителя": "00000000-0000-0000-0000-000000000000",
		"БанковскийСчетГрузополучателя": "00000000-0000-0000-0000-000000000000",
		"ГруппаФинансовогоУчета": "00000000-0000-0000-0000-000000000000",
		"КартаЛояльности": "00000000-0000-0000-0000-000000000000",
		"Договор": "00000000-0000-0000-0000-000000000000",
		"Подразделение": "51ed67e1-7220-11df-b336-0011955cba6b",
		"Автор": {
			"#type": "jcfg:CatalogRef.Пользователи",
			"#value": "a4212b3d-730a-11df-b338-0011955cba6b"
		},
		"ПорядокРасчетов": "ПоЗаказамНакладным",
		"Назначение": "0227135c-296e-11e5-92f1-0050568b35ac",
		"СпособДоставки": "Самовывоз",
		"ПеревозчикПартнер": "00000000-0000-0000-0000-000000000000",
		"ЗонаДоставки": "00000000-0000-0000-0000-000000000000",
		"ВремяДоставкиС": "0001-01-01T00:00:00",
		"ВремяДоставкиПо": "0001-01-01T00:00:00",
		"АдресДоставкиПеревозчика": "",
		"АдресДоставкиЗначенияПолей": "<КонтактнаяИнформация xmlns=\"http://www.v8.1c.ru/ssl/contactinfo\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" Представление=\"Москва Нагорная улица 34\"><Комментарий/><Состав xsi:type=\"Адрес\"><Состав xsi:type=\"АдресРФ\"/></Состав></КонтактнаяИнформация>",
		"АдресДоставкиПеревозчикаЗначенияПолей": "",
		"ДополнительнаяИнформацияПоДоставке": "",
		"КонтактноеЛицо": "2f5f7e5e-f873-11df-aecd-0015e9b8c48d",
		"Руководитель": "bb251f0d-6b94-11e2-bfed-0015e9b8c48d",
		"ГлавныйБухгалтер": "bb251f10-6b94-11e2-bfed-0015e9b8c48d",
		"ВернутьМногооборотнуюТару": false,
		"СрокВозвратаМногооборотнойТары": 0,
		"СостояниеЗаполненияМногооборотнойТары": "",
		"СуммаВозвратнойТары": 0,
		"НазначениеПлатежа": "",
		"ТребуетсяЗалогЗаТару": false,
		"Приоритет": "260937c5-c180-11e4-a7a9-000d884fd00d",
		"ИдентификаторПлатежа": "ЗК1707ТД000000280004",
		"ОсобыеУсловияПеревозки": false,
		"ОсобыеУсловияПеревозкиОписание": "",
		"НаправлениеДеятельности": "00000000-0000-0000-0000-000000000000",
		"ПорядокОплаты": "РасчетыВРубляхОплатаВРублях",
		"Товары": [
			{
				"ДатаОтгрузки": "2017-07-16T00:00:00",
				"Номенклатура": "bd72d927-55bc-11d9-848a-00112f43529a",
				"Характеристика": "00000000-0000-0000-0000-000000000000",
				"Упаковка": "f0658892-7924-11df-b33a-0011955cba6b",
				"КоличествоУпаковок": 3,
				"Количество": 3,
				"ВидЦены": "73867e74-73c8-11df-b338-0011955cba6b",
				"Цена": 6750,
				"Сумма": 20250,
				"СтавкаНДС": "НДС18",
				"СуммаНДС": 3088.98,
				"СуммаСНДС": 20250,
				"ПроцентРучнойСкидки": 0,
				"СуммаРучнойСкидки": 0,
				"ПроцентАвтоматическойСкидки": 0,
				"СуммаАвтоматическойСкидки": 0,
				"ПричинаОтмены": "00000000-0000-0000-0000-000000000000",
				"КодСтроки": 1,
				"Отменено": false,
				"КлючСвязи": 1,
				"Склад": "6f87e83f-722c-11df-b336-0011955cba6b",
				"СрокПоставки": 0,
				"Содержание": "",
				"СтатусУказанияСерий": 0,
				"ВариантОбеспечения": "Обособленно",
				"Серия": "00000000-0000-0000-0000-000000000000",
				"НоменклатураНабора": "00000000-0000-0000-0000-000000000000",
				"ХарактеристикаНабора": "00000000-0000-0000-0000-000000000000"
			},
			{
				"ДатаОтгрузки": "2017-07-16T00:00:00",
				"Номенклатура": "e8a71fee-55bc-11d9-848a-00112f43529a",
				"Характеристика": "00000000-0000-0000-0000-000000000000",
				"Упаковка": "f0658899-7924-11df-b33a-0011955cba6b",
				"КоличествоУпаковок": 1,
				"Количество": 1,
				"ВидЦены": "73867e74-73c8-11df-b338-0011955cba6b",
				"Цена": 6750,
				"Сумма": 6750,
				"СтавкаНДС": "НДС18",
				"СуммаНДС": 1029.66,
				"СуммаСНДС": 6750,
				"ПроцентРучнойСкидки": 0,
				"СуммаРучнойСкидки": 0,
				"ПроцентАвтоматическойСкидки": 0,
				"СуммаАвтоматическойСкидки": 0,
				"ПричинаОтмены": "00000000-0000-0000-0000-000000000000",
				"КодСтроки": 6,
				"Отменено": false,
				"КлючСвязи": 2,
				"Склад": "6f87e83f-722c-11df-b336-0011955cba6b",
				"СрокПоставки": 0,
				"Содержание": "",
				"СтатусУказанияСерий": 0,
				"ВариантОбеспечения": "Обособленно",
				"Серия": "00000000-0000-0000-0000-000000000000",
				"НоменклатураНабора": "00000000-0000-0000-0000-000000000000",
				"ХарактеристикаНабора": "00000000-0000-0000-0000-000000000000"
			}
		],
		"ЭтапыГрафикаОплаты": [
			{
				"ВариантОплаты": "КредитПослеОтгрузки",
				"ДатаПлатежа": "2017-07-18T00:00:00",
				"ПроцентПлатежа": 100,
				"СуммаПлатежа": 27000,
				"ПроцентЗалогаЗаТару": 100,
				"СуммаЗалогаЗаТару": 0,
				"СуммаОтклоненияМерныхТоваров": 0,
				"Сдвиг": 0
			}
		]
	}
}

Если кого то интересует через получение структуры документа
 

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

Пример результата через получение структуры документа
 

{
	"Проведен": true,
	"Ссылка": "Заказ клиента ТД00-000028 от 13.07.2017 18:46:57",
	"ПометкаУдаления": false,
	"Дата": "2017-07-13T18:46:57",
	"Номер": "ТД00-000028",
	"Партнер": "Альфа",
	"ПартнерКод": "ЦУ-00000002",
	"Контрагент": "Альфа",
	"КонтрагентИНН": "7705260667",
	"КонтрагентКПП": "770526002",
	"КонтрагентКод": "",
	"Организация": "Торговый дом \"Комплексный\"",
	"ОрганизацияИНН": "9999115007",
	"ОрганизацияКПП": "999911500",
	"ОрганизацияКод": "",
	"Соглашение": "Оптовые продажи (предоплата)",
	"СоглашениеКод": "",
	"Сделка": "",
	"СделкаКод": "           ",
	"Валюта": "RUB",
	"ВалютаКод": "643",
	"СуммаДокумента": 27000,
	"ГрафикОплаты": "Предоплата (любая)",
	"ГрафикОплатыКод": "",
	"ЖелаемаяДатаОтгрузки": "0001-01-01T00:00:00",
	"Склад": "Центральный склад",
	"СкладКод": "",
	"ЦенаВключаетНДС": true,
	"Менеджер": "Федоров Борис Михайлович",
	"МенеджерКод": "",
	"ДополнительнаяИнформация": "",
	"ДокументОснование": "",
	"НеОтгружатьЧастями": true,
	"Статус": "К выполнению / В резерве",
	"МаксимальныйКодСтроки": 6,
	"ДатаСогласования": "2019-06-21T00:00:00",
	"Согласован": true,
	"ФормаОплаты": "Платежная карта",
	"БанковскийСчет": "АКБ \"ВПБ\" (ЗАО), Торговый дом \"Комплексный\" (RUB)",
	"БанковскийСчетКод": "",
	"БанковскийСчетКонтрагента": "\"МАСТЕР-БАНК\" (ОАО) (RUB)",
	"БанковскийСчетКонтрагентаКод": "",
	"Касса": "",
	"КассаКод": "",
	"СуммаАвансаДоОбеспечения": 0,
	"СуммаПредоплатыДоОтгрузки": 0,
	"ДатаОтгрузки": "2017-07-16T00:00:00",
	"АдресДоставки": "Москва Нагорная улица 34",
	"НалогообложениеНДС": "Продажа облагается НДС",
	"СкидкиРассчитаны": true,
	"ХозяйственнаяОперация": "Реализация",
	"Комментарий": "",
	"НомерПоДаннымКлиента": "",
	"ДатаПоДаннымКлиента": "0001-01-01T00:00:00",
	"Грузоотправитель": "",
	"ГрузоотправительИНН": "",
	"ГрузоотправительКПП": "",
	"ГрузоотправительКод": "",
	"Грузополучатель": "",
	"ГрузополучательИНН": "",
	"ГрузополучательКПП": "",
	"ГрузополучательКод": "",
	"БанковскийСчетГрузоотправителя": "",
	"БанковскийСчетГрузоотправителяКод": "",
	"БанковскийСчетГрузополучателя": "",
	"БанковскийСчетГрузополучателяКод": "",
	"ГруппаФинансовогоУчета": "",
	"ГруппаФинансовогоУчетаКод": "",
	"КартаЛояльности": "",
	"КартаЛояльностиКод": "",
	"Договор": "",
	"ДоговорКод": "",
	"Подразделение": "Отдел продаж торгового направления",
	"ПодразделениеКод": "000000002",
	"Автор": "Федоров Борис Михайлович",
	"АвторКод": "",
	"ПорядокРасчетов": "По заказам",
	"Назначение": "Альфа, ТД00-28, 13.07.2017 (Заказ клиента)",
	"НазначениеКод": "",
	"СпособДоставки": "Самовывоз",
	"ПеревозчикПартнер": "",
	"ПеревозчикПартнерКод": "           ",
	"ЗонаДоставки": "",
	"ЗонаДоставкиКод": "",
	"ВремяДоставкиС": "0001-01-01T00:00:00",
	"ВремяДоставкиПо": "0001-01-01T00:00:00",
	"АдресДоставкиПеревозчика": "",
	"АдресДоставкиЗначенияПолей": "<КонтактнаяИнформация xmlns=\"http://www.v8.1c.ru/ssl/contactinfo\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" Представление=\"Москва Нагорная улица 34\"><Комментарий/><Состав xsi:type=\"Адрес\"><Состав xsi:type=\"АдресРФ\"/></Состав></КонтактнаяИнформация>",
	"АдресДоставкиПеревозчикаЗначенияПолей": "",
	"ДополнительнаяИнформацияПоДоставке": "",
	"КонтактноеЛицо": "Петров Семен Васильевич",
	"КонтактноеЛицоКод": "",
	"Руководитель": "Исаков О.В.",
	"РуководительКод": "",
	"ГлавныйБухгалтер": "Кострова В.Б.",
	"ГлавныйБухгалтерКод": "",
	"ВернутьМногооборотнуюТару": false,
	"СрокВозвратаМногооборотнойТары": 0,
	"СостояниеЗаполненияМногооборотнойТары": "",
	"СуммаВозвратнойТары": 0,
	"НазначениеПлатежа": "",
	"ТребуетсяЗалогЗаТару": false,
	"Приоритет": "Средний",
	"ПриоритетКод": "",
	"ИдентификаторПлатежа": "ЗК1707ТД000000280004",
	"ОсобыеУсловияПеревозки": false,
	"ОсобыеУсловияПеревозкиОписание": "",
	"НаправлениеДеятельности": "",
	"НаправлениеДеятельностиКод": "",
	"ПорядокОплаты": "Расчеты в рублях, оплата в рублях",
	"ТоварыНомерСтроки": [
		1,
		2
	],
	"ТоварыДатаОтгрузки": [
		"2017-07-16T00:00:00",
		"2017-07-16T00:00:00"
	],
	"ТоварыНоменклатура": [
		"Комбайн кухонный BINATONE FP 67",
		"Соковыжималка  BINATONE JE 102"
	],
	"ТоварыНоменклатураАртикул": [
		"КВ- 900",
		"СО-77777"
	],
	"ТоварыНоменклатураКодНомер": [
		"000000057  ",
		"000000090  "
	],
	"ТоварыХарактеристика": [
		"",
		""
	],
	"ТоварыХарактеристикаКодНомер": [
		"",
		""
	],
	"ТоварыУпаковка": [
		"шт (1 шт)",
		"шт (1 шт)"
	],
	"ТоварыУпаковкаКодНомер": [
		"    ",
		"    "
	],
	"ТоварыКоличествоУпаковок": [
		3,
		1
	],
	"ТоварыКоличество": [
		3,
		1
	],
	"ТоварыВидЦены": [
		"Оптовая",
		"Оптовая"
	],
	"ТоварыВидЦеныКодНомер": [
		"",
		""
	],
	"ТоварыЦена": [
		6750,
		6750
	],
	"ТоварыСумма": [
		20250,
		6750
	],
	"ТоварыСтавкаНДС": [
		"18%",
		"18%"
	],
	"ТоварыСуммаНДС": [
		3088.98,
		1029.66
	],
	"ТоварыСуммаСНДС": [
		20250,
		6750
	],
	"ТоварыПроцентРучнойСкидки": [
		0,
		0
	],
	"ТоварыСуммаРучнойСкидки": [
		0,
		0
	],
	"ТоварыПроцентАвтоматическойСкидки": [
		0,
		0
	],
	"ТоварыСуммаАвтоматическойСкидки": [
		0,
		0
	],
	"ТоварыПричинаОтмены": [
		"",
		""
	],
	"ТоварыПричинаОтменыКодНомер": [
		"",
		""
	],
	"ТоварыКодСтроки": [
		1,
		6
	],
	"ТоварыОтменено": [
		false,
		false
	],
	"ТоварыКлючСвязи": [
		1,
		2
	],
	"ТоварыСклад": [
		"Центральный склад",
		"Центральный склад"
	],
	"ТоварыСкладКодНомер": [
		"",
		""
	],
	"ТоварыСрокПоставки": [
		0,
		0
	],
	"ТоварыСодержание": [
		"",
		""
	],
	"ТоварыСтатусУказанияСерий": [
		0,
		0
	],
	"ТоварыВариантОбеспечения": [
		"Обеспечивать обособленно",
		"Обеспечивать обособленно"
	],
	"ТоварыСерия": [
		"",
		""
	],
	"ТоварыСерияКодНомер": [
		"",
		""
	],
	"ТоварыНоменклатураНабора": [
		"",
		""
	],
	"ТоварыНоменклатураНабораАртикул": [
		"",
		""
	],
	"ТоварыНоменклатураНабораКодНомер": [
		"           ",
		"           "
	],
	"ТоварыХарактеристикаНабора": [
		"",
		""
	],
	"ТоварыХарактеристикаНабораКодНомер": [
		"",
		""
	],
	"ЭтапыГрафикаОплатыНомерСтроки": [
		1
	],
	"ЭтапыГрафикаОплатыВариантОплаты": [
		"Кредит (плановый)"
	],
	"ЭтапыГрафикаОплатыДатаПлатежа": [
		"2017-07-18T00:00:00"
	],
	"ЭтапыГрафикаОплатыПроцентПлатежа": [
		100
	],
	"ЭтапыГрафикаОплатыСуммаПлатежа": [
		27000
	],
	"ЭтапыГрафикаОплатыПроцентЗалогаЗаТару": [
		100
	],
	"ЭтапыГрафикаОплатыСуммаЗалогаЗаТару": [
		0
	],
	"ЭтапыГрафикаОплатыСуммаОтклоненияМерныхТоваров": [
		0
	],
	"ЭтапыГрафикаОплатыСдвиг": [
		0
	],
	"СкидкиНаценкиНомерСтроки": [],
	"СкидкиНаценкиКлючСвязи": [],
	"СкидкиНаценкиСкидкаНаценка": [],
	"СкидкиНаценкиСумма": [],
	"СкидкиНаценкиНапомнитьПозже": [],
	"ДополнительныеРеквизитыНомерСтроки": [],
	"ДополнительныеРеквизитыСвойство": [],
	"ДополнительныеРеквизитыЗначение": [],
	"ДополнительныеРеквизитыТекстоваяСтрока": [],
	"ВыполнилВыгрузку": "Орлов Александр Владимирович"
}

 

58

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

Наименование Файл Версия Размер
Обработка выгрузки в JSON, обычные формы:
.epf 8,15Kb
19.06.19
4
.epf 8,15Kb 4 Скачать
Документы и Справочники в JSON, управляемые формы:
.epf 7,79Kb
19.06.19
8
.epf 7,79Kb 8 Скачать

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

Лучшие комментарии
1. ArchLord42 68 21.06.19 09:44 Сейчас в теме
На что готовы люди, только лишь бы не читать справку, вот же давно (с 8.3.7) имеется из коробки это вот все.

http://v8.1c.ru/o7/201501json/index.htm
RFP; rozer; CyberCerber; wowik; Yashazz; BESL; mnemchinov; Xershi; DarkAn; Rustig; Поручик; darkmessiahan; awk; magvay_k; +14 Ответить
Остальные комментарии
Избранное Подписка Сортировка: Древо
1. ArchLord42 68 21.06.19 09:44 Сейчас в теме
На что готовы люди, только лишь бы не читать справку, вот же давно (с 8.3.7) имеется из коробки это вот все.

http://v8.1c.ru/o7/201501json/index.htm
RFP; rozer; CyberCerber; wowik; Yashazz; BESL; mnemchinov; Xershi; DarkAn; Rustig; Поручик; darkmessiahan; awk; magvay_k; +14 Ответить
2. darkmessiahan 101 21.06.19 10:21 Сейчас в теме
(1) обновил)
только возможностей для манипуляций стало меньше
3. Rustig 1195 21.06.19 11:08 Сейчас в теме
(1)"читать справку" ?
а сами прислали заметки из зазеркалья....

за ссылку спасибо!
4. ArchLord42 68 21.06.19 11:55 Сейчас в теме
(3) если что урл зазеркалья https://wonderland.v8.1c.ru/

Upd: это старое зазеркалье да, но в справке тоже есть это, только не так обширнл описано
darkmessiahan; +1 Ответить
5. 🅵🅾️🆇 431 21.06.19 12:46 Сейчас в теме
Если что, СериализаторXDTO - не то что от вас будут ожидать в большинстве случаев.

Если с кемт интегрируетесь, лучше действовать через стандартную сериализацию, а для ссылок и сложных объектов там в конструкторе можно указать функцию преобразования в примитивы.
6. darkmessiahan 101 21.06.19 12:57 Сейчас в теме
7. 🅵🅾️🆇 431 21.06.19 12:59 Сейчас в теме
(6)
Вот вам пример)

Функция СериализоватьJSON(Данные, ФункцияПреобразования = "БыстроJSON") Экспорт
    ЗаписьJSON                                              = Новый ЗаписьJSON;
    ЗаписьJSON.УстановитьСтроку();
    НастройкиСериализации                                   = Новый НастройкиСериализацииJSON();
    НастройкиСериализации.СериализовыватьМассивыКакОбъекты  = Ложь;
	НастройкиСериализации.ФорматСериализацииДаты            = ФорматДатыJSON.ISO;
	НастройкиСериализации.ВариантЗаписиДаты                 = ВариантЗаписиДатыJSON.ЛокальнаяДата; // ВариантЗаписиДатыJSON.ЛокальнаяДатаСоСмещением;	
    ЗаписатьJSON(ЗаписьJSON, Данные, НастройкиСериализации, ФункцияПреобразования, веб_сериализация);
    Возврат ЗаписьJSON.Закрыть();
КонецФункции // СериализоватьJSON()
//************************************************************
Функция БыстроJSON(Знач Свойство, Значение, ДополнительныеПараметры, Отказ) Экспорт
	
	// Таблица значений
	Если ТипЗнч(Значение) = Тип("ТаблицаЗначений") Тогда
		/// TODO: преобразовывать ссылки из таблицы значений одним запросом, чтоб снизить количество обращений к базе данных.
		/// ...
			
		// Переведем названия колонок на латиницу
		Для Каждого Колонка Из Значение.Колонки Цикл
			matchingFieldNames  = веб_заявки_повт.matchingFieldNames(, Истина);
			ИмяЛат              = matchingFieldNames[НРег(Колонка.Имя)]; 
			Колонка.Имя         = ?(ИмяЛат=Неопределено, Колонка.Имя, ИмяЛат);			
		КонецЦикла;
		
		// Преобразуем в массив структур
		Возврат ОбщегоНазначения.ТаблицаЗначенийВМассив(Значение);		
	КонецЕсли;
	
	Возврат XMLСтрока(Значение);
КонецФункции // БыстроJSON()
Показать
CyberCerber; AlexBober78; mvxyz; darkmessiahan; +4 Ответить
8. 🅵🅾️🆇 431 21.06.19 15:26 Сейчас в теме
(7)
Ссылки, например, можете отдавать в виде структур, в которых фигурируют данные из XMLСтрока() и Метаданные()

Для справочников, дополнительно код, для документов - номер и дату.

Ну и тд и тп.
9. Yashazz 2855 23.06.19 18:34 Сейчас в теме
Мда, ценность публикации ниже плинтуса.

А ещё есть CommerceML )))

А автору советую поизучать десериализацию дат, там неслабые грабли на самом деле спрятаны.
CyberCerber; acanta; +2 Ответить
11. darkmessiahan 101 24.06.19 10:54 Сейчас в теме
(9) нужна была выгрузка на сайт.
1) Принимающая сторона из всех вариантов выбрала мой. Через получение структуры документов и сериализации каждого реквизита отдельно. Да в 99% случаев такой способ менее подходит чем типовые.

2) В процессе гуглинга и поиске на инфостарте про JSON маловато информации. Хотелось запустить тему, устроить holywar. Что бы новички натыкались на эту тему, и черпали для себя новую полезную информацию, в т. ч. и я.
10. Светлый ум 228 24.06.19 09:34 Сейчас в теме
Зато комментарии про сериализацию, дадут пищу для размышления многим. Польза есть всегда.
Eleepod; ErshKUS; CyberCerber; darkmessiahan; +4 Ответить
12. Yashazz 2855 26.06.19 17:13 Сейчас в теме
(10) Следуя вашей логике, я могу замутить любой срач, опубликовав любую хрень, и потом отмазываться полезностью комментов, написанных более квалифицированными специалистами. Не смешно.
13. darkmessiahan 101 26.06.19 17:20 Сейчас в теме
(12) вы всех так достаете, или я чем то выделился?)
моя публикация попадет в топ 10 на инфостарте, по бессмысленности?)
14. Yashazz 2855 26.06.19 18:40 Сейчас в теме
(13) Не переводите на личности. По сути моего вопроса есть что ответить? Что делать публикации только ради комментов - это правильно?
15. e.budaev 10.07.19 11:22 Сейчас в теме
Табличную часть структуры по другому лучше формировать, н-р:

ТаблицаЗнач = Объект[ТабличнаяЧасть.Имя].Выгрузить();
		МассивТабЧасти = Новый Массив;
		Для Каждого СтрТЗ Из ТаблицаЗнач Цикл
			СтруктураСтр = Новый Структура;
			Для Каждого Колонка Из ТаблицаЗнач.Колонки Цикл
				Если ТипЗнч(СтрТЗ[Колонка.Имя]) = тип("Число") ИЛИ ТипЗнч(СтрТЗ[Колонка.Имя]) = тип("Дата") ИЛИ ТипЗнч(СтрТЗ[Колонка.Имя]) = тип("Булево") тогда
					СтруктураСтр.Вставить(Колонка.Имя, СтрТЗ[Колонка.Имя]);
				Иначе
					СтруктураСтр.Вставить(Колонка.Имя, Строка(СтрТЗ[Колонка.Имя]));
				КонецЕсли;
				
				Если НЕ СтрТЗ[Колонка.Имя] = Неопределено и Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(СтрТЗ[Колонка.Имя])) тогда
					СтруктураСтр.Вставить(Колонка.Имя+"Код", СтрТЗ[Колонка.Имя].Код);
				ИначеЕсли НЕ СтрТЗ[Колонка.Имя] = Неопределено и Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(СтрТЗ[Колонка.Имя])) тогда
					СтруктураСтр.Вставить(Колонка.Имя+"Номер", СтрТЗ[Колонка.Имя].Номер);
				КонецЕсли;
			КонецЦикла;
			МассивТабЧасти.Добавить(СтруктураСтр);
		КонецЦикла;
		Структура.Вставить(ТабличнаяЧасть.Имя, МассивТабЧасти);
Показать
darkmessiahan; +1 Ответить
Оставьте свое сообщение

См. также

Преобразование XML файла в переменную структура, Загрузка в дерево значений 26

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Обмен через XML

Обработка, демонстрирующая работу процедур и функций по преобразованию XML файла в дерево значений, а также в переменную типа структура.

1 стартмани

14.09.2019    2448    5    vik070777    18       

XDTO для чайников 110

Статья Программист Архив с данными v8 1cv8.cf Абонемент ($m) Обмен через XML

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

1 стартмани

29.05.2019    9743    12    HAMMER_59    33       

Универсальный обмен данными XML (с гибкими отборами и сохранением вариантов настроек) 27

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Обмен через XML

Обработка предназначена для загрузки и выгрузки данных по правилам обмена в любых конфигурациях, реализованных на платформе 1С:Предприятие 8.3. Преимуществом перед типовой обработкой является добавленный функционал: #1. Установка произвольных фильтров на выгружаемые объекты при помощи механизма системы компоновки данных #2. Сохранение различных вариантов настроек (сохраняются правила обмена, фильтры выгрузки, параметры, настройки обработки) - что позволяет гибко настроить в базе-источнике фильтры для выгрузки объектов по различным правилам обмена для различных баз-приемников, сохранить выполненные настройки и в будущем уже пользоваться этими вариантами настроек. Проверялась на 1С:ERP Управление предприятием 2.4.7.141.

1 стартмани

29.04.2019    2902    47    sapervodichka    17       

Выгрузка и загрузка данных XML 8.3 (в полной мере возможности реализованы для версии 1С:Предприятия 8.3 выше версии 8.3.5) 18

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Россия Абонемент ($m) Обмен через XML

В этой форме всегда не хватало конструктора запросов для удобной выгрузки уникальных элементов по ссылке. Теперь он здесь есть. Как только стало возможным создавать конструктор запроса в управляемых формах, я добавил её в стандартную обработку. Необходимо напомнить, что обработка функционирует полноценно только с версии 8.3.5 1С:Предприятия 8.3.

1 стартмани

24.04.2019    2420    24    AlexandrSmith    1       

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

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

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

1 стартмани

22.04.2019    15901    14    riposte    63       

Перенос данных с использованием XDTO 33

Статья Программист Архив с данными v8 Россия Абонемент ($m) Обмен через XML

Использование объекта типа "ОбъектXDTO" для переноса данных из одной конфигурации в другую

1 стартмани

21.04.2019    4024    4    axae    8       

Выгрузка и загрузка данных XML с гибкими отборами 34

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Обмен через XML Перенос данных из 1C8 в 1C8

Обработка выгрузки и загрузки данных через XML между идентичными конфигурациями с возможностью установки произвольных отборов на выгружаемые объекты.

1 стартмани

07.04.2019    4151    108    sapervodichka    7       

Перенос данных КА 1.1 -> КА 2 19

Инструменты и обработки Программист Документ XML v8 КА1 КА2 Россия Абонемент ($m) Перенос данных из 1C8 в 1C8 Обмен через XML

Перенос данных КА 1.1 => КА 2 с помощью правил обмена данными в формате XML КД 2 (переносятся остатки, документы, справочная информация).

5 стартмани

20.03.2019    5398    103    gudogu    107       

Ручная выгрузка и загрузка данных через универсальный обмен данными с настройками (расширение, платформа 8.3+) 45

Инструменты и обработки Программист Архив с данными v8 Розница УНФ ERP2 БП3.0 УТ11 КА2 ЗУП3.x Абонемент ($m) Обработка документов Обработка справочников Обмен через XML Перенос данных из 1C8 в 1C8

Данное расширение (не требует изменения конфигураций) служит как надстройка для конфигураций, у которых обмен между базами происходит через универсальный формат (EnterpriseData), с использованием стандартных правил конвертации, которые уже есть в конфигурации. Интерфейс адаптирован для простых пользователей, сделан общий отбор по Организации для всех документов, имеется пару настроек для передачи в параметры конвертации, которые расположены в общем модуле конфигураций, а так же есть возможность выбора запуска - в фоне или в текущем сеансе. Теперь не нужно настраивать обмен между базами, для того чтоб просто перенести нужные документы. Подходит точно для УТ 11.4, БП 3.0.67, КА 2.4.5, Розница 2.2.9 (Обновление 1.2 от 02.03.2019)

2 стартмани

19.01.2019    7177    84    hakerxp    8       

Универсальный обмен данными в формате XML (2.1.8) 8.3 УФ с отбором и без модальности 16

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 v8::УФ 1cv8.cf Абонемент ($m) Обмен через XML

К типовой обработке "Универсальный обмен данными в формате XML" добавлены отбор и возможность работать в конфигурациях с отключенным режимом модальности.

1 стартмани

07.11.2018    10081    215    nicxxx    5       

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

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Обмен через XML WEB

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

1 стартмани

05.09.2018    18454    25    dusha0020    18       

003. Почему я больше не люблю "Выгрузку Загрузку XML" 16

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Обмен через XML

Ниже будет много букаф, но если коротко — можно ускорить этот инструмент в 1000 раз

1 стартмани

03.09.2018    4201    7    Nikola23    8       

Простой эмулятор вызова веб-сервиса 1С с просмотром результата 24

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 1cv8.cf Россия Абонемент ($m) Обмен через XML WEB

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

1 стартмани

24.04.2018    7352    17    anvolkov1cbit    9       

Правила конвертации документов ЗУП 2.5 - ЗУП 3.1 44

Инструменты и обработки Системный администратор Программист Бухгалтер Документ XML v8 v8::СПР ЗУП2.5 ЗУП3.x Россия БУ Зарплата Абонемент ($m) Обмен через XML Перенос данных из 1C8 в 1C8

Правила конвертации документов ЗУП 2.5 - ЗУП 3.1. Позволяют вести параллельную работу в базах ЗУП редакций 2,5 и 3.1.

10 стартмани

06.03.2018    24325    123    kostya_whiskas    23       

Организация обмена с базой филиала (розничного магазина) в торговой сети через XML (универсальный обмен) 70

Статья Программист Архив с данными v8 КД УТ11 Розничная и сетевая торговля (FMCG) Розничная торговля Абонемент ($m) Обмен через XML Перенос данных из 1C8 в 1C8

В статье по шагам рассматривается создание обмена между центральной базой и базами филиалов на базе конфигурации УТ 11. Для решения поставленной задачи было решено не использовать РИБ, т.к. требуется односторонний обмен ограниченным набором данных, к тому же по определенным условиям. Обмен реализован на основе типовой синхронизации на основе универсального обмена в формате EnterpriseData. Данная публикация может быть полезна внедренцам, которые работают с торговыми сетями, в том числе по модели франчайзинга.

1 стартмани

26.02.2018    24972    14    Kutuzov    18       

Создание в 1С 7.7 XML в формате EnterpriseData (универсальный формат обмена), версия 1.5. Инструкции и примеры переноса данных из устаревшей конфигурации 1С 7.7 в любую современную 1С 8.3, поддерживающую EnterpriseData, через Конвертацию данных 3 31

Инструменты и обработки Программист Внешняя обработка (ert,epf) v7.7 v8 1cv7.md Россия Абонемент ($m) Перенос данных из 1С7.7 в 1C8.X Обмен через XML

Воспользоваться современным средством переноса данных "Конвертация данных 3.0.5.3" можно только выгрузив из системы - источника данных XML в формате обмена данными EnterpriseData. В этой публикации можно скачать приемы выгрузки из 1С 7.7 универсального формата обмена для Конвертации данных 3. Выполняем перенос данных из «1С:Предприятие 7.7» в «1С:Предприятие 8.3». Используем Конвертацию данных КД 3.0 из 1c 7.7 --> 1С 8.3. На первой стадии еще не опубликовано иного способа подложить файл для Конвертации данных 3 кроме как сформировать его вручную, постараемся решить данную проблему.

1 стартмани

26.02.2018    25938    45    ksnik    3       

Пример заполнения/создания файла XML из XSD схемы, используя XDTO 128

Статья Программист Документ XML v8 1cv8.cf Абонемент ($m) Обмен через XML WEB

Добрый день, коллеги! Наконец-то дошли руки написать сию статью. Хочу поделиться своим опытом по разбору xsd схемы используя Фабрику XDTO, а также связанным с этим XML файлом. Думаю, наверняка кому-то понадобится.

1 стартмани

21.12.2017    28555    40    sandybaev    23       

Правила переноса документов из ЗУП 2.5 в ЗУП 3.1 33

Инструменты и обработки Программист Документ XML v8 v8::СПР ЗУП3.x Россия БУ Windows Зарплата Управление персоналом (HRM) Абонемент ($m) Обмен через XML Перенос данных из 1C8 в 1C8

Перенос документов из ЗУП 2.5 в ЗУП 3.1 - позволяет снизить объем работ при опытной эксплуатации ЗУП 3.1 параллельно с ЗУП 2.5.

1 стартмани

04.12.2017    23231    486    AntonH851    38       

Механизмы и транспорт обмена данными. Пример создания в КД 2.1 правил обмена данными ЗУП 2.5 -> БП 3.0. Выгрузка ведомостей и банковских счетов. Передача параметров обмена из Источника в Приемник. ВыгрузитьПоПравилу(). ПередатьОдинПараметрВПриемник(). 37

Статья Программист Документ XML v8 ЗУП2.5 КД БП3.0 Абонемент ($m) Обмен через XML Перенос данных из 1C8 в 1C8

В статье рассказываю: 1) о механизмах и транспорте обмена данными, где одной из сторон обмена выступает конфигурация на базе 1С, и о том, какой транспорт и в каких случаях лучше использовать 2) о решении задачи выгрузки данных документа «Зарплата к выплате организаций» (с выгрузкой банковский счетов физ лиц документа) из ЗУП 2.5.123.1 (далее Источник) в БП КОРП 3.0.52.39 (далее Приемник) путем создания правил обмена данными с использованием конфигурации «Конвертация данных» (далее просто КД) ред. 2.1.8.2. для (далее ЗкВО) 3) о тестирование полученных правил обмена данными.

1 стартмани

03.11.2017    20704    7    RailMen    5       

XML JSON преобразователь 17

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Россия Абонемент ($m) Обмен через XML

Обработка демонстрирует возможность программного преобразования XML в JSON и обратно без подключения внешних модулей.

1 стартмани

11.10.2017    10990    32    m-rv    3       

Правила обмена ЗУП 3.1 - БП 2.0 и ЗУП 3.1 - УПП 1.3 (отражение, ведомости и справочники) 97

Инструменты и обработки Программист Документ XML v8 v8::БУ v8::СПР БП2.0 БП3.0 ЗУП3.x Россия БУ Зарплата Управление персоналом (HRM) Абонемент ($m) Перенос данных из 1C8 в 1C8 Обмен через XML

Правила обмена для выгрузки документов "Отражение зарплаты в бухучете", "Ведомость в банк", "Ведомость в кассу", справочников "Сотрудники" и "Физические лица"

1 стартмани

01.08.2017    60281    1476    forseil    191       

«Горыныч - то НЕ НАСТОЯЩИЙ!» … или О Конвертации Данных ред.3 (КД 3) и обменах в универсальном формате Enterprise Data… доступным русско-народным языком 58

Инструменты и обработки Программист Архив с данными v8 КД Абонемент ($m) Внешние источники данных Обмен через XML Перенос данных из 1C8 в 1C8

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

1 стартмани

13.06.2017    14123    135    Davlad_A    16       

"Конвертация данных" + Git. Решение проблемы различий в файлах 112

Инструменты и обработки Программист Конфигурация (md, cf) v8 КД Абонемент ($m) Инструментарий разработчика Обмен через XML

Как известно, типовая конфигурация «Конвертация данных» обладает одним недостатком, мешающим работать с ней в Git-е. Если выгруженные из нее правила обмена загрузить в другую КД, а потом снова выгрузить, то полученные два файла будут очень сильно отличаться друг от друга, и при сравнении (diff) доработок будет невозможно провести код-ревью, равно как найти сами изменения, которые закоммитил разработчик.

1 стартмани

08.06.2017    16528    30    stas_ganiev    13       

Пообъектный разбор разметки 17

Инструменты и обработки Системный администратор Программист Конфигурация (md, cf) v8 Абонемент ($m) Инструментарий разработчика Обмен через XML

Обработка облегчает разбор разметки XML и позволяет обращаться с узлами (элементами, тэгами) почти как с объектами, не привлекая XDTO и не описывая формат предварительно. При этом обходится без загрузки всего файла в оперативную память, что позволяет читать файлы любого размера.

1 стартмани

26.04.2017    6506    7    9-pm    8       

XMPP(jabber) на чистом 1С 43

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Обмен через XML

На сайте infostart, есть несколько реализаций работы 1С с протоколом XMPP (jabber), но в основном они на использование сторонних библиотек (нативных), которые надо регистрировать в операционке (и только в винде), или на основе других систем - php, python и т.п. Предлагаю пример реализации отправки сообщения через этот протокол только средствами 1С.

1 стартмани

26.12.2016    11648    13    kodnik    8       

Загрузка XML в дерево значений 54

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Обмен через XML

Случайно наткнулся на статью с алгоритмом загрузки XML-строки в дерево значений и подумал, а не проще ли сделать это через механизм XDTO рекурсивно. На мой взгляд, решение получилось неплохое - даже атрибуты грузит..

1 стартмани

17.11.2016    18663    44    starik-2005    24       

Обмен данными онлайн через Веб-сервис с использованием обработки "Универсальный обмен данными XML" 186

Инструменты и обработки Программист Конфигурация (md, cf) v8 1cv8.cf Абонемент ($m) Обмен через XML

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

2 стартмани

28.10.2016    32190    209    linkov    33       

Использование SoapUi для работы с веб-сервисами. Часть1 118

Статья Программист Архив с данными v8 Абонемент ($m) Практика программирования Обмен через XML

Как работать с SoapUi для тестирования веб-сервисов .

1 стартмани

30.09.2016    102963    35    kiv1c    28       

Редактор движений документа. Сохранение в XML, обмен между базами, замена регистратора. 23

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 Абонемент ($m) Обработка документов Универсальные обработки Обмен через XML

Редактор набора записей движений документа. Позволяет сохранить набор записей в XML, в настройки пользователя, прочитать сохраненный XML в другой идентичной базе, заменить регистратор. Можно изменять порядок записей, менять активность, как массово, так и по одной и др. Тонкий клиент, управляемые формы.

1 стартмани

07.09.2016    27605    146    Aphanas    4       

Загрузка файлов грузовых таможенных деклараций из файлов ФТС формата xml (Альта софт, Сигма софт, Декларант +) 16

Инструменты и обработки Программист Бухгалтер Внешняя обработка (ert,epf) v8 v8::БУ БП3.0 Россия БУ Windows Внешнеэкономическая деятельность (ВЭД) Абонемент ($m) Обмен через XML

Федеральная таможенная служба России давно поддерживает унифицированный формат электронных документов для обмена с информационными системами предприятий. xmlns="urn:customs.ru:Information:ExchangeDocuments:" если что. Структура, утвержденная комиссией Таможенного союза. Осталось только сделать загрузку в 1С из этого формата. На выходе - два документа ГТД по импорту и Поступление (акты, накладные)

5 стартмани

09.08.2016    35863    145    capitan    232       

1С. Перенос контактной информации из БП 2.0 в БП 3.0 (УХ 1.2)  (Из регистра в табличную часть) 15

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 БП2.0 БП3.0 УХ Россия Windows Абонемент ($m) Обмен через XML Перенос данных из 1C8 в 1C8

Пример переноса контактной информации из БП 2.0 в БП 3.0 (или др..)  (Из регистра в табличную часть). Задача: Перенести контактную информацию из БП 2.0 в БП 3.0 (в моем случае в УХ 1.2). Контактная информация в БП 2.0 хранится в регистре сведений: КонтактнаяИнформация Контактная информация в БП 3.0 хранится в табличных частях соответствующих справочников.

1 стартмани

04.08.2016    15326    96    Voffffka    1       

Обмен документами по правилам КД 2.0 с помощью внешней обработки 14

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Абонемент ($m) Обмен через XML

Вам нужно разово выгрузить документ? Настроить периодическую выгрузку, не снимая конфигурацию с поддержки? Вы написали правила на КД 2.0 и думаете, как лучше дальше поступить? Тогда эта обработка для Вас.

1 стартмани

09.03.2016    8610    55    Ifboop_Figure    10       

Разбор XML Документа с помощью XDTO, без использования XDTO-пакетов и XML-схем (для очень ленивых) 45

Инструменты и обработки Системный администратор Программист Архив с данными v8 1cv8.cf Windows Абонемент ($m) Обмен через XML

Как разобрать XML Документ с помощью XDTO без изменений в конфигурации, без XML-схем данных, и при этом не выпасть с ошибкой "не достаточно памяти" ? Тем более что вам этот XML Документ нужно считать разово.

1 стартмани

14.11.2015    18321    39    TESL    8       

Пример обработки загрузки данных из XML-файла в облаке 1С:Fresh 27

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 УНФ Абонемент ($m) Практика программирования Обмен через XML

Внешняя обработка, адаптированная для работы в УНФ, размещенной в облаке 1С:Fresh (легко редактируется под любую другую конфигурацию) В обработке использованы следующие механизмы (их варианты при работе в безопасном режиме): 1. Механизм выполнения сценариев дополнительных обработок. 2. Механизм отложенной записи объектов. 3. Механизм клиент-серверной передачи файлов. 4. Механизм чтения XML в безопасном режиме. 5. Механизм создания и поиска элементов с помощью UID.

1 стартмани

20.10.2015    15655    55    laperuz    18       

Преобразование XML в объекты 1С 62

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Абонемент ($m) Обмен через XML

Преобразование XML в типовые объекты 1С всего лишь парой строк кода.

1 стартмани

17.10.2015    19598    96    PrinzOfMunchen    30       

Инструментарий ЕГАИС УТМ 23

Инструменты и обработки Программист Внешняя обработка (ert,epf) v8 1cv8.cf Оптовая торговля, дистрибуция, логистика Россия Windows Оптовая торговля Абонемент ($m) Инструментарий разработчика Внешние источники данных Обмен через XML

Это не готовое решение!!! Модуль объекта этой обработки - это набор рабочих методов работы с документами ЕГАИС через УТМ. Через "это" можно загрузить произвольный xml файл с диска в УТМ. Посмотреть входящие и исходящие. Отправить запрос на контрагента... отследить ответ по специальному идентификатору УТМ.

1 стартмани

24.09.2015    41524    243    Terrain25    41       

Штатный перенос данных ЗУП 2.5 -> ЗУП 3.0 в режиме отладки 22

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 ЗУП2.5 ЗУП3.x Windows Зарплата Управление персоналом (HRM) Абонемент ($m) Обмен через XML Перенос данных из 1C8 в 1C8

Штатный переход ЗУП 2.5 -> ЗУП 3.0 завершается при наличии ошибок в конвертации данных. Если механизм немного подправить, то можно обойти это ограничение. Назовем это режимом отладки. В итоге получим внешнюю обработку которая осуществит переход и просто сообщит о наличии ошибок конвертации данных.

1 стартмани

24.09.2015    19000    67    duhh    4       

Усовершенствованный редактор правил обмена КД2 146

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 КД Абонемент ($m) Обмен через XML

РПО-2М – мощный редактор правил обмена для КД 2. Позволяет ускорить свою разработку и ознакомление/доработку чужих правил обмена. Превосходство над встроенным редактором достигается за счет удобного функционального интерфейса, применения шаблонизации кода правил, богатого инструментария, упрощающего разработку, и интеграции с Инструментами Разработчика.

3 стартмани

16.09.2015    30765    174    Lem0n    39