1

Konu: foxpro da database de turkce karakterler yazabilmek

arkadaslar foxpro veritabani uzerinde turkce karakterleri kullanabilmek icin ne yapmamiz gerekir?

2 Son düzenleyen, skolbeyaz (28.06.2008 11:44:57)

Re: foxpro da database de turkce karakterler yazabilmek

hiçirsey yapmadan " I ı İ  " dışındaki harfleri kullanabiliyorsun. ancak kullanmamanı ısrarala tavsiye ederim.

3

Re: foxpro da database de turkce karakterler yazabilmek

hocam hepsini kullanmak zorundayim

alternatifim yok

kullanici language pack felan ne gerekiyorsa yukler artik

arkadaslar beklemekteyim

4

Re: foxpro da database de turkce karakterler yazabilmek

bence kullan. ben 1992-93'ten beri kullanıyorum. hiçbir problem yaşamadım. türkiye'de yaşıyorsak türkçe harfleri kullanıcaz tabii ki. eğer turkish collate kullanmazsan türkçe harfleri sıralamada en sona atar. eskiden kimse problem etmiyordu ama artık bu zamanda hiçbir programa yakışmıyor bu.

.EXE dosyasının olduğu klasöre config.fpw diye bir dosya oluştur.
collate=turkish
codepage=1254 yaz
girdiğinde ?set("colla") yaz
eğer turkish yazmıyorsa problem var demektir.

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com

5

Re: foxpro da database de turkce karakterler yazabilmek

.EXE dosyasının olduğu klasöre config.fpw diye bir dosya oluştur.
collate=turkish
codepage=1254 yaz
girdiğinde ?set("colla") yaz



hocam config.fpw dosyasini notepad ile save as yapip yapacagim sanirim
icine

collate=turkish
codepage=1254

yazdiktan sonra
main programimin basinda bu config.fpw dosyasini dahil etmelimiyim?
ve ana programa sadece

?set("colla")

yazarsam olacak diyorsun

bu kadar anlayabildim

illerilceler tablom var cok guzel. excelde turkce karakterleri gosteriyor tamamen ama databasede gostermiyor. bircok turkce karakteri soru isareti olarak gosteriyor

6

Re: foxpro da database de turkce karakterler yazabilmek

hocam dedigini yaptim

programin icinde bir forma bir label koyup turkce karakterleri display ettim cok guzel

fakat benim database icine hala turkce karakter yazamiyorum

aslinda excel dosyam var il ve ilceleri iceren

bu excel dosyasinda var bu karakterler ama excel dosyasini dbf olarak kaydettigim zaman turkce karakterleri kaybediyor
saplandik yani

7 Son düzenleyen, river (29.06.2008 21:52:13)

Re: foxpro da database de turkce karakterler yazabilmek

Bana bir excel tablosu gönder , şöyle ki her satırda bir türkçe karakter olsun. Yukarıdan aşağıya bunları sırası ile bütün türkçe karakterler ile doldur ve mail at. Buraya bu karakterleri Tablo da türkçe karakter desteği ile görebilmeni sağlayacak bir program örneği koyarım. Senin excel tablondaki code page bilgisi belirsiz bu nedenle sen birebir karakterleri gönder ben ona göre bir program vereceğim.

murat@muratirmak.com

8

Re: foxpro da database de turkce karakterler yazabilmek

murat hocam dedigin dosyayi attim sana benim email adresim taylanozgur78 hotmail

4 ggozle beklemekteyim cok tesekkur ederim

9

Re: foxpro da database de turkce karakterler yazabilmek

ozgurbey78 yazdı:

hocam dedigini yaptim

programin icinde bir forma bir label koyup turkce karakterleri display ettim cok guzel

fakat benim database icine hala turkce karakter yazamiyorum

aslinda excel dosyam var il ve ilceleri iceren

bu excel dosyasinda var bu karakterler ama excel dosyasini dbf olarak kaydettigim zaman turkce karakterleri kaybediyor
saplandik yani


config.fpw dosyası .exe ile aynı klasörde olacak. başka kuralı yok bunun. bir de önceden oluşturduğun .dbf dosyası 1254 kodsayfasına sahip değil. ya yeni bir dbf oluştur ya da cpzero.prg var foxpro nun klasörlerinden birinde. onunla kod sayfasını sıfırla. ondan sonra düzelir. ama sen türkçe harfler yerine soru işaretleri çıkıyor diyorsun. problemin başka birşey olabilir. acaba senin windows türkçe mi? çünkü bu bahsettiğim şey türkçe sıralama için. yoksa bunları yapmasan da türkçe harfler gözükür ama sıralamada türkçe harfleri sona atar...

Haksızlıklar karşısında susanlar, dilsiz şeytanlardır!
www.metinemre.com

10

Re: foxpro da database de turkce karakterler yazabilmek

Arkadaşlar bu Murat kardeşiniz Allah'ın hem şanslı hem de bedevi bir kuludur. Gene bedeviliği üzerinde. Zatürre olmuş vaziyetteyim. Ben konuyla ilgilenen arkadaşlardan bana 1-2 gün müsade vermelerini rica ediyorum. Elim klavye tutar tutmaz hemen ileteceğim örnek kodu...

11

Re: foxpro da database de turkce karakterler yazabilmek

ozgurbey78 yazdı:

arkadaslar foxpro veritabani uzerinde turkce karakterleri kullanabilmek icin ne yapmamiz gerekir?


VERİ TABANI MI? İÇERİSİNDEKİ DATALAR MI? anladığım kadarıyla sen excelden dbf oluşturmada sorun yaşıyorsun.
kullandığın office versiyonu 2003 ise excel dosyasını farklı kaydet seçeneği ile kayıt türünü dbf3 olarak seçerek kaydet. daha sonra foxpro ile oluşturduğun bu dosyayı aç. daha sonra cpzero.prg'yi çalıştır ve oradan 857 turkish dos seçeneğini seç ve türkçe karekteler dönüşmüş olur.

12 Son düzenleyen, river (01.07.2008 13:09:34)

Re: foxpro da database de turkce karakterler yazabilmek

Selam beyler,

Exceldeki tablonun Text.Txt isimli dosyaya UNICODE olarak alındığını ve ardından da ANSI TXT ye çevrildiğini, ANSI TXT ile yola çıkınca CodePage lerin düzenlenmeye ihtiyaç duymadığını
bu arada bir önceki çözümün tabi ki daha geçerli olduğunu ama burada bir amacımın da yeni başlayan arkadaşlara biraz derin VFP ile kod yazmak konusunda da ortam yaratmak olduğunu da bilginize sunaraktan...

Visual Fox Pro
fh = FOPEN("S:\Text.Txt")

IF fh <= 0
    WAIT WINDOW "Dosya açılamadı."
    CANCEL
ENDIF
 
fsize = FSEEK(fh,0,2)   && Determine file size, assign to fSize
= FSEEK(fh,0,0)           && Move file pointer to the top again.
allbuffer = FREAD(fh,fsize)
= FCLOSE(fh)
newbuffer = ""
*fsize = 1024
FOR i = 1 TO fsize STEP 2
    IF i = 1 OR i = 2
        LOOP
    EndIF
    curcharcode = ASC(SUBSTR(allbuffer,i,1))
    curchar     = SUBSTR(allbuffer,i,1)
 
    extcharcode = ASC(SUBSTR(allbuffer,i+1,1))
    IF extcharcode = 1
        DO Case
        CASE curCharCode = 30
            curChar = "Ğ"
        CASE curCharCode = 48
            curChar = "İ"
        CASE curCharCode = 94
            curChar = "Ş"
        OTHERWISE
        EndCase
    EndIF
    newbuffer = newBuffer + curchar
 
NEXT
 
nfh = FCREATE("S:\Sonuc.Txt")
= FWRITE(nfh,newBuffer,LEN(newBuffer))
= FCLOSE(nfh)
 
CLOSE ALL
 
USE s:\test.dbf excl
ZAP
APPEND FROM s:\sonuc.txt DELIMITED WITH TAB
BROWSE