i want to build DBF with ""right" Codepage depend on OS Settings.
it must be ANSI DBF Version to import Data from ActiveX like Office
so how do i found out Language and Codepage from OS compare to harbour settings

Code: Select all
FUNCTION WinCodePage( cStart )
LOCAL nStart := 1
LOCAL nItem := 0
LOCAL cRet := ""
LOCAL aLangName := { "Basque", ;
"Czech 852", ;
"Czech ISO-8859-2", ;
"Czech KAM", ;
"Catalan", ;
"English", ;
"French", ;
"Galician", ;
"German Ansi", ;
"German OEM", ;
"Hebrew 862", ;
"Hebrew 1255", ;
"Hungarian 852", ;
"Hungarian CWI-2", ;
"Hungarian WINDOWS-1", ;
"Italian", ;
"Polish 852", ;
"Polish ISO-8859-1", ;
"Polish Mozowia", ;
"Portuguese", ;
"Romanian", ;
"Russian WINDOWS-1", ;
"Serbian ISO-8859-2", ;
"Serbian 852", ;
"Spanish" }
LOCAL aCodepageID := { "EU", ;
"CS852", ;
"CSISO", ;
"CSKAM", ;
"CA", ;
"EN", ;
"FR", ;
"GL", ;
"DEWIN", ;
"DE850", ;
"HE862", ;
"HEWIN", ;
"HU852", ;
"HUCWI", ;
"HUWIN", ;
"IT", ;
"PL852", ;
"PLISO", ;
"PLMAZ", ;
"PT", ;
"RO", ;
"RUWIN", ;
"SRISO", ;
"SR852", ;
"ES" }
Code: Select all
FUNCTION WinLanguage( cStart )
LOCAL nStart := 1
LOCAL nItem := 0
LOCAL cRet := ""
LOCAL aLangName := {}
LOCAL aLangID := {}
AADD( aLangName, "Basque 850" )
AADD( aLangName, "Catalan 850" )
AADD( aLangName, "Croatian 852" )
AADD( aLangName, "Croatian ISO-8859-2" )
AADD( aLangName, "Czech 852" )
AADD( aLangName, "Czech ISO-8859-2" )
AADD( aLangName, "Czech KAM" )
AADD( aLangName, "English 437" )
AADD( aLangName, "Esperanto 850" )
AADD( aLangName, "French 850" )
AADD( aLangName, "Galician 850" )
AADD( aLangName, "German 850" )
AADD( aLangName, "Hebrew 862" )
AADD( aLangName, "Hungarian 852" )
AADD( aLangName, "Hungarian CWI-2" )
AADD( aLangName, "Hungarian Windows-1" )
AADD( aLangName, "Icelandic 850" )
AADD( aLangName, "Indonesian 437" )
AADD( aLangName, "Italian 437" )
AADD( aLangName, "Korean 949" )
AADD( aLangName, "Polish 852" )
AADD( aLangName, "Polish ISO-8859-1" )
AADD( aLangName, "Polish Mozowia" )
AADD( aLangName, "Portuguese 850" )
AADD( aLangName, "Romanian 852" )
AADD( aLangName, "Russian 866" )
AADD( aLangName, "Serbian 852" )
AADD( aLangName, "Serbian ISO-8859-2" )
AADD( aLangName, "Spanish 850" )
AADD( aLangID, "EU" )
AADD( aLangID, "CA" )
AADD( aLangID, "HR" )
AADD( aLangID, "HRISO" )
AADD( aLangID, "CS" )
AADD( aLangID, "CSISO" )
AADD( aLangID, "CS" )
AADD( aLangID, "EN" )
AADD( aLangID, "EO" )
AADD( aLangID, "FR" )
AADD( aLangID, "GL" )
AADD( aLangID, "DE" )
AADD( aLangID, "HE" )
AADD( aLangID, "HU" )
AADD( aLangID, "HUCWI" )
AADD( aLangID, "HUWIN" )
AADD( aLangID, "IS85" )
AADD( aLangID, "ID" )
AADD( aLangID, "IT" )
AADD( aLangID, "KO" )
AADD( aLangID, "PL" )
AADD( aLangID, "PLISO" )
AADD( aLangID, "PLMAZ" )
AADD( aLangID, "PT" )
AADD( aLangID, "RO" )
AADD( aLangID, "RU" )
AADD( aLangID, "SR" )
AADD( aLangID, "SRISO" )
AADD( aLangID, "ES" )
Code: Select all
FUNCTION WinDateFormat( cStart )
LOCAL nItem := 0
LOCAL cRet := ""
LOCAL aDateName := {}
LOCAL aDateFormat := {}
LOCAL nStart := 1
AADD( aDateName, "ANSI" )
AADD( aDateName, "BRITISH" )
AADD( aDateName, "FRENCH" )
AADD( aDateName, "GERMAN" )
AADD( aDateName, "ITALIAN" )
AADD( aDateName, "JAPAN" )
AADD( aDateName, "USA" )
AADD( aDateName, "AMERICAN" )
AADD( aDateFormat, "yy.mm.dd" )
AADD( aDateFormat, "dd/mm/yy" )
AADD( aDateFormat, "dd/mm/yy" )
AADD( aDateFormat, "dd.mm.yy" )
AADD( aDateFormat, "dd-mm-yy" )
AADD( aDateFormat, "yy.mm.dd" )
AADD( aDateFormat, "mm-dd-yy" )
AADD( aDateFormat, "mm/dd/yy" )