|
v7: JSON и 1С7.7 (продолжение) | ☑ | ||
---|---|---|---|---|
0
ovs199
23.03.19
✎
22:24
|
В теме JSON и 1С7.7 рассматривается доработка 1С 77 для разборки Json файла. Сделал как там написано.Все получилось,только пришлось добавить в глобальном модуле экспортную переменную "Перем JSON_ctrl Экспорт" и условие "Если JSON_ctrl <> Неопределено Тогда" поменять на "Если НЕ (ПустоеЗначение(JSON_ctrl)=1) Тогда". Но при попытке передать в глобальный модуль объект "Текст" в формате Json "РезультатРазбора=сз_FromJSON(Текст)" получаю ошибку: "obj = JSON_ctrl.run("parseJSON", стр); {Глобальный модуль(243)}: Плохой тип переменной".
Что я делаю не так? |
|||
1
Garykom
гуру
23.03.19
✎
22:35
|
Ты понимаешь зачем этот код нужен в начале?
Процедура JSON_Init() Если JSON_ctrl <> Неопределено Тогда Возврат; КонецЕсли; JSON_ctrl = СоздатьОбъект("MSScriptControl.ScriptControl"); |
|||
2
Garykom
гуру
23.03.19
✎
23:01
|
Даже интересно неужели еще никто не написал парсера JSON на языке 1С не используя внешние хрени?
Да оно будет тормозно но из спортивного интереса? |
|||
3
Злопчинский
23.03.19
✎
23:09
|
На исе лежат пару разработок вроде
|
|||
4
Garykom
гуру
23.03.19
✎
23:15
|
Нативное только http://catalog.mista.ru/public/119601/ но оно для 8-ки.
Да думаю можно адаптировать для 77 |
|||
5
dmitryds
23.03.19
✎
23:16
|
(0) текст - это точно текст или элемент формы?)))
|
|||
6
Garykom
гуру
23.03.19
✎
23:17
|
Хотя вот еще http://catalog.mista.ru/public/316985/ тоже для 8
|
|||
7
MWWRuza
гуру
23.03.19
✎
23:20
|
Я в вот этой обработке: http://catalog.mista.ru/public/608035/
уже давно использую это: http://catalog.mista.ru/public/271165/ Да, не совсем средствами 1С делается, а "разбор идёт средствами операционной системы, а не 1С, что существенно увеличивает скорость работы парсера." Ну, и что - главное работает, и вполне приемлемо. |
|||
8
ovs199
24.03.19
✎
00:40
|
(1) Подготавливается процедура по обработке.
(5) Это объект "Текст" который я выбираю из каталога "Текст.Открыть(КаталогФС+ФайлФС)". |
|||
9
Garykom
гуру
24.03.19
✎
01:21
|
И думаешь MSScriptControl.ScriptControl знает что такое объект "Текст" ?
Строку ему скормить не пробовал? Но в 77 со строками проблема их максимальной длины. Короче придется скрипт на jscript слегка дорабатывать, засунуть туда переменную и пару процедур по ее очистке и заполнению добавлением из строк полученных из Текст. |
|||
10
MetaDon
24.03.19
✎
08:15
|
(2) я делал разборку строковыми функциями json с сайта Росреестра и норм
(9) ага, и как еще этот скрипт работает) с 3 ===? |
|||
11
d4rkmesa
24.03.19
✎
10:27
|
(4) Кстати, да, для 8.2 лучший вариант вообще из того что находил, думаю можно портировать на 7.7 при желании.
|
|||
12
trad
24.03.19
✎
11:36
|
КОП для 1с++
https://www.dropbox.com/s/pmpgyd068mzzu7k/kop1c_JSON.7z?dl=0 экспорт: ЧтениеJSON ЗаписьJSON |
|||
13
trad
24.03.19
✎
11:37
|
//defcls.prm
//#класс JSON = КОП_JSON.ert //#{ //# Неопределенный ЧтениеJSON(Строка Стр, Число Поз = 1); //# Строка ЗаписьJSON(Неопределенный Значение, Число ПереносСтрок = 0, Строка Отступ = ""); //#} //Соответствие значений JSON значениям 1С //Запись - Структура //Массив - СписокЗначений //Число - Число //Строка - Строка с поддержкой \', \", \\, \/, \t, \n, \r, \f, \b; без поддержки \uFFFF. //Литерал true - "true" //Литерал false - "false" //Литерал null - "null" |
|||
14
Shur1cIT
24.03.19
✎
16:02
|
(0) насколько помню клюшки могут с JS работать через MSScriptControl
соответственно в JS есть механизм работы с json и соответственно есть возможность запросы различные на сервер слать |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |