Abbiamo finalmente ottenuto intorno ad attuare rapporto localizzazione. Il caricamento di Crystal Reports è già la parte più lenta/peggiore dell'esperienza utente nella nostra app, quindi abbiamo voluto evitare qualsiasi impatto sulle prestazioni. L'altra idea che ha informato la nostra decisione è stata che le traduzioni non cambieranno all'interno di una versione spedita.
Abbiamo sviluppato un'applicazione che utilizza l'API di Crystal Reports (2008 - quindi non c'è RDC) e funziona in due fasi.
La prima fase consiste nel raschiare tutto il testo e l'output in un file .resx in inglese. La maggior parte di questo è l'identificazione del testo traducibile all'interno delle funzioni e la sostituzione di campi incorporati con token che indicano "non tradurre".
Dopo che le versioni localizzate del resx sono tornate, la seconda fase dell'app prende ciascun rapporto insieme a ciascuna resx e salva nuovi report con l'inglese sostituito con il testo tradotto. Questo ci ha anche permesso di spostare i font solo nei report giapponesi su MS Gothic, evitando così la necessità di ottenere la licenza di un font "universale". I caratteri giapponesi nei caratteri "universali" (ad esempio Arial Unicode MS) tendono a sembrare schifosi.
L'API Crystal è bizantina e occorre prestare attenzione ai casi limite relativi al rilevamento di stringhe traducibili all'interno di funzioni e campi incorporati.Fai attenzione ai campi predefiniti come PageNofM, non sono racchiusi tra parentesi graffe (per non parlare del fatto che dovresti sostituirlo con Pagina {campo} di {campo} così "pagina" e "di" possono essere tradotti). Un puntatore, usa i controller per sostituire gli oggetti esistenti con copie clonate/modificate, non puoi semplicemente modificare il contenuto del testo degli oggetti in posizione. Buona fortuna se segui questa strada, ma alla fine pensiamo che sia l'opzione migliore.
fonte
2011-03-03 01:20:10
# 2 sarebbe utilizzando il desktop remoto per eseguire la scansione attraverso ogni campo di testo e sostituirlo con il testo localizzato? –
Sì, non l'ho mai fatto, quindi non sono sicuro di quale tipo di mal di testa siano coinvolti. –
Cosa ne pensi di un UFL che restituisce stringhe localizzate? Chiamare questo da ogni campo etichetta sarebbe un problema di prestazioni? –