Xtranslation: Unterschied zwischen den Versionen

Aus bafbal.de
Zur Navigation springen Zur Suche springen
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, 14:54 Uhr

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.

Sprache auswählen

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.)

Eine Übersetzung

Ü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.