Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Delphi DLL) SharePoint -- Check Out a File (or Undo a Checkout)In SharePoint, you can check out a file to make sure nobody can change it before you update it. After updating, you can check in the file. This example shows how to check out a SharePoint file. Note: To undo a checkout, replace the string "checkout" with "undocheckout" in the line of code that sets the request's path.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Http, HttpRequest, Xml, HttpResponse; ... procedure TForm1.Button1Click(Sender: TObject); var http: HCkHttp; req: HCkHttpRequest; bUseTls: Boolean; resp: HCkHttpResponse; xml: HCkXml; begin // This requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. http := CkHttp_Create(); // If SharePoint Windows classic authentication is used, then set the // Login, Password, LoginDomain, and NtlmAuth properties. CkHttp_putLogin(http,'SHAREPOINT_USERNAME'); CkHttp_putPassword(http,'SHAREPOINT_PASSWORD'); CkHttp_putLoginDomain(http,'SHAREPOINT_NTLM_DOMAIN'); CkHttp_putNtlmAuth(http,True); // The more common case is to use SharePoint Online authentication (via the SPOIDCRL cookie). // If so, do not set Login, Password, LoginDomain, and NtlmAuth, and instead // establish the cookie as shown at SharePoint Online Authentication // The more common case is to use SharePoint Online authentication (via the SPOIDCRL cookie). // If so, do not set Login, Password, LoginDomain, and NtlmAuth, and instead // establish the cookie as shown at SharePoint Online Authentication // This example will check out the file named "penguins2.jpg" // which is located in the "/Documents" folder. req := CkHttpRequest_Create(); CkHttpRequest_putHttpVerb(req,'POST'); // Note that our path uses GetFileByServerRelativeUrl and not GetFolderByServerRelativeUrl // Also, if your Sharepoint site is within a site collection, the URL is formatted like this (where "teamA" is the name of the site) // /sites/teamA/_api/web/GetFileByServerRelativeUrl('/sites/teamA/Documents/penguins2.jpg')/checkout // Note: To undo a checkout, replace "checkout" with "undocheckout" in the following line of code. CkHttpRequest_putPath(req,'/_api/web/GetFileByServerRelativeUrl(''/Documents/penguins2.jpg'')/checkout'); // We need to add a form digest value in the X-RequestDigest header field. // See this example for details on // how to get (and cache) a form digest value CkHttpRequest_AddHeader(req,'X-RequestDigest','SHAREPOINT_FORM_DIGEST'); // Send the POST using HTTPS (TLS). Port 443 is the default port for https. bUseTls := True; resp := CkHttp_SynchronousRequest(http,'SHAREPOINT_HTTPS_DOMAIN',443,bUseTls,req); if (CkHttp_getLastMethodSuccess(http) <> True) then begin Memo1.Lines.Add(CkHttp__lastErrorText(http)); Exit; end; // The response body contains XML. xml := CkXml_Create(); CkXml_LoadXml(xml,CkHttpResponse__bodyStr(resp)); if (CkHttpResponse_getStatusCode(resp) <> 200) then begin Memo1.Lines.Add('Response status code = ' + IntToStr(CkHttpResponse_getStatusCode(resp))); Memo1.Lines.Add(CkXml__getXml(xml)); Memo1.Lines.Add('Failed'); CkHttpResponse_Dispose(resp); Exit; end; CkHttpResponse_Dispose(resp); // Show the successful XML response. Memo1.Lines.Add(CkXml__getXml(xml)); Memo1.Lines.Add('Success.'); // A successful XML response looks like this: // <?xml version="1.0" encoding="utf-8" ?> // <d:CheckOut xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" // xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" // xmlns:georss="http://www.georss.org/georss" // xmlns:gml="http://www.opengis.net/gml" m:null="true" /> // // CkHttp_Dispose(http); CkHttpRequest_Dispose(req); CkXml_Dispose(xml); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.