Administration Tasks
Management of Fabasoft Folio Services
To back up or clean up Fabasoft Folio Services the command line tool fscadmin.exe can be used. The tool can be found in the <Program Files>/Fabasoft/Components/Management directory.
Example:
- To list all Fabasoft Folio Services use the following command:
fscadmin.exe --action list - To back up the content areas of service four execute the following command:
fscadmin.exe --action backup --service 4 - To clean up all content areas of the Fabasoft Folio Domain until yesterday use the following command:
fscadmin.exe --action cleanup --service all --time 1 - To clean up all content areas of the Fabasoft Folio Domain until yesterday with an execution time limit of 60 minutes use the following command:
fscadmin.exe --action cleanup --service all --time 1 --limit 60 - To check the content consistency of the Fabasoft Folio Domain use the following command:
fscadmin.exe --action checkconsistency --service all - To synchronize the contents of a CAS area by taking the creation date into account use the following command:
fscadmin.exe –-action cleanup –-service all –-syncbydate 2010-06-06 - To synchronize the daily backup directory of a CAS area use the following command:
fscadmin.exe --action cleanup --service all --synctobackup 2010-06-06 - To restore the daily backup directory of a CAS area use the following command:
fscadmin.exe --action cleanup --service all --syncfrombackup 2010-06-06
To clean up a CAS backup directory with the need of a minimum number of passed days since the deletion of a file in the CAS Area the command line tool cleanbackup can be used.
Example:
- To remove files from the backup directory which have been deleted for at least 60 days in the CAS Area:
cleanbackup –root C:/path/to/backupdirectory –days 60
Management of the Fabasoft Folio Server Cache
To save or load the cached Fabasoft Folio objects of the Fabasoft Folio COO Service also the command line tool fscadmin.exe can be used.
Example:
- To save the COO addresses of all currently cached objects into a file use the following command:
fscadmin.exe --action savecache --file <filename> --service <COO service number> - To load objects, of an already saved cache state, into the Fabasoft Folio server cache use the following command:
fscadmin.exe --action loadcache --file <filename> --service <COO service number> - To load all objects, and all referenced objects, of a database query result into the Fabasoft Folio server cache use the following command:
fscadmin.exe --action loadbyquery --query "Select objname from COOSYSTEM@1.1:UserEnvironment"
This query initializes the Fabasoft Folio server cache with all User Environments and all referenced objects (e.g. commonly used objects COOSYSTEM@1.1:usrenvlocalobjects). - To clean up the daily backup directory of a CAS area use the following command:
fscadmin.exe –-action cleanup –-service all –-cleanupbackup 2010-06-06
Execution of Fabasoft app.ducx Expressions
To execute Fabasoft DUCX Expressions the command line tool fsceval.exe can be used. This tool can be found in the <Program Files>/Fabasoft/Components/Management directory also.
Usage: fsceval { argument }
-verbose ... verbose
-dumptokens ... enabledumptokens
-eval<expr> ... evaluate <expr>
-file <path> ... evaluate contents of file <path>
-local ... use previous result as local scope
-global ... use previous result as global scope
-trace ... use debugger interfaces for trace
-flags <f> ... use thread flags <f>
-threads <t> ... number of threads <f>
-login <logname> ... login for user <logname>, privileged account required
-userfile<path> ... login based on user list in <path>
-statistics ... add runtime statistics to output
Example:
Execution of a simple expression: fsceval -eval "coort.Trace('hello world')"
Additional Administration Tasks
- To clear the generated object images of an object the action FSCCONV@1.1001:ClearObjectImages can be used. Doing so the preview images of the object will be regenerated by the next access to the images:
Example: <object>.FSCCONV@1.1001:ClearObjectImages(); - To clear the generated object images of a set of objects defined by a Fabasoft Folio Query the action FSCCONV@1.1001:ClearObjectImages can be used:
Example: coouser.FSCCONV@1.1001:ClearObjectImages("SELECT objname FROM COOSYSTEM@1.1:ContentObject WHERE .FSCCONV@1.1001:objimgnextretry IS NOT NULL", "c:\\log.txt"); - To upgrade all saved object versions and resave the object versions with the current state the action COOSYSTEM@1.1:UpgradeVersions can be used. Object versions stored in delta tables (prior to Fabasoft Folio version 7) will be resaved as blob-based version. The first parameter specifies the Fabasoft Folio version up to which object versions should be upgraded. A value of 1407 means that all versions created with Fabasoft Folio versions smaller 14.0.7 will be migrated. The action can be called on a domain object meaning that all object versions in all Fabasoft Folio COO Services will be upgraded. Alternatively, a call on a dedicated COO Service is also possible, which makes parallelization possible. In case of a domain object, a Fabasoft Folio query can be specified to restrict the upgrade process to the query result.
Examples:- #TV.TV_LOGFILE = "c:\\upgradeversions.log";
coodomain.UpgradeVersions(1407); - #TV.TV_LOGFILE = "c:\\upgradeversions.log";
<coosrv>.UpgradeVersions(1407); - #TV.TV_LOGFILE = "c:\\upgradeversions.log";
coodomain.UpgradeVersions(1407, "SELECT objname FROM NOTE@1.1:NoteObject");
- After updating Fabasoft Folio with a version lower than 2020 to version 2020 or higher, the ACLs must be migrated.
To update every old ACL reference to their corresponding new ACL the action COOSYSTEM@1.1:UpgradeACLs can be used. This action optionally takes one parameter to specify the amount of threads (default: 1), two parameters to manually specify the old ACL and the new ACL, and a parameter to specify the upgrade step to execute (default: all; UPGRADEACLS_SERVER migrates COOSYSTEM@1.1:objaclobj using the COO Service, UPGRADEACLS_KERNEL migrates all other ACL attributes using Kernel-based object updates). One thread acts on one COO Service at a time. Threads are only used for updating the references in COOSYSTEM@1.1:objaclobj. All other attributes are updated after successfully updating all references in COOSYSTEM@1.1:objaclobj. If some objects cannot be updated due to a lock, the update on these objects is retried once.
Examples:- #TV.TV_LOGFILE = "./upgradeacls.log";
coodomain.UpgradeACLs(4); - #TV.TV_LOGFILE = "./upgradeacls.log";
coodomain.UpgradeACLs(, oldacl, replacementacl); - #TV.TV_LOGFILE = "./upgradeacls.log";
coodomain.UpgradeACLs(, [oldacl1, oldacl2], [replacementacl1, replacementacl2], UPGRADEACLS_SERVER);