Questo argomento descrive come applicare il package
Rational ClearQuest OSLCLinks versione 1.0
o 1.1 al proprio schema utilizzando Rational ClearQuest Designer
che si basa sulla tecnologia Eclipse.
Informazioni su questa attività
Applicare il package OSLCLinks v1.0 se si sta eseguendo ClearQuest v7.1.2. Applicare
il package OSLCLinks v1.1 se si sta eseguendo ClearQuest v7.1.2.1.
Procedura
- In ClearQuest Designer,
fare clic con il tasto destro del mouse sulla versione dello schema a cui
si desidera applicare il package e selezionare . Viene visualizzata la Procedura guidata package.
- Espandere il nodo OSLCLinks nell'elenco di package e selezionare la
versione 1.0 o 1.1.
Fare clic su Successivo.
- Selezionare i tipi di record a cui si desidera applicare il package.
- Facoltativo: se è stato applicato il package OSLCLinks v1.1 e si desidera utilizzare il
supporto predicato di stato per associare lo stato o gli stati ClearQuest
agli stati OSLC, è necessario aggiungere uno script Perl globale denominato OSLC_CQ_State_Mapping e
fornire un'implementazione:
- Andare al nodo associato allo
schema, fare clic con il tasto destro del mouse e selezionare Aggiungi.
- Immettere il seguente testo nel campo Nome hook e quindi fare
clic su OK: OSLC_CQ_State_Mapping
- Aggiungere il codice hook allo script OSLC_CQ_State_Mapping.
- Fare clic su Fine.
Il package OSLCLinks viene applicato allo schema selezionato. Verificare
l'installazione del package ricercando un nuovo tipo di record OSLCLink
stateless nello schema.
Consultare la guida Applicazione
dei package per ulteriori informazioni sull'applicazione dei package.
Esempio
Questa sezione fornisce un esempio dell'applicazione del package OSLCLinks
v1.1 allo schema DefectTracking e l'abilitazione del package per il tipo di record
Defect.
- In ClearQuest Designer,
fare clic con il tasto destro del mouse sulla versione dello schema a cui si desidera applicare il
package e selezionare . Viene visualizzata la Procedura guidata package.
- Espandere il nodo OSLCLinks nell'elenco dei package, selezionare la versione 1.1
e fare clic su Avanti.
- Abilitare il package OSLCLinks per il tipo di record Defect.
- Aggiungere uno script globale Perl denominato OSLC_CQ_State_Mapping
e fornire un'implementazione.
- Andare al nodo associato allo
schema, fare clic con il tasto destro del mouse e selezionare Aggiungi.
- Immettere il seguente testo nel campo Nome hook e quindi fare
clic su OK: OSLC_CQ_State_Mapping
- Aggiungere il codice hook allo script OSLC_CQ_State_Mapping.
Ad esempio:
sub OSLC_CQ_State_Mapping {
my ($myentity, $hook_type) = @_;
my $state = $myentity->GetFieldStringValue("State");
if ($hook_type eq "Validation") {
if (($state eq "Assigned") || ($state eq "Opened")) {
$myentity->SetFieldValue("oslc_cm-inprogress", "1");
} else {
$myentity->SetFieldValue("oslc_cm-inprogress", "0");
}
if ($state eq "Closed") {
$myentity->SetFieldValue("oslc_cm-closed", "1");
} else {
$myentity->SetFieldValue("oslc_cm-closed", "0");
}
}
}
Questo script viene richiamato dall'hook di inizializzazione e
convalida dell'azione OSLC_State_Predicates di un record
Defect. Lo script ha due parametri: l'entità corrente ed il tipo di
hook. A seconda dei requisiti, è possibile aggiungere diversi codici
in base al valore del parametro del tipo di hook. Lo script di
esempio mostra un hook di convalida.
- Fare clic su Fine. Viene eseguito il
checkin della revisione dello schema.
- Aggiornare il database dell'utente.
- Verificare le modifiche dello schema:
- Utilizzare il client ClearQuest
per accedere al database utente.
- Modificare la query su tutti i difetti e aggiungere i seguenti campi di visualizzazione: oslc_cm-inprogress e oslc_cm-closed.
- Eseguire la query su tutti i difetti.
- Selezionare un difetto nei risultati della query che abbia uno stato Inoltrato.
- Chiudere il difetto e verificare che oslc_cm-closed
sia uguale a 1 mentre gli altri campi con prefisso oslc_cm siano
uguali a 0.
- Aprire di nuovo il difetto e verificare che oslc_cm-inprogress sia
uguale a 1 mentre gli altri campi con prefisso oslc_cm siano uguale a
0.