Uploading Files To SharePoint in D365 F&O Using X++ Code
Dynamics 365 Finance & Operations (D365 F&O) can streamline document management and enhance collaboration. In AX technical terms, this process involves using X++ code to automate the upload of files directly to a SharePoint document library. Here’s a guide on how to achieve this. Microsoft Dynamics 365 Online Training
Overview:
To upload files from D365 F&O to SharePoint using X++, you need to interact with SharePoint’s REST API. This involves authenticating, creating the correct HTTP requests, and handling file uploads. Dynamics 365 Online Training
Prerequisites:
Access to SharePoint: Ensure you have the appropriate permissions and access to the SharePoint site and library. Microsoft Dynamics AX Technical Training
Register an App: Register an app in SharePoint to obtain Client ID and Secret for OAuth authentication.
API Access: Enable API access for communication between D365 F&O and SharePoint. Microsoft Dynamics AX Training
X++ Code for Uploading Files:
Below is a simplified X++ code snippet that demonstrates the file upload process:
x++
Copy code
public void uploadFileToSharePoint()
{
// Define SharePoint URL and authentication details
str sharePointSite = “<SharePoint_Site_URL>”;
str libraryName = “<Document_Library_Name>”;
str clientId = “<Client_ID>”;
str clientSecret = “<Client_Secret>”;
str filePath = @”C:\temp\fileToUpload.txt”;
// Create an instance of Http client
System.Net.HttpWebRequest request;
System.IO.Stream fileStream;
System.ByteArray fileBytes;
request = System.Net.HttpWebRequest::Create(strFmt(“%1/_api/web/GetFolderByServerRelativeUrl(‘%2′)/Files/add(url=’%3’,overwrite=true)”, sharePointSite, libraryName, filePath)) as System.Net.HttpWebRequest;
request.set_Method(“POST”);
request.Headers.Add(“Authorization”, “Bearer ” + this.getAccessToken(clientId, clientSecret)); // Assuming getAccessToken() retrieves an OAuth token
// Read file into byte array
fileStream = new System.IO.FileStream(filePath, System.IO.FileMode::Open);
fileBytes = new System.ByteArray(fileStream.get_Length());
fileStream.Read(fileBytes, 0, fileBytes.get_Length());
// Write file bytes to request stream
request.getRequestStream().Write(fileBytes, 0, fileBytes.get_Length());
// Execute request and handle response
System.Net.HttpWebResponse response = request.GetResponse() as System.Net.HttpWebResponse;
if (response.get_StatusCode() == System.Net.HttpStatusCode::Created)
{
info(“File uploaded successfully to SharePoint.”);
}
else
{
error(“Failed to upload file: ” + response.get_StatusDescription());
}
}
Key Steps in the Code:
- Setup Request: Define the SharePoint site, document library, and authentication details.
- Create HTTP Request: Use the SharePoint REST API to add the file to the specified folder.
- Authentication: The getAccessToken() method retrieves an OAuth token using the Client ID and Secret.
- Upload File: Read the file into a byte array and upload it via the HTTP request.
This approach helps automate document uploads, enhancing efficiency in D365 F&O environments that rely on SharePoint for document storage. D365 Finance and Operations Online Training
Visualpath is the Leading and Best Software Online Training Institute in Hyderabad. Avail complete D365 Technicalinstitute in Hyderabad D365 Ax Technical Online Training Worldwide. You will get the best course at an affordable cost.
Attend Free Demo
Call on – +91-9989971070
WhatsApp: https://www.whatsapp.com/catalog/919989971070
Visit: https://visualpath.in/microsoft-dynamics-ax-online-training.html