Caricamento delle librerie
Quando si devono fare delle operazioni sui documenti, come la ricerca, l'inserimento, la cancellazione, ecc, ci si deve loggare, ossia si deve avere l'accesso al sistema FileNet. Per far ciò, dobbiamo ricorrere al metodo logon.
Quando la form, viene avviata, dobbiamo caricare nella casella combinata, tutte le librerie che sono incluse in FileNet, in ogni libreria, possiamo trovare cartelle e documenti. La form di login, avrà il compito di fare il login nella libreria selezionata dall'utente in cui vuole effettuare le operazione sui documenti.
Per rilevare i nomi delle librerie, dobbiamo utilizzare l'oggetto Neighborhood necessario per la gestione dell’insieme delle librerie. Per la gestione delle librerie, invece, dobbiamo utilizzare l'oggetto Library che effettua operazione sui documenti e le cartelle di ogni libreria. Infine utilizziamo nel progetto anche l'oggetto ErrorManager che, come abbiamo visto, permette la gestione degli errori.
Si crei nella form, tre oggetti, del tipo precedentemente illustrato. Il codice dev'essere simile a quello riportato qui di seguito:
Visual Basic .NET
Private objLibrary As New IDMObjects.Library
Private objNeighborhood As New IDMObjects.Neighborhood
Private objErrorManager As New IDMError.ErrorManager
Visual C# .NET
//oggetto neighborhhod
private IDMObjects.Neighborhood objNeighborhood = new IDMObjects.Neighborhood();
//oggetto library
private IDMObjects.Library ObjLibrary = new IDMObjects.Library();
//oggetto error
private IDMError.ErrorManager ObjErrorManager = new IDMError.ErrorManager();
Mentre per il rilevamente delle libreria installate, il codice da inserire nell'evento load della form, dev'essere simile a quello riportato qui di seguito:
Visual Basic .NET
'gestione dell'errore
Dim ObjErrori As IDMError.Errors
Dim dttLibreria As New DataTable("Dati")
Dim dtcNomeLibreria As New DataColumn("Libreria")
Dim dtcNomeCompleto As New DataColumn("NomeCompleto")
Dim dtrRiga As DataRow
'riempio la combo con le varie librerie di FileNet
Dim oblLibreria As New IDMObjects.Library
Try
'inserisco le colonne
dttLibreria.Columns.Add(dtcNomeLibreria)
dttLibreria.Columns.Add(dtcNomeCompleto)
For Each objLibrary In objNeighborhood.Libraries
dtrRiga = dttLibreria.NewRow()
dtrRiga(0) = objLibrary.Label.ToString()
dtrRiga(1) = objLibrary.Name.ToString()
dttLibreria.Rows.Add(dtrRiga)
Next
cmbLibreria.DisplayMember = "Libreria"
cmbLibreria.ValueMember = "NomeCompleto"
cmbLibreria.DataSource = dttLibreria
'imposto il primo valore
If cmbLibreria.Items.Count > 0 Then
cmbLibreria.SelectedIndex = 0
End If
Catch ex As Exception
Dim StrTestoErrore As String = ""
Dim objErrore As IDMError.Error
If objErrorManager.Errors.Count > 0 Then
ObjErrori = objErrorManager.Errors
'ciclo per tutti gli errori
For Each objErrore In ObjErrori
StrTestoErrore = StrTestoErrore & objErrore.Description
Next
Else
StrTestoErrore = ex.Message
End If
MsgBox(StrTestoErrore)
objErrore = Nothing
Finally
objErrorManager = Nothing
End Try
Visual C# .NET
this.Cursor = Cursors.WaitCursor;
//gestione dell'errore
//riempio la combo con le varie librerie di FileNet
try
{
DataTable dttLibreria = new DataTable("Dati");
DataColumn dtcNomeLibreria = new DataColumn("Libreria");
DataColumn dtcNomeCompleto = new DataColumn("NomeCompleto");
DataRow dtrRiga;
dttLibreria.Columns.Add(dtcNomeLibreria);
dttLibreria.Columns.Add(dtcNomeCompleto);
foreach (IDMObjects.Library ObjLibrary in objNeighborhood.Libraries)
{
dtrRiga = dttLibreria.NewRow();
dtrRiga[0] = ObjLibrary.Label.ToString();
dtrRiga[1] = ObjLibrary.Name.ToString();
dttLibreria.Rows.Add(dtrRiga);
}
cmbLibreria.DisplayMember = "Libreria";
cmbLibreria.ValueMember = "NomeCompleto";
cmbLibreria.DataSource = dttLibreria;
//imposto il primo valore
if (cmbLibreria.Items.Count > 0)
cmbLibreria.SelectedIndex = 0;
}
catch (Exception ex)
{
IDMError.Errors ObjErrori;
string StrTestoErrore = "";
IDMError.Error ObjErrore;
//verifico che in FileNet ci siano errori
if (ObjErrorManager.Errors.Count > 0)
{
ObjErrori = ObjErrorManager.Errors;
//ciclo per tutti gli errori
foreach (IDMError.Error objErrore in ObjErrori)
{
StrTestoErrore = objErrore.Description;
}
}
else
{
StrTestoErrore = ex.Message;
}
MessageBox.Show(StrTestoErrore, "FileNet");
}
finally
{
this.Cursor = Cursors.Default;
}
|