|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - gerloxxx
101
« en: Martes 25 de Mayo de 2010, 01:19 »
Hola, te paso una alternativa a las variables de session: puedes buscar en google acerca de: FormsAuthentication... para darte una idea: despues de comprobar que el usuario y su contraseña es correcta (ya sea desde una base de datos, del Web.config o de donde sea).... creas un ticket para ese usuario: FormsAuthenticationTicket ticket = new FormsAuthenticationTicket (1, "nombre de usuario", DateTime .Now, DateTime .Now.AddMinutes(30), isPersistent, "informacion del usuario logueado***", FormsAuthentication .FormsCookiePath);//Luego encriptas el ticket string encTicket = FormsAuthentication.Encrypt(ticket); // Creas la Cookie Response .Cookies.Add(new HttpCookie (FormsAuthentication .FormsCookieName, encTicket ));//y lo redireccionas Response.Redirect(FormsAuthentication.GetRedirectUrl(txtUsu.Text, true));
***Luego en otras páginas puedes preguntar acerca de la informacion que mandaste del usuario logueado if (Context.User.Identity.Name ..........
por ultimo en el web.config le indicas que la autentificacion es por formas <authentication mode="Forms"> </authentication>
claro existen varias formas de hacer esto, tambien puedes controlar el acceso de las páginas por medio de carpetas... <location path="CarpetaARestringir"> <system.web> <authorization> <deny users ="?" /> </authorization> </system.web> </location>
Saludos
102
« en: Viernes 14 de Mayo de 2010, 01:16 »
Hola te paso unas instrucciones de como puedes trabajar con Excel, despues de crear el objeto puedes escribir en las celdas, dibujar los bordes, insertar imagenes, ponerles color, etc...: With oExcel .Cells.Select() 'Asi seleccionas todas las celdas o asi solo un rango oExcel..Range("B1:M2").Select() With .Selection.Font 'Puedes cambiar la fuente del rango seleccionado anteriormente .Name = "Verdana" .Size = 8 End With .ActiveCell.FormulaR1C1 = "Escribes en la celda seleccionada anteriormente " .Selection.MergeCells = True 'Combinar celdas ...
te dejo una funcion que hice a manera de ejemplo, es muy sencilla y espero que te ayude a trabajar con una hoja de Excel, le pasas el datagridview y lo manda a excel sin preguntar más nada: Public Function ObtColExcel(ByVal intValor As Integer) As String If intValor < 1 Then Throw New Exception("El valor mínimo para la columna debe ser 1") Dim intDiv, intMod As Integer If intValor <= 26 Then Return Chr(64 + intValor) intDiv = (intValor - 1) 26 'numero de letras intMod = intValor Mod 26 intMod = IIf(intMod = 0, 26, intMod) Return Chr(64 + intDiv) & Chr(64 + intMod) End Function Friend Sub ExpExc(ByRef dg As DataGridView) Dim oExcel As Object Dim oHoja As Object Dim strColumna As String Try If dg.RowCount = 0 Then Exit Sub 'Se crea el documento de Excel oExcel = CreateObject("Excel.Application") oHoja = oExcel.Workbooks.Add oExcel.Visible = True Dim r As Integer = 0 Dim c As Integer = 0 For c = 0 To dg.ColumnCount - 1 For r = 0 To dg.RowCount - 2 strColumna = ObtColExcel(c + 1) oExcel.Range(strColumna & r + 1).FormulaR1C1 = dg.Rows(r).Cells(c).Value.ToString() Next Next Catch ex As Exception MsgBox(ex.Message) Finally oHoja = Nothing oExcel = Nothing GC.Collect() End Try End Sub
***Adjunto te dejo una clase un poco más elaborada que encontre hace tiempo en la red, te crea unas dll's capaces de exportar a Excel u Open Office, está en C# pero la verdad vale la pena que les des una revisada... Espero no confundirte con esto, pero cualquier duda no dudes en preguntar.... saludos
103
« en: Viernes 7 de Mayo de 2010, 17:24 »
Hola podrías llenar un ListView y obtener de el el nombre de la pc seleccionada: en google encontre este foro, el ejemplo que probe te arroja los nombres de las pc's:
http:\social.msdn.microsoft.comForumses-ESvbesthread3f564874-e025-4697-8e46-330d841c8c3c
Espero te sirva, saludos
104
« en: Viernes 7 de Mayo de 2010, 03:03 »
¿Ya tienes algo para exportar a excel o vas a empezar con eso?...
si es asi ¿en que parte usas esa funcion para ayudarte a depurarla, y si necesitas empezar desde cero dime para ayudarte un poco con la lógica...
saludos
105
« en: Viernes 7 de Mayo de 2010, 02:20 »
Guardas una referencia del objeto....
http:\es.csharp-online.netTipos_por_Referencia#Pasar_par.C3.A1metros_con_out
Según entendi no necesitas usar la palabra clave ref: "Un tipo por referencia se refiere a un objeto creado en la pila nativa. Son más comunmente referidos como objetos. Las clases, los delegados, las intefaces, y los tipos primitivos Object y String; son tipos por referencia."
"Los parámetros pasados con tipos por referencia no tienen la necesidad de ser pasados con la palabra clave ref."
saludos
106
« en: Jueves 29 de Abril de 2010, 02:30 »
he logrado abrir la ventana nueva agregando al campo Hyperlinkfiel la propiedad:
Target ="_blank"
ahora solo me falta darle forma a la ventana que se abre, como tamaño, y no mostrar menus
107
« en: Jueves 29 de Abril de 2010, 01:26 »
Claro que si se puede, mira esta pregunta: http:\foros.solocodigo.comviewtopic.php?f=49&t=42867 (cambia la por /) y de paso a ver si me puedes echar una mano jeje para recuperar el valor que mandas a la otra pagina lo haces con: Request.QueryString["Como le llames"] No recuerdo bien el foro de donde lo saque, aunque el ejemplo es muy claro, cualquier duda avisas. Lo que muestro en esa pregunta es solo una columna del Gridview (la de los hipervinculos), tienes que definir todas las que ocupes y desactiva AutoGenerateColumns para que no te muestre el listado con tus columnas y mas aparte las de la consulta, lo que te las duplicaría saludos
108
« en: Miércoles 21 de Abril de 2010, 02:59 »
El error esta en el metodo que usas, no es ExecuteNonQuery, usa ExecuteScalar que te regresa el primer valor del select, el ExecuteNonQuery usalo para los INSERT, UPDATE....
espero te sirva, saludos
109
« en: Miércoles 21 de Abril de 2010, 02:38 »
Hola a todos, estoy mostrando un listado en un gridview con ASP 2.0, para ello uso la siguiente línea (tomada de otro foro jeje)
<asp:HyperLinkField DataNavigateUrlFields="IdProducto" DataNavigateUrlFormatString="DescripcionProducto.aspx?id={0}" HeaderText="Producto" DataTextField="IdProducto" DataTextField="IdProducto" NavigateUrl="DescripcionProducto.aspx" />
Con esto abre la pagina DescripcionProducto.aspx con el id del producto, solo que me lo abre en la misma ventana, he leido formas de hacerlo pero es usando un script de java....
mi pregunta es como puedo hacer que al dar clic en el link, lo abra en una ventana nueva....?
saludos a todos
110
« en: Viernes 9 de Abril de 2010, 19:22 »
Hola a todos, cómo puedo hacer un listado donde cada renglon sea el link a la foto del producto (en caso de que dicha foto exista).... La información la obtengo de una base de datos de sql y estoy utilizando C#
gracias por sus comentarios
Saludos a todos
111
« en: Jueves 25 de Marzo de 2010, 18:21 »
Gracias por tu respuesta, les comento lo de la impresora era porque el tamaño que definica en el servidor de impresion superaba el máximo de la impresora, por lo tanto lo no mostraba para asignarlo como predeterminado...
saludos a todos
112
« en: Miércoles 24 de Marzo de 2010, 18:11 »
hola gracias por tu respuesta, lo que me comentas es lo que intento, pero me marca el siguiente error:
Error 2 The best overloaded method match for 'Funcion (ref B, ref System.Data.DataTable)' has some invalid arguments
Error 3 Argument '1': cannot convert from 'A1' to 'ref B'
ya intente ponerle y quitarle el "ref", lo mando como referencia porque quiero que afecte a A1 y A2
por cierto, trabajo con visual estudio 2005 y la clase la estoy usando para una página de asp.net
saludos
113
« en: Miércoles 24 de Marzo de 2010, 02:25 »
hola como puedo hacer lo siguiente en C#?
si tengo una clase base B, y dos clases que heredan de ella... A1 y A2... ¿como puedo hacer una funcion que reciba a B como parametro, y mandarle la referencia de A1 o A2 de forma que esta funcion solo modifique los atributos de la base B sin importar si vienen de A1 o A2...
de antemano gracias por sus comentarios...
saludos
114
« en: Sábado 20 de Marzo de 2010, 20:16 »
Gracias por tu comentario, yo ponia los métodos de guardar, leer... etc, dentro del objeto mismo, algo asi como objeto.guardar(), pero creo que con esto no respeto lo que es la capa acceso a datos...
saludos
115
« en: Sábado 20 de Marzo de 2010, 02:25 »
Hola a todos, tengo poco tiempo con el uso de objetos y tengo unas cuantas dudas con el diseño de mis clases principalmente cuando usan acceso a base de datos... Por ejemplo si tengo una clase "Factura" esta a su vez se compone de una clase "Detalle" donde una factura tiene varios detalles y las dos se componen de una clase para el manejo de la base de datos, entonces si tanto Factura como Detalle tienen un método Guardar() cómo puedo hacer para que cuando guarde la factura igual se guarde el detalle con la misma transaccion ya que si falla el guardado de alguno de sus detalles no tiene caso seguir guardando la factura...
Dónde puedo encontrar ejemplos de clases que me ayuden a mejorar mis tecnicas de programacion?
saludos
116
« en: Miércoles 17 de Marzo de 2010, 20:13 »
gracias por tu ayuda.... use una cuenta de gmail pero descubri que necesitaba otras cosas... aqui dejo el ejemplo que encontre y con lo que funciono a la perfección por si a alguien mas le sirve: (el link de la página no me deja ponerlo pero más o menos es asi: http:__geeks.ms_blogs_jalarcon_archive_2007_06_23_c-243-mo-enviar-correo-electr-243-nico-por-c-243-digo-usando-cuentas-de-gmail.aspx
_ igual a / )
using System; using System.Collections; using System.Net; using System.Net.Mail; using System.Net.Mime;
public class EjemploCorreoGMail { public static void Main() { System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage(); msg.To.Add("destinatario@dominio.com"); msg.From = new MailAddress("micuenta@gmail.com", "Tu Nombre", System.Text.Encoding.UTF8); msg.Subject = "Prueba de correo a GMail"; msg.SubjectEncoding = System.Text.Encoding.UTF8; msg.Body = "Cuerpo del mensaje"; msg.BodyEncoding = System.Text.Encoding.UTF8; msg.IsBodyHtml = false;
//Aquí es donde se hace lo especial SmtpClient client = new SmtpClient(); client.Credentials = new System.Net.NetworkCredential("micuenta@gmail.com", "miclave"); client.Port = 587; client.Host = "smtp.gmail.com"; client.EnableSsl = true; //Esto es para que vaya a través de SSL que es obligatorio con GMail try { client.Send(msg); } catch (System.Net.Mail.SmtpException ex) { Console.WriteLine(ex.Message); Console.ReadLine(); } } }
Saludos
117
« en: Sábado 13 de Marzo de 2010, 02:45 »
Gracias por tu respuesta, esa dirección IP (SmtpMail.SmtpServer = "127.0.0.1"  en ese caso sé que es de ejemplo, pero en la vida real donde la consigo, o como configuro el servidor para que mande el mail. Espero este clara la pregunta ni yo me entiendo jeje.
118
« en: Viernes 12 de Marzo de 2010, 02:25 »
Hola a todos, estoy intentando enviar un correo con asp.net, se muy poco de asp pero según lei es algo como lo siguiente: private void EnviarCorreo() { MailMessage Mmsg = new MailMessage(); Mmsg.From = new MailAddress("correo@servidor.com"); //puede ser una cuenta de hotmail o algo asi? Mmsg.To.Add(txtCor.Text.Trim ()); Mmsg.Subject = txtAsunto.Text.Trim(); Mmsg.Body = txtCom.Text.Trim(); Mmsg.IsBodyHtml = false; Mmsg.Priority = MailPriority.Normal; SmtpClient smtp = new SmtpClient(); smtp.Host = "XXXX"; //DE DONDE OBTENGO ESTE VALOR smtp.Credentials = new System.Net.NetworkCredential("usuario", "contraseña"); //Y ESTOS :s try { smtp.Send(Mmsg ); LabelError.Text = "Mensaje enviado satisfactoriamente"; } catch (Exception ex) { LabelError.Text = "ERROR: " + ex.Message; } Mi duda es, ¿donde consigo el valor para HOST y su correspondiente usuario y contraseña...? Saludos a todos
119
« en: Viernes 19 de Febrero de 2010, 20:41 »
Hola a todos, este problema es muy común, (imprimir desde crystal reports en tamaños de hoja personalizados) normalmente se resuelve añadiendo el tamaño personalizado en Propiedades del servidor, yo lo tengo resuelto de esa forma, solo configuro la impresora a usar para que tome ese tamaño de hoja.... Ahora bien el problema  estoy usando una nueva impresora, pero al querer configurarla simplemente no me muestra el nuevo tamaño que he definido. La impresora es una OKI Microline 421. He notado que si defino una tamaño carta con el nombre que yo quiera si la toma, pero al cambiar las medidas del papel ya no la reconoce. Otra problema, cómo puedo dar seguimiento a mis mensajes en este foro, ya que no me notifica nada al correo y no sé como regresar a ellos?? Gracias por sus comentarios Saludos a todos
120
« en: Martes 29 de Diciembre de 2009, 02:51 »
Hola a todos, tengo un proyecto hecho en foxpro 2.6 para dos, tengo instalado el fox y el kit de distribucion, pero no tengo ni idea como generar un exe. no supe donde poner la pregunta, espero no andar tan desubicado jeje, les agradezco de antemano su ayuda.
saludos
121
« en: Viernes 7 de Agosto de 2009, 21:33 »
Hola a todos, como le puedo hacer para usar una misma transaccion, si tengo dos clases, una base y una derivada, cada una tiene su funcion "guardar" que guarda el registro en una base de datos... de tal forma que cuando le de guardar en la derivada, primero guarde el estatus de la clase base en una tabla y luego el de la derivada en otra tabla. Asi en caso que falle el metodo guardar de la clase derivada, cancele la transaccion.
Saludos a todos
|
|
|