Databáze > MySQL

DBGrid jeden zaznam do druhyho a odstraneni -

(1/4) > >>

Kony:
Ahoj.. mam SQL v DBGridu.....  sloupec datum_expirace a sloupec datum....

datum expirace ma tvar 2014-01-30 a sloupec datum je prazdny.... potrebuju aby se do sloupce datum prevedl text na format 20140130

zkousim to takto


--- Kód: ---procedure TForm1.ZTable1CalcFields(DataSet: TDataSet);
begin
  ZTable1.FieldByName('datum_prevod').AsString := StringReplace(ZTable1.FieldByName('datum_expirace', '-', '', [rfReplaceAll]);
end;
--- Konec kódu ---

ale to me teda nebere :))) ze to ma moc parametru


zkousim i tohle


--- Kód: ---ZTable1.FieldByName('datum_prevod').AsString := StringReplace((ZTable1.FieldByName('datum_expirace')), '-', '', [rfReplaceAll]);
--- Konec kódu ---

ale tady zase pise chybu Nekompatibilni typ String

pf1957:

--- Citace: Kony  09-03-2014, 11:36:53 ---
--- Kód: ---ZTable1.FieldByName('datum_prevod').AsString := StringReplace((ZTable1.FieldByName('datum_expirace')), '-', '', [rfReplaceAll]);
--- Konec kódu ---
ale tady zase pise chybu Nekompatibilni typ String

--- Konce citace ---
Misto zkouseni zkust trochu premyslet (jaka je navratova hodnota z FieldByName('xxx') a srovnej levou a pravou stranu u prirazovaciho prikazu)

Kony:
vyreseno....


--- Kód: ---a := ZTable1.FieldByName('datum_expirace').AsString ;
a := StringReplace(a, '-', '', [rfReplaceAll]);
ZTable1.FieldByName('datum_prevod').AsString := a;

--- Konec kódu ---

TLama:
Byl jsi blízko. Jen ti chybělo ve vstupním parametru pro StringReplace uzavřít závorku a přistoupit k hodnotě. Chyba povídající o více parametrech byla způsobena tím, že se v parametru funkce FieldByName očekává parametr jeden, a to název sloupce; no a tím, že jsi závorku neuzavřel, považoval všechno co následuje parser kompilátoru za další parametry.

Zkus tohle:


--- Kód: Delphi ---procedure TForm1.ZTable1CalcFields(DataSet: TDataSet);begin  ZTable1.FieldByName('datum_prevod').AsString :=    StringReplace(ZTable1.FieldByName('datum_expirace').AsString, '-', '', [rfReplaceAll]);end;
P.S. tohle je spíš otázka pro Delphi fórum než MySQL...

Kony:
no jeste resim jeden filtr

a to

mam Edit3.text cislo ktery se pocita podle tohoto


--- Kód: ---Edit3.Text := IntToStr(14+StrToInt(Edit2.Text));
--- Konec kódu ---

potom mam v dbgrid sloupec ktery ma danou hodnotu

a otazka :

jak udelat to ze pokud je ve sloupci "datum_prevod" mensi cislo jak v Edit3.text tak aby se zapl filtr na ZTable1 a byli vypsany radky jen s cislama ktery jsou mensi nez je v Edit3

ted to zkousim takto :


--- Kód: ---   
if ZTable1.FieldByName('datum_prevod').AsString < Edit3.Text then
   ZTable1.Filter:='datum_prevod =';
   ZTable1.Filtered := True;
--- Konec kódu ---

Ale tohle nefunguje

ale kdyz na to koukam tak je to logincky.. protoze tam neni vlastne danej jakej filtr se ma pouzit

Navigace

[0] Seznam témat

[#] Další strana

Přejít na plnou verzi