You are on page 1of 6

Pgina principal

Misin y Visin

Contacto

Proyectos

Productos

Estoy en Mercado Libre Crear un punto de venta (2 de 10)


Inicio Anterior Siguiente Final Utilidad para configurar la conexin a la base de datos Continuamos con el proyecto proTienda_MATRICULA. Contenido: Diseo de las pantallas Programacin Diseo de las pantallas: La aplicacin contaba ya con una clase y dos formularios, agregaremos un tercer formulario (frmAppConfig) para que nuestro proyecto se organice as: Punto de venta escolar Punto de Venta Asp.Net

Popular
Crear un punto de venta (1 de 10) Punto de Venta Visual Basic (Parte 1) Crear un punto de venta con ASP.NET y SQL Server (Parte 1) Creacin de un sistema de almacn con C# (Parte 2) Creacin de un sistema de almacn con C# (Parte 1) Creacin de un sistema de almacn con C# (Parte 3) Gantt Chart Control Point of Sale in Visual Basic (Part 1) Creacin de un sistema de almacn con C# (Parte 4) Sistema de Almacn Visual Basic (Parte 2)

Eres escritor latino?


www.palibrio.com/escritores Publica tu libro con Palibrio. Consigue tu gua gratis aqu.

Nota: aqu se muestran otros formularios, los cuales debemos pasar por alto por el momento. Estos se realizarn posteriormente. El nuevo formulario (frmAppConfig), debe quedar como se muestra:

Le agregamos cinco Label, cinco TextBox y tres Button. Segn la siguiente tabla:

converted by Web2PDFConvert.com

Programacin: Antes quiero hacer la aclaracin de que al formulario mdiMain no se le har ningn diseo por el momento. Comenzaremos por escribir el cdigo para frmAppConfig. Estructura del cdigo:
//Directivas Using using System; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Configuration; using System.IO; /* Comentarios: * Programador: Lic. Juan Gabriel Castillo T. * Carrera: Licenciado en Computacin Administrativa * Matricula: 9921868 * Fecha: 15 de Marzo del 2025 * Materia: Lenguaje Visual */ namespace proTienda_9921868.Forms { public partial class frmAppConfig : Form { public frmAppConfig() { //Contructor por defecto InitializeComponent(); } //Declaraciones private void frmAppConfig_Load(object sender, EventArgs e) { //Form_Load } //Funciones y procedimientos } }

En la seccin Declaraciones, agregamos lo siguiente:

Hacemos doble clic al formulario y ponemos el siguiente cdigo en el Form_Load:


//Form_Load txtFileName.Text = ConfigurationManager.AppSettings["DataFile1"]; txtNombreNegocio.Text = ConfigurationManager.AppSettings["NombreNegocio"]; txtRFC.Text = ConfigurationManager.AppSettings["RFC"]; txtTelefono.Text = ConfigurationManager.AppSettings["Telefono"]; txtDireccionFiscal.Text = ConfigurationManager.AppSettings["DireccionFiscal"];

Hacemos doble click en el botn btnOK y agregamos el siguiente cdigo:


if (File.Exists(txtFileName.Text)) { System.Configuration.Configuration config = ConfigurationManager. OpenExeConfiguration(ConfigurationUserLevel.None); //Borramos la configuracin actual config.AppSettings.Settings.Remove("DataFile1"); config.AppSettings.Settings.Remove("NombreNegocio"); config.AppSettings.Settings.Remove("RFC"); config.AppSettings.Settings.Remove("Telefono"); config.AppSettings.Settings.Remove("DireccionFiscal"); config.Save(ConfigurationSaveMode.Modified); //Force a reload of the changed section. ConfigurationManager.RefreshSection("appSettings"); //Grabamos la configuracin nueva config.AppSettings.Settings.Add("DataFile1",
converted by Web2PDFConvert.com

config.AppSettings.Settings.Add("DataFile1", txtFileName.Text); config.AppSettings.Settings.Add("NombreNegocio", txtNombreNegocio.Text); config.AppSettings.Settings.Add("RFC", txtRFC.Text); config.AppSettings.Settings.Add("Telefono", txtTelefono.Text); config.AppSettings.Settings.Add("DireccionFiscal", txtDireccionFiscal.Text); // Save the configuration file. config.Save(ConfigurationSaveMode.Modified); //Force a reload of the changed section. ConfigurationManager.RefreshSection("appSettings"); this.Close(); } else { MessageBox.Show("El archivo de Base de datos no existe!", "Informacin del sistema", MessageBoxButtons.OK, MessageBoxIcon.Error); }

Al botn btnCancel, le agregamos lo siguiente:


this.Close();

Al botn btnSearch, le ponemos el siguiente cdigo:


OpenFileDialog m_OpenFile = new OpenFileDialog(); m_OpenFile.Title = "Buscar Base de datos de Microsoft Access"; m_OpenFile.Filter = "Todos los archivos(*.*)|*.*|Base de datos Access (*.mdb)|*.mdb"; m_OpenFile.FilterIndex = 2; if (m_OpenFile.ShowDialog() == DialogResult.OK) { txtFileName.Text = m_OpenFile.FileName.ToString(); } else { btnOK.Enabled = false; }

Despus abrimos el formulario frmLogin y le agregamos una LinkLabel (lblDataBase), para que el formulario quede como se muestra:

Hacemos soble clic sobre lblDataBase y escribimos el siguiente cdigo:


Forms.frmAppConfig _frmAppConfig = new frmAppConfig(); _frmAppConfig.StartPosition = FormStartPosition.CenterScreen; _frmAppConfig.ShowDialog();

De esta manera, cuando se haga clic sobre la etiqueta, se abrir frmAppConfig. Ahora editamos el cdigo de clsMain, que debe quedar como se muestra (he marcado con negrita la porcin de cdigo que fue afectado):
using System; using System.Configuration; using System.Windows.Forms; using System.IO; namespace proTienda_9921868.Class{ class clsMain{ [STAThread] static void Main() { Forms.frmLogin my_frmLogin = new Forms.frmLogin(); Application.Run(my_frmLogin); if (Forms.frmLogin._Logged == true){ Forms.mdiMain my_mdiMain = new Forms.mdiMain(); Application.Run(my_mdiMain); } else{ Application.Exit(); } } public static string CnnStr { get { string Retorno = ""; string varFileName = ""; try{ varFileName =
converted by Web2PDFConvert.com

varFileName = ConfigurationManager.AppSettings["DataFile1"]; if (File.Exists(varFileName)){ Retorno = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + varFileName + ";" + "Persist Security Info=False"; } else{ MessageBox.Show("El archivo de Base"+ " de datos no existe!", "Informacin del sistema", MessageBoxButtons.OK, MessageBoxIcon.Error); } return (Retorno); } catch (Exception ex) { MessageBox.Show(ex.Message, "Informacin del Sistema", MessageBoxButtons.OK, MessageBoxIcon.Error); return (Retorno); } } } } }

Explicaciones sobre el cdigo: Generalizando. Nuestra aplicacin podr leer la ruta de la base de datos en tiempo de ejecicin. Esto nos da la gran posibilidad de poner nuestra aplicacin en red. Esto nos ayudar a que la base de datos pueda estar localizada en cualquier parte de la Computadora o de la Red. Detalladamente. Tenemos un formulario en el cual podemos, mediante un archivo XML, editar la ruta en la cual se encuentra la Base de datos. Utilizamos objetos que nos permiten Explorar los archivos de windows; parecido a si fueramos a abrir un documento de cualquier aplicacin de Microsoft Office. Utilizamos un Archivo XML el cual es perfectamente legible a nuestros ojos, editable con cualquier editor de texto y ligero en tamao. Modificamos la variable CnnStr y la convertimos en Propiedad, eso nos da una posiblidad mayor en cuanto a lo que podemos realizar. La utilizacin de Propiedades (Properties) en lugar de Campos (Fields) o variables nos permite una mejor administracin de cdigo adems de que nos acerca mas a la programacin Orienntada a Objetos. De hecho, en estos momentos ya hemos realizado este tipo de desarrollo. Hemos creado la clase frmLogin, la cual nos proporciona varias de las caractersticas de la programacin orientada a objetos.

Tambin creamos la clase clsMain

Lo mejor es que antes de programar podamos hacer nuestros diagramas de clase para tener una visin mas clara de lo que tenemos que realizar. Para este proyecto ya me he adelantado en el anlisis para que no tengamos que detenernos en esos aspectos. Se recomienda leer bibliografia sobre UML (Lenguaje Unificado de Modelado) para entender los diagramas.
converted by Web2PDFConvert.com

Suerte

+1 Recomendar esto en Google

Reacciones:

12 comentarios:
Annimo 30 de diciembre de 2010, 11:59 Muy bueno sigo en camino y me gsuta mucho tu ejemplos estoy siguiendo los pasos y nuevamente gracias por el ejemplo .... mi correo es richardt_2000@hotmail.com Responder

Annimo 4 de mayo de 2011, 9:17 no hay nada en la seccion de declaraciones, que declaraciones se tienen que poner???????????? Responder

julio cesar 8 de mayo de 2012, 11:42 me marca error en lo nombres de configurationmanager por k sera eso Responder

m15t3r1050 19 de mayo de 2012, 23:33 porque me marca error en lo nombres de configurationmanager ??? Responder

Simon Rodriguez 5 de junio de 2012, 14:04 Saludos: En la seccion de declaraciones que se tiene que poner? Gracias por este excelente ejemplo y por asistir a los principiantes como nosotros en este tipo de cosas. Responder

Juan Gabriel Castillo 5 de junio de 2012, 16:06 para este caso, nolleva nada, solo en el de login salu2 Responder

Annimo 25 de agosto de 2012, 11:24 hola tengo error en la clase? alguien me puede ayudar en este codigo muestra error, le agradeceria mucho. Forms.frmLogin my_frmLogin = new Forms.frmLogin(); Application.Run(my_frmLogin); Responder Respuestas Annimo 9 de abril de 2013, 14:13 intenta asi: frmLogin Application.Run(my_frmLogin); Responder my_frmLogin = new frmLogin();

converted by Web2PDFConvert.com

Annimo 5 de diciembre de 2012, 15:08 Alguien me podria facilitar la base de datos?? S_Juanito@outlook.com Responder

Annimo 10 de diciembre de 2012, 12:30 estimado en el sector de modificacion del clsmain no hay nada agregado hay algo mas que agregarle pues pusiste "he marcado con negrita" pero no hay nada marcado Responder Respuestas Annimo 10 de diciembre de 2012, 12:32 a proposito esta muy genial el codigo y todo Responder

Annimo 26 de marzo de 2013, 16:34 En la seccion de las declaraciones del FmrAppConfig que hay que poner? Responder

Introduce tu comentario...

Comentar como: Seleccionar perfil...

Publicar

Vista previa

Entrada ms reciente

Pgina principal
Suscribirse a: Enviar comentarios (Atom)

Entrada antigua

Plantilla Awesome Inc.. Con la tecnologa de Blogger.

converted by Web2PDFConvert.com

You might also like