Visual Basic - base de datos

Life is soft - evento anual de software empresarial
   
Vista:

base de datos

Publicado por roberto (9 intervenciones) el 10/08/2008 18:36:27
tengo una base datos donde almacena los siguientes datos

tagid= codigo de una tarjeta rfid
nombre
area de trabajo
foto

donde utilizo una web cam para tomar la fotografia desde la aplicacion, guardo la fotografia la cargo de nuevo al control picture; pero al momento de guardar los datos aparce lo siguiente "run time 97" object variable or wiht block variable not set

Data1.Recordset.AddNew
Data1.Recordset.Fields("tagid") = Text1.Text
Data1.Recordset.Fields("nombre") = Text2.Text
Data1.Recordset.Fields("areadetrabajo") = Text3.Text
GuardarBinary Data1.Recordset.Fields("foto"), picOutput
Data1.Recordset.Update

lo he intentado de varias formas y no guarda la fotografia en registro correspondiente los demas datos si
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:base de datos

Publicado por igor (633 intervenciones) el 10/08/2008 19:46:20
Quizás deberías explicar que es lo que hace exactamente esta línea

GuardarBinary Data1.Recordset.Fields("foto"), picOutput

Será que es una función que has definido tú, pues por qué no pones el código?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:base de datos

Publicado por roberto (9 intervenciones) el 10/08/2008 20:49:25
igor te pongo el codigo donde se utilza la intruccion guardarbinery es para almacenar una imagen en una base de datos utilizando un control ADO agradeceria tu ayuda infintamente

Public id, idt As String
Private Const mBuffer = 1024&
Private Function limpiar()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
End Function
Private Sub can_Click()
Data1.Recordset.CancelUpdate
Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
foto.Enabled = False
End Sub

Private Sub cancel_Click()

f = limpiar
foto.Enabled = False
Timer1.Enabled = False
save.Enabled = False
search.Enabled = False
cmdStart.Enabled = False
cmdStop.Enabled = False
cmdcap.Enabled = False
End Sub

Private Sub cmdcap_Click()
'Bajarla del portapapeles a un PictureBox
If Clipboard.GetFormat(vbCFBitmap) Then
pic.Picture = Clipboard.GetData(vbCFBitmap)
End If

'Transformarla a un archivo temporal BMP o Definitivo
SavePicture pic.Image, "C:Documents and SettingsROBERTOMis documentosTOBESISTEMASRFIDTmp.gif"
pic.Cls
pic.Picture = LoadPicture("C:Documents and SettingsROBERTOMis documentosTOBESISTEMASRFIDTmp.gif")
End Sub

Private Sub exit_Click()
Unload Me
Form3.Show
End Sub

Private Sub Form_Load()
On Error Resume Next
Data1.RecordSource = "SELECT * FROM [ids]"

Text1.Enabled = False
Text2.Enabled = False
Text3.Enabled = False
foto.Enabled = False
save.Enabled = False
'can.Enabled = False
Timer1.Enabled = False
pic.Cls
cmdStop.Enabled = False
cmdStart.Enabled = False
cmdcap.Enabled = False

Set pic.DataSource = Data1
pic.DataField = "foto"
pic.DataFormat.Type = fmtPicture
End Sub

Private Sub foto_Click()
cmdStart.Enabled = True
cmdStop.Enabled = True
cmdcap.Enabled = True
End Sub

Private Sub new_Click()
pic.Cls
Text1.Enabled = True
Text2.Enabled = True
Text3.Enabled = True
foto.Enabled = True
save.Enabled = True
'can.Enabled = True
'f = limpiar
End Sub

Private Sub save_Click()
Dim r As Integer
If ((Text1.Text = "") Or (Text2.Text = "") Or (Text3.Text = "")) Then
r = MsgBox("NO PUEDE DEJAR EN BLANCO LOS CAMPOS DEL REGISTRO", vbInformation, ATENCIÓN)
Else
Data1.Recordset.AddNew
Data1.Recordset.Fields("tagid") = Text1.Text
Data1.Recordset.Fields("nombre") = Text2.Text
Data1.Recordset.Fields("areadetrabajo") = Text3.Text
'almacena una imagen en una base de datos utilizando un control ADO
GuardarBinary Data1.Recordset.Fields(pic.DataField), pic
Data1.Recordset.Update
f = limpiar
pic.Cls
End If
End Sub

Private Sub cmdStart_Click()
cmdStart.Enabled = False
cmdStop.Enabled = True

'Setup a capture window (You can replace "WebcamCapture" with watever you want)
mCapHwnd = capCreateCaptureWindow("WebcamCapture", 0, 0, 0, 320, 240, Me.hwnd, 0)
'Connect to capture device
DoEvents: SendMessage mCapHwnd, CONNECT, 0, 0

tmrMain.Enabled = True
End Sub

Private Sub cmdStop_Click()
cmdStart.Enabled = False
cmdStop.Enabled = False
cmdcap.Enabled = False
tmrMain.Enabled = False
foto.Enabled = False
'Make sure to disconnect from capture source!!!
DoEvents: SendMessage mCapHwnd, DISCONNECT, 0, 0
End Sub


Private Sub Form_QueryUnload(cancel As Integer, UnloadMode As Integer)
If cmdStop.Enabled = False Then
'Make sure to disconnect from capture source - if it is connected upon termination the program can become unstable
DoEvents: SendMessage mCapHwnd, DISCONNECT, 0, 0
End If
End Sub

Private Sub Text2_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
KeyAscii = 0
SendKeys "{tab}"
End If
End Sub

Private Sub Text3_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
KeyAscii = 0
SendKeys "{tab}"
Timer1.Enabled = True
End If
End Sub

Private Sub Timer1_Timer()
MSComm1.PortOpen = True
MSComm1.Output = Chr(13) + "001400" + Chr(13)
Do
DoEvents
buffer$ = buffer$ & MSComm1.Input
Loop Until InStr(buffer$, vbCrLf)
id = Mid(buffer$, 2, Len(buffer$) - 3)
MSComm1.PortOpen = False
If id <> "94" Then
If idt <> id Then
Text1.Text = id
End If
End If
Timer1.Enabled = False
End Sub

Private Sub tmrMain_Timer()
On Error Resume Next

'Get Current Frame
SendMessage mCapHwnd, GET_FRAME, 0, 0

'Copy Current Frame to ClipBoard
SendMessage mCapHwnd, COPY, 0, 0

'Put ClipBoard's Data to picOutput
pic.Picture = Clipboard.GetData

'Clear ClipBoard
Clipboard.Clear
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:base de datos

Publicado por igor (633 intervenciones) el 10/08/2008 23:02:31
Yo infintamente agradecería que al pedir ayuda te molestes en pedirla correctamente.

Sigo sin saber QUE NARICES ES "GuardarBinary".

Gracias por tu amable ayuda amigo Roberto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar