[ABD v8i SS5 Native C] Querying multi-byte languages from database

Hi,

To be able to query a database table's content we are using mdlDB_openCursorWithID() and mdlDB_fetchRowByID() functions along with MS_sqlda structure. But it returns (char *) data type as query result which is limited to 255 ASCII characters. But for multi-byte languages like Japanese, Korean and Arabic, we need the query result as MSWChar data type to support Unicode characters. Is there any solution to this?

Kind regards,

Sedat Alis
AEC Technology Inc.

Parents Reply Children
  • I change my MSV8i mslocale.cfg file

    Good tip!  Where is the list of those MS_RTCONFIG values? In a default (English) installation, there is no MS_RTCONFIG definition.

     
    Regards, Jon Summers
    LA Solutions

  • Where is the list of those MS_RTCONFIG values?

    They are in the file mslocale.cfg file. Below is the file default content.

    # Set run time configuration for processing Chinese, Japanese, and Korean
    # multi-byte characters.  When this is set a localized operating system
    # is required to provide the proper screen font for dialog boxes and the
    # front end processor for multi-byte text input.
    #
    # MS_RTCONFIG = Japanese
    # MS_RTCONFIG = Korean
    # MS_RTCONFIG = SimpChinese
    # MS_RTCONFIG = TradChinese
    # MS_RTCONFIG = HongKongChinese
    # MS_RTCONFIG = Vietnamese
    #
    # In addition to the above variables, also set the following variable 
    # for Vietnamese language version.
    #
    # MS_TEXTOUT_UNICODE=1
    #

    In China, I uncomment the line MS_RTCONFIG = SimpChinese by removing the  first character # in the line.



  • Hi Yongan,

    Thank you for simple but valuable information.

    mslocale.cfg file which is attached is located on below folder;

    C:\Program Files (x86)\Bentley\AECOsimBuildingDesigner V8i Ss5\AECOsimBuildingDesigner\config\system

    mslocale.cfg

    MS_RTCONFIG has following options. But I can't see Arabic or Turkish language options there. By the way, you may want to write in several languages on the same design file.

    # Set run time configuration for processing Chinese, Japanese, and Korean
    # multi-byte characters. When this is set a localized operating system
    # is required to provide the proper screen font for dialog boxes and the
    # front end processor for multi-byte text input.
    #
    # MS_RTCONFIG = Japanese
    # MS_RTCONFIG = Korean
    # MS_RTCONFIG = SimpChinese
    # MS_RTCONFIG = TradChinese
    # MS_RTCONFIG = HongKongChinese
    # MS_RTCONFIG = Vietnamese

    There is also a wiki below but it does not explain all options of MS_RTCONFIG variable;

    Using foreign characters in written text on English MicroStation V8i on English OS

    In my opinion, when using Unicode, language is not important so there must be an option like MS_RTCONFIG = Unicode. Also this must be default too because there are lots of languages other than English.

    I think setting MS_RTCONFIG = SimpChinese and selecting desired locale (Arabic, Turkish or Russian) covers all other languages. :)

    Kind regards,

    Sedat Alis
    AEC Technology Inc.