Budgeting - Queries
Hello,
I have some queries on Budgeting and Planning, please find them below-
1. Can budgeting would be possible on period wise basis?
2. Can the budgeted values could be same as planned values? If yes, then why planning (CJ40) is required?
3. If I can plan some costs to activities (via material or WC etc), then why planning required for the WBS in CJ40?
4. If I can plan my WBS in CJ40 and utilize the same planned values for N/W and Activitiesu2026 then why the question 3 (above) would be used?
Thanks for your time and understanding.
Regards,
Sumanth.
1. Can budgeting would be possible on period wise basis?
No. As of now SAP doesn't have this facility of Budgeting period wise. This is an option many of the businesses require. Maybe SaP will come out with this functionality in their future releases/enhancements.
2. Can the budgeted values could be same as planned values? If yes, then why planning (CJ40) is required?
Budgeted values can be same as planned values. There is an option in CJ30 to copy the planned values as your budget values.
3. If I can plan some costs to activities (via material or WC etc), then why planning required for the WBS in CJ40?
Planning via CJ40 is just one of the many options that SAP has provided. Its also called Hierarchical/Structure Planning. Its entirely the decision made with respect to your business process as to which type of planning you would like to use. Planning costs using network activities is called Network costing. This is widely used as it gives you proper control over the project. This also makes it easy to analyse the different variances in your project.
4. If I can plan my WBS in CJ40 and utilize the same planned values for N/W and Activitiesu2026 then why the question 3 (above) would be used?
Answer same as above.
Apart from the answere provided above i would strongly recommend you to go through SAP help once. Your concepts with respect to project cost planning will be clear.
Similar Messages
-
Bex Queries on budget, actuals
Hi,
How can i do calculation for previous yearbudget , current year budget, previous year actual, current year actuals, next year budget etc...........
thanks
irfanHi Irfan
We can differentiate the Budjet data and actual data by value type and version type.Basically the budjet data will have the values version equal to 001 and value type also 001 but actual type data have value and version type will be 000.
While creating report if u restrict the actual key figures with the value and version type equal to 000 and budjet key fiure restrict with version equal to 001 and value type also 001 .
I hope this solution will satisfies your requirement.
if it helps assighn some points.
Thanks& Regards. -
Table Names for the Contract Budget(PO value) and Invoiced Budget
Hello Team,
Can you please share your ides on the below two queries
1. How can we Identify the Contract Budget from the P.O Number
2. How can we know how much of it has been Invoiced
Please provide the Table Names also if you know, where these values can be stored.
These are required to create a BW report.
Regards,
gsnreddy.Hi Aleksey Tkachenko
Thanks for the reply
let me clear this a little bit about my query
what i want is the total PO value
i.e. for how much amount the PO was created and how much of that amount is converted in to invoice
Where can i get this data?
Is this data was saved in any of the SAP table?
Regards, -
To find Queries by InfoObjects
Hi SDN Community
Here is a reversal of a post made by another developer
List of infoobjects used in a Query
This has the reverse logic... thanks for the tip.
*& Report ZBW_FIND_CHARACTERISTICS_QUERY
SAP Consulting BW Tools:
*& Find Characteristics in BEx Queries using ABAP
*& List of infoobjects used in a Query
*& Developer: WBHADS 07/06/2011
REPORT ZBW_FIND_CHARACTERISTICS_QUERY.
PARAMETER: CHARACT LIKE rszrange-IOBJNM.
DATA: s_characteristic LIKE rszrange-IOBJNM.
s_characteristic = CHARACT.
DATA: lv_count TYPE i.
DATA: lv_count1 TYPE i.
DATA: lv_count2 TYPE i.
Data Declaration
DATA: D_MSG_TEXT(50).
DATA: lc_DIRECTORY(30) TYPE c.
DATA: P_FILE(128).
DATA: FILENAME(128).
DATA: lc_query(60) TYPE c.
DATA: lc_date(30) TYPE c.
DATA: lc_time(30) TYPE c.
DATA: lc_start_time(60) TYPE c.
DATA: lc_syst(30) TYPE c.
DATA: lc_exception(120) TYPE c.
RSZELTDIR Directory of the reporting component elements
RSZELTTXT Texts of reporting component elements
RSZELTXREF Directory of query element references
RSRREPDIR Directory of all reports (Query GENUNIID)
RSZCOMPDIR Directory of reporting components
RSZRANGE Selection specification for an element
RSZSELECT Selection properties of an element
RSZELTDIR Directory of the reporting component elements
RSZCOMPIC Assignment reuseable component <-> InfoCube
RSZELTPRIO Priorities with element collisions
RSZELTPROP Element properties (settings)
RSZELTATTR Attribute selection per dimension element
RSZCALC Definition of a formula element
RSZCEL Query Designer: Directory of Cells
RSZGLOBV Global Variables in Reporting
data: gi_data like rszrange occurs 0 with header line.
Determine the queries
tables:
RSZELTTXT,
rszeltdir,
rszeltxref,
rszrange.
data: begin of lt_line occurs 0,
ELTUID like RSZELTDIR-ELTUID, "char 25
MAPNAME like RSZELTDIR-MAPNAME, "char 30
end of lt_line.
data: begin of lt_line1 occurs 0,
SELTUID like rszeltxref-SELTUID, "char 25
TELTUID like rszeltxref-TELTUID, "char 25
LAYTP like rszeltxref-LAYTP, "char 30
end of lt_line1.
data: begin of lt_line2 occurs 0,
ELTUID like rszrange-ELTUID, "char 25
IOBJNM like rszrange-IOBJNM, "char 25
end of lt_line2.
data: lt_tab like standard table of lt_line initial size 0.
data: lt_tab1 like standard table of lt_line initial size 0.
data: lt_tab2 like standard table of lt_line initial size 0.
data: lt_line20(128) TYPE c. " LIKE RSZELTXREF-SELTUID.
data: lt_line30(128) TYPE c. " LIKE RSZELTXREF-SELTUID.
clear lt_line.
lv_count = 0.
lv_count2 = 0.
Loop through all the queries
select * from RSZELTDIR
into corresponding fields of lt_line
where DEFTP = 'REP'
and OBJVERS = 'A'.
Filter by the Z Developed Queries
IF lt_line-MAPNAME CP 'Z*'.
clear lt_line20.
Get the Query Long Name
select single * from RSZELTTXT
into lt_line20
where eltuid = lt_line-eltuid "rszeltdir-eltuid
and objvers = 'A'
and langu = 'EN'.
Find all the query elements within the query
select * from rszeltxref
into corresponding fields of lt_line1
where seltuid = lt_line-eltuid "rszeltdir-eltuid
and objvers = 'A'.
IF lt_line1-laytp = 'FIX' OR lt_line1-laytp = 'COL' OR lt_line1-laytp = 'ROW'.
Determine if the Query Element is matching to the characteristic
select * from rszrange "appending table gi_data
into corresponding fields of lt_line2
where eltuid = lt_line1-teltuid "rszeltxref-teltuid
and objvers = 'A'
and enum = 1.
Populate tables
IF lt_line2-IOBJNM = s_characteristic.
append lt_line-MAPNAME to lt_tab.
lv_count = lv_count + 1.
ENDIF.
endselect.
ENDIF.
endselect.
ENDIF.
endselect.
sort lt_tab by MAPNAME.
delete adjacent duplicates from lt_tab comparing MAPNAME.
DIRECTORY represents path where file is stored .
lc_DIRECTORY = '/interfaces/EDW/data/CSM/'.
CONCATENATE 'EDW Queries by Characteristic -' SY-DATUM
'.txt' into P_FILE SEPARATED BY SPACE.
CONCATENATE lc_DIRECTORY P_FILE into FILENAME.
Opening the Log File
OPEN DATASET FILENAME FOR OUTPUT IN TEXT MODE
ENCODING DEFAULT.
IF SY-SUBRC NE 0.
WRITE: 'File cannot be opened. Reason:'. ", D_MSG_TEXT.
EXIT.
ENDIF.
CONCATENATE 'System Date -' SY-DATUM 'YYYYMMDD' into lc_date
SEPARATED BY SPACE.
CONCATENATE 'EDW System -' SY-SYSID into lc_syst
SEPARATED BY SPACE.
TRANSFER lc_date TO FILENAME.
TRANSFER lc_start_time TO FILENAME.
TRANSFER lc_syst TO FILENAME.
Queries for the parameters
loop at gi_data into lt_line.
loop at lt_tab into lt_line.
TRANSFER lt_line TO FILENAME.
endloop. "Query Loop
Closing the Log File
CLOSE DATASET FILENAME.We have successfully created an ABAP program to do this.
Thank you.
Simon
*& Report ZBW_FIND_CHARACTERISTICS_QUERY
SAP Consulting BW Tools:
*& Find Characteristics in BEx Queries using ABAP
*& List of infoobjects used in a Query
*& Developer: WBHADS 07/06/2011
REPORT ZBW_FIND_CHARACTERISTICS_QUERY.
PARAMETER: CHARACT LIKE rszrange-IOBJNM.
PARAMETER: VARIABN LIKE RSZGLOBV-VNAM.
DATA: query_name TYPE RSZCOMPID.
DATA: s_varname TYPE RSZGLOBV-VNAM,
s_varnameu TYPE RSZGLOBV-VARUNIID.
DATA: s_characteristic LIKE rszrange-IOBJNM.
DATA: lv_count TYPE i.
DATA: lv_count1 TYPE i.
DATA: lv_count2 TYPE i.
Data Declaration
DATA: D_MSG_TEXT(50).
DATA: lc_DIRECTORY(30) TYPE c.
DATA: P_FILE(128).
DATA: FILENAME(128).
DATA: lc_query(60) TYPE c.
DATA: lc_date(30) TYPE c.
DATA: lc_time(30) TYPE c.
DATA: lc_start_time(60) TYPE c.
DATA: lc_syst(30) TYPE c.
DATA: lc_exception(120) TYPE c.
RSZELTDIR Directory of the reporting component elements
RSZELTTXT Texts of reporting component elements
RSZELTXREF Directory of query element references
RSRREPDIR Directory of all reports (Query GENUNIID)
RSZCOMPDIR Directory of reporting components
RSZRANGE Selection specification for an element
RSZSELECT Selection properties of an element
RSZELTDIR Directory of the reporting component elements
RSZCOMPIC Assignment reuseable component <-> InfoCube
RSZELTPRIO Priorities with element collisions
RSZELTPROP Element properties (settings)
RSZELTATTR Attribute selection per dimension element
RSZCALC Definition of a formula element
RSZCEL Query Designer: Directory of Cells
RSZGLOBV Global Variables in Reporting
data: gi_data like rszrange occurs 0 with header line.
Determine the queries
tables:
RSZELTTXT,
rszeltdir,
rszeltxref,
rszrange.
data: begin of lt_line occurs 0,
ELTUID like RSZELTDIR-ELTUID, "char 25
MAPNAME like RSZELTDIR-MAPNAME, "char 30
TXTLG(60) TYPE c,
end of lt_line.
data: begin of lt_line1 occurs 0,
SELTUID like rszeltxref-SELTUID, "char 25
TELTUID like rszeltxref-TELTUID, "char 25
LAYTP like rszeltxref-LAYTP,
end of lt_line1.
data: begin of lt_line2 occurs 0,
ELTUID like rszrange-ELTUID, "char 25
IOBJNM like rszrange-IOBJNM,
LOW like rszrange-LOW,
LOWFLAG like rszrange-LOWFLAG,
end of lt_line2.
data: begin of lt_line3 occurs 0,
VARUNIID like RSZGLOBV-VARUNIID, "char 25
VNAM like RSZGLOBV-VNAM,
IOBJNM like RSZGLOBV-IOBJNM,
end of lt_line3.
data: lt_tab like standard table of lt_line initial size 0.
data: lt_tab1 like standard table of lt_line1 initial size 0.
data: lt_tab2 like standard table of lt_line2 initial size 0.
data: lt_tab3 like standard table of lt_line3 initial size 0.
data: lt_line20(128) TYPE c. " LIKE RSZELTXREF-SELTUID.
data: lt_line30(128) TYPE c. " LIKE RSZELTXREF-SELTUID.
type-pools:
rs, "BW global
rrms, "message server
rsz, "Qry definition global
rzx0, "Qry RFC interface
rzd1. "Qry definition database
DATA: l_target_compid TYPE rszcompdir-compid,
l_t_uid_server TYPE rzx0_t_uid_server,
l_s_uid_server TYPE rzx0_s_uid_server_x,
l_s_msg TYPE rs_s_msg,
l_s_compdir TYPE rzx0_s_compdir,
l_s_eltdir TYPE rzx0_s_eltdir,
l_s_elttxt TYPE rzx0_s_elttxt,
l_t_eltdir TYPE rzx0_t_eltdir,
l_t_eltprop TYPE rzx0_t_eltprop,
l_t_eltprio TYPE rzx0_t_eltprio,
l_t_eltattr TYPE rzx0_t_eltattr,
l_t_eltxref TYPE rzx0_t_eltxref,
l_t_compdir TYPE rzx0_t_compdir,
l_t_compic TYPE rzx0_t_compic,
l_t_select TYPE rzx0_t_select,
l_t_range TYPE rzx0_t_range,
l_t_calc TYPE rzx0_t_calc,
l_t_elttxt TYPE rzx0_t_elttxt,
l_t_cell TYPE rzx0_t_cel.
data: c_subrc LIKE sy-subrc.
data:
l_GENUNIID LIKE RSRREPDIR-GENUNIID,
l_COMPID LIKE RSZCOMPDIR-COMPID,
l_COMPUID LIKE RSZCOMPDIR-COMPUID,
I_OBJVERS LIKE RSZCOMPDIR-OBJVERS,
I_WITH_TEMPLATES LIKE RSGENERAL-BOOL,
I_BY_INFOCUBE LIKE RSZCOMPIC-INFOCUBE,
I_TEMPLATE_TYPE LIKE RSZELTDIR-DEFTP,
I_VARIABLE_TYPES LIKE RSZHELP-VARTYPES,
I_VARIABLE_INFOOBJECT LIKE RSZGLOBV-IOBJNM,
I_LANGUAGE LIKE SY-LANGU,
I_USE_BUFFER TYPE RS_BOOL.
FIELD-SYMBOLS:
<l_s_eltdir> TYPE rzx0_s_eltdir,
<l_s_compdir> TYPE rzx0_s_compdir,
<l_s_compic> TYPE rzx0_s_compic,
<l_s_eltxref> TYPE rzx0_s_eltxref.
DATA:
l_t_eltxref_seltuid LIKE rszeltxref-seltuid,
l_t_eltxref_teltuid LIKE rszeltxref-teltuid,
l_t_eltxref_laytp LIKE rszeltxref-laytp.
s_characteristic = CHARACT.
Find instances of the Forecast/Budget Variable in queries
s_varname = VARIABN. "'ZE_BFC01'.
SELECT SINGLE VARUNIID from RSZGLOBV
INTO s_varnameu where VNAM = s_varname.
clear lt_line.
lv_count = 0.
lv_count2 = 0.
Loop through all the queries
select * from RSZELTDIR
into corresponding fields of lt_line
where DEFTP = 'REP'
and OBJVERS = 'A'.
l_COMPUID = lt_line-ELTUID.
l_GENUNIID = lt_line-MAPNAME.
Filter by the Z Developed Queries
IF l_GENUNIID CP 'Z*'.
clear lt_line20.
Get the Query Long Name
select single * from RSZELTTXT
into lt_line20
where eltuid = lt_line-eltuid "rszeltdir-eltuid
and objvers = 'A'
and langu = 'EN'.
Find all the query elements within the query using function module
Get the tables of source query and its components
CALL FUNCTION 'RSZ_X_COMPONENT_GET'
EXPORTING
i_genuniid =
I_COMPID =
I_COMPUID = l_COMPUID
IMPORTING
e_subrc = c_subrc
TABLES
c_t_eltdir = l_t_eltdir
c_t_eltprop = l_t_eltprop
c_t_eltprio = l_t_eltprio
c_t_eltattr = l_t_eltattr
c_t_eltxref = l_t_eltxref.
c_t_compdir = l_t_compdir
c_t_compic = l_t_compic
c_t_select = l_t_select
c_t_range = l_t_range
c_t_calc = l_t_calc
c_t_elttxt = l_t_elttxt
c_t_cell = l_t_cell.
LOOP AT l_t_eltxref ASSIGNING <l_s_eltxref>.
l_t_eltxref_seltuid = <l_s_eltxref>-seltuid.
l_t_eltxref_teltuid = <l_s_eltxref>-teltuid.
l_t_eltxref_laytp = <l_s_eltxref>-laytp.
IF l_t_eltxref_laytp = 'FIX' OR l_t_eltxref_laytp = 'COL' OR l_t_eltxref_laytp = 'ROW' OR l_t_eltxref_laytp = 'AGG'.
Determine if the Query Element is matching to the characteristic
select * from rszrange
into corresponding fields of lt_line2
where eltuid = l_t_eltxref_teltuid "rszeltxref-teltuid
and objvers = 'A'.
Determine the variable name or master data value
IF lt_line2-LOWFLAG = 1.
Populate tables if match for Characterisic
IF lt_line2-IOBJNM = s_characteristic.
move lt_line-ELTUID to lt_line-ELTUID.
move lt_line-MAPNAME to lt_line-MAPNAME.
move lt_line2-LOW to lt_line-TXTLG.
append lt_line to lt_tab.
lv_count = lv_count + 1.
clear lt_line2-LOW.
ENDIF.
ELSE.
select * from RSZGLOBV
into corresponding fields of lt_line3
where VARUNIID = lt_line2-LOW
and objvers = 'A'.
Populate tables if match for Characterisic
IF lt_line2-IOBJNM = s_characteristic.
move lt_line-ELTUID to lt_line-ELTUID.
move lt_line-MAPNAME to lt_line-MAPNAME.
move lt_line3-VNAM to lt_line-TXTLG.
append lt_line to lt_tab.
lv_count = lv_count + 1.
clear lt_line3-VNAM.
ENDIF.
endselect.
ENDIF.
endselect.
ENDIF.
clear l_t_eltxref_seltuid.
clear l_t_eltxref_teltuid.
clear l_t_eltxref_laytp.
ENDLOOP.
ENDIF.
clear lt_line-ELTUID.
clear lt_line-MAPNAME.
clear lt_line-TXTLG.
endselect.
sort lt_tab by MAPNAME.
delete adjacent duplicates from lt_tab comparing ELTUID MAPNAME TXTLG.
DIRECTORY represents path where file is stored .
lc_DIRECTORY = '/interfaces/EDW/data/CSM/'.
CONCATENATE 'EDW Queries by Characteristic -' SY-DATUM
'.txt' into P_FILE SEPARATED BY SPACE.
CONCATENATE lc_DIRECTORY P_FILE into FILENAME.
Opening the Log File
OPEN DATASET FILENAME FOR OUTPUT IN TEXT MODE
ENCODING DEFAULT.
IF SY-SUBRC NE 0.
WRITE: 'File cannot be opened. Reason:'. ", D_MSG_TEXT.
EXIT.
ENDIF.
CONCATENATE 'System Date -' SY-DATUM 'YYYYMMDD' into lc_date
SEPARATED BY SPACE.
CONCATENATE 'EDW System -' SY-SYSID into lc_syst
SEPARATED BY SPACE.
TRANSFER lc_date TO FILENAME.
TRANSFER lc_start_time TO FILENAME.
TRANSFER lc_syst TO FILENAME.
Queries for the parameters
loop at lt_tab into lt_line.
TRANSFER lt_line TO FILENAME.
endloop. "Query Loop
Closing the Log File
CLOSE DATASET FILENAME. -
While copying Roll Budget to STAT Budget I am getting error
Hi Guys
I am copying Roll Budget to STAT using the e T code YCT02 ( ROLL to STAT budget )
In YCT02 I have entered the below data in the screen .
Budget version - 2012010ROLL
Budget version Static -2012000STAT
Controlling Area u2013 2000
Company code u2013SE05
While executing I am getting below error message.
Data record is locked by data slice BUDGET VERSIONS
Message no. UPC220
Diagnosis
You want to change data for which a change is generally forbidden. In the definition of the planning area, it was defined which data slices could not be planned. The combination of characteristic values, which you want to change, is blocked by data slice BUDGET VERSIONS.
Procedure
Change the definition of the planning function, which you are just executing, or adapt the definition of the data slice.
Kindly let me know where I need to go and change the planning function (which T code )
Whether my inputs are correct or not .Please confirm .How to resolve this issue.
Regards
AravindThis appears to be a BPS question and therefore not related to BCS. If so there is likely a different forum for such queries.
-
Budget availibilty control against Goods Issue
Hi all,
can anybody help me in the following issue....
in a budgeted/released cost project (WBS elements only):
i set up a budget profile (overall & annual years, and availability control against annual values), and assigned it to the project
i configured the availability control in order to issue a warning message when exceeding 110% from the budget against all activities (target group: ++)
Availability Control is active
However,
When i made a Goods Issue for a particular WBS element has the status "REL / BUDG / AVAC" with amount more than110% of the WBS element budget, the system permit the transaction and does NOT issue the warning message.... WHY??
Also, when i run CJI3 report, i find the amount of the Goods Issue in the actual cost of the WBS element,
NOTE: the availability control is working well against Purchase Orders, and FI direct postings FB60Search the forum before posting such basic queries. You will find your answer.
-
Statistical WBS elements-Budgeting and Use
Hi Guys,
Need some KT from you all regarding Statistical WBS Elements.My queries are
1.Can a statistical WBS element be budgeted? If yes how are the Budget distributed to those below.
2..If a level 2 WBS is marked statistical and it has 3 WBS under it which are Acc asignment element then how is the budget distributed.
3.can you provide some good example of the use of Statistical WBS element?
Thanks in Advance
sskHi Shourya,
1. As mentioned above Statistical WBS can be budgeted like any operative project and the budget can further be divided into lower level WBS elements and Availaility Control can be activated on these.
2. Again as stated above the budget distribution is normal. For ex- If a level 2 WBS is statistical and level 2's underneath that are real WBS.
3. We can use the Statistical WBS for capital projects. For ex- We can assign a Statistical WBS in Master record of AUC for Availability control of budget for Capital spending. And then when we create a PO with Account Assignment category A with same AUC, budget control (Availability control) is activated through the statistical WBS.
Someone might ask but why we want to use WBS for budget control why not I/O? It's because it provides more visibility over different departments (divided by structure). And via this process we can see all our PO's on AUC directly from Asset Explorer (AW01N).
Hope it helps.
Thanks,
BS -
What design to split bank transactions into more detail? (in budget database)
Current Design:
* I have a budget/finance tracking database I’m building
* It has a BANK_TRANSACTIONS table where I load in transactions from various bank accounts
* It there has an ALLOCATIONS table to allocation a bank transaction to a business area (e.g. allocate the phone bill item 50% to “personal” and 50% to “work"
Question: What would be the best database design approach to be able to breakout a bank transaction into smaller items? For example there may have been really two (2) items purchased and turn up in a single bank account. I still want
to maintain the correctness of imported bank transactions themselves.
For example some ideas that come to mind:
a) add new detailed transactions to BANK_TRANSACTIONS for the detail, with a new column “REPLACED” so the the original bank transaction is there but can be marked as “replaced” so it doesn’t get used in queries/reports. Then another RELATIONS table to
relate the new detailed record to the parent original bank transactions. Not sure if this would be considered good design or not
b) have a separate table for BUSINESS_TRANSACTIONS so the detailed transaction go here. But then 95% of the items in the BANK_TRANSACTIONS would just need to be duplicated in the BUSINESS_TRANSACTION table??
Other ideas???
In terms of usage/output would like have the concept of being able to show:
a) maintain valid true bank transactions that are valid, as it is from there you can see your overall bank balance (across multiple accounts) across time,
b) in terms of reporting for expense categories / taxable items etc need the detailed BUSINESS_TRANSACTION so to speak...Personally I would create a transaction header table that would hold the date and total amount of the transaction and any other header data and a detail table for the detail.
Andy Tauber
Data Architect
The Vancouver Clinic
Website | LinkedIn
This posting is provided "AS IS" with no warranties, and confers no rights. Please remember to click
"Mark as Answer" and "Vote as Helpful" on posts that help you. This can be beneficial to other community members reading the thread. -
Reg : Project wise Budget.
Dear All,
Is it possible to give Proejct wise Budget estimation using Budget setup.
Waiting for your valuable response
thanks & regards
Venkatesh NHello Rajesh
I had the same requirement from business than you: to develop a solution which allows business to limit document addition basing in project budget limits. After much thinking and thanks to different tips from people on this forum (Nagarajan, Gordon Du, Kennedy T and Johan Hakkesteegt are some of the ones who most have help me on this) I have been able to develop a solution which meets business requirements.
First thing that you have to consider is which document types you want to be blocked from adding when a project budget is going to be exceeded. At our case we have decided to check Draft purchase orders and Purchase invoices addition.
Next step would be to determine the calculation to estimate the budget for a concrete project. This is the calculation that system has to do each time a Draft PO or an invoice is going to be added on system:
Project Budget > Open Draft POs + Open POs + Open PO GR + Purchase Invoices - Open Goods returns
Basing on it our solution consist on:
6 UDF in OPRJ table: one for indicating the budget of each project, the other five for each variable on the budget limit calculation (Open Draft POs, Open POs...)
5 querys to use it as formatted searches in those UDF OPRJ fields, so each one of this fields displays the correct cumulative value. For example Open POs UDF has a query as FMS which calculates the cumulative amount for each project on open purchase orders and so on.
5 TN querys intended to update automatically the OPRJ UDF values when a document is added.
2 TN querys intended to check if the addition of certain documents is going to cause a project overrun. One query is for checkin Draft PO docs addition and the other to check Purchase invoices addition
A UDT to include every project whose budget has to be checked. (Business doesn't need to limit all projects).
I can share the queries in case you think that this solution could be useful for your needs.
Thanks and regards -
Hi,
1. Do we have to manually assign all costs to sales order items? Even though the Sales Order Items are linked to Project Tasks, some costs do not get automatically assigned to the sales order items. What is the impact of not manually assigning these tasks? We plan to use Cost to Cost Project POC for revenue recognition.
2. For Cost to Cost POC, how do I assign 'Planned Costs' to Sales Order Items? I do not see an option to do so.
3. Is it easier to just use Cost to Cost Project POC and let project managers manage the forecast budget in the Project Management WoC? Or do they have to actively manage project cost forecasts at the Sales Order WoC? What is best practice?
4. It is possible to print multiple invoices from the system at once? For example, how do we print all outstanding invoices for a particular customer at once? It appears we have to manually select individual invoices and go to Ouput History to print invoices. Surely there must be an easier way?
ThanksHello Raman
Kindly find the answers related to Revenue Recongition Queries:
1. You don't need to manually assign costs to the Sales Order Items. When you link the sales order item to the Project header or a Project Task, system will automatically create the assignment rules.Then all the expenses assigned to the Project Header or Project Task will be automatically assigned to the Linked sales order item. However if you have assigned the Project Task in the Sales Order Item and you record your expenses against the Project header, then system won't be able find the linked Sales Order Item.Hence cost will be assigned.You can manully maintain rules for such cases and click on Apply Assignement Rules to determine the sales order item for all the unassigned Expense items.
2. For the Product -delivery-based Items,cost will be picked from valuation tab of the product master data.
For project based items, the assumption is that the cost Calculation is done by the project lead and entered in Sales order manually in the Pricing and Invoicing tab.
Thanks
Parveen Kumar -
Staff Budget / Actual Variance report
Hi,
What is 'Staff Budget / Actual Variance report'.
Is there any Business Content Reports avaliable for this purpose.
Please provide me information on Which Data Target 9Technical Name) i can do this report.
ThanksHi,
This InfoCube contains all costs and quantities on WBS elements (plan and actual using delta extraction, commitment, budget, accruals) that were transferred from the source system(s).
You can also use this InfoCube to access your own fields. For more information, see Customer-Defined Fields.
For background information on the concept of InfoCubes, see InfoCubes in Controlling.
Higher-Level Objects
Queries
The following queries can access this InfoCube:
· 0WBS_C11_Q0001: WBS Element (Detail): Plan/Actual
· 0WBS_C11_Q0002: WBS Elements (List): Budget/Actual/Commitment
· 0WBS_C11_Q0003: WBS Elements (List): Overall Planning/Actual/Commitment
· 0WBS_C11_Q0301: PSM: WBS Element (Detail): Plan/Actual
· 0WBS_C11_Q0002: PSM: WBS Elements (List): Budget/Actual/Commitment
Notes on Query Definition
If you attempt to sum across different valuation views and currency types, your query results will be incorrect. Summing across different values of these characteristics does not provide useful information.
InfoSources
· 0CO_OM_WBS_1: WBS Elements: Costs
· 0CO_OM_WBS_2: WBS Elements: Budget
· 0CO_OM_WBS_3: WBS Elements: Overall Plan
· 0CO_OM_WBS_6: WBS Elements: Actual Costs Using Delta Extraction
Characteristics
InfoObject
Description
0WBS_ELEMT
PSP element
0COSTELMNT
Cost element
0CO_AREA
Controlling area
0CURTYPE
Currency type
0PIOBJSV
Partner object type
0PIOVALUE
Partner object
0METYPE
Key figure category
0VERSION
Version
0VTDETAIL
Details of value type
0VTYPE
Value type for reporting
0DB_CR_IND
Sender/receiver indicator
0VALUATION
Valuation view
0VTSTAT
Statistics indicator for value type
0FM_AREA
FM area
0FUND
Fund
0FUNC_AREA
Functional area
0GRANT_NBR
Grant
0PFUND
Partner fund
0PFUNC_AREA
Partner functional area
0PGRANT_NBR
Partner grant
Navigation Attributes
The following navigation attributes have been activated. This is a sample selection. You are free to activate additional attributes, or deactivate attributes to improve performance.
InfoObject
Description
0WBS_ELEMT__0CO_AREA
Controlling area
0WBS_ELEMT__0PROFIT_CTR
Profit center
Time Characteristics
InfoObject
Description
0FISCPER
Fiscal year/period
0FISCVARNT
Fiscal year variant
0FISCPER3
Posting period
0FISCYEAR
Fiscal year
· The characteristics fiscal year (0FISCYEAR) and posting period (0FISCPER3) are filled by the fiscal year period field (0FISCPER) in the InfoSource.
· The characteristics and the cost element are not filled for overall budgets or overall plan values. The posting period and the cost element characteristic are not filled for annual budgets or annual plan values. This provides values with the format 000.YYYY (where YYYY is the fiscal year), particularly for the 0FISCPER characteristic.
Key Figures
InfoObject
Description
0AMOUNT
Amount
0QUANTITY
Consumption quantity
Restricted Key Figures
The restricted key figures are divided into several groups.
The basic key figures cannot be used without restricting some of the characteristics. For this reason you should use only the supplied restricted key figures in queries you have defined yourself, or analyze the supplied restricted key figures and modify them to suit your requirements.
InfoObject
Restriction
Costs Group
Data for all restricted key figures of the group
Key figure category = 1000 (costs and associated quantities)
Valuation view = 0 (legal valuation)
Version = 0 (current variant)
Key figure = 0AMOUNT (amount)
0WBS_C11_RK0002 Actual costs
Sender/receiver = S (debit posting or receiver debit)
Value type = 10 (actual)
0WBS_C11_RK0001 Planned costs
Sender/receiver = S (debit posting or receiver debit)
Value type = 20 (plan)
0WBS_C11_RK0006 Settled costs
Sender/receiver = H (credit posting or sender debit)
Value type = 10 (actual)
0WBS_C11_RK0003 Commitments
Sender/receiver = S (debit posting or receiver debit)
Value type = 40 (commitment)
0WBS_C11_RK0004 Budget (per fiscal year)
Value type = 50 (budget)
0WBS_C11_RK0005 overall planning (per fiscal year)
Value type = 20 (plan)
Revenues Group
Data for all restricted key figures of the group
Sender/receiver = H (credit posting or sender debit)
Key figure category = 1001 (costs and associated quantities)
Valuation view = 0 (legal valuation)
Version = 0 (current variant)
Key figure = 0QUANTITY (quantity)
0WBS_C11_RK0008 Actual revenue
Value type = 10 (actual)
0WBS_C11_RK0007 Planned revenue
Value type = 20 (plan)
Quantities Group
Data for all restricted key figures of the group
Sender/receiver = S (debit posting or receiver debit)
Key figure category = 1000 (costs and associated quantities)
Valuation view = 0 (legal valuation)
Version = 0 (current variant)
Key figure = 0QUANTITY (quantity)
0WBS_C11_RK0021 Actual consumption quantity
Value type = 10 (actual)
0WBS_C11_RK0022 Plan consumption quantity
Value type = 20 (plan)
WIP Group
Data for all restricted key figures of the group
Sender/receiver = S (debit posting or receiver debit)
Key figure category = 1410 (inventory (WIP))
Valuation view = 0 (legal valuation), version = results analysis version
Value type = 80 (results analysis)
Key figure = 0AMOUNT (amount)
0WBS_C11_RK0011 WIP: Revenue in excess of billings
Detail for value type = 10
0WBS_C11_RK0009 WIP: Work in process
Detail for value type = 1, 2
0WBS_C11_RK0010 WIP: Cannot be activated
Detail for value type = 3
Results Group
Data for all restricted key figures of the group
Sender/receiver = S (debit posting or receiver debit)
Key figure category = 1400 (accrual calculation)
Valuation view = 0 (legal valuation)
Version = accrual version
Value type = 80 (results analysis)
Key figure = 0QUANTITY (quantity)
0WBS_C11_RK0018 Revenue affecting net income
Detail for value type = 12
0WBS_C11_RK0014 Cost of sales
Detail for value type = 3, 4
0WBS_C11_RK0015 Cost of sales (cannot be capitalized)
Detail for value type = 5
0WBS_C11_RK0017 Realized loss
Detail for value type = 11
0WBS_C11_RK0012 Reserves for imminent losses
Detail for value type = 1
0WBS_C11_RK0013 Reserves for imminent losses - inclusion cannot be capitalized
Detail for value type = 2
0WBS_C11_RK0016 Loss
Detail for value type = 10
Reserves Group
Data for all restricted key figures of the group
Sender/receiver = S (debit posting or receiver debit)
Key figure category = 1420 (reserves)
Valuation view = 0 (legal valuation), version = results analysis version
Value type = 80 (results analysis)
Key figure = 0AMOUNT (amount)
0WBS_C11_RK0019 Reserve: unrealized costs
Detail for value type = 1, 2
0WBS_C11_RK0020 Reserve: unrealized costs, not capitalized
Detail for value type = 3
Units
InfoObject
Description
0CURRENCY
Currency key
0UNIT
Unit of measure
Hareesh -
Breaking up of Budget into quarters and displaying in Bex
hi All.
I am new to SAP BW.
Trying to create some queries.
In my BW System we have a keyFigure called Budget and now the requirement is to Break it up into Respective quarters and display it.
we have time characteristics as
1.Fiscal Year
2.Fiscal Year/ Period
3.Fiscal Year Variant
4.Posting Period
so, do i create a RKF and if yes, which time characteristics to be used.
any kind of help would be great!!
thanks a lots
ArunHi Rohini,
Thanks very much your answer really helped
but still i want to understand some more things.
Previosly when i said tht i created variables for each quarter, i created the Fiscal Year variables itself.
<i>Instead create 4 Fiscal Period Var</i>
does this mean the same. what i did was Created New RKF --> Select the KF and the select the Fiscal Period --> Restrict the Fiscal Year. Then created 4 new Variable's with default variables with following properties
1.Processing By : User Entry / Default Value
2. Characterisic: Fiscal Year / Period
3. variable Represent : Interval
4. Variable Entry is : Optional
and ticked Ready for input.
Then I selected Default Value : 001/2006 To Default Value as 003/2006 for FVAR1 and 004/2006 To 006/2006 for FVAR2 and so on for other two quarters.
Now Stil when the query runs it asks for the Four varibles input. But the default values are same as I mentioned and I think its ok.
The concerns are
1.is the procedure correct?
2. is there any other way so that Bex doesnt prompt the user to enter the values?
3.Now we are taking the specefic case of Year 2006, ( i.e we are hardcoding in the query ) now if the user wants to have the quarter wise budget for 2007 this wont help rite.
what can be done to solve these..
Thanks in advance
Arun -
Hi,Please can any one help me how to combine the following two queries...
Query 1
SELECT distinct GCC.segment1,GCC.segment2,GCC.segment3,GCC.segment4,GCC.segment5,
GCC.segment6, DECODE(gcc.segment6,NULL,'',SUBSTR(apps.gl_flexfields_pkg.get_description_sql( gcc.chart_of_accounts_id,6,gcc.segment6),1,40))
DETAILS, sum(gje.accounted_dr) BUDGET_2014
FROM gl_je_lines gje, gl_code_combinations gcc
WHERE gje.code_combination_id(+)=gcc.code_combination_id
and je_header_id in (select je_header_id from gl_je_headers where
BUDGET_VERSION_ID in (select Bv.budget_version_id from gl_budget_versions Bv , gl_balances bal where BUDGET_NAME = 'BUDGET 2014_2' and actual_flag= 'B'))
and gcc.segment3 between 3100000000 and 3199999999 and gcc.segment2 =31
group by GCC.segment1,GCC.segment2,GCC.segment3,GCC.segment4,GCC.segment5,
GCC.segment6, DECODE(gcc.segment6,NULL,'',SUBSTR(apps.gl_flexfields_pkg.get_description_sql
(gcc.chart_of_accounts_id,6,gcc.segment6),1,40))
Query 2
SELECT distinct GCC.segment1,GCC.segment2,GCC.segment3,GCC.segment4,GCC.segment5,
GCC.segment6, DECODE(gcc.segment6,NULL,'',SUBSTR(apps.gl_flexfields_pkg.get_description_sql( gcc.chart_of_accounts_id,6,gcc.segment6),1,40))
DETAILS,sum(gje.accounted_dr) BUDGET_2011
FROM gl_je_lines gje, gl_code_combinations gcc
WHERE gje.code_combination_id(+)=gcc.code_combination_id
and je_header_id in (select je_header_id from gl_je_headers where
BUDGET_VERSION_ID in (select Bv.budget_version_id from gl_budget_versions Bv , gl_balances bal where BUDGET_NAME = '2011 BUDGET' and actual_flag= 'B'))
and gcc.segment3 between 3100000000 and 3199999999 and gcc.segment2 =31
group by GCC.segment1,GCC.segment2,GCC.segment3,GCC.segment4,GCC.segment5,
GCC.segment6, DECODE(gcc.segment6,NULL,'',SUBSTR(apps.gl_flexfields_pkg.get_description_sql
(gcc.chart_of_accounts_id,6,gcc.segment6),1,40))fermusic said...
"use I/O plugin in the Master 1-2 Output ... you will be able to route the signal to 3-4... or wherever you need.... just Bypass I/O plugin to return at 1-2 OUTs"
Thank you!
That's exactly how it works.
With the output assigned to 3-4 and input to 1-2, toggling the Bypass button switches the output.
And I don't have to replicate processors on the output 3-4 bus.
Very cool.
Cheers. -
Responsive Design and @media queries
I thought my HTML/CSS guns were loaded and good to go; and then I started reading about responsive web design!
If I have a rule declared in the main body of my CSS and add a media query what happens to the existing rule?
It looks to me with my experimenting so far that if I take a style in the main section and duplicate that with some edits for a smaller width, I have to then remove it from the original and replicate it in another @media query. Is that correct?
So if I have this:
header {
background: url("images/headerhand.png") no-repeat scroll left top transparent;
height: 300px;
margin: 40px auto 0;
min-height: 300px;
text-align: left;
width: 100%;
I need to put this in a @media query for the below break point:
header {
background: none;
height: 300px;
margin: 40px auto 0;
min-height: 300px;
text-align: left;
width: 100%;
I then take the rule out of the main section of my style sheet and put that in another media query for the above break point.
So if I have a header element with background image and color, and border-radius and whatever but only want to lose the background image at a certain break point, I then need two @media queries one for below the break point and one for above and then remove the whole rule from the main section of the site?
Oh my, that was so complicated, I am not sure I even understand my own question!
Martin
PS "Mobile First" is starting to make a lot of sense!osgood_ wrote:
pziecina wrote:
Hi Os
As an example, (using Jennys Chocolate Cookies) would it not make more sense to design a mobile only web site, complete with geolocation that shows the nearest outlet selling the cookies?
So you are saying forget the desktop monster (assign that to the bin) and convince the client mobile is the way to go? Even if that is the case it still seems that you're going to need two or three different design set ups to satifsy the majority of devices, which means more expense, right? Plus from what I've seen the information all crushed into a 400px wide screen looks a bit shite, no?
Reply -
No I am saying that one should offer the type of site/service that best suits the clients needs, be this a desktop, responsive or mobile only web site, or even telling the client that an advert in yellow pages would be better.
pziecina wrote:
The same may also apply to a restaurants web page, after all it is often the directions to the restaurant, and its proximity to oneself that are important when one is looking for somewhere to go out for a meal, is it not?
Can't see what location or direction has to do with anything or proximity to oneself. I look in yellow pages if I need a restaurant or I identify it on the computer before I go out........but then again I'm old so maybe younger people do all this whilst they are out. So we come down to demographics - cut out whatever section of society at your own peril. I guess a nightclub would be a better example, can't see many 50 plus year olds wanting to know where one of those are on the move.
Reply -
So you are out and about, or driving home and suddenly decide that you would like to go for an Indonesian meal, do you now get the yellow pages out?
BTW - I am over 60.
pziecina wrote:
As for testing on mobile devices, a good testing set-up now costs less than £400, ($600) and most items one will already own.
They are -
1 A smartphone, (most people have one now and a good budget smartphone can be purchased for under £70.00)
2. A tablet device, (An budget android device now cost about £120.00, and can also be used as an e-reader)
3. A iPod-Touch (If it works on this it will also work exactly the same on the iPhone)
Well I guess you have to factor in the cost of getting connected to the net on these mobile devices to check everything. I dunno if anyone in the UK offers a reasonable monthly package whereby you can be connected to all these devices 24/7 and not rack up any additional charge per minute.
Reply -
Use Shadow and your home wifi network, extra cost nothing.
PZ -
Adding budget Facts at higher levels to other Facts
Hi,
Hoping someone can advise.
I have a table of budget figures at the week and vessel level and I need to incorporate them into my business model but not sure how to do it. I have a time dimension year - period - week - day and a corridor dimension seacorridor - corridor - vessel - route. I want the budget figure to be able to sum up to the levels above where it is available.
I have tried setting the measure with the levels being at vessel and week but it doesn't seem to be working.
I would appreciate any suggestions.
Thanks
PatriciaPete,
Thanks a million you have been extremely helpful - this has worked. I just have a couple of queries in relation that you might be able to help with.
1) I have a report that uses some Journey facts plus budget facts i.e. 'No of Car Journies' (from JourneyFacts) with 'Car Volume' ( from budgetFacts) I need to filter my 'No of Car Journies' to just checked in Journies - the field checked in is in a Journey Details dimension table with no hierarchy associated. If I add this to the report the 'Car Volume' budget figures become null. Can you help ? Perhaps I need to add a checked in Flag to my budget table and join this to the journey details table ? I can add this filter to the actual columns in the report or at the BMM layer but this would involve a bit work on my part as I have quite a few facts and there would be other variations of filters. Just thought you might know another way
2) I have an ago function using yearweek level ( I needed this so that I can compare week numbers as oppposed to week date ranges which is how the year ago function works). If I have a total on year or period in my pivot table I get the below error -
State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 22036] Level in AGO function (YearWeek) must be a rollup of (or equivalent to) the measure level (Year). (HY000)
3) If I use period in my report it defaults back to the previous wrong answers ( i.e. multiplies by number of days) and in my NQQuery log I can see if picking this up from the normal calendar. If I used yearperiod (which is the Chronological Key) it works fine. Therefore I have to use YearPeriod for my drilldown. This ins't really a big deal - it is just for display purposes it would be nice to use period.
Thanks again for you time,
Patricia
Maybe you are looking for
-
Creating backup Job with DBMS_SCHEDULER
Hello, Can someone please help me out here: I'm using Oracle10g release 1 on windowsXP I'm trying to create a backup job with dbms_scheduler and it's not working. This is what I did: I created a job as follows: BEGIN dbms_scheduler.create_job ( job_n
-
> The option to create a new folder is available, however when I click create, no new folder is created. > I have 5 separate email accounts I am running, it is only 1 specific account which I can't create new folders for. > I used to be able to creat
-
Question about ejbRemove and bmp
hi, do I need to implement all of the ejbXxx methods in a bmp, what I see is that I call findByPrimaryKey on a bmp and then remove() but if then I try to access it again it's still there. My ejbRemove is empty at the moment, but I thought that the co
-
my phone crashed while away. apple backed the phone on a friends comp (pic/MMS/SMS/contacts). When I get home and use my comp backup to add music, etc will I lose SMS/pic, etc? THANKS!!!
-
Wrong Hostname reference in SM51
Dearl All, We have one BI server where in we have installed the below application servers: 1. SAP BI Central Instance (Host1) 2. SAP Application Server 1 (Host2) 3. SAP Application Server 2 (Host3) When I go in TCODE SM51 and click on HOST3 , syst