viernes, 20 de diciembre de 2013

Acceder a un control desde un hilo C#

Para acceder a un control como un botón o un caja de texto se debe deshabilitar la propiedad encargada de esta excepción  CheckForIllegalCrossThreadCalls:

          CheckForIllegalCrossThreadCalls = false;

De esta forma permite acceder a un control.

viernes, 13 de diciembre de 2013

Salir (break) de un FOR (loop) en PL SQL ORACLE

Para salir de un ciclo, usar (EXIT WHEN) por ejemplo:

  DECLARE
 
     dato INTEGER := 10;

 
  BEGIN
       FOR i IN 1..99 LOOP
 
           
dato := dato + 5 ;
 
            DBMS_OUTPUT.PUT_LINE(
dato);
 
            EXIT WHEN
dato 100
 
       END LOOP;
  END;


Para este caso se ejecuta hasta que dato sea mayor q 100, aunque el ciclo sea 99 veces.

martes, 26 de noviembre de 2013

Ver el código de un procedimiento almacenado o paquetes (stored procedures o packages) ORACLE




Esta es la consulta para ver el código fuente de un procedimiento:

     SELECT text FROM all_source WHERE name = 'nombre_procedimiento';

Cuando queremos el BODY de un paquete se hace la siguiente consulta: 

SELECT text FROM all_source WHERE name = 'NOMBRE_PACKAGE' AND type='PACKAGE BODY';


Si queremos ver el listado de objetos de la base de datos hacemos la siguiente consulta:

SELECT * FROM dba_objects 

También se puede filtrar por paquetes, procedimiento o nombre del objeto a buscar:

SELECT * FROM dba_objects where object_type='PACKAGE' and object_name = 'nombre_objeto'

martes, 20 de agosto de 2013

Método que devuelve invertido un arreglo JAVA Object[]

Método que recibe un Object[] y devuelve invertido.

    public static Object[] reverseArray(Object[] a) {
        /*
          Please implement this method to
          return a new array where the order of elements has been reversed from the original
          array.
         */
        Object r[] = new  Object[a.length];
        int j = a.length-1;
        for(int i=0; i <=a.length-1; i++){
           
            r[i] = a[j];
            j--;   
        }
    return r;
    }

Este es el método principal que llama al que invierte.
/**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
       
       Object[] ar =  new String[]{"A","B","C"};
       Object[] res = reverseArray(ar);  
      
       for(int i = 0; i <= res.length-1;i++){
           System.out.println("= "+res[i]);
       }
      
    }

miércoles, 10 de julio de 2013

Consultar conexiones de usuarios actuales en Oracle

Consulta Oracle SQL sobre la vista que muestra las conexiones actuales a Oracle Para   visualizarla es necesario entrar con privilegios de administrador

select osuser, username, machine, program
from v$session
order by osuser
Consulta Oracle SQL que muestra el número de conexiones actuales a Oracle agrupadopor aplicación que realiza la conexión

select program Aplicacion, count(program) Numero_Sesiones
from v$session
group by program
order by Numero_Sesiones desc
Consulta Oracle SQL que muestra los usuarios de Oracle conectados y el número de  sesiones por usuario

select username Usuario_Oracle, count(username) Numero_Sesiones
from v$session
group by username
order by Numero_Sesiones desc

martes, 9 de julio de 2013

Cerrar y liberar recursos en conexión a base de datos Oracle C#

Cerrar y liberar recursos en conexión a base de datos Oracle C#
Estaba haciendo la conexión a Oracle y cerraba así:

                finally
                {
                    Conn.Dispose();
                    Conn.Close();
                }
Pero estaban quedando conexiones abiertas en Oracle como inactivas, y se iban acumulando, para solucionar esto agregué la lo siguiente a la cadena de conexión: pooling=false


data source=prueba;user id=usuario;password=contrasena;pooling=false


miércoles, 3 de julio de 2013

Conectarse a un intermediario remoto en el Toolkit - Websphere Message Broker

En el computador local el cual se va a crea un usuario USER y contraseña PASS, este usuario debe estar creado en el servidor remoto donde se instaló el Broker, en inicio,  le das clic derecho en mi PC y administrar, y en usuarios lo creas en nuevo usuario. 



Reiniciar PC.

Luego en el menú le das la tecla shift  y manteniéndola presionada le das clic derecho en el icono de abrir el toolkit para que te salga la opción de abrir con un usuario diferente, te va a pedir usuario y contraseña, ahí entras con el que se creó anterior mente.


Una vez conectado el usuario y abierto el IDE (toolkit) y le das en intermediario conectar a uno remoto.
Donde nombre del gestor de colas, host y puerto, son datos del broker donde se instaló, que previamente debes tener para ingresar, luego le das finalizar y listo el IDE queda conectado remotamente, ahora se puede crear grupos de ejecución y publicar flujos.



jueves, 23 de mayo de 2013