수식어

Formula language

포뮬러 언어Lotus Notes에서 사용하는 스크립팅 언어다.많은 언어 요소들이 @-문자로 시작되기 때문에 종종 @Formula 언어(공식어)라고 불린다.다음은 선택 수식의 예:

SELECT @NoteId = "NT0050D26"

그것은 Ray Ozzie가 Lotus Notes의 초기 개발 중에 만들었다.그는 Lotus 1-2-3 스프레드시트에서 컴파일러와 디컴파일러를 빌렸지만, 스프레드시트 언어인 포뮬러 언어는 주로 숫자 처리가 아닌 문자열과 목록 처리를 위해 설계되었다.원래는 Ray Ozzie가 이전에 사용했던 아이콘Lisp에서 영감을 얻은 독특한 텍스트 목록 처리 기능을 가진 Functional 프로그래밍 언어였다.

포뮬러 언어 엔진은 Damien Katz가 Notes와 Domino 6를 위해 다시 썼다.[1]언어에 루프, 동적 실행 등 새로운 기능이 추가되어 성능이 향상되었다.[2]

포뮬러 언어는 두 부분으로 나뉜다.

  • @계산 및 단순논리의 기능
  • @사용자 인터페이스에서 작업을 수행하기 위한 명령

@기능은 Lotus Notes 전체에서 여러 곳에서 사용할 수 있다.가장 중요한 용도는 다음과 같다.

  • 사용자에게 표시할 문서(인덱스의 일종)를 선택하거나 추가 처리를 위해 문서를 선택하십시오.이 경우 공식은 각 문서에 대해 '참'(선택됨) 또는 '거짓'(선택되지 않음) 값으로 평가한다.
  • 필드에 대한 기본값을 제공하고, 사용자가 입력한 데이터를 변환하고(예: 중복 공간 제거) 이 데이터를 검증한다.
  • Notes 데이터베이스 또는 관계형 데이터베이스(ODBC 사용)에서 값 목록을 가져오십시오.이것은 사용자에게 선택할 수 있는 값 목록을 제공하는 데 사용될 수 있다.
  • 문서 세트를 처리한다.수식은 스케줄에 따라 사용자 또는 Notes 서버가 시작할 수 있는 에이전트, 프로그램 또는 매크로에 배치된다.에이전트가 트리거되면 선택한 각 문서(이는 매우 제한된 형태의 루프)에 대해 수식이 실행된다.논리가 너무 복잡하지 않다면, 이것은 많은 문서를 바꾸는 효율적인 방법이다.복잡한 변경의 경우, LotusScript를 사용한다.

@명령어는 메뉴 명령과 같다: Lotus Notes 클라이언트에서 작업을 수행한다.조치의 예는 다음과 같다.

  • Notes 데이터베이스 열기
  • 전자우편 작성
  • 특정 데이터 입력 필드에 커서 놓기
  • 창문을 닫다
  • 에이전트 시작

@명령어는 주로 버튼 수식과 같이 사용자 작업에 의해 트리거되는 수식에 사용된다.예를 들어 필드 값을 조건으로 @ 명령을 실행하면 @Functions와 결합할 수 있다.

참조

  1. ^ Damien Katz (January 4, 2005). "Formula Engine Rewrite". Personal blog. Retrieved September 30, 2016.
  2. ^ "Enhancements to the formula language in Domino 6". IBM. November 4, 2002. Archived from the original on October 22, 2012. Retrieved September 30, 2016.