Когда вы выполняете запрос исторических данных из веб-сервисов Datastream™ от Refinitiv™, иногда запрос возвращает ошибку вместо данных. Используйте этот рабочий процесс, чтобы получить доступ к сообщениям об ошибке веб-сервисов Потока данных.
history функция возвращает ошибки в matlab.net.http.ResponseMessage объект. Например, предположите, что вы вводите недопустимое имя безопасности для sec входной параметр. Получившийся выход имеет эту форму:
d =
ResponseMessage with properties:
StatusLine: 'HTTP/1.1 200 OK'
StatusCode: OK
Header: [1×6 matlab.net.http.HeaderField]
Body: [1×1 matlab.net.http.MessageBody]
Completed: 0
Доступ к Body свойство с помощью записи через точку.
d.Body
ans =
MessageBody with properties:
Data: [1×1 struct]
Payload: []
ContentType: [1×1 matlab.net.http.MediaType]
ContentCoding: [0×0 string]Чтобы получить доступ к тексту сообщения об ошибке, получите доступ к вложенной структуре DataResponse сохраненный в Data свойство.
d.Body.Data.DataResponse
ans =
struct with fields:
AdditionalResponses: []
DataTypeNames: []
DataTypeValues: [3×1 struct]
Dates: []
SymbolNames: []
Tag: ''Затем получите доступ к SymbolValues поле в DataTypeValues массив структур.
d.Body.Data.DataResponse.DataTypeValues(1).SymbolValues
ans =
struct with fields:
Currency: []
Symbol: 'YYY'
Type: 0
Value: '$$ER: E100,INVALID CODE OR EXPRESSION ENTERED'Зафиксируйте свой код на основе сообщения об ошибке в Value поле .