MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 11/02/08, 16:30:52
aldape aldape is offline
Senior Member
 
Fecha de Ingreso: dic 2007
Mensajes: 204
Saber si Select Single Regreso mas de 1 registro

Saber si Select Single Regreso mas de 1 registro..

Es posible?

Saludos.
Responder Con Cita
  #2  
Viejo 11/02/08, 16:51:41
temaljose temaljose is offline
Senior Member
 
Fecha de Ingreso: oct 2007
Mensajes: 203
el select single te regresa nada mas una entrada si existen varias te agarra la entrada mas antigua, si quieres que un select te agarre todas las entradas utiliza el select * into table, por ejemplo pero existen varias formas yo utilizo esta porque me parece mas eficiente, espero haberte ayudado, saludos
__________________
Lo unico que se, es que no se nada.....
Responder Con Cita
  #3  
Viejo 11/02/08, 16:54:02
Jorge L T Jorge L T is offline
Member
 
Fecha de Ingreso: jul 2007
Localización: Argentina
Mensajes: 58
Un Select Single devuelve UN sólo registro o fila de la tabla en cuestión, sy-subrc = 0 => OK, sy-subrc = 4 => sin registros para el where definido
J
Responder Con Cita
  #4  
Viejo 11/02/08, 17:00:20
aldape aldape is offline
Senior Member
 
Fecha de Ingreso: dic 2007
Mensajes: 204
Select single regresa un solo registro,

sera posible saber si es unico? sin tener que hacer un count(*) o algo por el estilo...

la pregunta es solo por eficiencia en el codigo, para no escribir mas codigo de lo debido...

yo imagino algo asi

sy-subrc 0 = 1 registro
sy-subrc 8 > 1 registros... algo loco por el estilo

Saludos.
Responder Con Cita
  #5  
Viejo 11/02/08, 17:16:08
abapconsultoria abapconsultoria is offline
Senior Member
 
Fecha de Ingreso: ene 2008
Mensajes: 101
No, no existe. Con el select single que realice de prueba observa como lo tradujo la interfase de BD.


SELECT
/*+
FIRST_ROWS (1)
*/
*
FROM
"TADIR"
WHERE
ROWNUM <= :A0

Es decir el servidor siempre vaa devolver el primero y vos no vas a tener forma desde el R3 de saber cuantos habia en la BD. Vas a tener que utilizar la funcion de agregacion directamente.

Saludos.
__________________




Lo importante no es saber sino saber quien es el que sabe
Responder Con Cita
  #6  
Viejo 11/02/08, 17:21:55
aldape aldape is offline
Senior Member
 
Fecha de Ingreso: dic 2007
Mensajes: 204
Muchas gracias!
En una chance, nos explicas como se hace la traduccion que hiciste...

Saludos
Responder Con Cita
  #7  
Viejo 13/02/08, 14:41:42
Avatar de robert_milan
robert_milan robert_milan is offline
Senior Member
 
Fecha de Ingreso: jun 2006
Localización: Mexico, DF
Mensajes: 315
un select single siempre te regresa un registro y siempre es el que encuentra primero con la coincidencia en el where.

por lo que si quieres saber cuantos registros extrae con la restriccion del where te sugiero que lo cambias a :

select count para saber si tienes mas de 2
__________________
Un Huevon No Inútil


Solo di lo que piensas, a la mejor tienes la mejor respuesta....

Si alguien ya lo hizo, copialo y cambiale las variables total es un codigo nuevo.....

Si SAP lo hace se puede hacer, no me pidas hacer algo que SAP no ha hecho.....

Consultor FI jr/ABAP Sr.
Responder Con Cita
  #8  
Viejo 13/02/08, 15:36:00
abapconsultoria abapconsultoria is offline
Senior Member
 
Fecha de Ingreso: ene 2008
Mensajes: 101
Lo que puse se obtiene de el traceo de una sentencia select en la trx ST05. Ahi podes ver la conversion que realiza la interfase de base de datos a SQL Nativo.

Saludos
__________________




Lo importante no es saber sino saber quien es el que sabe
Responder Con Cita
  #9  
Viejo 11/09/08, 17:26:54
willymj willymj is offline
Junior Member
 
Fecha de Ingreso: abr 2006
Mensajes: 4
Select con N cantidad de registros

En Sql server los query para traer 10 registros es algo asi:

Select top 10 * From Tabla

en Abap eso mismo es igual a:

Select *
INTO TABLE tabla_interna
UP TO 20 ROWS
FROM but000

asi de simple.....

la gracia es el Up to traes 20 registros....
Responder Con Cita
  #10  
Viejo 11/09/08, 21:52:51
ibecerra
 
Mensajes: n/a
quieres hacer un select count
facil
wcount type i
select count(*) into wcount from tabla where condiciones.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 08:01:52.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web