class RetailSharedParameters_Eventhandlers
{
/// <summary>
/// Event handler for the "UploadFile" button click event.
/// </summary>
/// <param name="sender">The form control that triggered the event.</param>
/// <param name="e">Event arguments.</param>
[FormControlEventHandler(formControlStr(RetailSharedParameters, UploadFile), FormControlEventType::Clicked)]
public static void UploadFile_OnClicked(FormControl sender, FormControlEventArgs e)
{
// Get the button that triggered the event
FormButtonControl callerButton = sender as FormButtonControl;
// Get the form run instance
FormRun form = callerButton.formRun();
// Get the data source for the RetailSharedParameters table
FormDataSource RetailSharedParameters_ds = form.dataSource(formDataSourceStr(RetailSharedParameters, RetailSharedParameters)) as FormDataSource;
// Get the current record from the data source
RetailSharedParameters RetailSharedParameters = RetailSharedParameters_ds.cursor();
// Prompt the user to upload a file
FileUploadTemporaryStorageResult result = File::GetFileFromUser() as FileUploadTemporaryStorageResult;
// Check if the file upload was successful
if (result && result.getUploadStatus())
{
// Store the file name and download URL in the table
RetailSharedParameters.FileName = result.getFileName();
RetailSharedParameters.SoundFile = result.getDownloadUrl();
// Save the changes to the database
RetailSharedParameters.write();
}
}
/// <summary>
/// Event handler for the "DownloadFile" button click event.
/// </summary>
/// <param name="sender">The form control that triggered the event.</param>
/// <param name="e">Event arguments.</param>
[FormControlEventHandler(formControlStr(RetailSharedParameters, DownloadFile), FormControlEventType::Clicked)]
public static void DownloadFile_OnClicked(FormControl sender, FormControlEventArgs e)
{
// Variable to store the file URL
str fileUrl = '';
// Get the button that triggered the event
FormButtonControl callerButton = sender as FormButtonControl;
// Get the form run instance
FormRun form = callerButton.formRun();
// Get the data source for the RetailSharedParameters table
FormDataSource RetailSharedParameters_ds = form.dataSource(formDataSourceStr(RetailSharedParameters, RetailSharedParameters)) as FormDataSource;
// Get the current record from the data source
RetailSharedParameters RetailSharedParameters = RetailSharedParameters_ds.cursor();
// Retrieve the stored file URL
fileUrl = RetailSharedParameters.SoundFile;
// Open the file URL in a browser
if (fileUrl)
{
new Browser().navigate(fileUrl);
}
else
{
// Notify the user if no file URL is found
warning("No file URL found.");
}
}
}
Wednesday, January 29, 2025
X++ Upload and Download file - D365 FO
Subscribe to:
Comments (Atom)