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

Izracunati fiksnu visinu takse

[es] :: Access :: Izracunati fiksnu visinu takse

Strane: 1 2

[ Pregleda: 4982 | Odgovora: 22 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

nikola-m
Podgorica

Član broj: 51315
Poruke: 12
213.133.30.*



Profil

icon Izracunati fiksnu visinu takse23.10.2009. u 16:34 - pre 176 meseci
Nigde nisam nasao resenje za sledeci problem.
U tabeli Duznici su i kolone VisDuga, VisTakse. Vrednost u VisTakse zavisi od VisDuga. TJ. za visinu duga od 0.5-25 VisTakse je 5, od 25.01- 75.00 , taksa je 8, za vis.duga od 75.01-150 taksa je 11. itd. Nakon svakog upisa VisDuga za izracunavanje takse koristio sam UPDATE upite -
UPDATE isplate
SET vistakse = 11 WHERE iznos BETWEEN 75.01 And 150;pa sledeci UPDATE.
Postoji li nacin da se jednom radnjom izrsi izracunavanje vis.takse? Napomena: VisinaTakse je nepromenjiva, tj. zavisi samo od visine duga (od-do).

MMilic
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Izracunati fiksnu visinu takse23.10.2009. u 16:59 - pre 176 meseci
Sada bubam napamet jer nisam probao, ali mislim da bi moglo ovako nekako (ako Access ima te funkcije)


Code:

UPDATE isplate
SET vistakse =
       CASE
        WHEN (cijena BETWEEN 0 AND 25,0) THEN 5
        WHEN (cijena BETWEEN 25,01 AND 35) THEN 7
        WHEN (cijena > 35,01) THEN 8
        ELSE 0
END


Kažem ti, to je ovako napamet, vjerojatno je malo drukčija sintaksa, ali skužiti ćeš bit.
F
 
Odgovor na temu

nikola-m
Podgorica

Član broj: 51315
Poruke: 12
213.133.30.*



Profil

icon Re: Izracunati fiksnu visinu takse23.10.2009. u 17:43 - pre 176 meseci
Ovo nije resenje, verovatno nekako slicno, ne mogu da slozim sintaksu.
MMilic
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Izracunati fiksnu visinu takse23.10.2009. u 18:04 - pre 176 meseci
Ovako bi trebalo raditi:

Code:
UPDATE tablica SET nesto =
case
when iznos > 20 then 5
when iznos > 50 then 6
end



samo dodaj between umjesto > a možda niti ne moraš...

Edit:

hahaha, tek sada sam skužio da sam ti napisao istu stvar. Čekaj, sada ću probati, pa ti javim.
F
 
Odgovor na temu

nikola-m
Podgorica

Član broj: 51315
Poruke: 12
213.133.30.*



Profil

icon Re: Izracunati fiksnu visinu takse23.10.2009. u 18:20 - pre 176 meseci
Ovaj problem sam resavao na ovaj nacin:
Private Sub Command1_Click()
If IsNull(Me![VisTakse]) Then
DoCmd.OpenQuery "qryDo50", acViewNormal
DoCmd.OpenQuery "qryOd50Do150", acViewNormal
Else
End If
End Sub

No, i ovom slucaju, koliko ima upita toliko puta se mora udarati po dugmetu.
MMilic
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Izracunati fiksnu visinu takse23.10.2009. u 18:24 - pre 176 meseci
Evo, pokušavao, pa i ja nešto naučio:

Code:
UPDATE isplate SET vistakse
IIF(cijena BETWEEN 0 AND 20, 5, 
IIF(cijena BETWEEN 20,01 AND 35, 7, 
IIF(cijena BETWEEN 35,01 AND 50, 8)))


Za ovo nisam znao, ali izgleda mi kao lijepo rješenje

Pozdrav!
F
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Izracunati fiksnu visinu takse23.10.2009. u 18:32 - pre 176 meseci
Citat:
nikola-m: Ovaj problem sam resavao na ovaj nacin:
Private Sub Command1_Click()
If IsNull(Me![VisTakse]) Then
DoCmd.OpenQuery "qryDo50", acViewNormal
DoCmd.OpenQuery "qryOd50Do150", acViewNormal
Else
End If
End Sub

No, i ovom slucaju, koliko ima upita toliko puta se mora udarati po dugmetu.


Probaj ovo moje rješenje, ali i ovo tvoje možeš napraviti da ne lupaš po dugmetu onoliko puta koliko ima slučajeva. Recimo da imaš 5 različitih situacija:

Code:
for i=1 to 5
DoCms.OpenQuery "qry" & i, acViewNormal
next


Naravno, query-e nazoveš ovako: qry1, qry2, qry3...
F
 
Odgovor na temu

nikola-m
Podgorica

Član broj: 51315
Poruke: 12
213.133.30.*



Profil

icon Re: Izracunati fiksnu visinu takse23.10.2009. u 19:42 - pre 176 meseci
Probao sam tvoje resenje sa Update i ne funkcionise. A ovo drugo nece, verovatno se ne snalazim najbolje.
Ako ti bas nije dosadno daj mi kompletan kod.


MMilic
 
Odgovor na temu

nikola-m
Podgorica

Član broj: 51315
Poruke: 12
213.133.30.*



Profil

icon Re: Izracunati fiksnu visinu takse23.10.2009. u 19:44 - pre 176 meseci
Ovako sam primenio:

Private Sub Command1_Click()
If IsNull(Me![VisTakse]) Then
For i = 1 To 2
DoCmd.OpenQuery "qry1" & i, acViewNormal
Next
DoCmd.OpenQuery "qry2" & i, acViewNormal
Else
End If
End Sub
MMilic
 
Odgovor na temu

nikola-m
Podgorica

Član broj: 51315
Poruke: 12
213.133.30.*



Profil

icon Re: Izracunati fiksnu visinu takse23.10.2009. u 22:15 - pre 176 meseci

Interesantno, mislio sam da ce resenje biti veoma jednostavno i brzo. U svakom slucaju hvala captPicard-u sto se zainteresovao. Verovatno mnogima ovo izgleda jednostavno , no ?
MMilic
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Izracunati fiksnu visinu takse24.10.2009. u 11:35 - pre 176 meseci
Ma ovo bi ti moralo raditi, meni radi:

Code:
UPDATE isplate SET vistakse
IIF(cijena BETWEEN 0 AND 20, 5, 
IIF(cijena BETWEEN 20,01 AND 35, 7, 
IIF(cijena BETWEEN 35,01 AND 50, 8)))


Zalijepi ovdje bazu, pa ću pogledati.

A ovo drugo nisi dobro napisao:

Code:
Private Sub Command1_Click()
If IsNull(Me![VisTakse]) Then
For i = 1 To 2
DoCmd.OpenQuery "qry" & i, acViewNormal
Next
End If
End Sub 


Ovo "qry" & i će kao rezultat imati u jednom slučaju qry1 a u drugom qry2. Dakle, query-i ti se moraju zvati qry1 i qry2.
F
 
Odgovor na temu

nikola-m
Podgorica

Član broj: 51315
Poruke: 12
213.133.30.*



Profil

icon Re: Izracunati fiksnu visinu takse24.10.2009. u 12:18 - pre 176 meseci

Utvrdi zasto kod mene ne radi !
MMilic
Prikačeni fajlovi
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Izracunati fiksnu visinu takse24.10.2009. u 12:39 - pre 176 meseci
Falio je jedan = u query-u.

A ovo drugo nisi napisao kako sam ti rekao.

Evo ispravljeno.


F
Prikačeni fajlovi
 
Odgovor na temu

nikola-m
Podgorica

Član broj: 51315
Poruke: 12
213.133.30.*



Profil

icon Re: Izracunati fiksnu visinu takse24.10.2009. u 13:03 - pre 176 meseci
Hvala, izvini sto sam te mucio oko mog problema, i oduzeo ti prilicno vremena.
MMilic
 
Odgovor na temu

izonic
ishab zonic
Tuzla

Član broj: 38128
Poruke: 591
89.146.169.*

Sajt: www.icentar.ba


+2 Profil

icon Re: Izracunati fiksnu visinu takse24.10.2009. u 13:14 - pre 176 meseci
Ovaj kod ide u neki modul.

Code:
Function VisinaTakse(Dug As Currency)

Select Case Dug

Case 0.5 To 25
VisinaTakse = 5
Case 25 To 75
VisinaTakse = 8
Case 75 To 150
VisinaTakse = 11
Case Else

MsgBox "Nekorektna vrijednost duga"
VisinaTakse = "Error"
End Select
End Function


SQL-Query
Code:
SELECT Duznici.VisDuga, VisinaTakse([VisDuga]) AS VisinaTakse
FROM Duznici;

zxz
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Izracunati fiksnu visinu takse24.10.2009. u 13:31 - pre 176 meseci
Citat:
nikola-m: Hvala, izvini sto sam te mucio oko mog problema, i oduzeo ti prilicno vremena.


Ma sve ok, bitno da radi
F
 
Odgovor na temu

nikola-m
Podgorica

Član broj: 51315
Poruke: 12
213.133.30.*



Profil

icon Re: Izracunati fiksnu visinu takse24.10.2009. u 13:58 - pre 176 meseci
Izonic ovo je super , samo sto ne azurira potrebne vrednosti u tabeli, naravno jer je select.
MMilic
 
Odgovor na temu

izonic
ishab zonic
Tuzla

Član broj: 38128
Poruke: 591
89.146.169.*

Sajt: www.icentar.ba


+2 Profil

icon Re: Izracunati fiksnu visinu takse24.10.2009. u 16:13 - pre 176 meseci
Namjerno nisam stavio azuriranje jer sam smatrao da nema potrebe to azurirati.
Ako pak zelis azurirati vjerujem mozes i sam napraviti Query.

zxz
 
Odgovor na temu

nikola-m
Podgorica

Član broj: 51315
Poruke: 12
213.133.30.*



Profil

icon Re: Izracunati fiksnu visinu takse24.10.2009. u 17:58 - pre 176 meseci

Ako mislis da se nakon ili pri SELECT-u, azurira, iskreno receno ne znam. Videli smo korisnih resenja sto tvojih, sto kaptPicarda, pa ako si raspolozen dobro bilo da do kraja objasnis drugu recenicu.
MMilic
 
Odgovor na temu

captPicard
programer
more i planine

Član broj: 216084
Poruke: 1119



+19 Profil

icon Re: Izracunati fiksnu visinu takse24.10.2009. u 18:47 - pre 176 meseci
Ovako nekako je mislio:

Code:
UPDATE tblDuznici SET VisinaTakse =
(SELECT VisinaTakse([VisDuga])
FROM tblDuznici)

F
 
Odgovor na temu

[es] :: Access :: Izracunati fiksnu visinu takse

Strane: 1 2

[ Pregleda: 4982 | Odgovora: 22 ] > FB > Twit

Postavi temu Odgovori

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