Pregunta:
¿Alguien puede ayudarme con un programa?
Humberto G
2009-06-15 15:24:05 UTC
hola alguien me puede ayudar con la creación de un programa de visual basic que gestione una base de datos de access para control de inventario de libros
Seis respuestas:
anonymous
2009-06-15 15:30:51 UTC
Ya existen muchos programas para controlar inventarios y existen algunos recursos incluso gratuitos.Te recomiendo que los busques antes de adentrarte en esto que es toda una aventura.

Pero bueno, manos a la obra, el approach más sencillo es llevar un registro de inventarios perpetuos, es decir si ya tienes una tabla con todos los productos, ahora necesitas agregar campos para entradas y salidas de inventario por semana o por día. Entre más específico, mejor. En una tabla que puedes nombrar compras, la vinculas con tu tabla de articulos. Necesitaras otra tabla de "salidas" que tambien vincularas a tu tabla de articulos. Luego necesitas diseñar un macro que por cada articulo de la tabla sume los registros de compras y reste de la tabla de salidas. El resultado convendría guardarlo en otra tabla que se llame "saldos".

Entre más preciso mejor. Buena suerte.

Fuente(s):

http://www.zonagratuita.com/a-utilidades/oficina/InventoryBuilder.htm

este es uno de muchos ejemplosc
anonymous
2014-12-12 15:34:38 UTC
Siempre aciertas si compras teclados en los sitios web, los mejores precios por los teclados de ordenador como por los teclados para teléfonos. He estado muy contenta con el teclado de ordenador así que me he comprado uno y para mi móvil, he encontrado el mejor precio para un teclado bluetooth para mi tableta y estoy muy contenta con mi nuevo teclado desde su llegada, es muy práctico, pesa muy poco y tiene el mismo diseño como un teclado para portátiles, muy practica y buena ha sido esta compra.
SERGE
2009-06-15 17:53:31 UTC
A LA MlERDA, TANTO CODIGO, NO SEAS PENDEJO TIO, MEJOR DALE TU CORREO
aem
2009-06-15 16:50:30 UTC
Hola:

El asunto es al vesrre, primero se hace la base de datos, con la tabla o las tablas necesarias, para tu caso, crea una base en blanco, luego rea una tabla en tiempo de diseño, el primer dato IdLibro autonumerico, (y campo clave ponele la llavecita) el segundo Nombre

texto, el tercero autor, texto, el cuarto tema, texto, el quinto estado numerico. La tabla llamala libro

luego de cerrada esta tabla, se abre para hacer otra en tiempo de diseño que establesca los distintos estados, IdEstado, Detalle

en el detalle pondremos los distintos estados, bueno, a restaurar, inusable, disponible, prestado, desaparecido etc. la tabla llamala estado



No hace falta que uses visual basic para manejar estos datos, pero si queres hacerlo, entonces en un formulario nuevo, haces un abl, o sea un alta baja modificaciones.Incluis en proyecto, referencias microsoft ActiveX Data Objetc 2.6 Library, y en el general del formulario declaras la conexion y el recordset.



Public cn As New Connection

Public rs As New Recordset



En el form_load abris la conexion este texto esta para una base de access 2000 o 2002 que se llama libros.mdb y que estara ubicada en la misma carpeta del proyecto junto con los formularios.



If cn.State = 1 Then cn.Close

cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\libros.mdb;Persist Security Info=False"



Luego tendras que hacer un cuadro de texto para cada dato, o una grilla que contenga todos los datos. Para tu uso, la grilla puede ser lo mas conveniente, en este caso, usas microsoft flexgrid, para lo que en proyectos componentes, micrososft flex grid 6.0 Para esto tenes que tener actualizado tu visual con el service pack 5 y 6

Luego tenes que poner las teclas para cada funcion, como buscar, modificar, eliminar, nuevo

Para buscar, por el numero de Id el codigo seria:

dim Id%

id=InputBox"Ingrese el Id a Buscar. "

if Id<>0 then

if rs.state=1 then rs.close

rs.open "Select * from libro where IdLibro = " & Id , cn, adOpenStatic, adLockPessimistic

end if

ya esta cargado el recorset con la consulta

para cargar la grilla

se usa primero el format string, que pone el nombre de los campos en la primera linea. La grilla se llamara gri1( en este caso uso una procedimiento llamado lagrilla)



Public Sub lagrilla()

With Gri1

.Clear

.FormatString = "IdLibro|Nombre|Autor| Tema|Estado"

.ColWidth(0) = 800 'aca defino el ancho de cada columna

.ColWidth(1) = 1800

.ColWidth(2) = 900

.ColWidth(3) = 1300

.ColWidth(4) = 800

.Rows = 1 ' estado inicial despues de los titulos

End With

End Sub



y en el mismo codigo que use para la consulta del buscar llamo al procedimiento y cargo la grilla

lagrilla

if rs.recordcount>0 then

Do While rs.EOF = False

grilla.AddItem rs.Fields(0= & vbTab & rs.Fields(1) & vbTab & rs.Fields(2) & vbTab & rs.Fields(3) & vbTab & rs.Fields(4)

rs.MoveNext

Loop

else

msgbox "No se ha encontrado coincidencia"

end if



y ya esta cargada la grilla

Para buscar por el nombre o el autor igual, solo que en el where de la consulta ponemos where Nombre like '" & nombre & "%'", cn, adOpenStatic, adLockOptimistic

Previamente, habremos declarado una variable de cadena nombre y la habremos cargado con un inputbox

Dim nombre$

nombre="Ingrese Las primeras letras del nombre"



Ese es el buscar, con todas sus opciones



Luego el nuevo registro, al apretar el comando nuevo,

Dim nombre$, autor$,tema$, estado%

Cuando hacemos el inputbox para estado, aclaramos que se debe poner un numero segun el estado. y podemos poner un if que no permita seguir si el numero no esta entre los establecidos



If rs.State = 1 Then rs.Close

cn.Execute "Insert Into Libro (Nombre, Autor, Tema, Estado) Values(' " & nombre & " ', ' " & autor & _

"', '" & tema & "', " & estado & ")"

End If



En este caso, no use el recordset, sino que opere directamente sobre la conexion con el cn.Execute. Si usara el recorset seria



If rs.State = 1 Then rs.Close

rs.Open "Insert Into Libro (Nombre, Autor, Tema, Estado) Values(' " & nombre & " ', ' " & autor & _

"', '" & tema & "', " & estado & ")"cn, adOpenStatic, adLockPessimistic



funciona igualmente



Para modificar, podemos habilitar el buscar, y que al hacer click sobre la grilla nos guarde el Id

Id=gri1.textmatrix(gri1.rowsel,1)

y luego ingresar los datos de nuevo, como si fuera un nuevo registro, y usar la sentencia:

if rs.state=1 then rs.close

cn.Execute "Update Dueño Set Nombre = '" & nombre & "', Autor = '" & _

autor & "', Tema = '" tema & ", Estado = " & estado Where IdLib = " & id



Igual con el recordset

if rs.state=1 then rs.close

rs.Open "Update Dueño Set Nombre = '" & nombre & "', Autor = '" & _

autor & "', Tema = '" tema & ", Estado = " & estado Where IdLib = " & id ,cn, adOpenStatic, adLockPessimistic



Bueno, ya tenes paa entretenerte

Dios te bendiga

Saludos

Antonio
Franchesco S
2009-06-15 15:33:47 UTC
Yo te puedo ayudar, mándame un mail a:



pacpacnew@gmail.com
anonymous
2009-06-15 15:31:07 UTC
si lo que necesitas es un programa buscalo aca que lo encontras seguro.



http://todoprogramaspc.com


Este contenido se publicó originalmente en Y! Answers, un sitio web de preguntas y respuestas que se cerró en 2021.
Loading...