Entradas

Mostrando las entradas de 2005

Actualizacion de Agosto

Revisando el blog, me doy cuenta que no puse actualización alguna durante el mes de agosto.
No es, que estuviera desconectado o sin hacer algo, simplemente he estado usando el mismo código, una y otra vez con el fin de terminar la migración en la empresa.
Que espero terminar en estos dias.

Estoy comenzando la aplicación para el control de pacientes en un consultorio medico.
Usando tecnologia ASP.Net 2.0 beta. Pronto tendre más información al respecto.
Algunas novedades en cuanto a software en lo que va del mes:
FastStone Image Viewer. Creo que dejaré de usar Irfan Viewer por esta aplicación, lo mejor es que permite hacer renombrar, cambiar tamaño, etc. de forma automática para muchos archivos.Acid XPress. Una aplicación para crear musica tomando como partida loops. Es una aplicacion de SONY, es gratuita (no es OSF) y ahi mismo en sony se pueden obtener algunos loops.Konfabulator. Mas que una aplicacion es una plataforma sobre la cual se pueden desarrollar miniaplicaciones (widgets). La empr…

Software - D4Modelizer

Leyendo en PCActual, encontre la recomendacion de esta aplicación o asistente o no se como llamarle. Lo que hace es tomar una base de datos (aún access) y crea todas las funciones que permitiran interactuar con la misma base de datos.
Me gustaria ver que esta aplicacion se integrara con el proyecto Gentle .Net, pero lo interesante es que las funciones que crea D4Modelizer, estan listas para usarse.
www.d4modelizer.com

Lastima que no use esta herramienta antes de empezar con mi aplicacion. Tal vez para la próxima versión.

Listo!

Software - JDiskReport y Allway Sync

Un par de recomendaciones para la lista de software:
JDiskRerport: En esta ocasion un analizador de discos duros (no lo he intentado con unidades de USB), realizado en Java, pero honestamente de las mejores aplicaciones en cuanto a rapidez, interface y sentido practico.La empresa que lo desarrolla, tiene disponible unas librerias para java de swing, supongo que por eso el diseño tan moderno. Se ve que tienen experiencia en el desarrollo java.
http://www.jgoodies.com/freeware/jdiskreport/Allway Sync: Esta utileria permite sincronizar dos directorios. Lo cual es muy util como una herramienta de respaldo. Es un poco lento a la hora de analizar las diferencias entre dos directorios, pero funciona bien y por supuesto como todas mis recomendaciones freeware o en su caso opensource.
Debo agregar que intente instalar iFolder 3.0, una utileria que estan desarrollando en el esquema de Mono, pero honestamente me parecio un monstruo come-recursos, traga memoria como loco y deja trabajando el proces…

Codigo ASP.Net - Usando el componente Calendar.

Imagen
Despues de varias semanas regreso al blog. La razón fué un trabajo para la SEP, que no involucró programación, sólo diseño. En un post mas adelante comentaré este asunto, por lo pronto y regresando a la aplicación de la oficina.
En esta ocasión utilice el componente Calendar en la aplicación, de verdad que es muy práctico, y me olvio de estar haciendo conversiones por aquello de los regionalismos.
Por otra parte el usuario no tiene que escribir mal la fecha... ;).
Es asi que el código es el siguiente:

< id="btnCalendar" onclick="btnCalendar_Click" runat="server" imageurl="/images/calendar1.gif">
< /asp:ImageButton >

< id="Calendar1" runat="server" size="8pt" visible="False" forecolor="Black" onselectionchanged="Calendar1_SelectionChanged" cellpadding="4" daynameformat="FirstLetter" bordercolor="#999999" names="Verdana" height="180px…

Codigo ASP.Net - Leyendo un URL remoto.

Despues de casi dos semanas, regreso a publicar. Había estado realizando diseño grafico. Nada de programación. Y el pasado viernes estuve investigando sobre peticiones web, algo asi como un servicio web, pero sin serlo.
Resulta que en la empresa contratamos un servicio que verifica un número de serie y como respuesta nos proporciona los dato del producto que se esta buscando, digamos, modelo, lugar de fabricación, categoria, etc.
Ahora bien, el resultado es una cadena de texto. Ni siquiera es XML, es una simple cadena de texto con el Pipe () como delimitador de los campos.
Habian varios puntos que se tenian que considerar, primero la seguridad. No podia proporcionar a todo el personal de la empresa el usuario y la contraseña, sobre todo para que no le den mal uso.
El segundo, tenia que escribirse manualmente el URL, lo cual no es muy practico.
Y tercero, no existia diseño alguno en la respuesta de la información ( ni siquiera el uso de negritas).
Es asi, que me di a la tarea de implementar …

Codigo ASP.Net - Asignar una columna de un DataReader a una varible en WebMatrix

Hace tiempo que quiero usar las funciones que se generan con el Wizard Code de Web Matrix, pero creando un DataReader en lugar de DataSet.
Por fin entendi, que no se puede tener acceso directo a los Items del DataReader. Lo cual no me agrada mucho, pero ya solucione el problema. Sobretodo en los casos de leer un registro de la tabla.
Lo que yo habia estado intentando durante todo este tiempo.
Aqui la funcion:

Function obtenLotexID(ByVal iDLote As Integer) As System.Data.IDataReader
Dim connectionString As String = System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_STRING")
Dim dbConnection As System.Data.IDbConnection = New System.Data.OleDb.OleDbConnection(connectionString)

Dim queryString As String = "SELECT [Lotes].* FROM [Lotes] WHERE ([Lotes].[IDLote] = @IDLote)"
Dim dbCommand As System.Data.IDbCommand = New System.Data.OleDb.OleDbCommand
dbCommand.CommandText = queryString
dbCommand.Connection = dbConnection

Dim dbParam_iDLote As System.Data.IDataPara…

Codigo ASP.Net - Agregar una grafica de datos.

Estuve buscando en Internet alguna solución para poner una pequeña grafica de barras o circular en una de las pantallas, de la aplicación de la empresa. Siempre había usado html para esto, una combinación de Css y las etiquetas de Table,Td y Tr. Pero en esta ocasion decidí que ya era tiempo de usar un verdadero gráfico. Además que si tenía toda la intención de usar un gráfico circular y en definitiva eso no se puede con html.

Existen varios controles comerciales entre ellos .netcharting, fxChart, etc. y de verdad baje la evaluación y me parecieron buenísimos, pero el precio no tanto.

Por ahi baje uno que tiene tiempo que es bastante famosillo y que se puede encontrar en www.carlosag.net llamado WebChart. Lo probe y no me gustó sinceramente no me gustó el tipo de graficos que genera. Es gratuito, muy sencillo y pero se ve muy burdo, asi que lo deseche.

Pero ayer como a eso de las 2:00 am, navegando en mi casa con la red inalámbrica de mi vecino (;)), encontré un maravilloso control. Solo …

Codigo ASP.Net - Usando el objeto HashTable

La idea era usar un arreglo (array) dentro de una de las aplicaciones. Esto generalmente lo uso bastante, y aun cuando en Asp es muy sencillo de usar y dimensionar un arreglo o array. En Asp.Net me encontre con la novedad de que existe 3 tipos diferentes de collecciones para un arreglo.

ArrayListHashTabley SortedList
Tome como base una funcion select de Web Matrix dentro de una pagina. Realice una modificacion a la consulta y al final de las modificaciones la funcion me regresa un HashTable en lugar de un dataset.
Aun cuando se puede utilizar directamente un join en la tabla directamente para que me dieran los resultados me gusta usar arreglos para designar los diferentes titulos a valores de una tabla que se usa como llave secundaria.
Codigo:

Function obtenBancos() As HashTable
Dim connectionString As String = System.Configuration.ConfigurationSettings.AppSettings("CONNECTION_STRING")
Dim dbConnection As System.Data.IDbConnection = New System.Data.OleDb.OleDbConnection(connection…

FCKEditor en asp.net

Durante ayer y hoy he estado revisando el editor wysiwyg para paginas de FCKEditor.
Ya tenia tiempo que lo habia visto, en un par de ocasiones estuve a punto de usarlo, para ser mas especifico, implementarlo en PhpNuke, pero finalmente no lo habia usado.
Como estoy delegando algunas tareas y la persona que hará los cambios en el sitio web de la empresa no sabe de html, decidí que seria practico (en lugar de dar clases de html) agregar este editor.
Lo mejor del editor es el hecho que es muy estable, esta muy probado y tienen mucho tiempo desarrollandolo.

No hay mucha información para la instalación, por un minuto pense que con bajar el paquete .Net seria suficiente pero no. En realida el archivo .dll es simplemente es una extension del webcontrol para TextArea. Es asi que se requiere bajar el paquete completo, y ponerlo en una carpeta desde raiz.

Ahora bien se puede editar el codigo fuente del control para realizar las personalizaciones correspondientes, ahi para quien guste, me quedo con …

Codigo ASP.Net - Contar registros distintos de una tabla

Use como siempre el wizard de Web Matrix para realizar un select. Modifique la cadena de consulta para contar los disitintos registros de la tabla y en lugar de generar un dataset o datareader la funcion genera un integer:


Function cuentaPC(ByVal iDSubasta As Integer) As Integer
Dim connectionString As String = System.Configuration.ConfigurationSettings.AppSettings("Mi_CONNECTION_STRING")
Dim dbConnection As System.Data.IDbConnection = New System.Data.OleDb.OleDbConnection(connectionString)

Dim queryString As String = "SELECT Count([Paletas].[IDPaleta]) as CuentaPaletas FROM (SELECT DISTINCT [Paletas].[IDPaleta] FROM [Paletas], [Lotes] WHERE (([Paletas].[IDPaleta] "& _
"= [Lotes].[IDPaleta]) AND ([Paletas].[IDSubasta] = @IDSubasta)))"
Dim dbCommand As System.Data.IDbCommand = New System.Data.OleDb.OleDbCommand
dbCommand.CommandText = queryString
dbCommand.Connection = dbConnection


Dim dbParam_iDSubasta As System.Data.IDataParameter = New System.Data.OleDb.OleD…

Databinding usando Iif

En muchas ocasiones requiero de colocar un valor boleano en alguna de las columnas de los datagrid. Y el codigo es sencillo:

< /asp :label text='
< % # IIf (Container.DataItem("Activacion"),"SI","NO") % >
' > < / asp:label >

Listo!

SQL Tutorial

Siempre ando perdiendo esta pagina. Es un tutorial de w3schools.com. Es muy sencillo pero muy útil.

SQL Tutorial

¿No usar DataSets?

Acabo de leer el artículo en 4guysfromrolla. Me parecio interesante hacer la prueba, sobretodo porque se menciona que se puede aumentar hasta en 30 veces la velocidad de lectura de la base de datos. Y... sí efectivamente, es más rapido. Modifique el codigo para generar un DataReader en lugar de DataSet, y la diferencia fue asombrosa y de forma inmediata.


ASP.NET.4GuysFromRolla.com: Why I Don't Use DataSets in My ASP.NET Applications
Listo!

Ordenación (sort) con Web Matrix

Web Matrix contienen un control llamado MxDataGrid, que se supone es una version mejorada del control DataGrid. La verdad es que no lo encuentro tan amigable despues de todo. Razones:

No contiene la opcion de "Formato Automatico" como el DataGrid normal, Existe poca información sobre su uso.El sort u ordenamiento, asi como la paginación no es tan inmediata, si se tiene que modificar el codigo.Asi que con lo anterior, recomiendo usar el DataGrid normal.

Estuve posponiendo, por esto mismo, el agregar ordenacion en mis pantallas que contienen un data grid, pero por fin lo resolví y no estuvo tan complicado.
Algo que debo mencionar, es que pensé que el DataGrid haria el ordenamiento por mi, que no tendria que codificar algo para esto. Error!.
Pero no fue tan complicado, primero modifique la función "select" que se genera con los code wizards de Web Matrix.


Ejemplo:
Function obtenLotesxSubasta(ByVal iDSubasta As Integer) As System.Data.IDataReader
Dim connectionString As Strin…

PDFCreator 0.8

Creo que olvide mencionar en mi lista de software, estoy haciendo la modificacion en el post anterior. Pero creo que puedo platicar un poco mas de él, en esta ocasión.
Lo que me parece grandioso de PDFCreator es que se instala como una impresora dentro del ambiente de windows, es asi que se puede generar cualquier cosa en formato PDF. Porque gastar en Adobe Acrobat, cuando esta herramienta hace un excelente trabajo.
Es cierto que no genera todas las opciones de Acrobat, pero sinceramente quien las necesita.
Cuando se envia o se usa un archivo PDF, es simplemente por seguridad para que no esten modificando el archivo, de otra manera mejor enviar el archivo .doc o .xls o lo que sea.
Se instala el PDFCreator y tiene un archivo de inicio en español que habra que obtener de forma independiente. http://sector7g.wurzel6.de/pdfcreator/index_en.htm o en http://sourceforge.net/projects/pdfcreator/
Listo!

Anim FX banners en Flash

Instale Anim-FX en su version de prueba y simplemente no me gusto. Despues de varios intentos con Swish y pensando en crear el banner de la empresa en Gif Animado. Simplemente me decidi por unos templates gratuitos que andaban por ahi, y lo tuve que hacer en Flash MX.
Creo que perdí mas tiempo en estar buscando como hacerlo que en realidad hacerlo.
Espero que se acepte.
Listo!

Dar formato de moneda a un string.

Codigo ASP.Net - Leer un registro de una tabla.

A continuación un snippet, que siempre ando olvidando a la hora de leer un registro de una table:intIDLote = Request.QueryString("lote")
Dim drLote As System.Data.DataRow
drLote = obtenLotexID(intIDLote).Tables(0).Rows(0)
Titulo.Text = drLote.Item("Titulo")

La siguiente funcion se genera en Web Matrix. Recuerda que tiene que ser un DATASET, y no un DataReader.Function obtenLotexID(ByVal iDLote As Integer) As System.Data.DataSet
Dim connectionString As String = System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_STRING_connGabasys")
Dim dbConnection As System.Data.IDbConnection = New System.Data.OleDb.OleDbConnection(connectionString)

Dim queryString As String = "SELECT ...... ([Lotes].[IDLote] = @IDLote))"
Dim dbCommand As System.Data.IDbCommand = New System.Data.OleDb.OleDbCommand
dbCommand.CommandText = queryString
dbCommand.Connection = dbConnection

Dim dbParam_iDLote As System.Data.IDataParameter = New System.Data.OleDb.OleDbParameter

Lista de Software que uso

Mucha gente cree que uso software pirata, pero no es asi. Lo que intentó usar la mayor parte del tiempo es software Open Source; es asi que a continuacion mi lista de open source:
Filezilla - Programa para realizar ftp, es muy bueno y vino a sustituir al buen ws_ftp que utilice por mucho tiempo. http://filezilla.sourceforge.net7Zip - Programa de compresion, que aun cuando XP permite abrir y crear archivos .zip, la verdad es que me encuentro en internet con otros tipos de archivos entre ellos .rar, .gz, .ace, etc. Este programa es un poco rudimentario, no es tan amigable. Pero funciona, y me evito tener WinZip. http://www.7zip.orgRealVNC - ¡Que haria sin VNC! Ha venido a solucionarme muchos problemas de acceso remoto a las computadoras, el único problema es que ahora camino menos, y los kilitos se quedan... http://www.realvnc.comNVU - Por fin deje de utilizar frontpage. Es una herramienta basada en el framework de Mozilla, funciona de maravilla. Todavia tiene bugs, pero espero que para …

Paint .Net 2.1

Paint .Net es un programa sencillo para el diseño, pero me ha sorprendido que permite manejo de capas. Se promociona como el sustituto de Paint que viene incluido en Windows XP. Esta apoyado en parte por Microsoft, pero el desarrollo es open source y esta siendo desarrollado en la universidad de washington: http://www.eecs.wsu.edu/paint.net/
Muy, pero muy recomendable. Esta en version release 2.1.
Si continuan con el desarrollo, es posible que se convierta en una aplicacion tipo Gimp (www.gimp.org).
Listo!

Visual Studio Web Express Edition

He estado trabajando con ASP .net 1.1 queria esperar a que saliera la versión 2.0 pero la verdad es que ya tenia que migrar toda la intranet en la oficina, asi que con todo y mi pesar empece con la version 1.1. Pero, pero recomiendo obtener la version 2.0 beta 2. Se puede bajar de www.asp.net es un enlace directo a Microsoft.
El costo de esta aplicación a diferencia de Web Matrix que es totalmente gratuito, será de 50 dolarucos. No me parece mal y en cuanto este la versión final lo comprare.
¿Para cuando estara la version 2.0? pues no existe fecha o por lo menos yo no la tengo. Espero sea pronto para empezar a utilizarla.
El primer proyecto con .Net2 sera MedSid.
Listo!

Inicio del Blog

Empiezo el mes con un blog. Veremos como va el asunto.

Pequeña introducción de mi persona, mi nombre es Víctor García. Tengo trabajando en el area de sistemas entre 9 y 10 años.

El fin del blog, es llevar una bitacora de aquellas cosas que voy resolviendo en el trabajo.
Que pueden incluir codigo, anotacion, soluciones, tips, etc.

Si a alguien le sirven, perfecto.

Tal vez cooperen con dar click a los Google - Adsense.

Bueno por ahora es todo.

Listo!