Archive

Archive for the ‘Visual 2005’ Category

convert numbers written in letters to integers

abril 15, 2013 Deja un comentario

 

TextManager is a library for manipulating text and contains many functions including the power that convert a number written in letters to integer

example:

TextManager.ConverterManager.StringToInteger(“en”,”Two”);

DownLoad Library project:

https://github.com/Mteheran/TextManager

Calculador RCL

julio 30, 2010 9 comentarios

Calculador RCL

Calculardor RCL

Calculador RCL es una herramienta que permite calcular los valores de las resistencias, los capacitores y las bobinas, se caracteriza por su fácil manejo y la utilización de herramientas extras como la tabla de resistencias comerciales y la guía para el cálculo manual de resistencias y capacitores.

Resistencia:
para encontrar la resistencia debes ingresar los valores que desees atreves de las listas desplegables recuerda que el valor calculado
va ser el que aparezca en la resistencia y que el resultado estará disponible en 3 tipos de unidades.
Si deseas ver alguna resistencia popular igualmente selecciónalo de la lista de resistencias comerciales y presiona calcular.


Capacitor:

el programa te permite encontrar el valor que representa el código del capacitor solo ingrésalo en la caja de texto situada dentro del capacitor
y utiliza el botón calcular para encontrar su valor correspondiente. El botón nuevo te permite borrar todo para hace un nuevo cálculo.


Bobina:

la bobina tiene 2 utilidades una hallar el número de vueltas para crear la bobina con núcleo de aire y el otro para conocer el tamaño de la bonina teniendo conocimiento de cuantas vueltas tiene y para ambos casos se necesita el diámetro y la longitud de la bobina.
Recuerda que si deseas encontrar el número de vueltas debes por obligación ingresar el valor de la bobina en uH para que el cálculo sea válido.
El botón nuevo como todos los anteriores borra todo y te permite hacer un nuevo cálculo.



Descargar Calculardor RCL



Enviar correo desde Visual Basic .Net – Usando System.Net.Mail.MailMessage

enero 14, 2010 70 comentarios

En .Net existen muchas clases que nos facilitan la vida y nos permiten hacer código más legible, de igual manera pasa con el envió de correo.
Para poder utilizar el envió de correo con .Net necesitamos utilizar los siguientes namespace:

-	System.Net.Mail
-	System.Net

En el siguiente ejemplo quiero mostrarles una pequeña aplicación de escritorio en donde aplico un sistema básico de envió de correo:

Básicamente la interfaz nos permite ingresar los valores básicos para enviar un correo
– Servidor SMTP – Servidor de donde se enviara el correo
– Puerto – Puerto por el cual se conectara al servidor
– Usuario — Usuario para conectarse al servidor SMTP
– Contraseña — Contraseña para conectarse al servidor SMTP
– Para – A quien se le enviara el correo
– Asunto – El asunto del correo
– Contenido: Lo que llevara el correo
Bueno básicamente lo que hacemos es crear un método para hacer un poco más ordenados, capturamos en una variable cada uno de los valores ingresados a la aplicación:

Dim SMTP As String = txtSMTP.Text
Dim Usuario As String = txtUsuario.Text
Dim Contraseña As String = txtContraseña.Text
Dim A As String = txtA.Text
Dim Contenido As String = txtContenido.Text
Dim Asunto As String = txtAsunto.Text
Dim Puerto As Integer = Integer.Parse(txtPuerto.Text)

En el resto de la aplicacion trabajaremos con estas variables, bueno ahora lo que ahcemos es simplemente preparar el correo creando un objeto tipo Mail y un objeto tipo Address para colocarle al correo de quine va remitido de esta manera:

'Declaro la variable para enviar el correo
Dim correo As New System.Net.Mail.MailMessage()
correo.From = New System.Net.Mail.MailAddress(Usuario)
correo.Subject = Asunto
correo.To.Add(A)
correo.Body = Contenido

Luego en el mismo método realizamos la configuración del servidor para ello utilizaremos una credencial para conectarnos al servidor para el caso de .Net es NetworkCredential y para configurar el servidor SmtpClient, de la siguiente manera:

'Configuracion del servidor
Dim Servidor As New System.Net.Mail.SmtpClient
Servidor.Host = SMTP
Servidor.Port = Puerto
Servidor.EnableSsl = True
Servidor.Credentials = New System.Net.NetworkCredential(Usuario, Contraseña)
Servidor.Send(correo)

Por ultimo podemos agregar un mensaje de confirmacion al usuario:

MessageBox.Show("Correo enviado!", "Correo", MessageBoxButtons.OK, MessageBoxIcon.Information)

Como ven es muy fácil y además algo muy usado es casi necesario en las aplicaciones empresariales realizar este proceso espero le sirva y a todos gracias por estar al tanto del blog.

Les dejo las fuentes:

Codigo fuente Enviar correo

Aplicaciones moviles con .Net y C# – Mi primera aplicación movil

diciembre 9, 2009 35 comentarios

Aplicación Mobile en .Net

Desarrollo de software móvil.

En este post quiero mostrar cómo crear una aplicación  y algunas recomendaciones personales sobre técnicas y buenas prácticas para este tipo de aplicaciones utilizando la plataforma .Net.

Bueno primero quiero comentarles que programar en móviles es relativamente fácil independiente de la plataforma de desarrollo que se utilice, el parecido que tienen las aplicaciones móviles es referente a las aplicaciones de escritorio.

Para programar en móviles sin embargo, hay que cambiar la mentalidad de programación, siempre pensamos en crear ventanas, menús y en código en utilizar una programación por capas y estructurada pero sin pensar en la utilización de memoria o rendimiento, para móviles esto tiene mucha relevancia ya que no podemos crear las ventanas, solo se muestra un formulario a la vez o por lo menos en las versiones del mercado, y además tenemos que tener una excelente distribución de memoria no pensando en el tamaño final de la aplicación sino en el procesamiento de la aplicación ya que en un dispositivo móvil tiene bajo rendimiento y se nota el impacto.

Para crear la aplicación vamos a Nuevo proyecto — seleccionamos el lenguaje y el tipo de aplicación es Smart Device.

Para la prueba quise crear una pequeña aplicación que se contara a una base de datos y realizaría algunos procedimientos convencionales.

  1. Crear el menú: es lo más fácil  básicamente podemos ir creando menús y submenús de la misma manera y al darle doble clic accedemos al evento

Bueno  la primera recomendación por cada formulario realizamos un procesamiento especifico esto para mejorar el diseño, pero tener en cuenta mucho el rendimiento en lo que hacemos y no sobrecargar de gráficos o efectos los formularios.

Bueno y este es el código para invocar un formulario ya sea desde el menú o desde algún evento de botón o procesamiento según sea el caso:

fmPresentacion presentacion = new fmPresentacion();

presentacion.Show();

this.Hide();

2.

Manejo de capaz: debemos usar capaz igual que en todas las aplicación sin embargo las aplicaciones móviles al tener poco procesamiento no debemos ser tan rigurosos con cada uno de los métodos que realizamos, les recomiendo utilizar las capas dentro de la misma aplicación, ordenada por carpetas.

3.

Acceso a base de datos bueno el acceso a base de datos se debe realizar de 2 maneras posibles, de manera local en la aplicación utilizando SQL server CE o para mí lo ideal, utilizar un Web service para la capa de datos.

Para este caso  les voy a mostrar como seria de manera local, bueno agregamos la base de datos al proyecto y creamos dataset:

De esta manera es muy fácil acceder a los métodos comunes Update, Insert, Select y Delete

Ejemplo:

public void InsertarDatos(string Nombre, int Cedula, DateTime FechaNacimiento, string Estado)

{

MyDatabaseDataSetTableAdapters.IncritosTableAdapter Adaptador = new DeviceApplication1.MyDatabaseDataSetTableAdapters.IncritosTableAdapter();

Adaptador.Insert(Nombre, Cedula, FechaNacimiento, Estado);

}

public MyDatabaseDataSet.IncritosDataTable SelecionarDatos()

{

MyDatabaseDataSetTableAdapters.IncritosTableAdapter Adaptador = new DeviceApplication1.MyDatabaseDataSetTableAdapters.IncritosTableAdapter();

MyDatabaseDataSet.IncritosDataTable Tabla = new MyDatabaseDataSet.IncritosDataTable();

Tabla = Adaptador.GetData();

return Tabla;

}

Utilización de DataGrid: no es recomendable utilizar mucho los datagrid pero son esenciales para listar datos y ordenar cuando trabajamos con mucha información, la forma de cargarla es exactamente la misma, y nos cambia el método Databing por el método Update sos diferentes pero la función esencial sigue siendo la misma:

Datos dato = new Datos();

MyDatabaseDataSet.IncritosDataTable tabla = new MyDatabaseDataSet.IncritosDataTable();

tabla = dato.SelecionarDatos();

dgLista.DataSource = tabla;

dgLista.Update();

Cualquier duda, inquietud, consejo o recomendación escríbanla en los comentarios,  espero les sirva si necesitan el código fuente también escríbame o dejen el comentario.

CODIGO FUENTE: https://skydrive.live.com/?cid=261445BD18D3146D&id=261445BD18D3146D%21121#

Gracias a todos

 

Miguel Teheran

Que hay del Visual studio 2010?

noviembre 23, 2009 Deja un comentario

Hola a todos quisiera preguntarles que opinan del visual studio 2010, ha recibido muchas críticas de parte y parte.

La mayoría aseguran que esta es una versión con muchas mejoras y que nos hará la vida mucho más fácil a todos los desarrolladores para grandes proyectos de software. Sin embargo para las empresas sobretodo las Pymes es muy precipitada una nueva versión de la plataforma, estar comprando licencias es muy costoso y estar capacitando a los empleados resulta ser algo tedioso y costoso.

Que opinan ustedes?? Por favor dejen su comentario y respondan la encuesta.


 

 

Copiado masivo de datos utilizando la clase SqlBulkCopy y Visual basic .NET

noviembre 23, 2009 13 comentarios

Tienes que realizar una migración de una base de datos?

Tienes que copiar una Excel a una base de datos?

Tienes que copiar toda la información de una griv a una base de datos?

Pues la solución para el caso de .Net es una clase llamada SqlBulkCopy esta clase nos permite copiar un dataset o un datatable a una base de datos siempre y cuando tengan la misma estructura.

Les advierto a todos el hecho de no usar el  SqlBulkCopy rutinariamente no es conveniente ya que esto da pie a errores de inserción y no permite controlar exactamente donde se da el error.

Ejemplo si queremos copiar 5 registros a una base de datos y controlar el hecho de un posible error lo mejor es usar un RollBack si ocurre un error no se guardan los insert  de los registros antes de que se desatara la excepción, de este tema hablare en otra ocasión.

Bien ahora entonces, ¿cuándo usar SqlBulkCopy?

–          Migración de base de datos

–          Copiado de datos desde una estructura Excel

–          Inserción masiva de datos

Bueno ahora veremos un ejemplo de cómo se usa esta clase útil para muchos casos

‘ se usaran los siguientes namespace

Imports System.Data.SqlClient

Imports System.Data.Sql

‘Necesitamos lo usual una conexión, un objeto command y una datatable

Dim cmd As New SqlCommand()

Dim conn As SqlConnection

Dim tabla As New DataTable

‘aca los string de conexion uno para capturar los datos

‘ y el otro para copiar los datos a la otra base de datos

Public cadenaconexionorigen As String = String.Empty

Public cadenaconexiondestino As String = String.Empty

cadenaconexionorigen = "Persist Security Info=False;User ;Password=sa;Initial Catalog=BDOrigen;Data Source=Servidor1\”

cadenaconexiondestino = "Persist Security Info=False;User ;Password=sa;Initial Catalog=BDDetino;Data Source=Servidor2\”

Bueno ahora para realizar un procedimiento sencillo

‘ despues de asignar el conection string abrimos la conexión

connOrigen.Open()

‘ asigno la conexion

cmd.Connection = connOrigen

‘le digo que va hacer de tipo texto

cmd.CommandType = CommandType.Text

‘ seleciono todo de la tabla ya se que se va migrar toda

cmd.CommandText = "SELECT * FROM tCliente"

‘ ejecuto la sentencia, cierro la coenxion y lleno el datatable

cmd.ExecuteReader()

connOrigen.Close()

adaptador.Fill(tabla)

Ahora si a lo que vinimos bueno ya tenemos nuestros datos y vamos a migrarlos a una nueva base de datos usando BulkCopy hacemos esto:

‘abro la conexión de destino

connDestino.Open()

‘ creo el objeto BulkCopy

Dim copia As New SqlBulkCopy(connDestino)

‘le digo la tabla que va migrar

copia.DestinationTableName = “tCliente”

‘copio los datos

copia.WriteToServer(tabla)

‘cierro la conexión

connDestino.Close()

ok como ven que fácil es copiar datos desde un servidor a otro con pocas líneas de código,

ahora bien tuve otro problema al usar esta clase generalmente en las tablas hay un ID que se coloca autoincrementado al momento en que se copia los datos con esta clase él les asigna un nuevo valor a esta columna comenzando desde el valor inicial que tenga en la nueva tabla, así que OJO al realizar la una migración.

Como se soluciona esto? De esta manera:

connDestino.Open()

cmd.Connection = connDestino

cmd.CommandType = CommandType.Text

‘ con este codigo apagamos el campo identidad de toda la tabla antes ‘de insertar

cmd.CommandText = "SET IDENTITY_INSERT t_Cliente ON"

adaptador.SelectCommand = cmd

cmd.ExecuteNonQuery()

‘escribimos sobre la tabla

Dim copia As New SqlBulkCopy(cadenaconexiondestino, SqlBulkCopyOptions.KeepIdentity)

copia.DestinationTableName = "tCliente"

copia.WriteToServer(tabla)

copia.Close()

‘quitamos el comando anterior

cmd.CommandText = "SET IDENTITY_INSERT t_Cliente OFF"

adaptador.SelectCommand = cmd

‘confirmamos y cerramos la conexion

cmd.ExecuteNonQuery()

connDestino.Close()

Espero que les sirva por favor cualquier duda o inquietud me escriben un comentario o me contactan mis datos están en el perfil.