查詢—併發請求定義相關資訊
阿新 • • 發佈:2021-01-16
併發請求不相容設定
Cannot Make Concurrent Programs Incompatible With Itself (文件 ID 436186.1)
--併發程式可執行,對應的“執行方法”
換句話說,為了防止兩個程式同時訪問或更新相同的資料,您必須知道就資料而言它們在哪裡不相容。衝突域標識無法同時執行兩個不相容程式的資料
衝突域
在Oracle應用產品中,資料儲存在屬於特定應用程式的資料庫表中。每個表還可能包含用於確定
訪問各個記錄所需滿足的條件的資訊。這些條件可能包含以下一個或多個數據組:
* SOB-基於配置檔案選項GL_SET_OF_BOOKS
* Multiple installations(稱為MSOB)
* Multiple Operating units(由配置檔案選項MO_OPERATING_UNIT確定)(稱為MULTIORG)。
* Multiple Orgs(由配置檔案選項INV_ORGANIZATION_ID確定,由製造應用程式使用)
* HR may use business group as a conflict resolution domain
* FA may use FA book
* ...
衝突域是用於對資料進行分割槽的分組的抽象表示。可以定義的域數量沒有限制,但是過多的域可能會影響效能。
所有程式在提交時都分配有衝突域。如果將域定義為引數的一部分,則併發管理器將使用它來解決
不相容問題。如果該域不是由引數定義的,則併發管理器將使用為配置檔案選項Concurrent:Conflicts Domain定義的值。最後,如果程式引數未提供域,並且尚未定義Concurrent:Conflicts域配置檔案選項,則使用“標準”域。標準域是所有請求的預設域。
除非為配置檔案選項Concurrent:Conflicts Domain定義了值或通過程式引數定義了衝突域,否則所有程式都將使用Standard衝突域。
提交的每個請求都使用引數來標識它將訪問的記錄。對於使用不相容規則定義的程式,將使用附加引數(衝突域引數)。可以根據諸如登入ID,賬套或使用者所在的組織等變數自動設定衝突域。在某些情況下,可以在“提交請求”表單的“引數”欄位中選擇衝突域引數。確定引數後,衝突解決管理器(CRM)將使用該域來確保不相容的程式不會在同一域中同時執行。
另請參見配置檔案選項:併發:衝突域【Concurrent:Conflicts Domain】
此配置檔案為您的資料指定衝突域。衝突域標識了兩個不相容程式無法同時執行的資料。使用者可以看到但不能更新此配置檔案選項。
--併發程式可執行,對應的“執行方法”
SELECT t.lookup_type,
t.lookup_code,
t.meaning,
t.description
FROM fnd_lookup_values t
WHERE t.language = 'ZHS'
AND t.lookup_type = 'CP_EXECUTION_METHOD_CODE';
--查詢併發請求的引數使用的值集SELECT fpv.user_concurrent_program_name, fdfc.column_seq_num, fdfc.end_user_column_name, fdfc.enabled_flag, --啟用 ffvs.flex_value_set_name, --值集 (SELECT flv.meaning FROM fnd_lookup_values_vl flv WHERE flv.lookup_type = 'FLEX_DEFAULT_TYPE' AND flv.lookup_code = fdfc.default_type) default_type, --預設型別 fdfc.default_value, --預設值 fdfc.required_flag, --必需 (SELECT flv.meaning FROM fnd_lookup_values_vl flv WHERE flv.lookup_type = 'RANGE_CODES' AND flv.lookup_code = fdfc.range_code) range_code, --範圍 fdfc.display_flag, --顯示 fdfc.display_size, --顯示大小 fdfc.maximum_description_len, --說明大小 fdfc.concatenation_description_len, --級聯說明大小 fdfc.form_left_prompt --提示 FROM fnd_descr_flex_col_usage_vl fdfc, fnd_flex_value_setsffvs, fnd_concurrent_programs_vlfpv WHERE fdfc.flex_value_set_id = ffvs.flex_value_set_id AND substr(fdfc.descriptive_flexfield_name, 7, /*'$SRS$.'*/ length(fdfc.descriptive_flexfield_name)) = fpv.concurrent_program_name AND fpv.user_concurrent_program_name IN ('CUX:憑證列印', 'HDSP: 憑證列印') --AND ffvs.flex_value_set_name LIKE '%DATE%' --fdfc.application_id = 20007 --CUX應用 ORDER BY fpv.user_concurrent_program_name, fdfc.column_seq_num ASC;
程式不相容有兩種型別,“全域性”不相容和“特定於域”的不相容。
型別(域/全域性) 如果選擇“域”,則在特定於域的級別解決不相容問題。 如果選擇“全域性”,則無論該併發程式在哪個域中執行,都將被視為與該併發程式全域性不相容。 程式不相容有兩種型別, “全域性”不相容和“特定於域”的不相容。 您可以將一個併發程式定義為與另一個程式在全域性上不相容-也就是說,這兩個程式根本不能同時執行。 或者您可以將併發程式定義為與衝突域中的另一個程式不相容。衝突域是資料組的抽象表示。它們可以在不同的域中並行執行。 併發衝突域 如果將兩個程式定義為彼此不相容,則還必須標識這些程式無法同時訪問的資料。