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

05.12.23

Интеграция - Файловый обмен (TXT, XML, DBF), FTP

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Обработка выгрузки в JSON, обычные формы:
.epf 8,15Kb
18
18 Скачать (3 SM) Купить за 2 450 руб.
Документы и Справочники в JSON, управляемые формы:
.epf 7,79Kb
62
62 Скачать (3 SM) Купить за 2 450 руб.

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

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

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

 

JSON

См. также

SALE! 15%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

26280 руб.

12.06.2017    142244    803    297    

423

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.236.x) и БП 3.0 (3.0.164.x). Правила подходят для версии ПРОФ и КОРП.

35000 руб.

15.12.2021    24359    172    51    

131

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.88.x) и УТ 11.5 (11.5.20.x).

35000 руб.

23.07.2020    51969    229    72    

187

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 Платформа 1C v8.2 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Управление производственным предприятием Россия Платные (руб)

Регулярный обмен, выгрузка, перенос из КА 1.1, УПП 1.3, УТ 10.3 для обмена с любыми конфигурациями, поддерживающими обмен в формате EnterpriseData (КД3) - БП 3.0, ERP, КА 2, УТ 11, Розница 2, УНФ 1.6 и другими. Правила для старых и доработанных конфигураций не требуют синхронного обновления и совместимы с новыми и будущими конфигурациями. Обмен по расписанию, через папку, FTP, почту.

15300 руб.

18.02.2016    187202    591    512    

529

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 10 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

60000 руб.

05.10.2022    10948    13    8    

15

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Что же Вы получаете? 2 способа обмена объектами – с ОДИНАКОВОЙ структурой и с ОТЛИЧАЮЩЕЙСЯ! Забудьте о том, что не могли ранее перенести данные между базами, из-за того, что изменилась структура объектов в одной из них с обновлением конфигурации – теперь это в прошлом! Теперь не помеха для обмена изменение состава реквизитов объекта (измерений, ресурсов)/состава табличных частей/реквизитов табличных частей/типов реквизитов! А так же получаете быстрый алгоритм обмена, с возможностью указания уровня выгрузки объектов по ссылкам! 3 способа обмена - ФАЙЛ, HTTP, COM: Система слежения за дублями предопределенных элементов при загрузке; Система поиска связей объектов для выгрузки; Отборы для каждого объекта конфигурации в отдельности; Динамическая замена произвольных ссылок при обмене; Выбор регистров движений для выгрузки. (Обновление от 27.06.2024, версия 9.1 - 10.1)

16800 руб.

28.08.2012    209273    304    281    

657

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление торговлей 11 Россия Управленческий учет Платные (руб)

Правила в универсальном формате обмена для предыдущих версий конфигураций УТ 11.0, УТ 11.1, УТ 11.2, УТ 11.3, УТ 11.4, УТ 11.5, с момента выхода которых прошло более года.Обмен с любыми последними конфигурациями, поддерживающими обмен в EnterpriseData - БП 3.0, ERP, УТ, КА, УНФ, Розница. Не требуется обновления правил после обновления других конфигураций, участвующих в обмене - версии конфигураций могут быть произвольными. Обмен осуществляется через планы обмена кнопкой "Синхронизация" вручную или автоматически по расписанию, или вручную обработкой.

20580 руб.

13.09.2021    21701    37    32    

24

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v8.3 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:ERP Управление предприятием 2.5 и 1С:Комплексную автоматизацию 2.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.234.x), ERP 2.5 (2.5.19.x), КА 2.5 (2.5.19.x).

35000 руб.

24.06.2020    63839    55    27    

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

http://v8.1c.ru/o7/201501json/index.htm
simuljakr; dsdred; baracuda; Alexs_7574; spawn_a; user1507791; bugagashenka; Dmitri93; RFP; rozer; CyberCerber; wowik; Yashazz; BESL; mnemchinov; Xershi; DarkAn; RustIG; Поручик; Teut_Vlad; awk; magvay_k; +22 Ответить
Остальные комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. ArchLord42 83 21.06.19 09:44 Сейчас в теме
На что готовы люди, только лишь бы не читать справку, вот же давно (с 8.3.7) имеется из коробки это вот все.

http://v8.1c.ru/o7/201501json/index.htm
simuljakr; dsdred; baracuda; Alexs_7574; spawn_a; user1507791; bugagashenka; Dmitri93; RFP; rozer; CyberCerber; wowik; Yashazz; BESL; mnemchinov; Xershi; DarkAn; RustIG; Поручик; Teut_Vlad; awk; magvay_k; +22 Ответить
2. Teut_Vlad 191 21.06.19 10:21 Сейчас в теме
(1) обновил)
только возможностей для манипуляций стало меньше
3. RustIG 1752 21.06.19 11:08 Сейчас в теме
(1)"читать справку" ?
а сами прислали заметки из зазеркалья....

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

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

Если с кемт интегрируетесь, лучше действовать через стандартную сериализацию, а для ссылок и сложных объектов там в конструкторе можно указать функцию преобразования в примитивы.
6. Teut_Vlad 191 21.06.19 12:57 Сейчас в теме
7. 🅵🅾️🆇 524 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; Teut_Vlad; +4 Ответить
8. 🅵🅾️🆇 524 21.06.19 15:26 Сейчас в теме
(7)
Ссылки, например, можете отдавать в виде структур, в которых фигурируют данные из XMLСтрока() и Метаданные()

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

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

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

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

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

ТаблицаЗнач = Объект[ТабличнаяЧасть.Имя].Выгрузить();
		МассивТабЧасти = Новый Массив;
		Для Каждого СтрТЗ Из ТаблицаЗнач Цикл
			СтруктураСтр = Новый Структура;
			Для Каждого Колонка Из ТаблицаЗнач.Колонки Цикл
				Если ТипЗнч(СтрТЗ[Колонка.Имя]) = тип("Число") ИЛИ ТипЗнч(СтрТЗ[Колонка.Имя]) = тип("Дата") ИЛИ ТипЗнч(СтрТЗ[Колонка.Имя]) = тип("Булево") тогда
					СтруктураСтр.Вставить(Колонка.Имя, СтрТЗ[Колонка.Имя]);
				Иначе
					СтруктураСтр.Вставить(Колонка.Имя, Строка(СтрТЗ[Колонка.Имя]));
				КонецЕсли;
				
				Если НЕ СтрТЗ[Колонка.Имя] = Неопределено и Справочники.ТипВсеСсылки().СодержитТип(ТипЗнч(СтрТЗ[Колонка.Имя])) тогда
					СтруктураСтр.Вставить(Колонка.Имя+"Код", СтрТЗ[Колонка.Имя].Код);
				ИначеЕсли НЕ СтрТЗ[Колонка.Имя] = Неопределено и Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(СтрТЗ[Колонка.Имя])) тогда
					СтруктураСтр.Вставить(Колонка.Имя+"Номер", СтрТЗ[Колонка.Имя].Номер);
				КонецЕсли;
			КонецЦикла;
			МассивТабЧасти.Добавить(СтруктураСтр);
		КонецЦикла;
		Структура.Вставить(ТабличнаяЧасть.Имя, МассивТабЧасти);
Показать
Teut_Vlad; +1 Ответить
16. tolyan_ekb 106 03.02.21 20:19 Сейчас в теме
ТипСсылки = ЭтоСправочникИлиДокумент(); где описание этой функции?
Bob_Sid; user1798793; +2 Ответить
17. spawn_a 55 25.04.21 15:03 Сейчас в теме
Если нужно выгрузить не только идентификаторы объектов, а дополнительную информацию:
Запрос=Новый Запрос("ВЫБРАТЬ * ИЗ Документ."+СсылкаНаДокумент.Метаданные().Имя+" ГДЕ Ссылка=&Ссылка";
Запрос.УстановитьПараметр("Ссылка", СсылкаНаДокумент);
JSON=ОбъектВСтрокуJSON(ОбщегоНазначения.ТаблицаЗначенийВМассив(Запрос.Выполнить().Выгрузить()));

Универсальная функция сериализации:
Функция ОбъектВСтрокуJSON(Объект)

Кусок результата:
[
{
"Ссылка": {
"Идентификатор": "74dfa437-9eb9-11eb-a2a1-ac1f6b67576f",
"ИмяТипа": "Документ.ВедомостьНаВыплатуЗарплатыВБанк",
"Представление": "Ведомость в банк 0006-000228 от 16.04.2021",
"Дата": "2021-04-16T16:41:34",
"Номер": "0006-000228"
},
"ВерсияДанных": "AAAABAAAAAA=",
"ПометкаУдаления": false,
"Номер": "0006-000228",
"Дата": "2021-04-16T16:41:34",
"Проведен": true,
"ПериодРегистрации": "2021-04-01T00:00:00",
simuljakr; +1 Ответить
18. user1543721 26.04.21 11:09 Сейчас в теме
Понимаю что борзею, но можно теперь обработку для загрузки JSON обратно в 1с в виде документа?
20. Teut_Vlad 191 21.09.21 16:58 Сейчас в теме
(18) чем вам Выгрузка загрузка XML не подходит
В этой обработке я выгружаю на сайт, там какие то требования к видам данных
19. Octopus 338 17.09.21 07:38 Сейчас в теме
Если уж делать свой велосипед по выгрузке, то стоит учесть:
1) реквизиты составных типов;
2) реквизиты типа перечисления, бизнес-процессы, задачи и ПВХ.

Ну и код причесать, установку значения в структуре вынести в отдельную процедуру
21. Teut_Vlad 191 21.09.21 17:00 Сейчас в теме
(19) Обработка делалась для выгрузки на сайт, в вашем случае я должен получать и обрабатывать ссылку 1С. Зачем человеку делавшему загрузку на сайт, этот набор символов
22. lev6975 20.11.21 14:31 Сейчас в теме
Пупупупу... хотел устроить нетиповой обмен между нетиповой бухой и нетиповой зарплатой на Json, но глянул... по трудоемкости то же самое что пилить свой с нуля, или освоить КД, переработав стандартные правила... Доки содержат ссылочные типы, те, в свою очередь, ТЧ, в которых еще типы, еще ТЧ, вложенность многоуровневейшая... А тащить нужно не как здесь - только названия, а вообще все - все - все и на конце преобразовывать в типы базы приемника, проверять анализировать, есть ли такие объекты уже, не поменялись ли свойства этих объектов, принимать решение о замене объектов или свойств объектов... короче, сэкономить не выйдет)))
Светлый ум; Teut_Vlad; +2 Ответить
23. Aleram 17.07.24 17:01 Сейчас в теме
Подскажите, в 1С:КА 1.1 будет работать?
24. Aleram 17.07.24 17:07 Сейчас в теме
Оставьте свое сообщение