Emanuele Mattei

Il blog di Emanuele Mattei.....il suo diario :-)

Blog Amici

Compact Framework

Web e win application

Siti Gratuiti

Siti Vari

Tools per .Net

Chi sono

elenco siti

marzo 2007 - Posts

ricercare prodotti Microsoft

Google

Vi segnalo questo motore di ricerca di google http://www.google.com/microsoft.html in pratica effettua una ricerca sul web, riguardante software Microsoft.

Davvero simpatica come idea.

Che dirvi.... buona ricerca :-)))

Posted: mar 25 2007, 07:18 by emanuelem | with no comments
Filed under:
Indagine di mercato sul settore ICT

Vi segnalo questa nuova indagine http://www.lineaedp.it/01NET/HP/0,1254,1_ART_76596,00.html riguardante il settore ICT .  Il sondaggio ha lo scopo di analizzare in modo dettagliato retribuzioni, carriere e formazione delle principali figure lavorative. Il sondaggio è suddiviso in vari parti, l'anagrafica, ruolo nel contesto aziendale, condizioni attuali del contratto, livello di soddisfazione, la formazione, esperienze precedenti, ricerca di un impiego ed informazioni sull'attuale azienda.

Un sondaggio che invito a partecipare a tutte le persone che lavorano in questo settore.

Posted: mar 24 2007, 10:23 by emanuelem | with no comments
Filed under:
Filenet Visualizzare un documento tramite VB.Net e C#

Articolo: Visualizzare un documento di Filenet con Visual Basic Net e C#

Figura 1

Introduzione

In questo articolo, vedremo come visualizzare un documento, inserito in filenet, in una nostra applicazione windows, tramite la tecnologia .net, i linguaggi che utilizzeremo sono Visual Basic Net e C#.

Tramite i controlli messi a disposizione da filenet, ed in particolare del controllo Filenet Panagon IDM VIEW Control, possiamo visualizzare in una nostra applicazione per windows, i file (immagini, .doc, ecc) inseriti in filenet. Tale controllo, permette una visualizzazione di tale file all'interno del controllo, come mostrato in figura 1.

Inserimento del controllo nella barra degli strumenti.

Continuando dal progetto sviluppato nell'articolo precedente, si crea una form, il cui compito è quello di aprire (tramite appositi pulsanti) altre finestre. Dopo aver creato tale finestra, si aggiunge al progetto una nuova form, la quale avrà il compito di visualizzare i documenti. Aggiungiamo al progetto il controllo Filenet Panagon Idm View control, tramite il tasto destro del mouse, sulla barra degli strumenti, selezioniamo dal menu di scelta rapida, la voce aggiungi controllo. Verrà aperta una finestra, contenente i controlli installati sul pc, da questa finestra selezioniamo il controllo Filenet Panagon IDM VIew control, come mostrato in figura 2.

 

Figura 2

Dopo aver selezionato tale voce, mettiamo una spunta a tale controllo, e chiudiamo la finestra tramite il pulsante ok, in questo modo verrà visualizzato il controllo nella barra degli strumenti, come mostrato in figura 3.

 

Figura 3

Creazione della finestra per la visualizzazione del documento.

Si crea una finestra, nella quale saranno visualizzati i documenti, la finestra avrà una lista dei nomi (corrispondenti al codice id, impostato da filenet) ed il  controllo idm view di filenet, per la visualizzazione dei documenti. Inseriamo nella finestra, due controlli label, un pulsante, un controllo listbox ed infine il controllo filenet idm viewer, inserito precedentemente, la finestra dovrà avere un aspetto simile alla figura 1.

Inseriamo lo spazio dei nomi, per la gestione dei database generali, oledb. Di seguito si riporta tale codice:

Vb.Net

Imports

System.Data.OleDb

C#

using

System.Data.OleDb;

 

Si dichiara a livello generale della form, un oggetto di tipo idmlibrary per la gestione delle librerie

Vb.Net

Private

objLibrary As New IDMObjects.Library

C#

//oggetto libreria

IDMObjects.Library ObjLibrary =

new IDMObjects.Library();

Siccome l'oggetto library, è quel oggetto per le gestione dei documenti che in precedenza abbiamo utilizzato tramite il metodo logon per effettuare il login, quindi l'autenticazione a filenet, dobbiamo utilizzare l'istanza di quell'oggetto, per gestire i vari documenti nella nostra form, a tal fine si crea un nuovo costruttore, che accetta come parametro un oggetto di tipo library.

Di seguito si riporta un frammento di codice.

Vb.Net

 

Sub New(ByVal libreria As IDMObjects.Library)

InitializeComponent()

objLibrary = libreria

 

End Sub

C#

public

FrmVisualizzaDocumento(IDMObjects.Library libreria)

{

InitializeComponent();

ObjLibrary = libreria;

}

Caricamento dei nomi dei file

Nell'evento load della form, carichiamo nel controllo lista tutti i nomi dei documenti inseriti in filenet, in particolare, per rilevare tali nomi, dobbiamo effettuare una query, nel provider di filenet, tale query è diversa se utilizziamo la versione IS  (Image Services) o CS (content Services) perchè i nomi dei campi della tabella sono differenti. La query che andremo ad eseguire, avrà il compito di restituire tutti quei nomi dei documenti, in cui hanno il campo classe documentale impostato secondo un nostro valore (Es. "classeTest"). Le Classi che utilizzeremo sono le seguenti:

Oledbconnection per la connessione al database, oledbcommand (occorre lavorare in modalità connessa) per effettuare le query, un oledbdatareader per il rilevamento dei dati trovati. Infine utilizzeremo le classi messi a disposizione da filenet per la gestione degli errori. Di seguito si riporta il codice, da inserire nell'evento load della form.

Vb.Net

 

    'carico i dati nella listbox

    Dim ConDati As OleDbConnection

    Dim DtaDati As OleDbDataAdapter

    Try

               

' Query per la versione IS

 

' Dim StrSql As String = "Select F_DOCNUMBER, F_DOCCLASSNAME,F_ENTRYDATE from FnDocument where F_DOCCLASSNAME='Fatture' order by F_DOCNUMBER,F_ENTRYDATE"

'Queri per la versione CS

 

Dim StrSql As String = "Select idmId , idmName,idmDateAdded from FnDocument where idmDocType ='ClasseTest' order by idmId,idmDateAdded "

           

Dim StrConnessione As String = "provider=FnDBProvider;data source=" _

            & objLibrary.Name _

            &

";Prompt=4;SystemType=" & objLibrary.SystemType _

&

";user id=Admin;password=MiaPassword;LogonID=" & objLibrary.LogonId & ";"

            ConDati =

New OleDbConnection(StrConnessione)

        ConDati.Open()

        'Effettuo la query

       

Dim oledbcommand As New OleDbCommand(StrSql, ConDati)

        'Rilevo i dati

Dim oledbReader As OleDbDataReader = oledbcommand.ExecuteReader()

            oledbReader.Read()

        ListBox1.Items.Add(oledbReader(0).ToString())

'valorizzo la lista

 

While oledbReader.Read()

ListBox1.Items.Add(oledbReader(0).ToString())

 

End While

'Eccezione

 

Catch ex As Exception

 

Dim ObjErrorManager As New IDMError.ErrorManager

 

Dim ObjErrori As IDMError.Errors

 

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 = objErrore.Description

 

Next

 

Else

StrTestoErrore = ex.Message

 

End If

MsgBox(StrTestoErrore)

 

Finally

 

'chiudo i vari oggetti

DtaDati =

Nothing

dtsDati =

Nothing

 

If ConDati.State = ConnectionState.Open Then ConDati.Close()

ConDati =

Nothing

 

End Try

 

C#

 

try

    {

 

 

        //DA UTILIZZARE SOLO PER IS -  string StrSql = "Select F_DOCNUMBER,F_DOCCLASSNAME,F_ENTRYDATE from FnDocument where F_DOCCLASSNAME='ClasseTest' order by F_DOCNUMBER,F_ENTRYDATE" ;

         //Query da utilizzare per la versione CS

 

        string StrSql = "Select idmId , idmName,idmDateAdded from FnDocument where idmDocType ='ClasseTest' order by idmId,idmDateAdded" ;

 

string StrConnessione = "provider=FnDBProvider;data source=" + ObjLibrary.Name + ";Prompt=4;SystemType=" + (int)ObjLibrary.SystemType +

 

            ";user id=Admin;password=MiaPassword;LogonID=" + ObjLibrary.LogonId + ";";

 

        OleDbConnection ConDati = new OleDbConnection (StrConnessione);

        ConDati.Open();

         //Eseguo la query

       

OleDbCommand oledbcommand = new OleDbCommand(StrSql, ConDati);

         //Ricavo i dati

        OleDbDataReader oledbReader = oledbcommand.ExecuteReader();

        oledbReader.Read();

        ListBox1.Items.Add(oledbReader[0].ToString());

        //valorizzo la lista

        while (oledbReader.Read())

            {

ListBox1.Items.Add(oledbReader[0].ToString());

}

     }

    catch (Exception ex)

{

 //Gestione dell'eccezioni tramite classe di filenet

IDMError.ErrorManager ObjErrorManager = new IDMError.ErrorManager();

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");

}

Visualizzare un documento

In questa parte viene descritto come visualizzare nel controllo di filenet, un documento, in particolare quando selezioniamo dalla lista, il nome del documento, verrà visualizzato nel controllo idm view il file selezionato. Utilizzeremo un oggetto di tipo document, il quale tramite la proprietà Id, ci fornirà l'identificativo univoco che filenet assegna ai file, con questo valore, impostiamo la proprietà DocumentId del controllo IDM View, e tramite il metodo refresh aggiorniamo il controllo con il documento selezionato.

Il codice riportato qui di seguito va inserito nell'evento SelectedIndexChanged della  listbox, inserita precedemente.

Vb.Net

 

'oggetto per la visualizzazione

 

Dim ObjDocument As IDMObjects.Document

 

Try

'ottengo l'oggetto documento del nome selezionato nella lista

ObjDocument = objLibrary.GetObject(IDMObjects.idmObjectType.idmObjTypeDocument, ListBox1.SelectedItem.ToString())

 

'"pulisco" l'immagine precedente

AxIDMViewerCtrl1.Clear()

AxIDMViewerCtrl1.DocumentID = ObjDocument.ID

AxIDMViewerCtrl1.Refresh()

 

 

Catch ex As Exception

 

Dim ObjErrorManager As New IDMError.ErrorManager

 

Dim ObjErrori As IDMError.Errors

 

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 = objErrore.Description

 

Next

 

Else

StrTestoErrore = ex.Message

 

End If

MsgBox(StrTestoErrore)

 

Finally

ObjDocument =

Nothing

 

End Try

 

C#

try

    {

 

        //oggetto per la visualizzazione

IDMObjects.Document ObjDocument;

//ottengo l'oggetto documento selezionato nella lista

ObjDocument = (IDMObjects.Document) ObjLibrary.GetObject(IDMObjects.idmObjectType.idmObjTypeDocument, ListBox1.SelectedItem,

null,null,null);

 

//"pulisco" l'immagine precedente

axIDMViewerCtrl1.Clear();

axIDMViewerCtrl1.DocumentID = ObjDocument.ID;

            axIDMViewerCtrl1.Refresh();

        }

 

catch (Exception ex)

{

IDMError.ErrorManager ObjErrorManager =

new IDMError.ErrorManager();

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");

}

 

Chiusura della form

Per concludere, quando si chiude la finestra, prima di eliminare gli oggetti in memoria, dobbiamo chiudere la connessione a filenet, questo avviene tramite il metodo logoff, verificando che la connessione è ancora attiva. Queste operazioni vanno effettuate nell'evento closing della form. Di seguito si riporta un esempo di codice:

Vb.Net

Try

 

If objLibrary.GetState(IDMObjects.idmLibraryState.idmLibraryLoggedOn) = True Then

 

'chiudo la connessione

objLibrary.Logoff()

 

End If

 

Catch ex As Exception

 

Dim ObjErrorManager As New IDMError.ErrorManager

 

Dim ObjErrori As IDMError.Errors

 

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 = objErrore.Description

 

Next

 

Else

StrTestoErrore = ex.Message

 

End If

MsgBox(StrTestoErrore)

 

Finally

 

'distruggo l'oggetto

objLibrary =

Nothing

 

End Try

 

C#

try

{

 

if (objLibrary.GetState(IDMObjects.idmLibraryState.idmLibraryLoggedOn) = True )

{

 

//chiudo la connessione

ObjLibrary.Logoff();

}

 

}

 

catch (Exception ex)

{

IDMError.ErrorManager ObjErrorManager =

new IDMError.ErrorManager();

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

{

 

//distruggo l'oggetto

ObjLibrary =

null;

}

 

Conclusioni

In questo articolo, si è visto come visualizzare un documento tramite un apposito controllo di filenet,  da notare che non tutti i file possono essere visualizzati in quel controllo per esempio quelli in formato .zip, o altri tipi. Tramite la parola download è possibile effettuare il donwload dell'esempio utilizzato in questo articolo.

Download esempio

I siti web di riferimento:

http://www.filenet.com/Italiano/index.asp  Italia

http://www.filenetinfo.com/mk/get/feis_ita_reg Per richiedere gratuitamente il cd "FileNet is Essential"

http://www.filenet.com/  (Inglese)

Posted: mar 20 2007, 12:37 by emanuelem | with no comments
Filed under:
Motore di ricerca blog

Vi segnalo questo simpatico motore di ricerca http://www.google.it/blogsearch?hl=it in partica effettua delle ricerche nei blog. Visto il numero di blog e la qualità, uno strumento che può tornare utile.

Che dirvi... buona ricerca.

Posted: mar 18 2007, 07:21 by emanuelem | with no comments
Filed under:
download Microsoft Device Emulator 2.0 - Standalone Release

Vi segnalo un nuovo aggiornamento per la programmazione mobile, in particolare da questo sito http://www.microsoft.com/downloads/details.aspx?FamilyID=dd567053-f231-4a64-a648-fea5e7061303&DisplayLang=en potete scaricare il nuovo Emulatore per visual Studio 2005, in particolare per il sistema ARM. Da notare che in questa nuova versione  ci sono nuove funzionalità. Per download e maggiori informazioni visitate il seguente sito

http://www.microsoft.com/downloads/details.aspx?FamilyID=dd567053-f231-4a64-a648-fea5e7061303&DisplayLang=en

Di seguito riporto le migliorie elencate nella pagina di download:

Additional Information

Here is a listing of the new features in 2.0

  1. Greatly improved performance at executing ARM instruction - reduces cold-boot time and improves application execution speed
  2. High-resolution input:
    • On TabletPC machines - Tablet Ink is passed into the guest OS at high resolution (1024x1024)
    • When Zoom 2x is enabled, the input resolution is doubled
  3. Ability to change more emulator options on-the-fly:
    • The NE2000 emulator's binding to a host network adapter
    • The /funckey value
    • Open and close the serial port 0 console window
  4. Additional peripheral device and driver support in Windows Embedded CE 6.0
    • Battery Emulation
    • Headset and Speakerphone Emulation
    • Carkit
  5. Customer Experience Improvement Program - opt-in method of providing anonymous customer feedback. This data will help us gather metrics about the DeviceEmulator - what configuration options are used, data about unsuccessful launches, information about error conditions, etc. As you opt to send us your data, we'll use this data to help tune V2 and future emulators to better suit your needs.
Posted: mar 13 2007, 12:02 by emanuelem | with no comments
Filed under:
Visualizare la finestra dei contanti e rilevare il contatto selezionato in ambiente mobile tramite vb.net e C# - Compact framework 2.0

Trucco: Visualizzare la finestra dei contatti e rilevare il contatto selezionato in ambiente compact framework 2.0 (smartdevice) con Visual Basic e C#

In ambiente windows mobile 5.0, tramite il riferimento a Microsoft.WindowsMobile.Forms e  Microsoft.WindowsMobile.PocketOutlook possiamo visualizzare la finestra per la selezione di un contatto e rilevare il nome e cognome del contatto selezionato.

Di seguito si riporta un frammento di codice

Riferimenti:

Vb.Net

Imports Microsoft.WindowsMobile.PocketOutlook

Imports Microsoft.WindowsMobile.Forms

C#

using Microsoft.WindowsMobile.PocketOutlook;

using Microsoft.WindowsMobile.Forms;

Vb.Net

Dim ccdContatto As New ChooseContactDialog()

'solo il contatto

ccdContatto.ChooseContactOnly = True

'nascono il pulsante di nuovo contatto

ccdContatto.HideNew = True

If ccdContatto.ShowDialog() = Windows.Forms.DialogResult.OK Then

MsgBox(ccdContatto.SelectedContact.FirstName & " " & ccdContatto.SelectedContact.LastName)

End If

C#

ChooseContactDialog ccdContatto = new ChooseContactDialog();

//solo il contatto

ccdContatto.ChooseContactOnly = True;

//nascono il pulsante di nuovo contatto

ccdContatto.HideNew = True;

if(ccdContatto.ShowDialog() == DialogResult.OK )

MessageBox.Show (ccdContatto.SelectedContact.FirstName.ToString() + " " + ccdContatto.SelectedContact.LastName.ToString());

 

comprimere i files tramite il controllo gratuito zlib compressiorn library in ambiente mobile compact framework

Vi segnalo questo interessante componente http://opennetcf.com/SharedSource/zlibCE/tabid/245/Default.aspx che permette in ambiente mobile (Compact Framework 2.0) di comprimere i file. Il progetto è gratuito ed open source, per informazioni e download visitate il seguente sito http://opennetcf.com/SharedSource/zlibCE/tabid/245/Default.aspx

Davvero molto interessanti questi progetti open source e gratuiti, a volte nella rete si trova del buon materiale. Il libero scambio di pensiero ed il cofronto fa sempre buone cose :-)

Che dirvi... buona programmazione.

Cambiare il logo di Internet Explorer

FT: Cambiare il logo di Internet Explorer.

Il fuori tema di oggi, riguarda la parte sistemistica, in particolare come modificare il logo di Internet Explorer.

Create due immagini (per esempio logo.bmp e logo2.bmp) di tipo bmp e con dimensione 22x22.

Aprite il registro di windows (avvio->esegui->regedit)

cercate la chiave HKEY_CURRENT_USER\SOFTWARE\MICROSOFT\INTERNET EXPLORER\TOOLBAR

A questo punto dobbiamo creare due nuovi valori, di tipo string.
Fate click tramite il tasto destro del mouse, sulla voce toolbar, nel menu di scelta rapida che viene aperto, selezionate la voce new e poi string value, create un nuovo valore di tipo string chiamato BrandBitmap, fate doppio click su tale voce e come valore inserire il percorso e nome del file (es: c:\logo.bmp).
A questo punto inserite una seconda chiave, chiamata SMBrandBitmap, e come valore mettete il percorso e nome del secondo file (Es.C:\logo2.bmp") chiudete il registro di windows, ed aprire il browser Internet Explorer, a questo punto vedrete il log di Internet Explorer modificato.
Se volete ripristinare il tutto, basterà eliminare tali chiavi.

Posted: mar 08 2007, 10:54 by emanuelem | with no comments
Filed under:
Windows mobile 6.0 sdk

Vi segnalo la possibilità di scaricare sdk per la programmazione dei sistemi operativi windows mobile, in particolare per la versione mobile 6 standard e professional (smartphone e pocketpc)   per download ed informazioni visitate il seguente sito http://www.microsoft.com/downloads/details.aspx?FamilyID=06111a3a-a651-4745-88ef-3d48091a390b&DisplayLang=en

Che dirvi... buona programmazione :-)

Posted: mar 01 2007, 11:39 by emanuelem | with no comments
Filed under: