Hirdetés
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- sh4d0w: Kalózkodás. Kalózkodás?
- Lalikiraly: Kaáli Autó-Motor Múzeum
- gban: Ingyen kellene, de tegnapra
- Brogyi: CTEK akkumulátor töltő és másolatai
- WireGuard VPN a mindennapokra
- GoodSpeed: Ágymatrac keresési kálvária
- sh4d0w: StarWars: Felismerés
Új hozzászólás Aktív témák
-
BlackWoOd
aktív tag
-
g4dg3t
senior tag
A gond ott van hogy elobb hivatkozol a parameterekre es csak kesobb hozod oket letre. Mikor meghivod a ParamByName metodust az SQL stringnek mar tartalmaznia kell a lekerdezest a parameterhivatkozasokkal egyutt!
Tehat helyesen:
...
with Query1, SQL do begin
Close;
Clear;
Add('SELECT *');
Add('FROM TranzTabla');
Add('WHERE (Datum>= :KezdDatum) AND (Datum<= :VegDatum)');
if LekerdFelhComboBox.ItemIndex > 0 then
Add('AND (Felhasznalo= :Felhaszn)');
if LekerdPartnerComboBox.ItemIndex > 0 then
Add('AND (Partner= :Partn)');
ParamByName('Felhaszn').AsString:=LekerdFelhComboBox.Text;
ParamByName('Partn').AsString:=LekerdPartnerComboBox.Text;
ParamByName('KezdDatum').AsDate:=LekerdDatePicker1.Date;
ParamByName('VegDatum').AsDate:=LekerdDatePicker2.Date;
Prepare;
Open;
end;
...
Lathatod azt is hogy mikor kell hivni a Prepare metodust (Open elott). Ez annyit csinal, hogy elore lefoglalja a Query futtatasahoz szukseges eroforrasokat igy a lekerdezes vmivel gyorsabban lefut!
[Szerkesztve] -
BlackWoOd
aktív tag
Hát, meglehet. 7-es verzióban benne van, de abban a 2.0-ás.
Esetleg ha a Companion CD-n szétnézel, lehet, hogy ott van eldugva.
(Nincs előttem 5-ös telepítő készlet, nem tudom megnézni sajna.)
Viszont sem a borland.com-on sem a bdn.borland.com-on nem találok demo-letöltést. (Tuti, hogy volt trial változata, ide a rozsdás bökőt, ha nem...)
szerk.: a 2.0 nem biztos, de tuti, hogy 1.0 fölötti volt.
[Szerkesztve] -
lao ce
aktív tag
hat arrol van elkepzelesem hogy en ezt hogyan csinalnam.
kerdes amugy hogyha cmb1 = Kiss es cmb2 = Bela
akkor az osszes kiss vagy bela kell megjelenjen vagy az osszes kis es bela?
amugy a checkboxokat hanyagolnam, az elso item minden comboban lehetne (all) vagy (minden) valasztas. kevesebb objectum = egyszerubb interfesz.
aztan kb... van egy sql valtozo, mondjuk aSQL
a combokat elnevezheted ugy mint a fieldek nevei, de egy cmb-vel az elejen, tehat cmbFirstName, cmbKeresztnev
az eleje az aSQL-nek valami ilyesmi lesz (megtartanam space-eket a ' jelek utan es elott!)
aSQL := ' select f1, f2, f3, f4 from table where ';
itt a datum
aSQL := aSQL + ' ( DateField >= #' + MyDateObj1.Value + '# ';
aSQL := aSQL + ' and DateField <= #' + MyDateObj2.Value + '# ) ';
aztan ugyi... vegig egy for ciklussal a kombokon
for i := 0 to ComponentCount-1 do begin
___currCompName := copy (Components.Name, 1, 3);
___currFieldName := copy(Components.Name,4, Length(Components.Name)-3 );
aztan mikor komborol van szo es raadasul nem a (minden) van kivalasztva:
___if (currCompName = 'cmb') and
______((Components as TCombobox).ItemIndex > 0) then
akkor hozzaadjuk az aSQL valtozohoz azt a feltetelt hogy ' and fieldname = ertek '.
meg az is van hogy itt 'and' vagy 'or' attol fuggoen hogy kiss bela hogy kell megjelenjen az elso kerdesben.
persze, ez nem ENNYIRE egyszeru mert lehet szam is meg text is meg date is a tipusa a dolognak. ez most text akar lenni de csak nem biztos hogy szintaktikailag helyesen irom.
aSQL := aSQL + ' and ' + currFieldName + ' = ''' +
Components as TCombobox)..Items.Strings [ (Components as TCombobox).ItemIndex] + ''' '
aztan egy par end a vegere es lehet futtatni a query-t.
[Szerkesztve] -
lao ce
aktív tag
- en mindig sima combo-t hasznalok

- az auto feltolteshez amugy is a DBLookupComboBox -t kellene hasznalni...
- a dbcombonak igenis VAN itemindex-e, annyira elbizonytalanitottal hogy megneztem a helpben
- szerintem (bar nem hasznalom) elallitodik, hiszen erre valo, hogy az itemindex-szel elallitodjon a db is, nem?
Új hozzászólás Aktív témák
- sziku69: Szólánc.
- Megtartotta Európában a 7500 mAh-t az Oppo
- Milyen videókártyát?
- BestBuy topik
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- Xiaomi 15T Pro - a téma nincs lezárva
- Gaming notebook topik
- Milyen TV-t vegyek?
- No Man's Sky (PS4, PC, Xbox One)
- További aktív témák...
- Z790 Strix-A, 14700K, 2x16GB 7200 mhz, Tuf 4080, Corsair H1000i
- -ÚJ,2 ÉV GAR- GAMER PC: RYZEN 7 5700/5800X +RX 6600/6700XT +16-64GB DDR4! SZÁMLA! 70 féle ház!
- Üzletből, garanciával, DeLL Inspiron 16 5630 -i5-1340P-16 szál/16RAM/512SSD/16,1"FULLHD IPS
- -ÚJ,2 ÉV GAR- GAMER PC: i5-14400F (10mag/16szál) +RX 6600/6700XT +16-64GB DDR4! SZÁMLA! 70 féle ház!
- Thrustmaster T-GT II bázis - Thrustmaster Sparco P310 - Thrustmaster T3PM pedál - Playseat Evolution
- BESZÁMÍTÁS! ASRock B450M R5 5500 16GB DDR4 512GB SSD Strix RTX 2070 8GB Rampage SHIVA ADATA 600W
- ÁRGARANCIA!Épített KomPhone i5 13400F 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Apple iPhone 12 Pro Max / 128GB / Kártyafüggetlen / 12Hó garancia
- JBL Xtreme 4 új, bontatlan akciós áron eladó!
- BESZÁMÍTÁS! Asrock B450M R5 5500 16GB DDR4 512GB SSD RTX 2060 Super 8GB THERMALTAKE VERSA H17 600W
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
![;]](http://cdn.rios.hu/dl/s/v1.gif)
elhaszn)'); helyett


