Oracle 9i vs oracle form 6

Hace unos días te preguntaba sobre la conexión de mi oracle form con la base de datos de oracole 9i. Tu solución fue la correcta, pero pero en ciertos equipos (tengo una clase entera instalada cada uno con su base de datos independiente) tengo una serie de errores que te enumero:
-Uno de ellos una vez configurado el Tnsnames. Ora con la cadena de conexión correcta, al intentar conectar aparece el error:ORA-12571:TNS:fallo en el escritor del paquete.
-Otros equipos se conectan correctamente con la base de datos, elijo una tabla de la base de datos con el asistente de bloque de datos, visualizo la lista, selecciono una tabla y al intentar abrirla salta el error:ORA-03173:fin-de-fichero en el canal de comunicación. Si intento posteriormente ver otra vez la lista de tablas salta el error:FRM-10651:No se ha podido recuperar la lista de tablas.
-En otro equipo conecto correctamente y al intentar abrir una tabla de la base de datos salta el error:Se ha producido la excepción unknow software exception (0x80000004) en la dirección 0x00f3e774.
-Y por último en otro equipo con windows xp, directamente al instalar oracle form con el setup.exe da error:orainst.exe ha detectado un problema.

1 Respuesta

Respuesta
1
Espero que tengas la base de datos montada en un Oracle_HOME diferente a la del developer.
Emn primer lugar deberás de mirar el fichero sqlnet.log para ver cual es el problema real que tienes. También deberás de comprobar si el listener esta escuchando y esta OK configurado para verificar esto deberás de realizar tnsping80 [nombre del string]
También deberá de verificar el fichero sqlnet. Ora que se encuentra en el mismo lugar que el tnsnames. Ora para ver si esta OK.
Con respecto al XP, si no tienes instalado el parche 13 de developer Oracle dice que no funciona sobre XP, tendrás que tener en cuenta que para que funcione en XP deberá de ser la version profesional sobre la home edition oracle dice que no funciona.
Prueba a intentar configurar el tnsnames con una conexión ipc en lugar de con TCP/IP ya que al ser una base de datos local funcionara mejor.
Ya he solucionado algunos problemas:
Tengo en c:\oracle\ora90 el Personal Edition con la base de datos y en C:\oracle\ora6i el Form. Si ejecuto tnsping80 <cadena conexión> me da en el sqlnet.log el siguiente error:
Fatal NI connect error 12571, connecting to:
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=pc06-176)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=pc19)(CID=(PROGRAM=C:\oracle\ora6i\BIN\ifbld60.EXE)(HOST=PC06-176)(USER=Administrador))))
VERSION INFORMATION:
TNS for 32-bit Windows: Version 8.0.6.0.0 - Production
Windows NT TCP/IP NT Protocol Adapter for 32-bit Windows: Version 8.0.6.0.0 - Production
Time: 04-MAR-03 08:43:01
Tracing not turned on.
Tns error struct:
nr err code: 12206
TNS-12206: TNS:recibido un error de TNS durante la navegación
ns main err code: 12571
TNS-12571: TNS:fallo en el escritor del paquete
ns secondary err code: 12560
nt main err code: 0
nt secondary err code: 0
nt OS err code: 0
Si miro el sqlnet.ora del Form, es ilegible.
Espero tu respuesta con urgencia. Muchas gracias
En tu respuesta me comentas probar la conexión con el protocolo ipc, pues es mejor con la base de datos local.Me gustaría saber cómo configurar la conexión con el protocolo ipc para probarlo gracias
Para crearte una conexión IPC usa el programa sql*net esay configuration elige el protocolo IPC en la clave de IPC pones el nombre del servicio de la base de datos o bien el SID de esta.
Con respecto al error prueba:
Edita el fichero SQLNET. ORA en el cliente y en el servidor
( Edítalo con Wordpad no con notepad ya que el cr+lf no lo coge el notepad y no veras nada)
Borrar la linea que pone:
SQLNET.EXPIRE_TIME=0
Tambien puedes poner el parametro
CONNECT_TIMEOUT_LISTENER a un valor mayor que 300
Hola reave:
-Respecto a Oracle 9 intento hacer la conexión por ipc pero me da error. Fin del canal de comunicación. Algo hago mal. Te cuento: Con el Net Configuration Assistant me creo un nuevo listener donde pongo protocolo ipc y clave el sid de la base de datos como me dijiste. Luego me intento conectar con el SQL*Plus Worksheet y la cadena de conexión :
Connect system/****@EXTPROC_CONNECTION_DATA
y me da error:
ORA-03113: fin de archivo en el canal de comunicación
-Sobre la conexión con Oracle form:en el sqlnet.ora no tengo el parámetro CONNECT_TIMEOUT_LISTENER ¿lo añado?
y el SQLNET.EXPIRE_TIME=10 (no a 0)¿lo quito, lo dejo?
Estoy un poco perdida como ves, si pudieses ayudarme te lo agradecería. Gracias y besos
Este ejemplo de tnsnames de Oracle9i
LOCAL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
( SID = NOMBREINSTANCIA )
)
)
Este es un ejemplo que tengo en miservidor y todo va ok con respecto al sqlnet. Ora
este es un ejemplo de mi servidor:
#NAMES.DEFAULT_DOMAIN = nt2000.local
#SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES)
Como veras tengo a comentarios las linea de defalut domain y de sqlnet etc.
EN documentacion de Oracle lei que el problema que te da puede venir por los parametros que te comente, añadelos y prueba. Si me das una descripcion mas detallada de que tienes en ti servidor te podre ayudar mas. La informacion a la cual me refiero es:
Version de SQL*NET
Si tienes una red instalada o no
Version de RDBMS ( La base de datos)
Version de Sistema operativo y service pack en caso de ser NT o 2000 y alguna más que se te pueda ocurrir

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas