Developer Portal Community

    cancel
    Showing results for 
    Search instead for 
    Did you mean: 

    Import/Export translation files

    Import/Export translation files

    ChrisJ
    New Poster

    As a supplier for Nexeed Control plus control systems in Germany is the obligation to deliver the customer country language.

    Unfortunately I often have a lot of rework due to existing export structure. The export does not distinguish between label and comment and therefore writes everything into the file. But for me there is a difference. Label = text for HMI, comment = comment in PLC (only the main language is displayed).

    Furthermore you could rethink the export file. The export file with file format .uni is very confusing. This must be converted first into an Excel, so that the translation agency accepts it, afterwards again back into .txt then into .uni again. Furthermore, I do not understand why this is not an XML file, as used in any nexeed object.

    It would also help if I have the option to choose which STD object I would like to translate with. Currently I can only select all or none. I don't want to translate 3000 DDL event texts 🙂

    Greetings

    3 REPLIES 3

    nexidator
    Community Moderator
    Community Moderator

    The .uni translation file format was defined in cooperation with our translation agency. They wished for a very simple format that can be imported into their IT system with minimum effort. I know that XML is more common, but actually it is easier to read a uni file, because you don't need a parser at all. I do not agree that the format is confusing. It's just a UTF-16 text file where every line consists of Source text, tab sign, Target text and line break.

    About translating the object texts: We usually don't use the option to export the Std texts from the CpStudio project. Instead, we use the TranslationUpdater that extracts the missing texts directly from the object repository and is also able to write them back to the OOD and OSD files. This makes it easy to decide what should be translated: Just put all the objects that should be translated into one directory and provide this directory as source for the TranslationUpdater.

    If any translations are missing for BCI objects, please contact the Helpdesk. Even if we do not provide all translations, it makes sense to deliver them back to us so we can integrate them into the next object version. This way, the texts will be available for your next project without having to bother about the translations, again.

    About the comment: I agree that the comment should be monolingual. I don't know why it has always been multilingual. The problem is that we cannot change this for compatibility reasons. The translation export does not know the meaning of any data field, it just collects all multilingual data. I don't see a chance to change this.

    I asked our translation agency. They know the uni file type, so it is clear now.

    Confusing was not the right meaning, rather not so nice to read in the editor. But of course you can easily open it in Excel.

    Never heard of this TranslationUpdater?

    Unfortunately the comment label was the biggest point, I just have to live with that.

    nexidator
    Community Moderator
    Community Moderator

    The TranslationUpdater is a small helper tool that finds missing translations in OSD and OOD files and generates a .uni file. It can also merge back translations from a .uni file into the object definition files. It is available on our download portal as part of the Control plus bundle, or (since recently) as a separate download from here: Control plus Objects | Bosch Connected Industry (bosch-connected-industry.com)

    Icon--AD-black-48x48Icon--address-consumer-data-black-48x48Icon--appointment-black-48x48Icon--back-left-black-48x48Icon--calendar-black-48x48Icon--center-alignedIcon--Checkbox-checkIcon--clock-black-48x48Icon--close-black-48x48Icon--compare-black-48x48Icon--confirmation-black-48x48Icon--dealer-details-black-48x48Icon--delete-black-48x48Icon--delivery-black-48x48Icon--down-black-48x48Icon--download-black-48x48Ic-OverlayAlertIcon--externallink-black-48x48Icon-Filledforward-right_adjustedIcon--grid-view-black-48x48IC_gd_Check-Circle170821_Icons_Community170823_Bosch_Icons170823_Bosch_Icons170821_Icons_CommunityIC-logout170821_Icons_Community170825_Bosch_Icons170821_Icons_CommunityIC-shopping-cart2170821_Icons_CommunityIC-upIC_UserIcon--imageIcon--info-i-black-48x48Icon--left-alignedIcon--Less-minimize-black-48x48Icon-FilledIcon--List-Check-grennIcon--List-Check-blackIcon--List-Cross-blackIcon--list-view-mobile-black-48x48Icon--list-view-black-48x48Icon--More-Maximize-black-48x48Icon--my-product-black-48x48Icon--newsletter-black-48x48Icon--payment-black-48x48Icon--print-black-48x48Icon--promotion-black-48x48Icon--registration-black-48x48Icon--Reset-black-48x48Icon--right-alignedshare-circle1Icon--share-black-48x48Icon--shopping-bag-black-48x48Icon-shopping-cartIcon--start-play-black-48x48Icon--store-locator-black-48x48Ic-OverlayAlertIcon--summary-black-48x48tumblrIcon-FilledvineIc-OverlayAlertwhishlist