Bu makalede nasıl özel formlar anlatılır Outlook'ta uygulanır ve Outlook formlarına dayalı bir çözümü yeniden oluşturduğunuzda karşılaşabileceğiniz beklenmeyen belirtilerden adresleme için öneriler sağlar.
Not
: Bu makalede koşulları, "madde" ve "Form" arasında önemli bir fark yoktur Bir klasördeki bilgileri (alan grubu), "kayıt" öğeyi gösterir. Bir formu temel olarak "kullanıcı arabirimindeki" maddenin, genellikle veri içermiyor. Bunun yerine, bunu kullanmak için bir klasör veya Formları Kitaplığı'ndaki klasörü içindeki öğelerle yayımlanır.
Outlook ile özel form çözüm oluşturduğunuzda, Outlook bir klasörde özel formunuzu maddelerle ilgili olarak nasıl kullandığını tanıması önemlidir.
"Normal" bir özel formlar Solution
Varsayılan Outlook ilgili kişi formu değiştirmek için özel bir ilgili kişi formu oluşturmak isterseniz, genellikle bu adımları:
- Yeni bir varsayılan Özel formunuz için temel olarak kullanmak için ilgili kişi formu başlatın.
- Formu, gereksinimlerinize göre özelleştirin.
- Form için <a2>Kişiler</a2> klasörünün yayımlayın.
- Formu, klasör özelliklerini değiştirerek, Kişiler klasörü için varsayılan form olarak ayarlayın.
Her Outlook öğesi öğeyi görüntülemek için hangi biçiminin kullanılması gerektiğini izlemek için standart bir İleti sınıfı
alanı vardır. Bir kişi için varsayılan ileti sınıfı IPM.Contact
, formun yayımlandığında ileti sınıfı yayımlanmış form adını yansıtacak biçimde değiştirilir. Bu nedenle yayımlandığında, formun MyForm çağrıldı, önceki adımlarda, bir IPM.Contact.MyForm bir ileti sınıfı vardır. Yayımlanmış form üzerinde yeni bir madde oluşturduğunuzda, maddenin İleti sınıfı
alanı IPM.Contact.MyForm için ayarlanır.
Ileti sınıfları ile çalışma hakkında daha fazla bilgi için lütfen Microsoft Knowledge Base'de aşağıdaki makaleye bakın:
201087
OL2000: yeni bir özel form kullanarak varolan öğeleri güncelleştirme nasıl yüklenir
One-Off formlar
Yukarıdaki normal senaryosunda formu (form tanımını) hakkında bilgi, her öğe ile kaydedilmez. Formun temel olarak "İleti sınıfı
alanı'nı kullanarak bağlı". Tipik bir öğenin boyutu 300 veya 500 bayt olabilir.Not
: kolaylık olması, bu makalede kullanmaktadır terimi "form bağlı" amaçları için form tanımını öğe içinde kaydedilmiyor (Bu bağlantı, bir kısmı veya tamamı ingilizce içeriğe işaret edebilir ve İleti sınıfı
alanı, özel bir form kullanmak üzere ayarlanmış bir durum gösterir.
Ancak, form tanımını öğe ile kaydedilir olması olasıdır. Bunları içinde saklanan bir özel form tanımı olan maddeler için "one-offed" ya da "bir one-off." olarak başvurulan
Form one-offed olduğunda, depolanan form tanımını yayımlanmış form yerine bir maddeyle kullanabilir. Ileti sınıfı
, bir form tanımını öğe ile maddenin kaydedilirse yeniden IPM.Contact
gibi form türü için varsayılan ileti sınıfı için değiştirilir.
Standart yolları formlar One-Offs dönüşüyor.
Tasarım modunda, formun özellikleri
sayfasında "form tanımını öğe ile Gönder
" onay kutusunu seçmek için'i tıklatarak bir form bir one-off olduğunu belirtebilirsiniz. Form alıcı erişime sahip olduğu bir form kitaplığında kayıtlı genellikle bunu. Bu seçeneği belirlediğinizde, maddenin açıldığında, bu kişinin özel form görür sağlar.
Beklenmedik biçimde One-Offed öğeler
Bağlı formlar senaryo vardır ve yayımlanmış Özel formunuz önceden oluşturulmuş 10 öğeleri sahip olduğunu varsayalım. Öğelerden birini açın ve form tanımını şekilde değiştiğinde bir belirli bir madde için Outlook otomatik olarak olabilir one-off maddenin (tek dış bir form oluşturun) ve <a0>form tanımını öğe ile Kaydet. Ileti sınıfı
alanı geri bu tür bir madde için varsayılan ileti sınıfı için değişebilir ve maddenin boyutunu önemli ölçüde artırır.
Aşağıdaki senaryolarda öğe burada beklenmedik biçimde one-offed olabilir oluştuğu bilinmektedir.
- Normal bağlı formlar senaryosunda, bir klasörde varolan bir öğeyi açmak için formu Tasarım modunda, değişiklik yapmak ve kaydetmek veya yaptığınız maddenin gönderin.
Form için varolan bir öğeyi açmak yerine bu klasördeki öğelerin tümünü değiştirmek istiyorsanız, aşağıdaki adımları izleyin:
Şimdi güncelleştirilmiş özel form olduğundan, İleti sınıfı, yine de aynı yayımlanmış forma başvuruda bulunan öğelerin açılan bir sonraki açışınızda klasördeki öğelerin tümünü kullanabilir. Form değiştirildikten sonra öğeyi ilk açıldığında Outlook kısaca yeni bir form (formlar önbelleğe kopyalanır) yüklü olduğunu belirten bir ileti görüntüleyebilir.
- Özel formunuzu temel alan yeni bir öğeyi açın.
- Form Tasarım değişiklikleri, bu madde için yapabilirsiniz.
- Bu öğe kullanarak, formun aynı adla yeniden yayımlayın.
- Kapatın ve değişiklikleri öğeyi kaydedin.
- Bazı yöntemler veya maddenin form tanımını değiştirmek neden olan komutları ve özel formun Microsoft Visual Basic Scripting Edition (VBScript) kod kullanılır. Aşağıdaki yöntemler, genellikle bu davranışa neden:
- Varolan yöntemleri FormDescription nesne.
- Özellikleri devre dışı etkinleştirme/denetimleri bırakmak veya gizli ve gösterilen yapmak için genellikle denetimlerin ilgili yöntemleri.
- Eylem nesnesine ilgili yöntemleri.
Not: Outlook'un önceki sürümlerinde, bir tek dış öğe ShowFormPage ve HideFormPage yöntemleri neden oldu. Outlook 2000'de artık karşılaşmıyorum. Bu değişiklik hakkında daha fazla bilgi için lütfen Microsoft Knowledge Base'de aşağıdaki makaleye bakın:
218618
OL2000: ShowFormPage, HideFormPage One-Off öğeler artık oluştur
- Kullanım için bir alan klasörde oluşturduğunuz, ancak form yayımlandığında alanın gerçekten madde yok. Bu durumda, özel bir form üzerinde yeni bir madde oluşturmak ve <a1>kullanım</a1> Outlook hücre içi düzenleme özelliği içine bir <a0>Tablo</a0> görünümünde, bir madde, değer girmek için Outlook otomatik olarak kullanıcı tanımlı alan madde üzerinde--hızlı için ekler. Bu form tanımını değiştirir ve bu nedenle one-offed öğedir. Kullanıcı tanımlı alanları çözümleri'ni kullanma hakkında ek bilgi için lütfen Microsoft Knowledge Base'de aşağıdaki makaleye bakın:
201438
OL2000: kullanıcı tanımlı alanlar Solutions ile çalışma
Normal Belirtiler
Çözümleri ve durumları, önemli ölçüde değişir, ancak vardır, dikkat etmeniz bazı belirtileri formları one-offed gelmektedir belirtebilirsiniz.
- Bir öğeyi açıldığında BIR makro virüsü uyarısı beklenmedik biçimde görüntülenir. Tek dış formlar, sık rastlanan nedenlerinden biri, form, VBScript kodu içeriyorsa, Outlook görüntüler etkinleştir/devre dışı bırakma Güvenlik Uyarısı ' dir. Kod yayımlanmış veya güvenilir biçimde değil, ancak öğedeki gerçekten kendisi olduğundan, Outlook'un her zaman bir uyarı görüntüleyebilir. Ideal olarak, formun ilk one-offed olması neden olan bir senaryo önlemek deneyin.
Güvenlik Uyarısı hakkında daha fazla bilgi için lütfen Microsoft Knowledge Base'de aşağıdaki makaleye bakın:
207913
OL2000: Madde yeniden açtığınızda, Outlook'un bir güvenlik uyarı iletisi görüntüler neden
- Beklenmedik bir şekilde, bir öğenin boyutunu artırır.
- Öğe simgesi, genellikle bir ileti sınıfı alanı değişikliği gösteren beklenmedik şekilde değiştirir.
Bir One-Off madde tanımlama
Öğenin beklenmedik biçimde one-offed ve fark "form tanımını öğe ile Gönder
" onay kutusu seçili değilse, form tanımını öğe ile kaydedilmiyor (Bu bağlantı, bir kısmı veya tamamı ingilizce içeriğe işaret edebilir gelmez.
Maddenin madde görüntülemek için kullanılan form açıldığında, İleti sınıfı
alanı bu tür bir madde için varsayılan ileti sınıfı ancak özel bir form bir bir one-off öğedir.
Klasör tabanlı çözüm geliştirme, beklediğiniz gibi klasör ıçindeki öğeleri behaving emin olabilir; bu nedenle, İleti sınıfı
ve Boyut
alanları Tablo görünümünde görüntülemek isteyebilirsiniz. Ayrıca, öğenin simgesini değişikliği, bir durum değişikliği oftentimes gösterir ancak uygun simgesi görüntülendiğinden emin için Outlook'u yeniden başlatmalısınız.
Sorunu Yeniden Oluşturma Adımları
Microsoft, programlama örneklerini yalnızca gösterim amacıyla sağlar; satılabilirlik ve/veya belirli bir amaca uygunluk da dahil, ancak bununla sınırlı olmamak kaydıyla, örtülü veya açık garanti vermez. Bu makale, gösterilen programlama dilini ve yordamları oluşturmak ve hata ayıklamak amacıyla kullanılan araçları kullanmayı bildiğinizi varsayar. Microsoft destek uzmanları, belirli bir yordamın işlevselliğinin açıklanmasına yardımcı olabilir, ancak gereksinimlerinizi karşılamaya yönelik olarak ek işlevsellik sağlamak veya yordamlar geliştirmek amacıyla bu örnekleri değiştirmezler.
Programlama deneyiminiz kısıtlıysa, bir Microsoft Sertifikalı İş Ortağı'na veya Microsoft Danışmanlık Hizmetleri'ne başvurabilirsiniz. Daha fazla bilgi için şu Microsoft Web sitelerini ziyaret edin:
Microsoft Partner - https://partner.microsoft.com/global/30000104
Onaylandı
Microsoft danışma belgesi Hizmetleri - http://support.microsoft.com/gp/advisoryservice
Kullanılabilir destek seçenekleri ve Microsoft'a başvurma konusunda daha fazla bilgi için aşağıdaki Microsoft Web sitesini ziyaret edin: http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS
Aşağıdaki adımlar, nasıl ekleyerek kullanıcı tanımlı bir alan için bir öğeyi tek dış bir form oluşturabilirsiniz gösterilmektedir.
- Yeni posta iletisi açın.
- Araçlar menüsünde form ' ı tıklatın ve sonra Bu Formu Tasarla</a1>'ı tıklatın.
- Denetim Araç kutusu kullanarak, bir KomutDüğmesiP.2 sayfaya ekleyin.
- Form menü, Görünüm kodu ' ı tıklatın. Aşağıdaki VBScript kodu, VBScript Düzenleyicisi'ne ekleyin ve sonra da Düzenleyici kapatın:
Sub CommandButton1_click() ' This changes the form definition by adding a text field. Set MyProp = Item.UserProperties.Add("MyField",1) ' Send the item Item.SendEnd Sub
- Araçlar menüsünde, Formu farklı Yayımla'yı tıklatın ve ardından gelen "Form1" olarak formu yayımlayın.
- "Form tanımını öğe ile Gönder" seçeneğini etkinleştirmek için istemde bulunulduğunda, Hayır ' ı tıklatın. Kapatın ve değişiklikleri forma kaydetmeyin.
- Eylemler</a0> menüsünde, Yeni Form1 formu temel alan bir öğeyi açmak için tıklatın.
- Kendiniz adres.
- Üzerinde P.2KomutDüğmesi, iletiyi göndermek için kullanın.
- Bir ileti aldığınızda, bunu açın.
Makro uyarı iletisi göründüğünü unutmayın. Ayrıca, maddenin (6 ~ K) oldukça büyük boyutudur.
Geçici Çözüm
Bir senaryo, burada bir madde, bir one-off hale gelebilir gerekiyorsa, ileti sınıfı alanı sıfırlama ve sonra bu maddenin kodu kaydetme tek dış bir öğenin yan-etkileri çalışabilirsiniz. Örneğin, <a1>kullanım</a1> "Adımlar için oluşturma sorunun" bölümüne ve madde yukarıda verilen kodun yerine aşağıdaki kodu makro uyarı iletisi etkinleştirebilirsiniz.
Not
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.SendEnd Sub
: bir maddenin ileti sınıfı programsal olarak değiştirirseniz, maddenin boyutu değil azalır. Öğeyi yeni öğe formu tanımı olmadan ve verileri eski maddeden için yeni bir tane dışında gerçekten istenmeyen form tanımını kaldırmak için bir yolu yoktur.