Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 3
Ir a la página 1, 2, 3  Siguiente
 
Sistema De Inventario
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Sistema De Inventario 
 
hola buenas noches/días primero que nada soy nuevo en gambas y vi ciertos tutoriales de su manejo, pero ahora tengo una duda espero y me puedan ayudar

quiero hacer un sistema de manejo de inventarios hasta ahora todo bien sé insertar, de alguna manera editar (sin update) y borrar
pero lo que quiero es:
desde el formulario fncom (compras)
con un txtidp (caja de texto)
y otro llamado txtcan (caja de texto)
sumar lo de txtcan a la cantidad existente que existe en la base de datos

donde la bd es:
tabla Clientes
id
cant

 



 
Lauri - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sistema De Inventario 
 
Hola Lauri.

¿ Qué es txtidp ?. ¿ El código del producto ?. ¿ El campo clave de la tabla productos ?.
¿ Para tí es mejor escribir un código de producto o tener una lista de productos ?.

En cuanto a txtcan. Sera cantidad. ¿ Qué te parece usar un valuebox en vez de un textbox ?.

Deberías leer el valor almacenado en tabla. Si necesitas almacenarlo en una variable para operar, hazlo.
Sumarle a eso el valor de la caja de texto o valuebox (mejor ) y actualizar el valor en la base de datos.

Creo que podría ser:

UPDATE Clientes SET cant = suma
 


La la tabla clientes, solo tienes cantidad..pero cantidad, ¿ de qué exactamente ?.¿ Productos en general  o un tipo de producto ?
Podrías tener un campo en el que identificase el producto y al lado otro de cantidad.

Aunque estoy muy verde en base de datos (aun) espero haberte ayudado un poco.

¿ Estás leyendo algún tutorial  de base de datos ?.

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sistema De Inventario 
 
Hola...
Al utilizar el comando UPDATE de SQL debes indicar qué registro será el que cambiaras... o corres peligro de modificarlos todos según la columna indicada en SET

UPDATE Nombre_tabla
SET nombre_columna = variable [, otra_columna = otra_varible [etc...]]
WHERE [condición]

Pero tu consulta carece de mayor información y me resultó un enrededo entender lo del formulario. Lo que yo entiendo es que quieres guardar cuánto se llevó un cliente y descontar de la tabla productos dicha cantidad.
Por lo que necesitas guardar en alguna variable el ID de tu producto para hacer el UPDATE  de los Productos, y no sé cómo esta tu tabla para indicarte que uses INSERT para guardar la compra el cliente o quizá usar UPDATE. Entonces los productos sería:

1.- Guardar en una variable el ID del producto a modificar (supongamos se llama IDProducto).
2.- En otra variable tienes la cantidad actual (suponiendo se llama cantActual)
3.- En otra tienes la cantidad a comprar (que espero esté validado que no se ingrese una cantidad mayor comparando con cantActual... o quizá hay procedimientos que lo permitan, suponiendo POR EJEMPLO que el negocio tiene una sucursal y puede ir a buscar lo que falta) (supongamos la variable es cantProd)
4.- Validar el formulario de compra o lo que sea. (quizá guardar en una variable el nuevo total, suponiendo otra vez: nuevoTotal = cantActual + cantProd)
3.- Realizar la modificación en la tabla productos con:

UPDATE productos SET cantidad = nuevoTotal  WHERE id_del_producto = IDProducto

Saludos...
 



 
vicr - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sistema De Inventario 
 
Hola vicr:

Estaba siguiendo unos apuntes básicos sobre sql que hemos visto en la comunidad.
En el que se actualizaba el nombre de un registro. Como era un cantidad, no vi con mucho sentido continuar la instrucción.
Por ejemplo este caso, se pude entender mejor que es lo que usa el tutorial.

UPDATE Contactos SET Nombre="Arantza" WHERE Nombre="Basilio";
 


Apuntes básicos de sql

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sistema De Inventario 
 
Citar:

UPDATE Contactos SET Nombre="Arantza" WHERE Nombre="Basilio";


Sí, Shell más rápido y directo tu ejemplo.
Por cierto, miré el enlace con los apuntes y el ejemplo en ese caso funcionaba porque sólo había un registro.

Veré si encuentro mis apuntes de Normalizción de bases de datos que sería bueno que supiera... (eeehh...     recordé que prometí otros apuntes en otro hilo, por otro tema... espero encontrarlos)
 



 
vicr - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sistema De Inventario 
 
gracias a todos pero creo que el problema fue que no fui muy claro lo que pasa es que quiero hacer un programa de control de inventarios  donde en el formulario compras (fncom) se agregara un nuevo valor + el que era existente y después hacer lo mismo para ventas

nombre de la tabla: Productos
campos:
id (id del producto)
producto (nombre del producto)
tipo (tipo del producto)
cantidad ( existencias del producto)
amp (valor en amperes)
vol (valor en vatios)
watt (valor en watts)

en gambas el formulario se llama fncom (compras) donde hay 4 cajas de texto  llamadas:
txtidp1.text (id del proveedor)
txtidp2.text(id del producto)
txtcan.text(cantidad a agregar al inventario)
txtfec.text (fecha de la compra)

y ahora me cuestiono si realmente es un update set where
 



 
Lauri - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sistema De Inventario 
 
vicr escribió: [Ver mensaje]
Citar:

UPDATE Contactos SET Nombre="Arantza" WHERE Nombre="Basilio";


Sí, Shell más rápido y directo tu ejemplo.
Por cierto, miré el enlace con los apuntes y el ejemplo en ese caso funcionaba porque sólo había un registro.


Efectivamente, imagina que hubiera más personas que se llamaran Basilio. Todos cambiarían a Arantza.  
Cosa que no tendría ningún sentido. Habría que darle más datos a la consulta o hacerlo de otra forma.

Como son ejemplos sencillos, no se complica mucho el tutorial. Ya desde el comienzo del mismo, su autor
avisa de que no intenta sustituir un manual, es más bien para recordar cosas básicas que se debe saber como mínimo
para trabajar con SQL y que solemos olvidar.

Lauri:

Creo que puede ser la forma de solucionarlo. Intenta y comenta resultado.
Eso si, hay que hacer la actualización correctamente, lo de la actualización del nombre ha parecido muy sencillo, ya que solo
hay un registro con el nombre de Basilio. Ahora imagina que hay más personas con ese nombre.

Imagina llevar el inventario de una ferretería. Supón el caso de tipos de tornillos, ¿ cuántos tipos puede haber ?.  

http://www.vc.ehu.es/Dtecnico/tema12_05.htm

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
última edición por Shell el Martes, 16 Febrero 2016, 19:18; editado 1 vez 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sistema De Inventario 
 
Lauri dice:
Citar:

lo que pasa es que quiero hacer un programa de control de inventarios donde en el formulario compras (fncom) se agregara un nuevo valor + el que era existente y después hacer lo mismo para ventas

....

y ahora me cuestiono si realmente es un update set where


Pues si el "nuevo valor" que dará sumando "un nuevo valor + el que era existente" lo necesitas, además, reemplazar en el que existía en la BD deberás usar un UPDATE.  Y el WHERE lo usarás para indicar que registro es el que modificas y eso, por lo general, es indicando la clave primaria de dicho registro que en muchos casos es su ID.

Si lo quieres cambiar en pantalla y nada más pues sumas de manera interna los valores y presentas el resultado.

-----

Shell:

No puedo acceder al libro indicado en tu enlace, no lo puedo citar. Pero el ejemplo de UPDATE sin WHERE funcionaba porque era un sólo registro en ese ejemplo.


Citar:

UPDATE Contactos SET Nombre="Arantza" WHERE Nombre="Basilio";


Sí, cambiará todos los campos nombres donde antes decía Basilio por Arantza.
Repitiendo lo que le digo a Lauri es que: por lo general para individualizar un registro en WHERE colocas el campo de clave primaria, que es de carácter único, y que en muchos casos es un valor autoincrementable.

O sea que si tengo una tabla llamada FASES de un trabajo sería:

Tabla: FASES
Columnas:
ID_Fases = clave primaria, autoincrementable
Tipos_fases = Varchar (15)

Y dentro tienes:
ID_Fases  | Tipos_fases
1                | Ingreso
2                | Diagramación
3                | Corte
4                | Armado
5                | Entrega

Y supongamos luego descubres que debe decir "Corte y Armado" y falta "Pintura" puedes hacer lo siguiente:

UPDATE Fases SET Tipos_fases = "Corte y Armado" WHERE ID_Fases = 3;

y aprovechamos el registro 0004 y también lo actualizamos con:

UPDATE Fases SET Tipos_fases = "Pintura" WHERE ID_Fases = 4;

Eso por ahora, saludos.
 



 
vicr - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sistema De Inventario 
 
vicr:

¿ No te parece que poner el número de la clave es algo "abstracto" ?.
¿ Cómo puedes saber que "Corte"  tiene un campo clave con valor 2 ?. Como no se haga con otra consulta..

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Sistema De Inventario 
 
Shell dice:
Citar:

¿ No te parece que poner el número de la clave es algo "abstracto" ?.
¿ Cómo puedes saber que "Corte" tiene un campo clave con valor 2 ?. Como no se haga con otra consulta.


Hola, Shell.
Pues a lo mejor antes de la consulta lo averigüé con un:

Citar:

SELECT * FROM Fases;


jeje  

Por eso en uno de mis mensajes previos le decia a Lauri:

Citar:

1.- Guardar en una variable el ID del producto a modificar (supongamos se llama IDProducto).


Para que considerara guardar ese número referencial muy importante, y trabajara con él.
 



 
última edición por vicr el Martes, 16 Febrero 2016, 23:39; editado 1 vez 
vicr - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Manejo De Inventario jj231089 Bases de Datos 8 Lunes, 09 Septiembre 2013, 15:54 Ver último mensaje
shordi
No hay nuevos mensajes Calcular El Estado Del Inventario jj231089 Bases de Datos 2 Sabado, 16 Noviembre 2013, 19:29 Ver último mensaje
jguardon
No hay nuevos mensajes Crear Bd Inventario Pequeño Con Sqlite3 v3ctor Bases de Datos 8 Miercoles, 18 May 2016, 20:22 Ver último mensaje
shordi
No hay nuevos mensajes Inventario willyanjose Aplicaciones/Fragmentos de Código 5 Viernes, 17 Junio 2016, 15:19 Ver último mensaje
willyanjose
 

Publicar nuevo tema  Responder al tema  Página 1 de 3
Ir a la página 1, 2, 3  Siguiente

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron