SlideShare a Scribd company logo
1 of 9
2008
Dr. KeremKöseoğlu
10/27/2008
Lotus Notes ve .NET
Özet
Bu dökümaniçerisinde,LotusNotesileveri alışverişiyapabilen .NETuygulamalarınınnasıl
geliştirilebileceğine dairbazıanahtar noktalarbulunmaktadır.
Lotus Hazırlıkları
Kullanıcı Hesabının Ayarlanması
Lotus Notesiçerisinde,File Tools User ID menüsüne girin.Burada,entegrasyonişlerinde
kullanılacakUseriçinaşağıdaki kutucuğunişaretlenmişolmasıgerekmektedir.
Veritabanındaki Alanları Görmek
Lotus Notesveritabanındaki alanlarınteknikisimlerini ve detaylarınıgörmekiçin,öncelikle veritabanı
dosyasınıaçın. Karşınıza kayıtlargeldiğinde,herhangi birkaydasağtıklayınve “Document
Properties...”menüsüne girin.
Bu şekilde açılacakolanpencere üzerinde,veritabanındaki alanlarınteknikisimlerini ve seçmiş
olduğunuzdökümandaki değerleri görebilirsiniz.
Bu alanlara,.NETiçerisindeki erişimsırasındaihtiyacınızolacak.
.NET Hazırlıkları
Makinanıza LotusNotes’ukurduktansonraVisual Studioiçerisinde ilkyapmanızgerekenşey,
projenize AddReference menüsüile (COMtipindeki)“LotusDominoObjects”referansınıeklemektir.
Veritabanındaki KayıtlaraErişim
Tüm Kayıtları Listelemek
Aşağıdaki örnek.NETkodu,bir LotusNotesveritabanındaki tümkayıtlarılisteleyecektir. Aynıörnek
içerisinde,“$Revisions”gibi birdenfazlakayıtiçerenalanlarınnasıl okunabileceğinide görebilirsiniz.
static void listEquipments()
{
Domino.NotesSessionClass session = new Domino.NotesSessionClass();
session.Initialize("pass");
Domino.NotesDatabaseClass database = (Domino.NotesDatabaseClass)session.GetDatabase("",
"Equipment.nsf", false);
Domino.NotesDocumentCollection ndc =
(Domino.NotesDocumentCollection)database.AllDocuments;
for (int n = 0; n < ndc.Count; n++)
{
Domino.NotesDocumentClass doc = (Domino.NotesDocumentClass)ndc.GetNthDocument(n);
String outs = "";
String s = (String)((Object[])doc.GetItemValue("txtartbenenn"))[0];
s += ":" + (String)((Object[])doc.GetItemValue("txtfabriknr"))[0];
try {
int x = ((Object[])doc.GetItemValue("$Revisions")).Length;
DateTime d = (DateTime)((Object[])doc.GetItemValue("$Revisions"))[x - 1];
if (limit >= d) count++;
outs = s + " - " + d;
}
catch(Exception ex) {
outs = s;
}
}
Console.WriteLine(count.ToString() + " döküman");
Console.WriteLine("Bitti");
Console.ReadKey();
}
Bazı Kayıtları Listelemek
Belli birkoşulabağlıolarakkayıtları çekenörnekbirkoduaşağıda bulabilirsiniz.
static void listEquipments()
{
Domino.NotesSessionClass session = new Domino.NotesSessionClass();
session.Initialize("pass");
Domino.NotesDatabaseClass database = (Domino.NotesDatabaseClass)session.GetDatabase("",
"Equipment.nsf", false);
Console.WriteLine(database.Title);
Domino.NotesDocumentCollection ndc =
(Domino.NotesDocumentCollection)database.Search("txtartbenenn = 'C450'", null, 1);
for (int n = 0; n < ndc.Count; n++)
{
Domino.NotesDocumentClass doc = (Domino.NotesDocumentClass)ndc.GetNthDocument(n);
String outs = "";
String s = (String)((Object[])doc.GetItemValue("txtartbenenn"))[0];
s += ":" + (String)((Object[])doc.GetItemValue("txtfabriknr"))[0];
Console.WriteLine(s);
}
Console.WriteLine("Bitti");
Console.ReadKey();
}
Yeni Kayıt Yaratmak
Aşağıda,yeni kayıt yaratanörnekbir kodbulabilirsiniz.
static void createName()
{
Domino.NotesSessionClass session = new Domino.NotesSessionClass();
session.Initialize("pass");
Domino.NotesDatabaseClass database = (Domino.NotesDatabaseClass)session.GetDatabase("",
"names.nsf", false);
Console.WriteLine(database.Title);
Domino.NotesDocumentClass doc = (Domino.NotesDocumentClass)database.CreateDocument();
doc.AppendItemValue("FirstName", "Kerem.NET");
doc.AppendItemValue("Form", "Person");
doc.AppendItemValue("FullName", "Kerem.NET Koseoglu");
doc.AppendItemValue("LastName", "Koseoglu");
doc.AppendItemValue("Logo", "beach");
doc.AppendItemValue("NameDisplayPref", "1");
doc.AppendItemValue("Type", "Person");
doc.Save(false, false, false);
}
Mevcut Kaydı Güncellemek
Aşağıda, mevcutkaydı güncelleyenörnekbirkodbulabilirsiniz.
doc = (Domino.NotesDocumentClass)docs.GetNthDocument(m);
doc.ReplaceItemValue("anzeige1", "KK anzeige1");
doc.ReplaceItemValue("anzeige2", "KK anzeige2");
doc.ReplaceItemValue("anzeige3", "KK anzeige3");
doc.ReplaceItemValue("city", "KK city");
doc.ReplaceItemValue("anzeige3", "KK anzeige3");
doc.ReplaceItemValue("FORM", "frm_eq");
doc.ReplaceItemValue("KundenInfo", "KK KundenInfo");
doc.ReplaceItemValue("numeqicon", "78");
doc.ReplaceItemValue("numeqnr", Sap.shiftLeft(E[n].EQUNR, "0"));
doc.ReplaceItemValue("numsort", "2");
doc.ReplaceItemValue("SalesOfficeTemp", "TR 001");
doc.ReplaceItemValue("state", "KK state");
doc.ReplaceItemValue("txtartbenenn", E[n].EQKTX);
doc.ReplaceItemValue("txtartpkid", E[n].ZZPMSID);
doc.ReplaceItemValue("txtartsachnr", "KK txtartsachnr");
doc.ReplaceItemValue("txtfabriknr", "KK txtfabriknr");
doc.ReplaceItemValue("txtkdinventamr", "KK txtkdinventamr");
doc.ReplaceItemValue("txtkdkrzbez", "KK txtkdkrzbez");
doc.ReplaceItemValue("txtkdnr", "KK txtkdnr");
doc.Save(false, false, false);
View Çağırmak
View’ın Yaratılması
Lotus Notes’taüzerinde çalıştığınızveritabanınıaçın.Create  View menüsüne girin.
View’auygunbirisimverinve formül içerisindeformismi olarakveritabanındageçerli olan
formlardanbirini verdiğinizdeneminolun.Eğerformadınıbilmiyorsanız,yaratılmışolandiğer
View’larıörnekalabilirsiniz.
“OK” düğmesine baktığınızdaViewyaratılacaktır.BuView’ıaçmakiçin,LotusNotes’unView  GoTo
menüsüne girin.Bulistede,yaratmışolduğunuzView’useçin.
Bunuyaptığınızda; Viewkarşınıza(muhtemeleniçi boşbirşekilde) açılacaktır.
View’undetaylarınıdüzenlemekiçinActions  View Options  Designmenüsüne girin.Bu
pencerede View’ungörüntülenecekalanlarınıseçebilir,hesaplamayapmayadayananyeni alanlar
tanımlayabilirveyaseçimkoşullarınıbelirleyebilirsiniz.
YeniAlanTanımlamak
Örnekolarakbu View’ayeni biralanekleyelim.Sütunlarınolduğubölgeyesağtıklayınve InsertNew
Columnkomutunuseçin.
Aşağıdaki bölgede yenisütununiçeriğine ne geleceğini belirleyebilirsiniz.Buradabirfonksiyon,
veritabnaıalanıveyaformül seçilebilir.Bizbuörnekte biralanseçtik.
Burada tanımlayacağınızalanlar,sadece ekrangörüntüsüiçindir..NETiçerisindenView’ı
çağırdığınızda, buradabulunmayanveritabanıalanlarınadaerişebilirsiniz.
YeniKoşul Tanımlamak
Bu işlemiçin,sol menüdeki“View”bölümüne girmelisiniz.
Örneğimizde;sadece son30 gündüryaratılmış/ değişmişverilereerişmekistediğimizi varsayalım.Bu
durumdaformülüşuhale getirmeliyiz:
SELECT (form="frm_eq"|Form="frm_ueq") &!@IsAvailable($Conflict)
& @Modified>= @Adjust(@Today;0;0; -30; 0; 0; 0)
View’uTestEtmek
View’ukaydettiktensonraDesign  PreviewinNotesmenüsündensonuçlarınıgörebilirsiniz.
Alternatif olarak;normal ekrandaView  GoTo...menüsüne de girebilirsiniz.
View’un .NET İçinden Çağırılması
Aşağıda,View’uçağıranörnekbir kod bulabilirsiniz.
static void listEquipmentsView()
{
Domino.NotesSessionClass session = new Domino.NotesSessionClass();
session.Initialize("pass");
Domino.NotesDatabaseClass database =
(Domino.NotesDatabaseClass)session.GetDatabase("", "Equipment.nsf", false);
Console.WriteLine(database.Title);
Domino.NotesViewClass view = (Domino.NotesViewClass)database.GetView("KEREMTEST");
for (int n = 0; n <= view.AllEntries.Count; n++)
{
Domino.NotesDocumentClass doc =
(Domino.NotesDocumentClass)view.GetNthDocument(n);
if (doc != null)
{
String outs = "";
String s = (String)((Object[])doc.GetItemValue("txtartbenenn"))[0];
s += ":" + (String)((Object[])doc.GetItemValue("txtfabriknr"))[0];
Console.WriteLine(s);
}
}
Console.WriteLine("Bitti");
Console.ReadKey();
}

More Related Content

Similar to Lotus Notes - .NET entegrasyonu

Similar to Lotus Notes - .NET entegrasyonu (7)

İleri Seviye Programlama 2
İleri Seviye Programlama 2İleri Seviye Programlama 2
İleri Seviye Programlama 2
 
Delphi 7
Delphi 7Delphi 7
Delphi 7
 
BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-1
BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-1BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-1
BTRisk X86 Tersine Mühendislik Eğitim Sunumu - Bölüm-1
 
Sql Server 2.hafta
Sql Server 2.haftaSql Server 2.hafta
Sql Server 2.hafta
 
Java EE Struts
Java EE StrutsJava EE Struts
Java EE Struts
 
Kurumsal Yazılım Geliştirme ve Visual Studio 2008
Kurumsal Yazılım Geliştirme ve Visual Studio 2008Kurumsal Yazılım Geliştirme ve Visual Studio 2008
Kurumsal Yazılım Geliştirme ve Visual Studio 2008
 
İleri Seviye T-SQL Programlama - Chapter 21
İleri Seviye T-SQL Programlama - Chapter 21İleri Seviye T-SQL Programlama - Chapter 21
İleri Seviye T-SQL Programlama - Chapter 21
 

More from Dr. Kerem Koseoglu

ABAP 7.x New Features and Commands
ABAP 7.x New Features and CommandsABAP 7.x New Features and Commands
ABAP 7.x New Features and CommandsDr. Kerem Koseoglu
 
Kordsa Design Pattern Eğitimi
Kordsa Design Pattern EğitimiKordsa Design Pattern Eğitimi
Kordsa Design Pattern EğitimiDr. Kerem Koseoglu
 
Design Patterns in ABAP Objects - SAP Forum / Tech Ed sunumu (2016)
Design Patterns in ABAP Objects - SAP Forum / Tech Ed sunumu (2016)Design Patterns in ABAP Objects - SAP Forum / Tech Ed sunumu (2016)
Design Patterns in ABAP Objects - SAP Forum / Tech Ed sunumu (2016)Dr. Kerem Koseoglu
 
ABAP mimarisi hakkında yeni bir kitap: "Design Patterns in ABAP Objects"
ABAP mimarisi hakkında yeni bir kitap: "Design Patterns in ABAP Objects"ABAP mimarisi hakkında yeni bir kitap: "Design Patterns in ABAP Objects"
ABAP mimarisi hakkında yeni bir kitap: "Design Patterns in ABAP Objects"Dr. Kerem Koseoglu
 
Embedding custom ActiveX controls into SAP GUI
Embedding custom ActiveX controls into SAP GUIEmbedding custom ActiveX controls into SAP GUI
Embedding custom ActiveX controls into SAP GUIDr. Kerem Koseoglu
 
SAP SmartForms ile Barkod + Türkçe karakterli etiketi yazdırma
SAP SmartForms ile Barkod + Türkçe karakterli etiketi yazdırmaSAP SmartForms ile Barkod + Türkçe karakterli etiketi yazdırma
SAP SmartForms ile Barkod + Türkçe karakterli etiketi yazdırmaDr. Kerem Koseoglu
 
Correlation Between Proper Training / Involvement and ERP Acceptance and the ...
Correlation Between Proper Training / Involvement and ERP Acceptance and the ...Correlation Between Proper Training / Involvement and ERP Acceptance and the ...
Correlation Between Proper Training / Involvement and ERP Acceptance and the ...Dr. Kerem Koseoglu
 
SQL Injection - Web siteniz tehdit altında mı?
SQL Injection - Web siteniz tehdit altında mı?SQL Injection - Web siteniz tehdit altında mı?
SQL Injection - Web siteniz tehdit altında mı?Dr. Kerem Koseoglu
 

More from Dr. Kerem Koseoglu (17)

SAP WorkFlow Kılavuzu
SAP WorkFlow KılavuzuSAP WorkFlow Kılavuzu
SAP WorkFlow Kılavuzu
 
Avrupa'da ABAP Kariyeri
Avrupa'da ABAP KariyeriAvrupa'da ABAP Kariyeri
Avrupa'da ABAP Kariyeri
 
Zaman Yönetimi TEDx Sunumu
Zaman Yönetimi TEDx SunumuZaman Yönetimi TEDx Sunumu
Zaman Yönetimi TEDx Sunumu
 
ABAP 7.x New Features and Commands
ABAP 7.x New Features and CommandsABAP 7.x New Features and Commands
ABAP 7.x New Features and Commands
 
Fiori eğitimi - kod
Fiori eğitimi - kodFiori eğitimi - kod
Fiori eğitimi - kod
 
Fiori eğitimi - sunum
Fiori eğitimi - sunumFiori eğitimi - sunum
Fiori eğitimi - sunum
 
SPSS Manual (Turkish)
SPSS Manual (Turkish)SPSS Manual (Turkish)
SPSS Manual (Turkish)
 
Kordsa Design Pattern Eğitimi
Kordsa Design Pattern EğitimiKordsa Design Pattern Eğitimi
Kordsa Design Pattern Eğitimi
 
Web Dynpro
Web DynproWeb Dynpro
Web Dynpro
 
Design Patterns in ABAP Objects - SAP Forum / Tech Ed sunumu (2016)
Design Patterns in ABAP Objects - SAP Forum / Tech Ed sunumu (2016)Design Patterns in ABAP Objects - SAP Forum / Tech Ed sunumu (2016)
Design Patterns in ABAP Objects - SAP Forum / Tech Ed sunumu (2016)
 
ABAP mimarisi hakkında yeni bir kitap: "Design Patterns in ABAP Objects"
ABAP mimarisi hakkında yeni bir kitap: "Design Patterns in ABAP Objects"ABAP mimarisi hakkında yeni bir kitap: "Design Patterns in ABAP Objects"
ABAP mimarisi hakkında yeni bir kitap: "Design Patterns in ABAP Objects"
 
Embedding custom ActiveX controls into SAP GUI
Embedding custom ActiveX controls into SAP GUIEmbedding custom ActiveX controls into SAP GUI
Embedding custom ActiveX controls into SAP GUI
 
SAP Portal kılavuzu
SAP Portal kılavuzuSAP Portal kılavuzu
SAP Portal kılavuzu
 
SAP SmartForms ile Barkod + Türkçe karakterli etiketi yazdırma
SAP SmartForms ile Barkod + Türkçe karakterli etiketi yazdırmaSAP SmartForms ile Barkod + Türkçe karakterli etiketi yazdırma
SAP SmartForms ile Barkod + Türkçe karakterli etiketi yazdırma
 
SAP BRF+ Kılavuzu
SAP BRF+ KılavuzuSAP BRF+ Kılavuzu
SAP BRF+ Kılavuzu
 
Correlation Between Proper Training / Involvement and ERP Acceptance and the ...
Correlation Between Proper Training / Involvement and ERP Acceptance and the ...Correlation Between Proper Training / Involvement and ERP Acceptance and the ...
Correlation Between Proper Training / Involvement and ERP Acceptance and the ...
 
SQL Injection - Web siteniz tehdit altında mı?
SQL Injection - Web siteniz tehdit altında mı?SQL Injection - Web siteniz tehdit altında mı?
SQL Injection - Web siteniz tehdit altında mı?
 

Lotus Notes - .NET entegrasyonu

  • 2. Özet Bu dökümaniçerisinde,LotusNotesileveri alışverişiyapabilen .NETuygulamalarınınnasıl geliştirilebileceğine dairbazıanahtar noktalarbulunmaktadır. Lotus Hazırlıkları Kullanıcı Hesabının Ayarlanması Lotus Notesiçerisinde,File Tools User ID menüsüne girin.Burada,entegrasyonişlerinde kullanılacakUseriçinaşağıdaki kutucuğunişaretlenmişolmasıgerekmektedir. Veritabanındaki Alanları Görmek Lotus Notesveritabanındaki alanlarınteknikisimlerini ve detaylarınıgörmekiçin,öncelikle veritabanı dosyasınıaçın. Karşınıza kayıtlargeldiğinde,herhangi birkaydasağtıklayınve “Document Properties...”menüsüne girin.
  • 3. Bu şekilde açılacakolanpencere üzerinde,veritabanındaki alanlarınteknikisimlerini ve seçmiş olduğunuzdökümandaki değerleri görebilirsiniz. Bu alanlara,.NETiçerisindeki erişimsırasındaihtiyacınızolacak. .NET Hazırlıkları Makinanıza LotusNotes’ukurduktansonraVisual Studioiçerisinde ilkyapmanızgerekenşey, projenize AddReference menüsüile (COMtipindeki)“LotusDominoObjects”referansınıeklemektir.
  • 4. Veritabanındaki KayıtlaraErişim Tüm Kayıtları Listelemek Aşağıdaki örnek.NETkodu,bir LotusNotesveritabanındaki tümkayıtlarılisteleyecektir. Aynıörnek içerisinde,“$Revisions”gibi birdenfazlakayıtiçerenalanlarınnasıl okunabileceğinide görebilirsiniz. static void listEquipments() { Domino.NotesSessionClass session = new Domino.NotesSessionClass(); session.Initialize("pass"); Domino.NotesDatabaseClass database = (Domino.NotesDatabaseClass)session.GetDatabase("", "Equipment.nsf", false); Domino.NotesDocumentCollection ndc = (Domino.NotesDocumentCollection)database.AllDocuments; for (int n = 0; n < ndc.Count; n++) { Domino.NotesDocumentClass doc = (Domino.NotesDocumentClass)ndc.GetNthDocument(n); String outs = ""; String s = (String)((Object[])doc.GetItemValue("txtartbenenn"))[0]; s += ":" + (String)((Object[])doc.GetItemValue("txtfabriknr"))[0]; try { int x = ((Object[])doc.GetItemValue("$Revisions")).Length; DateTime d = (DateTime)((Object[])doc.GetItemValue("$Revisions"))[x - 1]; if (limit >= d) count++; outs = s + " - " + d; } catch(Exception ex) { outs = s; } } Console.WriteLine(count.ToString() + " döküman"); Console.WriteLine("Bitti"); Console.ReadKey(); }
  • 5. Bazı Kayıtları Listelemek Belli birkoşulabağlıolarakkayıtları çekenörnekbirkoduaşağıda bulabilirsiniz. static void listEquipments() { Domino.NotesSessionClass session = new Domino.NotesSessionClass(); session.Initialize("pass"); Domino.NotesDatabaseClass database = (Domino.NotesDatabaseClass)session.GetDatabase("", "Equipment.nsf", false); Console.WriteLine(database.Title); Domino.NotesDocumentCollection ndc = (Domino.NotesDocumentCollection)database.Search("txtartbenenn = 'C450'", null, 1); for (int n = 0; n < ndc.Count; n++) { Domino.NotesDocumentClass doc = (Domino.NotesDocumentClass)ndc.GetNthDocument(n); String outs = ""; String s = (String)((Object[])doc.GetItemValue("txtartbenenn"))[0]; s += ":" + (String)((Object[])doc.GetItemValue("txtfabriknr"))[0]; Console.WriteLine(s); } Console.WriteLine("Bitti"); Console.ReadKey(); } Yeni Kayıt Yaratmak Aşağıda,yeni kayıt yaratanörnekbir kodbulabilirsiniz. static void createName() { Domino.NotesSessionClass session = new Domino.NotesSessionClass(); session.Initialize("pass"); Domino.NotesDatabaseClass database = (Domino.NotesDatabaseClass)session.GetDatabase("", "names.nsf", false); Console.WriteLine(database.Title); Domino.NotesDocumentClass doc = (Domino.NotesDocumentClass)database.CreateDocument(); doc.AppendItemValue("FirstName", "Kerem.NET"); doc.AppendItemValue("Form", "Person"); doc.AppendItemValue("FullName", "Kerem.NET Koseoglu"); doc.AppendItemValue("LastName", "Koseoglu"); doc.AppendItemValue("Logo", "beach"); doc.AppendItemValue("NameDisplayPref", "1"); doc.AppendItemValue("Type", "Person"); doc.Save(false, false, false); } Mevcut Kaydı Güncellemek Aşağıda, mevcutkaydı güncelleyenörnekbirkodbulabilirsiniz. doc = (Domino.NotesDocumentClass)docs.GetNthDocument(m); doc.ReplaceItemValue("anzeige1", "KK anzeige1"); doc.ReplaceItemValue("anzeige2", "KK anzeige2"); doc.ReplaceItemValue("anzeige3", "KK anzeige3"); doc.ReplaceItemValue("city", "KK city"); doc.ReplaceItemValue("anzeige3", "KK anzeige3"); doc.ReplaceItemValue("FORM", "frm_eq"); doc.ReplaceItemValue("KundenInfo", "KK KundenInfo"); doc.ReplaceItemValue("numeqicon", "78"); doc.ReplaceItemValue("numeqnr", Sap.shiftLeft(E[n].EQUNR, "0")); doc.ReplaceItemValue("numsort", "2"); doc.ReplaceItemValue("SalesOfficeTemp", "TR 001"); doc.ReplaceItemValue("state", "KK state"); doc.ReplaceItemValue("txtartbenenn", E[n].EQKTX); doc.ReplaceItemValue("txtartpkid", E[n].ZZPMSID); doc.ReplaceItemValue("txtartsachnr", "KK txtartsachnr");
  • 6. doc.ReplaceItemValue("txtfabriknr", "KK txtfabriknr"); doc.ReplaceItemValue("txtkdinventamr", "KK txtkdinventamr"); doc.ReplaceItemValue("txtkdkrzbez", "KK txtkdkrzbez"); doc.ReplaceItemValue("txtkdnr", "KK txtkdnr"); doc.Save(false, false, false); View Çağırmak View’ın Yaratılması Lotus Notes’taüzerinde çalıştığınızveritabanınıaçın.Create  View menüsüne girin. View’auygunbirisimverinve formül içerisindeformismi olarakveritabanındageçerli olan formlardanbirini verdiğinizdeneminolun.Eğerformadınıbilmiyorsanız,yaratılmışolandiğer View’larıörnekalabilirsiniz. “OK” düğmesine baktığınızdaViewyaratılacaktır.BuView’ıaçmakiçin,LotusNotes’unView  GoTo menüsüne girin.Bulistede,yaratmışolduğunuzView’useçin.
  • 7. Bunuyaptığınızda; Viewkarşınıza(muhtemeleniçi boşbirşekilde) açılacaktır. View’undetaylarınıdüzenlemekiçinActions  View Options  Designmenüsüne girin.Bu pencerede View’ungörüntülenecekalanlarınıseçebilir,hesaplamayapmayadayananyeni alanlar tanımlayabilirveyaseçimkoşullarınıbelirleyebilirsiniz. YeniAlanTanımlamak Örnekolarakbu View’ayeni biralanekleyelim.Sütunlarınolduğubölgeyesağtıklayınve InsertNew Columnkomutunuseçin.
  • 8. Aşağıdaki bölgede yenisütununiçeriğine ne geleceğini belirleyebilirsiniz.Buradabirfonksiyon, veritabnaıalanıveyaformül seçilebilir.Bizbuörnekte biralanseçtik. Burada tanımlayacağınızalanlar,sadece ekrangörüntüsüiçindir..NETiçerisindenView’ı çağırdığınızda, buradabulunmayanveritabanıalanlarınadaerişebilirsiniz. YeniKoşul Tanımlamak Bu işlemiçin,sol menüdeki“View”bölümüne girmelisiniz. Örneğimizde;sadece son30 gündüryaratılmış/ değişmişverilereerişmekistediğimizi varsayalım.Bu durumdaformülüşuhale getirmeliyiz: SELECT (form="frm_eq"|Form="frm_ueq") &!@IsAvailable($Conflict) & @Modified>= @Adjust(@Today;0;0; -30; 0; 0; 0) View’uTestEtmek View’ukaydettiktensonraDesign  PreviewinNotesmenüsündensonuçlarınıgörebilirsiniz. Alternatif olarak;normal ekrandaView  GoTo...menüsüne de girebilirsiniz.
  • 9. View’un .NET İçinden Çağırılması Aşağıda,View’uçağıranörnekbir kod bulabilirsiniz. static void listEquipmentsView() { Domino.NotesSessionClass session = new Domino.NotesSessionClass(); session.Initialize("pass"); Domino.NotesDatabaseClass database = (Domino.NotesDatabaseClass)session.GetDatabase("", "Equipment.nsf", false); Console.WriteLine(database.Title); Domino.NotesViewClass view = (Domino.NotesViewClass)database.GetView("KEREMTEST"); for (int n = 0; n <= view.AllEntries.Count; n++) { Domino.NotesDocumentClass doc = (Domino.NotesDocumentClass)view.GetNthDocument(n); if (doc != null) { String outs = ""; String s = (String)((Object[])doc.GetItemValue("txtartbenenn"))[0]; s += ":" + (String)((Object[])doc.GetItemValue("txtfabriknr"))[0]; Console.WriteLine(s); } } Console.WriteLine("Bitti"); Console.ReadKey(); }