SharePointCommunity
Die deutschsprachige Community für SharePoint, Office 365 und mit Azure

REST API Dokument erzeugen

bewertet von 0 Usern
Dieser Beitrag hat 13 Antworten | 1 Follower

Top-150-Beitragsschreiber
Beiträge 97
Dennis94 erstellt: 3 Nov 2017 8:21

Hallo zusammen,

Ich würde gern über die REST API in SharePoint Online ein Dokument in einer Dokumentenbibliothek erzeugen. Hierzu benutzen ich diesen Endpunkt:

http://site url/_api/web/lists/GetByTitle('Test')/items

mit diesem body:

{ '__metadata': { 'type': 'SP.ListItem' }, 'Title': 'Test'}

Ich bekomme jedoch die Fehlermeldung ungültige Anforderung. Kann mir da jemand weiterhelfen?

Gruß Dennis

Top-150-Beitragsschreiber
Beiträge 97

Ah, super. Vielen Dank :)

Top-150-Beitragsschreiber
Beiträge 97

Ich hätte noch eine andere Frage.

In einer SharePoint Bibliothek gibt es ja so ein Suchfeld, um nach den Dokumenten zu suchen. Ich habe einige Spalten (Firmenname, Firmennummer, Adresse, ...), die alle identisch angelegt sind und zwar als einfache Textzeile. Ich habe hier dann das Problem, dass ich in Adresse oder Firmennummer problemlos über dieses Suchfeld die entsprechenden Dokumente finde (z.B. alle Dokumente mit Adresse "Testweg 1"). Bei der Spalte Firmenname funktioniert es aber einfach nicht, egal was ich mache. Beispiel: Suche alle Dokumente mit Firmenname "SAP" liefert kein Ergebnis.

Hast du da vielleicht auch eine Idee, woran das liegen könnte?

Top-10-Beitragsschreiber
Männlich
Beiträge 18.326

Sind die Spalten alle manuell angelegt worden oder ist der Firmenname z.B. die umbenannte Titelspalte? Und schaue mal in Websiteeinstellungen - Suchschema und was Du dort zu den Spalten findest.

Viele Grüße
Andi
af @ evocom de
Blog
Top-150-Beitragsschreiber
Beiträge 97

Die Spalten sind alle von mir neu als Websitespalten angelegt worden. Im Suchschema von Firmenname war neben den Eigenschaften die bei allen anderen waren (Firmenname0OWSTEXT, FirmennameOWSTEXT) noch was mit RefinableString (ich erinnere mich, dass ich damit mal etwas rumgespielt habe..:D). bei Firmenname0OWSTEXT und FirmennameOWSTEXT ist jeweils nur der Typ auf Text gesetzt, sonst alles leer. So sieht es bei den anderen auch aus.

Top-150-Beitragsschreiber
Beiträge 97

Ich habe nochmal eine Frage zu REST:

Man kann ja mit GetFileByServerRelativeUrl(relativeUrl)/Property sich die Eigenschaften (z.B. Titel) von Dokumenten ausgeben lassen. Funktioniert das auch für selbst erstellte Spalten? Habe eine Spalte Token, die ich gerne auslesen würde. Ist das so oder eventuell anders möglich?

Top-10-Beitragsschreiber
Männlich
Beiträge 18.326

Das geht exakt genauso. Du mußt nur darauf achten, den internen Namen der Spalten zu verwenden. Das ist der XML-kodierte Name, der bei der Neuanlage der Spalte angegeben wurde. Du siehst ihn, wenn Du z.B. in den Listeneinstellungen auf eine Spalte klickst in der Adresszeile des Browsers.

Viele Grüße
Andi
af @ evocom de
Blog
Top-150-Beitragsschreiber
Beiträge 97

Du meinst hier oder?

https://contoso.sharepoint.com/sites/Dokumente/_layouts/15/FldEdit.aspx?List=%7B06480B2B-B70D-463B-9FD6-0F8FD116E047%7D&Field=Token

da wäre "Token" der interne Name oder?

Wenn ich es mit "Token" probiere, also

 GetFileByServerRelativeUrl(relativeUrl)/Token

Bekomme ich die Fehlermeldung ungültige Anforderung :/

Top-10-Beitragsschreiber
Männlich
Beiträge 18.326

Dennis94:
da wäre "Token" der interne Name oder?

Exakt.

Dennis94:
GetFileByServerRelativeUrl(relativeUrl)/Token

Bekomme ich die Fehlermeldung ungültige Anforderung

Und z.B. mit Title funktioniert das (habs nicht versucht)? Dann wäre das echt seltsam...

Viele Grüße
Andi
af @ evocom de
Blog
Top-150-Beitragsschreiber
Beiträge 97

Ja, mit Title oder Author usw. funktioniert es. Mit selbst erzeugten oder auch der Dokumenten-ID leider nicht. :(

Top-10-Beitragsschreiber
Männlich
Beiträge 18.326

Was ist das denn für ein Spaltentyp? Und bist Du sicher, daß die Spalte auch zur Bibliothek bzw. zum Inhaltstyp des Dokuments gehört?

Viele Grüße
Andi
af @ evocom de
Blog
Top-150-Beitragsschreiber
Beiträge 97

Es handelt sich dabei um eine einzelne Textzeile. In der Bibliothek ist die Spalte definitiv. Inhaltstypen habe ich mehrere in der Bibliothek. Habe die Spalte jetzt mal zu allen hinzugefügt und teste dann nochmal. Vielleicht lag es ja da dran

Top-150-Beitragsschreiber
Beiträge 97

Habe die Lösung gefunden. Anstatt "GetFileByServerRelativeUrl(relativeUrl)/Property" muss man noch ein "ListItemAllFields" einbauen, also

"GetFileByServerRelativeUrl(relativeUrl)/ListItemAllFields/Property"

Trotzdem Vielen Dank Andi für deine Hilfe und Mühe :)

Seite 1 von 1 (14 Elemente) | RSS