<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>La esquina de Dunderio</title>
	<atom:link href="http://dunderio.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://dunderio.com</link>
	<description>Un poco de todo...</description>
	<lastBuildDate>Tue, 08 May 2012 02:42:22 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Como ordenar varchar como integer en MySql</title>
		<link>http://dunderio.com/como-ordenar-varchar-como-integer-en-mysql/</link>
		<comments>http://dunderio.com/como-ordenar-varchar-como-integer-en-mysql/#comments</comments>
		<pubDate>Tue, 08 May 2012 02:42:22 +0000</pubDate>
		<dc:creator>Dunderio</dc:creator>
				<category><![CDATA[Consejos y trucos]]></category>
		<category><![CDATA[Mysql]]></category>

		<guid isPermaLink="false">http://dunderio.com/?p=310</guid>
		<description><![CDATA[Me tocó desarrollar una aplicación para manejar proyectos inmobiliarios y en una sección debía mostrar todos los apartamentos de un edificio en orden pero el problema es que el número del apartamento no siempre es entero como por ejemplo PB o 1-A ect. Para esto utilicé lo siguiente: select prpr_piso from proyectos_propiedades where proy_id=&#8217;$pid&#8217; group [...]]]></description>
			<content:encoded><![CDATA[<p>Me tocó desarrollar una aplicación para manejar proyectos inmobiliarios y en una sección debía mostrar todos los apartamentos de un edificio en orden pero el problema es que el número del apartamento no siempre es entero como por ejemplo PB o 1-A ect.</p>
<p>Para esto utilicé lo siguiente:</p>
<blockquote><p>select prpr_piso from proyectos_propiedades<br />
where proy_id=&#8217;$pid&#8217;<br />
group by prpr_piso<br />
<span style="color: #ff0000;">order by cast(prpr_piso AS SIGNED)</span></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://dunderio.com/como-ordenar-varchar-como-integer-en-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Request.Querystring desde Javascript</title>
		<link>http://dunderio.com/request-querystring-desde-javascript/</link>
		<comments>http://dunderio.com/request-querystring-desde-javascript/#comments</comments>
		<pubDate>Sat, 05 May 2012 04:48:53 +0000</pubDate>
		<dc:creator>Dunderio</dc:creator>
				<category><![CDATA[Consejos y trucos]]></category>
		<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://dunderio.com/?p=307</guid>
		<description><![CDATA[Me topé con la necesidad de obtener el valor del query string desde Javascript por lo que me puse a navegar y encontré una pequeña rutina que hace la magia. function QueryString(key) { fullQs = window.location.search.substring(1); qsParamsArray = fullQs.split(&#8220;&#38;&#8221;); for (i=0;i&#60;qsParamsArray.length;i++) { strKey = qsParamsArray[i].split(&#8220;=&#8221;); if (strKey[0] == key) { return strKey[1]; } } }]]></description>
			<content:encoded><![CDATA[<p>Me topé con la necesidad de obtener el valor del query string desde Javascript por lo que me puse a navegar y encontré una pequeña rutina que hace la magia.</p>
<blockquote><p>function QueryString(key) {<br />
fullQs = window.location.search.substring(1);<br />
qsParamsArray = fullQs.split(&#8220;&amp;&#8221;);<br />
for (i=0;i&lt;qsParamsArray.length;i++) {<br />
strKey = qsParamsArray[i].split(&#8220;=&#8221;);<br />
if (strKey[0] == key) {<br />
return strKey[1];<br />
}<br />
}<br />
}</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://dunderio.com/request-querystring-desde-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Error al utilizar .RenderControl en un gridview</title>
		<link>http://dunderio.com/error-al-utilizar-rendercontrol-en-un-gridview/</link>
		<comments>http://dunderio.com/error-al-utilizar-rendercontrol-en-un-gridview/#comments</comments>
		<pubDate>Thu, 29 Mar 2012 13:35:57 +0000</pubDate>
		<dc:creator>Dunderio</dc:creator>
				<category><![CDATA[asp.net]]></category>
		<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://dunderio.com/?p=299</guid>
		<description><![CDATA[Al tratar de utilizar .rendercontrol para generar un archivo de excel me topé con error algo peculiar que me decia que el control debe estar dentro del &#60;form&#62; Este es el código: llenar_grid(); //llena el gridview Response.Clear(); Response.AddHeader(&#8220;Content-Disposition:&#8221;, &#8220;attachment; filename=Report.xls&#8221;); Response.Charset = &#8220;&#8221;; Response.ContentType = &#8220;application/vnd.ms-excel&#8221;; System.IO.StringWriter stringWrite = new System.IO.StringWriter(); System.Web.UI.HtmlTextWriter htmlWrite = new [...]]]></description>
			<content:encoded><![CDATA[<p>Al tratar de utilizar .rendercontrol para generar un archivo de excel me topé con error algo peculiar que me decia que el control debe estar dentro del &lt;form&gt;</p>
<p>Este es el código:</p>
<blockquote><p>llenar_grid(); //llena el gridview<br />
Response.Clear();<br />
Response.AddHeader(&#8220;Content-Disposition:&#8221;, &#8220;attachment; filename=Report.xls&#8221;);<br />
Response.Charset = &#8220;&#8221;;<br />
Response.ContentType = &#8220;application/vnd.ms-excel&#8221;;<br />
System.IO.StringWriter stringWrite = new System.IO.StringWriter();<br />
System.Web.UI.HtmlTextWriter htmlWrite = new HtmlTextWriter(stringWrite);<br />
drg_datos.RenderControl(htmlWrite);<br />
Response.Write(stringWrite.ToString());<br />
Response.End();</p></blockquote>
<p>Esto me generó el error antes mencionada el cual resolví agregando lo siguiente:</p>
<blockquote><p>
public override void VerifyRenderingInServerForm(Control control)<br />
{<br />
    return;<br />
}
</p></blockquote>
<p>Espero les sea de utilidad</p>
]]></content:encoded>
			<wfw:commentRss>http://dunderio.com/error-al-utilizar-rendercontrol-en-un-gridview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Como convertir un IList a Datatable</title>
		<link>http://dunderio.com/como-convertir-un-ilist-a-datatable/</link>
		<comments>http://dunderio.com/como-convertir-un-ilist-a-datatable/#comments</comments>
		<pubDate>Sat, 24 Mar 2012 03:30:47 +0000</pubDate>
		<dc:creator>Dunderio</dc:creator>
				<category><![CDATA[asp.net]]></category>
		<category><![CDATA[Consejos y trucos]]></category>
		<category><![CDATA[Vb.net]]></category>

		<guid isPermaLink="false">http://dunderio.com/?p=296</guid>
		<description><![CDATA[Trabajando en una aplicación que me permite sincronizar información con uno de mis clientes me tope con la necesidad de transformar un IList que era entregado por el cliente a un DataTable. Asi quedo todo: Public Shared Function IList_DataTable(Of T)(ByVal list As IList(Of T)) As DataTable Dim td As New DataTable Dim entityType As Type [...]]]></description>
			<content:encoded><![CDATA[<p>Trabajando en una aplicación que me permite sincronizar información con uno de mis clientes me tope con la necesidad de transformar un IList que era entregado por el cliente a un DataTable.<br />
Asi quedo todo:</p>
<blockquote><p>Public Shared Function IList_DataTable(Of T)(ByVal list As IList(Of T)) As DataTable<br />
Dim td As New DataTable<br />
Dim entityType As Type = GetType(T)<br />
Dim properties As PropertyDescriptorCollection = TypeDescriptor.GetProperties(entityType)</p>
<p>For Each prop As PropertyDescriptor In properties<br />
td.Columns.Add(prop.Name)<br />
Next</p>
<p>For Each item As T In list<br />
Dim row As DataRow = td.NewRow()</p>
<p>For Each prop As PropertyDescriptor In properties<br />
row(prop.Name) = prop.GetValue(item)<br />
Next</p>
<p>td.Rows.Add(row)<br />
Next</p>
<p>Return table<br />
End Function</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://dunderio.com/como-convertir-un-ilist-a-datatable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Generar sombra con CSS</title>
		<link>http://dunderio.com/generar-sombra-con-css/</link>
		<comments>http://dunderio.com/generar-sombra-con-css/#comments</comments>
		<pubDate>Fri, 13 Jan 2012 21:49:41 +0000</pubDate>
		<dc:creator>Dunderio</dc:creator>
				<category><![CDATA[Consejos y trucos]]></category>
		<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://dunderio.com/?p=291</guid>
		<description><![CDATA[Para generar sombra con css es tan fácil como agregar las siguientes lineas a la clase que se tenga asignada al objeto. Ejemplo: .div_con_sombra { -moz-box-shadow: 3px 3px 4px #000; -webkit-box-shadow: 3px 3px 4px #000; box-shadow: 3px 3px 4px #000; /* For IE 8 */ -ms-filter: &#8220;progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color=&#8217;#000000&#8242;)&#8221;; /* For IE 5.5 &#8211; 7 [...]]]></description>
			<content:encoded><![CDATA[<p>Para generar sombra con css es tan fácil como agregar las siguientes lineas a la clase que se tenga asignada al objeto.</p>
<p>Ejemplo:</p>
<p>.div_con_sombra {<br />
	-moz-box-shadow: 3px 3px 4px #000;<br />
	-webkit-box-shadow: 3px 3px 4px #000;<br />
	box-shadow: 3px 3px 4px #000;<br />
	/* For IE 8 */<br />
	-ms-filter: &#8220;progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color=&#8217;#000000&#8242;)&#8221;;<br />
	/* For IE 5.5 &#8211; 7 */<br />
	filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color=&#8217;#000000&#8242;);<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://dunderio.com/generar-sombra-con-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Funcion isNumeric en vb.net</title>
		<link>http://dunderio.com/funcion-isnumeric-en-vb-net/</link>
		<comments>http://dunderio.com/funcion-isnumeric-en-vb-net/#comments</comments>
		<pubDate>Mon, 02 Jan 2012 17:55:16 +0000</pubDate>
		<dc:creator>Dunderio</dc:creator>
				<category><![CDATA[asp.net]]></category>
		<category><![CDATA[Consejos y trucos]]></category>
		<category><![CDATA[Vb.net]]></category>

		<guid isPermaLink="false">http://dunderio.com/?p=288</guid>
		<description><![CDATA[Tratando de validar si una variable era númerica en vb.net me tope con que no encontraba la función isnumeric. Despues de buscar e investigar un poco me percate que si quería usarla debía incluir &#8220;microsoft.visualbasic&#8221; en los Imports. Si al final no deseas utilizar este namespace puedes validar si un valor es númerico con el [...]]]></description>
			<content:encoded><![CDATA[<p>Tratando de validar si una variable era númerica en vb.net me tope con que no encontraba la función isnumeric. Despues de buscar e investigar un poco me percate que si quería usarla debía incluir &#8220;microsoft.visualbasic&#8221; en los Imports.<br />
Si al final no deseas utilizar este namespace puedes validar si un valor es númerico con el siguiente código:</p>
<blockquote><p>
Public Function IsNumeric(ByVal str As String) as boolean<br />
Dim r As Regex = New Regex(“\d+”)<br />
Dim m As Match = r.Match(str)<br />
If (m.Success) Then<br />
Return True<br />
End If<br />
Return False<br />
End Function
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://dunderio.com/funcion-isnumeric-en-vb-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Como agregar un javascript de confirmación en asp.net</title>
		<link>http://dunderio.com/como-agregar-un-javascript-de-confirmacion-en-asp-net/</link>
		<comments>http://dunderio.com/como-agregar-un-javascript-de-confirmacion-en-asp-net/#comments</comments>
		<pubDate>Fri, 02 Dec 2011 19:57:42 +0000</pubDate>
		<dc:creator>Dunderio</dc:creator>
				<category><![CDATA[asp.net]]></category>
		<category><![CDATA[Consejos y trucos]]></category>
		<category><![CDATA[Vb.net]]></category>

		<guid isPermaLink="false">http://dunderio.com/?p=283</guid>
		<description><![CDATA[Si queremos por ejemplo eliminar un registro de un gridview o eliminar datos de un formulario, lo más normal es solicitar al usuario si realmente desea realizar este borrado. Para esto debemos asociar el boton que dispara el evento de eliminar un javascript que haga la pregunta. Esto lo debemos hacer en el page_load If [...]]]></description>
			<content:encoded><![CDATA[<p>Si queremos por ejemplo eliminar un registro de un gridview o eliminar datos de un formulario, lo más normal es solicitar al usuario si realmente desea realizar este borrado.</p>
<p>Para esto debemos asociar el boton que dispara el evento de eliminar un javascript que haga la pregunta.<br />
Esto lo debemos hacer en el page_load</p>
<blockquote><p>
If Not IsPostBack Then<br />
Me.btn_yes.Attributes.Add(&#8220;onclick&#8221;, _<br />
&#8220;return confirm(&#8216;Esta seguro?&#8217;);&#8221;)<br />
end if
</p></blockquote>
<p>Si la persona seleccione no el evento click del botón no se ejecutará.</p>
]]></content:encoded>
			<wfw:commentRss>http://dunderio.com/como-agregar-un-javascript-de-confirmacion-en-asp-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mensaje : You have been logged on with a temporary profile</title>
		<link>http://dunderio.com/mensaje-you-have-been-logged-on-with-a-temporary-profile/</link>
		<comments>http://dunderio.com/mensaje-you-have-been-logged-on-with-a-temporary-profile/#comments</comments>
		<pubDate>Tue, 25 Oct 2011 19:42:17 +0000</pubDate>
		<dc:creator>eguillen</dc:creator>
				<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://dunderio.com/?p=273</guid>
		<description><![CDATA[Si eres usuario de Vindows Vista o Windows 7 y resives un mensaje como este: “You have been logged on with a temporary profile. You cannot access your files and files created in this profile will be deleted when you log off. To fix this, log off and try logging on later. Please see the [...]]]></description>
			<content:encoded><![CDATA[<p>Si eres usuario de Vindows Vista o Windows 7 y resives un mensaje como este:</p>
<p>“You have been logged on with a temporary profile. You cannot access your files and files created in this profile will be deleted when you log off. To fix this, log off and try logging on later. Please see the event log for details or contact your system administrator.”</p>
<p>debes hacer lo siguiente:</p>
<p>El problema usualmente ocurre si tu equipo se apaga inadecuadamente por falla eléctrica o por alguna otra razón.</p>
<p>1. Entra a tu equipo como administrador o con un usuario administrador.<br />
2. Ve a inicio.<br />
3. Entra al Regedit escribiendo esta palabra en el cuadro de búsqueda.<br />
4. Localiza el registro HKEY_LOCAL_MACHINE -&gt; SOFTWARE -&gt; Microsoft -&gt; Windows NT -&gt; CurrentVersion -&gt; ProfileList<br />
5.Entra a uno de los s-1-5&#8230;. carpeta (SID Key) con un largo número dentro, debe tener un .bak al final.<br />
6. En el panel derecho mira en ProfileImagePath para validar que sea el mismo usuario que despliega el erro.<br />
7. Elimina el registro con el .bak.<br />
8. Termina tu sesión de administrador y entra como el usuario que estaba presentando el problema.</p>
]]></content:encoded>
			<wfw:commentRss>http://dunderio.com/mensaje-you-have-been-logged-on-with-a-temporary-profile/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Error 0&#215;80040115 solucionado (Office 2007)</title>
		<link>http://dunderio.com/error-0x80040115-solucionado-office-2007/</link>
		<comments>http://dunderio.com/error-0x80040115-solucionado-office-2007/#comments</comments>
		<pubDate>Mon, 19 Sep 2011 19:37:21 +0000</pubDate>
		<dc:creator>oespinosa</dc:creator>
				<category><![CDATA[Aplicaciones]]></category>

		<guid isPermaLink="false">http://dunderio.com/?p=268</guid>
		<description><![CDATA[La tarea &#8220;Enviando Servidor de Microsoft Exchange&#8221; ha notificado el error (0&#215;80040115): &#8220;La conexión a Microsoft Exchange Server no se encuentra disponible. Outlook tiene que estar en línea o conecto para realizar esta acción&#8221;. Este error fue solucionado reparando la aplicación.]]></description>
			<content:encoded><![CDATA[<p>La tarea &#8220;Enviando Servidor de Microsoft Exchange&#8221; ha notificado el error (0&#215;80040115): &#8220;La conexión a Microsoft Exchange Server no se encuentra disponible. Outlook tiene que estar en línea o conecto para realizar esta acción&#8221;.</p>
<p>Este error fue solucionado reparando la aplicación.</p>
]]></content:encoded>
			<wfw:commentRss>http://dunderio.com/error-0x80040115-solucionado-office-2007/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Como configurar un NAT estatico (static NAT) en Fortigate</title>
		<link>http://dunderio.com/como-configurar-nat-estatico-en-fortigate/</link>
		<comments>http://dunderio.com/como-configurar-nat-estatico-en-fortigate/#comments</comments>
		<pubDate>Sat, 27 Aug 2011 04:24:02 +0000</pubDate>
		<dc:creator>Dunderio</dc:creator>
				<category><![CDATA[Consejos y trucos]]></category>
		<category><![CDATA[Redes]]></category>

		<guid isPermaLink="false">http://dunderio.com/?p=259</guid>
		<description><![CDATA[Primero que todo debemos saber que el fortigate llama a los static NAT, &#8220;Virtual IP mapping&#8221; . Primero debemos ir a la sección: &#8220;Virtual IP&#8221; justo debajo de la sección &#8220;Firewall&#8221;, seguidamente damos click en el link de &#8220;Virtual IP&#8221;. En esta sección le damos click en &#8220;Create New&#8221;. Llenamos los campos: Name: Nombre que [...]]]></description>
			<content:encoded><![CDATA[<p>Primero que todo debemos saber que el fortigate llama a los static NAT, &#8220;Virtual IP mapping&#8221; .</p>
<p>Primero debemos ir a la sección: &#8220;Virtual IP&#8221; justo debajo de la sección &#8220;Firewall&#8221;, seguidamente damos click en el link de &#8220;Virtual IP&#8221;. En esta sección le damos click en &#8220;Create New&#8221;.</p>
<p style="text-align: center;"><a href="http://dunderio.com/wp-content/uploads/2011/08/04-Virtual-IP.jpg"><img class="aligncenter size-full wp-image-260" title="04-Virtual-IP" src="http://dunderio.com/wp-content/uploads/2011/08/04-Virtual-IP.jpg" alt="" width="581" height="159" /></a></p>
<p>Llenamos los campos:</p>
<p>Name: Nombre que le queramos dar al Virtual IP</p>
<p>External Interface:La interfase que tiene acceso al internet</p>
<p>Type: Static NAT</p>
<p>External IP: El Ip público al que se le quiere hacer el NAT, puedes usar un rango de IPs</p>
<p>Mapped IP: El Ip privado</p>
<p>Port Forwarding: no es necesario al menos que deses que el ip público escuche un puerto y el privado otro.</p>
<p>Una vez creado debes crear una regla:</p>
<p style="text-align: center;"><a href="http://dunderio.com/wp-content/uploads/2011/08/05-Virtual-IP-Policy.jpg"><img class="aligncenter size-full wp-image-261" title="05-Virtual-IP-Policy" src="http://dunderio.com/wp-content/uploads/2011/08/05-Virtual-IP-Policy.jpg" alt="" width="564" height="534" /></a></p>
<p>En el source colocas tu red pública y en el destination tu red privada. Es muy importante que definas en este punto tu destination address que debe ser el &#8220;Virtual IP&#8221; que creaste.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://dunderio.com/como-configurar-nat-estatico-en-fortigate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

