Actividad Global
Diego Andrés González Campos
Alan Medina Solís
Ing. Software
4to Cuatrimestre
Programación Visual
Para empezar, al correr el programa nos encontramos esta pantalla que contiene el menú de las
interacciones, con una pestaña para registrar clientes, una para registrar cuentas, y otra para realizar
traspasos:
Al clickear la pestaña de clientes se abrirá esta ventana en donde registramos todos los datos para
dar de alta a un cliente:
Al dar click en Agregar vemos como el cliente queda guardado en la base de datos y podemos verlo
en la tabla que está a un lado:
Para demostrar las siguientes funciones agregamos más clientes.
Al dar click sobre un cliente, los datos de este se muestran en los campos que usamos para
registrarlo, en estos mismos podemos cambiar los datos insertados del cliente:
Al dar click en el botón de Actualizar podemos ver como los datos de el cliente se actualizan al
momento y se muestran en la tabla:
Para eliminar un cliente es el mismo proceso que el de actualizar un cliente, primero tenemos que
seleccionarlo:
Y al dar click en el botón Eliminar, vemos como el registro de este cliente se elimina de la tabla:
Al regresar al menú principal y dar click en la pestaña de Cuentas, se abrirá esta ventana en donde
podemos registrar una cuenta, usando el registro previo de algún cliente:
Al llenar los datos y hacer click en Registrar vemos como esta cuenta queda guardada en la tabla:
Para demostrar como actualizar una cuenta, hemos agregado más cuentas, y al igual que con los
clientes, al dar click en un registro podemos editar los datos de este:
Al dar click en Actualizar podemos observar como los datos del cliente seleccionado se actualizan:
Al igual, para eliminar una cuenta la seleccionamos:
Al dar click en el botón de Eliminar observamos como la cuenta se elimina de la tabla:
Al regresar al menú principal y dar click en la pestaña de Traspasos se abrirá esta ventana en donde
podemos hace traspasos entre dos cuentas ya registradas:
Al dar click en Traspasar, observamos como en la tabla de abajo se guardan 2 registros, uno que
indica la cuenta desde donde salió el importe junto con el folio de esa cuenta, el importe, la fecha,
un indicador que muestra si la cuenta fue la que dio o la que recibió el dinero, y el folio de la otra
cuenta:
Al revisar las cuentas, podemos ver como el importe se restó de la cuenta origen, y se sumó a la
cuenta destino:
Aquí dejaremos el código usado:
Modulo:
Module ModuloCuentasBanco
'Si se va a usar una cuenta de usuario entonces el connection string es
este: User= (usuario) ; Password: (contraseña) ;
Public ConnStr As String = "Server=LAPTOP-
HS5JKKJN\SQLEXPRESS;Database=CuentasBanco;Trusted_Connection=True;"
End Module
[Link]:
Public Class Sistema
Private Sub SalirToolStripMenuItem_Click(sender As Object, e As
EventArgs) Handles [Link]
End
End Sub
Private Sub ClientesToolStripMenuItem_Click(sender As Object, e As
EventArgs) Handles [Link]
[Link]()
End Sub
Private Sub CuentasToolStripMenuItem_Click(sender As Object, e As
EventArgs) Handles [Link]
[Link]()
End Sub
Private Sub TraspasosToolStripMenuItem_Click(sender As Object, e As
EventArgs) Handles [Link]
[Link]()
End Sub
Private Sub Sistema_Load(sender As Object, e As EventArgs) Handles
[Link]
End Sub
End Class
[Link]:
Imports [Link]
Public Class ClaseClientes
Private _RFC As String
Private _Nombre As String
Private _ApPaterno As String
Private _ApMaterno As String
Private _Calle As String
Private _Numero As String
Private _Colonia As String
Private _CP As String
Private _Ciudad As String
Private _Estado As Integer
Public Property RFC As String
Get
Return _RFC
End Get
Set(value As String)
If [Link] < 12 Or [Link] > 13 Then
'Error
Else
_RFC = value
End If
End Set
End Property
Public Property Nombre As String
Get
Return _Nombre
End Get
Set(value As String)
If value = "" Then
'Error
Else
_Nombre = value
End If
End Set
End Property
Public Property ApPaterno As String
Get
Return _ApPaterno
End Get
Set(value As String)
If value = "" Then
'Error
Else
_ApPaterno = value
End If
End Set
End Property
Public Property ApMaterno As String
Get
Return _ApMaterno
End Get
Set(value As String)
If value = "" Then
'Error
Else
_ApMaterno = value
End If
End Set
End Property
Public Property Calle As String
Get
Return _Calle
End Get
Set(value As String)
If value = "" Then
'Error
Else
_Calle = value
End If
End Set
End Property
Public Property Numero As String
Get
Return _Numero
End Get
Set(value As String)
If value = "" Then
'Error
Else
_Numero = value
End If
End Set
End Property
Public Property Colonia As String
Get
Return _Colonia
End Get
Set(value As String)
If value = "" Then
'Error
Else
_Colonia = value
End If
End Set
End Property
Public Property CP As String
Get
Return _CP
End Get
Set(value As String)
If [Link] <> 5 Then
'Error
Else
_CP = value
End If
End Set
End Property
Public Property Ciudad As String
Get
Return _Ciudad
End Get
Set(value As String)
If value = "" Then
'Error
Else
_Ciudad = value
End If
End Set
End Property
Public Property Estado As Integer
Get
Return _Estado
End Get
Set(value As Integer)
If value > 0 And value < 33 Then
_Estado = value
Else
'Error
End If
End Set
End Property
Public Sub New()
_RFC = ""
_Nombre = ""
_ApPaterno = ""
_ApMaterno = ""
_Calle = ""
_Numero = ""
_Colonia = ""
_CP = ""
_Ciudad = ""
_Estado = 0
End Sub
Public Sub New(PRCF As String, PNombre As String, PApPaterno As String,
PApMaterno As String, PCalle As String, PNumero As String, PColonia As
String, PCP As String, PCiudad As String, PEstado As Integer)
_RFC = PRCF
_Nombre = PNombre
_ApPaterno = PApPaterno
_ApMaterno = PApMaterno
_Calle = PCalle
_Numero = PNumero
_Colonia = PColonia
_CP = PCP
_Ciudad = PCiudad
_Estado = PEstado
End Sub
Public Sub New(PRFC As String)
'Este constructor crea la instancia con los atributos de un cliente
que ya existe
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim cmd As New SqlCommand("", dbc) With {
.CommandText = "SELECT
RFC,Nombre,ApPaterno,ApMaterno,Calle,Numero,Colonia,CP,Ciudad,Estado FROM
Cliente WHERE RFC=@RFC"
}
[Link]("RFC", PRFC)
Dim rdr As SqlDataReader
rdr = [Link]
[Link]()
_RFC = rdr("RFC").ToString
_Nombre = rdr("Nombre").ToString
_ApPaterno = rdr("ApPaterno").ToString
_ApMaterno = rdr("ApMaterno").ToString
_Calle = rdr("Calle").ToString
_Numero = rdr("Numero").ToString
_Colonia = rdr("Colonia").ToString
_CP = rdr("CP").ToString
_Ciudad = rdr("Ciudad").ToString
_Estado = rdr("Estado").ToString
[Link]()
[Link]()
[Link]() : [Link]()
End Sub
Public Sub RegistrarCliente()
If RFC = "" Then
'Error
Else
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim cmd As New SqlCommand("", dbc)
[Link] = "INSERT Cliente
(RFC,Nombre,ApPaterno,ApMaterno,Calle,Numero,Colonia,CP,Ciudad,Estado) VALUES
(@RFC,@Nombre,@ApPaterno,@ApMaterno,@Calle,@Numero,@Colonia,@CP,@Ciudad,@Esta
do)"
[Link]("RFC", _RFC)
[Link]("Nombre", _Nombre)
[Link]("ApPaterno", _ApPaterno)
[Link]("ApMaterno", _ApMaterno)
[Link]("Calle", _Calle)
[Link]("Numero", _Numero)
[Link]("Colonia", _Colonia)
[Link]("CP", _CP)
[Link]("Ciudad", _Ciudad)
[Link]("Estado", _Estado)
[Link]()
[Link]()
[Link]()
End If
End Sub
''' <summary>
''' Tabla para llenar un grid view con los datos de clientes
''' </summary>
''' <returns> Un objeto DataTable para asignarlo a la DataSource del
GridView </returns>
Public Shared Function TablaClientesGV() As DataTable
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim Consulta As String = "SELECT
[Link],[Link],[Link],[Link],[Link]+' #'+[Link]+',
'+[Link]+', '+[Link]+', '+[Link] AS Direccion FROM Cliente AS C ORDER BY
[Link]"
Dim Adaptador As New SqlDataAdapter(Consulta, dbc)
Dim Datos As New DataSet
[Link](Datos)
[Link]()
[Link]()
Return [Link](0)
End Function
Public Shared Sub eliminarCliente(rfcEliminar As String)
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim cmd As New SqlCommand("", dbc)
[Link] = "SELECT numCuenta FROM Cuentas WHERE RFC=@RFC"
[Link]("RFC", rfcEliminar)
Dim rdr As SqlDataReader
rdr = [Link]
If [Link]() Then
[Link]()
Throw New ApplicationException("Este RFC no se puede eliminar,
tiene cuentas registradas")
Else
[Link]()
[Link] = "DELETE Cliente WHERE RFC=@RFC"
[Link]()
End If
[Link] = "DELETE Cliente WHERE RFC=@RFC"
[Link]()
End Sub
Public Sub ActualizarCliente()
If RFC = "" Then
'Error
Throw New ApplicationException("El RFC debe ser valido")
Else
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim cmd As New SqlCommand("", dbc) With {
.CommandText = "UPDATE Cliente SET
Nombre=@Nombre,ApPaterno=@ApPaterno,ApMaterno=ApMaterno,Calle=@Calle,Numero=@
Numero,Colonia=@Colonia,CP=@CP,Ciudad=@Ciudad,Estado=@Estado WHERE RFC=@RFC"
}
[Link]("RFC", _RFC)
[Link]("Nombre", _Nombre)
[Link]("ApPaterno", _ApPaterno)
[Link]("ApMaterno", _ApMaterno)
[Link]("Calle", _Calle)
[Link]("Numero", _Numero)
[Link]("Colonia", _Colonia)
[Link]("CP", _CP)
[Link]("Ciudad", _Ciudad)
[Link]("Estado", _Estado)
[Link]()
[Link]()
[Link]()
[Link]()
End If
End Sub
End Class
[Link]:
Imports CuentasBanco
Public Class Clientes
Private Sub Clientes_Load(sender As Object, e As EventArgs) Handles
[Link]
[Link] = [Link]
[Link] = 0
End Sub
Private Sub _LimpiarInterfaz()
[Link] = ""
[Link] = ""
[Link] = ""
[Link] = ""
[Link] = ""
[Link] = ""
[Link] = ""
[Link] = ""
[Link] = ""
[Link] = 0
End Sub
Private Sub btnAgregar_Click(sender As Object, e As EventArgs) Handles
[Link]
Dim cliente As New ClaseClientes([Link], [Link],
[Link], [Link], [Link], [Link],
[Link], [Link], [Link], [Link])
Try
[Link]()
[Link] = [Link]
_LimpiarInterfaz()
Catch ex As Exception
MsgBox("Error: " & [Link], [Link] Or
[Link], "Informacón")
End Try
End Sub
Dim elimRFC As String
Private Sub btnEliminar_Click(sender As Object, e As EventArgs) Handles
[Link]
Try
[Link](elimRFC)
[Link] = [Link]
_LimpiarInterfaz()
'REVISAR PROXIMA CLASE¬
'MsgBox("Cliente eliminado " & [Link] Or
[Link], "Información")
Catch ex As Exception
MsgBox("Error: " & [Link], [Link] Or
[Link], "Información")
End Try
End Sub
Dim ActCliente As ClaseClientes 'Instancia para acualizar cliente
Dim idxRow As Integer 'Indice del renglon en caso de actualizar
Private Sub TablaClientes_CellClick(sender As Object, e As
DataGridViewCellEventArgs) Handles [Link]
If [Link] > -1 Then
'Variable para eliminar cliente
elimRFC = [Link]([Link]).Cells(0).Value
idxRow = [Link]
'Lennar campos para actualizar cliente
ActCliente = New
ClaseClientes([Link]([Link]).Cells(0).Value)
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
End If
End Sub
Private Sub btnActualizar_Click(sender As Object, e As EventArgs) Handles
[Link]
Try
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link]()
[Link](idxRow).Cells(1).Value = [Link]
[Link](idxRow).Cells(2).Value = [Link]
[Link](idxRow).Cells(3).Value = [Link]
[Link](idxRow).Cells(4).Value = [Link] & "
#" & [Link] & ", " & [Link] & ", " & [Link] &
", " & [Link] & ", " & [Link]
_LimpiarInterfaz()
Catch ex As Exception
MsgBox("Error: " & [Link], [Link] Or
[Link], "Información")
End Try
End Sub
End Class
[Link]:
Imports [Link]
Public Class ClaseCuentas
Private _numCuenta As Long
Private _Cliente As String
Private _Saldo As Double
Private _FechaCreacion As Date
Private _FechaExpiracion As Date
Public Property numCuenta As Long
Get
Return _numCuenta
End Get
Set(value As Long)
'If value = 0 Then
' 'error
'Else
' _numCuenta = value
'End If
_numCuenta = value
End Set
End Property
Public Property Cliente As String
Get
Return _Cliente
End Get
Set(value As String)
If value = "" Then
'error
Else
_Cliente = value
End If
End Set
End Property
Public Property Saldo As Double
Get
Return _Saldo
End Get
Set(value As Double)
If value <= 0 Then
'error
Else
_Saldo = value
End If
End Set
End Property
Public Property FechaCreacion As Date
Get
Return _FechaCreacion
End Get
Set(value As Date)
'If value = "" Then
' 'error
'Else
'End If
_FechaCreacion = value
End Set
End Property
Public Property FechaExpiracion As Date
Get
Return _FechaExpiracion
End Get
Set(value As Date)
'If value = "" Then
' 'error
'Else
'End If
_FechaExpiracion = value
End Set
End Property
Public Sub New()
_numCuenta = ""
_Cliente = ""
_Saldo = 0
_FechaCreacion = [Link]
_FechaExpiracion = [Link]
End Sub
Public Sub New(PnumCuenta As Long, PCliente As String, PSaldo As Double,
PFechaExpiracion As Date)
_numCuenta = PnumCuenta
_Cliente = PCliente
_Saldo = PSaldo
_FechaCreacion = [Link]
_FechaExpiracion = PFechaExpiracion
End Sub
Public Sub New(PnumCuenta As Long)
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim cmd As New SqlCommand("", dbc) With {
.CommandText = "SELECT numCuenta,RFC,Saldo,FechaCreacion,FechaExpiracion
FROM Cuentas WHERE numCuenta=@numCuenta"
}
[Link]("numCuenta", PnumCuenta)
Dim rdr As SqlDataReader
rdr = [Link]
[Link]()
_numCuenta = rdr("numCuenta")
_Cliente = rdr("RFC").ToString
_Saldo = rdr("Saldo")
_FechaCreacion = rdr("FechaCreacion")
_FechaExpiracion = rdr("FechaExpiracion")
[Link]()
[Link]()
[Link]() : [Link]()
End Sub
Public Sub RegistrarCuenta()
If Cliente < 0 Then
'Error
Else
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim cmd As New SqlCommand("", dbc)
[Link] = "INSERT INTO Cuentas
(numCuenta,RFC,Saldo,FechaCreacion,FechaExpiracion) VALUES
(@numCuenta,@RFC,@Saldo,@FechaCreacion,@FechaExpiracion)"
[Link]("numCuenta", _numCuenta)
[Link]("RFC", _Cliente)
[Link]("Saldo", _Saldo)
[Link]("FechaCreacion", _FechaCreacion)
[Link]("FechaExpiracion", _FechaExpiracion)
[Link]()
[Link]()
[Link]()
End If
End Sub
Public Shared Function ListaClientes() As DataTable
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim Consulta As String = "SELECT RFC, ApPaterno+' '+ApMaterno+',
'+Nombre AS Cliente FROM Cliente ORDER BY ApPaterno+ApMaterno+Nombre"
Dim Adaptador As New SqlDataAdapter(Consulta, dbc)
Dim dtListaC As New DataTable
[Link](dtListaC)
[Link]()
[Link]()
Return dtListaC
End Function
Public Shared Function TablaCuentasGV() As DataTable
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim Consulta As String = "SELECT
[Link],[Link],[Link],[Link],[Link] FROM Cuentas AS C
ORDER BY [Link]"
Dim Adaptador As New SqlDataAdapter(Consulta, dbc)
Dim Datos As New DataSet
[Link](Datos)
[Link]()
[Link]()
Return [Link](0)
End Function
Public Shared Sub eliminarCuenta(rfcEliminar As String)
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim cmd As New SqlCommand("", dbc)
[Link] = "SELECT numCuenta FROM Cuentas WHERE
numCuenta=@numCuenta"
[Link]("numCuenta", rfcEliminar)
Dim rdr As SqlDataReader
rdr = [Link]
[Link]()
[Link] = "DELETE Cuentas WHERE numCuenta=@numCuenta"
[Link]()
End Sub
Public Sub ActualizarCuenta()
If Cliente < 0 Then
'Error
Throw New ApplicationException("El RFC debe ser valido")
Else
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim cmd As New SqlCommand("", dbc) With {
.CommandText = "UPDATE Cuentas SET
numCuenta=@numCuenta,RFC=@RFC,Saldo=@Saldo,FechaCreacion=@FechaCreacion,Fecha
Expiracion=@FechaExpiracion WHERE numCuenta=@numCuenta"
}
[Link]("numCuenta", _numCuenta)
[Link]("RFC", _Cliente)
[Link]("Saldo", _Saldo)
[Link]("FechaCreacion", _FechaCreacion)
[Link]("FechaExpiracion", _FechaExpiracion)
[Link]()
[Link]()
[Link]()
[Link]()
End If
End Sub
End Class
[Link]:
Imports CuentasBanco
Imports [Link]
Public Class Cuentas
Private Sub Cuentas_Load(sender As Object, e As EventArgs) Handles
[Link]
[Link] = [Link]
[Link] = ListaClientes()
[Link] = "rfc"
[Link] = "Cliente"
End Sub
Private Sub _LimpiarInterfaz()
[Link] = ""
[Link] = -1
[Link] = ""
End Sub
Private Sub btnRegistrar_Click(sender As Object, e As EventArgs) Handles
[Link]
Dim cuenta As New ClaseCuentas([Link],
[Link], [Link], [Link]())
Try
[Link]()
[Link] = [Link]
_LimpiarInterfaz()
Catch ex As Exception
MsgBox("Error: " & [Link], [Link] Or
[Link], "Informacón")
End Try
End Sub
Dim elimRFC As String
Private Sub btnEliminar_Click(sender As Object, e As EventArgs) Handles
[Link]
Try
[Link](elimRFC)
[Link] = [Link]
_LimpiarInterfaz()
Catch ex As Exception
MsgBox("Error: " & [Link], [Link] Or
[Link], "Información")
End Try
End Sub
Dim ActCuenta As ClaseCuentas 'Instancia para acualizar cliente
Dim idxRow As Integer 'Indice del renglon en caso de actualizar
Private Sub dgbCuentas_CellClick(sender As Object, e As
DataGridViewCellEventArgs) Handles [Link]
If [Link] > -1 Then
'Variable para eliminar cliente
elimRFC = [Link]([Link]).Cells(0).Value
idxRow = [Link]
'Lennar campos para actualizar cliente
ActCuenta = New
ClaseCuentas([Link]([Link]).Cells(0).Value)
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]([Link])
End If
End Sub
Private Sub btnActualizar_Click(sender As Object, e As EventArgs) Handles
[Link]
Try
[Link] = [Link]
[Link] = [Link]
[Link] = [Link]
[Link]()
[Link](idxRow).Cells(0).Value = [Link]
[Link](idxRow).Cells(1).Value = [Link]
[Link](idxRow).Cells(2).Value = [Link]
[Link](idxRow).Cells(3).Value = [Link]
[Link](idxRow).Cells(4).Value =
[Link]
_LimpiarInterfaz()
Catch ex As Exception
MsgBox("Error: " & [Link], [Link] Or
[Link], "Información")
End Try
End Sub
End Class
[Link]:
Imports [Link]
Public Class ClaseTraspasos
Private _CuentaOrigen As Long
Private _CuentaDestino As Long
Private _FolioOrigen As String
Private _FolioDestino As String
Private _FechaT As Date
Private _ImporteT As Double
'Private _Movimiento As Boolean
Public Property CuentaOrigen As Long
Get
Return _CuentaOrigen
End Get
Set(value As Long)
If value = 0 Then
'error
Else
_CuentaOrigen = value
End If
End Set
End Property
Public Property CuentaDestino As Long
Get
Return _CuentaDestino
End Get
Set(value As Long)
If value = 0 Then
'error
Else
_CuentaDestino = value
End If
End Set
End Property
Public Property FolioOrigen As String
Get
Return _FolioOrigen
End Get
Set(value As String)
If value = "" Then
'error
Else
_FolioOrigen = value
End If
End Set
End Property
Public Property FolioDestino As String
Get
Return _FolioDestino
End Get
Set(value As String)
If value = "" Then
'error
Else
_FolioDestino = value
End If
End Set
End Property
Public Property FechaT As Date
Get
Return _FechaT
End Get
Set(value As Date)
If value = "" Then
'error
Else
_FechaT = value
End If
End Set
End Property
Public Property ImporteT As Double
Get
Return _ImporteT
End Get
Set(value As Double)
If value = 0 Then
'error
Else
_ImporteT = value
End If
End Set
End Property
'Public Property Movimiento As Boolean
' Get
' Return _Movimiento
' End Get
' Set(value As Boolean)
' If value = "" Then
' 'error
' Else
' _Movimiento = value
' End If
' End Set
'End Property
Public Sub New()
_CuentaOrigen = 0
_CuentaDestino = 0
_FolioOrigen = ""
_FolioDestino = ""
_FechaT = [Link]
_ImporteT = 0
'_Movimiento = 0
End Sub
Public Sub New(PCuentaOrigen As Long,
PCuentaDestino As Long,
PFolioOrigen As String,
PFolioDestino As String,
PFechaMovimiento As Date,
PImporteT As Double)
_CuentaOrigen = PCuentaOrigen
_CuentaDestino = PCuentaDestino
_FolioOrigen = PFolioOrigen
_FolioDestino = PFolioDestino
_FechaT = [Link]
_ImporteT = PImporteT
End Sub
Public Sub New(PCuentaOrigen As Long)
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim cmd As New SqlCommand("", dbc) With {
.CommandText = "SELECT
numCuenta,numCuentaD,Folio,Importe,Movimiento,FechaMovimiento,FolioDestino
FROM Movimientos WHERE numCuenta=@numCuenta"
}
[Link]("numCuenta", PCuentaOrigen)
Dim rdr As SqlDataReader
rdr = [Link]
[Link]()
_CuentaOrigen = rdr("numCuenta")
_CuentaDestino = rdr("numCuentaD")
_FolioOrigen = rdr("Folio")
_ImporteT = rdr("Importe").ToString
_FechaT = rdr("FechaMovimiento")
_FolioDestino = rdr("FolioDestino")
[Link]()
[Link]()
[Link]() : [Link]()
End Sub
Public Sub RegistrarTraspaso()
If CuentaOrigen = 0 Then
'Error
Else
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim cmd As New SqlCommand("", dbc)
[Link] = "INSERT Movimientos
(numCuenta,numCuentaD,Folio,Importe,Movimiento,FechaMovimiento,FolioDestino)
VALUES
(@numCuenta,@numCuentaD,@Folio,@Importe,@Movimiento,@FechaMovimiento,@FolioDe
stino)"
[Link]("numCuenta", _CuentaOrigen)
[Link]("numCuentaD", _CuentaDestino)
[Link]("Folio", _FolioOrigen)
[Link]("Importe", _ImporteT)
[Link]("Movimiento", 1)
[Link]("FechaMovimiento", _FechaT)
[Link]("FolioDestino", _FolioDestino)
[Link]()
ActualizarSaldo(False)
[Link](0).Value = _CuentaDestino
[Link](1).Value = _CuentaOrigen
[Link](2).Value = _FolioDestino
[Link](4).Value = 0
[Link](6).Value = _FolioOrigen
[Link]()
ActualizarSaldo(True)
[Link]()
[Link]()
End If
End Sub
Private Sub ActualizarSaldo(Movimiento As Boolean)
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim cmd As New SqlCommand("", dbc)
[Link] = "UPDATE Cuentas SET Saldo=Saldo" & IIf(Movimiento,
"+", "-") & _ImporteT & " WHERE numCuenta=" & IIf(Movimiento, _CuentaDestino,
_CuentaOrigen)
[Link]()
[Link]()
[Link]()
[Link]()
End Sub
Public Shared Function ListaCuentas() As DataTable
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim Consulta As String = "SELECT numCuenta, numCuenta AS Cuenta FROM
Cuentas ORDER BY numCuenta"
Dim Adaptador As New SqlDataAdapter(Consulta, dbc)
Dim dtListaC As New DataTable
[Link](dtListaC)
[Link]()
[Link]()
Return dtListaC
End Function
Public Shared Function TraspasosGV() As DataTable
Dim dbc As New SqlConnection(ConnStr)
[Link]()
Dim Consulta As String = "SELECT
[Link],[Link],[Link],[Link],[Link],[Link]
FROM Movimientos AS C ORDER BY [Link]"
Dim Adaptador As New SqlDataAdapter(Consulta, dbc)
Dim Datos As New DataSet
[Link](Datos)
[Link]()
[Link]()
Dim dbc2 As New SqlConnection(ConnStr)
[Link]()
Dim Consulta2 As String = "SELECT
[Link],[Link],[Link],[Link],[Link],[Link]
FROM Movimientos AS C ORDER BY [Link]"
Dim Adaptador2 As New SqlDataAdapter(Consulta2, dbc2)
Dim Datos2 As New DataSet
[Link](Datos2)
[Link]()
[Link]()
Return [Link](0)
Return [Link](0)
End Function
End Class
[Link]:
Imports CuentasBanco
Imports [Link]
Public Class Traspasos
Private Sub Traspasos_Load(sender As Object, e As EventArgs) Handles
[Link]
[Link] = [Link]
[Link] = ListaCuentas()
[Link] = "numCuenta"
[Link] = "Cuenta"
[Link] = ListaCuentas()
[Link] = "numCuenta"
[Link] = "Cuenta"
[Link] = -1
[Link] = -1
[Link] = ""
[Link] = ""
[Link] = ""
End Sub
Private Sub _LimpiarInterfaz()
[Link] = -1
[Link] = -1
[Link] = ""
[Link] = ""
[Link] = [Link]
[Link] = ""
End Sub
Private Sub btnTraspasar_Click(sender As Object, e As EventArgs) Handles
[Link]
Dim traspaso As New ClaseTraspasos([Link],
[Link],
[Link],
[Link],
[Link],
[Link])
Try
[Link]()
[Link] = [Link]
_LimpiarInterfaz()
Catch ex As Exception
MsgBox("Error: " & [Link], [Link] Or
[Link], "Informacón")
End Try
End Sub
End Class