Synchronize an input file or ODBC connection data with a TapeTrack Framework Server.
TMSS10Sync [-A attributeindex] [-F recordcount] [-M] [-S logonstring] [-T] [-a] [-c
configfile] [-d deffile] [-l] [-p] [-s] [-t]
TMSS10Sync
is a command-line utility that allows the user to run ad-hoc and automated synchronization
between text files, CSV files and ODBC connections to update commonly used TapeTrack database fields.
In addition to being able to synchronize data, the program can also perform complex date calculation and String manipulation procedures to edit the data that is being synchronized.
The program relies on three separate software engines that are built one on top of the other.
The options which apply to the TMSS10Sync command are:
-S
The Logon String argument sets the Server Logon Information.-c
The config file argument specifies the path to the Batch Configuration File.-A
Sets the Attribute index for any field imported as the DESCRIPTION
field. The value of the Attribute index should be an Integer between 0 and 200. The default of 0 represents the inbuilt Description field. Values of 1 through 200 represent user-defined Extended Attribute values.-F
Instructs the program to simply read in the contents of stdin
and write out a formatted report on stdout
with a ruler every recordcount records. This can be helpful for establishing the offset and length of the fields that are being synchronized from a text file. No other processing will be performed.-M
Executes the program to run in Dump Mode. Dump mode processes the input synchronization as it would in the regular update mode but instead of performing any updates the program will write a list of proposed update fields for each record to the stdin
. -T
Sets the Do Not Slot Flag for each updated Volume.-a
Adds any new Volumes to the TapeTrack database. In the event that this argument is not specified and newly encountered Volumes will be skipped and added to the Not-Added Count.-d
Sets the path to the Import Definition File. The Import Definition file is responsible for instructing the program on how to interpret the input file or ODBC connection. If not specified it defaults to the file default.ttidef in the current working directory.-l
Lists all of the supported processing directives, which will be written to stdout
. A list of valid ODBC Drivers and DSNs will also be listed. No further processing is performed.-p
Instructs to Sync Engine to pass the value in the VOLUME field to TapeTrack's Barcode Parsing Engine, where it will be split into the CUSTOMER
, MEDIA
and VOLUME
fields. Barcode Parsing can also be further managed using the Barcode section of the Configuration File.-s
Automatically sets the SLOT
field to the relative record number of the record being processed.-t
Instructs the program to run in Test Mode. In Test Mode, all three engines will be invoked, but no updates will be performed. Test Mode differs from Dump Mode in that Dump Mode will not run the Sync Engine while Test Mode will, but without performing updates.To run data through all three engines without performing updates, TMSS10Sync can be run in test mode (attribute -t).
stdout
Formatted output, Record Dump output or Scan-File Output.stderr
Diagnostic messages.stdin
Sync input file.List supported Processing Directives.
[jsmith@z1090 ~]$ TMSS10Sync -l < syntax.txt
Run program in Dump Mode.
[jsmith@z1090 ~]$ TMSS10Sync -M < input.txt
Produce a formatted listing with a ruler every 10 records.
[jsmith@z1090 ~]$ TMSS10Sync -F 10 < input.txt > output.txt
2021-05-24 | Fixed bug when using TMSSLEVELNAME and TMSSNOLEVELSLOT variables (#127) |
2020-11-24 | Added support for JSON output |
2020-01-23 | Added HOMEREPOSITORY and HOMESLOT fields |
2020-01-23 | Added skip existing Volumes argument |
2019-03-30 | Added TMSSPRINTRAWINPUT variable |
2019-02-25 | Added support for HTML output |
2019-02-09 | Added support for Excel output |
2019-01-06 | Added return code list to end of all command line programs that use the TapeTrack API |
2018-12-26 | Added support to skip update of fields when value is !Bypass! |
2018-12-26 | Fixed bug where Bypass mode would cause a crash because of message |
2018-01-31 | Added support to skip update of fields when value is !Bypass!, |
2018-01-27 | Added USAGE and GENERATION fields |
2018-01-27 | Added skip option to boolean sync values (ENCRYPTED, SCRATCH, QUALITYCHECK). To bypass specify 'unknown' or '-1' (rather than true or false) |
2017-04-18 | Added field list to list (-l) output |
2017-02-02 | Added STOCKID to importable fields |
2016-12-17 | Fixed Parse option (-p) to use the defined Customer-ID and Media-ID as default |
2016-11-18 | Added SetPermanentExpiryDateValue |
2016-11-18 | Changed SetPermanentDateValue to SetPermenentMoveDateValue |
2016-11-18 | Added fast forward code to reduce runtime |
2016-11-18 | Enhanced argument parser to allow arguments in format *FI:filename that allows loading of arguments from a file |
2016-09-30 | Added EXPIRYDATE and SetExpiryDateFormat to sync |
2016-03-02 | Added Hashing functionality to AddTranslation (template of '#' will return X-FFFFFFFF) |
2015-12-26 | Fixed bug in AddRepositoryOnMoveDate logic where non-matching Repository filter was being used |
2015-12-26 | Fixed bug where program would crash if the Customer scope changed and the initial scope was OK, but new scope was not |
2015-12-26 | Fixed bug with logic to see if Move Date was permanent |
2015-12-26 | Added -e argument to produce optional error list CSV file |
2015-12-26 | Added check for existing Customer-ID to reduce bandwith of faulty sync data |
2015-12-26 | Changed SetPermanentMoveDateValue to a range which now includes 'P' (Past) and 'F' (Future) |
2015-12-26 | Added flags to Volume Filter syntax (customer.media.volume@repository+flags) |
2015-12-26 | Added INCLUSION support for AddString |
2015-12-26 | Added error message when using AddTranslation type directives reference a field that has not been referenced |
2015-08-24 | Changed hascontents to contentcount and change contentcount to a filter rather than bool |
2015-08-24 | Added iscontainer and hascontents to the config file filter logic |
2015-08-17 | Fixed bug where MOVEDATE would not parse past 2038 |
2015-06-06 | Fixed bug where AddTranslation2 would cause crash when using comparison field that has not been previously set |
2015-06-05 | Fixed bug where AddTranlation2 would cause crash when using comparison field that has not been previously set |
2015-05-20 | Added ADDTRANSLATIONFROMSQL instruction |
2015-05-17 | Added additional diagnostic messages to both RepositoryOnMoveDate and RepositoryOnWriteTime |
2015-05-17 | Added extra argument to AddRepositoryOnMoveDate. Arg1 now sets a Current Repository filter |
2015-05-17 | Added logic to not run RepositoryOnWriteDate logic if RepositoryOnMoveDate sets a value |
2015-05-16 | Added environmental varialbe TMSSCANFILEUNQUALIFIED which will load and check volumes without Customer-ID and Media-ID qualifiers |
2015-05-16 | Added environmental varialbe TMSSSCANFILENOPARSE which will presume scanfile items are only Volumes and not parse them, saving time |
2015-05-16 | When loading scanfile from import definition, added CUSTOMER and MEDIA keywords to set defaults |
2015-05-16 | When loading scanfile from import definition, changed keyword from VOLUME to BARCODE |
2015-05-16 | Added TMSSUNQUALIFIEDVOLUME environmental variable which forces all barcodes to be printed without Customer-ID and Media-ID |
2015-05-04 | Added support for AD passwords to all command line programs (check for environmental variable TMSSNOMD5) |
2015-04-06 | Added CleanVolume keyword which will remove any invalid characters from a Volume (such as embedded '/' etc) |
2015-03-23 | Added AddSkipOnScratch keyword which allows you to skip a move if a Volume is Scratch and has a current Target Repository that matches a filter |
2015-03-23 | Added STAGE and QUALITYCHECK items as Sync fields |
2015-02-03 | Changed logic so that Warnings appear as updates and may also list an error |
2015-02-03 | Added 'w' option to consider Warnings not an error |
2015-02-03 | Added substring support to AddTranslation logic |
2014-11-30 | Changed behavior of Extract instruction in Import engine so that when the offset is zero CSV mode processing will process the raw text record |
2014-11-19 | Changed server argument parser to allow colon in password to support z/OS DD name files |
2014-11-02 | Added AddRepositoryOnWriteTime keyword which allows you to set a Repository based upon a number of days from a Write Date |
2014-10-26 | Upgraded development environment from Visual Studio 2012 to Visual Studio 2013 |
2014-09-17 | Added ConditionalEmbed option to INI engine to allow conditional embed of INI code |
2014-08-09 | Changed 'Moving Volume from...' message to 'Changing Target Repository from...' as this better reflects what is occuring |
2014-08-09 | Added SeCSVDelimiter option to import engine to allow direct CSV field selection |
2014-08-09 | Added SetODBC and SETSQL options to import engine to allow ODBC field selection |