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

Pretraga i sumiranje

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

[ Pregleda: 4524 | 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 - pre 269 meseci
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!
 
Odgovor na temu

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 - pre 269 meseci
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.
 
Odgovor na temu

Sole_boy

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



Profil

icon Re: Pretraga i sumiranje11.03.2002. u 20:12 - pre 269 meseci
Hvala, javicu ako bude radio i ako ne bude :)
 
Odgovor na temu

Sole_boy

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



Profil

icon Re: Pretraga i sumiranje11.03.2002. u 20:40 - pre 269 meseci
Postovanje,

nece da radi!

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

mozda zato nece.

Hvala
 
Odgovor na temu

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 - pre 269 meseci
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.
 
Odgovor na temu

Sole_boy

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



Profil

icon Re: Pretraga i sumiranje12.03.2002. u 09:40 - pre 269 meseci
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
 
Odgovor na temu

overflow
Goran Milosavljević
Integration & Internet Senior
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 - pre 269 meseci
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.
 
Odgovor na temu

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 - pre 269 meseci
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.
 
Odgovor na temu

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

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

Postavi temu Odgovori

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