Lotus Notes 데이터베이스의 "활동 기록"플래그를 검색하는 방법은 무엇입니까?
스크린 샷 (왼쪽 하단 모서리의 확인란 참조)에 표시된 Lotus Notes 데이터베이스의 "기록 활동"플래그를 검색하고 싶습니다. API를 통해 어떻게 할 수 있습니까?
Lotus Notes 데이터베이스의 "활동 기록"플래그를 검색하는 방법은 무엇입니까?
스크린 샷 (왼쪽 하단 모서리의 확인란 참조)에 표시된 Lotus Notes 데이터베이스의 "기록 활동"플래그를 검색하고 싶습니다. API를 통해 어떻게 할 수 있습니까?
업데이트 : LotusScript만으로는 불가능하지만 Lotus Notes C API를 통해이 정보를 얻을 수 있습니다.
NSFDbGetUserActivity 메서드는 사용자 활동 정보 (대화 상자에 표시됨)를 반환하거나 요약 정보가없는 경우 ERR_SPECIAL_ID
을 반환합니다. 이것은 레코드 활동 플래그가 선택되었는지 여부를 판별하는 정확한 방법은 아니지만 메소드의 결과에서 플래그의 상태를 유추 할 수 있습니다. 물론
은 여전히 플래그 체크있는 기회가있다, 그러나 활동은 아직 기록되지 않은, 또는 반대로 플래그 하지이 선택하지만 활동이 이전에 데이터베이스에 기록 된 것입니다.
다른 솔루션은 일반적으로 사용자 작업에 기록되는 작업을 프로그래밍 방식으로 수행하는 것일 수 있습니다. 그런 활동이 실제로 기록되었는지 확인한 다음 해당 플래그가 활성 상태인지 여부를 알 수 있습니다. 이 코드를 실행하기 위해 특별한 Notes 사용자에게 헌신하는 경우 정상적인 최종 사용자 활동으로 인한 위양성을 피하는 활동 목록에서 해당 사용자를 선택하는 것이 더 쉽습니다.
'Structures used by Notes C API
Type TIMEDATE
Innards(1) As Long 'DWORD
End Type
Const MAXALPHATIMEDATE = 80
Type DBACTIVITY
First As TIMEDATE 'TIMEDATE /* Beginning of reporting period */
Last As TIMEDATE 'TIMEDATE /* End of reporting period */
Uses As Long 'DWORD /* # of uses in reporting period */
Reads As Long 'DWORD /* # of reads in reporting period */
Writes As Long 'DWORD /* # of writes in reporting period */
PrevDayUses As Long 'DWORD /* # of uses in previous 24 hours */
PrevDayReads As Long 'DWORD /* # of reads in previous 24 hours */
PrevDayWrites As Long 'DWORD /* # of writes in previous 24 hours */
PrevWeekUses As Long 'DWORD /* # of uses in previous week */
PrevWeekReads As Long 'DWORD /* # of reads in previous week */
PrevWeekWrites As Long 'DWORD /* # of writes in previous week */
PrevMonthUses As Long 'DWORD /* # of uses in previous month */
PrevMonthReads As Long 'DWORD /* # of reads in previous month */
PrevMonthWrites As Long 'DWORD /* # of writes in previous month */
End Type
'STATUS LNPUBLIC NSFDbGetUserActivity(DBHANDLE hDB, DWORD Flags, DBACTIVITY far *retDbActivity, HANDLE far *rethUserInfo, WORD far *retUserCount);
Declare Function NSFDbGetUserActivity Lib "nnotes.dll" (Byval hDB As Long, Byval Flags As Long, retDbActivity As DBACTIVITY, rethUserInfo As Long, retUserCount As Integer) As Integer
'STATUS LNPUBLIC NSFDbClose(DBHANDLE hDB);
Declare Function NSFDbClose Lib "nnotes.dll" (Byval hDB As Long) As Integer
'STATUS LNPUBLIC NSFDbOpen(char far *PathName, DBHANDLE far *rethDB);
Declare Function NSFDbOpen Lib "nnotes.dll" (Byval filepath As String, DB As Long) As Integer
'STATUS LNPUBLIC ConvertTIMEDATEToText(const void far *IntlFormat, const TFMT far *TextFormat, const TIMEDATE far *InputTime, char far *retTextBuffer, WORD TextBufferLength, WORD far *retTextLength);
Declare Function ConvertTIMEDATEToText Lib "nnotes.dll" (Byval IntlFormat As Integer, Byval TextFormat As Integer, InputTime As TIMEDATE, Byval retTextBuffer As String, Byval TextBufferLength As Integer, retTextLength As Integer) As Integer
http://www.triplewhitefox.com/tech-calling-c-api-from-lotusscript
(선언) :
는아래의 코드는 방법이 튜토리얼 페이지에서 예 # 3에서 가져온 C API를 통해 사용자 활동 정보를 얻을 방법을 보여줍니다 초기화
NotesUser Activit y 클래스 (CLASSUserActivity
) 응용 프로그램은 AGECOM에서 무료로 사용할 수 있습니다. Daniel Alvers가 작성한 수업을 완전히 검토하고 업데이트했습니다. Release 2x
에
개선 포함 일본어 코드
많은 수정 및 개선.
LotusScript에서 Lotus C-API 코드를 호출 할 때 데이터 유형 및 메모리 정렬에 대한 수정.
코드 전체에서 오류 처리 구현.
검색된 사용자 활동 정보를 수집하고 표시하기위한 샘플 에이전트가 향상되었습니다.
모든 또는 선택한 데이터베이스에서 사용자 작업을 검사하는 새 옵션입니다.
사용자 활동 정보 보고서를 보여주는 새로운보기. 응용 프로그램은 표준 로터스 노츠 응용 프로그램이며 Lotus Notes 클라이언트에서 바로 실행할 수 있습니다 http://www.agecom.com.au/useractivity
:
당신은에서 AGECOM 웹 사이트에서 업데이트를 다운로드 할 수 있습니다.
사용자 활동이 아닌 Lotus Notes 데이터베이스의 "활동 기록"플래그를 검색하고 싶습니다. –
API에 대한 제 연구에서 플래그에 액세스 할 때 가장 가까운 API 일 수 있습니다. 그래도 위의 내 업데이트를 참조하십시오. 최선의 선택은 사용자 활동 요약에 대한 업데이트를 실행하는 작업을 수행 한 다음 요약을 확인하여 작업이 기록되었는지 확인하는 것입니다. –
네, 그게 유일한 선택이라고 생각합니다. 해당 플래그를 직접 검색 할 수있는 방법이없는 것 같습니다. –