GetLocalResource GetGlobalResource para clase (code behind)

Tenia un problema al querer mostrar un string en diferentes idiomas como respuesta en una clase. En una pagina normal, me funcionaba GetLocalResourceObject("Etiqueta").toString(), pero cuando quería hacer lo mismo en una clase creada independiente a la pagina, me sacaba errores por todo lado, así que lo que se debe hacer para solucionarlo, es crear el recurso a nivel global, es decir en la carpeta App_GlobalResources, y posterior a ello, para llamarlo en la clase, se debe hacer de la siguiente manera:

string eti;
eti = GetGlobalResourceObject("nombre_recurso", "Etiqueta").ToString();

El nombre del recurso (nombre_recurso) debe ser el nombre que se le dio al recurso, sin la extensión ni el idioma, por ejemplo si el recurso se llama: recurso.en.resx, nombre_recurso debe ser "recurso".

Re-dimensionar imágenes dinamicas en PowerBuilder / Resize dynamic picture PowerBuilder

Cuando se usa un objeto imagen en powerbuilder y se quiere que sea dinámico  es decir que cambie su imagen por la que sea requerida, al cambiarla, powerbuilder no la re-dimensiona, así que hay que hay que programar este funcionamiento. Para ello realizamos lo siguiente:

p_1.picturename = "imagenes\imagen1.jpg";
p_1.originalsize = false;
p_1.x = 0;
p_1.y = 0;
p_1.width = 1450;
p_1.height = 510;


Multiidioma C# mostrar una etiqueta en tiempo de ejecucion

Para mostrar información en diferentes idiomas, C# usa los archivos de recursos, que son simples XML que contienen la información (Etiqueta-Valor). En el funcionamiento normal, basta con colocar a los objetos html los nombres adecuados, para que coincidan con la etiqueta que se va a mostrar, Pero cuando es en tiempo de ejecución  y el texto no se va a colocar dentro de una etiqueta HTML sino en una respuesta cualquiera, es necesario usar la siguiente sentencia:

GetLocalResourceObject("Etiqueta").ToString()

Donde "Etiqueta" corresponde al string que se quiere mostrar.

Cargar archivo SQL desde consola de comandos DOS para MSSQL

Cuando un archivo SQL es muy grande y no se puede abrir en el administrador corporativo, se puede cargar por medio del programa OSQL.EXE, así:

osql.exe -S sevidor\instancia -U usuario -P clave -i archivo.sql



Renombrar archivo en DOS por medio de archivo .BAT

rem Coloca la fecha y la hora al inicio del nombre del archivo, en formato AAAAMMDD__HHMM_
@echo off
set guion=_
set ext=_
for /f "tokens=1,2,3 delims=/ " %%i in ('date /t') do (
set ano=%%k
set dia=%%i
set mes=%%j)
for /f "tokens=1,2 delims=: " %%a in ('time /t') do (
set hora=%%a
set minutos=%%b)
set cadena=%ano%%mes%%dia%%guion%%guion%%hora%%guion%%minutos%%ext%
move %1 %cadena%%1



Eliminar catalogo en SQL server

Para eliminar un catalogo en SQL server, es necesario quitar los indices de texto full text, con este código podemos apoyarnos:


----Listar los full text index
sELECT  * FROM sys.fulltext_indexes

----Para listar los catalogos
SELECT * FROM sysfulltextcatalogs 

----Para eliminar los indices full text
DROP FULLTEXT INDEX ON tabla

----Eliminar catalogo
DROP FULLTEXT CATALOG [catalogo]

Tildes y Eñes con Ajax

Cuando se realiza un llamado Ajax, algunas veces los caracteres que contienen tildes y eñes se cambian por interrogaciones para corregir esto, al realizar la construccion del objeto Ajax, se debe cambiar la codificación por defecto así:

function obj_ajax() {
var xmlhttp = false;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (E) {
xmlhttp = false;
}
}

if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
xmlhttp = new XMLHttpRequest();
}

xmlhttp.overrideMimeType('text/html; charset=iso-8859-1');
return xmlhttp;
}



La magia es hecha por la linea:
xmlhttp.overrideMimeType('text/html; charset=iso-8859-1');


La funcion que realiza el llamado puede ser de la siguiente manera:

function mostrar_url(url, parametros, div, metodo) {
var contenedor, ajax;
contenedor = document.getElementById(div);
ajax = obj_ajax();
ajax.onreadystatechange = function() {
if (ajax.readyState == 4) {
contenedor.innerHTML =  ajax.responseText;
}
else
{
contenedor.innerHTML = "Realizando consulta....";
}
}

if (metodo == 'get') {
ajax.open("GET", url + '?' + parametros, true);
ajax.setRequestHeader("Content-Type", "text/html;charset=iso-8859-1");
ajax.send(null);
}
else {
ajax.open("POST", url, true);
ajax.setRequestHeader("Content-Type", "text/html;charset=iso-8859-1");
ajax.send(parametros);
}
}

Allí el código que cambia el charset es:
ajax.setRequestHeader("Content-Type", "text/html;charset=iso-8859-1");

Todos mis agradecimientos al siguiente articulo, donde encontré parte de la solucion:
http://www.masquewordpress.com/acentos-y-caracteres-especiales-con-ajax-y-jquery-ii-parte/#

Android: Fix "Error generating final archive: Debug certificate expired"


Aviso de Confidencialidad

Este mensaje de correo electrónico y los archivos anexos que contenga son de uso exclusivo de las personas o entidades destinatarias. Este mensaje puede contener información confidencial, de uso reservado y protegida legalmente. Si usted ha recibido este correo por equivocación tiene completamente prohibido su utilización, copia, impresión, reenvío o cualquier otra acción que divulgue su contenido o el de los archivos anexos. En este caso, por favor notifique al remitente acerca de la equivocación cometida y elimine este correo electrónico de sus sistemas de almacenamiento. Las opiniones que contenga este mensaje son exclusivas de su autor y no necesariamente representan la opinión oficial del Banco GNB Sudameris o de sus filiales (Servivalores, Servitrust, Servibanca). Gracias

Descomprimir archivo msi - extract msi file content

Inicio -> Ejecutar -> cmd
Start -> Run -> cmd

msiexec /a c:\archivo.msi /qb targetdir="c:\carpeta_destino"

dbms ole db is not supported in your current installation - sybase powerbuilder

Los drivers para la conexión a bases de datos SQL Server de PowerBuilder, se encuentran en la libreria: PBOLExxx.dll, donde xxx es la versión de PB, por ejemplo 11.0 es 110, 11.5 es 115.

Por otro lado se debe verificar si en el path del sistema, esta registrada la ruta de las dll de powerbuilder: C:\Program Files (x86)\Sybase\Shared\PowerBuilder o C:\Program Files\Sybase\Shared\PowerBuilder. Para ello, abrimos una consola de comandos de DOS y ejecutamos path, si no esta registrada, lo mejor es des-instalar las librerías existentes, reiniciar, volver a instalar, y de nuevo reiniciar. 

Atheros Communications Atheros AR8132 en Centos

Para que Centos reconozca las tarjetas Atheros AR8132, es necesario instalar el modulo atl1e, para eso descargamos el rpm:


Después instalamos el rpm

rpm -Uvh kmod-atl1e-1.0.1.14-1.el5.elrepo.x86_64.rpm

Activamos el modulo:

modprobe -v atl1e

Verificamos si el modulo quedo cargado:

lsmod | grep atl

Reiniciamos la maquina

reboot

Para verificar el estado del hardware de red ejecutamos:

lshw -C network

Luego se debe crear el correspondiente archivo para que incie la red:

nano /etc/sysconfig/network-scripts/ifcfg-eth1

Colocamos el siguiente contenido:

# Atheros AR8132 / L1c Gigabit Ethernet Adapter
DEVICE=eth1
BOOTPROTO=static
BROADCAST=192.168.0.255
HWADDR=xx:xx:xx:xx:xx:xx
IPADDR=192.168.0.253
NETMASK=255.255.255.0
NETWORK=192.168.0.0
ONBOOT=yes
TYPE=Ethernet
NOZEROCONF=yes

(HWADDR corresponde a la mac de la tarjeta, se puede obtener por medio del comando: lshw -C network)

Reiniciamos la red:

service network restart

y eso es todo!

Cambiar tipo de datawindow

Para cambiar el tipo de un Datawindow, por ejemplo de Freeform a Grid


Para cambiar el estilo de presentación del DataWindow Object se debe seleccionar el DataWindow Object, darle clic derecho y elegir la opcion Edit Source

Valores:

- 0 (Default) Freeform, Group o Tabular
- 1 Grid
- 2 Label
- 3 Graph
- 4 Crosstab
- 5 Composite
- 7 RichText

Por ejemplo si tenemos un DataWindow Object de estilo Freeform y deseamos cambiar a estilo Grid

processing=0

Cambiar por:

processing=1


Evitar error división por 0 Miscrosoft SQL Server

----El siguiente script genera error al dividir por 0
select 5/0

----El siguiente script genera NULL al dividir por 0
select 5/nullif(0,0)

----Se podría usar asi:
select 5/isnull(nullif(0,0),1)

----o simplemente generar un nulo.