Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
How to save VARIANT datatype from Fingerprint scanner
Message
De
21/12/2007 03:51:34
 
 
À
20/12/2007 23:04:05
Information générale
Forum:
Visual FoxPro
Catégorie:
Contrôles ActiveX en VFP
Divers
Thread ID:
01276941
Message ID:
01276951
Vues:
31
>Hi Everybody,
>
>I am tinkering with a fingerprint scanner ActiveX control (Digital Persona).
>
>Instantiating, dropping and working with it seems to go on smoothly... till the last event called Done(), where it passes a "Fingerprint Template - FPTemplate" object variable.
>
>This is the code I created in the ActiveX control's Done() event:
>
>
>*** ActiveX Control Event ***
>LPARAMETERS ptemplate
>
>LOCAL lblobFingerPrnt, lnResult
>
>WAIT WINDOW NOWAIT "Creating Employee Record..." NOCLEAR
>
>lnResult = ptemplate.Export( @lblobFingerPrnt )
>
>IF lnResult # Er_OK
>   MESSAGEBOX( "Error in getting Registration Template" )
>   RETURN
>ENDIF
>
>APPEND BLANK IN employee
>replace employee.lastname WITH thisform.txtLastname.Value,;
>        employee.firstname WITH thisform.txtFirstname.Value,;
>        employee.fingerprnt WITH lblobFingerPrnt
>
>WAIT CLEAR
>
>
>I get "Data type mismatch" using the above. Going thru the Debugger, the value of variable lblobFingerPrnt is always .F. and is never updated even when invoking the Export method.
>
>This 'ptemplate' object variable, as per it's documentation, has an Export method, like so:
>
>
>Export([out] VARIANT* pVal, [out,retval] AIErrors *pErr)
>
>* Exports the template object as a signed blob of bytes.
>* This may then be saved by the developer in the database of his choice.
>
>
>HELP! Obviously it has something to do with a VARIANT data type. Furthermore, the employee.fingerprnt field is of Blob type. Could this be wrong?
>
>Thanks in advance!
>
>Happy Holidays! Cheers!
>
>Dennis

Try
LOCAL lblobFingerPrnt, lnResult

SET ASSERTS ON
WAIT WINDOW NOWAIT "Creating Employee Record..." NOCLEAR

lblobFingerPrnt = []
lnResult        = ptemplate.Export( @lblobFingerPrnt )

ASSERT NOT EMPTY(lblobFingerPrnt)
IF lnResult # Er_OK
   MESSAGEBOX( "Error in getting Registration Template" )
   RETURN
ENDIF

APPEND BLANK IN employee
replace lastname   WITH thisform.txtLastname.Value,;
        firstname  WITH thisform.txtFirstname.Value,;
        fingerprnt WITH lblobFingerPrnt IN employee

WAIT CLEAR
Against Stupidity the Gods themselves Contend in Vain - Johann Christoph Friedrich von Schiller
The only thing normal about database guys is their tables.
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform