본문 바로가기

로터스 노츠

ODBC를 이용한 Select 쿼리 에이전트 원형 I ODBC를 이용하여 RDB의 데이터를 쿼리해오는 경우가 빈번히 발생하고 있습니다. 아래의 코드는 반복적으로 Select 구문을 소모적으로 만들다 보니 시간도 비교적 많이 걸리게 되더군요. 앞으로 지속적으로 업데이트 해 나가야 겠지만... 1단계로 정리된 코드가 있어 기록해 둡니다. --------------------------------------------------------------------------------------------- ********* (Options) ********* Option Public Uselsx "*LSXODBC" ************* (Declarations) ************* Dim ss As NotesSession Dim curDb As Notes.. 더보기
다중 웹서버 구성시 리프레쉬 문제 예를들어... 시스템 구성이 아래와 같이 되어있다고 가정을 할때. ---------------------------------------------------- 어플리케이션(결재) 서버 : app.company.com 메일서버 : mail.company.com ---------------------------------------------------- 시스템에서의 처리는 당연 결재서버 또는 메일서버를 Primary Server로 구성하고 나머지 서버는 Secondary Server로 구성하여 프로그램상으로 개발하는데는 문제점이 없도록 하고 있습니다. 하지만 웹브라우저상에서 처리되어야 하는 코드중에 이런것이 있습니다. 1) 결재 처리요청 메일 발송 2) 결재자 결재요청 메일 수신 3) 결재할 문서 목록에.. 더보기
선택목록 필드를 읽기모드에서 깔끔하게 보이도록 하는 코드 다 알지도 모르겠지만... 라디오버튼, 확인란 등... CS에서 저장을해서 읽기 모드로 볼 경우, 선택되어진 값만 보이도록 처리하기 위해서 어떻게 표현을 하시는지요.( 물론 있는 그대로를 보여줄 경우는 해당 필드만 놔두면 되겠지만요... ^^ ) 가정1. 라디오버튼을 사용. 전제1. 읽기 모드시엔 사용자가 선택한 값만 보이도록 함. 전제2. 내부코드에서 필드값을 코드화하여 사용함. 전제3. 해당 값이 추가 변경될 수 있으므로 한곳에서 관리를 해야함. -------------------------------------------------------------------------- 물론 방법은 여러가지 입니다.... 그중 한가지에 대해서 기록을 합니다. 목록 선택 필드(Options 필드)에 사용자는 기.. 더보기
에이전트 개발 표준 (Options) Option Declare -------------------------------- (Declarations) Dim ss As NotesSession Dim curDb As NotesDatabase '// 현재 Database Dim curAgent As NotesAgent '// 현재 Agent Dim curLog As NotesLog '// Log 기록 Const LOG_PROGRAM = "에이전트 프로그램(프로세스) 이름-로그 기록명" '★ Const DBPATH_LOG = "Application\log.nsf" '★ --------------------------------- Sub Initialize '★ 에이전트명은 언제나 -> (에이전트명)|agAgentName %REM.. 더보기
Back-End로 문서 삭제를... 예전에 내 Knowledge DB에 작성해 놓은 문서인데요... JS의 xmldoc와 VBScript의 tar 인수값이 문서 ID였는지 모르겠네요... ㅋㅋㅋ --------------------------------------------------------------------------------------------------- HTTP개체를 VB나 JScript로 선언하고 노츠에서 Back-End로 처리하듯이 웹 스크립트로 처리한다면..?? 물론, 어떤 분들은 숨겨진 프레임을 사용할 수도 있다고들 합니다. 하지만 숨겨진 프레임은 서브밋후 스크립트는 완료를 기다려 주지 않죠.. 바로 다음 로직이 수행되니 서브밋후 후속 조치에 어려운점들이 많습니다. 자 그럼.. 이 방법은 긴말이 필요 없습니다. 문.. 더보기
웹 개발시 오류처리 웹으로 개발된 싸이트 경우, 사용자들의 다양한 OS, 브라우저 환경으로 개발자가 미쳐 생각못한 에러들이 발생할 수 있습니다. 이런 에러들을 기록으로 남겨 개발자가 싸이트를 개선해나가기 위한 한가지 아이디어입니다. 일단 제 머리속에서 상상되는 에러 유형 세가지는 1. 일반(General) 에러 2. 자바스크립트 에러 3. 에이전트 수행 에러 먼저 1번 아시다시피 노츠에는 $$ReturnGeneralError 라는 에러화면용 양식이 있습니다. 에러 발생시 이 양식이 표시되는데, 대부분 경우 단순히 에러메세지 뿌려주는 정도에 그칩니다. 여기에 추가적으로 버튼을 만들어서 사용자가 그 에러를 관리자/담당자에게 메일 혹은 문서로 알리는 방법입니다. $$ReturnGeneralError 양식은 특수양식이라 $$Vie.. 더보기
퀵소트(Quick Sort)를 이용한 Notes Document 소트 Web 개발시 문서를 소트해야할 경우가 발생합니다. 일반적으로 NotesView를 사용하면 손쉽게 소트를 수행할 수 있으나, 도미노는 검색후 결과값에 대해 매우 한정적인 정렬방식을 제공하고, 이를 이용하여 개발을 할 경우 원하는 결과를 보여주지 못하는 경우가 많습니다. 아래의 코드는 검색후 결과 NotesDocumentCollection의 Document들의 UNID와 소트하고자하는 Field값을 각각 배열에 넣고, 해당 배열을 QuickSort 함수의 인자로해서 넘기면 원하는 순서대로 UNID 배열을 반환합니다. 일반적으로 정렬같은 경우 손쉽게 처리하기 위해 버블소트를 사용하지만 정렬을 하고자하는 대상이 많아지면 처리수행 시간은 엄청 길어 질 수 밖에 없습니다. 물론 퀵소트라고 할지라도 수많은 문서의 .. 더보기