
Hello
Is it possible to import a zip file into Business Central Saas, I need to import some xml Invoice files from a Zip. I know its possible onPrem.
Hello,
You can import zip file, for reference see the below code.
action(ImportZipFile)
{
ApplicationArea = All;
ToolTip = 'Import the images from Zip';
trigger OnAction()
var
FileMgt: Codeunit "File Management";
DataCompression: Codeunit "Data Compression";
TempBlob: Codeunit "Temp Blob";
EntryList: List of [Text];
EntryListKey, ZipFileName, FileName, FileExtension : Text;
ZipInStream, EntryInStream : InStream;
EntryOutStream: OutStream;
Length: Integer;
SelectZIPFileMsg: Label 'Select the Zip File', Locked = true;
begin
if not UploadIntoStream(SelectZIPFileMsg, '', 'Zip Files|*.zip', ZipFileName, ZipInStream) then
Error('');
DataCompression.OpenZipArchive(ZipInStream, false);
DataCompression.GetEntryList(EntryList);
foreach EntryListKey in EntryList do begin
FileName := CopyStr(FileMgt.GetFileNameWithoutExtension(EntryListKey), 1, MaxStrLen(FileName));
FileExtension := CopyStr(FileMgt.GetExtension(EntryListKey), 1, MaxStrLen(FileExtension));
TempBlob.CreateOutStream(EntryOutStream);
DataCompression.ExtractEntry(EntryListKey, EntryOutStream, Length);
TempBlob.CreateInStream(EntryInStream);
//Write your code for importing each file for eg.
Image.ImportStream(EntryInStream, FileName);
end;
end;
}