Top 50 Oracle Intervjufrågor för blanketter och rapporter (2026)
Förbereder sig för en Oracle Intervju med Forms and Reports? Det är avgörande att behärska både konceptuell och praktisk kunskap. Förståelse. Oracle Intervjufrågor för blanketter och rapporter hjälper till att avslöja analytiskt djup, teknisk noggrannhet och domänspecifik skicklighet.
Möjligheter i Oracle Utvecklingen fortsätter att växa i takt med att organisationer moderniserar äldre system och effektiviserar affärsprocesser. Yrkesverksamma med stark teknisk erfarenhet, domänexpertis och analytiska färdigheter utmärker sig i tekniska, mellannivå- och seniora roller. Den här guiden hjälper nyutexaminerade och erfarna kandidater att med säkerhet besvara vanliga, avancerade och presentationsbaserade frågor och svar.
Baserat på insikter från över 65 tekniska ledare, 40 chefer och 90 yrkesverksamma inom området, återspeglar denna samling verkliga intervjumönster och förväntningar inom olika Oracle projektmiljöer.

★★★★ Oracle Intervjufrågor för blanketter och rapporter
1) Vad är Oracle Blanketter och Oracle Rapporter, och hur kompletterar de varandra?
Oracle Forms är ett verktyg för snabb applikationsutveckling (RAD) som används för att designa och bygga datainmatningsformulär på företagsnivå kopplade till Oracle databaser. Det möjliggör sömlösa CRUD-operationer (skapa, läsa, uppdatera, ta bort) via ett grafiskt gränssnitt.
Oracle Rapporter, å andra sidan, är utformade för att generera formaterade, datadrivna rapporter från samma Oracle databas.
Tillsammans, De bildar en kraftfull klient-server-svit: Formulär hanterar inmatning och transaktioner, medan rapporter hanterar datavisualisering och utmatning.
Exempelvis: Ett detaljhandelssystem kan använda Oracle Blanketter för inmatning av försäljningsdata och Oracle Rapporter för att generera dagliga intäktssammanfattningar.
| Verktyget | Syfte | Utgång Typ |
|---|---|---|
| Oracle Blanketter | Datainmatning och manipulation | Interaktiva formulär |
| Oracle Rapport | Datautvinning och presentation | Statiska/dynamiska rapporter |
👉 Gratis PDF-nedladdning: Oracle Intervjufrågor och svar för blanketter och rapporter
2) Förklara arkitekturen och livscykeln för Oracle Former.
Ocuco-landskapet Oracle Formulärarkitekturen följer en modell i tre nivåer bestå av:
- Klientnivå: Kör Java-baserad Forms-applet eller webbläsargränssnitt.
- Mellannivå: Värder Forms Runtime Engine och Oracle WebLogic-server.
- Databasnivå: Backend Oracle Database hantera applikationsdata.
Livscykelstadier:
- Formulärbegäran initierad av användaren.
- Servern bearbetar begäran och hämtar data.
- Användaren interagerar med data i realtid.
- Med hjälp av en commit eller rollback slutförs transaktionen.
Denna arkitektur säkerställer skalbarhet, modulär distribution och databaskonsekvens i miljöer med flera användare.
3) Vilka olika typer av dukar finns tillgängliga i Oracle Blanketter?
Canvases definierar den visuella layouten inom Oracle Formulär och hjälp att organisera element i användargränssnittet effektivt.
Typer av Canvases:
- Innehåll Canvas: Primärt arbetsområde för formulärobjekt.
- Stacked Canvas: Överlägg ovanpå innehållsdukar, perfekt för dialogrutor eller popup-fönster.
- Flikat Canvas: Används för att organisera objekt i flikar.
- verktygsfält Canvas: Innehåller anpassade knappar eller navigeringselement.
Exempelvis: Ett formulär kan använda en innehållsarbetsyta för huvudskärmen för datainmatning och en staplad arbetsyta för valideringsmeddelanden.
4) Vad är skillnaden mellan utlösare, procedurer och funktioner i Oracle Blanketter?
Dessa element utgör kärnan i Oracle Bildar logik men skiljer sig åt i syfte och omfattning.
| Elementet | BESKRIVNING | Exekveringskontext | Returtyp |
|---|---|---|---|
| Trigger | Körs automatiskt på formulär- eller blockhändelser | Händelsestyrd | Ingen |
| Tillvägagångssätt | Kapslar in återanvändbar logik | Anropades explicit | Ingen |
| Funktion | Utför en uppgift och returnerar ett värde | Anropades explicit | Returnerar ett värde |
Exempelvis: A WHEN-BUTTON-PRESSED trigger kan anropa en procedur för att validera data och en funktion för att beräkna en rabattprocent.
5) Hur skickar man parametrar från Oracle Formulär till Oracle Rapporter?
Att skicka parametrar möjliggör sömlös integration mellan formulärdata och rapportgenerering. Den vanliga metoden innefattar:
- Skapa ett parameterlista med hjälp av
CREATE_PARAMETER_LIST. - Lägga till parametrar med
ADD_PARAMETER. - Köra rapporten via
RUN_PRODUCT(REPORTS, 'report_name', SYNCHRONOUS, RUNTIME, FILESYSTEM, paramlist_id).
Exempelvis: För att generera en fakturarapport skickar formuläret kund-ID och datumintervallparametrar till rapporten, vilket säkerställer dynamiska, användarspecifika resultat.
6) Vilka är fördelarna och nackdelarna med att använda Oracle Blanketter?
| Aspect | Fördelar | Nackdelar |
|---|---|---|
| Utvecklingshastighet | Snabb utveckling med guider och mallar | Begränsad anpassning utan PL/SQL |
| Integration | Tät integration med Oracle Database | Less flexibel med icke-Oracle system |
| Prestanda | Effektiv för stora datatransaktioner | Stor belastning på serverresurser |
| konfiguration | Webbaktiverad via WebLogic | Kräver installation av runtime-miljö |
Slutsats: Oracle Formulär är fortfarande ett pålitligt val för interna företagssystem där Oracle DB är den primära backend-servern.
7) Hur kan du förbättra prestandan hos Oracle Blankettansökningar?
Prestandaoptimering involverar både server- och klientsidesstrategier:
- Minska nätverkstrafiken genom att minimera tur- och returresor.
- Optimera SQL-frågor med index och bindningsvariabler.
- Använd WHEN-VALIDATE-ITEM klokt för att undvika onödiga utlösare.
- Ange körningsegenskaper såsom
QUERY_ONLYför skrivskyddade block. - Aktivera sessionscachning för att minska databasbelastningen.
Exempelvis: Att cacha ofta använda uppslagstabeller som avdelningslistor kan dramatiskt minska körningstiden.
8) Förklara de olika typerna av triggers i Oracle Former.
Oracle Forms erbjuder över 40 triggertyper kategoriserade enligt följande:
| Kategori | Exempel på utlösare | Syfte |
|---|---|---|
| Blocknivå | VID INFÖRING, VID UPPDATERING | Kontrolldatamanipulation |
| Artikelnivå | NÄR-VALIDERING-ARTIKEL, EFTER-TEXT-ARTIKEL | Validera användarinmatning |
| Formnivå | FÖRFORMNING, EFTERFORMNING | Initiera eller stäng formulär |
| Viktiga utlösare | NYCKEL-UTGÅNG, NYCKEL-NÄSTA-PUNKT | Hantera tangentbordsåtgärder |
Varje utlösartyp förbättrar modulariteten genom att reagera på specifika händelser inom formulärets livscykel.
9) Vad är LOV:er och postgrupper i Oracle Blanketter?
A Värdelista (LOV) ger användarna en urvalslista att fylla i formulärfälten i. Det beror på en Record Group, vilket är en datastruktur som lagrar rader som hämtats från SQL-frågor.
Exempelvis: En LOV för medarbetarnamn kan fyllas i från en postgrupp som innehåller medarbetar-ID:n och namn.
| Komponent | Definition | Exempelvis |
|---|---|---|
| Record Group | Datauppsättning i minnet | SELECT emp_id, emp_name FROM employees |
| KÄRLEK | Popup-lista länkad till ett fält | Anställds namn LOV |
10) Vilka är de vanligaste felen i Oracle Blanketter och hur kan de hanteras?
Felhantering säkerställer en smidig användarupplevelse och datakonsekvens.
Vanliga fel inkluderar:
- FRM-40010: Kan inte läsa formulärfilen – kontrollera sökväg eller distribution.
- FRM-40735: Utlösare utlöste ohanterat undantag – validera kodlogik.
- ORA-06550: Kompileringsfel i PL/SQL – kompilera om och felsök.
Bästa metoder:
- Använd
ON-ERRORutlösare för att hantera fel på formulärnivå. - Logga undantag i anpassade tabeller för granskningsändamål.
- Validera inmatning på både objekt- och blocknivå.
11) Hur integrerar man Oracle Formulär med Oracle Rapporter vid körning?
Integration mellan Oracle Formulär och rapporter uppnås genom att dynamiskt anropa en rapport från ett formulär med hjälp av inbyggda procedurer.
Det vanligaste tillvägagångssättet innebär att man använder RUN_REPORT_OBJECT Eller äldre RUN_PRODUCT inbyggt.
Steg:
- Skapa en Rapportobjekt i Formulärbyggaren.
- definiera parametrar för runtime (t.ex. rapportnamn, format, server).
- Använda
SET_REPORT_OBJECT_PROPERTYför att ange destinationstyp (fil, skrivare, cache). - Kör rapporten med hjälp av
RUN_REPORT_OBJECToch samla in rapport-ID:t för statusspårning.
Exempelvis:
v_report_id := RUN_REPORT_OBJECT('report_id');
SET_REPORT_OBJECT_PROPERTY(v_report_id, REPORT_EXECUTION_MODE, SYNCHRONOUS);
Detta möjliggör dynamisk, parametriserad rapportgenerering inifrån Formulärmiljön.
12) Vilka olika sätt att springa finns det Oracle Rapporter?
Oracle Rapporter kan köras i flera lägen baserat på distributionsarkitektur och krav:
| Exekveringsläge | BESKRIVNING | Exempel på användningsfall |
|---|---|---|
| Körningstid (Rapportbyggare) | För testning under utveckling | Utvecklarvalidering |
| Webbaserad (rapportserver) | Via WebLogic-servern | Produktionsinstallation |
| Batch-läge | Schemalagd eller bakgrundskörning | Nattliga finansiella sammanfattningar |
| Kommandorad (rwrun) | Automatiserat via skript | Cron-jobb eller shell-automatisering |
Exempelvis: En löneavdelning kan använda batchläge för att automatiskt generera månatliga lönebesked för alla anställda.
13) Förklara skillnaden mellan en formelkolumn och en sammanfattningskolumn i Oracle Rapporter.
| Typ | Syfte | Beräkningsnivå | Exempelvis |
|---|---|---|---|
| Formelkolumn | Utför anpassade beräkningar med PL/SQL | Per post | SALARY * 0.1 för provision |
| Sammanfattningskolumn | Aggregerar data som SUM, AVG, ANTAL | Per grupp | Total försäljning per region |
Förklaring: Formelkolumner härleder värden med hjälp av anpassad logik, medan sammanfattningskolumner aggregerar resultat, ofta med hänvisning till formelkolumner.
14) Hur kan man dynamiskt styra layouten för en rapport i Oracle Rapporter?
Dynamiska layouter förbättrar flexibiliteten och användarupplevelsen genom att möjliggöra anpassning av innehåll under körning. Detta kan uppnås genom:
- Villkorlig formatering med hjälp av formatutlösare (
RETURN(TRUE/FALSE)). - Parameterbaserad visning (t.ex. visa/dölja sektioner).
- SRW.SET_FIELD_CHAR och SRW.SET_FORMAT_MASK för dynamisk styling.
- Villkorlig gruppundertryckning för att dölja dataavsnitt.
Exempelvis: I en fakturarapport kan valfria rabattdetaljer endast visas om en rabattparameter skickas från formuläret.
15) Vad är datablock i Oracle Blanketter, och vilka typer finns det?
Datablock representerar grunden för alla Oracle Formulär — de definierar hur data hämtas, visas och manipuleras.
| Typ | BESKRIVNING | Exempelvis |
|---|---|---|
| Basbordsblock | Länkad direkt till en databastabell eller vy | ANSTÄLLDA tabell |
| Kontrollblock | Innehåller objekt som inte är databasobjekt (knappar, visningsfält) | Navigering eller instrumentpanelskontroll |
| Transaktionsblock | Utför DML-operationer på flera tabeller | Beställningar + Beställningsdetaljer |
Exempelvis: Ett inköpsorderformulär kan använda ett basblock för ORDERS och en annan för ORDER_ITEMS för att hantera huvud- och detaljdata.
16) Vilka är de största skillnaderna mellan Oracle Blanketterna 6i och 12c?
| Leverans | Oracle Blanketter 6i | Oracle Blanketter 12c |
|---|---|---|
| Architecture | Klient-server | Webbaserad |
| konfiguration | Lokal installation | WebLogic Server |
| UI-anpassning | Begränsad | Förbättrad Java Användargränssnitt och integration |
| Säkerhet | Grundläggande | Stöd för SSL, SSO och LDAP |
| Integration | Endast Forms Runtime | Fusion Middleware-kompatibilitet |
Förklaring: Oracle Forms 12c moderniserar äldre system med webbdistribution och centraliserad hantering samtidigt som bakåtkompatibilitet bibehålls.
17) Hur kan Oracle Kan rapporter integreras med BI Publisher eller moderna analysverktyg?
Integration med BI Publisher möjliggör Oracle Rapporter som ska utökas till moderna rapporterings- och visualiseringsramverk.
Tillvägagångssätt:
- Konvertera Oracle Rapporter till XML formatera och ladda upp till BI Publisher.
- Använda Datamallar för centraliserad datalogik.
- Använda Webbtjänst-API:er för schemaläggning och distribution av rapporter.
- Kombinera rapportutdata med dashboards för affärsanalys.
Exempelvis: Ett logistikföretag kan konvertera sina leveransrapporter till BI Publisher-instrumentpaneler för prestandaövervakning i realtid.
18) Hur implementerar du säkerhet och användarautentisering i Oracle Blankettansökningar?
Säkerhet kan implementeras på flera lager:
- Databasnivå: Använda användarroller och behörigheter.
- Formnivå: Använda inloggningsformulär och begränsad navigering.
- Nätverksnivå: Via SSL- eller VPN-baserade anslutningar.
- Applikationsnivå: Integrerad med Oracle Enkel inloggning (SSO) och LDAP.
Bästa praxis: Validera alltid användare både i formuläret och databasen.
Till exempel begränsa åtkomsten till vissa arbetsytor eller menyalternativ baserat på användarroller.
19) Vad är skillnaden mellan aviseringar och meddelanden i Oracle Blanketter?
| Komponent | Definition | Interaktion | Exempelvis |
|---|---|---|---|
| Varna | Modal dialogruta som kräver användarsvar | Ja (OK, Avbryt, etc.) | "Är du säker på att du vill radera den här posten?" |
| Meddelande | Informationstext som visas i statusfältet | Nej | "Posten har sparats." |
Förklaring: Aviseringar kräver bekräftelse innan de fortsätter, medan meddelanden ger feedback utan avbrott.
20) Hur kan man migrera äldre filer Oracle Formulär- och rapportapplikationer till webb- eller molnmiljöer?
Migrering är en viktig moderniseringsprocess och kan utföras med flera metoder:
- Upgrade Väg: Byta från äldre versioner (6i/9i) till 12c med hjälp av Oracles uppgraderingsverktyg.
- Webbdistribution: Värd på WebLogic Server för webbläsaråtkomst.
- Containerisering: Använd Docker för förenklad molndistribution.
- Integration: Integrera REST API:er och Oracle APEX-komponenter för hybridarkitektur.
Exempelvis: En gammal tillverkningsapplikation byggd på Forms 6i kan uppgraderas till Forms 12c och integreras med RESTful webbtjänster för rapportering via Oracle Analytics moln.
21) Hur kan man felsöka och spåra prestandaproblem i Oracle Blankettansökningar?
Debugging Oracle Formulär använder en kombination av verktyg på applikationsnivå och databasnivå:
- Inbyggd spårning:
Aktivera formulärspårning via miljövariabelnFORMS_TRACE_DIRför att samla in körningsloggar. - Meddelandeutdata:
AnvändaMESSAGEochSYNCHRONIZEkommandon för att spåra variabeltillstånd under körning. - Databasspårning:
Aktivera SQL-spårning (ALTER SESSION SET SQL_TRACE=TRUE) och granska resultaten med hjälp av TKPROF. - Felsökningskonsol:
I WebLogic-distribuerade formulär, användfrmwebloggar för att identifiera minnesläckor eller händelsefördröjningar.
Exempelvis: Om ett formulär är långsamt efter att man tryckt på en knapp kan spårningsloggar avslöja en oindexerad fråga som orsakar flaskhalsen.
22) Vad är skillnaden mellan WHEN-VALIDATE-ITEM och POST-TEXT-ITEM-utlösare?
| Trigger | Utförandetid | Syfte | Vanlig användning |
|---|---|---|---|
| NÄR-VALIDERING-ARTIKEL | Utlöses när ett objekt valideras | Används för att tillämpa affärsregler eller valideringslogik | Kontrollera datum- eller värdeintervall |
| EFTERTEXT-ARTIKEL | Utlöses efter att användaren avslutat ett objekt | Används för uppdateringar av beroende fält | Automatisk beräkning av härledda fält |
Exempelvis: I ett fakturablankett, WHEN-VALIDATE-ITEM validerar den angivna kvantiteten, medan POST-TEXT-ITEM beräknar om det totala beloppet.
23) Hur kan man hantera LOV:er (List of Values) dynamiskt vid körning?
Dynamiska LOV:er förbättrar flexibiliteten genom att hämta kontextspecifik data.
Implementeringssteg:
- Skapa en Record Group dynamiskt med hjälp av
CREATE_GROUP_FROM_QUERY. - Fyll den med SQL-resultat baserat på användarinmatning.
- Koppla postgruppen till en LOV med hjälp av
SET_LOV_PROPERTY. - Visa med hjälp av
SHOW_LOV.
Exempelvis: Om användaren väljer en avdelning kan värdelistan för anställda uppdateras dynamiskt för att endast visa anställda från den avdelningen.
24) Vilka olika typer av triggers finns det i Oracle Rapporter?
Utlösare i Oracle Rapporter styr körtidslogik som liknar den i Formulär.
| Triggertyp | Utförandefas | Exempelvis |
|---|---|---|
| Före-parameterformulär | Före parameterinmatning | Validera parametrar |
| Efter parameterformulär | Efter inlämning av inmatning | Ändra parametrar |
| Före rapport | Innan rapportgenerering | Öppna markörer, initiera variabler |
| Mellan sidor | Under paginering | Kontrolllayout eller totaler |
| Efter rapport | Eftergenerering | Stäng markörer, rensning |
Exempelvis: A Before Report utlösaren kan öppna en markör för att hämta sammanfattningsdata innan huvudrapporten körs.
25) Hur hanterar du relationer mellan huvud- och detaljnivåer i Oracle Blanketter?
A huvud-detalj-relation länkar två block så att ändringar i huvudblocket automatiskt påverkar detaljblocket.
Genomförande:
- Skapa två datablock (Master och Detalj).
- Definiera a relation genom ett kopplingsvillkor (
WHERE detail.deptno = master.deptno). - uppsättning koordinationsegenskaper såsom
DELETE_RECORDS, ISOLATE, and QUERY_MASTER_DETAILS.
Exempelvis: I ett försäljningssystem visas alla relaterade ordrar (detaljer) när en kund (master) väljs.
26) Hur kan PL/SQL-bibliotek användas i Oracle Blanketter och rapporter?
PL/SQL-bibliotek (.pll filer) centralisera återanvändbar logik över flera formulär och rapporter.
fördelar:
- Promoåteranvändning och konsekvens av tes-kod.
- Förenklar underhållet (en ändring uppdaterar alla formulär).
- Minskar kompileringskostnader.
Exempelvis: A validation.pll Filen kan innehålla generiska datakontroller som används över anställdas, avdelningens och löneformulär.
Steg:
- Skapa
.plli Objektnavigatorn. - Anslut biblioteket via Anslutna bibliotek fast egendom.
- Referensbiblioteksprocedurer med syntaxen:
library_name.procedure_name(parameter);
27) Vilka är de bästa metoderna för undantagshantering i Oracle Rapporter?
Undantagshantering säkerställer att rapporten fortsätter utan problem även vid körtidsfel.
Tekniker:
- Använda SRW.MEDDELANDE för användarvänliga felmeddelanden.
- Ansök
ON-ERRORutlösare för att fånga undantag globalt. - Använda villkorliga returvärden i triggers (
RETURN TRUE/FALSE). - Logga fel i granskningstabeller för felsökning.
Exempelvis: Om en datakälla saknas, SRW.MESSAGE(1001, 'No Data Found for Parameters Entered'); kan meddela användaren istället för att avslutas abrupt.
28) Vilka är de viktigaste stegen för att driftsätta Oracle Formulär och rapporter på WebLogic Server?
Implementering innebär att konfigurera Oracle Fusion Middleware-komponenter systematiskt:
- Installera WebLogic-servern och Oracle Formulär- och rapporttjänster.
- Skapa en domän med hjälp av konfigurationsguiden.
- Distribuera formulärmoduler (
.fmx) och rapporter (.rdf) i programkataloger. - Konfigurera körtidsparametrar in
formsweb.cfg. - Åtkomst via URL:
http://<hostname>:<port>/forms/frmservlet.
Exempelvis: Efter distributionen kan användare komma åt formulär på distans via webbläsare utan klientinstallation.
29) Vilka är de största skillnaderna mellan Oracle Formulärutlösare och databasutlösare?
| Leverans | Oracle Formulärutlösare | Databasutlösare |
|---|---|---|
| Plats | Klientsidan / Applikationen | Serversidan / Databas |
| Händelseomfattning | Användargränssnitt och formulärhändelser | DML-händelser på tabeller |
| Syfte | Validering, UI-kontroll | Dataintegritet, granskning |
| Exempelvis | NÄR-VALIDERING-ARTIKEL | INNAN INSÄTTNING PÅ ANSTÄLLDA |
Förklaring: Formulärutlösare hanterar användarinteraktion, medan databasutlösare upprätthåller konsistens i backend-data. Båda kompletterar varandra i en fullstack. Oracle ansökan.
30) Hur kan man använda inbyggda Oracle Rapportfunktioner för avancerad formatering?
Oracle Rapporterna ger flera inbyggda SRW-funktioner för dynamisk kontroll över rapportpresentation:
| Funktion | BESKRIVNING | Exempelvis |
|---|---|---|
| SRW.SET_FIELD_CHAR | Ändra fältegenskaper dynamiskt | Justera teckensnitt eller färg |
| SRW.SET_FORMAT_MASK | Ändra numeriska eller datumformat | Ändra datum till DD-MON-YYYY |
| SRW.SET_PAGE_NUMMER | Kontroll paginering | Anpassad rapportnumrering |
| SRW-REFERENS | Referera till andra rapportkolumner | Beräkna härledda värden |
Exempelvis: I en lönerapport, SRW.SET_FIELD_CHAR('sal_field', 'BACKGROUND_COLOR', 'RED') kan lyfta fram löner över ett visst tröskelvärde.
31) Hur kan man automatisera schemaläggning och distribution av Oracle Rapporter?
Automatisering hjälper till att effektivisera rapportgenerering för återkommande affärsbehov. Oracle Rapporter integreras med Oracle Scheduler eller externa cron-jobb för detta ändamål.
Tillvägagångssätt:
- Batchlägekörning: Körning
rwrunorrwclientkommandon med parametrar för automatisk utmatning. - Rapportserverjobbkö: Schemalägg och hantera rapportjobb direkt.
- Integration med BI Publisher: Automatisera schemaläggning och e-postleverans.
- Kommandoradsskript: Använda
.bateller shell-skript med parametrar för daglig exekvering.
Exempel kommando:
rwrun report=myreport.rdf userid=user/pass@db destype=file desname=/tmp/output.pdf batch=yes
Detta genererar en PDF-rapport dagligen utan manuell åtgärd.
32) Förklara livscykeln för en rapportförfrågan i Oracle Rapportserver.
Rapportens livscykel består av följande steg:
- Inlämning av begäran: Användaren eller formuläret initierar ett rapportanrop.
- Jobbköpost: Rapportservern tilldelar ett jobb-ID.
- Genomförande Rapportmotorn bearbetar frågan och formateringen.
- Cachning: Utdata cachas för återanvändning.
- Leverans: Resultatet skickas till en fil, skrivare eller webbläsare.
- Skogsavverkning: Slutförandestatus loggas i rapportserverkön.
Exempelvis: Om flera användare kör samma rapport återanvänds cachade resultat för att minska bearbetningstiden.
33) Hur kan Oracle Ska formulär integreras med REST API:er eller webbtjänster?
Modern Konst Oracle Forms (11g/12c) stöder RESTful- och SOAP-integrationer via PL/SQL och Java komponenter.
Metoder:
- UTL_HTTP-paket: Gör REST-anrop direkt från PL/SQL-block.
- Java Lagrade procedurer: Används för komplexa API-interaktioner.
- Oracle REST-datatjänster (ORDS): Fungerar som en brygga för databas-API:er.
- Anpassade formulär Java Böna: För avancerad integration av webbtjänster.
Exempelvis: Ett formulär kan anropa ett REST API för att hämta valutaomräkningskurser i realtid innan data infogas i en tabell över finansiella transaktioner.
34) Vilka är vanliga orsaker till prestandaflaskhalsar i Oracle Rapporter, och hur kan de åtgärdas?
| Orsak | BESKRIVNING | Upplösning |
|---|---|---|
| Ooptimerade frågor | Ineffektiv SQL med fullständiga tabellskanningar | Använd index, bind variabler |
| Stor datavolym | Tung aggregering och sortering | Använd datafilter eller bryt grupper |
| Formateringsoverhead | Komplexa layouter och triggers | Förenkla layouten eller inaktivera oanvända utlösare |
| Samtidiga jobb | Överbelastad rapportserver | Fördela lasten med hjälp av flera motorer |
Exempelvis: Om en rapport med miljontals rader tar för lång tid kan partitionering av källtabellen eller föraggregering av data i en materialiserad vy förbättra prestandan drastiskt.
35) Hur kan du migrera Oracle Formulär till Oracle APEX samtidigt som affärslogiken bibehålls?
Oracle APEX tillhandahåller en lågkodsbaserad lösning för att modernisera äldre Forms-applikationer.
Migrationsstrategi:
- Inventera befintliga formulär: Identifiera moduler, triggers och bibliotek.
- Extrahera affärslogik: Flytta PL/SQL-logik till APEX-serverkod.
- Element i kartgränssnittet: Ersätt Forms-arbetsytor med APEX-sidor och -regioner.
- Integrera rapporter: Konvertera
.rdfrapporter till APEX Interactive Reports eller BI Publisher-mallar.
Exempelvis: Ett kundhanteringsformulär kan implementeras på nytt i APEX med hjälp av interaktiva rutnät, samtidigt som samma valideringslogik från de ursprungliga PL/SQL-triggarna bibehålls.
36) Vilka är de viktigaste skillnaderna mellan Oracle Rapporter och BI-utgivare?
| Leverans | Oracle Rapport | BI Publisher |
|---|---|---|
| Teknikbas | PL/SQL- och RDF-motor | XML- och datamallar |
| Integration | Formcentrerad | ERP, APEX, molnklar |
| Anpassning | Kräver rapportbyggaren | Använder Word/Excel-mallar |
| Utdataformat | PDF, HTML, RTF | PDF, Excel, PowerPoint, HTML |
| Framtida stöd | Legacy (Solnedgång i framtida utgåvor) | Strategisk Oracle produkt |
Sammanfattning: BI Publisher erbjuder en mer flexibel, molnkompatibel plattform för företag som flyttar bortom Oracle Rapporter.
37) Hur hanterar man globala variabler och parametrar i flera formulär?
Globala variabler underlättar kommunikation mellan former och tillståndsbeständighet.
Metoder:
- Använda
GLOBAL.variable_nameför att lagra data som är åtkomliga från olika formulär. - Skicka parametrar via
CALL_FORM, NEW_FORM, or OPEN_FORM. - Använda parameterlistor för kontrollerat datautbyte mellan moduler.
- Initiera och rensa globala variabler i
PRE-FORMochPOST-FORMutlösare.
Exempelvis: En global variabel GLOBAL.USER_ROLE kan avgöra vilka arbetsytor eller menyalternativ som är tillgängliga för användaren efter inloggning.
38) Hur kan Oracle Ska formulär och rapporter vara versionskontrollerade och distribuerade effektivt?
Versionskontroll säkerställer konsekvens och möjlighet till återställning under företagsutveckling.
Bästa metoder:
- Lagra källfiler: Ha kvar
.fmb,.pll,.mmb,.rdfi Git- eller SVN-repositorier. - Automatisera kompilering: Använd skript för att generera
.fmxoch.repfiler. - Taggsläpp: Använd versionstaggar för större distributioner.
- Integrera CI/CD: Använd Jenkins eller Bamboo för att automatisera byggen och distributioner.
Exempelvis: Varje commit utlöser en pipeline som kompilerar uppdaterade formulär och laddar upp dem till WebLogic-applikationskatalogen.
39) Vilka är de största skillnaderna mellan ON-ERROR- och ON-MESSAGE-utlösare i Oracle Blanketter?
| Trigger | Syfte | Typisk användning |
|---|---|---|
| PÅ-FEL | Hanterar körtids- och valideringsfel | Anpassade felmeddelanden, loggning |
| PÅ MEDDELANDE | Hanterar standardsystemmeddelanden | Undertryck eller ändra meddelanden |
Exempelvis: ON-ERROR kan användas för att ersätta FRM-40102 fel med användarvänliga meddelanden som ”Ogiltigt anställnings-ID angett”.
40) Vilka är de bästa metoderna för att underhålla Oracle Formulär och rapporter i företagsproduktionsmiljöer?
- Modulär design: Separera logik i återanvändbara bibliotek (
.pll), menyer (.mmb), och former (.fmb). - Versionskontroll: Upprätthåll konsekvent versionshantering och taggning.
- Prestandaövervakning: Använd rapportserverloggar och AWR-rapporter för databasjustering.
- Säkerhetskopiering och katastrofåterställning: Schemalägga nattliga säkerhetskopior för formulärmoduler och rapportcache.
- Säkerhet: Aktivera SSL, tillämpa rollbaserad åtkomst och rotera regelbundet autentiseringsuppgifter.
- Dokumentation: Underhåll ändringsloggar, schemadokumentation och driftsättnings-SOP:er.
Exempelvis: Ett banksystem som använder Oracle Formulär/rapporter följer en kvartalsvis uppdateringscykel där de uppdateras .fmx och .rep Filer testas i UAT före produktionsdistribution.
Frågor 41–50: Verkliga företagsscenarier, molnmigrering, felsökning och hybrid Oracle Architectures
Denna sista uppsättning är utformad för att demonstrera arkitektoniskt tänkande, problemlösningsförmågaoch verklig driftsättningserfarenhet — perfekt för roller som senior utvecklare, konsult eller lösningsarkitekt.
41) Vilka steg krävs för att felsöka felet ”FRM-92101: Det uppstod ett fel i formulärservern”?
Detta är ett vanligt körtidsfel i webbdistribuerade system Oracle Bildar miljöer, vilket ofta indikerar ett kommunikations- eller konfigurationsproblem.
Felsökningssteg:
- Kontrollera nätverksanslutning mellan klienten och WebLogic-servern.
- Review
frmwebochformsweb.cfgLoggar för saknade JAR-filer eller felaktiga konfigurationer. - Verifiera JInitiator eller Java Insticksmodulen versionerna är kompatibla.
- Starta om WLS_FORMS-tjänsten för att rensa cachade sessioner.
- Kontrollera miljövariabler: Se till
FORMS_PATHinkluderar alla refererade.fmxoch.pllfiler.
Exempelvis: En saknad f90all.jar filen i katalogen för formulärdistribution kan utlösa det här felet.
42) Hur kan Oracle Ska formulär integreras med enkel inloggning (SSO) och LDAP för autentisering?
Integrering med företagsidentitetshantering förbättrar säkerheten och användarkontrollen.
Implementeringsmetod:
- Inställd Oracle Internetkatalog (OID) för LDAP-autentisering.
- Aktivera SSO i WebLogic-konsolen och mappa den till OID-användare.
- Uppdatera formsweb.cfg för att använda SSO-autentiseringsläge.
- Skicka in SSO-användarnamnet till Forms-körmiljön för personlig åtkomst.
Exempelvis: Ett multinationellt företag kan hantera all applikationsåtkomst via en centraliserad LDAP-katalog, vilket säkerställer efterlevnad och revisionskontroll.
43) Vilka är vanliga fallgropar vid migrering Oracle Formulär och rapporter till nyare versioner (t.ex. 6i → 12c)?
| Fallgrop | BESKRIVNING | Mitigation |
|---|---|---|
| Föråldrade inbyggda funktioner | Vissa triggers och funktioner är föråldrade | Ersätt med inbyggda funktioner som stöds |
| Hårdkodade sökvägar | Äldre filsökvägar är inte längre giltiga | Använd miljövariabler |
| Webbläsare/Java Inkompatibilitet | Applets stöds inte längre | Växla till Java Web Start eller fristående Forms Launcher |
| PL/SQL-kompileringsfel | Ändringar i syntax eller biblioteksversioner | Kompilera om och validera alla .pll filer |
Exempelvis: Migrering från blanketter 6i till 12c kräver att RUN_PRODUCT samtal med RUN_REPORT_OBJECT för att upprätthålla kompatibilitet.
44) Hur kan Oracle Formulär kommunicerar med externa system som t.ex. SAP eller Salesforce?
Integration kan uppnås med hjälp av webbservice or middleware lösningar.
Tillvägagångssätt:
- REST/SOAP-anrop: Använda
UTL_HTTPor Java bönor för att anropa API:er. - Databaslänkar: För Oracle-Till-Oracle datadelning.
- Oracle Integrationsmoln (OIC): Fungerar som mellanprogram mellan Forms och tredjepartssystem.
- Filbaserat utbyte: Använder CSV/XML-uppladdningar som bearbetas av bakgrundsjobb.
Exempelvis: Ett tillverkningsföretag kan använda ett REST API för att skicka godkända beställningar från Oracle Formulär till Salesforce CRM i realtid.
45) Vad är skillnaden mellan rapporter som utlöses "Före rapport" och "Efter rapport"?
| Trigger | Utförandetid | Syfte | Allmänt bruk |
|---|---|---|---|
| Före rapport | Bränder innan rapportgenerering | Initiera variabler, öppna markörer | Installationsmiljö |
| Efter rapport | Bränder efter rapportgenerering | Stäng markörer, rensa tillfällig data | Resurshantering |
Exempelvis: A Before Report triggern kan beräkna totaler, medan en After Report triggern tar bort tillfälliga tabeller som används under rapportbearbetning.
46) Hur optimerar du Oracle Rapporter som hanterar massiva datamängder?
Prestandaoptimering för stora rapporter kräver både SQL-inställning och rapportdesign förbättringar.
Bästa metoder:
- Använda referensmarkörer or materialiserade vyer för föraggregerad data.
- Implementera data paginering och frågefilter för att minimera minnesanvändningen.
- Undvik kapslade formatutlösare; använd villkorliga grupper istället.
- Schemalägg rapporter under lågtrafik.
Exempelvis: En rapport med 2 miljoner rader kan optimeras genom att ersätta dess basfråga med en förberäknad sammanfattningsvy som uppdateras varje natt.
47) Hur kan Oracle Formulär utökas med Java integration?
Java Integrationen gör det möjligt för Forms att utnyttja moderna funktioner som inte finns tillgängliga i PL/SQL.
Använd fall:
- Custom Java bönor: Lägg till UI-komponenter som diagram, kalendrar eller signaturblock.
- Java Lagrade procedurer: Utför avancerade fil-I/O- eller HTTP-operationer.
- JAR-integration: Bädda in tredjepartsbibliotek för kryptering eller PDF-generering.
Exempelvis: En anpassad Java Bean kan skapas för att samla in användarsignaturer direkt i en Oracle Formulera och lagra dem som BLOB:er i databasen.
48) Vilka är för- och nackdelarna med att migrera från Oracle Rapporter till BI-utgivare eller Oracle Analysmoln?
| Faktor | BI Publisher | Oracle Analytics moln |
|---|---|---|
| Fördelar | Mallbaserad design, molnklar, stöd för flera utdata | Avancerad analys, dashboards, maskininlärning |
| Nackdelar | Kräver omformatering av RDF-logik | Behöver fullständig omdesign av datamodellen |
| Idealisk användning | Operationell och finansiell rapportering | Interaktiv affärsanalys |
Sammanfattning: Migrering beror på affärsmål — BI Publisher för statiska rapporter, Oracle Analys för dynamiska, insiktsdrivna visualiseringar.
49) Hur kan du garantera säkerheten i Oracle Blanketter vid hantering av känsliga uppgifter som löner eller patientjournaler?
Säkerhet upprätthålls överallt tre lager:
- Databaslager: Använd detaljerad åtkomstkontroll (
DBMS_RLS) och kryptering. - Formulärlager: Dölj eller inaktivera känsliga fält med hjälp av körtidsvillkor.
- Nätverkslager: Tillämpa SSL och HTTPS för alla anslutningar.
Exempelvis: Ett löneformulär kan dynamiskt dölja fältet "Lön" för icke-administratörer med hjälp av:
SET_ITEM_PROPERTY('EMP.SALARY', VISIBLE, PROPERTY_FALSE);
50) Vilka moderniseringsvägar finns tillgängliga för äldre system Oracle Formulär och rapporter-applikationer?
| Bana | BESKRIVNING | Användningsfall |
|---|---|---|
| Upgrade till blanketterna 12c | Bibehåll kompatibilitet, lägg till webbfunktioner | Företag med stabil logik |
| Migrera till APEX | Lågkodsalternativ med samma PL/SQL-bas | För interna webbappar |
| Integrera BI-utgivare | Ersätt RDF-rapporter med XML-mallar | Rapportering av modernisering |
| Använd REST API:er | Skapa en hybridarkitektur för mikrotjänster | För plattformsoberoende applikationer |
| Anta Oracle Visuell byggare eller OIC | Molnbaserad modernisering | För SaaS-integrationer |
Exempelvis: Ett försäkringsbolag moderniserade sin äldre Forms-app genom att konvertera den till APEX med REST-baserad integration för försäkringshantering, vilket uppnådde lägre underhåll och förbättrad tillgänglighet.
🔍 Topp Oracle Intervjufrågor för formulär och rapporter med verkliga scenarier och strategiska svar
1) Vad är Oracle Formulär och hur används det i företagsapplikationer?
Förväntat från kandidaten: Intervjuaren vill bedöma din förståelse av Oracle Formulär som ett utvecklings- och distributionsverktyg.
Exempel på svar: Oracle Forms är ett verktyg som används för att skapa datainmatningssystem som interagerar med Oracle databaser. Det tillhandahåller en snabb applikationsutvecklingsmiljö för att bygga formulärbaserade användargränssnitt. Det låter användare infoga, uppdatera, ta bort och fråga efter data i realtid. I min tidigare roll använde jag Oracle Formulär för att utforma transaktionssystem som förbättrade datanoggrannheten och minskade tiden för manuell inmatning mellan avdelningar.
2) Hur gör Oracle Rapporter kompletterar Oracle Blanketter?
Förväntat från kandidaten: Intervjuaren förväntar sig att du förklarar hur båda verktygen integreras och deras kombinerade affärsanvändning.
Exempel på svar: Oracle Rapporter används för att generera strukturerade, datadrivna rapporter från Oracle databaser. Medan Oracle Formulär hanterar datainmatning och manipulation, Oracle Rapporter fokuserar på att presentera data på ett formaterat och utskrivbart sätt. Tillsammans möjliggör de en komplett applikationsutvecklingscykel – datainmatning via formulär och utmatning via rapporter för analys och beslutsfattande.
3) Kan du förklara arkitekturen för Oracle Blanketter?
Förväntat från kandidaten: Intervjuaren testar dina kunskaper om hur Oracle Formulär fungerar på systemnivå.
Exempel på svar: Ocuco-landskapet Oracle Formulärarkitekturen består av en Formulärklient (applet eller Java Web Start), Forms Listener Servlet, Forms Runtime Engine och Oracle DatabaseForms Runtime Engine kommunicerar med databasen för att bearbeta data och returnerar sedan utdata till klientgränssnittet via Forms Listener Servlet. Denna skiktade metod säkerställer skalbarhet och effektiv kommunikation mellan klient och server.
4) Beskriv en utmanande Oracle Formulärmigreringsprojekt som du hanterade.
Förväntat från kandidaten: Intervjuaren vill förstå dina erfarenheter av att uppgradera eller modernisera system.
Exempel på svar: I min tidigare tjänst arbetade jag med migrering Oracle Forms 6i-applikationer till Forms 12c. Den största utmaningen var att hantera föråldrade inbyggda funktioner och säkerställa webbläsarkompatibilitet. Jag använde Oracle Forms Migration Assistant för initial konvertering och manuell uppdatering av PL/SQL-koden för att anpassa den till den nya webbaserade miljön. Rigorösa tester säkerställde att applikationen bibehöll funktionell paritet och prestandaförbättringar.
5) Hur hanterar du prestandaoptimering i Oracle Rapporter?
Förväntat från kandidaten: Intervjuaren förväntar sig kunskap om finjustering och prestationsstrategier.
Exempel på svar: Att optimera Oracle I rapporter fokuserar jag på effektiva SQL-frågor, klok användning av datamodellgrupper och minimering av användningen av upprepade ramar. Jag minskar även onödig datahämtning genom att använda filter på frågenivå. I ett tidigare jobb uppnådde jag en förbättring av rapportgenereringstiden med 40 % genom att optimera joins och introducera rapportcachning.
6) Hur skulle du felsöka ett runtime-fel i Oracle Blanketter?
Förväntat från kandidaten: Intervjuaren vill testa dina felsöknings- och diagnostikfärdigheter.
Exempel på svar: Jag börjar med att aktivera Forms-spårningen och kontrollera felstacken i loggfilen. Sedan analyserar jag meddelandekoderna och granskar de PL/SQL-triggers eller datablock som är involverade. Jag använder även de inbyggda MESSAGE- och SYNCHRONIZE-funktionerna för att isolera tidsrelaterade problem. I min senaste roll löste jag ett intermittent körtidsfel som orsakades av felaktig användning av WHEN-VALIDATE-ITEM-triggers som konflikterade med logiken efter frågesökningen.
7) Hur hanterar du användarautentisering och säkerhet i Oracle Blankettansökningar?
Förväntat från kandidaten: Intervjuaren vill se din förståelse för datasäkerhet och användarhantering.
Exempel på svar: Säkerhet kan implementeras genom Oracle databasroller och behörigheter, samt kontroller på applikationsnivå. Jag konfigurerar användarautentisering via databasscheman eller integrerar med enkel inloggning (SSO) med hjälp av Oracle WebLogic. Jag begränsar även åtkomst på formulärnivå baserat på användarroller för att säkerställa att känsliga data skyddas.
8) Beskriv en situation där du var tvungen att anpassa en standard Oracle Rapport för kundens krav.
Förväntat från kandidaten: Intervjuaren utvärderar din anpassningsförmåga och förmåga att hantera klienter.
Exempel på svar: I ett projekt begärde en kund dynamiska grupperings- och sorteringsfunktioner för en finansiell sammanfattningsrapport. Jag modifierade datamodellen för att inkludera användarvalda parametrar och uppdaterade layouten med villkorlig formatering. Denna anpassning möjliggjorde flexibilitet i realtid och förbättrade kundnöjdheten utan att ändra databasschemat.
9) Vilka är fördelarna med att använda Oracle Blanketter 12c jämfört med tidigare versioner?
Förväntat från kandidaten: Intervjuaren vill se om du håller dig uppdaterad med aktuell teknik.
Exempel på svar: Oracle Formulär 12c stöder modern webbdistribution, förbättrad integration med Oracle Fusion Middleware, förbättrad skalbarhet och bättre säkerhetsfunktioner. Den erbjuder även REST-tjänstintegration och kompatibilitet med nyare webbläsare. Dessa uppdateringar förenklar underhållet och förlänger livslängden för äldre applikationer.
10) Hur säkerställer ni dataintegritet när flera användare använder samma formulär samtidigt?
Förväntat från kandidaten: Intervjuaren vill bedöma din förståelse av samtidighetskontroll och transaktionshantering.
Exempel på svar: Oracle Formulär hanterar samtidighet genom låsning på databasnivå. Jag säkerställer att varje formulär använder korrekta commit- och rollback-mekanismer för att undvika datakonflikter. Jag utformar också noggrant utlösare för att hantera ändringar på sessionsnivå utan att påverka andra användare. Dessutom implementeras optimistiska låsningsstrategier när flera användare arbetar med delade datamängder.
