Codificacion y Diseños de formularios

34
1. Modulo: 2. Presentación del Sistema :

Transcript of Codificacion y Diseños de formularios

Page 1: Codificacion y Diseños de formularios

1. Modulo:

2. Presentación del Sistema :

3. Formulario Inicio de Sesion :

Page 2: Codificacion y Diseños de formularios

Programación del Frm Inicio de Sesion

Private Sub cmdaceptar_Click()If Len(Trim(txtusuario.Text)) = 0 Then MsgBox "Ingrese el Nombre de Usuario", vbInformation, "mensaje" txtusuario.SetFocus Exit SubEnd If

If Len(Trim(txtclave.Text)) = 0 Then MsgBox "Ingrese su Clave Correcta", vbInformation, "mensaje" txtclave.SetFocus Exit SubEnd If

If Len(Trim(txtuser.Text)) = "0" Then MsgBox "Ingrese el nombre del Servidor ", vbInformation, "mensaje" txtuser.SetFocus Exit SubEnd If'llama la funcion conectar que se encuentra en el moduloIf conectar(Trim(txtusuario.Text), Trim(txtclave.Text), Trim(txtuser.Text)) = True Then MsgBox "Bienvenido al Sistema de Biblioteca", vbInformation, "Sistema de Biblioteca" frmpresentacion.Show

Page 3: Codificacion y Diseños de formularios

Unload frminicio Else MsgBox "No tiene Autorización para Ingresar !!!", vbInformation, "Sistema de Biblioteca" Unload Me End IfEnd Sub

Private Sub cmdcancelar_Click()Unload MeEnd Sub

Private Sub txtusuario_KeyPress(KeyAscii As Integer)Select Case KeyAscii Case 97 To 122 Case 65 To 90 Case 8, 32 Case Else KeyAscii = 0 End SelectEnd Sub

3. Formulario Menú Principal:

Page 4: Codificacion y Diseños de formularios

4.Formulario Registro de Usuarios :

Page 5: Codificacion y Diseños de formularios

Programación del Formulario Usuario

Public Sub cargarlv()On Error GoTo errorSet rusu = New ADODB.Recordset lv.ListItems.Clear rusu.Open "select * from usuario", cn, adOpenForwardOnly, adLockReadOnly Do While Not rusu.EOF Set mitem = lv.ListItems.Add(, , rusu!NMatricula, , 1) mitem.ListSubItems.Add Text:="" & rusu!Apellidos mitem.ListSubItems.Add Text:="" & rusu!nombres mitem.ListSubItems.Add Text:="" & rusu!fechanacimiento mitem.ListSubItems.Add Text:="" & rusu!codcarrera rusu.MoveNext Loop rusu.Close Exit Suberror: MsgBox Err.Description, vbInformation, "Sistema de Biblioteca"

Page 6: Codificacion y Diseños de formularios

End Sub

Public Sub limpiar()For Each Control In Controls If TypeOf Control Is TextBox Then Control.Text = "" dccarrera = "" End If Next End Sub

Public Sub habilita()For Each Control In ControlsIf TypeOf Control Is TextBox Then Control.Enabled = TrueEnd IfNextEnd Sub

Public Sub deshabilita()For Each Control In ControlsIf TypeOf Control Is TextBox Then Control.Enabled = FalseEnd IfNextEnd Sub

Private Sub cmdactualizar_Click()On Error GoTo error ' Inicia la transaccion cn.BeginTrans sql = "" sql = "update usuario set apellidos = '" & txtapell.Text & "', nombres ='" & txtnom.Text & "', fechanacimiento = '" & txtfecha.Text & "',codcarrera = '" & dccarrera.BoundText & "' where nmatricula ='" & txtnum.Text & "'" rusu.Open sql, cn, adOpenKeyset, adLockReadOnly MsgBox "Se Actualizo Correcatamente", vbInformation, "Sistema de Biblioteca" cmdnuevo.Enabled = True ' Confirma la transacion cn.CommitTrans 'cargar en le list view Call cargarlv Exit Suberror: 'deshace la transacion cn.RollbackTrans MsgBox Err.Description, vbInformation, "Sistema de Biblioteca"End Sub

Page 7: Codificacion y Diseños de formularios

Private Sub CmdBuscar_Click()On Error GoTo errorSet rusu = New ADODB.Recordsetrusu.Open "sp_buscarusuario '" & txtnum.Text & "'", cn, adOpenKeyset, adLockOptimistictxtnum.Text = rusu!NMatriculatxtapell.Text = rusu!Apellidostxtnom.Text = rusu!nombrestxtfecha.Text = rusu!fechanacimientodccarrera.BoundText = "" & rusu!codcarrera rusu.Close txtnum.Enabled = False: txtapell.SetFocus cmdactualizar.Enabled = True: cmdeliminar.Enabled = True cmdnuevo.Enabled = True Exit Suberror:MsgBox Err.Description, vbInformation, "Sistema de Biblioteca"End Sub

Private Sub cmdcerrar_Click()Unload MeEnd SubPrivate Sub cmdeliminar_Click()On Error GoTo errorcn.BeginTransrusu.Open "delete from usuario where nmatricula = '" & lv.SelectedItem.Text & "'", cn, adOpenKeyset, adLockPessimisticMsgBox "Se Elimino Correctamente a :" & Chr(13) & txtapell.Text, vbInformation, "Sistema de Biblioteca"cn.CommitTrans'Elimina el elemento del listviewlv.ListItems.Remove lv.SelectedItem.Index' Llama procedimineto limpiar Call limpiar Exit Suberror: cn.RollbackTrans MsgBox Err.Description, vbInformation, "Sistema de Biblioteca"End Sub

Private Sub cmdguardar_Click()Set rusu = New ADODB.RecordsetOn Error GoTo errorcn.BeginTransrusu.Open "insert into usuario values('" & txtnum.Text & "','" & txtapell.Text & "','" & txtnom.Text & "' ," & txtfecha.Text & " ,'" & dccarrera.BoundText & "' )", cnMsgBox "Se Inserto Correctamente", vbInformation, "Sistema de Biblioteca"cn.CommitTranscmdguardar.Enabled = Falsecmdnuevo.Enabled = True

Page 8: Codificacion y Diseños de formularios

'insertar en el listview Set mitem = lv.ListItems.Add(, , txtnum.Text, , 1) mitem.ListSubItems.Add Text:="" & txtapell.Text mitem.ListSubItems.Add Text:="" & txtnom.Text mitem.ListSubItems.Add Text:="" & txtfecha.Text mitem.ListSubItems.Add Text:="" & dccarrera.BoundTextExit Suberror:cn.RollbackTransMsgBox Err.Description, vbInformation, "Sistema dw Biblioteca"End Sub

Private Sub cmdimprimir_Click()rusu.Open "select * from usuario", cnSet rptusuario.DataSource = rusurptusuario.ShowEnd Sub

Private Sub cmdnuevo_Click()Call limpiarCall habilitatxtnum.SetFocuscmdguardar.Enabled = Truecmdnuevo.Enabled = Falsecmdactualizar.Enabled = Falsecmdeliminar.Enabled = FalseEnd Sub

Private Sub Form_Load()Call cargarlvSet rusu1 = New ADODB.Recordsetrusu1.Open "select * from carrera ", cn, adOpenKeyset, adLockOptimisticSet dccarrera.RowSource = rusu1dccarrera.ListField = "descricarrera"dccarrera.BoundColumn = "codcarrera"cmdguardar.Enabled = Falsecmdactualizar.Enabled = Falsecmdeliminar.Enabled = Falsefecha = Format(Date, "Long Date")hora = Format(Time, "long time")End Sub

Private Sub LV_Click()On Error GoTo errorSet rusu1 = New ADODB.Recordsetrusu1.Open "select * from carrera ", cn, adOpenKeyset, adLockOptimisticSet dccarrera.RowSource = rusu1dccarrera.ListField = "descricarrera"dccarrera.BoundColumn = "codcarrera"Set rusu = New ADODB.Recordset

Page 9: Codificacion y Diseños de formularios

rusu.Open "sp_buscarusuario '" & (lv.SelectedItem.Text) & "'", cn, adOpenForwardOnly, adLockReadOnly txtnum.Text = rusu!NMatricula txtapell.Text = "" & rusu!Apellidos txtnom.Text = "" & rusu!nombres txtfecha.Text = "" & rusu!fechanacimiento dccarrera.BoundText = rusu!codcarrera cmdactualizar.Enabled = True cmdeliminar.Enabled = True rusu.Close Call habilita txtnum.Enabled = False cmdactualizar.Enabled = True cmdeliminar.Enabled = True cmdnuevo.Enabled = True Exit Suberror: MsgBox Err.Description, vbInformation, "Sistema de Biblioteca" txtnum.SetFocus End Sub

Private Sub txtapell_KeyPress(KeyAscii As Integer)Select Case KeyAscii Case 97 To 122 Case 65 To 90 Case 8, 32 Case Else KeyAscii = 0 End SelectEnd Sub

Private Sub txtfecha_KeyPress(KeyAscii As Integer) Select Case keyacsii Case 48 To 57 Case 47, 32 Case 8 Case Else KeyAscii = 0 End SelectEnd Sub

Private Sub txtnom_KeyPress(KeyAscii As Integer)Select Case KeyAscii Case 97 To 122 Case 65 To 90 Case 8, 32 Case Else KeyAscii = 0 End Select

Page 10: Codificacion y Diseños de formularios

End Sub

Private Sub txtnum_KeyPress(KeyAscii As Integer)Select Case KeyAscii Case 48 To 57 Case 77 Case 8, 32 Case Else KeyAscii = 0 End Select End Sub

5.Formulario Registro de Libros :

Page 11: Codificacion y Diseños de formularios

Programación de Formulario Titulo

Public Sub limpiar()For Each Control In Controls If TypeOf Control Is TextBox Then Control.Text = "" dcedito = "" End If NextEnd SubPublic Sub habilita()For Each Control In ControlsIf TypeOf Control Is TextBox Then Control.Enabled = TrueEnd IfNextEnd SubPublic Sub deshabilita()For Each Control In ControlsIf TypeOf Control Is TextBox Then Control.Enabled = FalseEnd IfNextEnd SubPublic Sub cargarlv()On Error GoTo errorSet rstitulo = New ADODB.Recordset lv2.ListItems.Clear rstitulo.Open "select * from Titulo", cn, adOpenForwardOnly, adLockReadOnly Do While Not rstitulo.EOF Set mitem = lv2.ListItems.Add(, , rstitulo!codtitulo, , 1) mitem.ListSubItems.Add Text:="" & rstitulo!nomTitulo mitem.ListSubItems.Add Text:="" & rstitulo!anhopublic mitem.ListSubItems.Add Text:="" & rstitulo!isbn mitem.ListSubItems.Add Text:="" & rstitulo!Descripcion mitem.ListSubItems.Add Text:="" & rstitulo!autor mitem.ListSubItems.Add Text:="" & rstitulo!codeditorial mitem.ListSubItems.Add Text:="" & rstitulo!cantidad rstitulo.MoveNext Loop rstitulo.Close Exit Suberror: MsgBox Err.Description, vbInformation, "Sistema de Biblioteca"End Sub

Private Sub cmdactualizar_Click() On Error GoTo error ' Inicia la transaccion cn.BeginTrans

Page 12: Codificacion y Diseños de formularios

sql = "" sql = "update titulo set nomtitulo = '" & txttitulo.Text & "', anhopublic ='" & dpaño.Value & "', isbn = '" & txtisbn.Text & "', descripcion = '" & txtdescri.Text & "' , autor ='" & txtaut.Text & "', codeditorial ='" & dcedito.BoundText & "', cantidad ='" & txtcant.Text & "' where codtitulo ='" & txtcod.Text & "'" rstitulo.Open sql, cn, adOpenKeyset, adLockReadOnly MsgBox "Se Actualizo Correcatamente", vbInformation, "Sistema de Biblioteca" ' Confirma la transacion cn.CommitTrans 'cargar en le list view Call cargarlv Exit Suberror: 'deshace la transacion cn.RollbackTrans MsgBox Err.Description, vbInformation, "Sistema de Biblioteca" End SubPrivate Sub cmdcerrar_Click()Unload MeEnd SubPrivate Sub cmdcancelar_Click()Unload MeEnd SubPrivate Sub cmdeliminar_Click()On Error GoTo errorcn.BeginTransrstitulo.Open "delete from titulo where codtitulo = '" & lv2.SelectedItem.Text & "'", cn, adOpenKeyset, adLockPessimisticMsgBox "Se Elimino Correctamente a :" & Chr(13) & txttitulo.Text, vbInformation, "Sistema de Biblioteca"cn.CommitTrans'Elimina el elemento del listviewlv2.ListItems.Remove lv2.SelectedItem.Index' Llama procedimineto limpiar Call limpiar Exit Suberror: cn.RollbackTrans MsgBox Err.Description, vbInformation, "Sistema de Biblioteca"End Sub

Private Sub cmdguardar_Click()Set rstitulo = New ADODB.RecordsetOn Error GoTo errorcn.BeginTransrstitulo.Open "Insert Into titulo values('" & txtcod.Text & "','" & txttitulo.Text & "','" & dpaño.Value & "' ,'" & txtisbn.Text & " ','" & txtdescri.Text & "' ,'" & txtaut.Text & "','" & dcedito.BoundText & "','" & txtcant.Text & "' )", cnMsgBox "Se Guardo Correctamente", vbInformation, "Sistema de Biblioteca"cn.CommitTrans

Page 13: Codificacion y Diseños de formularios

cmdguardar.Enabled = Falsecmdnuevo.Enabled = TrueCall limpiar'insertar en el listview Set mitem = lv2.ListItems.Add(, , txtcod.Text, , 1) mitem.ListSubItems.Add Text:="" & txttitulo.Text mitem.ListSubItems.Add Text:="" & dpaño.Value mitem.ListSubItems.Add Text:="" & txtisbn.Text mitem.ListSubItems.Add Text:="" & txtdescri.Text mitem.ListSubItems.Add Text:="" & txtaut.Text mitem.ListSubItems.Add Text:="" & dcedito.BoundText mitem.ListSubItems.Add Text:="" & txtcant.TextExit Suberror:cn.RollbackTransMsgBox Err.Description, vbInformation, "Sistema dw Biblioteca"End SubPrivate Sub cmdnuevo_Click()Call limpiarCall habilitatxtcod.SetFocuscmdguardar.Enabled = Truecmdnuevo.Enabled = Falsecmdactualizar.Enabled = FalseEnd Sub

Private Sub CmdReporte_Click()Set rsreptitulo = New ADODB.Recordsetrsreptitulo.Open "select * from Titulo", cnSet rptitulo.DataSource = rsreptitulorptitulo.ShowEnd Sub

Private Sub Form_Load()Call cargarlvcmdguardar.Enabled = Falsecmdactualizar.Enabled = False'cmdeliminar.Enabled = FalseSet rstitulo = New ADODB.Recordset rstitulo.Open "Select * From editorial ", cn, adOpenKeyset, adLockReadOnly Set dcedito.RowSource = rstitulo dcedito.ListField = "companhia" dcedito.BoundColumn = "Codeditorial" fecha = Format(Date, "Long Date")hora = Format(Time, "long time")End Sub

Private Sub lv2_Click()'On Error GoTo errorSet rst = New ADODB.Recordset

Page 14: Codificacion y Diseños de formularios

rst.Open "Select * From editorial ", cn, adOpenKeyset, adLockReadOnly Set dcedito.RowSource = rst dcedito.ListField = "companhia" dcedito.BoundColumn = "Codeditorial"Set rstitulo = New ADODB.Recordset rstitulo.Open "select * from titulo where codtitulo = '" & (lv2.SelectedItem.Text) & "'", cn, adOpenForwardOnly, adLockReadOnly txtcod.Text = rstitulo!codtitulo txttitulo.Text = "" & rstitulo!nomTitulo dpaño.Value = "" & rstitulo!anhopublic txtisbn.Text = "" & rstitulo!isbn txtdescri.Text = "" & rstitulo!Descripcion txtaut.Text = "" & rstitulo!autor dcedito.BoundText = "" & rstitulo!codeditorial txtcant.Text = "" & rstitulo!cantidad rstitulo.Close cmdactualizar.Enabled = TrueExit Sub'error: MsgBox Err.Description, vbInformation, "Sistema de Biblioteca" txtcod.SetFocusEnd Sub

6.Formulario Registro de Editorial :

Page 15: Codificacion y Diseños de formularios

Programación del Formulario Editorial

Public Sub cargarlv()On Error GoTo errorSet rseditorial = New ADODB.Recordset lv.ListItems.Clear rseditorial.Open "select * from editorial", cn, adOpenForwardOnly, adLockReadOnly Do While Not rseditorial.EOF Set mitem = lv.ListItems.Add(, , rseditorial!codeditorial, , 1) mitem.ListSubItems.Add Text:="" & rseditorial!companhia mitem.ListSubItems.Add Text:="" & rseditorial!web mitem.ListSubItems.Add Text:="" & rseditorial!email mitem.ListSubItems.Add Text:="" & rseditorial!pais rseditorial.MoveNext Loop rseditorial.Close Exit Suberror: MsgBox Err.Description, vbInformation, "Sistema de Biblioteca"End Sub

Public Sub limpiar()For Each Control In Controls If TypeOf Control Is TextBox Then Control.Text = "" End If Next End SubPublic Sub habilita()For Each Control In ControlsIf TypeOf Control Is TextBox Then Control.Enabled = TrueEnd IfNextEnd SubPublic Sub deshabilita()For Each Control In ControlsIf TypeOf Control Is TextBox Then Control.Enabled = FalseEnd IfNextEnd Sub

Private Sub cmdcancelar_Click()Unload MeEnd Sub

Private Sub cmdguardar_Click()Set rseditorial = New ADODB.RecordsetOn Error GoTo error

Page 16: Codificacion y Diseños de formularios

cn.BeginTransrseditorial.Open "insert into editorial values('" & txtcodeditorial.Text & "','" & txtcia.Text & "','" & txtweb.Text & "' ,'" & txtemail.Text & " ','" & txtpais.Text & "' )", cn, adOpenKeyset, adLockOptimisticMsgBox "Se Inserto Correctamente", vbInformation, "Sistema de Biblioteca"cn.CommitTranscmdguardar.Enabled = Falsecmdnuevo.Enabled = True'insertar en el listview Set mitem = lv.ListItems.Add(, , txtcodeditorial.Text, , 1) mitem.ListSubItems.Add Text:="" & txtcia.Text mitem.ListSubItems.Add Text:="" & txtweb.Text mitem.ListSubItems.Add Text:="" & txtemail.Text mitem.ListSubItems.Add Text:="" & txtpais.TextExit Suberror:cn.RollbackTransMsgBox Err.Description, vbInformation, "Sistema dw Biblioteca"End Sub

Private Sub cmdnuevo_Click()Call limpiarCall habilitatxtcodeditorial.SetFocuscmdguardar.Enabled = Truecmdnuevo.Enabled = FalseEnd Sub

Private Sub cmmdBuscar_Click()On Error GoTo errorSet rseditorial = New ADODB.Recordsetrseditorial.Open "sp_BuscarEditorial '" & txtcodeditorial.Text & "'", cn, adOpenKeyset, adLockOptimistictxtcodeditorial.Text = rseditorial!codeditorialtxtcia.Text = rseditorial!companhiatxtweb.Text = rseditorial!webtxtemail.Text = rseditorial!emailtxtpais.Text = rseditorial!pais rseditorial.Close txtcodeditorial.Enabled = False: txtcia.SetFocus cmdnuevo.Enabled = True Exit Suberror:MsgBox Err.Description, vbInformation, "Sistema de Biblioteca"End Sub

Private Sub Form_Load()Call cargarlvSet rseditorial = New ADODB.Recordsetrseditorial.Open "select * from editorial ", cn, adOpenKeyset, adLockOptimistic

Page 17: Codificacion y Diseños de formularios

cmdguardar.Enabled = Falsefecha = Format(Date, "Long Date")hora = Format(Time, "long time")End Sub

Private Sub LV_Click()On Error GoTo errorSet rseditorial = New ADODB.Recordsetrseditorial.Open "select * from editorial ", cn, adOpenKeyset, adLockOptimisticSet rseditorial = New ADODB.Recordset rseditorial.Open "sp_BuscarEditorial '" & (lv.SelectedItem.Text) & "'", cn, adOpenForwardOnly, adLockReadOnly txtcodeditorial.Text = rseditorial!codeditorial txtcia.Text = "" & rseditorial!companhia txtweb.Text = "" & rseditorial!web txtemail.Text = "" & rseditorial!email txtpais.Text = "" & rseditorial!pais rseditorial.Close Call habilita txtcodeditorial.Enabled = False cmdnuevo.Enabled = True Exit Suberror: MsgBox Err.Description, vbInformation, "Sistema de Biblioteca" txtcodeditorial.SetFocusEnd Sub

Page 18: Codificacion y Diseños de formularios

7.Formulario Registrando Pretasmo :

Programación del Formulario Prestamo

Dim sql As StringDim regcodi, codigo As StringPublic Sub limpiar()For Each Control In Controls If TypeOf Control Is TextBox Then Control.Text = "" End If NextEnd SubPublic Sub habilita()For Each Control In Controls If TypeOf Control Is TextBox Then Control.Enabled = True End If

Page 19: Codificacion y Diseños de formularios

NextEnd SubPublic Sub Listalibro() Do While Not rstitulo.EOF Set mitem = Lvlibros.ListItems.Add(, , rstitulo!codtitulo, , 1) mitem.ListSubItems.Add Text:="" & rstitulo!nomTitulo mitem.ListSubItems.Add Text:="" & rstitulo!autor Dim edit As Variant edit = rstitulo!codeditorial Set rsmyedi = New ADODB.Recordset sql = "Select * from Editorial Where CodEditorial='" & edit & "'" rsmyedi.Open sql, cn, adOpenKeyset, adLockOptimistic mitem.ListSubItems.Add Text:="" & rsmyedi!companhia rstitulo.MoveNext LoopEnd SubPublic Sub deshab_Paleta()sstabpres.Tab = indicesstabpres.TabEnabled(indice) = Falsefrbus.Enabled = Falsetxtdatos.Enabled = Falsecmdnuevoprest.Enabled = Falsecmdbuscart.Enabled = Falsecmdregprest.Enabled = Falsecmdvisualusu.Enabled = FalseEnd SubPublic Sub Hab_paleta()sstabpres.TabEnabled(indice) = Truefrbus.Enabled = Truetxtdatos.Enabled = Truecmdbuscart.Enabled = Truecmdregprest.Enabled = Truecmdvisualusu.Enabled = TrueEnd SubPublic Sub cargarlv()On Error GoTo errorSet rstitulo = New ADODB.Recordset lv.ListItems.Clear rstitulo.Open "select * from Titulo", cn, adOpenForwardOnly, adLockReadOnly Do While Not rstitulo.EOF Set mitem = lv.ListItems.Add(, , rstitulo!codtitulo, , 1) mitem.ListSubItems.Add Text:="" & rstitulo!nomTitulo mitem.ListSubItems.Add Text:="" & rstitulo!autor mitem.ListSubItems.Add Text:="" & rstitulo!codeditorial rstitulo.MoveNext Loop rstitulo.Close Exit Suberror: MsgBox Err.Description, vbInformation, "Sistema de Biblioteca"

Page 20: Codificacion y Diseños de formularios

End SubPublic Sub alumno()On Error GoTo errorSet rusu = New ADODB.Recordsetsql = "select * from Usuario where NMatricula='" & txtmatri.Text & "'"rusu.Open sql, cn, adOpenKeyset, adLockOptimistictxtmatri.Text = rusu!NMatriculatxtapell.Text = rusu!Apellidostxtnom.Text = rusu!nombresDim XX As VariantXX = rusu!codcarreraSet rusu1 = New ADODB.Recordsetrusu1.Open "select * from carrera where Codcarrera='" & XX & "'", cn, adOpenKeyset, adLockOptimistictxtcar.Text = rusu1!descriCarrerarusu.Close Exit Suberror:MsgBox Err.Description, vbInformation, "Sistema de Biblioteca"End Sub

Private Sub CmdBuscar_Click()If Len(Trim(txtmatri.Text)) = 0 Then MsgBox "Ingrese el Código o Número de libro que desea buscar" txtmatri.SetFocus Else mysql = "" mysql = "SELECT COUNT(*) AS cantidad From Prestamo WHERE (nmatricula = '" & txtmatri.Text & "') AND (FechaDevol IS NULL)" Set rsprestamo = New ADODB.Recordset rsprestamo.Open mysql, cn, adOpenKeyset, adLockOptimisticIf rsprestamo!cantidad = 1 Then MsgBox "Prestamo indisponible...usted es deudor", vbInformation, "Sistema de Biblioteca" Call alumno sstabpres.TabEnabled(0) = False sstabpres.TabEnabled(1) = True sstabpres.Tab = (1) Set rstitulo = New ADODB.Recordset Mysql2 = "" Mysql2 = "SELECT TITULO.Codtitulo,Titulo.nomtitulo,Titulo.Autor,Titulo.Codeditorial FROM PRESTAMO INNER JOIN TITULO ON PRESTAMO.CODTITULO=TITULO.CODTITULO WHERE NMATRICULA='" & txtmatri.Text & "'" rstitulo.Open Mysql2, cn, adOpenForwardOnly, adLockReadOnly txtcodigo.Text = rstitulo!codtitulo txttitulo.Text = rstitulo!nomTitulo txtautor.Text = rstitulo!autor Dim aa As String

Page 21: Codificacion y Diseños de formularios

aa = rstitulo!codeditorial Set editorial1 = New ADODB.Recordset sql = "select * from editorial where CodEditorial='" & aa & "'" editorial1.Open sql, cn, adOpenKeyset, adLockOptimistic txteditorial.Text = editorial1!companhia rstitulo.Close 'registrando el monto Dim nn As Variant Set rsprestamo = New ADODB.Recordset sql = "select * from prestamo where NMatricula='" & txtmatri.Text & "'" rsprestamo.Open sql, cn, adOpenKeyset, adLockOptimistic nn = rsprestamo!Fechaprestamo TxtMonto.Text = DateDiff("d", CVDate(nn), Date) * Val(1.5) Else Call alumno sstabpres.TabEnabled(0) = True sstabpres.TabEnabled(1) = False sstabpres.Tab = (0) End If End If End SubPrivate Sub cmdbuscart_Click()If Len(Trim(txtdatos.Text)) = 0 Then MsgBox "Ingrese el Código o Número de libro que desea buscar" txtdatos.SetFocus Else On Error GoTo errorSet rstitulo = New ADODB.RecordsetLvlibros.ListItems.ClearSelect Case True Case optcodigo.Value sql = " select * from Titulo where CodTitulo='" & txtdatos.Text & " '" rstitulo.Open sql, cn, adOpenKeyset, adLockOptimistic Dim mycantidad, Image As Variant mycantidad = rstitulo!cantidad sql = "SELECT COUNT(*) AS cantidad From Prestamo WHERE codtitulo = '" & txtdatos.Text & "' AND (FechaDevol IS NULL)" Set rsprestamo = New ADODB.Recordset rsprestamo.Open sql, cn, adOpenKeyset, adLockReadOnly Do While Not rstitulo.EOF If rsprestamo!cantidad = mycantidad Then Image = 0 Else Image = 1 End If Set mitem = Lvlibros.ListItems.Add(, , rstitulo!codtitulo, , IIf(Image = 0, 1, 2)) mitem.ListSubItems.Add Text:="" & rstitulo!nomTitulo mitem.ListSubItems.Add Text:="" & rstitulo!autor Dim edit As Variant

Page 22: Codificacion y Diseños de formularios

edit = rstitulo!codeditorial Set rsmyedi = New ADODB.Recordset sql = "Select * from Editorial Where CodEditorial='" & edit & "'" rsmyedi.Open sql, cn, adOpenKeyset, adLockOptimistic mitem.ListSubItems.Add Text:="" & rsmyedi!companhia rstitulo.MoveNext LoopCase optitulo.Value sql = "select * from Titulo where nomTitulo like '" & txtdatos.Text & "%'" rstitulo.Open sql, cn, adOpenKeyset, adLockOptimistic Call ListalibroEnd Select rstitulo.Close Exit Suberror: MsgBox Err.Description, vbInformation, "Sistema de Biblioteca"End Ifcmdregprest.Enabled = FalseEnd Sub

8.Formulario Registrando Devolución :

Page 23: Codificacion y Diseños de formularios

Programación del Formulario DevoluciónPrivate Sub cmdDevolución_Click()Dim xcd, mycodi, codevol As Variant'***genera codigoSet rsdevcod = New ADODB.Recordsetsql = "select * from deuda"rsdevcod.Open sql, cn, adOpenKeyset, adLockOptimisticrsdevcod.MoveLastNReg = rsdevcod!coddeuda

Page 24: Codificacion y Diseños de formularios

xcd = CInt(Right(NReg, 3))If Len(Trim(xcd)) = 1 Then xcd = "00" & xcd + 1 codevol = xcd ElseIf Len(Trim(NReg)) = 2 Then xcod = "0" & xcd + 1 codevol = xcd End If'***Set rscodP = New ADODB.Recordsetsql = "Select * from Prestamo Where Nmatricula='" & txtmatri.Text & "' And (Fechadevol is null)"rscodP.Open sql, cn, adOpenKeyset, adLockReadOnlymycodi = rscodP!codprestamo'***registra devolucionSet rsdevolucion = New ADODB.Recordsetsql = "Insert Into deuda (coddeuda,codprestamo,monto,numcomprobante) values ('" & codevol & "','" & mycodi & "'," & TxtMonto.Text & ",'" & Txtcomprobante.Text & "')"rsdevolucion.Open sql, cn, adOpenKeyset, adLockOptimisticxsql = "Update Prestamo set Fechadevol='" & fecha.Caption & "' where codprestamo='" & mycodi & "'"Set rsregPres = New ADODB.RecordsetrsregPres.Open xsql, cn, adOpenKeyset, adLockPessimisticMsgBox "Se registró correctamente la devolución ...", vbInformation, "Sistema de Biblioteca"Call limpiartxtmatri.SetFocussstabpres.Tab = 0cmdregprest.Enabled = TrueEnd Sub

Private Sub cmdnuevoprest_Click()Call limpiarCall habilitatxtmatri.SetFocusEnd SubPrivate Sub cmdregprest_Click()Set rsprestamo = New ADODB.Recordsetrsprestamo.Open "select * from Prestamo", cn, adOpenKeyset, adLockOptimisticrsprestamo.MoveLastregcodi = rsprestamo!codprestamocodigo = CInt(regcodi)codigo = codigo + 1rsprestamo.Close Set rsprestamo = New ADODB.Recordsetrsprestamo.Open "insert into Prestamo (codprestamo,nmatricula,codtitulo,fechaprestamo) values ( '" & codigo & "', '" &

Page 25: Codificacion y Diseños de formularios

txtmatri.Text & "','" & Lvlibros.SelectedItem.Text & "','" & fecha.Caption & "')", cn, adOpenKeyset, adLockOptimisticMsgBox "Se inserto correctamente los datos del Prestamo que Ud. acaba de ingresar", vbInformation, "sistema de Biblioteca"cmdregprest.Enabled = FalseEnd Sub

Private Sub cmdvisualusu_Click()Set rsprestamo = New ADODB.Recordsetsql = "Select codprestamo,apellidos,nombres,nomTitulo,Fechaprestamo,fechadevol FROM ( Prestamo inner join usuario on [prestamo].[Nmatricula]=[Usuario].[Nmatricula]) inner join titulo on prestamo.Codtitulo=titulo.Codtitulo"rsprestamo.Open sql, cn, adOpenKeyset, adLockPessimisticSet rptprestamo.DataSource = rsprestamorptprestamo.ShowEnd Sub

Private Sub Form_Activate()txtmatri.SetFocuscmdregprest.Enabled = FalseEnd SubPrivate Sub Form_Load()fecha = DateHora = (Time)Hora2 = (Time)End SubPrivate Sub optcodigo_Click() Select Case KeyAscii Case 48 To 57 Case 8 Case Else KeyAscii = 0 End Select txtdatos.SetFocusEnd SubPrivate Sub optitulo_Click()txtdatos.SetFocusEnd SubPrivate Sub Txtcomprobante_KeyPress(KeyAscii As Integer)Select Case KeyAscii Case 48 To 57 Case 77 Case 8, 32 Case Else KeyAscii = 0 End SelectEnd Sub

Private Sub txtmatri_KeyPress(KeyAscii As Integer)Select Case KeyAscii

Page 26: Codificacion y Diseños de formularios

Case 48 To 57 Case 77 Case 8, 32 Case Else KeyAscii = 0 End SelectEnd Sub