FND_LOBS je jednou z velkých a důležitých tabulek v Oracle Apps. Podívejme se na různé důležité věci o této tabulce
Obsah
Co je uloženo ve FND_LOBS?
FND_LOBS ukládá informace o všech objektech LOB spravovaných Generic File Manager (GFM). Každý řádek obsahuje identifikátor souboru, název, typ obsahu a skutečná data. Každý řádek také obsahuje data, kdy byl soubor nahrán a kdy vyprší jeho platnost, název a značku přidruženého programu a jazyk a sadu znaků Oracle. Data souboru, což je binární LOB, jsou uložena přesně tak, jak jsou nahrána z klientského prohlížeče, což znamená, že během stahování není potřeba žádný překlad, aby bylo kompatibilní s HTTP. Proto nahrávání ze zdrojů mimo prohlížeč bude muset náležitě připravit obsah (například oddělit řádky pomocí CRLF).
Jak vymazat záznamy z FND_LOBS?
Souběžný program „Purge Obsolete Generic File Manager Data“ se používá k vyčištění FND_LOBS a vyčistí položky podle typu
– položky nápovědy aplikace (iHelp) – nebudou vymazány
– přílohy – bude vymazána, pokud vyprší platnost
– exporty – budou vymazány
Vypršení platnosti příloh by mělo být provedeno prostřednictvím aplikace, nikoli ručně aktualizovat tabulku.
Záznamy, které mají datum vypršení platnosti, můžete vidět podle spuštěného program_name:
select program_name,count(*)
from FND_LOBS
where expiration_date is not NULL
group by program_name;
Záznamy bez data vypršení platnosti byly nalezeny jako spuštěné:
select program_name,count(*)
from FND_LOBS
where expiration_date is NULL
group by program_name;
Jak najít prostor alokovaný v lobsegmentech versus použitý prostor?
Chcete-li zjistit, kolik místa skutečně využívají lobsegmenty, můžete spustit:
select sum(dbms_lob.getlength (FILE_DATA)) from FND_LOBS;
SUM(DBMS_LOB.GETLENGTH(FILE_DATA))
----------------------------------
57253782456
Celkový prostor přidělený v oblastech lze nalézt jako spuštěný:
select sum(bytes), s.segment_name, s.segment_type from dba_lobs l, dba_segments s where s.segment_type = 'LOBSEGMENT' and l.table_name = 'FND_LOBS' and s.segment_name = l.segment_name group by s.segment_name,s.segment_type; SUM(BYTES) SEGMENT_NAME SEGMENT_TYPE ---------- --------------------------------- ------------------ 525472547345 SYS_LOB0000057C00004$$ LOBSEGMENT
Jak najít místo, které jednotlivé programy využívají
select
program_name,round(sum(dbms_lob.getlength (FILE_DATA))/1024/1024,0) "Size(M)"
from APPS.fnd_LOBS
where expiration_date is NULL
group by program_name order by 2 desc
PROGRAM_NAME Size(M)
-------------------------------- ----------
FNDATTCH 864
FND_HELP 280
export 7
HRMS_ADI 5
PERWSIMG 3
IBE 0
PER_P11D_gb_UK.pdf 0
.
Jak změnit verzi PCTVERSION
ALTER TABLE APPLSYS.FND_LOBS MODIFY LOB (FILE_DATA) ( PCTVERSION 0);
Jak zobrazit obsah LOB?
-- Read from fnd_lobs a given file_id
set serveroutput on size 1000000;
declare
my_lob BLOB;
Buffer RAW(255);
Amount BINARY_INTEGER := 255;
Position INTEGER := 1;
begin
select file_data into my_lob
from fnd_lobs
where file_id = &enter_file_id;
dbms_lob.open(my_lob, dbms_lob.lob_readonly);
DBMS_OUTPUT.PUT_LINE('Start of data');
loop
DBMS_LOB.READ(my_lob, Amount, Position, Buffer);
/* Process the buffer: */
DBMS_OUTPUT.PUT_LINE(utl_raw.cast_to_varchar2(Buffer));
Position := Position + Amount;
end loop;
dbms_lob.close(my_lob);
EXCEPTION
WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE('End of data');
end;
/ Jak stáhnout soubor přílohy z fnd_lobs
- Získejte FILEID z databáze pro soubor LOB, který chcete stáhnout, například:
select FILE_ID,FILE_NAME from FND_LOBS where FILE_ID=123599;
FILE_ID FILE_NAME
---------- -------------
1212 TEST.XLS
2. Proveďte příkaz FNDGFU. Příklad souboru výše:
FNDGFU apps/apps 0 Y DOWNLOAD=1212 TEST.XLS
Související články
jak přesunout segment lob:jak přesunout segment lob z jednoho tabulkového prostoru do druhého, jak získat zpět prostor po odstranění major v segmentu lob, jak použít příkaz shrink v segmentech LOB
Přílohy v aplikacích Oracle:Kontrola v tomto příspěvku na téma Přílohy v Oracle Applications R12, jak jsou uloženy, tabulky zapojené do procesu a dotazy
Oracle EBS Auditing :Jak nastavit Oracle EBS Auditing, jak přidat tabulky do skupiny auditu, jak vybrat sloupec pro auditování, souběžný požadavek na aktualizaci auditní stopy
Vytvořit uživatele EBS z backendu:Tento příspěvek je o tom, jak vytvořit uživatele EBS z backendu, jak přiřadit odpovědnost za aplikaci vytvořenému uživateli