Function LocaleConfigure() Foundation
Configures data used by internal locale subsystems
LocaleConfigure( <nDefine>, [<xNewConfigData>] ) --> xOldConfigData
LocaleConfigure() returns the current data for that locale subsystem.
LocaleConfigure() can be used to reconfigure internal subsystems which have a locale (nationalized) character set. This might be required if the Xbase++ runtime has to be localized, or deals with multiple-language versions in one application.
The settings remain active until the thread has terminated, or one of the commands that also change these tables is called. This can be either SET COLLATION or SET CHARSET .
The effect of the changes are thread-local but will change the behaviour of various functions and automatic operations. Changing these values can confuse the application's logic if the influences are not considered in all places of the program. As an example, if an index using Upper() in its expression is created based on a changed LOCALE_TO_UPPER table, then this index will be unusable outside of that program because Upper() behaves differently depending on different settings.
The following table explains valid values for parameter<nDefine> and their effect:
|LOCALE_COLLATION||C, 256||Sort order for character strings, used by all comparison operations, also by functions that implicitely compare strings like ASort().|
|LOCALE_CHAR_TYPE||C, 256||Character type table used by IsAlpha(), IsDigit() must be interpreted as a string of 8bit Bitfields|
|Bit 1 = IsDigit()|
|Bit 2 = IsAlpha()|
|LOCALE_TO_UPPER||C, 256||Corresponding upper case characters for a given character, used by Upper() and IsUpper()|
|LOCALE_TO_LOWER||C, 256||Corresponding lower case characters for a given character, used by Lower() and IsLower()|
|LOCALE_ANSI_TO_OEM||C, 256||Conversion table used for ANSI to OEM transformations, like ConvToOemCp(), and all automatic transformations, like reading a FOXDBF table stored as ANSI when SET CHARSET is set to OEM|
|LOCALE_OEM_TO_ANSI||C, 256||Conversion table used for OEM to ANSI, see above.|
If you see anything in the documentation that is not correct, does not match your experience with the particular feature or requires further clarification, please use this form to report a documentation issue.