cancel
Showing results for 
Search instead for 
Did you mean: 

Cantidad de Envio de alertas en SAP B1

former_member326598
Participant
0 Kudos

Tengo varias alertas personalizada que se activan por consultas en SQL

el tema es que si bien es cierto yo programo el periodo que las alertas se activan puede er cada 1 hora, 1 dia etc

El tema es que quisiera que muy independiete de esta periocidad quisiera que solo se envie una sola vez si es que se cumple

las condiciones no se si me dejo entender

algo asi como las alertas que vienen por defecto en sap,

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hola Grimaldo del Solar como estas

Hace un tiempo necesite hacer lo mismo y lo solucione de la siguiente forma

tengo una alarma que me dice las solicitudes de compra nuevas que existen  dia a dia

Pero que feo, que al usuario le lleguen esa cantidad de alarmas con información repetida

por lo que cree una tabla de usuario de tipo no Objeto

Aclaro a estas tablas si no tienen relación a un UDO , se les puede hacer las 4 Operaciones

Insert,Update,Delete,Select

Entonces creo la consulta  de las solicitudes de Compra diarias Sql

begin transaction

                 --Tabla de Usuario 

  insert into [@COMW_SOLIC_COMPRA]

  select

  convert(nvarchar, checksum(T0.[DocEntry], T0.[ReqName], T1.Project, T1.Dscription, T0.[ReqDate])) as Code

  ,convert(nvarchar, checksum(T0.[DocEntry], T0.[ReqName], T1.Project, T1.Dscription, T0.[ReqDate]))  as Name

  ,convert(int,T0.[DocNum]) as U_DocNum

  ,T0.[ReqName] as U_ReqName

  ,T0.[ReqDate] as [Fecha Necesaria]

  ,T1.Project as U_ItemCode

  ,T1.Dscription as  U_Dscription 

  ,T0.Comments as U_justificacion

  ,convert(nvarchar,'SI') U_enviar_correo

  ,GETDATE() U_fecha_insert 

  FROM OPRQ T0  inner join PRQ1 T1  ON T0.DocEntry=T1.DocEntry 

  WHERE T0.[DocStatus] ='O'

  and  DATEDIFF(DAY,T0.DocDate,GETDATE()) = ''

  and  not exists (select * from [@COMW_SOLIC_COMPRA]  T2 where T0.[DocNum]=T2.U_DocNum);

  select 

  'Hola buen Dia tienes estas solicitudes de compra Pendientes' as [Solicitudes Pendientes]

  ,U_DocNum as Documento

  ,U_ReqName as Solicitante

  ,U_ReqDate as [Fecha Necesaria]

  ,U_ItemCode as [Proyecto]

  ,U_Dscription AS Descripcion

  from [@COMW_SOLIC_COMPRA]

      where convert(varchar,U_fecha_insert,112) = convert(varchar,getdate(),112)

  and U_enviar_correo='SI';

  update [@COMW_SOLIC_COMPRA] set U_enviar_correo='NO'

  where convert(varchar,U_fecha_insert,112) = convert(varchar,getdate(),112)

  and U_enviar_correo='SI';

commit

-- rollback

Luego programo la Alarma para que le llegue al Usuario por correo y por sap

cada Minuto

Para que le llegue por correo electronico debe estar configurado el SBO Mailer

espero ser de Ayuda un abrazo

desde cali Colombia

former_member188471
Active Contributor
0 Kudos

Las alertas se ejecutan en el tiempo que tu les configures siempre y cuando esas consultas tengan algún resultado, de lo contrario no las ejecutar.

Mi duda queda, en como se comparta contigo, puedes poner pantalla de ejemplo?