2017-04-14 5 views
0

Ist es möglich eine Eigenschaft in SAPUI5 Smart Table obligatorisch zu machen, damit ein Benutzer ein Feld während der Bearbeitung nicht leer lassen kann?SAPUI5 Smart Table - Smart Feld make Feld obligatorisch mit Annotation

habe ich gefunden this document sagen, dass es möglich sein sollte, mit Anmerkung wie diese Felder müssen ausgefüllt werden Steuerung auf Eigentum in metadata.xml Datei zu setzen:

<Property Name="NameLast" Type="Edm.String" Nullable="false" MaxLength="40" sap:label="Last name" sap:field-control="7" /> 

Aber mit dieser Einstellung bin ich immer in der Konsole folgende Fehlermeldung:

2017-04-14 11:37:36.691429 MockServer: Resource not found for the segment '7' 
2017-04-14 11:37:36.707985 The following problem occurred: HTTP request failed404,Not Found,{"error":{"code":404,"message":{"lang":"en","value":"Resource not found for the segment '7'"}}} - 

EDIT:

Später fand ich heraus, dass SAP: Feldsteuerung nicht Nummer enthalten sollte, sondern ein Weg express Ion zu einer anderen Eigenschaft, die die Nummer enthält. Dies funktioniert jedoch auch nicht:

<Property Name="NameLast" Type="Edm.String" Nullable="false" MaxLength="40" sap:label="Last name" sap:field-control="Name_fc" /> 
<Property Name="Name_fc" Type="Edm.Byte" /> 

Wert der Name_fc-Eigenschaft ist '7'. Ich sehe jetzt keinen Konsolenfehler, aber ich kann das Eingabe- (NameLast) -Feld immer noch leer lassen und es an den OData-Dienst senden, was ich nicht erwarte.

Hier ist ein Link zu einem Beispiel aus SAP, wo sie die erforderlichen Felder verwenden. Ich habe keine Ahnung, wie sie es geschafft haben. https://sapui5.netweaver.ondemand.com/sdk/explored.html#/sample/sap.ui.comp.sample.smartfield/code/SmartField.view.xml

+0

Könnten Sie bitte poste auch die volle metadata.xml? –

+0

metadata.xml ist hier - https://jsfiddle.net/sL2zrt8j/ – sachad

Antwort

0

For OData v2 the sap:field-control annotation on the Property can be used to specify whether the field is mandatory.

<Property Name="Customer" ... sap:field-control="mandatory"/> 
<Property Name="CompanyCode" ... sap:field-control="mandatory"/> 

https://sapui5.hana.ondemand.com/#docs/api/symbols/sap.ui.comp.smartfield.SmartField.html

+0

Leider Ihre Lösung auf den gleichen Fehler führt: Ressource nicht für das Segment ‚obligatorisch‘ gefunden - folgendes Problem aufgetreten: HTTP-Anforderung failed404, Nicht gefunden, {"error": {"code": 404, "message": {"lang": "en", "value": "Ressource nicht gefunden für das Segment 'obligatorisch'"}}} – sachad

Verwandte Themen