1

Konu: foxpro 9 da filitreleme sorunu

arkadaşlar kusura bakmazsanız çok basit bir soru soracağım.Fox pro 9 a geçeli çok garip problemler ile karşılaşıyorum fox 6 da bu sorunlarım yoktu,sorun şu
  müşteri.dbf te müşteri grupların var ve müşteri dbf formda bir gride bağlı

  set filter to musteri.grup="A" komutunda grubu A olan müşterileri gride filter edip getirebiliyorum.
  set filter to musteri.grup="B" dediğimde,veri tabanında B gurubu müşterilerim varsa filter edip getirebiliyorum.

ancak; musteri.grup="B" iken,bu koşula uyan kayıt yoksa,gridde hali ile kayıt görünmüyor,bu sefer

set filter to musteri.grup="A" dediğimde grubu A olan müşterilerim olduğu halde gridde hiç bir kayıt görülmüyor.Koşula uyan bir kayıt bulunamadığı takdirde filitre hiç bir şekilde çalışmıyor.Bu gibi basit işlemleri fox6 ve daha önceki versiyonlarda yapıyordum ve problemsiz çalışıyordu.Acaba Fox 9 da birşeyler mi değişti,bilgisi olan arkadaşların aydınlatmasını rica ediyorum:/:rolleyes::)

En büyük sermaye nakit,nakit sermaye vakittir...

2

Re: foxpro 9 da filitreleme sorunu

bu arada set filter to musteri.grup= komutundan sonra BROWS komutu kullanırsam gride kayıtlar geliyor ve filitre düzgün çalışıyor.Garip bir durum arkadaşlar

En büyük sermaye nakit,nakit sermaye vakittir...

3

Re: foxpro 9 da filitreleme sorunu

Set filter fox2x'ten beri "kullanilmayacak komutlar" listemde oldugundan pek emin degilim birsey degismis midir:) Set filter'dan sonra locate desen o zaman oluyor mu?

set filter to ....
locate
thisform.myGrid.Refresh()


set filter yerine "set key" ya da RecordSourceType = 4 kullansan bence cok daha iyi. Ozellikle gridde "set filter" kullanmak bence kotu bir fikir.

4

Re: foxpro 9 da filitreleme sorunu

set filter komutunu
GO TOP veya GO BOTT veya SKIP gibi record pointeri hareket ettiren komutlarla uyarabiliyorsun.

VFP9 SP2

5 Son düzenleyen, ercan (30.08.2007 19:51:18)

Re: foxpro 9 da filitreleme sorunu

set filter to
set filter to kosul


biçiminde yazarsan bir önceki filter i iptal edeceğinden işini görür herhalde.

6

Re: foxpro 9 da filitreleme sorunu

Ben de Set Filter komutunu çok nadir kullanırım. Ben Set Filter komutunu Go Top ile tetiklerim ve gridi refresh yaparım

Visual Fox Pro
Set Filter To lcKosul In TabloAdi

Go Top In TabloAdi
ThisForm.grdGrid.Refresh
/o---------------------o\
     www.haser.com
\o---------------------o/

7

Re: foxpro 9 da filitreleme sorunu

Arkadaslar ufak bir uyari:
Go top - Rushmore tarafından optimize edilmiyor.
Locate - ediliyor

Ufak dosyalarda aradaki fark fark edilmiyor o ayrı mesele:)

8

Re: foxpro 9 da filitreleme sorunu

Visual Fox Pro
Thisform.Grid1.refresh


bunu yazmak yeterli oluyor.

9

Re: foxpro 9 da filitreleme sorunu

Çetin,
Seninle olan bir sohbetimizde de bahsetmiştin Go Top yerine Locate kullanmayı ancak; Locate fonksiyonunda tablo adının belirtilememesi benim için sorun çıkartıryor smile Select TabloAdi komutunu kullanmayalı yıllar oldu. Grid'in içindeki bir TextBox'ın Valid'den bir çok fonksiyona yönlenebiliryorum. Fonksiyonların içinde Select TabloAdi kullandığımda seçili tablonun değişmesi her zaman olmasa da şu anda ifade edemeceğim garip sorunlara yol açıyor. Locate komutunda In TabloAdi gibi bir parametre olsaydı harika olurdu. smile

/o---------------------o\
     www.haser.com
\o---------------------o/

10

Re: foxpro 9 da filitreleme sorunu

arkadaşlar,bende çetin hocamın görüşlerine katılıyorum.Set filteri bende çok kullanmıyorum.RecordSourceType = 4 bencede mantıklı,ayrıca set filter özellikle gridde çok yavaşlama yapıyor denedim ve gördüm.Dolayısı ile bu yöntemden vaz geçmiş durumdayım.

En büyük sermaye nakit,nakit sermaye vakittir...