Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pretraga i sumiranje

[es] :: Pascal / Delphi / Kylix :: Pretraga i sumiranje

[ Pregleda: 2242 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Sole_boy

Član broj: 2486
Poruke: 58
*.ptt.yu



Profil

icon Pretraga i sumiranje11.03.2002. u 08:48

Postovanje,

imam jednu bazu podataka koja izgleda ovako npr:

RB | Artikal | S_artikla | Kol | Cena |
========================

e sada dodje mi kupac i npr. kupi mi artikal sa sifrom 342
sa kolicinom od 20 komada, a ja na formi imam jedan edit za sifru i jedan za
kolicinu koju kupac hoce. naravno i dugme na kom treba da uradim sledece:

da kada unesem sifru artikla (ako postoji) da mi stavi pokazivac na njega i kada unesem kolicinu recimo 20 da on automatski oduzme tih dvadeset od kolicine koja je na stanju.

Valjda ste me razumeli.

Hvala!
11.03.2002. u 08:48 

Riste Pejov
Team Leader/Senior Software Developer @
Ein-Sof ltd Skopje
Skopje, Macedonia

Član broj: 128
Poruke: 571
212.110.78.*

Jabber: richie@bagra.net.mk
ICQ: 154236769
Sajt: riste.softver.org.mk


Profil

icon Re: Pretraga i sumiranje11.03.2002. u 15:39
Koliko sam razumeo, ovo bi trebalo da bude resenje tvog problema

Prvo: postavi TQuery na formu i povezi je za bazu koja ti treba, postavi dve TEdit kontrole i jedan TButton

Drugo: Na onClick event za Button1 ide ovaj kod
Code:

try
with Query1 do
begin
close;
sql.clear;
sql.add('UPDATE artikl_tabela SET kol=kol-'+Edit2.text+' WHERE sifra='+Edit1.text);
execSQL;
end;
except
MessageDlg('Update nije uspeo, sifra ne postoji ili kolicina nije validna',mterror,[mbok],0);
end;


samo trebas startovati program u Edit1 uneti sifru a u Edit2 kolicinu koju trebas oduzeti iz prave kolicine u tabelu. I naravno samo click button1

Pozdrav
People who think they know everything tend to irritate those of us who do.
11.03.2002. u 15:39 

Sole_boy

Član broj: 2486
Poruke: 58
*.ptt.yu



Profil

icon Re: Pretraga i sumiranje11.03.2002. u 20:12
Laptopovi

Hvala, javicu ako bude radio i ako ne bude :)
11.03.2002. u 20:12 

Sole_boy

Član broj: 2486
Poruke: 58
*.ptt.yu



Profil

icon Re: Pretraga i sumiranje11.03.2002. u 20:40
Postovanje,

nece da radi!

ne znam jel tamo kod UPDATE treba da stavim ime baze ili sta?

mozda zato nece.

Hvala
11.03.2002. u 20:40 

Riste Pejov
Team Leader/Senior Software Developer @
Ein-Sof ltd Skopje
Skopje, Macedonia

Član broj: 128
Poruke: 571
62.220.202.*

Jabber: richie@bagra.net.mk
ICQ: 154236769
Sajt: riste.softver.org.mk


Profil

icon Re: Pretraga i sumiranje12.03.2002. u 00:03
Citat:
Riste Pejov:
Code:

try
with Query1 do
begin
close;
sql.clear;
sql.add('UPDATE artikl_tabela SET kol=kol-'+Edit2.text+' WHERE sifra='+Edit1.text);
execSQL;
end;
except
MessageDlg('Update nije uspeo, sifra ne postoji ili kolicina nije validna',mterror,[mbok],0);
end;


artikl_tabela = ime tvoje tabele koje hoces da update !!!
kol = polje koje hoces da update-ujes !!!
sifra = primary key u tabeli koji sluzi identifikovati jedan jedinstveni record !

nadam se da sam malo razjasnio

People who think they know everything tend to irritate those of us who do.
12.03.2002. u 00:03 

Sole_boy

Član broj: 2486
Poruke: 58
*.ptt.yu



Profil

icon Re: Pretraga i sumiranje12.03.2002. u 09:40
Pazi moja tabela izgleda ovako:

RB || Naziv_a || Kol || Cena || Sifra

e sada meni treba da vrsi pretragu po SIFRI a ne po RB

sada onaj code radi ali kada unesem neki broj koji ne postoji on nista ne prijavi
znaci po sifri mi treba ne po RB

Hvala
12.03.2002. u 09:40 

overflow
Goran Milosavljević
Services & Mobile Systems Lead
Engineer @ Telenor
Beograd

Član broj: 396
Poruke: 345
*.verat.net

ICQ: 106825659
Sajt: localhost


Profil

icon Re: Pretraga i sumiranje12.03.2002. u 10:03
Probaj sa ovim kodom :

Code:

With Query1 do
begin
close;
sql.clear;
sql.add('UPDATE artikl_tabela SET kol=kol- :k WHERE sifra= :s');
Params[0].Name := 'k';
Params[0].Value := edit1.text; // u edit1 cuvaj kolicinu
Params[1].Name := 's';
Params[1].Value := edit2.text; // u edit2 cuvaj sifru artikla
ExecSQL; 
End;


Ti sam proveri pre pozivanja ovog koda da li su u ispravnom obliku uneti parametri u edit1 i edit2. Gore je Riste pogresio u koriscenju apostrofa ('). A da se to ne bi dogadjalo koriste se najcesce parametrizovani upiti.
Ne bi bilo lose da se snabdes nekom od knjiga o SQL-u (bilo u elektronskom ili papirnom izdanju). Toliko od mene.
Sve sto je besmislenije, utoliko je bolje.
12.03.2002. u 10:03 

Riste Pejov
Team Leader/Senior Software Developer @
Ein-Sof ltd Skopje
Skopje, Macedonia

Član broj: 128
Poruke: 571
212.110.78.*

Jabber: richie@bagra.net.mk
ICQ: 154236769
Sajt: riste.softver.org.mk


Profil

icon Re: Pretraga i sumiranje12.03.2002. u 13:58
Citat:
Sole_boy:
Pazi moja tabela izgleda ovako:

RB || Naziv_a || Kol || Cena || Sifra

e sada meni treba da vrsi pretragu po SIFRI a ne po RB

sada onaj code radi ali kada unesem neki broj koji ne postoji on nista ne prijavi
znaci po sifri mi treba ne po RB

Hvala

Jedan savet: koristi sifru kao primary key, a ne redni broj. Ili u najmanju ruku indexiraj sifru

Ukoliko hoces da proveris dali sifra postoji uradi prvo jedan ovakav upit:
Code:

with query1 do
begin
close;
sql.clear;
sql.add('SELECT * FROM artikl_tabela WHERE sifra='+edit1.text);
active:=true;
if not(Query1.recordcount>0) then
 begin
 messageDlg('sifra ne postoji',mterror,[mbok],0);
  exit;
 end;
end;

overflow: moj query nema nikakve greske :)
a kad smo vec kod koriscenje parametrizovanih upita sve je stvar navike,
ja sam naviko da pisem upite u takvom stilu zato sto mi je kod laksi za razumevanje.

People who think they know everything tend to irritate those of us who do.
12.03.2002. u 13:58 

[es] :: Pascal / Delphi / Kylix :: Pretraga i sumiranje

[ Pregleda: 2242 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.