Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Hartigan

#71
Cita de: [D4N93R] en 26 Agosto 2010, 14:30 PM
Lo mejor es que crees un servicio de windows..  :D De esa forma siempre va a estar corriendo..

Saludos!

???, y creo un servicio que lleve a cabo todas las alarmas???? o creo un servicio por cada alarma?? o como??

Esque no es demasiado caótico tener por ejemplo 500 servicios??? uno por cada alarma?
#72
Buenas de nuevo, os comento porque me han surgido varias dudas.

El caso es que en mi agenda he creado un formulario para crear alarmas. Cada alarma tiene una fecha y hora de inicio, y además se establecen propiedades de recurrencia, es decir cuando queremos que se repita esa alarma. Entonces como puedo gestionar todo esto????

Es decir he de crear un timer para cada alarma y que esté continuamente comprobando con la hora local??? o como puedo hacerlo???

Gracias.
#73
Cita de: [D4N93R] en 24 Agosto 2010, 01:11 AM
Puedes utilizar graphics, y controles panel anidados, es una opcion fácil y rápida..

Saludos!

ummm, el tema de graphics lo tengo muy verde la verdad. En cualquier caso usando esto como lo haría???

tendría que crear 30 cuadrados y en cada uno insertar un panel??? o creo un solo cuadrado y lo divido en x casillas mediante lineas???

gracias compi ,)
#74
Vuelvo al tema del calendario. He estado probando ese que habeis puesto de codeproject pero no me termina de convencer porque es para un proyecto de clase y se notaría mucho, entonces me gustaría crear el mio propio. Cual es la mejor forma de crear mi propio control???

Como puedo dibujar los recuadros??? tengo que hacerlo todo mediante Graphics()???

Saludos y a ver si me guíais un poco.

gracias.
#75
Cita de: Guidus en 12 Agosto 2010, 23:08 PM
Que hace el programa exactamente?

Cuando lo corro el server quitando la linea que dices me pone una vantana negra de consola con un mensaje LISTO.

y cuando trato de correr el cliente con los using no corre porque me dice que no tiene MAIN?

Por favor podrias aclararme un poco, soy novato en este asunto, Gracias

deberías de leer un poco que son los sockets. Aquí el compañero explica un poco lo que son pero tienes este otro tutorial que viene más completo:
http://foro.elhacker.net/net/tutorial_sockets_en_c-t165986.0.html

y también tienes google para informarte sobre lo que quieras. xD

Por cierto, muy bueno tutorial D4N3R. xD

Salu2.
#76
Cita de: eLDaviiD en 11 Agosto 2010, 09:52 AM
Espero te sirva esto:
Código (csharp) [Seleccionar]

string first = label1.Text[0].ToString();
label1.Text = label1.Text.Remove(0,1);
label1.Text += first;

Todo eso en un Timer a 100 ms y Listo.
Aunque creo que ya lo habras resuelto, puesto que hace mas de un mes que preguntaste, pero como no vi ninguna respuesta concreta pues te dejo el codigo...
Saludos!!...

Gracias pero al final decidí no usarlo. xDD
#77
Cita de: Novlucker en  9 Agosto 2010, 04:15 AM
Buenas ...

Yo en tu lugar no usaria sqldataadapter para una sentencia tan simple como consultar el número de registros de una tabla, sino que por el contrario utilizaría un procedimiento almacenado en la bbdd.

Por otra parte y siguiendo con lo mismo, tu das por hecho que el número de registros de la tabla es equivalente al id final de la misma, pero esto no necesariamente es así. Supongamos que tu ingresas 10 contactos y eliminas el último, el próximo id será el número 11, mientras que la tabla solo tendrá 10 registros para el count, con lo cual habrá un error en el insert. Te sugiero utilizar la función IDENT_CURRENT

Saludos

Vale así lo haré, pero y como lo hago para leer un solo registro?? con un dataRow???

Cita de: [D4N93R] en  9 Agosto 2010, 04:53 AM
Otras cosas:

  • Reutiliza la conexión.
  • Haces un Select * solo para traerte una columna de un registro?, mejor SELECT TOP 1 COLUMNA FROM TABLA
  • Según el diseño de tu BD cada persona puede tener muchos emails, no se si esto es lo que quieres hacer.

Con respecto a tu error, revisa que no haya data actual en esa tabla de emails.

Saludos

Si no me funciona lo de Nevlucker lo hago así.

Sí, eso es lo que quiero que un mismo contacto pueda tener varios emails. Lo mismo haré para la información personal con el nombre de los hijos...

gracias a los 2
#78
Claro esque yo lo que tenía pensado es integrarlo en emi propio programa ya que estoy haciendo una agenda electronica y necesito eso, un calendario de ese estilo. Estuve probando una vez pero es un caos, y no conseguí nada. Ya volveré a intentarlo a ver si consigo algo.

gracias ;)
#79
Bueno pues tengo un nuevo problema, me explico:

Como sabeis estoy haciendo una agenda electrónica. Para almacenar los contactos tengo una variable id que se autoincrementa en la bdd mi tabla es la siguiente:

Código (sql) [Seleccionar]

CREATE TABLE contactos(
id int IDENTITY NOT NULL,
titulo varchar(50),
nombre varchar(50) NOT NULL,
nombre2 varchar(50),
ape1 varchar(50) NOT NULL,
ape2 varchar(50),
apodo varchar(50) NOT NULL,
direccion varchar(150),
ciudad varchar(20),
provincia varchar(20),
cp varchar(10),
pais varchar(20),
telefono varchar(20),
movil varchar(20),
fax varchar(20),
web varchar(50),
twitter varchar(50),
facebook varchar(50),
direccion2 varchar(150),
ciudad2 varchar(20),
provincia2 varchar(20),
cp2 varchar(10),
pais2 varchar(20),
organizacion varchar(50),
puesto varchar(50),
departamento varchar(50),
oficina varchar(50),
telefono2 varchar(20),
fax2 varchar(20),
sexo varchar(10),
cumple varchar(10),
pareja varchar(50),
aniversario varchar(10),
comentario varchar(1000),
imagen Image,
PRIMARY KEY (ID)

);



Tengo otra tabla para almacenar los emails de los contactos puesto que no se pueden introducir varios en la misma tabla o eso creo y he creado otra tabla de la siguiente manera:

Código (sql) [Seleccionar]

CREATE TABLE email(
id_contacto int NOT NULL,
email varchar (100) NOT NULL,
PRIMARY KEY (email, id contacto),
FOREIGN KEY (id_contacto) REFERENCES contactos (id) ON DELETE CASCADE
);


Lo que hago es introducir en una función primero los datos del contacto, sin los mails, y a continuación obtengo el id e introduzco los mail del contacto en el siguiente código:


Código (csharp) [Seleccionar]

public override bool Nuevo_Email(string correo)
        {
            bool exito = false;

            //Variable para el ide del contacto
            int num_id = 0;

            String sentenciaSql = "SELECT COUNT (*) FROM contactos";


            SqlConnection conexion = null;
            DataTable data_table = null;
            try
            {
                conexion = new SqlConnection(cadena_conexion);
                SqlDataAdapter data_adapter = new SqlDataAdapter(sentenciaSql, conexion);
                data_table = new DataTable();

                conexion.Open();
                data_adapter.Fill(data_table);
                conexion.Close();

                num_id = Convert.ToInt32(data_table.Rows[0][0].ToString());

                String query = "insert into email(id_contacto,email) values(" + num_id + ",'" + correo + "')";

                conexion = new SqlConnection(cadena_conexion);
                conexion.Open();
                SqlCommand cmd = new SqlCommand(query, conexion);
                if ((1 != cmd.ExecuteNonQuery()))
                {
                    MessageBox.Show("Se ha producido un error al acceder a la fuente de datos", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    exito = false;
                }
                else
                {
                    exito = true;
                }
            }
            catch (SqlException ex)
            {
               // MessageBox.Show("No se ha podido guardar en la base de datos", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                exito = false;
            }
            finally
            {
                if (conexion != null)
                {
                    if (conexion.State == ConnectionState.Open)
                    {
                        conexion.Close();
                       
                    }
                }
            }
            return (exito);
               
        }



Pero me da siempre el siguiente error:

ex = {"Instrucción INSERT en conflicto con la restricción FOREIGN KEY \"FK__email__id_contac__164452B1\". El conflicto ha aparecido en la base de datos \"agenda\", tabla \"dbo.contactos\", column 'id'.\r\nSe terminó la instrucción."}

Qué hago mal???

gracias de antemano.
#80
Cita de: [D4N93R] en  6 Agosto 2010, 19:23 PM
Pues ni idea, leete bien la especificación.. :)

sí, es lo que he estado haciendo pero... a mi me parece que lo estoy haciendo bien... no se si esque MS usa algun tipo privado para los contactos aunque no debería porque además el propio outlook es de MS... no se, intentaré a ver si averiguo algo...

Lo mismo me pasa con las fecha del aniversario o el cónyuje, no hay manera que me lo reconozca...

Salu2.