Publicado el Deja un comentario

Android. Sqlite comprobar campos

Crea metodos o funciones para comprobar si estan vacios o no los campos necesarios para evitar errores.


public boolean conpruebaCampos(){
String codigo=etId.getText().toString();
String nombre=etNo.getText().toString();
String email=etEm.getText().toString();
if (!codigo.equals("")&!nombre.equals("")&!email.equals("")){
return true;
}else{
return false;
}
}
public boolean conpruebaCodigo(){
String codigo=etId.getText().toString();

if (!codigo.equals("")){
return true;
}else{
return false;
}
}
public void borrarCampos(){
etId.setText("");
etNo.setText("");
etEm.setText("");
}

Please follow and like us:
Publicado el Deja un comentario

Android. Modificar Registro

Modificar registros de la base de datos sqlite


public void modificar(View v){
BaseSQLiteOpenHelper base = new BaseSQLiteOpenHelper(this,"agenda",null,1);
SQLiteDatabase bd = base.getWritableDatabase();
String codigo=etId.getText().toString();
String nombre=etNo.getText().toString();
String email=etEm.getText().toString();
ContentValues registro = new ContentValues();
registro.put("codigo",codigo);
registro.put("nombre",nombre);
registro.put("email",email);
int cant=bd.update("persona",registro,"codigo="+codigo,null);
bd.close();
if(cant==1){
Toast.makeText(this, "Se modifico el dato", Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(this, "No existe ese codigo", Toast.LENGTH_SHORT).show();
}
}

Please follow and like us:
Publicado el Deja un comentario

Android. Sqlite borrar registro

Ejemplo para borrar un registro de una base de datos sqlite en Android.


public void borra(View v){
BaseSQLiteOpenHelper base = new BaseSQLiteOpenHelper(this,"agenda",null,1);
SQLiteDatabase bd = base.getWritableDatabase();
String codigo=etId.getText().toString();
int cant=bd.delete("persona","codigo="+codigo,null);
bd.close();
etId.setText("");
etNo.setText("");
etEm.setText("");
if (cant==1){
Toast.makeText(this, "Se borro el registro", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "No existe ese codigo", Toast.LENGTH_SHORT).show();
}
}

Please follow and like us:
Publicado el Deja un comentario

Android. Sqlite, consultas

Continuando con el video del proyecto anterior con sqlite, en este video vemos como realizar consultas a la base de datos.

El codigo añadido es:


public void consulta(View v){
if(!etId.getText().toString().equals("")){
BaseSQLiteOpenHelper base = new BaseSQLiteOpenHelper(this,"agenda",null,1);
SQLiteDatabase bd = base.getWritableDatabase();
String codigo=etId.getText().toString();
Cursor fila =bd.rawQuery("select nombre,email from persona where codigo="+codigo,null);
if(fila.moveToFirst()){
etNo.setText(fila.getString(0));
etEm.setText(fila.getString(1));
}else{
Toast.makeText(this, "No existe persona con ese codigo", Toast.LENGTH_SHORT).show();
}
bd.close();
}else{
Toast.makeText(this, "El campo id no puede estar vacio", Toast.LENGTH_SHORT).show();
}
}

Please follow and like us:
Publicado el Deja un comentario

93 Python. Aplicacion Cajas, ampliacion

Como continuacion del video anterior de creacion de una aplicacion sencilla para guardar datos de las cajas, en el siguiente video se amplia dicha aplicacion, dotandola de una consulta a la base de datos para obtener las ventas entre dos fechas indicadas.

Please follow and like us:
Publicado el Deja un comentario

Aplicacion Cajas Diarias

En el siguiente video podras ver la ultima aplicacion que he creado con el lenguaje de programacion python, es una aplicacion sencilla que al introducirle los datos de efectivo y tarjetas del comercio, genera automaticamente un archivo de texto con los datos necesarios para contabilizar la venta y los cobros, guardando dichos datos en una base de datos sqlite que se puede consultar en cualquier momento.
El codigo completo de la aplicacion esta en github.

Please follow and like us:
Publicado el Deja un comentario

92 Python. Aplicacion Caja diaria

Ejemplo de aplicacion creada con Python, para generar los datos que usaremos para crear los asientos contables requeridos de ventas sobre las cajas diarias.
Es una aplicacion con interfaz grafica en la que se introducen los datos de efectivo y tarjetas de dos tiendas y calcula la venta total, desglosa la base imponible y el iva, pasando seguidamente a guardar los datos en una base de datos sqlite y en un archivo de texto que imprimira inmediatamente.
Puedes ver el codigo completo en github.

Please follow and like us:
Publicado el 2 comentarios

35 Python. Agenda de contactos parte 6 Buscar Datos

Preparamos nuestra aplicacion para realizar busquedas en Sqlite y mostrarla en caso de que exista.

Agenda

#AGENDA PYTHON
#CON SQLITE
#IMPORTA MODULO
from tkinter import *
from BDatos import *
from tkinter import messagebox
#VARIABLES
listado=[]
ANCHO=560
ALTO=540
POSX=400
POSY=400
anchoAlto=(str(ANCHO)+”x”+str(ALTO))
posicionX=”+”+str(POSX)
posicionY=”+”+str(POSY)
colorVentana=”blue”
colorFondo=”blue”
colorLetra=”white”
#funcion pruebas
def mostrarMensaje():
print(“Pruebas”)
#FUNCIONES
def mensaje(titulo,texto):
messagebox.showinfo(titulo,texto)
def listar():
if(len(listado)>0):
#borra lista
listado.clear()
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
consulta.execute(“SELECT id,nombre,apellidos,telefono,email from agenda”)
for i in consulta:
id=(i[0])
nombre=(i[1])
apellidos=(i[2])
telefono=(i[3])
email=(i[4])
listado.append(i)
listado.sort()
conexion.close()
try:
textLista.delete(1.0,END)
except:
mensaje(“Listado”,”error en listado”)
textLista.insert(INSERT,”idtNombrettApellidosttTelefonon”)
for elemento in listado:
id=elemento[0]
nombre=elemento[1]
apellidos=elemento[2]
telefono=elemento[3]
textLista.insert(INSERT,id)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,nombre)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,apellidos)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,telefono)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,”n”)

def limpiar():
ID.set(“”)
nombre.set(“”)
apellidos.set(“”)
telefono.set(“”)
email.set(“”)
def guardar():
no=nombre.get()
ap=apellidos.get()
tf=telefono.get()
em=email.get()
if((no==””)or(ap==””)):
mensaje(“Guardar”,”Faltan datos”)
else:
limpiar()
creaTabla()
inserta(no,ap,tf,em)
mensaje(“Guardar”,”Datos guardados”)
listar()
def modificar():
id=ID.get()
no=nombre.get()
ap=apellidos.get()
tf=telefono.get()
em=email.get()
if((no==””)or(ap==””)or(id==””)):
mensaje(“Modificar”,”Faltan datos”)
else:
try:
limpiar()
modifica(id,no,ap,tf,em)
mensaje(“Modificar”,”Contacto modificado”)
listar()
except:
mensaje(“Modificar”,”Error al modificar”)
def borrar():
try:
id=ID.get()
if(id==””):
mensaje(“Borrar”,”Debes insertar el codigo”)
else:
borra(id)
limpiar()
listar()
mensaje(“Borrar”,”Mensaje borrado”)
except:
mensaje(“Error”,”Error al borrar, inserta codigo”)
def buscar():
id=ID.get()
if (id==””):
mensaje(“Buscar”,”Inserta identificador”)
else:
tupla=busca(id)
nombre.set(tupla[0])
apellidos.set(tupla[1])
telefono.set(tupla[2])
email.set(tupla[3])
mensaje(“Buscar”,”Contacto encontrado”)
#VENTANA
ventana=Tk()
ventana.config(bg=colorVentana)
ventana.geometry(anchoAlto+posicionX+posicionY)
ventana.title(“Agenda”)
#Variables cajas
ID=IntVar()
nombre=StringVar()
apellidos=StringVar()
telefono=StringVar()
email=StringVar()
#Widgets
etiquetaID=Label(ventana,text=”ID:”).place(x=50,y=50)
cajaID=Entry(ventana,textvariable=ID).place(x=130,y=50)
etiquetaNombre=Label(ventana,text=”Nombre:”).place(x=50,y=90)
cajaNombre=Entry(ventana,textvariable=nombre).place(x=130,y=90)
etiquetaApellidos=Label(ventana,text=”Apellidos:”).place(x=50,y=130)
cajaApellidos=Entry(ventana,textvariable=apellidos).place(x=130,y=130)
etiquetaTelefono=Label(ventana,text=”Telefono:”).place(x=50,y=170)
cajaTelefono=Entry(ventana,textvariable=telefono).place(x=130,y=170)
etiquetaEmail=Label(ventana,text=”Email:”).place(x=50,y=210)
cajaEmail=Entry(ventana,textvariable=email).place(x=130,y=210)
textLista=Text(ventana)
textLista.place(x=50,y=240,width=400,height=200)
#Botones
botonAñadir=Button(ventana,text=”Añadir”,command=guardar).place(x=150,y=500)
botonBorrar=Button(ventana,text=”Borrar”,command=borrar).place(x=200,y=500)
botonBuscar=Button(ventana,text=”Buscar”,command=buscar).place(x=250,y=500)
botonModificar=Button(ventana,text=”Modificar”,command=modificar).place(x=300,y=500)
listar()
ventana.mainloop()

BDatos

#SQLITE
import sqlite3
from tkinter import messagebox
#CREA TABLA
def creaTabla():
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
sql=”””CREATE TABLE IF NOT EXISTS agenda(id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
nombre VARCHAR(20) NOT NULL, apellidos VARCHAR(20) NOT NULL, telefono VARCHAR(14) NOT NULL,
email VARCHAR(20) NOT NULL)”””
if(consulta.execute(sql)):
print(“Tabla creada”)
else:
print(“No se pudo crear la tabla”)
conexion.close()
#INSERTAR DATOS
def inserta(nombre,apellidos,telefono,email):
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
datos=(nombre,apellidos,telefono,email)
sql=”””INSERT INTO agenda(nombre,apellidos,telefono,email) VALUES (?,?,?,?)”””
if(consulta.execute(sql,datos)):
print(“Datos guardados”)
else:
print(“No se pudo guardar el dato”)
conexion.commit()
conexion.close()
def modifica(id,nombre,apellidos,telefono,email):
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
consulta.execute(“””UPDATE agenda SET nombre = ?,apellidos = ?,
telefono = ?,email = ? WHERE id= ?”””,(nombre,apellidos,telefono,email, str(id)))
consulta.close()
conexion.commit()
conexion.close()
#BORRAR DATOS
def borra(id):
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
consulta.execute(“DELETE from agenda WHERE id=”+str(id))
consulta.close()
conexion.commit()
conexion.close()
#BUSCAR DATOS
def busca(id):
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
try:
consulta.execute(“SELECT * FROM agenda WHERE id=”+str(id))
for i in consulta:
nombre=i[1]
apellidos=i[2]
telefono=i[3]
email=i[4]
return (nombre,apellidos,telefono,email)
conexion.commit()
conexion.close()
except:
messagebox.shorinfo(“Buscar”,”Error al buscar”)

 

 

Please follow and like us:
Publicado el Deja un comentario

34 Python. Agenda de contactos parte 5 Borrar Datos

Creamos la funcion de borrado de registros.

Agenda

#AGENDA PYTHON
#CON SQLITE
#IMPORTA MODULO
from tkinter import *
from BDatos import *
from tkinter import messagebox
#VARIABLES
listado=[]
ANCHO=560
ALTO=540
POSX=400
POSY=400
anchoAlto=(str(ANCHO)+”x”+str(ALTO))
posicionX=”+”+str(POSX)
posicionY=”+”+str(POSY)
colorVentana=”blue”
colorFondo=”blue”
colorLetra=”white”
#funcion pruebas
def mostrarMensaje():
print(“Pruebas”)
#FUNCIONES
def mensaje(titulo,texto):
messagebox.showinfo(titulo,texto)
def listar():
if(len(listado)>0):
#borra lista
listado.clear()
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
consulta.execute(“SELECT id,nombre,apellidos,telefono,email from agenda”)
for i in consulta:
id=(i[0])
nombre=(i[1])
apellidos=(i[2])
telefono=(i[3])
email=(i[4])
listado.append(i)
listado.sort()
conexion.close()
try:
textLista.delete(1.0,END)
except:
mensaje(“Listado”,”error en listado”)
textLista.insert(INSERT,”idtNombrettApellidosttTelefonon”)
for elemento in listado:
id=elemento[0]
nombre=elemento[1]
apellidos=elemento[2]
telefono=elemento[3]
textLista.insert(INSERT,id)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,nombre)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,apellidos)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,telefono)
textLista.insert(INSERT,”t”)
textLista.insert(INSERT,”n”)

def limpiar():
ID.set(“”)
nombre.set(“”)
apellidos.set(“”)
telefono.set(“”)
email.set(“”)
def guardar():
no=nombre.get()
ap=apellidos.get()
tf=telefono.get()
em=email.get()
if((no==””)or(ap==””)):
mensaje(“Guardar”,”Faltan datos”)
else:
limpiar()
creaTabla()
inserta(no,ap,tf,em)
mensaje(“Guardar”,”Datos guardados”)
listar()
def modificar():
id=ID.get()
no=nombre.get()
ap=apellidos.get()
tf=telefono.get()
em=email.get()
if((no==””)or(ap==””)or(id==””)):
mensaje(“Modificar”,”Faltan datos”)
else:
try:
limpiar()
modifica(id,no,ap,tf,em)
mensaje(“Modificar”,”Contacto modificado”)
listar()
except:
mensaje(“Modificar”,”Error al modificar”)
def borrar():
try:
id=ID.get()
if(id==””):
mensaje(“Borrar”,”Debes insertar el codigo”)
else:
borra(id)
limpiar()
listar()
mensaje(“Borrar”,”Mensaje borrado”)
except:
mensaje(“Error”,”Error al borrar, inserta codigo”)
#VENTANA
ventana=Tk()
ventana.config(bg=colorVentana)
ventana.geometry(anchoAlto+posicionX+posicionY)
ventana.title(“Agenda”)
#Variables cajas
ID=IntVar()
nombre=StringVar()
apellidos=StringVar()
telefono=StringVar()
email=StringVar()
#Widgets
etiquetaID=Label(ventana,text=”ID:”).place(x=50,y=50)
cajaID=Entry(ventana,textvariable=ID).place(x=130,y=50)
etiquetaNombre=Label(ventana,text=”Nombre:”).place(x=50,y=90)
cajaNombre=Entry(ventana,textvariable=nombre).place(x=130,y=90)
etiquetaApellidos=Label(ventana,text=”Apellidos:”).place(x=50,y=130)
cajaApellidos=Entry(ventana,textvariable=apellidos).place(x=130,y=130)
etiquetaTelefono=Label(ventana,text=”Telefono:”).place(x=50,y=170)
cajaTelefono=Entry(ventana,textvariable=telefono).place(x=130,y=170)
etiquetaEmail=Label(ventana,text=”Email:”).place(x=50,y=210)
cajaEmail=Entry(ventana,textvariable=email).place(x=130,y=210)
textLista=Text(ventana)
textLista.place(x=50,y=240,width=400,height=200)
#Botones
botonAñadir=Button(ventana,text=”Añadir”,command=guardar).place(x=150,y=500)
botonBorrar=Button(ventana,text=”Borrar”,command=borrar).place(x=200,y=500)
botonBuscar=Button(ventana,text=”Buscar”,command=mostrarMensaje).place(x=250,y=500)
botonModificar=Button(ventana,text=”Modificar”,command=modificar).place(x=300,y=500)
listar()
ventana.mainloop()



BDatos

#SQLITE
import sqlite3
#CREA TABLA
def creaTabla():
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
sql=”””CREATE TABLE IF NOT EXISTS agenda(id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
nombre VARCHAR(20) NOT NULL, apellidos VARCHAR(20) NOT NULL, telefono VARCHAR(14) NOT NULL,
email VARCHAR(20) NOT NULL)”””
if(consulta.execute(sql)):
print(“Tabla creada”)
else:
print(“No se pudo crear la tabla”)
conexion.close()
#INSERTAR DATOS
def inserta(nombre,apellidos,telefono,email):
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
datos=(nombre,apellidos,telefono,email)
sql=”””INSERT INTO agenda(nombre,apellidos,telefono,email) VALUES (?,?,?,?)”””
if(consulta.execute(sql,datos)):
print(“Datos guardados”)
else:
print(“No se pudo guardar el dato”)
conexion.commit()
conexion.close()
def modifica(id,nombre,apellidos,telefono,email):
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
consulta.execute(“””UPDATE agenda SET nombre = ?,apellidos = ?,
telefono = ?,email = ? WHERE id= ?”””,(nombre,apellidos,telefono,email, str(id)))
consulta.close()
conexion.commit()
conexion.close()
#BORRAR DATOS
def borra(id):
conexion=sqlite3.connect(“agenda.db”)
consulta=conexion.cursor()
consulta.execute(“DELETE from agenda WHERE id=”+str(id))
consulta.close()
conexion.commit()
conexion.close()

 

Please follow and like us: