Por Geymer Morales Cruz

Compartiendo Información...

Tips para informáticos

Tips para informáticos nace gracias a esas pequeñas necesidades que muchas veces nos complican el desarrollo de una aplicación, espero les sea de utilidad los códigos facilitados.

Códigos fuentes para aplicaciones de escritorio

Aca podras encontrar esa ayuda necesaria para sacar adelante tu aplicación, esos pequeños códigos fuentes que son fundamentales para que nuestro metodo funcione, además la funcionalidad de bases de datos fundamentales para el manejo de nuestros datos.

Códidos fuentes para aplicaciones web

Actualmente las aplicaciones web son fundamentales en las organizaciones, es por eso que estos tips te ayudaran a sacar adelante tu aplicación web.

Códigos fuentes Android

Con el incremento en los Smartphone, las app para estos dispositivos son fundamentales, es por esto que acá tendrás esas pequeñas bases para que puedas realizar tus app.

Códigos Fuentes Windows Mobile

Para los que han trabajado con las Pockets PC o Handheld, los métodos y códigos que encontraras te ayudaran en esos métodos importantísimos en tu aplicación.

Mostrando entradas con la etiqueta Visual C#. Mostrar todas las entradas
Mostrando entradas con la etiqueta Visual C#. Mostrar todas las entradas

Actualizar o Insertar un Registro en una sentencia ORACLE Y SQL Server

Hola buenas como están, hoy le compartiré un artículo interesante y útil para todos aquellos que desarrollan día a día, A continuación veremos cómo hacer una inserción o actualización en una misma sentencia(Actualizar o Insertar un Registro en ORACLE  Y SQL Server en la misma sentencia), resulta que a partir de la versión 9i de Oracle Database y a partir de SQL Server 2008 se incorpora una novedosa sentencia llamada MERGE(ahora es parte del estándar ANSI SQL). comúnmente cuando queríamos insertar/actualizar una tabla no vacía teníamos que hacer un INSERT o UPDATE, Con MERGE podemos tener esta lógica en una única sentencia SQL y así simplificamos el código.

A continuación les muestro la sintaxis de MERGE:
MERGE TABLA
USING (SELECT @ID AS ID) AS SRC ON SRC.ID = TABLA.ID
WHEN MATCHED THEN
UPDATE SET Campo1 = @Valor
WHEN NOT MATCHED THEN
INSERT (Campo1,ID) VALUES (@Valor,@ID)

En la línea 1 indicamos nuestra tabla en la cual se van a insertar los datos al igual que el select en la línea 2.
En línea 3 y 4 es donde le indicamos que si coinciden los campos anteriores realice entonces una actualización de ese registro, caso contrario en la línea 5 y 6 en donde indicamos que inserte el dato.
Existen varias soluciones para realizar este proceso de inserción o actualización en una sola sentencia ya sea en SQL Server o en Oracle, la siguiente personalmente la utilizaba antes para mis sistemas, pero por eficiencia utilizo mejor MERGE que anteriormente se los explique, de igual manera les comparto la solución.

La estructura de la consulta es la siguiente:

BEGIN
INSERT INTO MITABLA
(CAMPO1,CAMPO2;CAMPO3,CAMPO4) VALUES (1,'2','MIDESCRIPCION','MIDESCRIPCION2');
EXCEPTION
WHEN DUP_VAL_ON_INDEX THEN
UPDATE MITABLA 
SET CAMPO2=22,CAMPO3='OTRADESCRIPCION',CAMPO4='OTRADESCRIPCION'
WHERE CAMPO1='PARAMETRO_ID' ;
END;

En una explicación breve, en la line 2 y 3 le indicamos que realice la inserción común y corriente, lo interesante acá sucede en la línea 4 y 5 que es donde le indicamos que si los campos llaves que definimos en la tabla se duplica entonces esto produce una excepción de duplicidad de llaves por lo que se ejecutara la siguiente instrucción que se refiere  6,7,8 en donde hacemos el UPDATE normal obviamente con el WHERE indicándole también nuestros campos llaves.

Espero les funcione y que les sea de mucha utilidad la información, será hasta la próxima saludos.

Envio de Correos Desde C#

Hola de nuevo, he estado aprendiendo poco a poco el lenguaje de programación C# que dia a dia me gusta más, en este primer artículo os enseñare a enviar un correo electrónico desde un programa hecho en esta poderosa herramienta con que contamos los desarrolladores ..
En primer lugar diseñamos una ventana más o menos como esta…




Una ves diseñada esta ventana en el botón enviar programamos lo siguiente:

System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();
msg.To.Add("destinatario@hotmail.com");

msg.From = new MailAddress("emisor@gmail.com", "Usuario", System.Text.Encoding.UTF8);
msg.Subject = "ES UNA PRUEBA";
msg.SubjectEncoding = System.Text.
Encoding.UTF8;
msg.Body = "HOLA HOLA ES UNA PRUEBA";
msg.BodyEncoding = System.Text.
Encoding.UTF8;
msg.IsBodyHtml = false;


String sFile = @"C:\Users\Programador\Desktop\Enviar_Correos\DocAdjunto.docx";
Attachment oAttch = new Attachment (sFile);
msg.Attachments.Add(oAttch);

SmtpClient client = new SmtpClient();
client.Credentials = new System.Net.NetworkCredential("em
isor@gmail.com", "clavecredenciales");
client.Port = 587;
client.Host = "smtp.gmail.com";
client.EnableSsl = true;
try
{

client.Send(msg);
}
catch (System.Net.Mail.SmtpException)
{

MessageBox.Show("Error");
}

Los Puntos más importantes a destacar aquí son los siguientes:

1 - En Este punto agregamos el correo a donde enviaremos la información

msg.To.Add("destinatario@hotmail.com");

2 - Aca asignaremos el correo de donde envio el mensaje en este caso es en gmail, igual pueden utilizar el de hotmail etc, aparte en Usuario pueden poner su nombre o cualquier otra palabra, esta se mostrara a la persona que le llegue el e-mail

msg.From = new MailAddress("emisor@gmail.com", "Usuario", System.Text.Encoding.UTF8);

3 – Aca escribimos el asunto del correo electronico a enviar

msg.Subject = "ES UNA PRUEBA";

4 – Asi como el mensaje a enviar

msg.Body = "HOLA HOLA ES UNA PRUEBA";

5 – Muy interesante si deseas adjuntar algun archivo solamente le asignas la direccion del mismo, cabe mencionar que puedes utilizar controles para que las direcciones de los archivos no sean fijas por ejemplo el OpenFileDialog que trae Visual Studio

String sFile = @"C:\Users\Programador\Desktop\Enviar_Correos\DocAdjunto.docx";
Attachment oAttch = new Attachment (sFile);
msg.Attachments.Add(oAttch);


6 – Los credenciales es muy importante, en este caso seria tu cuenta en gmail asi como tu contraseña de acceso, el puerto varia depende del servidor smtp ademas esta direccion smtp varia tambien dependiendo de que correo desees utilizar para hacer uso de la herrramienta

SmtpClient client = new SmtpClient();
client.Credentials = new System.Net.NetworkCredential("em
isor@gmail.com", "clavecredenciales");
client.Port = 587;
client.Host = "smtp.gmail.com";


Esto adaptado al diseño del formulario se veria algo asi:



Importante ¡¡¡ no se les olvide importar las siguiente librerias...

using System.Collections;
using System.Net;
using System.Net.Mail;
using System.Net.Mime;


Listo¡¡¡ asi de facil se envian correos electronicos desde C#



Hasta la Proxima ¡¡¡¡



-->