Você está na página 1de 8

ORACLE CORPORATION

Inventory Report
CLL_F255_CST_INVENT
ORY_TEMP_V
Basic Steps
Basic Steps para utilização da view
CLL_F255_CST_INVENTORY_TEMP_V

Eduardo Leite
2

Contents
OBJETIVO ....................................................................................................................................... 3
PRÉ-REQUISITOS ............................................................................................................................ 4
Exemplo de chamada da API ......................................................................................................... 5
Acessando os dados ...................................................................................................................... 8

Este documento tem por finalidade descrever uma direção geral do produto. A intenção é
apenas para fins informativo.
3

OBJETIVO

Este documento descreve os passos necessários para popular a nova view que apresentará
toda a movimentação de custo ocorrida no Inventory, listando o mesmo conteúdo de custo
dos relatórios do Inventory.
4

PRÉ-REQUISITOS

1. Aplicação do Patch 17627489 - R12.CLL ISV Integration Solution Pack 15


5

Exemplo de chamada da API

Inclua em sua codificação a seguinte chamada para carregar os dados de custo para as tabelas
temporárias.

DECLARE
l_nOrganizationId NUMBER;
l_nCategorySetId NUMBER;
l_nCostTypeId NUMBER;
l_nMsg_count NUMBER;
l_vMsg_data VARCHAR2(8000);
l_vReturn_status VARCHAR2(1);
l_dAsDate DATE;
l_nPeriodId org_acct_periods.acct_period_id%TYPE;
l_vPeriodName org_acct_periods.period_name%TYPE;
--
BEGIN
-- Set error level only
FND_PROFILE.put( 'FND_AS_MSG_LEVEL_THRESHOLD',
FND_MSG_PUB.G_MSG_LVL_ERROR );
--FND_PROFILE.put( 'FND_AS_MSG_LEVEL_THRESHOLD',
FND_MSG_PUB.G_MSG_LVL_DEBUG_HIGH );
--
DBMS_OUTPUT.PUT_LINE('STEP 1: Collecting essential values.');
--
-- Find the organization identifier
SELECT organization_id
INTO l_nOrganizationId
FROM org_organization_definitions
WHERE organization_code = 'RJ2'; -- Type right over here your
organization code
-- Find category set
SELECT category_set_id
INTO l_nCategorySetId
FROM MTL_CATEGORY_SETS_VL
WHERE category_set_name = 'Inv.Items'; -- Type right over here
your category set name
-- Find cost type
SELECT cost_type_id
INTO l_nCostTypeId
FROM cst_cost_types
WHERE cost_type = 'Average'; -- Type over here your cost type name
-- Type as date
l_dAsDate := TO_DATE( '2009/08/31 00:00:00', 'YYYY/MM/DD
HH24:MI:SS' );
--
dbms_output.put_line('STEP 2: Calling CST API
"CLL_F255_CST_INVENTORY_PUB.Calculate_InventoryValue" for populate
global tables.');
--
CLL_F255_CST_INVENTORY_PUB.Calculate_InventoryValue
6

( p_api_version =>
1.0 -- default value
, p_init_msg_list =>
CST_Utility_PUB.get_true
, p_organization_id =>
l_nOrganizationId
, p_onhand_value =>
1
, p_intransit_value =>
1
, p_receiving_value =>
1
, p_valuation_date =>
l_dAsDate
, p_cost_type_id =>
l_nCostTypeId
, p_item_from =>
NULL -- Type right over here first item code
, p_item_to =>
NULL -- Type right over here last item code
, p_category_set_id =>
l_nCategorySetId
, p_category_from =>
NULL -- Type right over here first category
, p_category_to =>
NULL -- Type right over here last category
, p_cost_group_from =>
NULL
, p_cost_group_to =>
NULL
, p_subinventory_from =>
NULL
, p_subinventory_to =>
NULL
, p_qty_by_revision =>
NULL -- Allowed values: 1-Yes/2-No
, p_zero_cost_only =>
'2' -- Allowed values: 1-Yes/2-No
, p_zero_qty =>
NULL -- Allowed values: 1-Yes/2-No
, p_expense_item =>
'2' -- Allowed values: 1-Yes/2-No
, p_expense_sub =>
'2' -- Allowed values: 1-Yes/2-No
, p_include_period_end =>
'2' -- Allowed values: 1-Yes/2-No
, p_unvalued_txns =>
NULL -- Allowed values: 1-Yes/2-No
, p_receipt =>
1 -- Allowed values: 1-Yes/2-No
, p_shipment =>
1 -- Allowed values: 1-Yes/2-No
7

, p_own =>
1 -- Allowed values: 1-Yes/2-No
, p_detail =>
NULL -- Allowed values: 1-Yes/2-No
, x_return_status =>
l_vReturn_status
, x_msg_count =>
l_nMsg_count
, x_msg_data =>
l_vMsg_data
);
--
DBMS_OUTPUT.PUT_LINE(' >> CST API
"CST_Inventory_PUB.Calculate_InventoryValue" was executed until
end.');
--
SELECT acct_period_id, period_name
INTO l_nPeriodId, l_nPeriodName
FROM org_acct_periods
WHERE organization_id = l_nOrganizationId
AND l_dAsDate BETWEEN TRUNC( period_start_date ) AND
TRUNC( schedule_close_date );
--
CLL_F255_CST_INVENTORY_PUB.set_period_id ( pPeriodId =>
l_nPeriodId );
CLL_F255_CST_INVENTORY_PUB.set_period_name ( pPeriodName =>
l_nPeriodName );
CLL_F255_CST_INVENTORY_PUB.set_inventory_date( pInventoryDate =>
TRUNC( l_dAsDate ) );
--
IF l_vReturn_status <> CST_UTILITY_PUB.get_ret_sts_success THEN
--
FND_MSG_PUB.count_and_get( p_encoded =>
CST_Utility_PUB.get_false
, p_count => l_nMsg_count
, p_data => l_vMsg_data );
--
IF l_nMsg_count > 0 THEN
--
DBMS_OUTPUT.PUT_LINE(l_nMsg_count || ' error(s) founded:
Printing errors.');
--
FOR i IN 1 ..l_nMsg_count
LOOP
l_vMsg_data := FND_MSG_PUB.get( i,
CST_Utility_PUB.get_false );
DBMS_OUTPUT.PUT_LINE(' >> # '|| i ||' - '||
l_vMsg_data );
END LOOP;
--
DBMS_OUTPUT.PUT_LINE(' ');
RETURN;
END IF;
8

--
END IF;
--
DBMS_OUTPUT.PUT_LINE(' ');
DBMS_OUTPUT.PUT_LINE('All right for collect data from the
CLL_F255_CST_INVENTORY_TEMP_V view.');
DBMS_OUTPUT.PUT_LINE(' ');
END;
/

Acessando os dados

Colete os dados computados pela API acima.

SELECT * FROM CLL_F255_CST_INVENTORY_TEMP_V


/

Você também pode gostar