Foros aprenderaprogramar.com
Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: ThiDaper en 15 de Junio 2021, 04:20
-
Hola, solicito ayuda con este ejercicio. Este debe incluir una base de datos y un menú grafico, dejo a continuación las instrucciones del ejercicio.
Crear un sistema de inventario básico.
Consideraciones:
1 .- Debe tener un CRUD.
2.- El modelo inicial deberia tener al menos los siguientes atributos
Id_Producto
Descripcion_Producto
Cantidad_Producto
Valor_Producto
Además debería tener la posibilidad de exportar a un txt el inventario actual.
-
he avanzado un poco con el codigo, aun em falta hacer la interzas y las base de datos y todo pero me e pillado con errores y no puedo avanzar mucho, si alguien pudiera ayudarme.
class Program
{
static void Main(string[] args)
{
Hashtable Inventario = new Hashtable();
bool enter_menu = true;
do
{
int optionMenu = PrintMenu();
switch (optionMenu)
{
case 1:
Console.Clear();
Console.WriteLine("Agregar producto");
Inventario();
Console.ReadKey();
break;
case 2:
Console.Clear();
Console.WriteLine("Eliminar producto");
Eliminar_Producto();
Console.ReadKey();
break;
case 3:
Console.Clear();
Console.WriteLine("Buscar producto por Nombre");
Console.ReadKey();
break;
case 4:
Console.Clear();
Console.WriteLine("Vaciar inventario");
Console.ReadKey();
break;
case 5:
Console.Clear();
enter_menu = false;
Console.WriteLine("============================================");
Console.WriteLine(" Programa fuera...");
Console.WriteLine("============================================");
break;
default:
Console.Clear();
Console.WriteLine("============================================");
Console.WriteLine(" E R R O R");
Console.WriteLine("============================================");
Console.ReadKey();
break;
}
}
while (enter_menu);
Console.ReadKey();
}
private static int PrintMenu() //MENU PRINCIPAL
{
Console.Clear();
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine("============================================");
Console.WriteLine("");
Console.WriteLine(" Elija operacíon");
Console.WriteLine("");
Console.WriteLine("============================================");
Console.WriteLine("1.- Agregar Inventario 2.- Eliminar Producto");
Console.WriteLine("3.- Buscar por Nombre 4.- Limpiar Agenda");
Console.WriteLine("5.- Salir");
Console.WriteLine("============================================");
Console.WriteLine("");
int optionMenu = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("");
return optionMenu;
}
private static void Inventario() //AGREGAR PRODUCTO
{
string producto;
int codigo;
Console.Write("Procudto: ");
productro = Console.ReadLine();
Console.Write("Codigo: ");
codigo = Convert.ToInt32(Console.ReadLine());
agenda.Add(nombre, codigo);
Console.WriteLine("Producto: {0} Codigo: {1}", nombre, codigo);
return;
}
private static void Eliminar_Inventario()
{
Console.WriteLine("Ingrese el nombre del contacto: ");
string eliminar = Console.ReadLine();
Inventario.Remove(eliminar);
}
}
}
-
Revisa los nombres de variables, que estás usando.
-No estás usando ninguna agenda, si no un inventario. Tu HashTable se llama Inventario y es ahí donde tienes que agregar los productos
- No tienes ni necesitas ninguna variable "nombre"
- Al leer producto, has escrito mal el nombre, has puesto "productro"
private static void Inventario() //AGREGAR PRODUCTO
{
string producto;
int codigo;
Console.Write("Procudto: ");
productro = Console.ReadLine();
Console.Write("Codigo: ");
codigo = Convert.ToInt32(Console.ReadLine());
agenda.Add(nombre, codigo);
Console.WriteLine("Producto: {0} Codigo: {1}", nombre, codigo);
return;
}
-
he resuelto el ejercicio, me da algunos problemas con la conexión de la base de datos y en la clase de productos, pero por lo demás esta bien a mi parecer
Conexión
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CDatos
{
public class CD_Conexion
{
private SqlConnection Conexion = new SqlConnection("Server=(local);DataBase= Prueba;Integrated Security=true");
public SqlConnection AbrirConexion()
{
if (Conexion.State == ConnectionState.Closed)
Conexion.Open();
return Conexion;
}
public SqlConnection CerrarConexion()
{
if (Conexion.State == ConnectionState.Open)
Conexion.Close();
return Conexion;
}
}
}
Productos
public class CD_Productos
{
private CD_Conexion conexion = new CD_Conexion();
SqlDataReader leer;
DataTable tabla = new DataTable();
SqlCommand comando = new SqlCommand();
public DataTable Mostrar() {
comando.Connection = conexion.AbrirConexion();
comando.CommandText = "MostrarProductos";
comando.CommandType = CommandType.StoredProcedure;
leer = comando.ExecuteReader();
tabla.Load(leer);
conexion.CerrarConexion();
return tabla;
}
public void Insertar(string nombre,string desc,double precio, int stock ) {
comando.Connection = conexion.AbrirConexion();
comando.CommandText = "InsetarProductos";
comando.CommandType = CommandType.StoredProcedure;
comando.Parameters.AddWithValue("@nombre",nombre);
comando.Parameters.AddWithValue("@descrip",desc);
comando.Parameters.AddWithValue("@precio",precio);
comando.Parameters.AddWithValue("@stock",stock);
comando.ExecuteNonQuery();
comando.Parameters.Clear();
}
public void Editar(string nombre, string desc, double precio, int stock,int id)
{
comando.Connection = conexion.AbrirConexion();
comando.CommandText = "EditarProductos";
comando.CommandType = CommandType.StoredProcedure;
comando.Parameters.AddWithValue("@nombre", nombre);
comando.Parameters.AddWithValue("@descrip", desc);
comando.Parameters.AddWithValue("@precio", precio);
comando.Parameters.AddWithValue("@stock", stock);
comando.Parameters.AddWithValue("@id",id);
comando.ExecuteNonQuery();
comando.Parameters.Clear();
}
public void Eliminar(int id) {
comando.Connection = conexion.AbrirConexion();
comando.CommandText = "EliminarProducto";
comando.CommandType = CommandType.StoredProcedure;
comando.Parameters.AddWithValue("@idpro",id);
comando.ExecuteNonQuery();
comando.Parameters.Clear();
}
}
}
public class CN_Productos
{
private CD_Productos objetoCD = new CD_Productos();
public DataTable MostrarProd() {
DataTable tabla = new DataTable();
tabla = objetoCD.Mostrar();
return tabla;
}
public void InsertarPRod ( string nombre,string desc,string marca,string precio, string stock){
objetoCD.Insertar(nombre,desc,marca,Convert.ToDouble(precio),Convert.ToInt32(stock));
}
public void EditarProd(string nombre, string desc, string marca, string precio, string stock,string id)
{
objetoCD.Editar(nombre, desc, marca, Convert.ToDouble(precio), Convert.ToInt32(stock),Convert.ToInt32(id));
}
public void EliminarPRod(string id) {
objetoCD.Eliminar(Convert.ToInt32(id));
}
}
}
me falta agregar la presentacion grafica pero no e podido subir una imagen :d