ActiveX: SLCreditCard      (Filnamn: SLCRCARD.OCX)
 

    
SLCreditCard är en ActiveX-komponent som kan användas för att testa att ett kreditkortsnummer är giltigt och att sista giltighetsdatum inte passerats för kortet. Komponenten kan även fastställa typ av kreditkort genom att undersöka kreditkortsnumret. Komponenten stödjer följande fyra kreditkort: VISA, American Express, MasterCard och Discover. Men kan även göra generella giltighetstester på andra kort.

Datatyperna nedan är angivna enligt VB 6.0 standard. I VB.NET ska Integer ersättas med Short (16 bitar) och Long ersättas med Integer (32 bitar). 
 
 
Egenskaper
 
Namn Typ Beskrivning
CardType Long Specificerar typ av kreditkort. Kan vara en av följande:

0 - Ingen specifikation
1 - VISA
2 - American Express
3 - MasterCard
4 - Discover

Du kan använda metoden DetermineCardType för att fastställa korttypen om den inte är känd. Sätter du denna egenskap till 0 kommer endast en generell kontroll av kortnumret och sista giltighetsdatumet att göras.
 
ExpirationDate String Specificerar sista giltighetsdatum för kortet. Måste vara i formatet "mm/yy", tex "12/11" (motsvarar 2011-12-31)".
 
Number String Specificerar ett kreditkortsnummer. Numret får innehålla mellanslag. Exempel på giltigt värde för denna egenskap: "4111 1111 1111 1111".
 
 
 
Metoder
 

CheckExpirationDate () As Long

Testar sista giltighetsdatumet för kortet. Du specificerar datumet som ska kontrolleras via egenskapen ExpirationDate. Metoden returnerar en av följande värden:

1 = Datumet är giltigt
0 = Kortet har passerat sista giltighetsdatum
-1 = Datumet är felaktigt specificerad.
 

DetermineCardType () As Long

Fastställer typ av kreditkort. Returnerar en av följande värden:

1 = VISA
2 = American Express
3 = MasterCard
4 = Discover

99 = Kan ej fastställa
-1 = Kreditkortsnumret är felaktigt

IsNumberValid () As Boolean

Kontrollerar att kreditkortsnumret är giltigt. Du specificerar numret via egenskapen Number och med den här metoden kan du testa att det är giltigt. Metoden returnerar True om numret är giltigt, annars returneras False.

IsValid () As Boolean

Testar att ett kreditkort är giltigt. Denna metod kollar både kreditkortsnummer och sista giltighetsdatum. Metoden tar även hänsyn till kreditkortstypen som du specificerat via egenskapen CardType. Om inte villkoren är uppfyllda för ett giltigt kreditkort returnerar denna metod False. Godkänns kortet returnerar metoden True.
 

 
Exempel

Dim X As Long
SLCreditCard1.Number = "4111 1111 1111 1111"
SLCreditCard1.ExpirationDate = "01/11"
SLCreditCard1.CardType = 1
' VISA
X = CC_OK
' Kolla att kreditkortsnumret är giltigt
If SLCreditCard1.IsNumberValid() = False Then
    X = CC_INVALID_NUMBER
    GoTo FX
End If
' Kolla att kortet inte är för gammalt  
If SLCreditCard1.CheckExpirationDate() <> 1 Then
    If SLCreditCard1.CheckExpirationDate() = 0 Then
        X = CC_OUTOFDATE
    Else
        X = CC_ILLEGAL_DATE
    End If
End If
FX:
  
   

SamLogic