A1sCode библиотека 1С

A1sQ.UnloadToJSON

Назначение: выполнить SELECT и получить результат в виде строки JSON.
Формат: JSON‑массив объектов (один объект = одна строка результата).

Сигнатура

Function UnloadToJSON(QueryText, Value1 = Undefined, Value2 = Undefined, Value3 = Undefined, Value4 = Undefined, Value5 = Undefined, Value6 = Undefined, Value7 = Undefined, Value8 = Undefined) Export

Как работает (по исходному коду)

Try
		VT = Unload(QueryText, Value1, Value2, Value3, Value4, Value5, Value6, Value7, Value8);
		
		JSONWriter = New JSONWriter;
		JSONWriter.SetString();
		
		JSONData = New Array;
		
		For Each Row In VT Do
			RowData = New Structure;
			For Each Column In VT.Columns Do
				RowData.Insert(Column.Name, Row[Column.Name]);
			EndDo;
			JSONData.Add(RowData);
		EndDo;
		
		WriteJSON(JSONWriter, JSONData);
		Return JSONWriter.Close();
		
	Except
		A1sS.Print("UnloadToJSON error: " + ErrorDescription());
		Return "[]";
	EndTry;

Параметры

  • QueryText — текст запроса.
  • Value1..Value8 — параметры запроса.

Возвращает

Строку JSON. При ошибке — пустой JSON [] и запись в лог.

Примеры

Json = A1sQ.UnloadToJSON("
|ВЫБРАТЬ ПЕРВЫЕ 10
|  Ссылка, Наименование, Код
|ИЗ Справочник.Номенклатура
|ГДЕ НЕ ПометкаУдаления");

Нюансы и ограничения

✅ Удобно для REST/веб‑интерфейсов и интеграций
✅ Поля строк становятся одноимёнными свойствами JSON‑объектов
❗ Типы 1С сериализуются в строки/числа/булево; сложные типы могут быть преобразованы
❗ Контролируйте локализацию форматов (даты, числа) на стороне потребителя