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
(DataFlex) SharePoint -- Get Files in Root FolderSee more SharePoint ExamplesGets the list of files that exist in the root folder.
Use ChilkatAx-win32.pkg Procedure Test Handle hoHttp Variant vSbJson Handle hoSbJson Boolean iSuccess Handle hoJson Integer iNumFiles Handle hoLastMod Variant vDt Handle hoDt Boolean iBLocal Integer i String sFilename String sFileRelativeUri Integer iFileSize String sSLastModified String sTemp1 Integer iTemp1 Integer iTemp2 Integer iTemp3 Integer iTemp4 Integer iTemp5 // This requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // ------------------------------------------------------------------------- // The following comments apply to SharePoint Windows classic authentication. // ------------------------------------------------------------------------- // For example, imagine our SharePoint endpoint is https://xyzoffice.mycompany.com/ // The SHAREPOINT_NTLM_DOMAIN would be "mycompany.com" // The SHAREPOINT_HTTPS_DOMAIN would be "xyzoffice.mycompany.com" // Also, the SHAREPOINT_USERNAME would be just the name, not a full email address. // for example, "chilkat" instead of "chilkat@mycompany.com" Get Create (RefClass(cComChilkatHttp)) To hoHttp If (Not(IsComObjectCreated(hoHttp))) Begin Send CreateComObject of hoHttp End // If SharePoint Windows classic authentication is used, then set the // Login, Password, LoginDomain, and NtlmAuth properties. Set ComLogin Of hoHttp To "SHAREPOINT_USERNAME" Set ComPassword Of hoHttp To "SHAREPOINT_PASSWORD" Set ComLoginDomain Of hoHttp To "SHAREPOINT_NTLM_DOMAIN" Set ComNtlmAuth Of hoHttp To 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 // ------------------------------------------------------------------------- // Indicate that we want a JSON reply Set ComAccept Of hoHttp To "application/json;odata=verbose" Set ComAcceptCharset Of hoHttp To "utf-8" // If your Sharepoint site is within a site collection, then use "https://SHAREPOINT_HTTPS_DOMAIN/sites/teamA/_api/web/GetFolderByServerRelativeUrl('/sites/teamA/')/Files" where "teamA" is the name of the site. Get Create (RefClass(cComChilkatStringBuilder)) To hoSbJson If (Not(IsComObjectCreated(hoSbJson))) Begin Send CreateComObject of hoSbJson End Get pvComObject of hoSbJson to vSbJson Get ComQuickGetSb Of hoHttp "https://SHAREPOINT_HTTPS_DOMAIN/_api/web/GetFolderByServerRelativeUrl('/')/Files" vSbJson To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoHttp To sTemp1 Showln sTemp1 Procedure_Return End Get Create (RefClass(cComChilkatJsonObject)) To hoJson If (Not(IsComObjectCreated(hoJson))) Begin Send CreateComObject of hoJson End Get pvComObject of hoSbJson to vSbJson Get ComLoadSb Of hoJson vSbJson To iSuccess // Iterate over the results and get each file's name, size, and last-modified date/time. Get ComSizeOfArray Of hoJson "d.results" To iNumFiles Showln "Number of Files in the SharePoint root folder = " iNumFiles Get Create (RefClass(cComCkDateTime)) To hoLastMod If (Not(IsComObjectCreated(hoLastMod))) Begin Send CreateComObject of hoLastMod End Move True To iBLocal Move 0 To i While (i < iNumFiles) Set ComI Of hoJson To i Get ComStringOf Of hoJson "d.results[i].Name" To sFilename Get ComStringOf Of hoJson "d.results[i].ServerRelativeUrl" To sFileRelativeUri Get ComIntOf Of hoJson "d.results[i].Length" To iFileSize Get ComStringOf Of hoJson "d.results[i].TimeLastModified" To sSLastModified Showln (i + 1) ": " sFilename Showln " Relative URI: " sFileRelativeUri Showln " Size in Bytes: " iFileSize // Show the last-modified date/time in the local timezone. Get ComSetFromTimestamp Of hoLastMod sSLastModified To iSuccess Get ComGetDtObj Of hoLastMod iBLocal To vDt If (IsComObject(vDt)) Begin Get Create (RefClass(cComChilkatDtObj)) To hoDt Set pvComObject Of hoDt To vDt End Get ComDay Of hoDt To iTemp1 Get ComMonth Of hoDt To iTemp2 Get ComYear Of hoDt To iTemp3 Get ComHour Of hoDt To iTemp4 Get ComMinute Of hoDt To iTemp5 Showln " Last-Modified: " iTemp1 "/" iTemp2 "/" iTemp3 " " iTemp4 ":" iTemp5 Send Destroy of hoDt Move (i + 1) To i Loop // The output of this program when I tested it: // Number of Files in the SharePoint root folder = 5 // 1: Documentstester1.txt // Relative URI: /Documentstester1.txt // Size in Bytes: 17 // Last-Modified: 6/4/2017 11:31 // 2: Documents11_D42_Device_70_IP.xlsx // Relative URI: /Documents11_D42_Device_70_IP.xlsx // Size in Bytes: 17472 // Last-Modified: 6/4/2017 10:54 // 3: default.aspx // Relative URI: /default.aspx // Size in Bytes: 3960 // Last-Modified: 26/10/2015 20:47 // 4: DocumentsVCAC NEW Admin and RA bacgrounds.pptx // Relative URI: /DocumentsVCAC NEW Admin and RA bacgrounds.pptx // Size in Bytes: 11867024 // Last-Modified: 6/4/2017 10:51 // 5: DocumentsVCAC_Installer_Web_Sites_Installation.docx // Relative URI: /DocumentsVCAC_Installer_Web_Sites_Installation.docx // Size in Bytes: 529482 // Last-Modified: 6/4/2017 11:0 End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.