webForumDet fria alternativet

Problem med funktion

0 svar · 149 visningar · startad av margar-0

margar-0Medlem sedan nov. 200362 inlägg
#1

Jag håller på med ett kassa och bokningssystem. När jag ska ta betalt av kunder som har bokat sina biljetter så söker jag på kundens för eller efternamnet. Resultatet visas i en ListView. Klickar jag sedan i denna ListView på något namn, så kommer den personens info i textboxar och alla de biljetter han har bokat i en ListView2 (i koden heter den lstPBiljett2).

Följande scenario kan inträffa och är upphovet till mitt problem:
Låt säga att personen som ringde och bokade biljetter, bokade 5 biljetter varav en av dessa var en barnbiljett. Dagen då föreställningen är kommer ena paret och vill lösa ut sina två biljetter och en timme senare kommer andra paret och vill lösa ut resterande tre biljetterna. Jag vill alltså på något sätt kunna göra delbetalningar. Som det är nu så har jag att man kan markera flera rader i ListView2 och med händelsen klick. Problemet är att jag inte får mina if-satser att fungera och att visa rätt summa i lblPDelsumma2 då man klickar eller tar bort en markering i ListView2.

Skickar med följande kod:

Private Sub lstPBiljett2_Click()
Dim radindex As Integer

radindex = 1
Do While radindex \<= (lstPBiljett2.ListItems.Count)
    'If lstPBiljett2.ListItems(radindex).Selected = True Then
        '\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*Uträkning\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*
        If lblPAntal2 \<= 2 Then
            If lstPBiljett2.ListItems(radindex).Selected = True Then
                lblPDelsumma2 = 0
                If lstPBiljett2.ListItems(radindex).SubItems(4) = "" Then
                    lblPDelsumma2 = lblPDelsumma2 + (vuxenpris \* radindex)
                Else
                    lblPDelsumma2 = lblPDelsumma2 + ((vuxenpris \* radindex) - (barnpris \* radindex))
                End If
            End If
        ElseIf lblPAntal2 \>= 2 And lblPAntal2 \<= 4 Then
            If lstPBiljett2.ListItems(radindex).SubItems(4) = "" Then
                lblPDelsumma2 = (vuxenpris \* lblPAntal2) - (rabatt \* lblPAntal2)
            Else
                lblPDelsumma2 = ((vuxenpris \* lblPAntal2) - (barnpris \* lblPBarn2) - (rabatt \* lblPAntal2))
            End If
        ElseIf lblPAntal2 \> 4 Then
            If lstPBiljett2.ListItems(radindex).SubItems(4) = "" Then
                lblPDelsumma2 = (vuxenpris \* lblPAntal2) - (rabatt2 \* lblPAntal2)
            Else
                lblPDelsumma2 = ((vuxenpris \* lblPAntal2) - (barnpris \* lblPBarn2) - (rabatt2 \* lblPAntal2))
            End If
        End If
        '\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*
    'End If
    radindex = radindex + 1
Loop

End Sub

Hoppas att ni förstår

133 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)