HELP: FLAM parameter for reading from an existing archive TYPE: OBJECT SYNTAX: FLAM(DECRYPT/IMPORT.{},MEMBER['str'/STREAM/DUMMY...],EXCLUDE='str',MATCH[{}...],SUBSET[=SEGMENT/RECORD/AUTO],SERASE[=AUTO/NO/YES],REMOVE,ENDOFT,REPAIR,TABLE,NAME,DIRS)
This object defines how the FLAM archive will be decrypted, decompressed and unserialized.
The key must be entered for encrypted archives. You can define which members are to be read from the archive. If no specification is made here, all members are read. The REMOVE switch can be used to delete a successfully processed member from the archive. The TABEL switch can be used to force simple formats (records, text), which are treated internally as tables, to be output in the form of tables. This affects the following internal table formats.
ROW(NAME='DATBLK' MATTYP=DATBLK COL(NAME='BLOB' TYPE.BINARY())) ROW(NAME='STDREC' MATTYP=STDREC COL(NAME='RECORD' TYPE.BINARY())) ROW(NAME='STDASAREC' MATTYP=STDASAREC COL(NAME='RECORD' TYPE.STRING()) COL(NAME='ASA' TYPE.BINARY())) ROW(NAME='STDMCCREC' MATTYP=STDMCCREC COL(NAME='RECORD' TYPE.STRING()) COL(NAME='MCC' TYPE.BINARY())) ROW(NAME='RELREC' MATTYP=RELREC COL(NAME='RECORD' TYPE.BINARY()) COL(NAME='SLOT' TYPE.BINARY())) ROW(NAME='RELTXTREC' MATTYP=RELTXTREC COL(NAME='RECORD' TYPE.STRING()) COL(NAME='SLOT' TYPE.BINARY())) ROW(NAME='RELASAREC' MATTYP=RELASAREC COL(NAME='RECORD' TYPE.STRING()) COL(NAME='SLOT' TYPE.BINARY()) COL(NAME='ASA' TYPE.BINARY())) ROW(NAME='RELMCCREC' MATTYP=RELMCCREC COL(NAME='RECORD' TYPE.STRING()) COL(NAME='SLOT' TYPE.BINARY()) COL(NAME='MCC' TYPE.BINARY())) ROW(NAME='TXTREC' MATTYP=TXTREC COL(NAME='RECORD' TYPE.STRING())) ROW(NAME='TXTDLM' MATTYP=TXTDLM COL(NAME='RECORD' TYPE.STRING())) ROW(NAME='TXTRST' MATTYP=TXTRST COL(NAME='RECORD' TYPE.STRING()) COL(NAME='REST' TYPE.STRING()))
The attributes of these formats are transferred to additional columns. The ASA and MCC print control characters are provided in binary form in one byte. The slot number of an RRDS in an 8-byte binary value, which represents a 64-bit integer in 2's complement.
If you use filters to search for result sets here and enter names for the individual search queries, the filter column is added at the end, which makes setting the TABLE switch superfluous, as in this case you have to switch to table format anyway. The same applies if the "End-of-Table" handling is activated.
The ENDOFT switch makes it possible to access the name of the current row specification (format) in the INPUT TO OUTPUT NAME MAPPING with '[table]' and the filter name with '[filter]'.
With the subset switch, only individual segments or records where there were hits are transferred to the target. Of course, this is only relevant if you have defined a search. If no subset is requested here, the complete members where there was a hit are taken.
The repair switch ensures that all segments and members that are no longer accessible in a damaged archive are ignored and as much data as possible is saved. This option should never be used, but if a bit is broken or only part of an archive has been transferred, you can still try to read the rest of the data. However, if the directory is no longer readable, then the entire archive in this version is lost. If a member segment is no longer readable, then complete member is lost and if a data segment is no longer readable, then its data is lost. This applies 100% in each case. It is part of the security concept for the data that no parts of segments can be reconstructed here.
With the NAME switch, not the member names but the names of the original files are used for the input output name mapping. And with the DIRS switch, directory entries can be read from the archive so that empty directories are also created again. However, you should only do this if you want to restore the archived data one-to-one and no input-output name mapping is used.
STRING: MEMBER['str'/STREAM/DUMMY...] - List of member names (with wild cards) in the FLAM archive
STREAM - Read from stdin or write to stdout
DUMMY - Read EOF or write nothing
STRING: EXCLUDE='str' - Exclude members matching the specified wildcard pattern from processing
NUMBER: SUBSET=SEGMENT/RECORD/AUTO - Select only matched segments or records to build a subset [AUTO]
SEGMENT - Select complete segment
RECORD - Select matching records
AUTO - Select segment at COPY and records at DECO
NUMBER: SERASE=AUTO/NO/YES - Secure erase data from memory when no longer needed [AUTO - YES if key else NO]
AUTO - Don't erase memory if no longer needed
NO - Don't erase memory if no longer needed
YES - Erase memory if no longer needed
SWITCH: REMOVE - Remove member from archive after successful processing [FALSE]
SWITCH: ENDOFT - Activate end of table handling (file per format and/or filter) [FALSE]
SWITCH: REPAIR - Ignore missing or corrupt segments to rescue as much data as possible [FALSE]
SWITCH: TABLE - Provide/keep table format for standard data (blocks, records, text) [FALSE]
SWITCH: NAME - Keep original member name form state string (for input output name mapping) [FALSE]
SWITCH: DIRS - Process directory entries (create empty directories) of directory matrix [FALSE]