cancel
Showing results for 
Search instead for 
Did you mean: 

Numeración de listado de informe

Former Member
0 Kudos

Apreciados compañeros:  como puedo agregarle una columna que mantenga la numeracion a este informe necesito colocar la numeracion de las lineas a este informe.  SELECT T0.callID'Llamada #', T0.createDate, T0.createTime, T0.U_ModCon'Contrato', T0.priority, T5.firstName'Técnico', T0.custmrName'Cliente', T0.U_Suc1'Ubicación-Equipo', T3.Name'Status', T0.subject FROM OSCL T0  INNER JOIN OSCO T2 ON T0.origin = T2.originID INNER JOIN OSCS T3 ON T0.status = T3.statusID INNER JOIN OUSR T4 ON T0.assignee = T4.INTERNAL_K INNER JOIN OHEM T5 ON T0.technician = T5.empID WHERE T4.U_NAME Like '%%Luis Kaa%%' and  T0.status NOT Like '%%-1%%' and  T0.status NOT Like '%%1%%' ORDER BY T0.createDate   gracias,   alberto

Accepted Solutions (1)

Accepted Solutions (1)

felipe_loyolarodriguez
Active Contributor
0 Kudos

No, no funciona ni como stored procedure ni como sql dinamico y eso que lo estoy ejecutando sin campos de usuario.

Pero si lo ejecutas desde sql management studio, funciona sin problemas.

Seguiré probando.

felipe_loyolarodriguez
Active Contributor
0 Kudos

Ya logre hacer funcionar el ROW_NUMBER()

Utiliza este query, agrega tus campos de usuario...se los quite cuando hize las pruebas

SELECT    

          CAST(ROW_NUMBER() OVER (ORDER BY T0.[createdate]) AS INT) AS Linea#,  

          T0.[callID] AS Llamada#,    

          T0.[createDate],    

          T0.[createTime],

          T0.[priority],   

          T5.[firstName] AS Tecnico,    

          T0.[custmrName] AS Cliente,   

          T3.[Name] AS Status,   

          T0.[subject]    

   

   

FROM [dbo].[OSCL] T0   

LEFT JOIN [dbo].[OSCO] T2 ON T0.[origin] = T2.[originID]

LEFT JOIN [dbo].[OSCS] T3 ON T0.[status] = T3.[statusID]

LEFT JOIN [dbo].[OUSR] T4 ON T0.[assignee] = T4.[INTERNAL_K]

LEFT JOIN [dbo].[OHEM] T5 ON T0.[technician] = T5.[empID]  

ORDER BY T0.[createDate]

SALUDOS

Former Member
0 Kudos

correcto, ya lo hice, como le decía al amigo Fernando, esto lo estaba usando para las alertas, mmmm

Former Member
0 Kudos

Perfecto, ya lo corrí funciona perfecto, una cosita mas como hago para que solo traiga las ordenes abiertas.?  gracias !!!  Alberto

felipe_loyolarodriguez
Active Contributor
0 Kudos

Agrega en el WHERE el estado de la OSCL.status = -3 que es el estado abierto.

Former Member
0 Kudos

Podrías colocarlo esta tratando pero no me sale, que se sea solo por técnico especifico " Luis Kaa" y que solo sean las ordenes de servicios abiertas.  gracias!!!!  Felipe, muy amable de tu parte

Former Member
0 Kudos

así como esta antes pero con el indice.  BYE

Answers (2)

Answers (2)

Former Member
0 Kudos

Alberto:

Prueba la siguiente query:

SELECT

T0.callID'Llamada #', T0.createDate, T0.createTime, T0.U_ModCon'Contrato', T0.priority,


T5

.firstName'Tcnico', T0.custmrName'Cliente', T0.U_Suc1'Ubicacin-Equipo', T3.Name'Status',


T0

.subject ,


ROW_NUMBER () OVER (ORDER BY createdate) as Registro




FROM OSCL T0 


INNER JOIN OSCO T2 ON T0.origin = T2.originID


INNER JOIN OSCS T3 ON T0.status = T3.statusID


INNER JOIN OUSR T4 ON T0.assignee = T4.INTERNAL_K


INNER JOIN OHEM T5 ON T0.technician = T5.empID


WHERE T4.U_NAME Like '%%Luis Kaa%%' and  T0.status NOT Like '%%-1%%'


and  T0.status NOT Like '%%1%%'


ORDER BY T0.createDate  

Former Member
0 Kudos

Hola Fernando:  Me sale el siguiente error.   1). [Microsoft][SQL Server Native Client 10.0][SQL Server]Ambiguous column name 'createdate'. 2). [Microsoft][SQL Server Native Client 10.0][SQL Server]Statement 'Alertas recibidas' (OAIB) (s) could not be prepared.    gracias por tu atención,  alberto

Former Member
0 Kudos

Prueba lo siguiente:

SELECT

T0.callID'Llamada #', T0.createDate, T0.createTime, T0.U_ModCon'Contrato', T0.priority,


T5

.firstName'Tcnico', T0.custmrName'Cliente', T0.U_Suc1'Ubicacin-Equipo', T3.Name'Status',


T0

.subject ,


ROW_NUMBER () OVER (ORDER BY t0.createdate) as Registro




FROM OSCL T0 


INNER JOIN OSCO T2 ON T0.origin = T2.originID


INNER JOIN OSCS T3 ON T0.status = T3.statusID


INNER JOIN OUSR T4 ON T0.assignee = T4.INTERNAL_K


INNER JOIN OHEM T5 ON T0.technician = T5.empID


WHERE T4.U_NAME Like '%%Luis Kaa%%' and  T0.status NOT Like '%%-1%%'


and  T0.status NOT Like '%%1%%'


ORDER BY T0.createDate

Former Member
0 Kudos

Hola Fernando,   me sale el siguiente error,  1). [Microsoft][SQL Server Native Client 10.0][SQL Server]Must specify table to select from. 2). [Microsoft][SQL Server Native Client 10.0][SQL Server]Statement 'Valores definidos por usuario' (CSHS) (s) could not be prepared.  gracias por tu atención,  Alberto

Former Member
0 Kudos

Hola Fernando, nada no se porque no funsiona.   saluds,  alberto

Former Member
0 Kudos

Fernando,  sabes a que se debe este erro,  1). [Microsoft][SQL Server Native Client 10.0][SQL Server]Incorrect syntax near '.'. 2). [Microsoft][SQL Server Native Client 10.0][SQL Server]Statement 'Contratos de servicio' (OCTR) (s) could not be prepared.

Former Member
0 Kudos

Probablemente esta query la tienes que hacer ejecutando un proced almacenado, ya que no estoy segiro si sap es capaz de traducir la sentencia que te agregue a tu query, si me envias la query sin campos de usuario yo podria probarla

Former Member
0 Kudos

Perfecto,lo hice directamente en el SQL el asunto es que esto lo uso en una alerta, para que llegue a través del SBO MAILER a los supervisores para cada lista.

felipe_loyolarodriguez
Active Contributor
0 Kudos

Hola Alberto, no entiendo muy bien que requieres.

Podrias especificar mejor o poner un pequeño ejemplo.

Atte.

Felipe

Former Member
0 Kudos

Hola Felipe,  El informe tiene el listado de las ordenes de servicios abiertas  a este mismo listado quiero agregarle el indice o numeracion de cada lineas o llamada de servicio.  Para que me muestre la numeración del to   Línea #     Llamada #     Fecha de creación     Prioridad        1       33249   2   3   4

felipe_loyolarodriguez
Active Contributor
0 Kudos

Hola

Prueba este query

SELECT

          ROW_NUMBER() OVER (ORDER BY T0.createdate) AS Linea#,

,          T0.callID AS Llamada#,

          T0.createDate,

          T0.createTime,

          T0.U_ModCon'Contrato',

          T0.priority,

          T5.firstName AS Tecnico,

          T0.custmrName AS Cliente,

          T0.U_Suc1 AS Ubicacin_Equipo,

          T3.Name AS Statu,

          T0.subject

FROM OSCL T0

INNER JOIN OSCO T2 ON T0.origin = T2.originID

INNER JOIN OSCS T3 ON T0.status = T3.statusID

INNER JOIN OUSR T4 ON T0.assignee = T4.INTERNAL_K

INNER JOIN OHEM T5 ON T0.technician = T5.empID

WHERE T4.U_NAME LIKE '%%Luis Kaa%%' AND T0.status NOT LIKE '%%-1%%' AND T0.status NOT LIKE '%%1%%'

ORDER BY T0.createDate

Saludos

Former Member
0 Kudos

Hola Felipe,   me sale error en sintaxys lo revise pero no veo nanda.  error:  1). [Microsoft][SQL Server Native Client 10.0][SQL Server]Incorrect syntax near ','. 2). [Microsoft][SQL Server Native Client 10.0][SQL Server]Statement 'Alertas recibidas' (OAIB) (s) could not be prepared.

felipe_loyolarodriguez
Active Contributor
0 Kudos

Prueba ahora, habia una "coma" mal puesta

SELECT  

          ROW_NUMBER() OVER (ORDER BY T0.createdate) AS Linea#, 

          T0.callID AS Llamada#,  

          T0.createDate,  

          T0.createTime,  

          T0.U_ModCon'Contrato', 

          T0.priority, 

          T5.firstName AS Tecnico,  

          T0.custmrName AS Cliente,  

          T0.U_Suc1 AS Ubicacin_Equipo, 

          T3.Name AS Statu, 

          T0.subject  

 

 

FROM OSCL T0 

INNER JOIN OSCO T2 ON T0.origin = T2.originID  

INNER JOIN OSCS T3 ON T0.status = T3.statusID 

INNER JOIN OUSR T4 ON T0.assignee = T4.INTERNAL_K  

INNER JOIN OHEM T5 ON T0.technician = T5.empID  

WHERE T4.U_NAME LIKE '%%Luis Kaa%%' AND T0.status NOT LIKE '%%-1%%' AND T0.status NOT LIKE '%%1%%' 

ORDER BY T0.createDate 

Former Member
0 Kudos

Felipe,  aun persiste el problema:   1). [Microsoft][SQL Server Native Client 10.0][SQL Server]Must specify table to select from. 2). [Microsoft][SQL Server Native Client 10.0][SQL Server]Statement 'Valores definidos por usuario' (CSHS) (s) could not be prepared.

Former Member
0 Kudos
felipe_loyolarodriguez
Active Contributor
0 Kudos

Parece que es un pequeño bug de SAP con la funcion ROW_NUMBER()

Ejecutalo desde SQL, pruebalo.