[viesti Survo-keskustelupalstalla (2001-2013)]
Kirjoittaja: | Reijo Sund |
---|---|
Sähköposti: | reijo.sund'at'stakes.fi |
Päiväys: | 8.3.2002 9:57 |
Hei! Seppo toivoi aikaisemmassa viestissään, että Survo-käyttäjät kertoisivat käyttökokemuksistaan ja antaisivat jonkunmoisia näytteitä joistain ongelmista ja niiden ratkaisuista. Kai minäkin voisin tässä hiukan aktivoitua ja pistää tänne muiden ihmeteltäväksi joitain "aikaansaannoksiani", vaikka ne usein ovatkin omia tarpeita vastaavia ratkaisuja eli muiden toiveita ei juurikaan ole kuunneltu. Otan mielelläni kommentteja ja/tai parannusehdotuksia vastaan, mutta en voi luvata välttämättä ehtiväni reagoida niihin. Olkoon tässä nyt ensimmäisenä esimerkkinä henkilötunnuksen oikeellisuuden tarkistaminen. Oheisen survo-koodin pitäisi olla varsin itsensä selittävää. terv. Reijo - - - Henkilötunnuksen oikeellisuuden tarkistaminen (ks. http://www.vaestorekisterikeskus.fi/henktun.htm) ................................................................... Luodaan aputiedosto FILE CREATE HETU FIELDS: 1 SA- 10 HETU Henkilötunnus 2 SA- 9 SYNTYKS Henkilötunnus ilman välimerkkiä 3 SA- 1 TARK Tarkistusmerkki 4 NA- 4 TNUM (##) Tarkistusmerkki numerona 5 NA- 4 JAKO (##) mod(SYNTYKS,31) 6 NA- 1 HETUOK (#) Hetu oikein = 1, Hetu väärin = 0 END ................................................................... Kopioidaan tarkasteltavat hetut aputiedostoon VARS=HETU FILE COPY <tiedosto> HETU ................................................................... Syntymäaika+yksilönumero ja tarkistusmerkki omiksi muuttujikseen VAR str(SYNTYKS)=str(HETU,1,6)&str(HETU,7,3) TO HETU VAR str(TARK)=str(HETU,10,1) TO HETU ................................................................... Lasketaan jakojäännös VAR JAKO=mod(SYNTYKS,31) TO HETU ................................................................... Muutetaan tarkistusmerkki numeroksi CLASSIFY HETU,HETUTARK,TARK,TNUM CLASSIFICATION HETUTARK 0: 0 1: 1 2: 2 3: 3 4: 4 5: 5 6: 6 7: 7 8: 8 9: 9 A: 10 B: 11 C: 12 D: 13 E: 14 F: 15 H: 16 J: 17 K: 18 L: 19 M: 20 N: 21 P: 22 R: 23 S: 24 T: 25 U: 26 V: 27 W: 28 X: 29 Y: 30 OTHER: MISSING END ................................................................... Tarkistetaan oliko HETU ok VAR HETUOK=if(TNUM=JAKO)then(1)else(0) TO HETU FILE SHOW HETU
Vastaukset: |
---|
Survo-keskustelupalstan (2001-2013) viestit arkistoitiin aika ajoin sukrolla, joka automaattisesti rakensi viesteistä (yli 1600 kpl) HTML-muotoisen sivukokonaisuuden. Vuoden 2013 alusta Survo-keskustelua on jatkettu entistäkin aktiivisemmin osoitteessa forum.survo.fi. Tervetuloa mukaan!