DO: Funzione DocI
copia linkDescrizione del difetto
Errore nell'utilizzo della funzione DocID qualora venga chiamata su un documento esteso. Il malfunzionamento si manifestava solo se la proprietà DocID era parte del documento esteso. Per esempio:
- classe A che non derivava dal database che conteneva due proprietà;
- classe B che estendeva la classe A, che derivava dal database e che possedeva quattro proprietà di cui la prima di tipo char-fixed lunga 20 caratteri (DOCID)
Effetti del malfunzionamento
- La funzione DocID restituiva il valore di una proprietà diversa dalla proprietà DOCID.
Soluzioni
Utilizzare la versione 8.5.3800. Qualora non sia possibile utilizzare tale versione è sufficiente, invece di utilizzare la funzione DocID, effettuare la chiamata
String d := Doc.GetProperty(Doc.GetPropertyIndex('DO_ID', False, True, ??, ??))
ovvero recuperare il valore della proprietà il cui concetto è DO_ID. Il malfunzionamento, infatti, riguarda solo la comunicazione da parte di Instant Developer all'applicazione dell'indice specifico della proprietà DOCID. Se la ricerca viene effettuata tramite reflection, come nell'esempio sopra, il malfunzionamento non si manifesta.
Funzionalità interessate
L'uso della funzione DocID in applicazioni document oriented prodotte con Instant Developer.
Note
- A causa del malfunzionamento se veniva chiamato il metodo Init su una istanza del documento esteso non veniva inizializzata la proprietà DOCID in quanto l'indice di tale proprietà era errato.
Ultima modifica: 25/10/2016 / Validità: da 8.5.3800