Web Analytics Made Easy - Statcounter


https://www.amazon.it/dp/B0CT9YL557

We support WINRAR [What is this] - [Download .exe file(s) for Windows]

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
a2 --- Adattamento di SQL-Ledger

[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [violazione licenza] [translators] [docinfo] [indice analitico] [volume] [parte]


Capitolo 499.   Adattamento di SQL-Ledger

SQL-Ledger può richiedere degli interventi per aggiornare la traduzione dei messaggi e dei termini utilizzati nella contabilità; inoltre è provvisto di modelli di vario tipo che generalmente richiedono un adattamento. Durante lo studio di SQL-Ledger per la realizzazione di questi capitoli, sono state preparate delle traduzioni e dei modelli di stampa aggiornati, partendo dal lavoro precedente di traduzione in italiano. Inoltre, è stato predisposto un piano dei conti differente, anche se abbastanza semplificato, con l'abbinamento ai codici del bilancio, secondo l'articolo 2424 del codice civile. Questo materiale, per la versione 2.0.9 di SQL-Ledger, è stato sottoposto a chi si occupa del suo sviluppo ed è disponibile anche nel pacchetto di esempi che accompagna questa opera.

Le annotazioni fatte in questo e negli altri capitoli a proposito di SQL-Ledger, sono state fatte in base alla sperimentazione e leggendo pochi documenti pubblici. La documentazione originale non è stata consultata. In effetti la documentazione originale potrebbe rivelare un approccio migliore all'adattamento e all'uso di SQL-Ledger (la documentazione originale viene venduta, assieme al supporto tecnico all'uso del programma).

499.1   Traduzione dei messaggi

A partire dalla directory locale/ si articolano una serie di sottodirectory con il nome di un linguaggio, secondo lo standard ISO 639, abbinato eventualmente alla sigla della nazionalità, di due caratteri, secondo lo standard ISO 3166; per esempio it/ o it_IT. Queste directory servono a contenere dei file con le traduzioni di messaggi e termini legati alla gestione della contabilità.

Per realizzare da zero la traduzione di un linguaggio nuovo, si parte creando la sottodirectory appropriata (quella per la lingua italiana esiste già). In questa directory si copiano i file COPYING, LANGUAGE, Num2text e all dalla sottodirectory de/, creando anche un collegamento simbolico verso ../de/locales.pl (con lo stesso nome locales.pl), provvedendo a modificare i file copiati nel modo appropriato per la nuova lingua (il file COPYING serve per annotare gli autori delle traduzioni). Si osservi che il file Num2text contiene una porzione di programma Perl che ha lo scopo di trasformare un numero intero in forma verbale; è evidente che non è sufficiente una traduzione, in quanto ogni lingua ha il suo metodo per leggere un numero.

Il file all contiene tutti i messaggi che richiedono traduzione, dove l'abbinamento tra lingua inglese e lingua tradotta avviene attraverso direttive come queste:

  'Accounting'                  => 'Contabilità',
  'Accounting Menu'             => 'Menù contabilità',
  'Accounts'                    => 'Conti',
  'Active'                      => 'Attivi',

Come si può osservare, i messaggi in questione sono destinati a essere incorporati all'interno di pagine HTML, pertanto si possono usare convenientemente le entità standard (come à ecc.). Eventualmente, l'apostrofo può essere inserito proteggendolo con una barra obliqua inversa (\').

Una volta completata la traduzione e ogni volta che questa viene aggiornata, si deve avviare lo script locales.pl, dalla directory corrente:

./locales.pl[Invio]

Come già accennato precedentemente, si tratta precisamente di un collegamento allo script vero e proprio che si trova nella directory del linguaggio tedesco (locale/de/).

Lo script locales.pl legge il file all e genera (o aggiorna) una serie di file contenenti le traduzioni specifiche di ogni contesto. Se la traduzione dei termini contenuti nel file all non è completa, si ottiene anche il file missing, contenente le direttive pronte per essere completate; basta compilare questo file e poi riavviare locales.pl per ottenere l'aggiornamento del file all e la rigenerazione di tutti gli altri.

499.2   Traduzione e adattamento dei modelli

Nella directory templates/ si trovano alcuni file che a gruppi hanno un prefisso che esprime il linguaggio usato. Per esempio, nel caso della lingua italiana si tratta di Italian-*. Questi file sono dei modelli per la costruzione di stampe o di pagine HTML, come fatture, bilanci e altri documenti simili.

Se mancano i file per la propria lingua (ma soprattutto per la propria nazionalità), occorre chiedere agli sviluppatori che venga aggiunta la sua gestione, quindi si possono copiare i file di una lingua già esistente, per poi adattarli e tradurli come serve.

Quando viene creato un utente è possibile specificare quali modelli personalizzati utilizzare. Il nome di questa personalizzazione viene usato per fare riferimento alla sottodirectory templates/personalizzazione/, nella quale, se non esiste già, vengono copiati i file della lingua scelta, togliendo il prefisso. Ciò consente poi all'utente in questione di adattare i modelli alle proprie necessità, direttamente attraverso SQL-Ledger. Eventualmente, attraverso questo sistema si possono tradurre dei modelli di un'altra lingua.

499.3   Codifica del piano dei conti e di altri dati

Quando si crea un nuovo insieme di dati per la gestione di una contabilità, viene utilizzato un file sorgente SQL per generare le tabelle necessarie nella nuova base di dati. Questo file ha un'estensione -chart.sql e la parte del nome che lo precede appare nella maschera per la selezione. In questo caso non c'è necessariamente un abbinamento tra linguaggio (o nazionalità) e file SQL, perché per ogni nazionalità ci potrebbero essere codifiche differenti, soprattutto in considerazione della possibilità di gestire aziende di tipo diverso (industriale, mercantile, ecc.). Volendo realizzare il proprio piano dei conti è necessario predisporre questo file, partendo probabilmente da altri modelli esistenti per la lingua italiana.

A titolo di esempio, viene mostrato un estratto del file Italy-chart.sql, realizzato da Luca Venturini, come evidenziato dai commenti iniziali:

insert into chart (accno,description,charttype,gifi_accno,category,link) \
  \values ('2010000','COSTI DI RICERCA, DI SVILUPPO E DI PUBBLICITA\'',\
  \'H','','A',''); ... insert into chart (accno,description,charttype,gifi_accno,category,link) \
  \values ('6480003','IVA su acquisti (4%)',\
  \'A','','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax'); insert into chart (accno,description,charttype,gifi_accno,category,link) \
  \values ('6480004','IVA su acquisti (10%)',\
  \'A','','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax'); insert into chart (accno,description,charttype,gifi_accno,category,link) \
  \values ('6480005','IVA su acquisti (20%)',\
  \'A','','L','AP_tax:IC_taxpart:IC_taxservice:CT_tax'); ... INSERT INTO tax (chart_id, rate) \
  \VALUES ((SELECT id FROM chart WHERE accno = '6480003'), 0.04); INSERT INTO tax (chart_id, rate) \
  \VALUES ((SELECT id FROM chart WHERE accno = '6480004'), 0.1); INSERT INTO tax (chart_id, rate) \
  \VALUES ((SELECT id FROM chart WHERE accno = '6480005'), 0.2); ... update defaults \
  \set inventory_accno_id = (select id from chart where accno = '3020005'), \
  \income_accno_id = (select id from chart where accno = '8005005'), \
  \expense_accno_id = (select id from chart where accno = '7005005'), \
  \fxgain_accno_id = (select id from chart where accno = '9990000'), \
  \fxloss_accno_id = (select id from chart where accno = '9990010'), \
  \invnumber = '20010000', sonumber = '1000', ponumber = '1000', \
  \curr = 'EUR', weightunit = 'kg';

Dalla realizzazione corretta di questo file dipende poi il funzionamento corretto dell'insieme di dati che viene creato. Purtroppo, come si può intuire, ci sono delle interdipendenze tra le varie tabelle, che però non sono documentate pubblicamente.

Dall'estratto di esempio, si può comprendere comunque l'abbinamento che c'è tra la tabella tax e il piano dei conti vero e proprio, contenuto nella tabella chart. In effetti, il piano dei conti di Luca Venturini propone di suddividere i conti «IVA nostro credito» (acquisti) e «IVA nostro debito» (vendite) in conti distinti in base all'aliquota utilizzata. Si tratta evidentemente di un raggiro necessario, dal momento che di solito, i programmi che si occupano della gestione di una contabilità hanno una gestione speciale dell'IVA (o comunque dell'imposta sul valore aggiunto), dove si specificano almeno le aliquote, l'imponibilità, l'esclusione e le esenzioni.

Nell'estratto di esempio, a proposito dei conti IVA riferiti agli acquisti (IVA nostro credito), si possono notare nell'ultimo campo inserito delle sigle particolari, separate da due punti verticali. Si tratta di riferimenti che servono a stabilire il ruolo di questi conti nell'ambito di vari contesti; purtroppo si tratta dell'aspetto più difficile da gestire, proprio per mancanza di documentazione. Evidentemente, la disponibilità di un piano dei conti già preparato, assieme a delle prove di funzionamento sistematiche sono il mezzo per arrivare a comprendere il loro significato. Si osservi comunque che non è detto necessariamente che i file *-chart.sql per l'Italia siano stati realizzati correttamente; inoltre, le caratteristiche della propria azienda possono richiedere modifiche consistenti di quanto già esistente.

A fianco del file *-chart.sql, ci può essere un file con la stessa radice e con estensione -gifi.sql. Questo file serve a contenere le istruzioni per popolare la tabella gifi, che ha lo scopo di elencare dei codici standard nell'ambito del sistema fiscale del proprio paese. Viene mostrato un estratto di un file di questo tipo, realizzato per gli esempi dei capitoli successivi:

INSERT INTO gifi (accno,description) VALUES ('1', 'ATTIVO');
INSERT INTO gifi (accno,description) VALUES \
  \('1.A', 'CREDITI VERSO I SOCI PER VERSAMENTI ANCORA DOVUTI'); INSERT INTO gifi (accno,description) VALUES \
  \('1.B', 'IMMOBILIZZAZIONI'); INSERT INTO gifi (accno,description) VALUES \
  \('1.B.I', 'Immobilizzazioni immateriali'); INSERT INTO gifi (accno,description) VALUES \
  \('1.B.I.1', 'costi di impianto e di ampliamento'); INSERT INTO gifi (accno,description) VALUES \
  \('1.B.I.2', 'costi di ricerca, di sviluppo e di pubblicita\''); INSERT INTO gifi (accno,description) VALUES \
  \('1.B.I.3', 'diritti di brevetto industriale e diritti di \
  \utilizzazione delle opere dell\'ingegno'); INSERT INTO gifi (accno,description) VALUES \
  \('1.B.I.4', 'concessioni, licenze, marchi e diritti simili'); INSERT INTO gifi (accno,description) VALUES \
  \('1.B.I.5', 'avviamento'); INSERT INTO gifi (accno,description) VALUES \
  \('1.B.I.6', 'immobilizzazioni immateriali in corso e acconti'); INSERT INTO gifi (accno,description) VALUES \
  \('1.B.I.7', 'altre immobilizzazioni immateriali');

Prima di concludere è bene osservare che l'insieme dei caratteri utilizzato per realizzare questi file condiziona la codifica che si può usare quando si crea la base di dati, ovvero l'insieme dei dati. Dal momento che con la lingua italiana è possibile simulare le lettere accentate con un apostrofo, è conveniente realizzare file ASCII puri e semplici, in modo da avere poi la massima libertà nella scelta della codifica dell'insieme di dati.

Appunti di informatica libera 2006.01.01 --- Copyright © 2000-2006 Daniele Giacomini -- <daniele (ad) swlibero·org>, <daniele·giacomini (ad) poste·it>


Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome adattamento_di_sql_ledger.htm

[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [violazione licenza] [translators] [docinfo] [indice analitico]

Valid ISO-HTML!

CSS validator!

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Sub-domains

CDRoms - Magnatune - Librivox - Liber Liber - Encyclopaedia Britannica - Project Gutenberg - Wikipedia 2008 - Wikipedia 2007 - Wikipedia 2006 -

Other Domains

https://www.classicistranieri.it - https://www.ebooksgratis.com - https://www.gutenbergaustralia.com - https://www.englishwikipedia.com - https://www.wikipediazim.com - https://www.wikisourcezim.com - https://www.projectgutenberg.net - https://www.projectgutenberg.es - https://www.radioascolto.com - https://www.debitoformtivo.it - https://www.wikipediaforschools.org - https://www.projectgutenbergzim.com