Xtranslation: Unterschied zwischen den Versionen
(→Code) |
|||
Zeile 89: | Zeile 89: | ||
Mit der Prozedur #set_language wird die Sprache des BAF-Clients gesetzt. Anschließend wird die Seite neu aufgerufen. Da das Kommando xtranslation_exec von verschiedenen Seiten aus aufgerufen wird, wird der Parameter d von #page_fill als Parameter des Kommandos übergeben. | Mit der Prozedur #set_language wird die Sprache des BAF-Clients gesetzt. Anschließend wird die Seite neu aufgerufen. Da das Kommando xtranslation_exec von verschiedenen Seiten aus aufgerufen wird, wird der Parameter d von #page_fill als Parameter des Kommandos übergeben. | ||
+ | |||
+ | ===xtranslation_eximport=== | ||
+ | |||
+ | ~ $ICP(0,ex) | ||
+ | #val_set n=1 z=$FILEDIALOG(save,$T(filter_baf),baf) | ||
+ | #sql_exporttables fn=$VAL(1) t=translate_language t2=translate_word t3=translate_translation t4=translate_list_item | ||
+ | |||
+ | ~ $ICP(0,im) | ||
+ | #val_set n=1 z=$FILEDIALOG(open,$T(filter_baf),baf) | ||
+ | #sql_importdefs t=translate_language | ||
+ | #sql_importdefs t=translate_word | ||
+ | #sql_importdefs t=translate_translation | ||
+ | #sql_importdefs t=translate_list_item | ||
+ | #sql_importtables fn=$VAL(1) t=translate_language t2=translate_word t3=translate_translation t4=translate_list_item | ||
+ | |||
+ | ~~ | ||
+ | |||
+ | Beim Ex- und Import werden "geradeaus" die vier beteiligten Tabellen ex- oder importiert. |
Version vom 23. Mai 2021, 13:54 Uhr
Inhaltsverzeichnis
xtranslation - Übersetzung
Mit dem Kommando xtranslation ruft man das Übersetzungstool auf.
Sprachen
In der ausgelieferten Datenbank sind bereits die Sprachen Englisch und Deutsch angelegt. Sollen weitere Sprachen hinzugefügt werden, so wird der entsprechende Button verwendet.
Auf derselben Seite kann auch die Sprache gesetzt werden, mit der die Texte im BAF-Client angezeigt werden. Damit werden auch die Übersetzungen aktualisiert, wenn zwischenzeitlich Änderungen daran vorgenommen wurden.
Übersetzungen
Unter Alle Worte findet man eine Liste der Worte (und Phrasen), die im System angelegt sind. Im Gegensatz dazu findet man unter Zu übersetzen diejenigen, die nicht oder nicht vollständig übersetzt sind. (Üblicherweise verwendet man Zu übersetzen, um neue Worte zu übersetzen und Alle Worte, um bestehende Übersetzungen zu verbessern.)
Üblicherweise enthalten Worte (z.B. Add_group) keine Leerzeichen, damit im Quelltext die entsprechenden Parameter nicht in Anführungszeichen gesetzt werden müssen. Das Grid Übersetzung enthält eine Zeile pro angelegter Sprache.
In den Anmerkungen kann zum Beispiel dargelegt werden, warum diese und nicht jene Formulierung verwendet wurde. Im Regelfall bleibt das Anmerkungsfeld jedoch leer.
Tabellen
create table translate_language ( translate_language_id varchar(40) not null primary key, name varchar(40) not null unique, sort number(1), datechg date, usrchg char(40), progchg varchar2(40) );
create table translate_word ( translate_word_id varchar(40) not null primary key, word varchar(40) not null unique, datechg date, usrchg char(40), progchg varchar2(40) );
create table translate_translation ( translate_translation_id varchar(40) not null primary key, translate_word_id varchar(40) not null, translate_language_id varchar(40) not null, translation varchar(250), datechg date, usrchg char(40), progchg varchar2(40) );
create table translate_list_item ( translate_list_item_id varchar(40) not null primary key, data_list_item_id varchar(40) not null, translate_language_id varchar(40) not null, value varchar(80), datechg date, usrchg char(40), progchg varchar2(40) );
Die Tabelle translate_list_item dient der Übersetzung der Listeneinträge in den Nachschlagelisten (xlookup).
Code
xtranslation
#frm y=treepage c=xtranslation flt=xtranslation_flt w=400 #btn y=save s=#save se=c #btn y=cancel s=#cancel se=cp #btn y=back s=#treeback se=b #btn y=backback s=#treebackback se=b #btn y=export s=xtranslation_eximport(ex) se=b #btn y=import s=xtranslation_eximport(im) se=b #btn c=$T(Refresh) se=b s=#filter w=100 #filter
Das Kommando xtranslation ist völlig ein Standard-Formular-Kommando.
xtranslation_exec
~ $ICP(0,setlang) #set_language z=$PVAL(lang,1,sel) #page_fill d=$CP(1) ~~
Mit der Prozedur #set_language wird die Sprache des BAF-Clients gesetzt. Anschließend wird die Seite neu aufgerufen. Da das Kommando xtranslation_exec von verschiedenen Seiten aus aufgerufen wird, wird der Parameter d von #page_fill als Parameter des Kommandos übergeben.
xtranslation_eximport
~ $ICP(0,ex) #val_set n=1 z=$FILEDIALOG(save,$T(filter_baf),baf) #sql_exporttables fn=$VAL(1) t=translate_language t2=translate_word t3=translate_translation t4=translate_list_item ~ $ICP(0,im) #val_set n=1 z=$FILEDIALOG(open,$T(filter_baf),baf) #sql_importdefs t=translate_language #sql_importdefs t=translate_word #sql_importdefs t=translate_translation #sql_importdefs t=translate_list_item #sql_importtables fn=$VAL(1) t=translate_language t2=translate_word t3=translate_translation t4=translate_list_item ~~
Beim Ex- und Import werden "geradeaus" die vier beteiligten Tabellen ex- oder importiert.