View source | Discuss this page | Page history | Printable version   

Translation assistance/de

Übersetzungshilfe

Erstmal die Anzahl der gleichen Einträge in allen translation Tabellen suchen.

select help, count(*) from (  
select help from AD_ELEMENT_trl where ad_language='de_DE' union all 
select help from AD_FIELD_trl where ad_language='de_DE' union all 
select help from AD_DESKTOP_trl where ad_language='de_DE' union all 
select help from AD_FORM_trl where ad_language='de_DE' union all 
select help from AD_PROCESS_PARA_trl where ad_language='de_DE' union all 
select help from AD_PROCESS_trl where ad_language='de_DE' union all 
select help from AD_REFERENCE_trl where ad_language='de_DE' union all 
select help from AD_TAB_trl where ad_language='de_DE' union all 
select help from AD_TASK_trl where ad_language='de_DE' union all 
select help from AD_WF_NODE_trl where ad_language='de_DE' union all 
select help from AD_WINDOW_trl where ad_language='de_DE' union all 
select help from AD_WORKBENCH_trl where ad_language='de_DE' union all 
select help from AD_WORKFLOW_trl where ad_language='de_DE'  
) foo group by help order by count(*) desc;

Nun legen wir den type table_names an.

create type table_names is table of varchar(20);


Dann tragen wir folgende procedure

create or replace 
PROCEDURE ob_translation( newtxt IN VARCHAR2, oldtxt IN VARCHAR2, lang IN VARCHAR2 ) 
IS 

type table_names is table of varchar(20) index by binary_integer; 

myTables table_names;
begin 
myTables(1) := 'AD_FIELD_TRL'; 
myTables(2) := 'AD_ELEMENT_TRL'; 
myTables(3) := 'AD_DESKTOP_TRL'; 
myTables(4) := 'AD_FORM_TRL'; 
myTables(5) := 'AD_PROCESS_PARA_TRL'; 
myTables(6) := 'AD_PROCESS_TRL'; 
myTables(7) := 'AD_REFERENCE_TRL'; 
myTables(8) := 'AD_TAB_TRL'; 
myTables(9) := 'AD_TASK_TRL'; 
myTables(10) := 'AD_WF_NODE_TRL'; 
myTables(11) := 'AD_WINDOW_TRL'; 
myTables(12) := 'AD_WORKBENCH_TRL'; 
myTables(13) := 'AD_WORKFLOW_TRL'; 
 
for i in 1..mytables.count loop 

execute IMMEDIATE 'UPDATE '||myTables(i)||' SET help=||newtxt|| WHERE  ad_language=||lang|| AND help=||oldtxt||'; 
end loop; 
commit;
END;

in eine Datei mit z.b. namen oracle-procedure.sql. Jetzt loggen wir uns in die Oracle DB mit sqlplus ein. Wir benutzen den Benutzer für die openbravo db, welcher normalerweise TAD ist.

sqlplus tad

Dann spielen wir die procedure ein mit folgendem Befehl

get /path/to/oracle-procedure.sql

und kompilieren dann diese procedure mit

/

Wenn dies geklappt hat, können wir help texte mit folgendem Statement austauschen

execute ob_translation('Mein neuer hilfetext.', 'alter hilfetext', 'de_DE');

Mann kann auch im webinterface SQL-Commands fenster, die procedure ausführen

begin
ob_translation('Mein neuer hilfetext.', 'alter hilfetext', 'de_DE');
end;


tabellen ohne help-column ad_fieldgroup_trl, ad_menu_trl (nur description), ad_message_trl (nur msgtext), ad_printformatcterm (existiert nicht), AD_PRINTLABELLINE_trl (no data found), AD_REF_LIST_trl (nur description), AD_TEXTINTERFACES_trl (nur text), AD_COUNTRY_trl (existiert nicht), AD_DOCTYPE_trl (existiert nicht), AD_DUNNINGLEVEL_trl (existiert nicht), AD_ELEMENTVALUE_trl (exitiert nicht),AD_GREETING_trl (exitiert nicht), AD_PAYMENTTERM_trl (exititert nicht), AD_TAXCATEGORY_trl (exitiert nicht), AD_TAX_trl (exitiert nciht),AD_UOM_trl (exitiert nicht),

Retrieved from "http://wiki.openbravo.com/wiki/Translation_assistance/de"

This page has been accessed 9,980 times. This page was last modified on 12 March 2009, at 16:00. Content is available under Creative Commons Attribution-ShareAlike 2.5 Spain License.