2013-05-21 11 views

risposta

4

Non è possibile farlo fuori dalla scatola.
Oltre all'id di workspace, anche l'ID dell'applicazione è importante. Se hai 2 spazi di lavoro diversi e la stessa applicazione ma con ID diversi, questo complica ulteriormente le cose.
Quello che potresti sempre fare è esportare l'applicazione completa, importarla ma usare un id differente in modo da non sovrascrivere quello esistente e quindi creare una nuova pagina come copia della pagina dell'applicazione appena importata.

modo antoher sarebbe quello di modificare il file SQL PAGINA esportato, ma, mi permetta di sottolineare questo, questo non è raccomandato. E come così gentilmente affermato nei forum OTN di tanto in tanto, se avessi bisogno di supporto con un problema di applicazione/apex e scopriresti che stai facendo casino nei file sql in cui non avresti ottenuto il supporto. Fallo solo quando comprendi e CONOSCI quello che stai per fare! Se modifichi il codice senza capire cosa stai facendo, potresti trovarti in una situazione molto peggiore di quella in cui hai iniziato. In qualsiasi altro caso, segui la riga di esportazione/importazione/copia dell'applicazione.

In ogni caso, ero in una posizione in cui gli ID degli spazi di lavoro erano diversi, ma gli ID delle applicazioni no. In questo caso modificare il file esportato è abbastanza banale e richiede la modifica solo 1 riga (uno) e riguarda questo pezzo di codice:

begin 

    -- Assumes you are running the script connected to SQL*Plus as the Oracle user APEX_040200 or as the owner (parsing schema) of the application. 
    wwv_flow_api.set_security_group_id(p_security_group_id=>nvl(wwv_flow_application_install.get_workspace_id,27000294100083787867)); 

end; 
/

Questo è uno dei primi pezzi di codice nel file pagina esportata. Come puoi vedere, l'ID dell'area di lavoro è impostato qui. Se si tenta di essere importati in un'applicazione (anche se l'ID app corrisponde a quello che si sta tentando di importare) si otterrà un errore. Sostituisci l'ID con quello che corrisponde allo spazio di lavoro e funzionerà. Naturalmente, è necessario conoscere gli ID delle aree di lavoro, e si possono trovare questi eseguendo questo selezionare sul proprio ambiente apice

select workspace, workspace_display_name, workspace_id from apex_workspaces 

Qualche buon consiglio (s?):
Se siete ancora in fase di avvio dell'installazione dell'apex, è necessario assicurarsi che i propri ID dell'area di lavoro siano identici. Ad esempio, con un ambiente di test e produzione che ha identici spazi di lavoro e ID delle applicazioni è molto interessante. Avresti 2 istanze (2 installazioni di database su 2 server diversi), ma vuoi che gli ID siano gli stessi.
Per accertarsi di ciò, è possibile ESPORTARE lo spazio di lavoro da un ambiente e quindi importarlo nell'altro. Puoi farlo dall'amministrazione dell'istanza nell'apice, cioè nello spazio di lavoro interno.

2

questo è ora supportata in APEX versione 4.2 - per Oracle doc ...

7.3.4 Copia di un database dell'applicazione pagina

È possibile copiare una pagina da l'applicazione corrente o da un'altra applicazione. Durante il processo di copia, è anche possibile copiare componenti condivisi o modificare i mapping sui componenti condivisi nell'applicazione di destinazione.

Per copiare una pagina:

Spostarsi l'applicazione che si desidera copiare:

Passare alla home page dello spazio di lavoro.

Fare clic sull'icona Application Builder.

selezionare un'applicazione.

Selezionare una pagina.

Viene visualizzata la definizione della pagina.

In considerazione Albero:

Sotto Rendering page, selezionare il nome della pagina.

pulsante destro del mouse e selezionare Copia.

In considerazione dei componenti:

Sotto pagina, fare clic sull'icona Copia.

Per Copia pagina opzione, selezionare una delle seguenti opzioni:

Pagina in questa applicazione

pagina in un'altra applicazione

Seguire le istruzioni sullo schermo.

+0

Questo funziona solo quando le due applicazioni si trovano nello stesso spazio di lavoro. L'OP vuole copiare in un altro spazio di lavoro. La risposta di Tom sopra fornisce le migliori informazioni. –

1

In APEX 4.0 per copiare una pagina da qualsiasi applicazione:

  1. modificare qualsiasi pagina nell'applicazione
  2. Hit the Crea ▼ pulsante
  3. Scegliere Nuova pagina come una copia
+0

Funziona solo quando le due applicazioni si trovano nello stesso spazio di lavoro. –

Problemi correlati