![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Consultas anidadas en procedimientos almacenados
hola foro tengo un problema con el procedimiento almacenado que tengo que es el siguiente:
COMMIT WORK; SET TERM ^ ; CREATE PROCEDURE DetalleTM (Des varchar (30),Codigo char (2)) RETURNS (Numero integer,TipoM varCHAR(40)) as begin Numero=0; do begin if ( ![]() begin select DETALLE FROM TIPO_MATERIAL WHERE CODTIPOMATERIAL IN (select CODTIPOMATERIAL FROM TIPOMATERIAL_CUENTACONTABLE WHERE NROCUENTACON LIKE '125%'AND NROCUENTACON IN (SELECT NROCUENTACON FROM CUENTA_CONTABLE WHERE CODREG=:Codigo)) into :TipoM; end else begin select DETALLE FROM TIPO_MATERIAL WHERE CODTIPOMATERIAL IN (select CODTIPOMATERIAL FROM TIPOMATERIAL_CUENTACONTABLE WHERE NROCUENTACON LIKE '121%' and NROCUENTACON LIKE '122%' AND NROCUENTACON IN (SELECT NROCUENTACON FROM CUENTA_CONTABLE WHERE CODREG=:Codigo)) into :TipoM; end Numero=Numero+1; suspend; end end^ SET TERM ; ^ COMMIT WORK; bueno en el procedimiento almacenado quiero mostrarlos tipos de materiales que se tengan de acuerdo al area y la regional para eso tengo tres tablas tipo de mateirales(codgio,detalle), cuenta contable(codigocuenta,detalle,codigoregional),esta dos tienen una relacion * a * y entonces tengo la tabla cuenta_tipomaterial (codcuenta,codtipomaterial), en la tabla cuentacontable hay una cuenta que empieza con el 125 que es de farmacia y el resto es de alamacenes y bueno por eso hice asi mi procedimiento almacenado pero en el momento de ejecutar me sale el error de Multiple rows in singleton select y bueno la verdad nose que sentencia me falta o como tendria que hacer ,porfavor quisiera que me ayuden les estare muy agradecido |
|
|
![]() |
|