氚云定时器

H3.SmartForm.Timer 特性:继承类Timer,四个小时执行一次,时间是不固定的
select * from H_user where like '%张三%' and state=0


-----后端代码里 不能放在表单的类里面,要独立出来------
定时器:判断产品过期没有
-----OnLoad    在base.OnLoad(response)上面-----
MyTest_Timer timer=new MyTest_Timer();
timer.DoTask(this.Engine);


 public class MyTest_Time:H3.SmartForm.Timer
//构造方法,跟类名保持一致,里面不必写代码,但是必须存在
 public MyTest_Timer()
{
//重写定时器引擎执行的方法,必须存在,且方法名必须为OnWork
 protected override void OnWork(H3.IEngine engine)
{
 DoTask(engine);
}

public void DoTask(H3.IEngine engine)
{
 string sql="select * from I_状态栏中的目标ID where date<now() and productNumb>0";

 DataTable SelDt=engine.Query.QueryTable(sql,null);

if(SelDt!=null && SelDt.Rows.Count>0)
{
 foreach(DataRow item in SetDt.Rows)
{

 H3.DataModel.BizObject biz=H3.DataModel.BizObject.Load(H3.Organization.User.SystemUserId,engine,"目标表状态栏中的ID",item["objectid"]+string.Empty,false);

 SendMessage(engine,biz);
}
}
}

public void SendMessage(H3.IEngine engine,H3.DataModel.BizObject biz)
{
H3.Task.UserTask   task = new H3.Task.UserTask();

  task.ObjectId =   Guid.NewGuid().ToString();//Guid码

  task.Sender =   H3.Organization.User.SystemUserId;//任务的发起人id

  task.UserId =   this.Request.UserContext.UserId; //任务的接收人id

  task.AppCode = appId;//应用编码appcode

  task.TaskType =   H3.Task.TaskType.Reminder; //任务类型为提醒

  task.SchemaCode =   "D000024chuangjian"; //表单编码

  task.TargetType =   H3.LinkTargetType.BizObject; //关联类型

  task.TargetId =     biz.BizObjectId; //关联业务对象的ID

  task.TargetName =   biz.Name;  //关联业务对象的数据标题

  task.Name = "库存过期!"; //提醒标题

  task.Summary = "库存过期!"; //提醒的内容

  task.AlertTime =   DateTime.Now;  // 提醒时间

  task.ReminderType =   H3.Task.ReminderType.Once; //提醒类型

  task.StartTime =   DateTime.Now; //开始时间

  task.EndTime = DateTime.Now;   //截止时间

  task.TaskState =   H3.Task.TaskState.Unfinished; //任务状态

  task.AlertState =   H3.Task.AlertState.Waiting; //提醒的状态

  Request.Engine.TaskManager.AddTask(task);//添加任务

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值