AX2012 查询用户在线操作记录
1 static void ExportSysClientAccessLog(Args _args) 2 { 3 SysClientAccessLog sysClientAccessLog; 4 5 SysExcelApplication xlsApplication; 6 SysExcelWorkBooks xlsWorkBookCollection; 7 SysExcelWorkBook xlsWorkBook; 8 SysExcelWorkSheets xlsWorkSheetCollection; 9 SysExcelWorkSheet xlsWorkSheet; 10 SysExcelRange xlsRange; 11 12 int row = 1, idx; 13 str fileName, formName; 14 container con, conSel; 15 ; 16 17 fileName = @"C:\Users\currentUserFileName\Desktop\log\userAccessLog.csv"; 18 19 xlsApplication = SysExcelApplication::construct(); 20 xlsWorkBookCollection = xlsApplication.workbooks(); 21 xlsWorkBook = xlsWorkBookCollection.add(); 22 xlsWorkSheetCollection = xlsWorkBook.worksheets(); 23 xlsWorkSheet = xlsWorkSheetCollection.itemFromNum(1); 24 25 xlsWorkSheet.cells().item(row, 1).value("User Id"); 26 xlsWorkSheet.cells().item(row, 2).value("Form Name"); 27 xlsWorkSheet.cells().item(row, 3).value("Operation"); 28 xlsWorkSheet.cells().item(row, 4).value("DateTime"); 29 30 row++; 31 32 while select sysClientAccessLog 33 where sysClientAccessLog.createdDateTime > 2023-02-14T03:00:00 34 && sysClientAccessLog.createdDateTime < 2023-02-15T00:00:00 35 && sysClientAccessLog.createdBy == 'admin' // UserName 36 { 37 con = sysClientAccessLog.EventsContainer; 38 39 for(idx = 1; idx <= conLen(con); idx++) 40 { 41 conSel = conpeek(con, idx); 42 formName = formName2Pname(conPeek(conSel, 1)); 43 //Information to Excel 44 xlsWorkSheet.cells().item(row, 1).value(strFmt("%1", sysClientAccessLog.createdBy)); 45 xlsWorkSheet.cells().item(row, 2).value(strFmt("%1", formName ? formName : conPeek(conSel, 1))); 46 xlsWorkSheet.cells().item(row, 3).value(strFmt("%1", conPeek(conSel, 2))); 47 xlsWorkSheet.cells().item(row, 4).value(strFmt("%1", DateTimeUtil::applyTimeZoneOffset(sysClientAccessLog.createdDateTime, DateTimeUtil::getUserPreferredTimeZone()))); 48 49 row++; 50 } 51 } 52 53 54 if(WinApi::fileExists(fileName)) 55 WinApi::deleteFile(fileName); 56 57 xlsWorkbook.saveAs(fileName); 58 xlsApplication.visible(true); 59 60 info(strFmt("File has been exported")); 61 }
标签:
AX2012
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?