Validate

Descrizione

Convalida l'oggetto Entity e restituisce tutti gli errori.

Prima di poter eseguire il commit di un oggetto Entity, quest'ultimo deve essere convalidato (anche se non è stato modificato alcun campo). Se si sta modificando il contenuto di un record in modo programmatico, è necessario accertarsi che il codice fornisca dati validi.

Non tentare di analizzare e interpretare la stringa restituita in modo programmatico, poiché il testo di errore potrebbe essere differente nei rilasci futuri. Se si desidera tentare di correggere il valore in un campo con valori non corretti, è possibile utilizzare il metodo GetInvalidFieldValues per ottenere l'Oggetto FieldInfo per tale campo.

È possibile richiamare questo metodo solo se l'oggetto Entity è editabile. Per rendere un oggetto Entity esistente modificabile, richiamare il metodo EditEntity dell'oggetto Session.

Nota: In caso di errore, il metodo potrebbe restituire una stringa contenente un messaggio di errore o un'eccezione, in base ai motivi che hanno causato l'errore. Ad esempio, il metodo restituisce una stringa contenente un messaggio di errore relativo ad errori come, valori non validi impostati per campi. Tuttavia, il metodo genera un'eccezione per altri errori, come il tentativo di modificare un'entità che non è in uno stato modificabile. Il codice deve gestire entrambi i tipi di errori potenziali. Per ulteriori informazioni, consultare Verifica errori e convalida. Esempio di hook di commit di azione fornisce esempi sulla gestione di errori ed eccezioni durante la chiamata ai metodi Validate e Commit.

È inoltre possibile richiamare questo metodo da qualsiasi hook per aggiornare i dati di convalida disponibili sui client ClearQuest. Tuttavia, tenere presente che l'utilizzo di questo tipo di convalida comporta troppo spesso un rallentamento delle prestazioni.

Sintassi

VBScript

entity.Validate 

Perl

$entity->Validate(); 
Identificativo
Descrizione
entity
Un oggetto Entity che rappresenta un record di dati dell'utente. All'interno di un hook, se si omette questa parte della sintassi, viene utilizzato l'oggetto Entity corrispondente al record di dati corrente (solo VBScript).
Valore di ritorno
Se l'oggetto Entity è valido, questo metodo restituisce la stringa vuota (''). Se viene rilevato un qualsiasi errore di convalida, la stringa contiene una spiegazione del problema, adatta per l'utente.

Esempi

VBScript

set sessionObj = GetSession 

set entityObj = sessionObj.GetEntity("defect", "BUGID00000042")
sessionObj.EditEntity entityObj, "modify"   

' modify the Entity object 


status = entityObj.Validate 

     if status = "" then

         entityObj.Commit 
      else

          entityObj.Revert  

       End If
' The Entity object is no longer editable 

Perl

# Get the current session

$sessionobj = $entity->GetSession();

# Select an entity to modify

$entityobj = $session->GetEntity("defect","BUGID00000042");


# Take the modify action on the entity object

$sessionobj->EditEntity($entityobj,"modify");

# ...make modifications to the entity object


$status = $entityobj->Validate();

   if ($status == ""){

      $entityobj->Commit();

      }

   else {

         $entityobj->Revert();

      }

# At this point, the entity object is no longer modifiable 

Feedback