<Main><Programs><Program>&lt;Main&gt;&lt;Name&gt;Actividades Completadas del día (Lista y Cantidad) &lt;/Name&gt;&lt;Key&gt;2aafef67-562b-443f-98fe-c7c0788f1370&lt;/Key&gt;&lt;Version&gt;1&lt;/Version&gt;&lt;DynamicProperties&gt;&amp;lt;Main&amp;gt;&amp;lt;DynamicProperties /&amp;gt;&amp;lt;/Main&amp;gt;&lt;/DynamicProperties&gt;&lt;Code&gt;constNumeroProgramID=0
varTextostrSQL=""
varNumeroMotor=0
varTextoUsuarios=""
varTextoResultado=""
varDSNdsn=""
varCuentaCorreoIDCuenta=0
varTextoPara=""
varTextoAsunto=""
'FIN PARAMETROS/
SQL_ActividadesHistoricas varTextostrSQL,varNumeroMotor,varTextoUsuarios 

Insertar_Titulo varTextoResultado,"Lista de actividades completadas" 
Plantilla_Registros varDSNdsn,varTextostrSQL,varTextoResultado 
SQL_QActividadesHistoricas varTextostrSQL,varNumeroMotor,varTextoUsuarios 
Insertar_Titulo varTextoResultado,"Cantidad de actividades completadas por usuario y tipo" 
Plantilla_Registros varDSNdsn,varTextostrSQL,varTextoResultado 
Enviar_Correo varCuentaCorreoIDCuenta,varTextoPara,varTextoAsunto,varTextoResultado,strErrors 

Sub SQL_ActividadesHistoricas(byref strSQL,byval Motor,byval Usuarios)
If Motor = 1 Then
	strSQL = _
	"select " &amp;amp; _
	"historia.usuario as Usuario, " &amp;amp; _
	"historia.actividad as Actividad, " &amp;amp; _
	"historia.fecha as Fecha, " &amp;amp; _
	"historia.referencia as Referencia, " &amp;amp; _
	"(historia.Fin - historia.Inicio) as 'Duración (min)', " &amp;amp; _
	"left(historia.notas,600) as Notas, " &amp;amp; _
	"historia.nombre as Nombre, " &amp;amp; _
	"historia.empresa as Empresa, " &amp;amp; _
	"Case historia.origen " &amp;amp; _
	"When 2 Then 'Empresa' " &amp;amp; _
	"When 3 Then 'Contacto' " &amp;amp; _ 
	"When 4 Then 'Particular' " &amp;amp; _ 
	"When 0 Then 'No enlazado' " &amp;amp; _ 
	"End as Entidad " &amp;amp; _  
	"From historia " &amp;amp; _  
	"Where " &amp;amp; _ 
	"historia.usuario in " &amp;amp; Usuarios &amp;amp; " AND " &amp;amp; _
	"historia.fecha = curdate() " &amp;amp; _ 
	"Order By historia.usuario,historia.actividad"
Else
	strSQL = _
	"select " &amp;amp; _
	"historia.usuario as Usuario, " &amp;amp; _
	"historia.actividad as Actividad, " &amp;amp; _
	"historia.fecha as Fecha, " &amp;amp; _
	"historia.referencia as Referencia, " &amp;amp; _
	"(historia.Fin - historia.Inicio) as 'Duración (min)', " &amp;amp; _
	"substring(historia.notas,1,600) as Notas, " &amp;amp; _
	"historia.nombre as Nombre, " &amp;amp; _
	"historia.empresa as Empresa, " &amp;amp; _
	"Case historia.origen " &amp;amp; _ 
	"When 2 Then 'Empresa' " &amp;amp; _
	"When 3 Then 'Contacto' " &amp;amp; _
	"When 4 Then 'Particular' " &amp;amp; _ 
	"When 0 Then 'No enlazado' " &amp;amp; _ 
	"End as Entidad " &amp;amp; _  
	"From historia " &amp;amp; _  
	"Where " &amp;amp; _ 
	"historia.usuario in " &amp;amp; Usuarios &amp;amp; " AND " &amp;amp; _
	"CONVERT(CHAR(10),historia.fecha,103) = CONVERT(CHAR(10),getdate(),103) " &amp;amp; _
	"Order By historia.usuario,historia.actividad"
End If
End Sub
Sub Plantilla_Registros(byval dsn,byval strSQL,byref strResultado)
Dim cn
Dim strHead
Dim strBody
dim F 'as adodb.Field

set cn = createobject("Adodb.Connection")

set rs = createobject("Adodb.recordset")

cn.open dsn

rs.open strsql,cn

'ARMA EL ENCABEZADO
strHead = strHead &amp;amp; "&amp;lt;table width=""100%"" border=""1"" bordercolor=""#00FF00""&amp;gt;"
strHead = strHead &amp;amp; "  &amp;lt;tr&amp;gt;"
For Each F in rs.Fields
	strHead = strHead &amp;amp; "    &amp;lt;th width=""96"" scope=""col""&amp;gt;" &amp;amp; F.Name &amp;amp; "&amp;lt;/th&amp;gt;"
Next
strHead = strHead &amp;amp; "  &amp;lt;/tr&amp;gt;"
	
While Not Rs.Eof
	
	strBody = strBody &amp;amp; "  &amp;lt;tr&amp;gt;"
	
	For Each F in Rs.Fields
      	strBody = strBody &amp;amp; "    &amp;lt;td&amp;gt;" &amp;amp; F.Value &amp;amp; "&amp;lt;/td&amp;gt;"
	Next

	strBody = strBody &amp;amp; "  &amp;lt;/tr&amp;gt;"

	rs.movenext
Wend

If Len(strBody) &amp;gt; 0 Then
	strBody = strHead &amp;amp; strBody &amp;amp; "&amp;lt;/table&amp;gt;"
	strResultado = strResultado &amp;amp; strBody
End IF

if rs.state = 1 then
rs.close
end if
set rs = nothing

if cn.state = 1 then
cn.close
end if
set cn = nothing

End Sub
Sub Insertar_Titulo(byref strResultado,byval strTitulo)
If Len(strResultado) &amp;gt; 0 Then
	strResultado = strResultado &amp;amp; "&amp;lt;BR&amp;gt;&amp;lt;/BR&amp;gt;"
End If
strResultado = strResultado &amp;amp; "&amp;lt;B&amp;gt;" &amp;amp; strTitulo &amp;amp; "&amp;lt;/B&amp;gt;"
End Sub
Sub SQL_QActividadesHistoricas(byref strSQL,byval Motor,byval Usuarios)
If Motor = 1 Then
	strSQL = _
	"select " &amp;amp; _
	"historia.usuario as Usuario, " &amp;amp; _ 
	"historia.actividad as Actividad, " &amp;amp; _
	"count(historia.recid) as 'Cantidad' " &amp;amp; _
	"From historia  " &amp;amp; _
	"Where " &amp;amp; _
	"historia.usuario in " &amp;amp; Usuarios &amp;amp; " AND " &amp;amp; _
	"historia.fecha = curdate() " &amp;amp; _ 
	"group by historia.actividad,historia.usuario  " &amp;amp; _
	"order by historia.usuario,historia.actividad"
Else
	strSQL = _
	"select " &amp;amp; _
	"historia.usuario as Usuario, " &amp;amp; _ 
	"historia.actividad as Actividad, " &amp;amp; _
	"count(historia.recid) as 'Cantidad' " &amp;amp; _
	"From historia  " &amp;amp; _
	"Where " &amp;amp; _
	"historia.usuario in " &amp;amp; Usuarios &amp;amp; " AND " &amp;amp; _
	"CONVERT(CHAR(10),historia.fecha,103) = CONVERT(CHAR(10),getdate(),103) " &amp;amp; _
	"group by historia.actividad,historia.usuario  " &amp;amp; _
	"order by historia.usuario,historia.actividad"
End If
End Sub
Sub Enviar_Correo(byval IDCuenta,byval Para,byval Asunto,byval Cuerpo,byref Errores)
dim oMail

Set oMail = CreateObject("StrategiconMain.sMail")

oMail.Send_Mail constNumeroProgramID, IDCuenta, Para, "", "", Asunto, Cuerpo, "", Errores
    
End Sub
&lt;/Code&gt;&lt;/Main&gt;</Program><Program>&lt;Main&gt;&lt;Name&gt;Punto de Pedido (Asist)&lt;/Name&gt;&lt;Key&gt;d4734f24-84a0-492b-a44d-688812e248a6&lt;/Key&gt;&lt;Version&gt;1&lt;/Version&gt;&lt;DynamicProperties&gt;&amp;lt;Main&amp;gt;&amp;lt;DynamicProperties /&amp;gt;&amp;lt;/Main&amp;gt;&lt;/DynamicProperties&gt;&lt;Code&gt;constNumeroProgramID=0
varDSNdsn=""
varTextoResultado=""
varTextostrSQL=""
varCuentaCorreoIDCuenta=0
varNumeroMotor=0
'FIN PARAMETROS/
SQL_PuntoDePedido varTextostrSQL,varNumeroMotor 
Plantilla_Registros varDSNdsn,varTextostrSQL,varTextoResultado 
Ejecutar_SiLaCadenaEsMayorACero varTextoResultado 
Sub Enviar_Correo(byval IDCuenta,byval Para,byval Asunto,byval Cuerpo,byref Errores)
dim oMail

Set oMail = CreateObject("StrategiconMain.sMail")

oMail.Send_Mail constNumeroProgramID, IDCuenta, Para, "", "", Asunto, Cuerpo, "", Errores
    
End Sub
Sub Ejecutar_SiLaCadenaEsMayorACero(byval CadenaDeTexto)
If len(CadenaDeTexto)&amp;gt; 0 Then

	Enviar_Correo varCuentaCorreoIDCuenta,"fabian@tacticasoft.com","Aviso de STRATEGICON",varTextoResultado,"""" 


End IF
End Sub
Sub Plantilla_Registros(byval dsn,byval strSQL,byref strResultado)
Dim cn
Dim strHead
Dim strBody
dim F 'as adodb.Field

set cn = createobject("Adodb.Connection")

set rs = createobject("Adodb.recordset")

cn.open dsn

rs.open strsql,cn

'ARMA EL ENCABEZADO
strHead = strHead &amp;amp; "&amp;lt;table width=""100%"" border=""1"" bordercolor=""#00FF00""&amp;gt;"
strHead = strHead &amp;amp; "  &amp;lt;tr&amp;gt;"
For Each F in rs.Fields
	strHead = strHead &amp;amp; "    &amp;lt;th width=""96"" scope=""col""&amp;gt;" &amp;amp; F.Name &amp;amp; "&amp;lt;/th&amp;gt;"
Next
strHead = strHead &amp;amp; "  &amp;lt;/tr&amp;gt;"
	
While Not Rs.Eof
	
	strBody = strBody &amp;amp; "  &amp;lt;tr&amp;gt;"
	
	For Each F in Rs.Fields
      	strBody = strBody &amp;amp; "    &amp;lt;td&amp;gt;" &amp;amp; F.Value &amp;amp; "&amp;lt;/td&amp;gt;"
	Next

	strBody = strBody &amp;amp; "  &amp;lt;/tr&amp;gt;"

	rs.movenext
Wend

If Len(strBody) &amp;gt; 0 Then
	strBody = strHead &amp;amp;  strBody &amp;amp; "&amp;lt;/table&amp;gt;"
	strResultado = strBody
End IF

if rs.state = 1 then
rs.close
end if
set rs = nothing

if cn.state = 1 then
cn.close
end if
set cn = nothing

End Sub
Sub SQL_PuntoDePedido(byref strSQL,byval Motor)
If Motor = 1 Then 'MYSQL
	strSQL = strSQL &amp;amp; _
	"select productos.descripcion as 'Descripción',productos.codigo as 'Código',a.Total, (productos_stock.PuntoPedido-a.total) as 'Diferencia' " &amp;amp; _
	"FROM productos " &amp;amp; _
	"INNER JOIN productos_stock ON productos_stock.idproducto=productos.recid " &amp;amp; _
	"INNER JOIN ( " &amp;amp; _
	"SELECT productos_stock.idproducto,Sum(ifnull(CASE productos_stockmov.TIPO " &amp;amp; _
	"WHEN 0 THEN (productos_stockmov.cantidad *  " &amp;amp; _
	"productos_stockmov.Equivalencia) " &amp;amp; _
	"WHEN 1 THEN -(productos_stockmov.cantidad * " &amp;amp; _
	"productos_stockmov.Equivalencia) ELSE 0 END,0)) AS Total " &amp;amp; _
	"FROM productos_stock LEFT JOIN productos_stockmov ON productos_stock.idproducto=productos_stockmov.idproducto " &amp;amp; _
	"AND productos_stockmov.tipo &amp;lt;&amp;gt; 2 AND productos_stockmov.tipo &amp;lt;&amp;gt; 3 " &amp;amp; _
	"GROUP BY productos_stock.idproducto " &amp;amp; _
	") as a  " &amp;amp; _
	"ON a.idproducto = productos.recid " &amp;amp; _
	"WHERE a.total &amp;lt; productos_stock.PuntoPedido"
Else 'SQLSERVER
	strSQL = strSQL &amp;amp; _
	"select productos.descripcion as 'Descripción',productos.codigo as 'Código',a.Total, (productos_stock.PuntoPedido-a.total) as 'Diferencia' " &amp;amp; _
	"FROM productos " &amp;amp; _
	"INNER JOIN productos_stock ON productos_stock.idproducto=productos.recid " &amp;amp; _
	"INNER JOIN ( " &amp;amp; _
	"SELECT productos_stock.idproducto,Sum(isnull(CASE productos_stockmov.TIPO " &amp;amp; _
	"WHEN 0 THEN (productos_stockmov.cantidad *  " &amp;amp; _
	"productos_stockmov.Equivalencia) " &amp;amp; _
	"WHEN 1 THEN -(productos_stockmov.cantidad * " &amp;amp; _
	"productos_stockmov.Equivalencia) ELSE 0 END,0)) AS Total " &amp;amp; _
	"FROM productos_stock LEFT JOIN productos_stockmov ON productos_stock.idproducto=productos_stockmov.idproducto " &amp;amp; _
	"AND productos_stockmov.tipo &amp;lt;&amp;gt; 2 AND productos_stockmov.tipo &amp;lt;&amp;gt; 3 " &amp;amp; _
	"GROUP BY productos_stock.idproducto " &amp;amp; _
	") as a  " &amp;amp; _
	"ON a.idproducto = productos.recid " &amp;amp; _
	"WHERE a.total &amp;lt; productos_stock.PuntoPedido"
end if 
End Sub
&lt;/Code&gt;&lt;/Main&gt;</Program></Programs><Behaviors /><WizPrograms /></Main>