|   |   | 
| 
 | ФабрикаXDTO на клиенте читает, на сервере нет | ☑ | ||
|---|---|---|---|---|
| 0
    
        m1_1976 30.05.25✎ 11:47 | 
        Имеем УНФ 3. Выгружаем в ОЗОН товары через Яндекс Диск. Там АПИ шмапи. Все работало  уже месяца четыре.
 Вчера вечером. Стало выдавать ошибку. Ковыряюсь весь день. Получаю: См. картинку на клиенте одна и та же строка работает и дает __Объект а на сервере не дает __ОБъект. А дает Ошибку 
 | |||
| 1
    
        m1_1976 30.05.25✎ 11:36 | 
        Вот обработка - проверьте может я ГЛЮЧУ     | |||
| 2
    
        m1_1976 30.05.25✎ 11:37 | 
        {"method":"PUT","href":"https://uploader99klg.disk.yandex.net:443/upload-target/20250530T105738.233.utd.16xmn5oe82whiuqfx3aalxwei-k99klg.4087635","templated":false ,"operation_id":"e6edb64271e173f178264c2fdf0d9eb7f08e92fbec09156d4e2a811b33607e7a"}
 вот строка которая приходит от Яндекс Диска | |||
| 3
    
        m1_1976 30.05.25✎ 11:38 | 
        8.3.25
 8.3.26 проверил - одинаково | |||
| 4
    
        m1_1976 30.05.25✎ 11:46 | 
        &НаСервере
 Процедура ЖСОНСервер() // ТУТ НЕ РАБОТАЕТ ЧтениеJSON = Новый ЧтениеJSON(); ЧтениеJSON.УстановитьСтроку(Объект.ТекстОбъекта); ТипОбъекта = ФабрикаXDTO.Тип("cloud-api.yandex.net/v1/disk", "uploadGetResponse"); __Объект = ФабрикаXDTO.ПрочитатьJSON(ЧтениеJSON, ТипОбъекта); Конецпроцедуры &НаКлиенте Процедура жосн(Команда) //////////////// ТУТ РАБОТАЕТ /////////////////// ЧтениеJSON = Новый ЧтениеJSON(); ЧтениеJSON.УстановитьСтроку(Объект.ТекстОбъекта); ТипОбъекта = ФабрикаXDTO.Тип("cloud-api.yandex.net/v1/disk", "uploadGetResponse"); __Объект = ФабрикаXDTO.ПрочитатьJSON(ЧтениеJSON, ТипОбъекта); ЖСОНСервер(); КонецПроцедуры | |||
| 5
    
        m1_1976 30.05.25✎ 11:40 | 
        Объект.ТекстОбъекта - это реквизит тип строка. Выложен на форму. Туда вставляю (2)     | |||
| 6
    
        Волшебник 30.05.25✎ 11:40 | 
        у сервера нет доступа в интернет     | |||
| 7
    
        m1_1976 30.05.25✎ 11:45 | 
        есть
 я уже на локальной базе в файловом варианте Просто тест делаю... | |||
| 8
    
        m1_1976 30.05.25✎ 11:42 | 
        (6) Да и доступ в ИНТЕРНЕТ мне не нужен. Я просто же уже разбираю JSON
 Из строки на Форме Внешней обработки | |||
| 9
    
        Fish гуру 30.05.25✎ 11:42 | 
        (0) "а на сервере дает Ошибку" - Это задание из серии "Угадайте текст ошибки"?     | |||
| 10
    
        m1_1976 30.05.25✎ 11:43 | 
        ОШибка такая:
 Ошибка при вызове метода контекста (ПрочитатьJSON) {ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(18)}:__Объект = ФабрикаXDTO.ПрочитатьJSON(ЧтениеJSON, ТипОбъекта); {ВнешняяОбработка.ВнешняяОбработка1.Форма.Форма.Форма(33)}:ЖСОНСервер(); [ОшибкаВоВремяВыполненияВстроенногоЯзыка] по причине: Ошибка преобразования данных XDTO: Чтение объекта типа: {cloud-api.yandex.net/v1/disk}uploadGetResponse Проверка свойства 'method': форма: Элемент имя: {cloud-api.yandex.net/v1/disk}method тип: {http://www.w3.org/2001/XMLSchema}string по причине: Ошибка проверки данных XDTO: Структура объекта не соответствует типу: {cloud-api.yandex.net/v1/disk}uploadGetResponse Проверка свойства 'method': форма: Элемент имя: {cloud-api.yandex.net/v1/disk}method тип: {http://www.w3.org/2001/XMLSchema}string Не установлено значение одного из следующих свойств: operation_id | |||
| 11
    
        m1_1976 30.05.25✎ 11:43 | 
        Но вот он там этот operation_id
 Его же видно! Вон он в (2) | |||
| 12
    
        m1_1976 30.05.25✎ 11:44 | 
        (9) пардон     | |||
| 13
    
        m1_1976 30.05.25✎ 11:47 | 
        Вчера работало 100%. Выгружали новые товары.
 Сегодня хотел один последний догрузить. И вот... | |||
| 14
    
        timurhv 30.05.25✎ 11:48 | 
        (13) выложите xsd схему, не у всех УНФ есть. В "XDTO-пакеты" найдите и экспортируйте (в конфигураторе)     | |||
| 15
    
        m1_1976 30.05.25✎ 11:49 | 
        проверьте кто нибудь у себя. Плиз. Может я чего в ппятницу глучу.
 Текст один. Я его выложил. Простой "ПрочитатьJSON". На клиенте ОК на сервере не ОК Из одной и тоже строки... Может пятница? | |||
| 16
    
        m1_1976 30.05.25✎ 11:50 | 
        <xs:schema xmlns:tns="cloud-api.yandex.net/v1/disk" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="cloud-api.yandex.net/v1/disk" attributeFormDefault="unqualified" elementFormDefault="qualified">
 <xs:complexType name="uploadGetRequest"> <xs:attribute name="path" type="xs:string" default="app:/"/> <xs:attribute name="overwrite" type="xs:boolean" default="true"/> <xs:attribute name="fields" type="xs:string"/> </xs:complexType> <xs:complexType name="uploadGetResponse"> <xs:sequence> <xs:element name="operation_id" type="xs:string"/> <xs:element name="href" type="xs:string"/> <xs:element name="method" type="xs:string"/> <xs:element name="templated" type="xs:string"/> </xs:sequence> </xs:complexType> <xs:complexType name="uploadPutResponse"> <xs:sequence> <xs:element name="href" type="xs:string"/> <xs:element name="method" type="xs:string"/> <xs:element name="templated" type="xs:string"/> </xs:sequence> </xs:complexType> <xs:complexType name="publishRequest"> <xs:attribute name="path" type="xs:string" use="required"/> <xs:attribute name="fields" type="xs:string"/> </xs:complexType> <xs:complexType name="publishResponse"> <xs:sequence> <xs:element name="href" type="xs:string"/> <xs:element name="method" type="xs:string"/> <xs:element name="templated" type="xs:string"/> </xs:sequence> </xs:complexType> <xs:complexType name="metainfoRequest"> <xs:attribute name="path" type="xs:string" use="required"/> <xs:attribute name="fields" type="xs:string"/> </xs:complexType> <xs:complexType name="metainfoResponse"> <xs:choice> <xs:element name="name" type="xs:string" nillable="true" minOccurs="0"/> <xs:element name="public_url" type="xs:string" nillable="true" minOccurs="0"/> <xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> </xs:choice> <xs:anyAttribute namespace="##any" processContents="lax"/> </xs:complexType> <xs:complexType name="deleteRequest"> <xs:attribute name="path" type="xs:string" use="required"/> <xs:attribute name="permanently" type="xs:boolean" default="true"/> <xs:attribute name="fields" type="xs:string"/> </xs:complexType> <xs:complexType name="error"> <xs:sequence> <xs:element name="message" type="xs:string"/> <xs:element name="description" type="xs:string"/> <xs:element name="error" type="xs:string"/> </xs:sequence> </xs:complexType> <xs:complexType name="errorUpload"> <xs:sequence> <xs:element name="reason" type="xs:string"/> <xs:element name="description" type="xs:string"/> <xs:element name="limit" type="xs:string"/> <xs:element name="message" type="xs:string"/> <xs:element name="error" type="xs:string"/> </xs:sequence> </xs:complexType> </xs:schema> | |||
| 17
    
        timurhv 30.05.25✎ 11:50 | 
        (14) А хотя нашел     | |||
| 18
    
        m1_1976 30.05.25✎ 11:50 | 
        наша часть вот эта... если я не путаю
 <xs:complexType name="uploadGetResponse"> <xs:sequence> <xs:element name="operation_id" type="xs:string"/> <xs:element name="href" type="xs:string"/> <xs:element name="method" type="xs:string"/> <xs:element name="templated" type="xs:string"/> </xs:sequence> </xs:complexType> | |||
| 19
    
        timurhv 30.05.25✎ 11:54 | 
        uploadGetResponse - в свойствах установите "Упорядоченный" в ложь.
 Вчера приходили как в схеме, сегодня - другой порядок. Клиент 1С видимо игнорирует этот момент, сервер - нет. | |||
| 20
    
        m1_1976 30.05.25✎ 11:55 | 
        еще раз.
 на клиенте СРАБАТЫВАЕТ. Точку Останова поставил Вот см. картинку на сервере нет... 
 | |||
| 21
    
        m1_1976 30.05.25✎ 11:56 | 
        (19) Конфа у клиента закрыта. Но в Копии щас попробую.     | |||
| 22
    
        timurhv 30.05.25✎ 12:01 | 
        (20) Я проверил с параметром "Упорядоченный", в схеме нажмите на галочку у "uploadGetResponse" и поставьте Ложь.
 На сервере заработает. Поведение как у вас 1 в 1 на платформе 8.3.26.1581. Клиент - ок, сервер - нет. | |||
| 23
    
        m1_1976 30.05.25✎ 12:02 | 
        (22) пробую
 Отпишусь через пару минут | |||
| 24
    
        m1_1976 30.05.25✎ 12:02 | 
        Это получается Яндекс чет поменял в АПИ своем...
 ??? | |||
| 25
    
        Fish гуру 30.05.25✎ 12:04 | 
        (24) Там тоже программисты сидят, кушать хотят. А для этого что-то иногда менять надо :)))     | |||
| 26
    
        timurhv 30.05.25✎ 12:04 | 
        (24) он и не обязан вроде соблюдать порядок. Это в 1С при описании XDTO по-умолчанию требует порядок и чтобы это исключать надо вручную прописывать в Ложь.     | |||
| 27
    
        m1_1976 30.05.25✎ 12:13 | 
        (19) ДА. Сработало! ЖУТЬ!!!!
 СПАСИБО! | |||
| 28
    
        m1_1976 30.05.25✎ 12:23 | 
        (22) Кстати через расширение не получается  поменять это свойство
 ПРи проверке Расширения: XDTO пакет ЯндексДиск Значение контролируемого свойства Пакет у объекта ПакетXDTO.ЯндексДиск не совпадает со значением в расширяемой конфигурации | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |