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

Računi i stavke

[es] :: Pascal / Delphi / Kylix :: Računi i stavke

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

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

_CaRtMan_

Član broj: 126731
Poruke: 305
89.146.161.*



+1 Profil

icon Računi i stavke17.06.2008. u 17:37 - pre 193 meseci
Pravim program za videoteku Smile i kod vraćanja filmova imam problem. Napravio sam dva grida. Prvi ću filtrirati po TEdit (upišem šifru člana ili šifru filma) zavisno od toga šta je odabrano u combobox-u i filtrira mi tu.

Ispod tog grida nalazi se jedan button na čiji klik bi trebalo da vraća filmove, tj u tabeli gdje su izdani filmovi da radi update da stavlja vraceno=1 (true) da je vracen film.

A drugi grid tu sam planirao kao račun. I sad napravio sam dvije tabele racuni i racunistavke. Klikom na button taj gdje bi se stavljali filmovi na racun (a usput i radio update da su vraceni) clientdataset racuna sam nastimao da je active:=False;

I sada dole:

If cdsracun.Active=False then
begin

ovdje kreira racun, procedura se izvrsava

end

I dole ide cdsracun.Active:=True (dakle aktivan je tj otvoren) i dole sam izvrsavao proceduru za racunstavke (MSSQL)
Code:

with spracunstavke do
  begin
   ParamByName('@action').AsInteger:=1;
   ParamByName('@idracunstavka').Clear;
   ParamByName('@idracun').AsInteger:=spracun.ParamByName('@idracunout').AsInteger;
   ParamByName('@sifrafilma').AsString:=cdsizdatosifrafilma.asstring;
   ParamByName('@idclana').AsInteger:=cdsizdatoidclana.AsInteger;
  end;

try
    spracunstavke.ExecProc;

    cdsracun.Filtered:=False;
    cdsracun.Filter:='idracun='+IntToStr(spracun.ParamByName('@idracunout').AsInteger);
    cdsracun.Filtered:=True;
    cdsracun.Close;
    cdsracun.Open;
    except
    on E:Exception do
    begin
      ShowMessage(e.message);
    end;
  end;


I sad kad odaberem novi film i kliknem da ga prebacim na racun i oznacim kao da je vracen ne valja... vjerovatno ono active:=true/false ne valja.. treba bolje rjesenje, pa me zanima kako biste vi to rjesili? Ne znam sta dalje.

to sam uradio da dole psotavlja nakon sto kreira racun da postavlja da je aktivan i nakon iduceg klika nece kreirat racun je jer je vec active a potreban false i onda sam mislio jos jedan button gdje ce biti ono novi racun, dovrsi bla bla... i tu ponovo stavi da je active:=false .... tj ponovo je potrebno otvaranje, ali nesto ne stima ovdje...
sta da radim??
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Računi i stavke17.06.2008. u 18:19 - pre 193 meseci
Nisam shvatio poslednji deo active/false, true, racun ;) Da li želiš da promeniš status nekog filma na vraćen? Treba ti jedan update sql:
UPDATE FILMOVI SET UZETO = 0 WHERE ID = :IdFilma;
Filtriranje je generalno bolje raditi preko kverija, dakle novi upit koji će vratiti iz baze samo one slogove koji odgovaraju zadatom uslovu.
 
Odgovor na temu

_CaRtMan_

Član broj: 126731
Poruke: 305
89.146.161.*



+1 Profil

icon Re: Računi i stavke17.06.2008. u 18:24 - pre 193 meseci
Pa to active/false sam mislio na to da ako kliknem na onaj button (dodaj na racun film) on se vodi kao da je vracen a i stavlja na racun, e sad ako nije kreiran racun on kreira i stavlja da je active:=true, a prije toga po defaultu je stavljeno active:=false; tako da kad dodajem jos jednu stavku posto je active:=true on nece ponovo kreirati, tako nekako sam mislio samo ne kontam bas kako bih to implementirao.

kako mislis da je bolje raditi na query filtriranje? ne kontam kako bih ovo, eto shvati ovo isto kao pc kasu.... ne kontam bas.
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Računi i stavke18.06.2008. u 08:35 - pre 193 meseci
> Pa to active/false sam mislio na to da ako kliknem na onaj button (dodaj na racun film) on se vodi kao da je vracen a i stavlja na racun, e sad
> ako nije kreiran racun on kreira i stavlja da je active:=true, a prije toga po defaultu je stavljeno active:=false; tako da kad dodajem jos jednu
> stavku posto je active:=true on nece ponovo kreirati, tako nekako sam mislio samo ne kontam bas kako bih to implementirao.

Sorry, i dalje ne ide. Pokušaj da u par rečenica samo objasniš šta želiš postići (npr. dodati novu stavku u bazu, promeniti vrednost nekog polja određenog sloga).

> kako mislis da je bolje raditi na query filtriranje? ne kontam kako bih ovo, eto shvati ovo isto kao pc kasu.... ne kontam bas.

Ako želiš da dobiješ sve filmove kojie sadrže reč "Pulen" (kao "Čudesna sudbina Amelije Pulen"), pisaćeš:
Query.SQL.Text := 'SELECT ID, NAZIV, ZANR FROM FILMOVI WHERE NAZIV LIKE '%Pulen%';

 
Odgovor na temu

_CaRtMan_

Član broj: 126731
Poruke: 305
89.146.184.*



+1 Profil

icon Re: Računi i stavke18.06.2008. u 14:31 - pre 193 meseci
Aha, hvala za to sa Pulenom hehe.. :) Naime ne znam kako ću da kad kliknem na button da kreira račun i da doda stavku tu. Označim novi film u gridu i kliknem na button doda stavku i tu, i kad odem na button recimo "Završi račun" lupam sad nebitno, da iduću stavku kad budem dodavao da prvo kreira račun i da na taj novi račun dodaje stavke sve dok ne idem klikom na button završi račun. E to me zanima, teoretski onako kako bih to rješio.

Valjda me kontaš. Samo što je sa filmovima, pa kad kliknem na button Vrati film da kreira račun ako već nije i da na taj dodaje stavke a u tabeli gdje su izdani filmovi da stavlja da je film vraćen.
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Računi i stavke18.06.2008. u 16:24 - pre 193 meseci
> button doda stavku i tu, i kad odem na button recimo "Završi račun" lupam sad nebitno, da iduću stavku kad budem dodavao da
> prvo kreira račun i da na taj novi račun dodaje stavke sve dok ne idem klikom na button završi račun. E to me zanima, teoretski onako kako bih to rješio.

započneš novu transakciju
dodaš novi slog u tabelu računa
dodaješ redom slogove u tabeli stavke računa koje se referenciraju na prethodno dodati račun
komituješ transakciju.
 
Odgovor na temu

_CaRtMan_

Član broj: 126731
Poruke: 305
89.146.168.*



+1 Profil

icon Re: Računi i stavke18.06.2008. u 18:47 - pre 193 meseci
Aha, ok. Samo sve je to super još kad bih znao to "transakcije", kakve transakcije, prvi put čujem za to, ako ti nije problem i ako imaš volje da to malo objasniš? :) tnx
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: Računi i stavke19.06.2008. u 23:27 - pre 193 meseci
http://en.wikipedia.org/wiki/Database_transaction
http://conferences.codegear.com/cs/article/32280
http://www.cvalde.net/document/TransactionOptions.htm
Delphi help.
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Računi i stavke

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

Postavi temu Odgovori

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