Я попытался импортировать wsdl, содержащий «AdhocQuery», и импортер wsdl завершился неудачно с ошибкой нарушения прав доступа в «dclsoap230.bpl». Теперь я пытаюсь создать класс вручную.
текущий код
AdhocQuery = class; { "urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"[GblElm] }
ValueType = array of WideString;
ValueListType = class(TRemotable)
private
FValue: ValueType;
published
property Value: ValueType read FValue write FValue;
end;
SlotType = class(TRemotable)
private
fname: WideString;
FValueList: ValueListtype;
published
property name: WideString index (IS_ATTR)read fname write fname;
property ValueList: ValueListType read FValueList write FValueList;
end;Slots = array of SlotType;
AdhocQuery = class(TRemotable)
private
FID: WideString;
FSlot: Slots;
public
published
property id: WideString index (IS_ATTR or IS_OPTN)read FID write FID;
property Slot: Slots read FSlot write FSlot;//problem proint
end;
RemClassRegistry.RegisterXSClass(AdhocQuery, 'urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0', 'AdhocQuery'); //...so on
мой текущий код вывода
<AdhocQueryRequest xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:query:3.0">
<ResponseOption returnType="LeafClass" returnComposedObjects="true"/>
<AdhocQuery id="urn:uuid:14d4debf-8f97-4251-9a74-xxxxxx">
<Slot xmlns="urn:MyHR.base">
<Slottype xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0" name="$XDSDocumentEntryPatientId">
<ValueList xmlns="urn:MyHR.base">
<Value> <string>'somestr^^^&somestr&ISO'</string></Value>
</ValueList>
</Slottype></Slot></AdhocQuery></AdhocQueryRequest>
ожидаемый вывод
<AdhocQueryRequest xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:query:3.0">
<ResponseOption returnType="LeafClass" returnComposedObjects="true" />
<AdhocQuery id="urn:uuid:14d4debf-8f97-4251-9a74-xxxxxx" xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
<Slot name="$XDSDocumentEntryPatientId"><ValueList><Value>'somestr^^^&somestr&ISO'</Value></ValueList></Slot>
<Slot name="$XDSDocumentEntryStatus"><ValueList><Value>('urn:oasis:names:tc:ebxml-regrep:StatusType:Approved')</Value></ValueList></Slot>
<Slot name="$XDSDocumentEntryClassCode"><ValueList><Value>('somestr')</Value></ValueList></Slot>
</AdhocQuery></AdhocQueryRequest>
WSDL-файл https://drive.google.com/open?id=1J2BFXdQyps7gNsRMzmzxRbqdKvxmXKgV
- как получить Слот (массив) в AdhocQuery ?
- как получить xmlns = "urn: oasis: names: tc: ebxml-regrep: xsd: оправа: 3.0" как атрибут AdhocQuery ?