Scopo
Imposta il valore di una proprietà di tipo GUID di un oggetto. Ad oggi l'unica proprietà di tipo GUID è l'ID degli oggetti per cui l'unico utilizzo che può avere questa funzione è quella di cambiare il GUID degli oggetti.
Sintassi
INDE.SetPropGUID(id oggetto, proprietà, guid, id transazione, indice)
Argomenti
ID Oggetto | Puntatore dell'oggetto di cui impostare la proprietà. Solitamente il puntatore ad un oggetto viene recuperato tramite una delle seguenti funzioni: GetNextObject, GetObjectByID, GetObjectByCode, GetObjectByName, GetParentObject, GetPropObject. |
Proprietà | Indice della proprietà di cui impostare il valore. L'elenco delle proprietà disponibili sono contenute nella lista valori Proprietà Comuni e nella liste valori specifiche per tipo. |
GUID | GUID a cui impostare la proprietà. |
ID Transazione | Numero della transazione in cui effettuare la modifica ottenuto tramite la funzione BeginTransaction. |
Indice | Indice del valore nel caso la proprietà sia una collezione di valori. L'elenco dei possibili indici è specificato nella descrizione delle proprietà. |
Esempio di codice
try
{
INDEExtension INDE = null // Oggetto INDE
int IDDocumento = 0 // Puntatore del documento
//
// Mi connetto a IN.DE
INDE.Connect()
//
// Recupero il puntatore del documento aperto
IDDocumento := INDE.GetActiveDocument()
//
// Se c'è un documento aperto
if IDDocumento > ZERO
{
int IDProgetto = 0 // Puntatore al progetto
int IDOggetto = 0 // Puntatore dell'oggetto
//
// Recupero il puntatore del progetto
IDProgetto := INDE.GetRootObject(IDDocumento)
//
Ricerca dell'oggetto
...
//
Lettura e modifica dell'oggetto
{
// Se ho trovato l'oggetto
if IDOggetto > ZERO
{
string GUID = "" // GUID dell'oggetto
int NumeroRighe = 0 // Numero di righe
int DerivataDa = 0 // Puntatore dell'oggetto da cui deriva
//
// Leggo alcune proprietà
GUID := INDE.GetPropGUID(IDOggetto, GUID, ??)
NumeroRighe := INDE.GetPropInteger(IDOggetto, Numero righe, ??)
DerivataDa := INDE.GetPropObject(IDOggetto, Derivato da, ??)
//
// Scrivo alcune proprietà
INDE.SetPropGUID(IDOggetto, GUID, 4F6DEA72-5C55-E16E-C4D8-
00DBCB8BC4A6, ??, ??)
INDE.SetPropInteger(IDOggetto, Numero righe, NumeroRighe, ??,
??)
INDE.SetPropObject(IDOggetto, Derivato da, DerivataDa, ??, ??)
//
// Cancello l'oggetto
INDE.DeleteObject(IDOggetto, ??, ??, ??)
}
}
}
}
{
INDEExtension INDE = null // Oggetto INDE
int IDDocumento = 0 // Puntatore del documento
//
// Mi connetto a IN.DE
INDE.Connect()
//
// Recupero il puntatore del documento aperto
IDDocumento := INDE.GetActiveDocument()
//
// Se c'è un documento aperto
if IDDocumento > ZERO
{
int IDProgetto = 0 // Puntatore al progetto
int IDOggetto = 0 // Puntatore dell'oggetto
//
// Recupero il puntatore del progetto
IDProgetto := INDE.GetRootObject(IDDocumento)
//
Ricerca dell'oggetto
...
//
Lettura e modifica dell'oggetto
{
// Se ho trovato l'oggetto
if IDOggetto > ZERO
{
string GUID = "" // GUID dell'oggetto
int NumeroRighe = 0 // Numero di righe
int DerivataDa = 0 // Puntatore dell'oggetto da cui deriva
//
// Leggo alcune proprietà
GUID := INDE.GetPropGUID(IDOggetto, GUID, ??)
NumeroRighe := INDE.GetPropInteger(IDOggetto, Numero righe, ??)
DerivataDa := INDE.GetPropObject(IDOggetto, Derivato da, ??)
//
// Scrivo alcune proprietà
INDE.SetPropGUID(IDOggetto, GUID, 4F6DEA72-5C55-E16E-C4D8-
00DBCB8BC4A6, ??, ??)
INDE.SetPropInteger(IDOggetto, Numero righe, NumeroRighe, ??,
??)
INDE.SetPropObject(IDOggetto, Derivato da, DerivataDa, ??, ??)
//
// Cancello l'oggetto
INDE.DeleteObject(IDOggetto, ??, ??, ??)
}
}
}
}
- Non essendoci proprietà di tipo GUID che contengono una collezione di GUID il parametro Indice va omesso o impostato a ZERO.
- Le modifiche fatte fuori transazione non cambiano lo stato del documento, cioè se il documento prima della modifica era non modificato dopo la modifica resta tale; quindi in fase di chiusura non verrebbe chiesto all'utente se vuole salvare.
- In caso di modifica fuori transazione non viene attivato il funzionamento del sistema di Team Working.
- La lettura delle proprietà di tipo GUID avviene tramite la funzione GetPropGUID.
- Se il puntatore passato come parametro ID Oggetto non corrisponde ad alcun oggetto nel progetto aperto, allora verrà generata un'eccezione.
Ultima modifica: 22/08/2008 / Validità: da 7.1.3300