DEP创建的单据如何写入上机日志

栏目:eas cloud知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

DEP创建的单据如何写入上机日志

需求场景:

dep创建的单据,在前台删除单据后,由于上机日志没有记录,不清楚是谁做了删除操作,需要写入上机日志中


实现原理:

查看上机日志的实现原理文档如附件所示可知,核心原理是在执行对应业务操作时先开启上机日志,调用

com.kingdee.eas.base.log.LogUtil

public static IObjectPK beginLog(Context ctx, String methodName, BOSObjectType bizObjType, IObjectPK instancePK, String instanceDeatil, String logItemName) 方法先写入一条失败记录,操作完对应业务后调用

com.kingdee.eas.base.log.LogUtilpublic static void afterLog(Context ctx, IObjectPK logPK) 方法更新状态


实现方式:

实体-扩展定义

image.webp


找到对应方法编写脚本

image.webp


image.webp

参考脚本

前置脚本:

//开启上机日志 

var ctx = pluginCtx.getContext();

 //获取当前登录用户 

var userName = com.kingdee.eas.util.app.ContextUtil.getCurrentUserInfo(ctx).toString(); 

//获取上下文

 var appLog = com.kingdee.eas.base.log.AppLogFactory.getLocalInstance(ctx); 

//定义参数 

var methodName = "delete"; 

var bizObjType = com.kingdee.bos.util.BOSObjectType.create("0E1C26E5"); //instancePK 可以为空 

var instancePK = null; var instanceDetail = userName +"再删除单据"; 

//调用日志 

var logpk = appLog.writeLog(methodName, bizObjType, instancePK, instanceDetail); 

//存入上下文

pluginCtx.getContext().put("logpk",logpk);


后置脚本

//获取key 

var ctx = pluginCtx.getContext(); 

var logpk = pluginCtx.getContext().get("logpk"); 

//获取上下文 

var appLog = com.kingdee.eas.base.log.AppLogFactory.getLocalInstance(ctx); 

if(logpk != null){ 

 appLog.upateLogStatus(logpk);

 }


实现效果

image.webp

EAS日志服务实施开发指南.doc

DEP创建的单据如何写入上机日志

需求场景:dep创建的单据,在前台删除单据后,由于上机日志没有记录,不清楚是谁做了删除操作,需要写入上机日志中实现原理:查看上机日志...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息