sql >> Databasteknik >  >> RDS >> Oracle

Bilagor i Oracle Applications R12

Vad är bilagor i Oracle Applications

  • Funktionen för bifogade filer gör det möjligt för användare att länka ostrukturerad data, som bilder, ordbehandlingsdokument, kalkylblad eller text till sina programdata. Användare kan till exempel länka bilder till objekt eller video till operationer som operationsinstruktioner.
  • Information om bilagor kan flöda genom hela din ansökan. Till exempel, om du aktiverar bilagor för ett artikelnummer, där användare skulle bifoga bilder av delen, kan du sedan aktivera bilagor för alla dina andra formulär som hänvisar till ditt artikelnummer. Användare skulle då kunna se bilden av delen varhelst det artikelnumret förekommer.
  • Du kan tillhandahålla säkerhet för att begränsa vilka bilagor användare kan se från särskilda formulär genom att tilldela dokumentkategorier till dina formulärfunktioner. Användare tilldelar sedan enskilda bilagor till särskilda kategorier.
  • Du kan lägga till funktionen för bilagor till dina ansökningsformulär och funktioner utan att ändra formulärkoden, så länge dina formulär är byggda med standarder för Oracle E-Business Suite (som börjar med formuläret MALL för Oracle E-Business Suite).

Tabellinformation för bilagor

Alla tabeller som innehåller bilagerelaterade data ägs av FND-schemat.

Det finns ett antal tabeller som innehåller information som avgör vilken del av
applikationen som kan använda bilagor:

FND_LOBS

Bilagor lagras i FND_LOBS-tabellen, denna tabell har en BLOB-kolumn FILE_DATA
där bilagan lagras.

Hur det lagras:

Oracle Applications använder ingen komprimeringsteknik och en fil på 50K
upptar 50K i databasen. Storleken på filen i databasen kan erhållas
med DBMS_LOB-paketet, följande exempel visar detaljerna för en 5K-fil som
bifogades till en rekvisition:

välj FILE_NAME, FILE_CONTENT_TYPE,
DBMS_LOB.GETLENGTH(file_data) SIZE_BYTES
från FND_LOBS
där FILE_NAME som '%test.doc%'
FILE_NAME FILE_CONTENT_BYTES
FILE_CONTENT_BYTES ----------------------- ------------------ ---------- -
test.doc application/msword 5120


FND_DOCUMENTS

  • Detta innehåller språkoberoende information om dokumentet inklusive CATEGORY_ID och DATATYPE_ID. Den innehåller inte själva dokumentet.
  • DATATYPE_ID är hämtat från FND_DOCUMENT_DATATYPES. Den här tabellen innehåller en rad för varje datatyp som stöds, t.ex. kort text, fil, etc.
  • CATEGORY_ID är hämtat från FND_DOCUMENT_CATEGORIES. Den här tabellen innehåller en rad för varje giltig bilagakategori i en applikation. t.ex. Kommentarer och CV är alla giltiga för APPLICATION_ID =800 och Övrigt är giltiga för alla applikationer (APPLICATION_ID =0). Eftersom varje specifik entitet är seedad med giltiga kategorier, finns det en annan tabell, FND_DOC_CATEGORY_USAGES, som innehåller en rad för varje CATEGORY_ID som är giltig för ett ATTACHMENT_FUNCTION_ID. Den bestämmer vilka kategorier som kan användas för bilagor på ett visst formulär.


FND_DOCUMENTS_TL

Översättningstabellen FND_DOCUMENTS_TL lagrar information om dokumenten i FND_DOCUMENTS och länkar till denna tabell via kolumnen DOCUMENT_ID. Rader i
FND_DOCUMENTS_TL innehåller en beskrivning av dokumentet.


FND_ATTACHMENT_FUNCTIONS

Den här tabellen innehåller information om de formulär för vilka bilagafunktionen kan aktiveras

Till exempel innehåller FND_ATTACHMENT_FUNCTIONS en rad för FUNCTION_NAME =
'PERWSHRG', dvs det kombinerade person- och uppdragsformuläret.
FND_ATTACHMENT_BLOCKS länkar till FND_ATTACHMENT_FUNCTIONS via kolumnen
ATTACHMENT_FUNCTION_ID för ' BPERSON_NAME' och innehåller en rad .
FND_ATTACHMENT_BLK_ENTITIES innehåller en rad för 'PERSON'-blocket med
DATA_OBJECT_CODE ='PER_PEOPLE_F' och PK1_FIELD ='PERSON.PERSON_ID' och
definierar om en bilaga till detta block kan frågas in, insatt , uppdaterad
och raderad.


FND_ATTACHMENT_BLOCK

Det här innehåller information om blocken i de formulär som bilagafunktionen kan aktiveras för;

FND_ATTACHMENT_BLK_ENTITIES

Detta innehåller information om de bilagor som kan användas i ett visst formulärblock.

FND_ATTACHED_DOCUMENTS

FND_ATTACHED_DOCUMENTS lagrar information som relaterar ett dokument till en enhet och
innehåller i det här exemplet ENTITY_NAME ='PER_PEOPLE_F' och PK1_VALUE =44.
PK1_VALUE är värdet för FND_ATTACHMENT_BLK_ENTITIES.PK1_FIELD (dvs.
' PERSON_ID') och så denna bilaga är för personen med
PER_PEOPLE_F.PERSON_ID =44. DOCUMENT_ID för det lagrade dokumentet finns också
på det här bordet.


FND_ATTACHED_DOCS_FORM_VL
FND_DM_FOLDERATTACHMENTEXT

Frågor relaterade till bilagor

Fråga för att hitta dokumentdatatyper

SQL> välj USER_NAME från fnd_document_datatypes;USER_NAME---------Short TextLong TextImageOLE ObjectWeb PageFileDocument ReferenceOracle FileOracle Files Mapp/Arbetsyta

Fråga för att hitta filbilaga

välj fad.entity_name,fad.document_id,fad.pk1_value,fad.pk2_value,fd.datatype_id,(fad.entity_name || '' || fad.document_id ||' ' || fl.file_name) file_name, fl.file_datafrom fnd_attached_documents fad,fnd_documents fd,fnd_lobs flwhere fad.document_id =fd.document_idand fd.media_id =fl.file_idand fad.entity_name ='&1'och fad.pk1_value, 

Anta att vi vill ha en Iexpense Line-bilaga

välj report_line_idfrom apps.ap_expense_report_lines_all lwhere report_header_id=:P_expense_report_number; -- utgiftsrapportnummer VÄLJ fl.*FRÅN apps.fnd_documents_tl fdtl,apps.fnd_documents fd,apps.fnd_attached_documents fad,apps.fnd_lobs flWHERE fdtl.document_id =fd.document_idAND fd.document_id =fad.document_idAND_NAME_NAME_AND_ATTIES_AND_FAD.ENtityS fad.pk1_value =':p_report_line_id' -- line_id från första queryAND fl.file_id =fd.media_idand fdtl.language='US';

Hur bestämmer man storleken på en fil i tabell FND_LOBS?

välj filnamn, fil_id, 
       to_char(upload_date,'dd-mon-rr hh24:mi:ss'),
       to_char(expiration_date ,'dd-mon-rr hh24:mi:ss' ),
       file_content_type, 
       dbms_lob.getlength(file_data) size_byte
från   applsys.fnd_lobs
där  file_id=;

Hur ser man innehållet i LOB?

-- Läs från fnd_lobs en given file_idset-serverutgång på storlek 1000000;declare  my_lob BLOB; Buffert      RAW(255); Belopp      BINARY_INTEGER :=255; Position    INTEGER :=1;börja   välj fil_data till min_lob   från fnd_lobs   där fil_id =&enter_fil_id; dbms_lob.open(min_lob, dbms_lob.lob_readonly); DBMS_OUTPUT.PUT_LINE('Start av data'); loop      DBMS_LOB.READ(min_lob, Belopp, Position, Buffert); /* Bearbeta bufferten:*/      DBMS_OUTPUT.PUT_LINE(utl_raw.cast_to_varchar2(Buffer)); Position :=Position + Belopp; ändslinga; dbms_lob.close(min_lob); UNDANTAG    NÄR NO_DATA_FOUND SEDAN      DBMS_OUTPUT.PUT_LINE('End of data');end;/

Hoppas du gillar den här informationen om bilagor i Oracle Applications R12. Lämna gärna feedbacken

Relaterade artiklar
FND_LOBS :FND_LOBS lagrar information om alla LOB som hanteras av Generic File Manager (GFM). Det är en unik tabell som används för både EBS temporära data och permanenta användardata (dvs. Bilagor).
Oracle EBS Revision :Hur man ställer in Oracle EBS Auditing, hur man lägger till tabeller i revisionsgrupp, hur man väljer kolumn för granskning, revisionsspår uppdatering samtidig begäran
Skapa EBS-användare från backend :Det här inlägget handlar om hur man skapar EBS-användare från backend , hur man tilldelar applikationsansvar till den skapade användaren


  1. Problem med postgresql COPY kommando med Rails på annan server

  2. Varning:mysql_fetch_array() förväntar sig att parameter 1 är resurs, boolean ges i

  3. selectionArgs i SQLiteQueryBuilder fungerar inte med heltalsvärden i kolumner

  4. Operator finns inte:heltal =? när du använder Postgres