Domanda

Abbiamo un impianto di PeopleSoft e sto costruendo un'applicazione web separato che ha bisogno di estrarre i dati dal database PeopleSoft. L'applicazione web sarà su un server diverso da PeopleSoft, ma la stessa rete interna.

Quali sono le opzioni?

È stato utile?

Soluzione

Sì - Integration Broker è un'implementazione proprietaria di Peoplesoft di un meccanismo publish / subscribe, xml parlando. Si potrebbe naturalmente solo scrivere il codice che va contro il vostro database utilizzando JDBC o OLE / ODBC. Nulla ti impedisce di fare questo. Tuttavia, è necessario comprendere lo schema del database Peoplesoft, in modo che si sta tirando da, o l'inserimento / aggiornamento / cancellazione di tutti i dati corretti. Peoplesoft si prende cura di questo per voi.

Inoltre, controllare interfacce componente -. E sono esposti come API per Java o C / C ++

Altri suggerimenti

Questo è un vecchietto, ma può ancora essere di interesse.

PeopleSoft ha il proprio schema all'interno del database host (Oracle, SQL Server, DB2, ecc) che sono le tabelle PSxxx, ad esempio: PSRECDEFN è l'equivalente di DBA_TABLES di Oracle. Queste tabelle non dovrebbero essere toccati da un qualsiasi codice esterno. Le tabelle di applicazione vengono memorizzate in tabelle PS_xxx, ad esempio: PS_JOB. Queste tabelle possono essere letti e aggiornati da alcun codice SQL.

Molti programmi batch in PeopleSoft (es: motori di destinazione, COBOL o SQRs) accedono direttamente ai tavoli, e questo è il modo più veloce per ottenere i dati all'interno o all'esterno del database. Tuttavia PeopleSoft ha un bel livello di applicazione ricca che viene bypassato quando si fa SQL diretto. Questo strato applicazione deve essere replicato nel codice SQL diretta, specialmente per inserti o aggiornamento. Ci possono essere aggiornamenti ad altre tabelle, calcoli o incrementi di contatori database memorizzato.

Per determinare come fare questo si deve guardare attraverso il PeopleCode (un linguaggio interpretato VB6-like), progettazione della pagina (tramite Application Designer) e utilizzare il PeopleCode e strumenti di traccia SQL. In questi giorni il livello di applicazione è enorme, quindi questo può essere un compito lungo per le pagine non banali. gruppi PeopleSoft in pagine relative alle "Componenti", e tutte le pagine nel componente vengono salvate nello stesso momento.

interfacce componente sono stati introdotti con PeopleTools 8 come un mezzo per evitare di fare tutto questo. Utilizzando un generatore all'interno della app progettista PeopleSoft, un interfaccia componente viene generato basa sulla componente. Per molti componenti questi possono essere usati per accedere alle pagine come farebbe l'utente, e sono accessibili tramite programmi PeopleCode, e quindi attraverso programmi di App Engine e via Integration Broker. Possono anche essere avvolti in codice Java e accedono direttamente dal codice in grado di eseguire sul server app con un wrapper di servizio Web. Questo metodo è migliore per le transazioni a basso volume:. Estratti pesanti funzionano meglio con SQL nativo

Lo sviluppo on-line e strumenti di tracciamento in PeopleSoft sono abbastanza buone, e la documentazione è eccellente (anche se piuttosto esteso) e disponibile su: http://download.oracle.com/docs/cd/E17566_01/epm91pbr0/eng/psbooks/psft_homepage.htm

Se siete solo in cerca a far emergere i dati di un determinato componente, il modo più semplice sarebbe quella di attivare la traccia di SQL (sotto il menu utilities in PeopleSoft) e portare alcuni record per il componente. Guadare il file di traccia vi darà una buona idea di cosa fare, e gran parte del SQL potrebbe essere tagliato e incollato. Un altro metodo sarebbe quello di trovare un report esistente che è simile a quello che si sta tentando di fare e tagliare lo SQL.

Avere un business analyst PeopleSoft a portata di mano per aiutare a sviluppare i requisiti non sarebbe male neanche.

Immagino che dipende dalla vostra esigenza, e quale versione di PeopleSoft sei su.

Vuoi ricerca in tempo reale? Se questo è il caso, allora ti consigliamo di guardare ai Servizi Web / Integration Broker.

Se si desidera un'esportazione in batch / bulk poi un App Engine programmata farebbe il trucco.

Il modo migliore è quello di utilizzare i servizi Integration Broker (IB) per esporre i dati del database PeopleSoft ad applicazioni esterne. L'applicazione esterna sarà in grado di accedere ai servizi PeopleSoft IB come XML su HTTP, permettendo così di utilizzare qualsiasi parser XML ampiamente utilizzati per questo scopo.

Il problema con le interfacce dei componenti al contrario di Integration Broker è che le interfacce dei componenti tendono ad essere molto più lento di accesso diretto DB dall'interno servizio IB PeopleCode. Anche le future aggiunte al componente collegato all'interfaccia componente a volte tendono a 'rompere' l'interfaccia.

Per maggiori dettagli su PeopleSoft Integration Broker, è possibile accedere alla documentazione in linea all'indirizzo http://docs.oracle.com/cd/E26239_01/pt851h3/eng/psbooks/tibr/book.htm

Andando direttamente al database significa che è necessario ricreare la logica di presentazione ... vedi la mia risposta più sopra. È possibile farlo per le pagine semplici ma per il resto utilizzando un'interfaccia componente è la strada da percorrere.

Si può anche scrivere un processo sqr per l'estrazione dei dati di massa. SQR creerà il file di output, che l'altra applicazione può scegliere. SQR sarebbe più veloce rispetto ai programmi del motore applicazione come si svolge la maggior parte delle operazioni in memoria.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top