Ga naar inhoud
  • 0

ISBN controle


dirk

Vraag

2 antwoorden op deze vraag

Aanbevolen berichten

  • 0

Hier een controle voor de officiele ISBN 10 (dus geen rekeninghoudende met de soms eigen afwijkende ISBN cijfers meestal eindigend op XX)

 

// ISBN 10
Let
(
[
ISBN ="90-270-1165-6"
;
filterisbn=Filter(ISBN;"0123456789") // Behoud alleen cijfers
;
Controlecijfer = if(length(filterisbn) ? 10 ; GetAsNumber("") ; GetAsNumber(right(filterisbn;1) ) )
;
SumCheck = (Middle (filterisbn ; 1; 1) * 10) + (Middle (filterisbn ; 2; 1) * 9) + (Middle (filterisbn ; 3; 1) *  + (Middle (filterisbn ; 4; 1) * 7) + (Middle (filterisbn ; 5; 1) * 6) + (Middle (filterisbn ; 6; 1) * 5) + (Middle (filterisbn ; 7; 1) * 4) + (Middle (filterisbn ; 8; 1) * 3) + (Middle (filterisbn ; 9; 1) * 2) 
;
CheckControlecijfer =  (Ceiling(Sumcheck/11) * 11)- SumCheck
;
result = If(Not Isempty(ControleCijfer) and Controlecijfer=CheckControlecijfer; "OK" ; "Niet OK")
]
;
result
)

 

 

ISBN 13 kun je volgende formule gebruiken:

// ISBN 13
Let
(
[
ISBN =" 978-90-77287-02-6"
;
filterisbn=Filter(ISBN;"0123456789") // Behoud alleen cijfers
;
Controlecijfer = if(length(filterisbn) ? 13 ; GetAsNumber("") ; GetAsNumber(right(filterisbn;1) ) )
;
SumCheckOneven = Middle (filterisbn ; 1; 1)  + Middle (filterisbn ; 3; 1)   + Middle (filterisbn ; 5; 1) + Middle (filterisbn ; 7; 1) + Middle (filterisbn ; 9; 1)  + Middle (filterisbn ; 11; 1) 
;
SumCheckEven = Middle (filterisbn ; 2; 1)  + Middle (filterisbn ; 4; 1)   + Middle (filterisbn ; 6; 1) + Middle (filterisbn ; 8; 1) + Middle (filterisbn ; 10; 1)  + Middle (filterisbn ; 12; 1) 
;
CheckControlecijferCalc = 10 - Right(SumCheckOneven + (SumCheckEven *3);1)
;
CheckControlecijfer = If(CheckControlecijferCalc=10;0;CheckControlecijferCalc)
;
result = If(Not Isempty(ControleCijfer) and Controlecijfer=CheckControlecijfer; "OK" ; "Niet OK")
]
;
result
)

Link naar reactie

Doe mee aan dit gesprek

Je kunt dit nu plaatsen en later registreren. Indien je reeds een account hebt, log dan nu in om het bericht te plaatsen met je account.

Gast
Beantwoord deze vraag...

×   Geplakt als verrijkte tekst.   Plak in plaats daarvan als platte tekst

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...