Ip

Hola soy María, y querría saber si es posible obtener la dirección IP en el Forms, de alguna manera, al igual que se puede obtener el USERNAME, PASSWORD...
Muchas gracias

2 respuestas

Respuesta
1
Me interesan este tipo de preguntas porque me doy cuenta que estás trabajando en aplicaciones con direccionamiento IP y demás, ojalá podamos compartir conocimientos en un futuro... mi correo es [email protected] o [email protected]
Para conseguir la IP de tu máquina debes hacer SELECT SYS_CONTEXT 'USERENV', 'IP_ADDRESS') FROM dual; desde tu PLUS, pero, si estás trabajando desde forms tal vez esto no te funcione directamente arriba (forms), por lo tanto, deberás crear una función abajo (motor) y la llamas desde forms...
La función sería...
CREATE OR REPLACE FUNCTION fu_prb_anuar_para_maria
RETURN VARCHAR2
IS
v_retornar VARCHAR2 (100);
BEGIN
SELECT SYS_CONTEXT ('USERENV', 'IP_ADDRESS')
INTO v_retornar
FROM dual;
RETURN v_retornar;
END fu_prb_anuar_para_maria
;
No te pierdas y me escribes para que me comentes como te fue, ¿vale?
Éxitos
Anuar Castillo.
Respuesta
1
No se si existe alguna forma estándar para conocer la IP al igual que se hace con el usuario o el password. De todas formas en el caso de que la haya, ésta sólo funcionaría si se tratara de una aplicación cliente/servidor, y no en tres capas, ya que si fuera de esta última forma, la IP que nos devolvería sería la del servidor y no la del usuario que ejecuta la aplicación desde un browser.
En el caso de que tu aplicación se ejecute en C/S, y no exista una forma "estándar"de obtenerla se me ocurren otras formas menos "elegantes" de obtenerla. Podrías ejecutar mediante la orden HOST, el comando de sistema operativo: "ping localhost" o "ipconfig" volcando cualquiera de ellos a un fichero de texto, el cual abrirías posteriormente con el paquete TEXT_IO. Sin embargo, comprueba que esto funciona para sistemas operativos como el XP o el 2000, ya que tal vez no dispongas de dichos comandos propios del DOS.
De ttodas formas, recuerda que eso sólo funcionaria si usa C/S; salvo que la IP que quiesieras obtener fuera la del servidor.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas