Json в таблицу на форме

1. xbobr 14.11.23 13:50 Сейчас в теме
Добрый день, коллеги.

Загрузка товаров из json с динамическими структурой и ключами. Ключи могут иметь тип число.
В json товары лежат в ключе Offers, а значением может быть как массив товаров, так и элемент, в том числе с вложенными массивами и элементами.
Подскажите, пожалуйста, как вывести данные файла в таблицу на форме (управляемые формы), а заголовки колонок имели следующий вид: Offers_id, Offers_name, Offers_fotos_1, Offers_fotos_2 и тд?
Пишу первое приложение. Буду благодарен за любую инфу! Заранее спасибо!
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. glek 120 14.11.23 14:35 Сейчас в теме
(1) Как структуру или соответствие загнать в таблицу на форме?
4. xbobr 14.11.23 16:16 Сейчас в теме
(2) да. ЧтениеJSON понятно.
Создаётся соответвие. А внутри в зависимости от параметров запроса и данных самой номенклатуры у поставщика может прийти ответ с ключами, которых не было в предыдущем запросе. В самом соответствии значениями может быть массив с массивами и элементами произвольной вложенности. Вот и не могу придумать как динамически такую таблицу построить. Материалов как ТЗ на форму выложить много, а как таблицу построить не могу найти. Везде колонки предварительно известны. 2 дня убил(
3. SlavaKron 14.11.23 14:36 Сейчас в теме
Начините с
ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(СтрокаJSON);
Данные = ПрочитатьJSON(ЧтениеJSON);
ЧтениеJSON.Закрыть();
5. xbobr 14.11.23 16:18 Сейчас в теме
(3) спасибо за ответ. С этим разобрался. Вопрос в том как динамически таблицу заполнить колонками по именам ключей из сложной структуры с произвольной вложенностью
6. SlavaKron 14.11.23 16:36 Сейчас в теме
(5) Советую использовать табличный документ для вывода. Пример во вложении.
Прикрепленные файлы:
ЧтениеСтруктурыJSON.epf
9. xbobr 15.11.23 09:38 Сейчас в теме
(6) Попробовал. Json конечно читает, но отображение опять по заданным колонкам. При наличии ключа 123456 падает с ошибкой. Пример файла:
{
123456: {
"title": "example glossary",
"GlossDiv": {
"title": "S",
"GlossList": {
"GlossEntry": {
"ID": "SGML",
"SortAs": "SGML",
"GlossTerm": "Standard Generalized Markup Language",
"Acronym": "SGML",
"Abbrev": "ISO 8879:1986",
"GlossDef": {
"para": "A meta-markup language, used to create markup languages such as DocBook.",
"GlossSeeAlso": ["GML", "XML"]
},
"GlossSee": "markup"
}
}
}
}
}
Прикрепленные файлы:
10. user1880116 15.11.23 09:45 Сейчас в теме
(9)
{
123456: {
"title": "example glossary",
Это некорректный JSON и он не будет читаться.
11. xbobr 15.11.23 10:16 Сейчас в теме
(10)
{
123456: {
"title": "example glossary",


Да, ошибся. Но вот такие ключи порой попадаются:
{"123456": {""title"": ""example glossary""}}
При чтении в соответствие нормально читаются
12. user1880116 15.11.23 10:31 Сейчас в теме
(11) Ты хочешь имя ключа использовать в качестве идентификатора колонки таблицы значений или дерева значений что-ли?
13. xbobr 15.11.23 10:35 Сейчас в теме
(12) что-то вроде того на выходе в интерфейсе пользователя вывести.
Прикрепленные файлы:
7. SlavaKron 14.11.23 16:36 Сейчас в теме
8. starik-2005 3088 14.11.23 18:17 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот