OL2000: 양식 정의 및 One-Off 양식 작업

기술 자료 번역 기술 자료 번역
기술 자료: 207896 - 이 문서가 적용되는 제품 보기.
이 문서는 이전에 다음 ID로 출판되었음: KR207896
이 문서가 보관되었습니다. "그대로" 제공되었으며, 업데이트가 되지 않을 것입니다.
모두 확대 | 모두 축소

이 페이지에서

요약

본 문서에서는 Outlook에서 사용자 지정 양식을 구현하는 방법을 설명하고 Outlook 양식을 기반으로 하는 솔루션을 작성할 때 발생할 수 있는 예상치 못한 현상을 해결할 수 있는 방안을 제시합니다.

본 문서에서는 다음과 같은 내용을 다룹니다.

추가 정보

참고: 이 문서에서 "항목"과 "양식"은 중요한 차이가 있습니다. 항목은 폴더에 있는 정보의 "레코드"(필드 그룹)를 의미합니다. 양식은 기본적으로 항목의 "사용자 인터페이스"이며 일반적으로 데이터를 포함하지 않습니다. 대신 폴더의 항목과 함께 사용할 수 있도록 폴더나 양식 라이브러리에 게시됩니다.

Outlook을 사용하여 사용자 지정 양식을 만들 때는 Outlook이 폴더의 항목과 관련된 사용자 지정 양식을 사용하는 방식을 이해하는 것이 중요합니다.

"일반적인" 사용자 지정 양식 솔루션

사용자 지정 연락처 양식을 만들어 기본 Outlook 연락처 양식을 바꾸려면 일반적으로 다음과 같은 단계를 수행합니다.
    • 새로운 사용자 지정 기본 양식으로 사용할 연락처 양식을 시작합니다.
    • 필요에 맞게 양식을 사용자 정의합니다.
    • 연락처 폴더에 양식을 게시합니다.
    • 폴더 등록 정보를 변경하여 양식을 연락처 폴더의 기본 양식으로 설정합니다.
각 Outlook 항목에는 어떤 양식을 항목 표시에 사용해야 하는지 추적하기 위한 표준 메시지 클래스 필드가 있습니다. 연락처의 기본 메시지 클래스는 IPM.Contact이고 양식이 게시되면 양식의 이름에 따라 메시지 클래스가 변경됩니다. 이전의 단계와 마찬가지로 MyForm이라는 이름으로 양식이 게시된 경우 IPM.Contact.MyForm의 메시지 클래스를 갖게 됩니다. 게시된 양식을 기준으로 새 항목을 만들면 항목의 메시지 클래스 필드가 IPM.Contact.MyForm으로 설정됩니다.

메시지 클래스 사용에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
201087OL2000: 기존 항목을 업데이트하여 새로운 사용자 지정 양식을 사용하는 방법

One-Off 양식

위의 일반적인 시나리오에서 양식 정의에 대한 정보는 각 항목에 저장되지 않습니다. 양식은 기본적으로 메시지 클래스 필드를 사용하여 링크됩니다. 일반적인 항목의 크기는 300바이트 또는 500바이트입니다.

참고: 이 문서에서는 양식 정의(Form Definition)가 항목 내부에 저장되지 않고 메시지 클래스 필드가 사용자 지정 양식을 사용하도록 설정된 경우에 단순히 "링크된 양식"이라는 용어를 사용합니다.

그러나 양식 정의(Form Definition)를 항목에 저장할 수도 있습니다. 이렇게 저장된 사용자 지정 양식 정의를 "One-Off 양식"이라고 부릅니다.

One-Off 양식 은 게시된 양식 대신 항목에 저장된 양식 정의를 사용합니다. 양식 정의가 항목에 저장되면 항목의 메시지 클래스IPM.Contact와 같이 해당 양식 형식의 기본 메시지 클래스로 다시 변경됩니다.

One-Off 양식 을 만드는 표준 방법

양식의 등록 정보 페이지가 디자인 모드일 때 "항목과 양식 정의 보내기" 확인란을 선택하면 양식을 One-Off 양식으로 지정할 수 있습니다. 일반적으로 받는 사람이 액세스하는 양식 라이브러리에 양식이 등록되지 않은 경우에 이렇게 합니다. 이 옵션을 선택하면 항목이 열릴 때 다른 사람이 사용자 지정 양식을 볼 수 있도록 만들 수 있습니다.

예상치 않게 One-Off 양식이 되는 항목

링크 된 양식이 있고 게시된 사용자 지정 양식을 사용하는 10개의 항목이 이미 생성되어 있다고 가정합니다. 이 항목 중 하나를 열고 양식 정의를 변경하면 Outlook이 자동으로 이 항목을 One-Off 양식으로 만들고양식 정의를 항목과 함께 저장합니다. 메시지 클래스 필드가 해당 항목의 기본 메시지 클래스로 다시 변경되고 항목의 크기가 상당히 증가합니다.

다음은 항목이 예상치 않게 One-Off 양식이 되는 시나리오입니다.

  • 일반적으로 링크 된 양식 시나리오에서 폴더의 기존 항목을 열고 디자인 모드에서 양식을 변경하고 항목을 저장하거나 보냅니다.

    기존 항목을 여는 대신 폴더의 모든 항목을 변경하려면 다음 과정을 수행합니다.

    1. 사용자 지정 양식으로 새 항목을 엽니다.
    2. 이 항목의 양식 디자인을 변경합니다.
    3. 이 항목을 사용하여 동일한 이름을 가진 양식을 다시 게시합니다.
    4. 항목을 닫고 변경 내용을 저장하지 않습니다.
    다음에 항목을 열면 메시지 클래스가 동일한 게시된 양식을 계속 참조하기 때문에 폴더의 모든 항목이 업데이트 된 사용자 지정 양식을 사용합니다. 양식이 변경된 후에 처음 항목을 열면 Outlook을 새 양식이 설치되었음을, 즉 양식 캐시로 복사되었음을 알려주는 간단한 메시지를 표시합니다.
  • 사용자 지정 양식에서 Microsoft Visual Basic Scripting Edition(VBScript) 코드를 사용하고 항목의 양식 정의를 변경하는 일부 메서드나 명령을 사용했습니다. 다음은 이와 같은 상황이 발생할 수 있는 가장 일반적인 메서드입니다.

    • FormDescription 개체에 있는 메서드
    • 대개 컨트롤의 사용 또는 표시 여부를 제어하는 컨트롤 속성과 관련된 메서드
    • Action 개체와 관련된 메서드

    참고: 이전 버전의 Outlook에서는 ShowFormPageHideFormPage 메서드로 인해 One-Off 양식 항목이 생성되었습니다. Outlook 2000에서는 이와 같은 현상이 더 이상 발생하지 않습니다. 자세한 변경 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
    218618OL2000: ShowFormPage, HideFormPage No Longer Create One-Off Items
  • 폴더에서 사용할 필드를 생성했지만 양식이 게시될 때 필드가 실제로 존재하지 않습니다. 이와 같은 경우에는 사용자 지정 양식을 기반으로 새 항목을 생성하고 Outlook 셀에서 편집 기능을 사용하여 테이블 보기에서 항목에 값을 입력하면 Outlook이 자동으로 사용자 정의 필드를 항목에 추가합니다. 이렇게 하면 양식 정의가 변경되어 항목이 One-Off 양식이 됩니다. 사용자 정의 필드 사용 방법에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
    201438OL2000: Working With User-defined Fields in Solutions

일반적인 현상

다양한 현상과 해결 방법이 있지만 양식이 One-Off 양식임을 알 수 있는 몇 가지 신호가 있습니다.

  • 항목을 열 때 갑자기 매크로 바이러스 경고가 나타납니다. 양식에 VBScript 코드가 포함되어 있는 경우, One-Off 양식 은 Outlook이 보안 경고를 설정/해제를 표시하는 일반적인 원인이 됩니다. 게시되거나 트러스트된 양식에 코드가 없지만 실제로 항목에 있기 때문에 Outlook은 항상 경고를 나타냅니다. 처음부터 양식이 One-Off 양식이 될 수 있는 시나리오를 방지하는 것이 좋습니다.

    보안 경고에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
    207913OL2000: Why Outlook Displays a Security Warning Message When You Open an Item
  • 항목의 크기가 갑자기 늘어났습니다.
  • 항목의 아이콘이 갑자기 변경되었습니다. 이는 대개 메시지 클래스 필드가 변경된 것을 의미합니다.

One-Off 양식 항목 식별

항목이 갑자기 One-Off 양식이 된 다음 "항목과 양식 정의 보내기" 확인란이 선택되지 않은 것을 발견한 경우, 양식 정의가 항목에 저장되지 않았음을 의미하지는 않습니다.

메시지 클래스 필드가 해당 항목 형식의 기본 메시지 클래스이지만 항목이 열릴 때 항목 표시에 사용되는 양식은 사용자 지정 양식인 경우에 항목이 One-Off 양식입니다.

폴더 기반 솔루션을 개발할 때 테이블 보기에서 메시지 클래스크기 필드를 표시하여 폴더의 항목이 예상대로 동작하는지 확인할 수 있습니다. 또한 항목의 아이콘이 변경된 경우 대개 상태 변경을 의미하지만 Outlook을 다시 시작하여 정확한 아이콘이 표시되도록 해야 합니다.

문제를 재현하는 방법

Microsoft는 모든 보증(상품, 특정 목적에 대한 적합성 및 비침해에 대한 묵시적인 보증을 포함하며 이에 제한되지 않음)을 배제하며 예를 보여주기 위한 목적으로만 이 프로그래밍 예제를 제공합니다. 본 문서에서 설명하는 절차를 따르려면 해당 프로그래밍 언어, 도구 및 디버깅 절차에 익숙해야 합니다. Microsoft 기술 지원 담당자는 사용자에게 도움이 되도록 특정 절차에 대한 기능을 설명할 수 있지만 사용자의 특정 목적에 맞도록 예제를 수정하여 추가 기능을 제공하거나 절차를 구성하지는 않습니다. 프로그래밍에 익숙하지 않은 사용자는 MCSP(Microsoft Certified Solution Provider)의 도움을 받거나 마이크로소프트 기술 지원 센터(02-508-0040)로 문의하십시오. MCSP(Microsoft Certified Solution Provider)에 대한 자세한 내용은 아래 웹 사이트를 참조하십시오.

http://www.microsoft.com/korea/mcsp
Microsoft가 제공하는 지원 서비스에 대한 자세한 내용을 알려면 아래 웹 사이트를 방문하십시오.

http://support.microsoft.com/directory/overview.asp
다음 단계는 HideFormPageShowFormPage 메서드가 항목을 One-Off 양식으로 만드는 방법을 보여줍니다.
  1. 새 메일 메시지를 엽니다.
  2. 도구 메뉴에서 양식을 가리킨 다음 이 양식 디자인을 누릅니다.
  3. 컨트롤 도구 상자를 사용하여 P.2 페이지에 명령 단추를 추가합니다.
  4. 양식 메뉴에서 코드 보기를 누릅니다. 다음 VBScript 코드를 VBScript 편집기에 추가하고 편집기를 닫습니다.
     
    Sub CommandButton1_click()
       ' This changes the form definition by adding a text field.
       Set MyProp = Item.UserProperties.Add("MyField",1)
       ' Send the item
       Item.Send
    End Sub 
    
  5. 도구 메뉴에서 양식 게시를 누른 다음, 받은 편지함에 "Form1"이라는 양식을 게시합니다.
  6. "항목과 양식 정의 보내기" 옵션을 사용할지 여부를 묻는 메시지가 나타나면 아니오를 누릅니다. 변경 내용을 양식에 저장하지 않고 닫습니다.
  7. 동작 메뉴에서 새 Form1을 눌러 양식을 기준으로 하는 항목을 엽니다.
  8. 자신의 주소를 지정합니다.
  9. P.2명령 단추를 사용하여 메시지를 보냅니다.
  10. 메시지를 수신하면 열어서 읽습니다.
매크로 경고 메시지가 나타나는 것을 볼 수 있습니다. 또한 항목의 크기가 6K 이상으로 비교적 큽니다.

해결 방법

항목이 One-Off 양식이 되는 시나리오가 필요하면 메시지 클래스 필드를 재설정하고 항목을 코드로 저장하여 One-Off 양식 항목의 부작용을 처리할 수 있어야 합니다. 한 예로 "문제를 재현하는 방법" 절에서 나온 코드 대신 다음 코드를 사용하면 매크로 경고 메시지가 나타나지 않습니다.
 
Sub CommandButton1_click()
   ' Save the MessageClass property
   sSaveMessageClass = Item.MessageClass

   ' This changes the form definition
   Set MyProp = Item.Userproperties.Add("MyField", 1)

   ' Restore the MessageClass property
   Item.MessageClass = sSaveMessageClass

   ' Save the changes to the form
   Item.Save

   ' Send the item
   Item.Send

End Sub 
참고: 프로그래밍 방식으로 항목의 메시지 클래스를 변경하면 항목의 크기가 줄어들지 않습니다. 실제로 불필요한 양식 정의를 항목에서 제거할 수 있는 방법은 양식 정의 없이 새 항목을 만들고 데이터를 이전 항목에서 새 항목으로 복사하는 방법 뿐입니다.

참조

사용 가능한 리소스 및 Microsoft Outlook 2000 솔루션과 관련된 일반적인 질문과 대답에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
146636 OL2000: 사용자 지정 양식과 Outlook 솔루션 관련 질문

속성

기술 자료: 207896 - 마지막 검토: 2014년 1월 28일 화요일 - 수정: 3.0
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Outlook 2000 Standard Edition
키워드:?
kbnosurvey kbarchive kbinfo kbdta KB207896

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com