{"id":1060,"date":"2017-06-06T09:40:59","date_gmt":"2017-06-06T07:40:59","guid":{"rendered":"http:\/\/www.hunggartorino.it\/ql\/?p=1060"},"modified":"2017-06-06T09:42:31","modified_gmt":"2017-06-06T07:42:31","slug":"xchange-e-tsl","status":"publish","type":"post","link":"http:\/\/www.hunggartorino.it\/ql\/xchange-e-tsl\/","title":{"rendered":"Xchange e TSL"},"content":{"rendered":"<h1 style=\"text-align: justify;\">Come configurare al meglio XCHANGE con il Task Sequencing Language<\/h1>\n<div style=\"text-align: justify;\"><\/div>\n<div style=\"text-align: justify;\">Il Task \u00a0Sequencing \u00a0Language o, piu&#8217; semplicemente, TSL e&#8217; un linguaggio di scripting asai poco conosciuto.<\/div>\n<div style=\"text-align: justify;\">E&#8217; infatti parte del \u00a0pacchetto applicativo \u00a0XCHANGE, software che, seppur obsoleto, viene \u00a0ancora ampiamente usato, spesso e volentieri per mancanza di valide alternative.<\/div>\n<div style=\"text-align: justify;\">C&#8217;e&#8217; da dire che XCHANGE raramente viene utilizzato al massimo delle sue potenzialita&#8217;.<\/div>\n<div style=\"text-align: justify;\">Infatti \u00a0spesso \u00a0e \u00a0volentieri viene \u00a0utilizzato come \u00a0sistema gestionale \u00a0integrato di QUILL, ABACUS, ARCHIVE e EASEL mentre XCHANGE offre parecchie funzionalita&#8217; aggiuntive.<\/div>\n<div style=\"text-align: justify;\">Una \u00a0 di \u00a0 queste \u00a0e&#8217; \u00a0un&#8217;elevata \u00a0elesticita&#8217; \u00a0 in \u00a0fase \u00a0 di configurazione; \u00a0elasticita&#8217; che, abbinata \u00a0al TSL permette di creare un sistema assai flessibile e potente.<\/div>\n<div style=\"text-align: justify;\"><\/div>\n<h2 style=\"text-align: justify;\">Procediamo con ordine.<\/h2>\n<div style=\"text-align: justify;\">Come prima cosa andiamo ad \u00a0analizzare alcune delle opzioni di configurazione \u00a0di \u00a0XCHANGE, limitandoci \u00a0a quelle che possono tornarci utili per interfacciare il TSL.<\/div>\n<div style=\"text-align: justify;\">Se cerchiamo di configurare il software tramite \u00a0Menu Config o qualche programma equivalente ci accorgiamo di come ci vengano proposte \u00a0due \u00a0voci \u00a0di \u00a0menu&#8217; \u00a0distinte: \u00a0XCHANGE \u00a0e \u00a0XCHANGE defaults.<\/div>\n<div style=\"text-align: justify;\">Occupiamoci direttamente della seconda, prima di tutto possiamo notare come sia possibile far eseguire una stringa di caratteri in fase di avvio del programma.<\/div>\n<div style=\"text-align: justify;\">Se \u00a0questi caratteri corrispondono \u00a0poi a dei \u00a0comandi, meglio ancora, possiamo far fare a XCHANGE perecchie cose.<\/div>\n<div style=\"text-align: justify;\">Quindi a \u00a0rigor di logica e&#8217; possibile far caricare in fase di avvio un file TSL e farlo eseguire.<\/div>\n<div style=\"text-align: justify;\">All&#8217;interno del \u00a0file \u00a0potremmo poi inserire \u00a0tutte \u00a0le nostre istruzioni; ogni qualvolta decidiamo di cambiare qualcosa, non sara&#8217; \u00a0piu&#8217; \u00a0necessario \u00a0agire \u00a0sul \u00a0 \u00a0software \u00a0ma \u00a0 baster\u00e0 modificare il file TSL per\u00a0 modificare le nostre impostazioni.<\/div>\n<div style=\"text-align: justify;\">Essa offre un&#8217;altra \u00a0opportunita&#8217; assai particolare: quella di poter \u00a0eseguire una \u00a0stringa di comandi \u00a0diversa \u00a0in \u00a0funzione dell&#8217; estensione \u00a0 del \u00a0nome \u00a0file \u00a0che \u00a0 viene \u00a0passato \u00a0come parametro.<\/div>\n<div style=\"text-align: justify;\">In \u00a0parole \u00a0piu&#8217; semplici: se \u00a0lancio \u00a0XCHANGE \u00a0passando \u00a0come parametro \u00a0un file QUILL il programma \u00a0fara&#8217; determinate cose, se il parametro e&#8217; un file ABACUS ne fara&#8217; invece altre.<\/div>\n<div style=\"text-align: justify;\">Ovviamente possiamo decidere cosa far fare a XCHANGE.<\/div>\n<div style=\"text-align: justify;\">La logica \u00a0ci \u00a0suggerisce di \u00a0aprire una \u00a0sessione QUILL se il documento \u00a0ha \u00a0un&#8217;estensione _doc e \u00a0di \u00a0aprire \u00a0una \u00a0sessione ABACUS se l&#8217;estensione e&#8217; _aba.<\/div>\n<div style=\"text-align: justify;\">Ma non e&#8217; detto che sia cosi&#8217;.<\/div>\n<div style=\"text-align: justify;\">C&#8217;\u00e8 inoltre \u00a0da cosiderare \u00a0che possiamo \u00a0far \u00a0fare a XCHANGE piu&#8217; di un&#8217;operazione.<\/div>\n<div style=\"text-align: justify;\">Tanto \u00a0per fare un \u00a0esempio possiamo \u00a0far aprire un \u00a0file _doc e \u00a0mandarlo \u00a0direttamente in \u00a0stampa, dopodiche&#8217; esportarlo in formato ASCII; in pratica abbiamo ben pochi limiti.<\/div>\n<div style=\"text-align: justify;\">Oppure ancora possiamo \u00a0impostare directory di default diverse in funzione del file caricato.<\/div>\n<div style=\"text-align: justify;\">XCHANGE e&#8217; in \u00a0 grado \u00a0di \u00a0 gestire \u00a0 separatamente \u00a0tutte \u00a0le esetensioni \u00a0di \u00a0XCHANGE (compreso \u00a0il \u00a0file _tsl) \u00a0e \u00a0dispone ancora di \u00a0una gestione separata \u00a0&#8220;jolly&#8221; per \u00a0tutte \u00a0le altre estensioni.<\/div>\n<div style=\"text-align: justify;\">Abbinando \u00a0 queste \u00a0 \u00a0possibilita&#8217; \u00a0 di \u00a0configurazione \u00a0 alla flessibilita&#8217; del \u00a0linguaggio TSL possiamo veramente aumentare le potenzialita&#8217; di questo software.<\/div>\n","protected":false},"excerpt":{"rendered":"Come configurare al meglio XCHANGE con il Task Sequencing Language Il Task \u00a0Sequencing \u00a0Language o, piu&#8217; semplicemente, TSL e&#8217; un linguaggio di scripting \n<a class=\"moretag\" href=\"http:\/\/www.hunggartorino.it\/ql\/xchange-e-tsl\/\"> [..more...]<\/a>","protected":false},"author":1,"featured_media":1070,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[37],"tags":[],"class_list":["post-1060","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-programmi"],"_links":{"self":[{"href":"http:\/\/www.hunggartorino.it\/ql\/wp-json\/wp\/v2\/posts\/1060","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.hunggartorino.it\/ql\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.hunggartorino.it\/ql\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.hunggartorino.it\/ql\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.hunggartorino.it\/ql\/wp-json\/wp\/v2\/comments?post=1060"}],"version-history":[{"count":3,"href":"http:\/\/www.hunggartorino.it\/ql\/wp-json\/wp\/v2\/posts\/1060\/revisions"}],"predecessor-version":[{"id":1063,"href":"http:\/\/www.hunggartorino.it\/ql\/wp-json\/wp\/v2\/posts\/1060\/revisions\/1063"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/www.hunggartorino.it\/ql\/wp-json\/wp\/v2\/media\/1070"}],"wp:attachment":[{"href":"http:\/\/www.hunggartorino.it\/ql\/wp-json\/wp\/v2\/media?parent=1060"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.hunggartorino.it\/ql\/wp-json\/wp\/v2\/categories?post=1060"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.hunggartorino.it\/ql\/wp-json\/wp\/v2\/tags?post=1060"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}