![]() |
|
Фабрика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.ЯндексДиск не совпадает со значением в расширяемой конфигурации |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |