Заполнение данных по ИНН контрагента с помощью альтернативного сервиса огрн.онлайн

0. slava_1c 491 01.11.17 19:44 Сейчас в теме
Код для заполнения данных по ИНН контрагента из ЕГРЮЛ с сайта огрн.онлайн.

Перейти к публикации

0rel; OlegAr; +2 Ответить
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Mi11er 82 02.11.17 09:42 Сейчас в теме
О, за наводку про сервис 1С спасибо, а остальное можно было получать от DaData.
2. Serega-artem 14 02.11.17 11:46 Сейчас в теме
Еще не побывал, но за идею однозначно плюс!
3. OlegAr 14 02.11.17 11:49 Сейчас в теме
4. akim2040 20 02.11.17 13:32 Сейчас в теме
А что за сервис? Ради интереса пытался найти себя, и ни чего не дал полезного.
6. user694260_vip.allabirdin 02.11.17 14:13 Сейчас в теме
(4)1С:Контрагент
Быстрая проверка информации о контрагентах, автоматическое заполнение реквизитов контрагентов в различных документах и другие полезные функции

https://portal.1c.ru/applications/3
18. akim2040 20 03.11.17 07:58 Сейчас в теме
(6) Я имел ввиду сервис, который предлагается использовать в публикации. огрн.онлайн
Он мне не правильную информацию выдал обо мне. Вернее не актуальную
5. slava_1c 491 02.11.17 14:12 Сейчас в теме
Спасибо, друзья.

На счет сервиса dadata.ru - не соглашусь с тем что он равнозначен этому.
Например в dadate в ответе по адресу я получаю адрес в формате кладр,
а сегодняшнее требование к заполнению счетов-фактур вызвало коллективное помешательство
бухгалтеров и они поголовно хотят видеть адреса в формате ФИАС. Здесь же прилетает именно
адрес в формате ФИАС, да еще и с ГУИД ссылкой в значении, по которой можно получить и ссылку из Кладра:
Структ.address.fiasOnlineLink например "фиас онлайн"
также в сервисе легко увидеть закрытые организации и причину закрытия:
Структ.closeInfo.closeReason.name например "ПРЕКРАЩЕНИЕ ДЕЯТЕЛЬНОСТИ ЮРИДИЧЕСКОГО ЛИЦА В СВЯЗИ С ИСКЛЮЧЕНИЕМ ИЗ ЕГРЮЛ НА ОСНОВАНИИ П.2 СТ.21.1 ФЕДЕРАЛЬНОГО ЗАКОНА ОТ 08.08.2001 №129-ФЗ"
Из значения Структ.description можно получить исчерпывающую информацию по организации и контролить таким образом контров перед заключением договоров
И все это бесплатно!!! (надолго, надеюсь)))

А на счет того что себя не смогли найти... И слава богу))) это поиск по организациям, директорам и учредителям
ben19791010; vld1973; +2 Ответить
9. Mi11er 82 02.11.17 16:27 Сейчас в теме
(5)да, соглашусь, тут больше всего приходит.
Написал на 100 строк утилиту, буду крутить ее к базе =) Спасибо за ссылку.
11. rozer 274 02.11.17 17:01 Сейчас в теме
(5)
И все это бесплатно!!! (надолго, надеюсь)))


вряд ли бесплатно будет в будущем - как только наберут вес сразу монетизируют )
21. user828732 08.11.17 10:25 Сейчас в теме
(11) Видимо в этот сервис данные подсасываются из того же 1С Контрагент.
29. user861087 13.11.17 01:34 Сейчас в теме
(5)
Дадата приводит адреса именно к ФИАС. Почему вы думаете, что там адреса в формате КЛАДРа?
А ещё проставляются индексы, районы города и координаты ツ
31. slava_1c 491 13.11.17 02:54 Сейчас в теме
(29) Ну вот пример с их официального сайта
[
    "inn": "7719402047",
                "ogrn": "1157746078984",
                "okpo": null,
                "okved": "72.19",
                "okveds": null,
                "authorities": null,
                "documents": null,
                "licenses": null,
                "address": {
                    "value": "г Москва, г Троицк, Сиреневый б-р, д 1",
                    "unrestricted_value": "г Москва, г Троицк, Троицкий округ, Сиреневый б-р, д 1",
                    "data": { ... }
                },
 
Показать


Это формат ФИАС?
32. user861087 13.11.17 10:33 Сейчас в теме
(31) Это пример исправленного адреса, так как в ЕГРЮЛ полно ошибок. Адрес "как в ЕГРЮЛ" возвращается в поле address.data.source либо address.value, если address.data пустое.

Сегодняшнее требование к заполнению счетов-фактур вызвало коллективное помешательство
бухгалтеров и они поголовно хотят видеть адреса в формате ФИАС. Здесь же прилетает именно
адрес в формате ФИАС, да еще и с ГУИД ссылкой в значении, по которой можно получить и ссылку из Кладра.


Вот здесь подробности по этому поводу: https://dadata.userecho.com/forums/4-baza-znanij/topics/3369-adres-kompanii-v-tochnosti-kak-v-egryul/
33. slava_1c 491 13.11.17 11:48 Сейчас в теме
(32) Спасибо за разъяснения. Уверен, что для тех, кто выбирает себе интеграцию, это будет полезная информация!
7. gosizo 33 02.11.17 14:22 Сейчас в теме
Большое спасибо! то что нужно и в рабочем состоянии (в отличие от других подобных публикаций)
8. Xel'naga 02.11.17 16:07 Сейчас в теме
Для поиска физлица по ИНН
HTTPЗапрос = Новый HTTPЗапрос("интеграция/люди/?инн="+СокрлП(ИНН))
10. Mi11er 82 02.11.17 16:39 Сейчас в теме
Можем кому, будет интересно, как работает ( на ОФ, платформа 3.8)
Прикрепленные файлы:
ПолучениеДанных.epf
suarez55; exuma2; slava_1c; TrinitronOTV; +4 Ответить
12. Niko_Arte 02.11.17 18:51 Сейчас в теме
13. slava_1c 491 02.11.17 19:03 Сейчас в теме
(12) А это вот как раз то как (8) написал. Это как раз поиск по ИП, учредителям, директорам и сотрудникам.
Вот подробнее тут
14. rwf96 03.11.17 06:59 Сейчас в теме
Получаем структуру Структ. Такой конструкции - Структ.closeInfo.closeReason.name - в Структ нет. Судя по описанию она есть в Структ.predecessor. predecessor - это массив. При запросе информации, кол-во элементов в массиве predecessor равно 0. Подскажите, как правильно получить состояние Контрагента?
15. slava_1c 491 03.11.17 07:22 Сейчас в теме
(14) Точно есть, пример реальный привел. Есть но не всегда. Только когда организация закрыта. Поэтому проверяем не закрыта ли организация либо через
не Структ.closeInfo = Неопределено 
либо через
Попытка
16. slava_1c 491 03.11.17 07:27 Сейчас в теме
Если кому интересно как получить тоже самое из сервиса 1С - вот продолжение кода из публикации:
		
                ОбъектXDTO = Результат.РеквизитыЮрЛица;
		Сообщить("НаименованиеПолное "+ ОбъектXDTO.СвНаимЮЛ.НаимЮЛПолн);
		Сообщить("НаименованиеСокращенное "+ОбъектXDTO.СвНаимЮЛ.НаимЮЛСокр);
		Сообщить("ОГРН "+ ОбъектXDTO.ОГРН);
		Сообщить("КПП "+ОбъектXDTO.КПП);
		Адрес =ОбъектXDTO.СвАдрес.Адрес.Состав.ДопАдрЭл[0].Значение+", "+ ОбъектXDTO.СвАдрес.Адрес.Состав.СубъектРФ+", "+ОбъектXDTO.СвАдрес.Адрес.Состав.Улица;
		Для каждого СведенияОбАдресе Из ОбъектXDTO.СвАдрес.Адрес.Состав.ДопАдрЭл Цикл
			Если СведенияОбАдресе.Номер  <> Неопределено тогда
				Адрес = Адрес+", "+СведенияОбАдресе.Номер.Значение;
			КонецЕСлИ;
		КонецЦикла;
		Сообщить("Адрес: "+Адрес);
		Если ОбъектXDTO.СвУправлДеят <> Неопределено И ОбъектXDTO.СвУправлДеят.СведДолжнФЛ <> Неопределено Тогда
			Для каждого СведенияОДолжности Из ОбъектXDTO.СвУправлДеят.СведДолжнФЛ Цикл
				Если Найти(ВРег(СведенияОДолжности.НаимВидДолжн), "РУКОВОДИТЕЛЬ") > 0 И СведенияОДолжности.ФИО <> Неопределено Тогда
					Сообщить("Руководитель:"+СведенияОДолжности.ФИО.Фамилия+" "+СведенияОДолжности.ФИО.Имя+" "+СведенияОДолжности.ФИО.Отчество+", должность: "+СведенияОДолжности.НаимДолжн+", тел: "+СведенияОДолжности.ИННФл);
					Сообщить("Телефон:"+СведенияОДолжности.НомТел);
					Прервать;
				КонецЕсли;
			КонецЦикла;
		КонецЕсли;
Показать
17. rwf96 03.11.17 07:43 Сейчас в теме
19. rpgshnik 2371 07.11.17 14:49 Сейчас в теме
По вам походу уже обработки пилят https://infostart.ru/public/695635/ )))
20. slava_1c 491 07.11.17 17:51 Сейчас в теме
(19) Ну, по-хорошему, это и делалось для того чтобы все пилили обработки. )))
Автор ее к рознице прикрутил. Еще можно ее к бухгалтерии 2.0 прикрутить - там тоже нет такого сервиса, УТ 10.2, 10.3.
Ну а в 77 вообще поле не паханное, так что... ))))
В любом случае, спасибо за бдительность!
dsuryaninov; +1 Ответить
22. Zelenhof 42 09.11.17 12:53 Сейчас в теме
Хороший вариант. Жаль не подходит для пользователей совсем уж старых решений на 8.1. (
23. slava_1c 491 09.11.17 14:02 Сейчас в теме
(22) Ну конкретно этот код не работает - там просто нет таких методов.
Для пользователей 8.1 и 7.7, можно порекомендовать использовать COM объект WinHttp.WinHttpRequest.5.1
Пример для 8.1 будет такой
WinHttp = Новый COMОбъект("WinHttp.WinHttpRequest.5.1");
	WinHttp.Option(2,"utf-8");
	WinHttp.Open("POST","https://xn--c1aubj.xn--80asehdb/интеграция/компании/?инн="+СокрлП(ИНН),0);
	WinHttp.SetRequestHeader("Accept-Language", "ru");
	WinHttp.SetRequestHeader("Accept-Charset","utf-8");
	WinHttp.setRequestHeader("Content-Language", "ru");
	WinHttp.setRequestHeader("Content-Charset", "utf-8");
	WinHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=utf-8");
	WinHttp.Send(""); 
	Ответ = WinHttp.ResponseText();

Показать


А дальше парсить, парсить... ))) Поищите в сети "парсер JSON". Он точно есть уже готовый.
regoff; Zelenhof; +2 Ответить
25. _Z1 38 11.11.17 18:15 Сейчас в теме
(23) Это в v7.7 не работает.
Пробовал по всякому.
Подскажите куда копать, что посмотреть.
я с запросами на Вы
27. slava_1c 491 12.11.17 21:08 Сейчас в теме
(25) Не было 77 под рукой (я уже забыл как там писать-то )))). Сейчас проверил - 404 Bad request... Зато без проблем сработал 1с-ный сервис. Пример в этой статье При том, что он тоже https..
24. waol 269 10.11.17 12:10 Сейчас в теме
присоединяюсь к благодарностям. Еще не смотрел, судя по обсуждениям +
26. VGHOST 160 11.11.17 23:02 Сейчас в теме
Полезная инфа, благодарю.
Настораживает только то, что база ОГРН.ОНЛАЙН содержит ошибки - меня, например, приписала к чужой ИФНС, на которую в выписке с https://egrul.nalog.ru/ никаких ссылок нет.
Видимо исправят, со временем...
30. user861090 13.11.17 01:52 Сейчас в теме
34. Serega-artem 14 11.01.18 15:23 Сейчас в теме
Во-первых, еще раз спасибо за публикацию!

Во-вторых, вопрос: взяв за идею вашу публикацию сделал на тестовой базе реализацию добавления/актуализацию данных в справочнике юр. лиц. Поигрался и на какое-то время отложил. Вчера попробовал снова, получил:

{
  "error" : "Access is denied"
}


Почитал про api, там нужно получать ключ api. Посмотрел заявку на получения ключа - ссылка на сайт с продуктом, описание, скриншоты и т.д. Для тиражных продуктов - ок. Что делать с не тиражными решениями? Там сайта, описания и т.п. нет. Думаю написать разработчикам с этим вопросом, но вдруг кто-то из 1сников уже обращался и имел опыт получения ключа API?
35. slava_1c 491 11.01.18 16:07 Сейчас в теме
Да, сервис по прежнему бесплатен, но уже не бесконтролен, как это было до начала этого года. Это касается не только данного сервиса, например яндекс с нового года тоже отключил все тестовые ключи, пришлось заново регистрировать личный кабинет для корректной работы некоторых локальных решений 1С для логистики. Там мы предоставили сайт компании, на которой нет никакой карты но получили ключ. По сути , это защита от роботов, а не от реализации 2-х, 10-ти запросов в день.
36. Serega-artem 14 11.01.18 16:48 Сейчас в теме
(35) Спасибо за ответ! Вот кстати, что пишут разработчики в своей группе в ВК:


В связи с большим наплывом заявок на API имеет смысл прояснить критерий отбора. Ключи получают те продукты, которые предоставляют сервисы широкому кругу пользователей: боты для месседжеров, плагины для 1С, CRM и прочих. Т.е. способствующие распространению открытых данных.
Продукты, которые используются для личного или внутрикорпоративного пользования, получают отказы. Таким продуктам будет позже предложен вариант с платным API на выделенном сервере.


т.е. для нас с Вами ситуация двоякая. С одной стороны, они говорят, что 1с - это гуд. С другой, все продукты для внутрикорпоративного использования - это плохо. Учитывая специфику 1с, одно противоречит другому. Простой пример: Я сделал некую тестовую конфигурацию с использованием сервиса. Она получилось (предположим) удачной, я получил на нее ключ, конфу начали качать и встраивать в свои конфы (она для этого и создавалась) и получаются, что если один из тех, кто воспользовался конфигурацией, нарушил правила API ключ забанят у всех. Так получается?

p/s Задал эти вопросы разработчикам. Посмотрим, что скажут.
37. slava_1c 491 11.01.18 17:29 Сейчас в теме
(36) Совершенно верно. Бесплатный сервис и делается для того чтобы им пользовались все. Однако, встраивая этот и подобный ему сервисы в некую конфигурацию, сам ключ лучше сделать константой, которую пользователь будет вносить в момент начала эксплуатации. И если он вдруг нарушит правила пользования, это коснется только его. По идее разработчики совсем не против использования их сервиса в 1С.
38. Serega-artem 14 11.01.18 18:12 Сейчас в теме
(37) Вариант с константой - это первое, что пришло на ум. Но тут:

1. Чтобы получить ключ API на обработку или конфигурацию надо прислать разработчикам ссылку на продукт. Пусть даже на публикацию на инфостарте. Но публиковать по-факту неработающие и не оттестированные разработки тут (да и где угодно) нельзя. А чтобы протестировать и опубликовать нужен ключ API. Замкнутый круг. Ну это ладно, тут я думаю можно как-то договориться.

2. Сделали подключаемый ключ т.е. каждый вводит для себя. Скачал условный Иван Иванович обработку "Заполнение контрагентов в БП 3.0 с ОГРН.онлайн", она (обработка) просит ввести ключ API. А чтобы получить ключ API нужно прислать ссылку на приложение с его описанием и т.д. Всем одну и туже ссылку на публикацию на ИС присылать?

Как я понимаю логику разработчиков - одно приложение, один ключ. Но как это будет работать применимо к 1с, не очень понятно. Да и на других платформах тоже. Возможно, компрометироваться в случаи нарушения будет не ключ, а IP или еще что-то.
39. slava_1c 491 11.01.18 18:32 Сейчас в теме
Вот пример публикации которая, судя по самому сайту, получила одобрение. Т.е. автор, создал СВОЙ сервис, использующий ИХ сервис.
40. Serega-artem 14 12.01.18 09:39 Сейчас в теме
(39) Ага, интересный вариант. Но побуду опять старой бабкой и поворчу) Такой подход ИМХО не совсем правильный, ОГРН.онлайн тянет инфу из открытых информ. систем используя их API, выступая своего рода агрегатором, потом предоставляет доступ к этим данным через свой API. Появляется некий сервис для 1с, который тянет данные с ОГРН.онлайн и раздает их уже по своему API. Слишком много звеньев получается. А чем их больше тем больше потенциальных проблем и ошибок в получаемых данных. Этакий глухой телефон получается. Пообщался, кстати, с разработчиком в ВК. Вот, что они пишут:

Вопрос:

Вопрос по 1с. Предположим, создал я конфигурацию для примера работы с сервисом. Получил на нее ключ API, выложил ее на Инфостарте (крупнейшее сообщество 1с программистов), её скачало ну скажем 20 человек и внедрили в свои проекты. Кто-то один нарушил условия работы API и ключ забанили. В итоге остальные 19 то же в пролете? Ну или с другой стороны посмотрим. Я хочу создать решение (обработку, расширение) для одной из существующих (не своих) конфигураций для 1с. Чтобы создать и протестировать мне нужен ключ, для получения ключа я должен отправить Вам запрос с указанием (с сайтом, скриншотами и т.п.) решения. Замкнутый круг получается. Просто 1с - это открытый код, я создаю что-то, выкладываю, и любой это может модернизировать, использовать, встраивать в свои проекты забирая мой ключ API.


Ответ:

В случае открытого кода вам нужно сделать свой сервер, который будет принимать запросы от системы с открытым кодом и переправлять их к моему API. И этот ваш сервер должен отвечать за количество запросов, ставя запросы в пул и отравляя их с учётом ограничения.


Вопрос:

А такой вариант рассматривается: В прикладном решении (конфигурация, обработка) ключ API не забивается разработчиком, а вводится пользователем самостоятельно? т.е. Пользователь скачивает обработку, получает для нее у Вас свой собственный ключ и уже работает с ним и отвечает за него. Просто вариант с собственным сервером, как я думаю, будет мало приемлем в ввиду того, что много действительно хороших разработок для 1с делается на энтузиазме и не монетизируется в принципе (посмотрите тот-же Инфостарт). И заморачиваться собственным сервером мало кто будет.


Ответ:

Такой вариант возможен только с платными ключами. В противном случае недобросоветсные люди будут этим пользоваться, набирать себе от имени разных людей по 100 ключей и спамить запросы.


От себя добавлю, что идея платного ключа (при его небольшой цене и разовой (хотя бы в течении года) оплате) идея вполне себе хорошая. Сервис очистится от "левых" запросов + монетизация всегда стимул для разработчика продолжать проект. Вопрос как быстро они это сделают и как всё это будет выглядеть, что будет с ключами для разработчиков (для тестирования и отладки). Вопросов много, но настрой у разработчиков, вроде, вполне рабочий)
41. madonov 155 24.01.18 03:15 Сейчас в теме
Скачал несколько обработок, разобрал данный пример везде в качестве ответа получаю ответ "По указанным параметрам не найдено ни одной компании". Так сервис работает без ключа или нет?
42. slava_1c 491 24.01.18 12:15 Сейчас в теме
(41) Нет, без ключа с нового года API увы не работает. Хотя, какое то странное сообщение получаете. Ответ должен быть в формате JSON
error: "Access is denied"
43. triviumfan 24 02.02.18 10:57 Сейчас в теме
(42) На строке
ОтветСайта.ПолучитьТелоКакСтроку();

я получаю пустую строку, а далее ошибка чтения/преобразования значения JSON.
В общем, фейл :(
44. mv7890 9 20.09.18 10:23 Сейчас в теме
Бесплатно не работает: "Access is denied" . Будет честно об этом написать в самом начале.
45. slava_1c 491 20.09.18 19:49 Сейчас в теме
(44) Да, к сожалению это так. Отредактировал.
46. pentanom 23 15.11.18 23:05 Сейчас в теме
(20.09.2018) ВНИМАНИЕ!! К великому сожалению с момента написания статьи данный сервис перестал быть бесплатным...

За вообщем-то небольшие деньги (2 коп за запрос, мин. 10000 запросов = 200 руб) можно получить ключ доступа к API. А куда его нужно вставить в приведенном коде.
47. slava_1c 491 16.11.18 00:38 Сейчас в теме
Авторизация

В случае одобрения вашей заявки вам будет предоставлен ключ доступа. Данный ключ доступа необходимо указывать в заголовке X-ACCESS-KEY при каждом запросе к API.


ssl = Новый ЗащищенноеСоединениеOpenSSL();
	HTTPСоединение = Новый HTTPСоединение("xn--c1aubj.xn--80asehdb",443,,,,,ssl);     
    ЗаголовокЗапросаHTTP = Новый Соответствие();
    ЗаголовокЗапросаHTTP.Вставить("X-ACCESS-KEY", "ЗДЕСЬ ВСТАВИТЬ ЗНАЧЕНИЕ КЛЮЧА");
HTTPЗапрос = Новый HTTPЗапрос("интеграция/компании/?инн="+СокрлП(ИНН), ЗаголовокЗапросаHTTP); 
	Попытка
		ОтветСайта =  HTTPСоединение.Получить(HTTPЗапрос);
		ТекстJSON = ОтветСайта.ПолучитьТелоКакСтроку();
	Исключение
		Возврат;
	КонецПопытки;
Показать


Как то так...
pentanom; +1 Ответить
48. pentanom 23 16.11.18 11:32 Сейчас в теме
(47) Спасибо !

Но теперь, вероятно, нужно как-то и кодировку установить.
Это тоже в заголовке делается ?
49. slava_1c 491 16.11.18 12:51 Сейчас в теме
Все верно, к примеру:

ЗаголовокЗапросаHTTP.Вставить(«Content-Type», «application/json; charset=utf-8»);
50. ArtemiFD 42 08.04.19 12:02 Сейчас в теме
тоже использую сервис dadata.ru, ниже приведу небольшой пример:

Функция ПолучитьКППОрганизацииИзСервиса(ИНН)
	
	// ДЕМО ПРИМЕР
	// --
	// Для получения информации по организации используем сервис https://dadata.ru/, требуется только регистрация;
	// выбрал findById (т.е.: "Организация по ИНН или ОГРН"),
	// информацию о сервисе смотри в документации: https://dadata.ru/api/find-party/,
	// в примере из всей информации получаю только КПП.
	// --
	// Стоимость: Бесплатно до 10 тысяч запросов в день. Больше — в составе годовой подписки.
	
	
	//******************
	//* Результат
	КПП = Неопределено;
	
	
	//******************
	//* НАСТРОЙКИ
	Токен = "тут должен быть токен";
	
	Прокси = Неопределено;
	//Прокси = Новый ИнтернетПрокси;
	//Прокси.Установить("https", "СЕРВЕР", ПОРТ);
	
	
	
	//******************
	//* ТЕЛО ОБРАБОТЧИКА
	
	SSL = Новый ЗащищенноеСоединениеOpenSSL();
	Попытка
		Соединение = Новый HTTPСоединение("suggestions.dadata.ru",,,, Прокси,, SSL);
	Исключение
		ИнфОш = ИнформацияОбОшибке();
		ВызватьИсключение КраткоеПредставлениеОшибки(ИнфОш);
	КонецПопытки;
	
	ДанныеЗапрса = Новый Структура("query", ИНН);
	ДанныеЗапрсаJSON = ЗначениеВСтрокуJSON(ДанныеЗапрса);
	
	АдресРесурса = "/suggestions/api/4_1/rs/findById/party";
	
	HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса);
	HTTPЗапрос.Заголовки.Вставить("Content-Type" , "application/json; charset=utf-8");
	HTTPЗапрос.Заголовки.Вставить("Accept"       , "application/json");
	HTTPЗапрос.Заголовки.Вставить("Authorization", "Token " + Токен);
	HTTPЗапрос.УстановитьТелоИзСтроки(ДанныеЗапрсаJSON, КодировкаТекста.UTF8);
	
	Попытка
		HTTPОтвет = Соединение.ОтправитьДляОбработки(HTTPЗапрос);
	Исключение
		ИнфОш = ИнформацияОбОшибке();
		ВызватьИсключение КраткоеПредставлениеОшибки(ИнфОш);
	КонецПопытки;
	
	Если HTTPОтвет.КодСостояния = 200 Тогда 
		
		СтрокаJSON = HTTPОтвет.ПолучитьТелоКакСтроку(КодировкаТекста.UTF8);
		
		Значение = ЗначениеИЗСтрокиJSON(СтрокаJSON);
		
		ДанныеПоОрганизации  = Значение.suggestions[0];
		
		КПП = ДанныеПоОрганизации.data.kpp;
		
	КонецЕсли;
	
	Возврат КПП;
	
КонецФункции

Функция ЗначениеВСтрокуJSON(Значение)
	ЗаписьJSON = Новый ЗаписьJSON;
	ЗаписьJSON.УстановитьСтроку( Новый ПараметрыЗаписиJSON(, Символы.Таб));
	ЗаписатьJSON(ЗаписьJSON, Значение);
	Возврат ЗаписьJSON.Закрыть();
КонецФункции

Функция ЗначениеИЗСтрокиJSON(СтрокаJSON)
	ЧтениеJSON = Новый ЧтениеJSON;
	ЧтениеJSON.УстановитьСтроку(СтрокаJSON);
	Значение = ПрочитатьJSON(ЧтениеJSON);
	ЧтениеJSON.Закрыть();
	Возврат Значение;
КонецФункции
Показать
51. pridecom 667 06.11.19 12:56 Сейчас в теме
Для 7.7 если будет готовый, дайте знать, пож
53. salexio 17.10.20 22:52 Сейчас в теме
Что у меня не так
Структ = ПрочитатьJSON(ЧтениеJSON);

по причине:
Непредвиденный символ при чтении JSON
Оставьте свое сообщение
Вопросы с вознаграждением