Components | All | New | MacOS | Windows | Linux | iOS | ||||
Examples | Mac & Win | Server | Client | Guides | Statistic | FMM | Blog | Deprecated | Old |
Archive.CompressContainer
Compresses one container into a new archive.
Component | Version | macOS | Windows | Linux | Server | iOS SDK |
Archive | 11.1 | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes | ✅ Yes |
Parameters
Parameter | Description | Example | Flags |
---|---|---|---|
Format | The format to use. Formats: ar, arbsd, argnu, arsvr4, bsdtar, cd9660, cpio, gnutar, iso, iso9660, mtree, mtree-classic, newc, odc, oldtar, pax, paxr, posix, raw, rpax, shar, shardump, ustar, v7tar, v7, warc, xar, zip. |
"zip" | |
Filter | The filter to use. For zip format can be store or deflate. Filters: b64encode, bzip2, compress, grzip, gzip, lrzip, lz4, lzip, lzma, lzop, uuencode, xz, zstd. Not all filters can be combined with all formats. |
"deflate" | |
Destination | The native file path to the destination archive. Or file name for container. |
"C:\test.zip" | |
Container | The container to compress. We take the file name from container. |
||
Options | The options to pass to writer. This is a comma-separated list of options. Option names can be prefixed with module name. Sample options: compression-level=9 zip:encryption=zipcrypt zip:encryption=aes128 zip:encryption=aes256 zip64 gzip:compression-level=9 hdrcharset=UTF-8 |
"zip:encryption=zipcrypt" | Optional |
Password | The passphrase to use for password protection. | "secret" | Optional |
Result
Returns OK, container or error.
Description
Compresses one container into a new archive.Supports various compression algorithms and encryption.
Examples
Compress a container:
Set Field [ MyFile::CompressedFile ; MBS( "Archive.CompressContainer"; "zip"; "deflate"; ""; MyFile::SomeContainer; "hdrcharset=UTF-8" ) ]
Compress a container to a zip file:
Set Variable [ $r ; Value: MBS( "Archive.CompressContainer"; "zip"; "deflate"; "/Users/cs/Desktop/Test.zip"; Anlagen::SomeContainer; "hdrcharset=UTF-8" ) ]
Compress to gz:
Set Variable [ $r ; Value: MBS( "Archive.CompressContainer"; "zip"; "deflate"; "/Users/cs/Desktop/Anlagen.zip"; Anlagen::SomeContainer; "gzip:compression-level=9" ) ]
Compress to gzip:
Set Variable [ $r ; Value: MBS( "Archive.CompressContainer"; "raw"; "gzip"; "/Users/cs/Desktop/test2.jpg.gz"; Contacts::Photo Container) ]
Compress PDF and add to email:
# get some PDF from a field
Set Variable [ $PDF ; Value: Reports::ReportContainer ]
# Compress it
Set Variable [ $CompressedPDF ; Value: MBS( "Archive.CompressContainer"; "zip"; "deflate"; "report.zip"; $pdf) ]
# now add to email
Set Variable [ $email ; Value: MBS( "SendMail.CreateEmail") ]
Set Variable [ $r ; Value: MBS( "SendMail.AddAttachmentContainer"; $Email; $CompressedPDF; "report.zip"; "application/zip" ) ]
Set Variable [ $r ; Value: MBS( "SendMail.SetPlainText"; $email; "Dear " & Contacts::FullName & ¶ & ¶ & "Attached you find the report from " & Get(CurrentDate ) & ¶ & ¶ & "Greetings" & ¶ & "Your FileMaker Server") ]
See also
Release notes
- Version 11.1
- Added Archive.CompressContainer function.
Blog Entries
- Compress and Send
- Store large texts as container fields
- MBS FileMaker Plugin 11.1
- Neues MBS FileMaker Plugin 11.1
- MBS FileMaker Plugin 11.1
- MBS FileMaker Plugin, version 11.1pr6
FileMaker Magazin
This function checks for a license.
Created 22nd February 2021, last changed 4th July 2024