Имя: Пароль:
1C
1С v8
ЗаписьJSON
,
0 Kain_wrath
 
19.08.15
15:36
Только начал знакомиться с эти форматом. Пытаюсь сделать запись стандартными механизмами платформы, первая итерация проходит нормально, но на следующей, на строке "ЗаписьJSON.ЗаписатьНачалоОбъекта();" выдает ошибку "Неверный порядок записи JSON". Что делаю не так?
    
    ЗаписьJSON = Новый ЗаписьJSON;
    
    ЗаписьJSON.ОткрытьФайл("ИмяФайла",,,Новый ПараметрыЗаписиJSON(,Символы.Таб));
    
    Пока ВыборкаСсылка.Следующий() Цикл
        
        ЗаписьJSON.ЗаписатьНачалоОбъекта();

        ЗаписьJSON.ЗаписатьИмяСвойства("Номенклатура");
        ЗаписьJSON.ЗаписатьЗначение(Строка(ВыборкаСсылка.Ссылка));        
        
        ЗаписьJSON.ЗаписатьКонецОбъекта();
            
    КонецЦикла;
    
    ЗаписьJSON.Закрыть();
1 Учитель
 
19.08.15
15:38
А что да Джейсон? Что ты пытался сделать этой операцией?
2 KrabCore
 
19.08.15
15:38
попробуй так

ЗаписьJSON = Новый ЗаписьJSON;
    
    ЗаписьJSON.ОткрытьФайл("ИмяФайла",,,Новый ПараметрыЗаписиJSON(,Символы.Таб));
ЗаписьJSON.ЗаписатьНачалоОбъекта();
    
    Пока ВыборкаСсылка.Следующий() Цикл
        
        ЗаписьJSON.ЗаписатьНачалоОбъекта();

        ЗаписьJSON.ЗаписатьИмяСвойства("Номенклатура");
        ЗаписьJSON.ЗаписатьЗначение(Строка(ВыборкаСсылка.Ссылка));        
        
        ЗаписьJSON.ЗаписатьКонецОбъекта();
            
    КонецЦикла;
ЗаписьJSON.ЗаписатьКонецОбъекта();
    
    ЗаписьJSON.Закрыть();
3 KrabCore
 
19.08.15
15:39
(2)+ за синтаксис не ручаюсь, но суть в том что у тебя нет тега который бы объединял "номенклатуру"
4 Kain_wrath
 
19.08.15
15:40
(3) спасибо, работает
5 Учитель
 
19.08.15
15:45
(4) Ответь на мой вопрос иначе я на тебя порчу наведу
6 Kain_wrath
 
19.08.15
15:46
(5) очевидно же, хочу создать json файл со списком номенклатуры
7 Учитель
 
19.08.15
15:47
(6) А зачем? именно джейсон?
8 vhl
 
19.08.15
15:48
(7) Какая тебе разница?
9 Лодырь
 
19.08.15
15:49
(7) Смени ник на детсадовец, ну или салабон там.
10 Salimbek
 
19.08.15
15:49
(7) JSON - это формат такой, для WEB-а, в основном, распространен. Но т.к. проще XML-я, то и в обмене его часто начинают использовать. Потому и разработчики внесли работу с этим форматом в платформу.
11 Учитель
 
19.08.15
15:50
А веб серверы какие используете если винда? Апач, или ИИС?
12 Учитель
 
19.08.15
15:51
(9) Это вопрос проверочный я задаю, чтобы отвечая он еще раз прокрутил в голове что делает и твердо знал результат
13 Serginio1
 
19.08.15
15:56
(11) Обычно это HTTP серверы работающие с сайтами. А там уже обмен через Json стандарт.
14 magicSan
 
19.08.15
15:57
(10) не проще а легче юзают в основном для Ajax
15 magicSan
 
19.08.15
15:58
(14) В смысле весит легче.
16 eklmn
 
гуру
19.08.15
15:58
(12) малое дитя ))
17 Art igloo
 
19.08.15
16:06
Если передаешь список номенклатуры, то рекомендую все-таки во вне цикла заменить

ЗаписьJSON.ЗаписатьНачалоОбъекта();

на

ЗаписьJSON.ЗаписатьНачалоМасссива();

Тогда на выходе получишь массив объектов, а не вложенные объекты, это лучше
18 Kain_wrath
 
19.08.15
16:08
(17) спасибо так и сделал
19 Учитель
 
19.08.15
16:22
(13) А апач и ИИС не подойдут для публикаци http сервера?
20 Лодырь
 
19.08.15
16:24
(19) какие интересные вопросы. наверное, тоже хотите помочь Serginio1 уложить все в голове?
21 Serginio1
 
19.08.15
16:35
22 Serginio1
 
20.08.15
14:29
Глобальный контекст (Global context)
ЗаписатьJSON (WriteJSON)
Синтаксис:

ЗаписатьJSON(<ЗаписьJSON>, <Значение>, <НастройкиСериализации>, <ИмяФункцииПреобразования>, <МодульФункцииПреобразования>, <ДополнительныеПараметрыФункцииПреобразования>)
Параметры:

<ЗаписьJSON> (обязательный)

Тип: ЗаписьJSON.
Объект, через который осуществляется запись JSON. Поток JSON должен быть подготовлен для записи значения.
<Значение> (обязательный)

Тип: Произвольный.
Объект записи JSON. Меняет состояние потока записи.
Представляет собой значение произвольного типа.
В формате JSON допускается записывать только значения следующих типов:
Строка,
Число,
Булево,
Дата (преобразованная в строку),
Массив,
ФиксированныйМассив,
Структура,
ФиксированнаяСтруктура,
Соответствие,
ФиксированноеСоответствие.
23 BigShmax
 
20.08.15
14:44
(19) он отправляет.  Ты не подлумал что сторона использующая JSON может быть не его?    У меня например у стороннего поставщика в интернет магазине продукция заказывается через JSON и выбора мне не предоставляли. Только такю. выслали API JSON  и моему руководству сообщили мы всё дали ждем.   а платформа не поддерживала еще.  дык  командными строками слал записывая ответ в тектовый файл и потом парсил.
24 Гёдза
 
20.08.15
15:11
(23) 1сный парсер джсон уже лет 5 существует
25 BigShmax
 
20.08.15
15:37
(24)  значит я изобрёл велосипед.   мне не столько парсер бюыл нужен, сколько составить свой запрос и швырнуть его по адресу.   формировал командную строку curl.exe *****  и вызывал её.
26 Лодырь
 
20.08.15
15:39
(24) Ты про функции от BigB? Представляющие JSON в качестве структуры и наоборот?
Вот кому бы я сказал большой респект.
Программист всегда исправляет последнюю ошибку.