Domingo 22 de Diciembre de 2024, 14:16
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
Visual Basic 6.0 e inferiores
(Moderador:
F_Tanori
) »
Poner Mi Sistema En Red
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Poner Mi Sistema En Red (Leído 3160 veces)
seba_m
Miembro activo
Mensajes: 99
Poner Mi Sistema En Red
«
en:
Jueves 9 de Febrero de 2006, 18:41 »
0
Necesito hacer un sistema para la facultad.
El sistema tiene que ser capaz de soportar 10 PCs más en red.
Tiene que tener en cuenta que la información de cada pc debe actualizarse
Instantáneamente y automáticamente, si un usuario de una pc modifica , da de alta o elimina algún registro.
La base de datos debe residir en un equipo que a su vez actúa de cliente.
Si dos usuarios o más al mismo tiempo desean tocar registros diferentes en una misma tabla, que puedan hacerlo.
Si dos o más usuarios desean justo hacer operaciones sobre el mismo registro en la misma tabla que el sistema del mensaje pertinente.
El sistema es un sistema de stock y clientes, el sistema esta hecho pero me falta esto (ponerlo en red) hacerlo multi-usuario, creo que así se los llama a los sistemas que actúan en red.
Pensé en trabajar con winsock pero me dijeron que para esto no es necesario.
Además me dijeron que necesito al estar la aplicación en red, realizar n control de perfiles de usuarios.
Actualmente la base de datos que uso de Access, pero me dijeron que migre a MySQL, ya que es mas facil y el tema de la red lo maneja de manera automática. NO se si es cierto.
Por favor ayuda
Gracias
Tweet
Sagutxo
Miembro MUY activo
Mensajes: 320
Re: Poner Mi Sistema En Red
«
Respuesta #1 en:
Jueves 9 de Febrero de 2006, 21:04 »
0
SAlu2. Lo mas sencillo, probablemente sea usar ODBC. Siempre he utilizado unidades de red a la carpeta donde esté la db desde todos los puestos y nunca he tenido problemas.
Aunke he leido facultad, y si lo quieres por un ejercico que te han pedido dudo que te dejen hacer unidades de red
.
Espero que te sirva.
Mi mujer tiene un físico bárbaro!!!. Einstein.
seba_m
Miembro activo
Mensajes: 99
Re: Poner Mi Sistema En Red
«
Respuesta #2 en:
Viernes 10 de Febrero de 2006, 01:26 »
0
Te agradezco tu ayuda, pero eso es solo una parte de la códificación puesto que todavia me falat estos temas:
-Como realizar un control de usuarios (perfiles)
-Como hacer que dos o m,as usuarios puedan estar operando (ABM) sobre la misma tabla pero en registros diferentes.
-Como manejar el tema que más de un usuario quieran operar sobre el mismo registro en la misma base de datos. ?
Como hacerlo multi-usuario, sobre todo con el tema de los remitos numerados ?
Gracias
hdr
Miembro MUY activo
Mensajes: 128
Re: Poner Mi Sistema En Red
«
Respuesta #3 en:
Viernes 10 de Febrero de 2006, 02:11 »
0
hola.
para solucionor lo de la db en red debes utilizar un motor de base de datos cliente servidor que te solucione esto, puedes utilizar sqlserver express, mysql,firebird
firebirtd es mi preferido.
para lo de varios usuarios modificando el mismo registro puedes utilizar modos de bloque de registro en los recordset.
lo de control de usuarios es algo mas complejo dependiendo de que es lo que quieres hacer, solo usuarios o usuarios y grupos con permisos.
seba_m
Miembro activo
Mensajes: 99
Re: Poner Mi Sistema En Red
«
Respuesta #4 en:
Viernes 10 de Febrero de 2006, 04:01 »
0
Hernan,
Que ventaja tiene firebird respecto de mysql, ? te comento que actualmente la base de tados del sistema se encuentra en access y es una base de datos relacionada.
Te pregunto de donde puedo bajar el firebird y , me gustaria saber si soporta bases de datos muy grandes, ademas de como debo usarlo para llevar mi actual base de datos de access para quie funciones con firebirs.
Y respecto de los usuarios.
Inicialmente necesito que varioa usuarios puedan estra modificando variaos registros de una misma tabla, y que hacer en caso de que dos usuarios quieran mofificar el mismo regisatro.
Y bueno,,, te agbradeaco la ayuda
Shiquilla
Miembro MUY activo
Mensajes: 188
Nacionalidad:
Re: Poner Mi Sistema En Red
«
Respuesta #5 en:
Viernes 10 de Febrero de 2006, 13:23 »
0
Muy buenas, yo hago aplicaciones en red y para ello, también hago un sistema de bloqueos. Por si te vale te lo explico:
Tengo una tabla Bloqueos donde guardo:
- Key del registro que está bloqueado
- Código de usuario
Cuando el usuario entra en la aplicación, hago un DELETE de la tabla filtrando por el código de usuario por si el usuario tenía algun registro bloqueado (por ejemplo estaba editando un articulo y se va la luz).
Después, imaginemos que tenemos una tabla que tiene 3 campos, de los cuales id1 e id2 son clave primaria. Entonces mi key sería: clsNombreTabla#CamposClave
clsNombreTabla#id1#id2
Cuando un usuario intenta editar un artículo, miro si está bloqueado ese registro y si no lo está lo bloqueo, en el caso contrario se lo muestro en sólo lectura. Al terminar de editar un artículo desbloqueo el registro.
Espero haberte ayudado.
« §hÿqµïllæ »
seba_m
Miembro activo
Mensajes: 99
Re: Poner Mi Sistema En Red
«
Respuesta #6 en:
Viernes 10 de Febrero de 2006, 13:36 »
0
Shiquilla
Gracias, por lopa excelente explicacion, pero me gustaria si puedes esplayarte un poco mas sobre esa tabla de bloqueos como la haces, que campos tiene, no comprenso esa parte, ademas que motor usas para la base de datos en red.
Si no es molestia me guataria contactarte por MSN o mail,
mi mail y msn es:
seba_m@arnet.com.ar
gracias
Shiquilla
Miembro MUY activo
Mensajes: 188
Nacionalidad:
Re: Poner Mi Sistema En Red
«
Respuesta #7 en:
Sábado 11 de Febrero de 2006, 13:08 »
0
Buenas
Seba_m
, ya te agregué al MSN.
Mi metodología a la hora de hacer un programa es hacer, por cada tabla, una clase donde tengo las operaciones más frecuentes que se harán sobre esa tabla (recuperar un registro, insert, update....).
Por ejemplo, imaginate que tengo una tabla
Clientes
. Cuyos campos son:
- idCliente (clave primaria)
- Nombre
- Direccion
Entonces, en mi proyecto tendré una clase que se llamará
clsClientes
.
En la clase, tengo una propiedad que devuelve la Key del cliente de esta forma:
clsClientes#CamposClave (por ejemplo si recupero el cliente 1 entonces será --> clsClientes#1)
Hasta aquí bien, ahora vamos con el sistema de bloqueos.
Tengo una tabla que se llama Bloqueos que tiene los siguientes campos:
- sKeyRegistro
- idUsuario
Si el usuario 34 está editando el cliente 1, en la tabla Bloqueos habrá un registro tal que asi:
sKeyRegistro
idUsuario
clsClientes#1 34
Ahora, si el usuario 50 quiere editar el cliente 1, hago lo siguiente:
goBD = la conexion a la bd
goUsuario = clase de usuario global a la aplicacion que contiene el codigo de usuario (en este caso será el 50)
Código: Text
Public Function gfbBloquearRegistro(loObjecto As Object) As Boolean
Dim lsSQL As String
Dim loRS As Recordset
Dim lbBloqueado As Boolean
'Si el registro no está bloqueado entonces lo bloqueo
lbBloqueado = False
lsSQL = "SELECT * FROM Bloqueos WHERE sKeyRegistro = " & loObjecto.MPSCODIGO 'Propiedad que me devuelve la Key
Set loRS = goBD.Execute(lsSQL)
lbBloqueado = Not loRS.EOF
If Not lbBloqueado Then
lsSQL = "INSERT INTO Bloqueos VALUES (" & loObjecto.MPSCODIGO & "," & goUsuario.midUsuario & ")"
goBD.Execute lsSQL
End If
loRS.Close
Set loRS = Nothing
End Function
Dim loCliente As clsClientes
Dim lbBloqueado As Boolean
Set loCliente = New clsClientes
loCliente.MPSCODIGO = "clsClientes#1"
lbBloqueado = gfbBloquearRegistro(loCliente)
If lbBloqueado Then MsgBox "EL registro está bloqueado bla bla bla"
Bueno, por aquí no consigo explicartelo mejor. A ver si entras al MSN y te lo explico más detalladamente.
SObre el sistema de base de datos, yo uso este sistema para cualquier gestor de base de datos (lo he usado tanto para Access como para SQL Server)
Saludos,
« §hÿqµïllæ »
seba_m
Miembro activo
Mensajes: 99
Re: Poner Mi Sistema En Red
«
Respuesta #8 en:
Domingo 12 de Febrero de 2006, 17:11 »
0
Gracias, ya te agrege y luego hablamops para que me expliques bien , ademas he decidiod adoptar MySQL 5.0
Saludos
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
Visual Basic 6.0 e inferiores
(Moderador:
F_Tanori
) »
Poner Mi Sistema En Red