Classi

La piattaforma QualiWare consente di utilizzare tutte le funzioni e le classi dei linguaggi Visual Basic e C# messe a disposizione dalla piattaforma .NET 4.7.2 (vedere qui).

Per rendere più semplici le operazioni più comuni, come quali la connessione ad un database, l’esecuzione di una query, l’aggiornamento di una tabella, o la gestione di array e collezioni, sono disponibili le seguenti classi aggiuntive.

 

QWDatabase

La classe QWDatabase consente di aprire una connessione verso un database Microsoft SQL e Oracle.

Costruttore

Dim DB as new QWDatabase(<tipo>,false)

dove <tipo> può assumere i valori “SQL SERVER” o “ORACLE”

Proprietà

  • Active: se assegnato a True, la connessione al database viene aperta, altrimenti viene chiusa
  • CommandTimeout: time-out di esecuzione di un comando in secondi (default=600)
  • DatabaseName: nome del database
  • LoginString: credenziali di accesso al database, nel formato <utente>/<password>
  • QWSession: restituisce l’oggetto di tipo QWSession corrispondente alla sessione attiva al momento
  • ServerName: nome del server

Metodi

  • BeginTrans(): inizia una transazione
  • Commit(): conclude una transazione confermando le modifiche
  • ExecuteSQL(<sql>): esegue l’istruzione SQL passata come parametro, ritornando il numero di righe eventualmente modificate
  • RollBack(): conclude una transazione annullando tutte le modifiche effettuate

Esempio

Dim DB As New QWDatabase("SQL SERVER", False)
DB.ServerName = "serverqw"
DB.DatabaseName = "qualiware
DB.LoginString = "sa/12334!#"
DB.Active=true

 

QWRowSet

Questa classe rappresenta un insieme di record di database.

Proprietà

  • EndOfSet: ritorna True se il puntatore del record corrente è oltre l’ultimo record.
  • Fields(<nome campo>).value: consente di recuperare il valore del campo <nome campo> della riga corrente. NOTA: la funzione prevede che ogni colonna omonima di una già esistente nella query sia chiamata con un indice progressivo che parte da 1. Ad esempio, se nella query ci sono 3 colonne chiamate COLUMN, la seconda e la terza colonna (in ordine di scrittura all’interno della query) dovranno essere chiamate come COLUMN1 e COLUMN2.
  • Filter: consente di filtrare ulteriormente le righe caricate nella tabella dal server. Funziona esclusivamente se la tabella ha la proprietà AllowAllRecords = True, e non è possibile utilizzare parametri.
  • State: stato della riga: 1=non modificata, 2=in corso di modifica, 3=nuova e non ancora salvata.

Metodi

  • BeginFilter(): porta le righe in modalità “filtro”. Dopo l’esecuzione di questa istruzione, è possibile assegnare ai vari campi i valori che si vogliono filtrare – si veda l’esempio in fondo al paragrafo. Il filtro diventerà effettivo all’esecuzione del metodo ApplyFilter.
  • ApplyFilter(): applica il filtro assegnato. Se la QWTable a cui l’oggetto appartiene ha AllowAllRecords = False, va prima effettuata una chiamata SetRange.
  • ClearFilter(): rimuove il filtro applicato.
  • BeginLocate(): porta le righe in modalità “ricerca prima occorrenza”. Dopo l’esecuzione di questa istruzione, è possibile assegnare ai vari campi i valori che si vogliono cercare – si veda l’esempio in fondo al paragrafo. La ricerca verrà effettuata all’esecuzione del metodo ApplyLocate.
  • ApplyLocate(): esegue la ricerca, ritornando True se il record è stato trovato, e posizionando il puntatore del record sulla riga trovata. Se la QWTable a cui l’oggetto appartiene ha AllowAllRecords = False, va prima effettuata una chiamata SetRange.
  • ApplyLocate(<condition>): esegue la ricerca applicando la condizione specificata nel parametro <condition>. Se si utilizza questo metodo, non è necessario richiamare BeginLocate. Se la QWTable a cui l’oggetto appartiene ha AllowAllRecords = False, va prima effettuata una chiamata SetRange
  • Bookmark(): ritorna un array associativo che rappresenta il segnalibro della riga corrente, da utilizzare per ritornare sulla riga stessa successivamente.
  • GoTo(<bookmark>): si posiziona sulla riga identificata dall’array associativo che rappresenta il segnalibro precedentemente recuperato utilizzando la funzione Bookmark.
  • Count(): restituisce il numero di righe contenute nell’oggetto tabella 
  • SetIndex(<nome indice>): imposta l’indice specificato come nuovo indice virtuale dell’insieme di righe. Per reimpostare l’indice di default, basta passare una stringa vuota come argomento
  • FindKey(<valore campo 1>,<valore campo 2>,…): si posiziona sulla riga della tabella avente i valori dei campi dell’indice corrente uguali a quelli specificati. Restituisce True se la riga è stata trovata, False altrimenti. Di default, l’indice corrente è la chiave primaria della tabella.
    N.B. Se la QWTable a cui l’oggetto appartiene ha AllowAllRecords = False, verrà effettuata un’interrogazione sul server e la tabella stessa conterrà una sola riga, quella trovata. Questa modalità di ricerca è da preferire rispetto a BeginLocate/ApplyLocate in quanto offre prestazioni migliori e comporta un traffico di rete minore.
  • SetRange(<valore campo 1>,<valore campo 2>,…): filtra tutti i record aventi i valori dei campi dell’indice corrente uguali a quelli specificati. Di default, l’indice corrente è la chiave primaria.
    N.B. : Se la QWTable a cui l’oggetto appartiene ha AllowAllRecords = False, verrà effettuata un’interrogazione sul server. Questa modalità di filtro è da preferire rispetto a BeginFilter/ApplyFilter in quanto offre prestazioni migliori e comporta un traffico di rete minore.
  • First(): posiziona il puntatore del record corrente sulla prima riga. Ritorna False se la tabella non contiene righe.
  • Last(): posiziona il puntatore del record corrente sull’ultima riga. Ritorna False se la tabella non contiene righe.
  • Next(<numero righe>): sposta il puntatore del record corrente di <numero righe> in avanti se il valore è positivo, indietro se è negativo. Se il parametro non viene specificato, il puntatore viene spostato alla riga successiva. La funzione ritorna False se lo con lo spostamento il puntatore è andato oltre l’ultima riga o prima della prima riga.
  • Refresh(): ricarica i dati dal server mantenendo le condizioni di filtro impostate.
  • RefreshRow(): ricarica dal server la riga corrente.

 

QWTable

La classe QWTable consente di interagire con il database, interrogandolo e aggiornandone i dati senza la necessità di costruire manualmente le istruzioni di INSERT, UPDATE e DELETE. I record selezionati tramite una query SQL vengono caricati in un buffer in memoria rappresentato dall’oggetto RowSet, che può essere navigato sequenzialmente e le cui colonne possono essere accedute tramite l’array associativo Fields.

Costruttore

Dim q as new QWTable()

Proprietà

  • Active: se assegnato a True, la tabella viene aperta e la query SQL specificata viene eseguita, recuperando i dati. Se assegnata a False la tabella viene chiusa.
  • AllowAllRecords: se assegnato a True, e la query SQL specificata è del tipo “select * from <tabella>”, al momento dell’apertura tutti i record contenuti in <tabella> vengono caricati. Se è assegnato a False, non viene caricato alcun record al momento in cui la tabella viene aperta, ma viene assegnata solo la struttura. I record verranno caricati al momento in cui si utilizzeranno i metodi FindKey oppure SetRange dell’oggetto RowSet. Il default di questa proprietà è True
    N.B. è fortemente consigliabile assegnare questa proprietà a False quando la tabella che viene interrogata contiene molti records e non si ha necessità di esaminarli tutti, ma verranno utilizzati i suddetti metodi per caricare solo i dati di interesse.
  • Database: oggetto di tipo QWDatabase che contiene il database al quale l’oggetto QWTable si deve collegare.
  • Indexes: array associativo contenente l’elenco degli indici utilizzabili per le ricerche e i filtraggi effettuati con FindKey e SetRange. Gli indici sono virtuali (non devono cioè corrispondere ad un indice fisico sulla tabella) e possono essere creati nel seguente modo: q.Indexes("<nome indice>")="<campo1>,<campo2>,...". Si può impostare un indice virtuale come indice corrente della tabella utilizzando il metodo SetIndex dell’oggetto RowSet.
    N.B. la chiave primaria è l’indice impostato di default e non deve essere assegnata a questo array associativo.
  • Params: array associativo da utilizzare per assegnare i parametri della query SQL, con la seguente modalità: q.params("<nome parametro>")=<valore>.
    NOTA: i parametri devono essere assegnati dopo la query e prima di Active = True.
  • SQL: query SQL da eseguire. Eventuali parametri devono essere preceduti dal carattere “:”, mentre il nome può essere arbitrario.
  • RequestLive: assegnare a False se l’oggetto non verrà utilizzato per aggiornare i dati a True altrimenti. In quest’ultimo caso, la query non può contenere clausole JOIN o funzioni di aggregazione, ma deve ritornare i dati da una sola tabella con l’unica possibilità, eventualmente, di utilizzare la clausola WHERE. Il default di questa proprietà è True
  • DontExecuteTrigger: assegnare a True per inibire l’esecuzione di eventuali trigger attivati dall’aggiornamento della tabella.
  • Do_Log: assegnare a False per inibire la registrazione su LOGDOC degli aggiornamenti effettuati sulla tabella. Deve essere assegnato dopo l’assegnazione “Active=True”.

Metodi

  • AbandonRecord(): abbandona le modifiche effettuate al record corrente, riportando i valori nel buffer a quelli presenti nel database.
  • BeginAppend(): aggiunge un record vuoto alla tabella, ed il puntatore si sposterà automaticamente su di esso.
  • CancellaRecords(<msgerr>): cancella tutti i record nella tabella, ritornando True se l’operazione è andata a buon fine, False altrimenti. In quest’ultimo caso, la variabile <msgerr> restituisce l’errore.
  • Delete(<msgerr>): cancella il record corrente, ritornando True se l’operazione è andata a buon fine, False altrimenti. In quest’ultimo caso, la variabile <msgerr> restituisce l’errore.
  • Replace(<nome campo>,<valore>): assegna al campo <nome campo> il valore <valore> per la riga corrente.
  • Requery(): esegue nuovamente la query.
  • SaveRecord(<errmsg>): salva sul database le modifiche alla riga corrente, ritornando True se l’operazione è andata a buon fine, False altrimenti. In quest’ultimo caso, la variabile <msgerr> restituisce l’errore.

Esempi

Il seguente esempio mostra come aprire la tabella Articoli e aggiungere un record

Dim DB As New QWDatabase("SQL SERVER", False)
DB.ServerName = "serverqw"
DB.DatabaseName = "qualiware
DB.LoginString = "sa/12334!#"
DB.Active=true

Dim q as new QWTable
q.DataBase=DB
q.Sql="select * from ARTIC"
q.RequestLive=True
q.AllowAllRecords=False
q.Active=True

q.BeginAppend()
q.Replace("CODICE","010")
q.Replace("DESCRIZION","Descrizione 010")
q.Replace("UNMIS","PZ")

Dim ok as Boolean
Dim msg as String=""
ok=q.SaveRecord(msg)
If not ok
   form.Alert(msg)
End If

q.Active=false

Il seguente esempio mostra come scorrere tutti i record di una tabella, aggiornandoli, dopo avere selezionato quelli di interesse tramite il metodo RowSet.SetRange.

Dim ok as Boolean 
Dim msg as String="" 
Dim q as new QWTable
q.DataBase=DB
q.Sql="select * from VARIAB"
q.RequestLive=True
q.AllowAllRecords=False
q.Active=True

q.RowSet.SetRange("010") ' Il primo campo della chiave primaria di VARIAB è il codice articolo, e seleziona tutte le variabili dell'articolo "010"
while ok and not q.RowSet.EndOfSet
      q.Replace("NOTE","")
      ok=q.SaveRecord(msg)
      If not ok
         form.Alert(msg)
      End If
      q.RowSet.Next()
End While

q.Active=false

Il seguente esempio apre una tabella specificando i parametri

Dim q as new QWTable()
q.DataBase=DB
q.Sql="select * from VARIAB v join ARTIC a on a.CODICE=v.CODICE where a.CODICE=:CODICE"
q.RequestLive=False
q.AllowAllRecords=False
q.Params("CODICE")="010"
q.Active=True

Il seguente esempio cerca un record in una tabella utilizzando FindKey

Dim q as new QWTable()
q.DataBase=DB
q.Sql="select * from CLIFOR"
q.RequestLive=False
q.AllowAllRecords=False
q.Active=True

if q.Rowset.FindKey("C0001")
   ........

Il seguente esempio applica un filtro ad una tabella, utilizzando un indice virtuale.

Dim t as New QWTable() 
t.DataBase=DB 
t.Sql="select * from DOCUMENT" 
t.RequestLive=False 
t.AllowAllRecords=False 
t.Active=True

t.Indexes("virtualIndex") = "TIPO,TIPO_CONT"
t.RowSet.SetIndex("virtualIndex")
t.RowSet.SetRange("AUDIT", "ISO") ' filtra tutti i documenti di tipo "AUDIT" e sottotipo "ISO"

t.RowSet.BeginFilter()
t.RowSet.Fields("NUMBER1").value = 2023
t.RowSet.ApplyFilter() ' filtra tutti i documenti PROVE che hanno NUMBER1=2023

 

QDaemonTableDef

Classe utilizzata per effettuare in modo pratico l’importazione di un set di dati in una tabella di QualiWare.

Proprietà

  • Gest_name: Nome del file (comprensivo di percorso) nel caso in cui l’importazione debba essere fatta da file CSV
  • Gest_sql: query SQL da eseguire per avere i dati da importare nel caso l’importazione avvenga da database. Da notare che la query è sempre eseguita sul database di QualiWare, pertanto per importare dati da un database esterno quest’ultimo dovrà essere interrogabile dal database di QualiWare, eventualmente configurando un Linked Server o una Materialized View.
  • Gest_Separator: Separatore del file nel caso l’importazione venga fatta da file CSV. Può assumere i valori “TabDelimited“, “CSVDelimited” (default), “Delimited(<carattere delimitatore>)“, “FixedLength“. Quest’ultima opzione è disponibile dalla versione 2015.17.2i e va usata nel caso le colonne non siano separate da un separatore ma abbiano lunghezza fissa.
  • Gest_ColumnNames: oggetto DBArray che contiene i nomi da attribuire alle colonne del file CSV nel caso in cui l’intestazione NON contenga il nome delle colonne. Se questo oggetto non viene assegnato, è necessario che la prima riga del file contenga i nomi delle colonne. Nel caso in cui il formato sia a lunghezza fissa (Gest_Separator=”FixedLength”) è necessario specificare oltre al nome della colonna anche la lunghezza, aggiungendo la stringa ” text width <lunghezza>“.
  • Gest_CharacterSet: specifica il character set del file. Può essere “ANSI”, “OEM” o “65001” (=UTF-8). Per importare file contenenti caratteri in alfabeti come il cirillico, l’ebraico o il greco, usare “ANSI” o “65001”.
  • Q95_name: Nome tabella del database di QualiWare nella quale verranno copiati i dati
  • Keys: oggetto DBArray contenente i campi che compongono la chiave che verrà usata nella tabella di destinazione per verificare se il record è già esistente
  • Campi: oggetto AssocArray che definisce la mappatura dei campi. La chiave è il nome del campo sulla tabella di QualiWare, mentre il contenuto può essere o il nome della colonna nel file/tabella di partenza oppure un CodeBlock (espressione lambda VB.NET) che effettua il calcolo del valore a partire da uno o più campi della tabella di origine. Al CodeBlock vengono passati due parametri: il primo è l’oggetto Fields del file/tabella di partenza, il secondo è l’oggetto Fields della tabella di QualiWare di destinazione.
    È possibile non specificare alcuna mappatura, nel qual caso verrà effettuata una mappatura automatica in base al nome dei campi.
  • AfterSave: CodeBlock da eseguire dopo il salvataggio di una riga. Deve richiedere obbligatoriamente un parametro cui viene passato l’oggetto QWTable che contiene la tabella di destinazione.

Per maggiori informazioni, consultare la pagina Configurazione script per task dedicata all’oggetto.

 

DBArray

La classe DBArray è una implementazione di un array monodimensionale ad espansione dinamica. Gli elementi dell’array possono essere di qualsiasi tipo (stringa, numero, oggetti).

Costruttore

Dim A as new DBArray(<elemento 1>, <elemento 2>, ...)

dove <elemento 1>, <elemento 2>, … rappresentano gli elementi da inserire nell’array creato. Se non vengono specificati, l’array verrà creato senza elementi (dimensione zero).

Proprietà

  • Size: restituisce la dimensione corrente dell’array.

Metodi

  • Add(<elemento>): aggiunge l’elemento specificato aumentando di una unità la dimensione dell’array.
  • Delete(<indice>): elimina l’elemento nella posizione <indice> (la prima posizione è la numero “1”), diminuendo di una unità la dimensione dell’array
  • Dir(<percorso>): alimenta l’array con l’elenco dei file contenuti nel percorso specificato. E’ possibile inserire anche percorsi con wildcard.
  • Item(<indice>): restituisce l’elemento nella posizione <indice>. Per recuperare un elemento è comunque possibile omettere “Item” e indicizzare direttamente l’oggetto.
  • Scan(<elemento>): determina l’indice dell'<elemento> nell’array, restituendo “0” se non esiste.

Esempio

Dim a as new DBArray()
a.Add("Italia")
a.Add("Inghilterra")
....

If a.Scan("Spagna")=0
   a.Add("Spagna")
End If

 

QWSession

La classe QWSession consente di accedere ad informazioni relative alla sessione utente.

Costruttore

L’oggetto non ha costruttore, ma deve essere recuperato utilizzando il metodo form.GetSession() o la proprietà DB.QWSession.

Proprietà

  • DataBase: oggetto QWDataBase associato alla sessione.
  • DocumentDirectoryPath: percorso in cui sono archiviati i files fisici della gestione documentale.
  • LinkedDocumentDirectoryPath: percorso in cui sono archiviati i file collegati
  • TempDirectoryPath: percorso in cui è possibile archiviare temporaneamente i file. Questa cartella viene periodicamente svuotata dal sistema.
  • UserCode: codice dell’utente cui appartiene la sessione.
  • UserMail: e-mail dell’utente cui appartiene la sessione.
  • UserName: nome dell’utente cui appartiene la sessione.
  • UserBUs: oggetto DBArray contenente i codici degli enti cui l’utente appartiene.
  • Language: codice della lingua corrente dell’interfaccia.

Metodi

  • GetDocumentPath(<codice documento>): restituisce il percorso completo del file corrispondente al documento il cui codice è passato come argomento.
  • GetDocumentPDFPath(<codice documento>): restituisce il percorso completo della versione PDF del file (o del report)  del documento il cui codice è passato come argomento. Se non esiste, viene restituita una stringa vuota.
  • GetDocumentCategoryPath(<codice categoria>,<tipo directory>): restituisce il percorso dei file relativi alla categoria il cui codice è specificato nel parametro <codice categoria>. Se il parametro <tipo directory> non è specificato o vale zero viene restituito il percorso base; se vale 1 viene restituito il percorso dei file in attesa di pubblicazione; se vale “2” viene restituito il percorso dei file pubblicati; se vale “3” viene restituito il percorso dei file obsoleti.
  • GetLocalTempFileName(<estensione>): restituisce un percorso di file unico con l’estensione specificata nella cartella locale dell’applicazione (generalmente “c:\program files (x86)\QualiWare Web Server\temp”). L’estensione deve comprendere il “.”.
  • GetServerTempFileName(<estensione>): restituisce un percorso di file unico con l’estensione specificata nella sottocartella “_files_temporanei” della cartella condivisa sul file server. L’estensione deve comprendere il “.”.
  • AllowClientQuery(<query>): abilita una query per essere eseguita in un evento Javascript attraverso la funzione $.QualiWare.executeQuery. Può essere utilizzato nell’EventoCarica. Dal momento che la query stessa può essere modificata dinamicamente nell’evento Javascript, ad esempio aggiungendo i filtri nella clausola WHERE, non è necessario specificarla completamente nel parametro <query>, ma è sufficiente inserire la parte costante, ad esempio la parte SELECT.

NOTA: per quanto riguarda i metodi relativi al percorso del documento, con “codice” si intende il campo _CODDOC del documento in oggetto.

 

AssocArray

La classe AssocArray è una implementazione di quello che è comunemente chiamato “dizionario”, che consiste in un array monodimensionale dove l’indice non è un numero ma una chiave alfanunumerica. Gli elementi dell’array possono essere di qualsiasi tipo (stringa, numero, oggetti).

Costruttore

Dim A as new AssocArray()

Proprietà

  • FirstKey: restituisce la prima chiave dell’array. N.B. le chiavi non sono in ordine alfabetico
  • Size: restituisce la dimensione corrente dell’array.

Metodi

  • Dir(<percorso>): alimenta l’array con l’elenco dei file contenuti nel percorso specificato. E’ possibile inserire anche percorsi con wildcard.
  • isKey(<chiave>): ritorna true se la chiave specificata è presente, false altrimenti.
  • Item(<chiave>): restituisce l’elemento corrispondente alla chiave specificata. Per recuperare un elemento è comunque possibile omettere “Item” e indicizzare direttamente l’oggetto.
  • Remove(<chiave>): elimina l’elemento corrispondente alla chiave specificata.
  • NextKey(<chiave>): restituisce la chiave successiva a quella specificata. Se non c’è, ritorna nothing.

Esempio

Dim a as new AssocArray()
a("Italia")="0039"
a("Francia")="0033"

Dim k as String=a.FirstKey
Dim dato as String
while not k is nothing
    dato=a(k)

    k=a.NextKey(k)
End While

 

QWMail

La classe QWMail consente la creazione e l’invio di messaggi e-mail.

Costruttore

Dim qmail as new QWMail()

' oppure, se si vuole che per ogni invio mail venga effettuata una registrazione su LOGDOC con IDDOC='**' e CODDOC='MAIL'
Dim qmail as new QWMail(<sessione>)

Metodi

  • MsgCreate(): crea un nuovo messaggio.
  • MsgFrom(<e-mail mittente>): definisce la e-mail del mittente
  • MsgAddDest(<e-mail>,<tipo>): aggiunge un destinatario. Il parametro tipo può assumere i seguenti valori: 1->destinatario, 2->per conoscenza, 3->nascosto.
  • MsgSubject(<oggetto>): definisce l’oggetto del messaggio.
  • MsgText(<testo>): definisce il testo del messaggio, che può essere in formato HTML.
  • MsgAttachment(<nome>,<percorso>): aggiunge come allegato il file che si trova nel percorso specificato nel parametro <percorso>, dandogli il nome specificato nel parmetro <nome>
  • MsgShow(<form>): visualizza il messaggio. Nel parametro <form> deve essere specificato un riferimento al form che crea il messaggio.
  • MsgSend(<errore>): invia il messaggio senza visualizzarlo. Ritorna false in caso di errorecon la descrizione dell’errore stesso nel parametro <errore>

Esempio

Dim qmail As New QWMail()
qmail.MsgCreate()
qmail.MsgFrom("[email protected]")
qmail.MsgAddDest("[email protected]", 1) 
qmail.MsgSubject("Oggetto della mail")
qmail.MsgText("Testo della mail")
qmail.MsgAttachment("allegato.PDF", filepath)
qmail.MsgShow(form)

 

QWExcel

La classe QWExcel consente di creare, modificare e leggere file Excel.

Costruttore

Dim QWExcel as new QWExcel()

Metodi

  • NewWorkbook(<filename>): crea un nuovo file Excel nel percorso specificato
  • Open(<filename>): apre un file Excel dal percorso specificato
  • SetActiveWorksheet(<name>): rende attivo il foglio di lavoro dal nome specificato. Tutte le istruzioni di lettura e scrittura si riferiscono al foglio di lavoro attivo. Si noti che all’apertura di un file Excel non c’è nessun foglio attivo di default.
  • Save(): salva il foglio di lavoro aperto.
  • ReadBoolean(<row>,<column>): ritorna il valore boolean presente nella cella di cui vengono specificate le coordinate numeriche nei parametri <row> e <column>
  • ReadDate(<row>,<column>): ritorna il valore datetime presente nella cella di cui vengono specificate le coordinate numeriche nei parametri <row> e <column>
  • ReadString(<row>,<column>): ritorna il valore stringa presente nella cella di cui vengono specificate le coordinate numeriche nei parametri <row> e <column>
  • ReadInteger(<row>,<column>): ritorna il valore intero presente nella cella di cui vengono specificate le coordinate numeriche nei parametri <row> e <column>
  • ReadFloat(<row>,<column>): ritorna il valore numerico presente nella cella di cui vengono specificate le coordinate numeriche nei parametri <row> e <column>
  • WriteBoolean(<row>,<column>,<bool>): assegna il valore booleano <bool> alla cella di cui vengono specificate le coordinate numeriche nei parametri <row> e <column>
  • WriteDate(<row>,<column>,<datetime>): assegna il valore <datetime> alla cella di cui vengono specificate le coordinate numeriche nei parametri <row> e <column>
  • WriteString(<row>,<column>,<string>): assegna il valore <string> alla cella di cui vengono specificate le coordinate numeriche nei parametri <row> e <column>
  • WriteInteger(<row>,<column>,<int>): assegna il valore intero <int> alla cella di cui vengono specificate le coordinate numeriche nei parametri <row> e <column>
  • WriteFloat(<row>,<column>,<float>): assegna il valore numerico <float> alla cella di cui vengono specificate le coordinate numeriche nei parametri <row> e <column>
  • SetCellBackColor(<row>,<column>,<color>): assegna il colore di sfondo <color> alla cella di cui vengono specificate le coordinate numeriche nei parametri <row> e <column>
  • SetCellForeColor(<row>,<column>,<color>): assegna il colore di primo piano <color> alla cella di cui vengono specificate le coordinate numeriche nei parametri <row> e <column>

Esempio

Dim x As QWExcel = New QWExcel
x.Open("c:\temp\file.xlsx")
x.WriteString(1,1,"Prova")
x.WriteDate(1,2,Today())
x.Save()

 

Zipper

La classe Zipper consente di aprire creare file zip e di estrarne il contenuto.

Costruttore

Dim zipper as new Zipper

Metodi

  • GenerateZipFile(<zipFilePath>, <files>, <optional filenames>): genera un file zip nel percorso specificato dal parametro <zipilePath> con i file i cui percorsi sono contenuti nel parametro <files> che è di tipo DBArray. Opzionalmente, è possibile specificare i nomi dei file nel parametro di tipo DBArray <filenames>.
  • ExtractZipFile(<zipFilePath>,<targetPath>): estrae nella cartella il cui percorso è specifiato nel parametro <targetPath> i file contenuti nel file il cui percorso è specificato nel parametro <zipFilePath>