|   |   | 
| 
 | Парсим Структуру или что-то вроде этого | ☑ | ||
|---|---|---|---|---|
| 0
    
        Sergio447 13.07.23✎ 22:06 | 
        Доброго вечера. Пытаюсь достать из структуры значение, чтобы передать его в табличную часть, вот запрос
 Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | Услуги.Ссылка КАК Документ, | СписокЗапросов.Данные КАК Количество |ИЗ | РегистрСведений.СписокЗапросов КАК СписокЗапросов | ЛЕВОЕ СОЕДИНЕНИЕ Документ.Услуги КАК Услуги | ПО СписокЗапросов.Документ = Услуги.Ссылка |ГДЕ | Услуги.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Ссылка",Объект.Документ); РезультатЗапроса = Запрос.Выполнить(); ТЗХранилище = РезультатЗапроса.Выгрузить(); СтрХранилище = ТЗХранилище; Для Каждого Стр Из СтрХранилище Цикл ПолучаемоеХранилище = Стр.Количество.Получить().Тело; ЗаписьJSON = Новый ЗаписьJSON; ЗаписьJSON.УстановитьСтроку(); ЗаписатьJSON(ЗаписьJSON,ПолучаемоеХранилище); ЗаписьJSON.Закрыть(); Строка = Объект.ТЧ.Добавить(); Строка.Документ = Стр.Документ; Строка.Количество = ?; КонецЦикла; В отладчике вижу, что переменная ПолучаемоеХранилище содержит Тело, с типом Структура в которой есть данный текст: {"id":"112","count":10,"name":"\u0411\u0535\u033b\u0430\u0420\u0423\u0141\u024c"} Вопрос как мне достать "count"? Т.е мне нужно передать количество в табличную часть, как-то так Строка.Количество = "count" | |||
| 2
    
        Tatitutu 13.07.23✎ 22:35 | 
        (1) Кто последний?     | |||
| 3
    
        Asmody 13.07.23✎ 23:01 | 
        (0) код сам писал или чатГПТ помог?     | |||
| 4
    
        ass1c 13.07.23✎ 23:39 | 
        Если "ПолучаемоеХранилище" действительно равно "{"id":"112","count":10,"name":"\u0411\u0535\u033b\u0430\u0420\u0423\u0141\u024c"}"
 ЧтениеJSON = Новый ЧтениеJSON; ЧтениеJSON.УстановитьСтроку(ПолучаемоеХранилище); Результат = ПрочитатьJSON(ЧтениеJSON); Сообщить(Результат.count); | |||
| 5
    
        Sergio447 14.07.23✎ 02:29 | 
        (4) Недопустимое имя свойства: '08234546547474757' для чтения json в объект структура     | |||
| 6
    
        Гипервизор 14.07.23✎ 05:25 | 
        (5) Тогда выполняйте чтение в соответствие.     | |||
| 7
    
        Гипервизор 14.07.23✎ 05:29 | 
        (5) Т.е. это ПрочитатьJSON(ЧтениеJSON, Истина);     | |||
| 8
    
        Sergio447 14.07.23✎ 07:13 | 
        (7) Прописал в соотсвествие, в итоге в Сообщить(Результат) получаю Соответствие. А нужно достать количество count     | |||
| 9
    
        Гипервизор 14.07.23✎ 07:23 | 
        (8) Глядя на сообщения (5) и (8) мне сложно поверить, что код в (0) писали вы. Вы серьёзно? Вам объяснить как обратиться к элементу коллекции?     | |||
| 10
    
        Sergio447 14.07.23✎ 08:08 | 
        (9) да     | |||
| 11
    
        Гипервизор 14.07.23✎ 08:11 | 
        (10) Ёжики зелёные.. Потрудитесь совместить (4) и (7).     | |||
| 12
    
        Sergio447 14.07.23✎ 12:33 | 
        (11) это я сделал, мне в сообщить как вывести count?     | |||
| 13
    
        Мультук гуру 14.07.23✎ 12:38 | ||||
| 14
    
        Sergio447 14.07.23✎ 12:44 | 
        (13) спасибо! Получилось, циклом разобрал)     | |||
| 15
    
        Sergio447 14.07.23✎ 16:23 | 
        Получилось да не до конца) Почему пишет значение не является значением объектного типа (Тело) ?     | |||
| 16
    
        ass1c 14.07.23✎ 16:39 | 
        В этом основная проблема "СписокЗапросов.Данные КАК Количество", .Данные КАК Количество. ...КАК Количество. Если бы здесь было написано по другому, то и остальных бы вопросов и проблем не возникло. Уловил?     | |||
| 17
    
        Sergio447 14.07.23✎ 16:54 | 
        (16) теперь недопустимое состояние потока записи Json     | |||
| 18
    
        lubitelxml 14.07.23✎ 17:11 | 
        (17) какой тип значения в СписокЗапросов.Данные КАК Количество?     | |||
| 19
    
        Sergio447 14.07.23✎ 17:17 | 
        (18) строка     | |||
| 20
    
        lubitelxml 14.07.23✎ 17:19 | 
        (19) перечитай и сделай как написали в (4) и (7)     | |||
| 21
    
        Sergio447 14.07.23✎ 18:49 | 
        (20) так и сделал, количество то получаю, но ошибка не проподает по потоку записи json     | |||
| 22
    
        lubitelxml 14.07.23✎ 18:55 | 
        (21) значит у тебя там json не в том формате, попробуй этот json проверить через любой ресурс в интернете - он тебе покажет валидность     | |||
| 23
    
        lubitelxml 14.07.23✎ 18:57 | 
        (21) можно конечно ЗаписатьБезОбработки(), но это не очень вариант, потом не распарсишь его. Ну и попробуй экранировать символы, чтобы "\u0411\u0535\u033b\u0430\u0420\u0423\u0141\u024c" превратилось в читаемые символы     | |||
| 24
    
        lubitelxml 14.07.23✎ 18:59 | 
        Для общего пониманию работы с json: При записи JSON возвращает строку с символами "\r\n\" и др.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |