| 
    
            
         
         | 
    
  | 
XDTO | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        xteam777    
     10.07.18 
            ✎
    17:27 
 | 
         
        Есть строка в формате JSON
 
        {"server_time":1531228517,"maps":{"map0":{"decimal_places":8,"min_price":0.00000001,"max_price":10000,"min_amount":0.0001,"min_total":0.0001,"hidden":0,"fee":0.2,"fbr":0.2,"fsl":0.2},"map1":{"decimal_places":8,"min_price":0.00000001,"max_price":10000,"min_amount":0.0001,"min_total":0.0001,"hidden":0,"fee":0.2,"fbr":0.2,"fsl":0.2},"map2": {"decimal_places":8,"min_price":0.00000001,"max_price":10000,"min_amount":0.0001,"min_total":0.0001,"hidden":0,"fee":0.2,"fbr":0.2,"fsl":0.2}}} ЧтениеJSON = Новый ЧтениеJSON; ЧтениеJSON.УстановитьСтроку(пСтрока); ФабрикаXDTO.ПрочитатьJSON(ЧтениеJSON, ФабрикаXDTO.Тип("http://mapssssss.ru", "info")); В последней строке ошибка: "Проверка дополнительного свойства: форма: Элемент имя: map0 по причине: Ошибка проверки данных XDTO: Структура объекта не соответствует типу "map0" - это одновременно и имя элемента и значение. Как правильно описать в XDTO тип данных для maps?  | 
|||
| 
    1
    
        Леха Дум    
     10.07.18 
            ✎
    18:10 
 | 
         
        а без указания типа пробовал читать? Возможно, что фабрика читает немного не так, как ожидается. Сам столкнулся с тем, что при записи объекта XDTO в json получил совершенно не тот набор структур. При записи в XML все проходило нормально.     
         | 
|||
| 
    2
    
        xteam777    
     10.07.18 
            ✎
    18:17 
 | 
         
        Пробовал. Вообще процесс предприятия отваливается     
         | 
|||
| 
    3
    
        xteam777    
     10.07.18 
            ✎
    18:23 
 | 
         
        Был какойто глюк. Получилось. Спасибо     
         | 
|||
| 
    4
    
        xteam777    
     10.07.18 
            ✎
    22:28 
 | 
         
        Появилась другая проблема.
 
        Процедура КнопкаВыполнитьНажатие(Кнопка) пОтвет = "{ "map0":{ "plus":[ [104.67,0.01], [104.75,11], [104.80,0.523], ], "minus":[ [104.3,5.368783], [104.212,2.57357], [103.62,0.43663336], [103.61,0.7255672], ] } }"; ЧтениеJSON = Новый ЧтениеJSON; //ЧтениеJSON.ОткрытьПоток(пОтвет); ЧтениеJSON.УстановитьСтроку(Ответ); ОбъектXDTO = ФабрикаXDTO.ПрочитатьJSON(ЧтениеJSON); <------тут ОШИБКА КонецПроцедуры Ошибка: Недопустимое значение аргумента функции src\XDTOFactoryImpl 414  | 
|||
| 
    5
    
        xteam777    
     10.07.18 
            ✎
    22:29 
 | 
         
        Это на последней платформе 8.3.12. На более ранних клиент просто вылетает. Что не так с форматом JSON тут?     
         | 
|||
| 
    6
    
        quest    
     10.07.18 
            ✎
    22:55 
 | 
         
        а не ЧтениеJSON.УстановитьСтроку(пОтвет); должно быть?     
         | 
|||
| 
    7
    
        quest    
     10.07.18 
            ✎
    22:59 
 | 
         
        и второй момент - может так лучше сделать
 
        ОбъектXDTO = ПрочитатьJSON(ЧтениеJSON); ?  | 
|||
| 
    8
    
        xteam777    
     10.07.18 
            ✎
    23:18 
 | 
         
        Работает. Спасибо огромное     
         | 
|||
| 
    9
    
        xteam777    
     10.07.18 
            ✎
    23:20 
 | 
         
        А в чем разница между ПрочитатьJSON и ФабрикаXDTO.ПрочитатьJSON?     
         | 
|||
| 
    10
    
        kuzyara    
     11.07.18 
            ✎
    06:30 
 | 
         
        Первый читает в структуру, второй в объект xdto.     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |