Foros del Web » Programando para Internet » ASP Clásico »

Store Procedure Con oracle 10g

Estas en el tema de Store Procedure Con oracle 10g en el foro de ASP Clásico en Foros del Web. Buenas tengo un problema llamando un store procedure: Código: PROCEDURE SP_INS_CODIGOSAP ( IN_CODSAP IN VARCHAR2, IN_DESCRIPCION IN VARCHAR2, IN_RUC IN VARCHAR2, IN_ST_DETR IN CHAR, IN_USUARIO ...
  #1 (permalink)  
Antiguo 04/03/2008, 23:57
 
Fecha de Ingreso: septiembre-2006
Mensajes: 6
Antigüedad: 17 años, 8 meses
Puntos: 0
Store Procedure Con oracle 10g

Buenas tengo un problema llamando un store procedure:

Código:
PROCEDURE SP_INS_CODIGOSAP (  IN_CODSAP      IN VARCHAR2,
                              IN_DESCRIPCION IN VARCHAR2,
                              IN_RUC         IN VARCHAR2,
                              IN_ST_DETR     IN CHAR,
                              IN_USUARIO     IN VARCHAR2,
                              X_RETVAL		 OUT NUMBER)
IS
X_VERCODSAP NUMBER; -- VERFICIA SI EXISTE CODIGO SAP
X_VERRUC NUMBER;    -- VERIFICA SI EXISTE EL RUC
BEGIN

    SELECT COUNT(*) INTO X_VERCODSAP FROM TMCLIENTE_SAP WHERE RTRIM(CODSAP)=TRIM(IN_CODSAP);    
    SELECT COUNT(*) INTO X_VERRUC FROM TMCLIENTE_SAP WHERE RTRIM(RUC)=TRIM(IN_RUC);
    
    IF X_VERCODSAP > 0 THEN
        
        X_RETVAL:= -1;
        
    ELSIF X_VERRUC > 0 THEN
    
        X_RETVAL:= -2;
        
    ELSE
                
    INSERT INTO TMCLIENTE_SAP (CODSAP, DESCRIPCION, RUC, ST_DETR, USUARIO_ING, FECHA_ING) 
                        VALUES(IN_CODSAP ,IN_DESCRIPCION ,IN_RUC , IN_ST_DETR,IN_USUARIO ,SYSDATE );
    
            COMMIT;
        	X_RETVAL:= 1 ;
    END IF;
    
    EXCEPTION
	WHEN OTHERS THEN
	ROLLBACK;
	X_RETVAL:=-3 ;

END SP_INS_CODIGOSAP;
osea inserto y me devuelve un parametro para ver si se inserta OK

y en mi asp:

Código:
Set cnOracle = Server.CreateObject("ADODB.Connection") 
			Set cmdStoredProcedure = Server.CreateObject("ADODB.Command") 

			With cnOracle
			.ConnectionString = sConnect
			.CursorLocation = adUseClient
			.Open
			End With
With cmdStoredProcedure
			.CommandText = "Pkg_Interfase_Sap.SP_INS_CODIGOSAP"
			.CommandType = adCmdStoredProc
			.ActiveConnection = cnOracle
			.Parameters.Append .CreateParameter("IN_CODSAP",200,1,,wtxtCodSAP)
			.Parameters.Append .CreateParameter("IN_DESCRIPCION",200,1,,wtxtDescrip)
			.Parameters.Append .CreateParameter("IN_RUC",200,1,,wtxtRUC)
			.Parameters.Append .CreateParameter("IN_ST_DETR",200,1,,wtxtRetencion)
			.Parameters.Append .CreateParameter("IN_USUARIO",200,1,,c_Login)
			.Parameters.Append .CreateParameter("X_RETVAL",3,3,,null)
			End With

			cmdStoredProcedure.Execute

			X_RETVAL = cmd("X_RETVAL")
			set cmdStoredProcedure = nothing
	
			response.Write X_RETVAL
			response.End
cuando pruebo sale el siguiente error:

Error Type:
ADODB.Connection (0x800A0BB9)
Argumentos incorrectos, fuera del intervalo permitido o en conflicto con otros.
/intranet/IT/InterfaseVenta/frmInter_Venta.asp, line 231

pero en esa linea es :

.CursorLocation = adUseClient

me podrian ayudar con este tema

saludos cordiales
  #2 (permalink)  
Antiguo 11/04/2008, 11:45
 
Fecha de Ingreso: julio-2005
Mensajes: 51
Antigüedad: 18 años, 10 meses
Puntos: 1
Re: Store Procedure Con oracle 10g

Hola, pues figurate ese error te da porque no tienes definida la variable adUseClient.

Para solucionarlo tienes que agregar la siguiente linea
<!--#include file="adovbs.inc"-->

si no te funciona tienes que declara la variable adUseClient o simplemente ponle el número 3 y con eso te debería de funcionar... Espero que te haya ayudado...


Talvez me puedas hechar una manita... porque yo estoy también intentado ejecutar un SP de Oracle pero me da un error, espero tu respuesta...

Atte.,

Última edición por Host_91; 11/04/2008 a las 11:50
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:49.