Showing posts with label Oracle EBS. Show all posts
Showing posts with label Oracle EBS. Show all posts

Wednesday, May 25, 2022

Concurrent request put on menu

Form:  "Run Reports"

Parameter:

    1. REQUEST_GROUP_CODE="AR_CREATE_ACCOUNTING" REQUEST_GROUP_APPL_SHORT_NAME="AR" TITLE="AR:AR_ACCT_EXEC"

    2. CONCURRENT_PROGRAM_NAME ="RACUST" PROGRAM_APPL_SHORT_NAME="AR" TITLE="AR:AR_SRS_TITLE_CUST_INTERFACE"

    3.TITLE="CMI:CMI_LAUNCH_SIM_GPA_LOAD"  USE_ORG="N"  CONCURRENT_PROGRAM_NAME="CMIGPASLOAD"    PROGRAM_APPL_SHORT_NAME="CMI"



Friday, March 11, 2022

FND_PROFILE & FND_GLOBAL usage

FND_PROFILE

Use of the API FND_PROFILE
It is used to perform various actions related to profile values through PL/SQL. Some of the important ones are listed below
1. FND_PROFILE.GET(‘Name of the Profile’, variable name);
Example
SELECT fnd_profile.value('PROFILEOPTION')
,fnd_profile.value('MFG_ORGANIZATION_ID')
,fnd_profile.value('ORG_ID')
,fnd_profile.value('LOGIN_ID')
,fnd_profile.value('USER_ID')
,fnd_profile.value('USERNAME')
,fnd_profile.value('CONCURRENT_REQUEST_ID')
,fnd_profile.value('GL_SET_OF_BKS_ID')
,fnd_profile.value('SO_ORGANIZATION_ID')
,fnd_profile.value('APPL_SHRT_NAME')
,fnd_profile.value('RESP_NAME')
,fnd_profile.value('RESP_ID')
FROM DUAL;



FND_GLOBAL

The server-side package FND_GLOBAL returns the values of system globals, such as the login/signon or “session” type of values. You should not use FND_GLOBAL routines in your forms (that is on the client side). On the client side, most of the procedures in the FND_GLOBAL package are replaced by a user profile option with the same (or a similar) name. You should use FND_PROFILE routines in your forms instead.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
fnd_global.USER_ID 
fnd_global.USER_NAME 
fnd_global.RESP_ID 
fnd_global.RESP_NAME 
fnd_global.APPLICATION_NAME 
fnd_global.APPLICATION_SHORT_NAME 
fnd_global.RESP_APPL_ID 
fnd_global.BASE_LANGUAGE 
fnd_global.CONC_LOGIN_ID 
fnd_global.CONC_PRIORITY_REQUEST 
fnd_global.CONC_PROCESS_ID 
fnd_global.CONC_PROGRAM_ID 
fnd_global.CONC_QUEUE_ID 
fnd_global.CONC_REQUEST_ID 
fnd_global.CURRENT_LANGUAGE 
fnd_global.CUSTOMER_ID 
fnd_global.EMPLOYEE_ID 
fnd_global.FORM_APPL_ID 
fnd_global.FORM_ID 
fnd_global.GET_SESSION_CONTEXT 
fnd_global.LANGUAGE_COUNT 
fnd_global.LOGIN_ID 
fnd_global.NEWLINE 
fnd_global.NLS_DATE_FORMAT 
fnd_global.NLS_DATE_LANGUAGE 
fnd_global.NLS_LANGUAGE 
fnd_global.NLS_NUMERIC_CHARACTERS 
fnd_global.NLS_SORT 
fnd_global.NLS_TERRITORY 
fnd_global.ORG_ID 
fnd_global.ORG_NAME 
fnd_global.PARTY_ID 
fnd_global.PER_BUSINESS_GROUP_ID 
fnd_global.PER_SECURITY_PROFILE_ID 
fnd_global.PROG_APPL_ID 
fnd_global.QUEUE_APPL_ID 
fnd_global.RT_TEST_ID 
fnd_global.SECURITY_GROUP_ID 
fnd_global.SERVER_ID 
fnd_global.SESSION_ID 
fnd_global.SUPPLIER_ID 
fnd_global.TAB

Thursday, March 10, 2022

EBS information for table begin with all*

1)  select table_name from all_tables

2)  select view_name from all_views


3)  select distinct type from all_source 

    where name = 'CUX_SEND_MAIL_PKG' 

    and type = 'PACKAGE BODY'

    order by line;

TYPE:

PACKAGE BODY

TYPE BODY

TRIGGER

PACKAGE

PROCEDURE

FUNCTION

LIBRARY

TYPE

JAVA SOURCE

Wednesday, March 9, 2022

How to get CCID

1) Fnd_Flex_ext.get_ccid

 

--return CCID or 0 when flexfield segment ACCOUNT does not exist in the value set TTI_ACCOUN

 

DECLARE

    p_ccid    NUMBER;

BEGIN

    p_ccid := Fnd_Flex_ext.get_ccid(application_short_name => 'SQLGL',

                                         key_flex_code          => 'GL#',

                                         structure_number       => 50190,

                                         validation_date        => to_char(SYSDATE,

                                                                           'YYYY/MM/DD HH24:MI:SS'),

                                         concatenated_segments  => 'B1.21399.00.6733.000000.00000000.11.00.0000.000');

    IF p_ccid <> '0' THEN

        DBMS_OUTPUT.PUT_LINE( p_ccid);

    ELSE

        DBMS_OUTPUT.PUT_LINE( FND_FLEX_EXT.GET_MESSAGE) ;

    END IF;

END;

 

====================================================================

 

2) fnd_flex_keyval.validate_segs

 

--return true or false & get ccid by FND_FLEX_KEYVAL.COMBINATION_ID()

 

BEGIN

    IF fnd_flex_keyval.validate_segs(

        operation        => 'CREATE_COMBINATION' -- CHECK_COMBINATION, FIND_COMBINATION

        , appl_short_name  => 'SQLGL' -- 請根據情況自行修改

        , key_flex_code    => 'GL#' -- 請根據情況自行修改

        , structure_number => 50190 -- 請根據情況自行修改

        , concat_segments  => 'B1.21299.00.6733.000000.00000000.11.00.0000.000') THEN

        DBMS_OUTPUT.PUT_LINE( (FND_FLEX_KEYVAL.COMBINATION_ID()));

--.concatenated_descriptions());

    ELSE

        DBMS_OUTPUT.PUT_LINE( FND_FLEX_KEYVAL.ERROR_MESSAGE) ;

    END IF;

END; 





1、Check Combination:

IF (NOT fnd_flex_keyval.validate_segs(operation => 'CHECK_COMBINATION',

                                      appl_short_name => 'SQLGL',

                                      key_flex_code => 'GL#',

                                      structure_number => 50394,

                                      concat_segments => '0.0.530101.0.0.1006001.0.0',

                                      validation_date => sysdate)) THEN

  -- return the error message

  RETURN fnd_flex_keyval.error_message;

END IF;


2. Create Combination:

    1) fnd_flex_ext.get_ccid(application_short_name => 'SQLGL',  

                                                 key_flex_code          => 'GL#',  

                                                 structure_number       => l_id_flex_num,  

                                                 validation_date        => to_char(SYSDATE,  

                                                                                   apps.fnd_flex_ext.DATE_FORMAT),  

                                                 concatenated_segments  => x_concatenated_seg);

    2: fnd_flex_keyval.validate_segs('CREATE_COMBINATION' --'CREATE_COMB_NO_AT'

                                       ,'SQLGL'

                                        ,'GL#'

                                        ,lv_chart_of_accounts_id

                                        ,lv_concatenated_segments);



FND_KEY_FLEX.Define() 定义弹性域
FND_FLEX_EXT.GET_SEGS() 获取科目节段组合
fnd_flex_ext.get_ccid() 获取ID
FND_FLEX_KEYVAL.validate_ccid验证ccid的有效性
FND_FLEX_KEYVAL.concatenated_descriptions 得到ccid的描述
FND_KEY_FLEX.Update_Definition()

Sunday, January 17, 2021

Order Managerment Status flow

 

Order&Shipping Transactions Status Summary

StepOrder Header StatusOrder Line StatusOrder Flow Workflow Status (Order Header)Line Flow Workflow Status (Order Line)Shipping Transaction  Status(RELEASED_STATUS in WDD)
1. Enter an OrderEnteredEnteredBook Order ManualEnter – Line                             N/A
2. Book the OrderBookedAwaiting ShippingClose OrderSchedule ->Create Supply ->Ship – Line                      Ready to Release(R)
3. Pick the OrderBookedPickedClose OrderShip – Line1.Released to Warehouse(S)(Pick Release but not pick confirm)  2.Staged/Pick Confirmed(Y)(After pick confirm)
4. Ship the OrderBookedShippedClose OrderFulfill – Deferred1.Shipped(After ship confirm)  2.Interfaced(C)(After ITS)
BookedClosedClose OrderFulfill ->Invoice Interface ->Close Line -> End
5. Close the OrderClosedClosedEndEnd

Tuesday, January 5, 2021

Re-open Inventory accounting period

Re-open Inventory accounting period


2. SELECT acct_period_id period, open_flag, period_name name,
period_start_date, schedule_close_date, period_close_date
FROM org_acct_periods
WHERE organization_id = &org_id
order by 1,2;

3. UPDATE org_acct_periods
SET open_flag = 'Y',
period_close_date = NULL,
summarized_flag = 'N'
WHERE organization_id = &&org_id
AND acct_period_id >= &&acct_period_id;



DELETE mtl_period_summary
WHERE organization_id = &org_id
AND acct_period_id >= &acct_period_id;



DELETE mtl_period_cg_summary
WHERE organization_id = &org_id
AND acct_period_id >= &acct_period_id;



DELETE mtl_per_close_dtls
WHERE organization_id = &org_id
AND acct_period_id >= &acct_period_id;



DELETE cst_period_close_summary
WHERE organization_id = &org_id
AND acct_period_id >= &acct_period_id;




Tuesday, December 8, 2020

EBS structure level difference for R11 & R12

 R11.

    BG - Business Group

    SOB - Set of Book

    LE - Legal Entity

    OU - Operation Unit

    Org - Organization


R12.

    BG - Business Group

    LE - Legal Entity

    SOB - Set of Book

    OU - Operation Unit

    Org - Organization


1) Supplier & Customer are belonged to OU level , difference OU only can see header information. 

2) MOAC(multi-org access control) can make one responsibility to see whole supplier information.



 

Sunday, December 6, 2020

Cost - Periodic Actual Cost Worker CSTPPINV.COST_INV_TXN:CSTPPAQH.ACQ_RECEIPT_COST_HOOK-No_Receipt_cost error

 --期初結帳找不到採購行為


open procedure:


CSTPPAHK.acq_receipt_cost_hook


edit:

  a) Change o_error_num := -1 to o_error_num := 0;

  b) Change o_hook_cost := 0 to 

Tuesday, December 1, 2020

Oracle Tables information website - eTRM - Technical Reference

 eTRM - Technical Reference 


see information through below website

http://etrm.oracle.com/pls/trm1222p/etrm_fndnav.ls_object

Tuesday, October 27, 2020

Oracle Purchasing Tables

 



Usual Oracle Applications PO Tables
PO_HEADERS_ALL: Purchase Order information with Supplier, Site and status
PO_LINES_ALL: PO Lines with Item Information and quantity
PO_LINE_LOCATIONS_ALL: PO Information on Shipments Destination
PO_DISTRIBUTIONS_ALL: PO Distribution where the accounts are
PO_LINE_LOCATIONS_ARCHIVE_ALL: table updated for history on Shipment/Destination Location Information
PO_LINE_TYPES_B: PO Types used in the PO_LINES_ALL
PO_LINES_TYPES_TL: PO Line Types used in MLS

PO_RELEASES_ALL: Stores revision number for the PO
PO_HEADERS_ARCHIVE_ALL: table updated for the history on the status and PO Header changes, Lines, Location and PO Accounts Distribution
PO_LINES_ARCHIVE_ALL: table updated for the history on the lines
PO_DISTRIBUTIONS_ARCHIVE_ALL: table updated for the history on the account distribution
PO_AGENTS_V: Buyer
PO_VENDORS: Supplier Table
PO_VENDOR_SITES: Supplier Sites
PO_VENDOR_CONTACTS: Supplier Contacts
PO_HAZARD_CLASSES: contains code and description for hazardous items which gets automatically printed into purchase order, RFQ and Receipt Travelers
PO_REQUISITION_LINES_ALL: Requisition Lines
PO_REQUISITION_HEADERS_ALL: Requisition Headers
PO_REQ_DISTRIBUTIONS_ALL: Distribution Lines of Requisition where accounts are
PO_APPROVED_SUPPLIER_LIST: Supplier List for Auto-Sourcing
PO_ASL_DOCUMENTS: Advanced Shipment Documents
PO_APPROVAL_LIST_HEADERS: PO Approval Path
PO_APPROVAL_LIST_LINES: PO Approval Path


OTHER RELATED:
MRP_SOURCING_RULES: Used for Auto-Sourcing Rules
MRP_SR_RECEIPT_ORG: Used for Auto-Sourcing Rules
MRP_SR_SOURCE_ORG: Used for Auto-Sourcing Rules
MRP_ASSIGNMENT_SETS: Used for Auto-Sourcing Rules
MRP_SR_ASSIGNMENTS: Used for Auto-Sourcing Rules
RCV_SHIPMENT_HEADERS: Shipment Table Header with grouping information
RCV_SHIPMENT_LINES: Shipment Table lines with item information
RCV_TRANSACTIONS: PO Lines or Requisition received in destination or transit
RCV_ACCOUNTING_EVENTS: Receiving information on accounts
RCV_RECEIVING_SUB_LEDGER: Accounting entries generated for the receiving transactions
RCV_SUB_LEDGER_DETAILS: Detail accounting entries generated for the receiving transactions

RCV_LOT_SUPPLY: Parent for RCV_LOT_TRANSACTIONS
RCV_LOT_TRANSACTIONS: Table housing the information what lot the item is received

INTERFACES:
PO_HEADERS_INTERFACE: Used for creating PO
PO_LINES_INTERFACE: Used for creating PO
PO_DISTRIBUTIONS_INTERFACE: Used for creating PO
PO_REQUISITIONS_INTERFACE: Used for creating Requisition
PO_REQ_DIST_INTERFACE: Used for creating Requisition
PO_INTERFACE_ERRORS: Error created during the processing of the PO or requisition
RCV_INTERFACE: Used for creating Received Items
RCV_HEADERS_INTERFACE: Used for creating Received Group of items

RCV_LOT_INTERFACE: Used for receiving item into a particular lot