Answer the question
In order to leave comments, you need to log in
How to make such a json using the structure (1C)?
How to make such a json with the help of a structure?
I have this code
Функция СтруктураКакJSON(Структура)
Поток = Новый ЗаписьJSON();
Поток.УстановитьСтроку();
ЗаписатьJSON(Поток, Структура);
Возврат Поток.Закрыть();
КонецФункции
Функция ШаблонURL1GetForm(Запрос)
Ответ = Новый HTTPСервисОтвет(200);
Если Истина Тогда
ДанныеОтвета = ПерваяФорма();
Иначе
ДанныеОтвета = ВтораяФорма();
КонецЕсли;
Тело = СтруктураКакJSON(ДанныеОтвета);
Ответ.УстановитьТелоИзСтроки(Тело);
Ответ.Заголовки.Вставить("Access-Control-Allow-Origin","*");
Ответ.Заголовки.Вставить("Content-Type","application/json;charset=utf-8");
Ответ.Заголовки.Вставить("Cache-Control","no-cache");
Возврат Ответ;
КонецФункции
Функция ПолучитьСТруктурыПоля(title,description,type)
Возврат Новый Структура("title,description,type",title,description,type);
КонецФункции
Функция ПолеФормы(ИмяПоля,ОписаниеПоля)
СтруктураВОзврат = Новый Структура();
СтруктураВОзврат.Вставить(ИмяПоля,Новый Структура("type,title","string",ОписаниеПоля));
Возврат СтруктураВОзврат;
КонецФункции
Функция ПерваяФорма()
ДанныеОтвета = Новый Структура();
ДанныеОтвета = Новый Структура("title,type","Название формы","object");
ДанныеОтвета.Вставить("properties",ПолеФормы("Name","Сколько лет?"));
ДанныеОтвета.Вставить("properties",ПолеФормы("Age","Где проживаете?"));
ДанныеОтвета.Вставить("properties",ПолеФормы("Learning","Где обучались?"));
//ДанныеОтвета.Вставить("sity",);
Возврат ДанныеОтвета;
КОнецФункции
Функция ВтораяФорма()
ДанныеОтвета = Новый Структура();
Возврат ДанныеОтвета;
КОнецФункции
{
"title": "Название формы",
"type": "object",
"properties": {
"Name": {
"type": "string",
"title": "Как вас зовут?"
},
"Age": {
"type": "string",
"title": "Сколько лет?"
},
"Learning": {
"type": "string",
"title": "Где вы обучались?"
}
}
}
{
"title": "Название формы",
"type": "object",
"properties": {
"Learning": {
"type": "string",
"title": "Где обучались?"
}
}
}
Those. the data is overwritten, or I tried it differently, but there I got json like this{
"title": "Название формы",
"type": "object",
"properties": {
"Name": {
"type": "string",
"title": "Как вас зовут?"
}
},
"properties": {
"Age": {
"type": "string",
"title": "Сколько лет?"
}
},
"properties": {
"Name": {
"type": "string",
"title": "Как вас зовут?"
}
}
}
Answer the question
In order to leave comments, you need to log in
Carefully figure out what and where you fill out step by step. The code is just some kind of mess.
ДанныеОтвета = Новый Структура("title,type","Название формы","object");
ДанныеОтвета.Вставить("properties",ПолеФормы("Name","Сколько лет?"));
ДанныеОтвета.Вставить("properties",ПолеФормы("Age","Где проживаете?"));
ДанныеОтвета.Вставить("properties",ПолеФормы("Learning","Где обучались?"));
масProperties = Новый Массив;
масProperties.Добавить(ПолеФормы("Name", "Сколько лет?"));
масProperties.Добавить(ПолеФормы("Age", "Где проживаете?"));
масProperties.Добавить(ПолеФормы("Learning", "Где обучались?"));
ДанныеОтвета = Новый Структура("title, type, properties", "Название формы", "object", масProperties);
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question