Addition vs. Overwrite for Update Type in Update Rules
I have an ODS that is updated by transaction data. A key figure in the ODS is set to "Addition" (not overwrite) in the update rules. My question is, if a transaction record is changed in ERP - only a characteristic in the record, not the key figure, when I load the ODS using a delta extraction, will the key figure be added again to the existing value in the ODS? or will the key figure match ERP?
If update type "addition" does not work with delta extractions, what is it used for?
Many thanks for your help.
Hi,
it depends what the ERP datasource will send as delta for this KF:
- if it was 10, the document is changed to 12 and your delta sends 2 then this wroks peoperly. Usually the delta will send -10 +12, which is the same.
- if the delta just resends the "after image", the 12, the your KF should be overwrite since an add would mess it up.
Your last Q is answered with the first point, right?
hope this helps...
Olivier.
Similar Messages
-
Routine for Update rule in cube
Hi Friends,
I have added a field to a cube, now i need to populate the same during the data is loading from the DSO to Cube. Inupdate rule since we will get only te key figures, is it possible to access the dimensions in the routine. Please help me in giving some coadings for the routine for update rule.
Thanks
PremHi,
one more suggestion..
create a end routine and update the key figures based on ur dimension values by useing resuly_package.
sample code:
[Transformation end routine|https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/203eb778-461d-2c10-60b3-8a94ee91cbfc]
thnks. -
Start routine for Update Rules
I need to write a start routine for the update rules for an DSO with main idea as follows:
I must compare the record that comes from the infopackage with the record that's already in my DSO. If the X date for the same 0PM_ORDER is the same as one in my DSO - do nothing
If the X date is previous to the X date in my DSO for the same 0PM_ORDER - the new record must be created and at the same time all the records with subsequent(later) X dates for this 0PM_ORDER must be deleted.
If the X date is later than the X date in my DSO for the same 0PM_ORDER - the new record must be created.Hi,
Find the below code.
DATA: BEGIN OF ITAB1,
ZDATE TYPE /BIC/DATE
END OF ITAB1.
SELECT zdate FROM /BI0/QEMPLOYEE INTO corresponding
fields
of ITAB1 where employee = SOURCE_FIELDS-EMPLOYEE.
IF ITAB1-ZDATE COMMUNICATE_STRUCT-DATE
RESULT = ITAB1-CLM_IPAA.
ENDIF.
ENDSELECT.
There will be an table for each DSO if you go for an manage DSO you will get three table i.e New,Active and Change Log take Active tables date field and compare with the communication structure that comes to routine.
The above example is just an example table will be different from DSO to DSO.
Let me know your thoghts.
Regards,
Shivu. -
User exit for update rule of info structure
Hi gurus,
Can anybody tell me how to implement a user exit of update rule for LIS info structure, for ex,S140.
Thanks
Eric xuThere is no user exit and we are not allowed to modify the update rules of the standard SAP info structures. However, you can create your own info structure with the same or similar configuration and then apply a formula or a requirement in the update definitions (MC25 transaction), as you please.
After that you can just turn off the update of S140 (in OMO1 transaction) and use your own info structure instead in MCSI transaction. -
Authorization Check for Update Rules Modify during Scheduling of InfoPackag
Hello Everyone....
We have recently upgraded our Testing Environment to NW2004s SP10, and the system is currently Non-Changeable and all the other changes have been brought in via transports.
After SGEN has completed, when I try to open up an existing InfoPackage and click on the "Start" button it gives me the "You have only authorization to display the "InfoProvider" name".
If it is the load into DSO it complains about Activity 23 not available for the Subobject UPDATERULE of the object S_RS_ODS and if it is an InfoCube it complains about Activity 23 again for the Subobject UPDATERULE of the object S_RS_ICUBE.
Which doesn't really make sense as the Activity 23 would allow the change to the Update Rules for the InfoProviders.
Please advice if there is any other Role or Profile which needs to be maintained or a system setting to avoid this Auth Check.
Also, the same when repeated in the Development environment shows the message "Generating the Update Program" in the status bar below and once that has completed, the extract works fine.
Please advice......
Any help would be really appreciated as we are kind of stuck on this issue.
Thanks
Dharma.Hi,
You should use transaction ST01 then you can see the objects asked for with the value needed. Also transaction SU53 gives you information about the object you want to use. The new transaction RSECADMIN with the tab analyses gives you information that is not in SU53 and releated to the data selection. If it is an analyses authorization problem add authorization object 0BI_ALL to a role in the autorisation object S_RS_AUTH. I think you can get the information you need this way.
Bye Jan -
Hi all,
I've heard rumours that SAP will stop support of updaterules in NW2004s in 2009. Then, only transformations will be supported and enhanced.
Have you heard this also and is it true.
Regards
OJ
Edited by: BW OJ on Feb 14, 2008 2:24 PMHi all,
I've heard rumours that SAP will stop support of updaterules in NW2004s in 2009. Then, only transformations will be supported and enhanced.
Have you heard this also and is it true.
Regards
OJ
Edited by: BW OJ on Feb 14, 2008 2:24 PM -
Hi experts,
What are the types of update rules?
Regards,
SivaHi......
Yes either you can say what are the different update types.........that Praveen has already ansered..............or you can say.........
You can say what are the diffrent types of update routines...then the answer is :
1) Start Routine in Transfer Rules
2) Transfer Routine in Transfer Rules.
3)Start Routine in Update Rules
4)Update Routine in Update Rules.
The routines that you write in transfer rules are applicable to all the Data targets that get the data from that particular Infosource, when you are going to write some code in Transfer rules, you have to understand that you are going to manupilate the data that is going to get into BW .
If you are going to write in Update Rules , then that logic is going to apply only for that particular Data target .
Eg : Let suppose I have a Flat file that gets data from 3 countries, US, Canada and Mexico.
Now I have prepared the data source for the same . But I dont want to have the data of Mexico in to BW itself.
So I will write a Start routine at TR to eliminate the data of Mexico.
My Next step is I want the data of US into one ODS and Canada data in to another ODS.
For this I handle the dataflow at Start routine in Update rules, to eliminate Canada data for US ODS and Vice Versa.
start routine in transfer rules
Look up to load master data
excluding
Start Routine in Transfer Rules
Sample code in Update Rule to restrict data selection?
Append Datapak - transfer start routine
Excluding Blank field in Infopackage Filter
Trans Routine ABAP help ..
transfer routine
Date key figure: Convert DATS format to DEC format
Date Conversion in Flat File
Transfer Routine ABAP
conversion exit
Date Conversion
Problem with conversion char to numc in transference rules
conversion routine..?
update routine
How to call a function in Update Rules to reverse a key figure sign
Need Sample Code for Update Rules
Date calculation
Difference between data in PSA and Data in Infocube
No RETURNCODE <> 0 allowed in update routines in transfer mode
the diffrerece between DEC and (yyyymmdd) 8 char in Time defination
Access master data in update rules
Date key figure: Convert DATS format to DEC format
start routine in update rules
Is it possible to read a third ODS in update rules between two ODS?
update rule coding while loading data from ODS to CUBE
Start Routine in Update Rules to populate additional fields from ODS
Coding in Update Rules accessing a Z-Table
Start routine
Regards,
Debjani........... -
Currency Conversion - update rules for average rate
I am working in BI 7.0
I have a currency conversion I have defined with RSCUR with the exchange rate type 'M' defined in SPRO -> General Settings -> Currencies -> Exchange Rate Types. The currency conversion takes place in my update rules. I've set my 'Time Reference' to 'End of Period'.
I want the conversion to be an average of all rates for the fiscal period. If I check my table using 'OB08', I find my conversion is only using the rate for the last day of the Fiscal Period. It is not averaging all the rates.
My question is this. Can I actually average all the rates for the fiscal period using RSCUR? Do I need to have the people on the R/3 side have the rates be averages? Meaning, the rates they update are not currency rates for that specific day but a running average for the month?
What are the best practices for average rates for currency translations for update rules based on a Fiscal Period?
Edited by: Michael Pepper on Mar 3, 2008 8:37 AMHi MIchel,
If you want the conversion to be an average of all rates for the fiscal period.
Check under the cloumn ExRt
you may find some row as description as "Average exchange rate"
Create Currency Conversion type with that exrt type.
use this Currency Conversion type in u'r query for u'r keyfigure.
hope this will be helpfull...........for this you can contact Fi people.
Regards,
Vijay. -
Start routine and update rules
Hi,
What is accessed first:-
Start Routines or Update Rules?
What is the use of global variables in start routine?
Please reply.
Thanks.Hi......
You have different types of Routines in BW .
1) Start Routine in Transfer Rules
2) Transfer Routine in Transfer Rules.
3)Start Routine in Update Rules
4)Update Routine in Update Rules.
The routines that you write in transfer rules are applicable to all the Data targets that get the data from that particular Infosource, when you are going to write some code in Transfer rules, you have to understand that you are going to manupilate the data that is going to get into BW .
If you are going to write in Update Rules , then that logic is going to apply only for that particular Data target .
Eg : Let suppose I have a Flat file that gets data from 3 countries, US, Canada and Mexico.
Now I have prepared the data source for the same . But I dont want to have the data of Mexico in to BW itself.
So I will write a Start routine at TR to eliminate the data of Mexico.
My Next step is I want the data of US into one ODS and Canada data in to another ODS.
For this I handle the dataflow at Start routine in Update rules, to eliminate Canada data for US ODS and Vice Versa.
Global variables in Start routine
You can have global variables, internal tables populated by the
startup routine. This data will be available to the field
routines. Create yourself a start routine, declare some
variables in the global section, and then create a field
routine. You will be able to use the globally declared objects
in the field routine
Please check below help link for routines in sap netweaver 2004s
http://help.sap.com/saphelp_sem60/helpdata/en/e3/732c42be6fde2ce10000000a1550b0/frameset.htm
How to guide "How to transformations routines".Please check the below link:
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/dc1d9990-0201-0010-16aa-db3c4eb8b642
start routine in transfer rules
Look up to load master data
excluding
Start Routine in Transfer Rules
Sample code in Update Rule to restrict data selection?
Append Datapak - transfer start routine
Excluding Blank field in Infopackage Filter
Trans Routine ABAP help ..
transfer routine
Date key figure: Convert DATS format to DEC format
Date Conversion in Flat File
Transfer Routine ABAP
conversion exit
Date Conversion
Problem with conversion char to numc in transference rules
conversion routine..?
update routine
How to call a function in Update Rules to reverse a key figure sign
Need Sample Code for Update Rules
Date calculation
Difference between data in PSA and Data in Infocube
No RETURNCODE <> 0 allowed in update routines in transfer mode
the diffrerece between DEC and (yyyymmdd) 8 char in Time defination
Access master data in update rules
Date key figure: Convert DATS format to DEC format
start routine in update rules
Is it possible to read a third ODS in update rules between two ODS?
update rule coding while loading data from ODS to CUBE
Start Routine in Update Rules to populate additional fields from ODS
Coding in Update Rules accessing a Z-Table
Start routine
Hope this helps you..........
Regards,
Debjani.........
Edited by: Debjani Mukherjee on Oct 1, 2008 4:58 PM -
Hi,
I am transporting update rules for a Cube.
The InfoSource has been generated from a DSO and created update rules to the above said Cube.
In the transports I am getting the below error.
Start of the after-import method RS_UPDR_AFTER_IMPORT for object type(s) UPDR (Activation Mode)
Update rules 46H2HBH6BRHP9R29L0XREHQP3 read in version M
Update rules 46HK9D48LBRIH89ZBZVTZERTZ read in version M
Error when activating update rule 46H2HBH6BRHP9R29L0XREHQP3
Activation of the update rules for ZICUBE01 8ZDSO1
IC=ZICUBE01 IS=8ZDSO1 error when checking the update rules
Error when activating update rule 46HK9D48LBRIH89ZBZVTZERTZ
Activation of the update rules for ZICUBE04 8ZDSO04
IC=ZICUBE04 IS=8ZDSO04 error when checking the update rules
The InfoCube(It is already there in Q apd P) has been locked in a different user transport as he added a field to it and not yet transported.
Is this the problem?
Thans in advance..
Message was edited by:
Indira SRHi indira,
make neccessary changes to the request if u created earlier i.e u can delete the original request or change the discrption to "Dont delete" and release it, if u unable to delete each task in that particular request.
Second step is activate all the infosources and cubes and Update rules.
Then create transport request individually i.e One for IS and One IC and another for Update rules..It would be easier to trace in case of any error.
Release the requests 4m DEV, and important thing is import these requests in Q or P in hierachiel manner i.e
1. IS
2. IC
and the Update rules request. -
Update rules deactivated only has to open the system..
Hello Experts,
-- ODS and update rules are already in Production.
-- I have made changes to the ODS by adding new Infobjects.
-- activated the update rules.
-- When the ODS and update rules are transported. Update rules get deactivated
-- And a message 'Data target changed, suggestion for the update rules generated'
Detailed message:
Data target was changed. Suggestion for update rules generated
Message no. RSAU287
CAUSE&
The data target has been changed (for example, InfoObjects have been added or deleted).
System response
The update rules have been set to inactive.
Procedure
Check the proposal for the update rules: Newly added key figures or characteristics are updated directly using the source-InfoObject from the InfoSource if the InfoSource contains these InfoObjects. Otherwise, the calculation type is set to 'Routine'. Newly added key figures, data fields, or attributes are set to 'No Update'.
The rules for key figures and for characteristics must be checked and adjusted appropriately.
Detailed message end.........
-- Do not get activated by retransporting. or doing a fresh request of the update rules.
-- Currently the only I can see by opening the system and activating them. Wondering if we have any other alternatives to activate these update rules for the ODS
Any solutions:
-- Wondering if I am missing some procedure to transport.
-- Please feel free to post your views / suggestion in case you had a similar situation before.
Many thanks in advance,
BWer
Message was edited by: BWerBWer,
If you collect your transport in a big lump of a single transport, the tranport connection may not organize it in the order of the proper dependency, so it is best to split it to separate transports as stated above to ensure the proper dependencies.
To fix the issue right now, you can either
1) take another transport through of only the updated / activated update rule or
2) if you know what you are doing and if the client is okay with it, open the system, activate the update rule and when prompted for a transport, create a new one and go to SE10 to clean up that repair transport by deleting the subtasks.
I would probably recommend option 1 for you. I only do option 2 if it is an emergency and there is no transport window for another week or longer or it just simply cannot wait. -
Hi Gurus, you gave me the right answer, but please help me with this, i see below update rule, it does not tell me the logic or program how it populate the group cost
tell me where i can find the programs for update rule in system by looking below code or from ur knowledge. its very imp for me to understand how the group cost get the value but there is no code it just say result = ws_zgrp_cost which is not the answer please help
PROGRAM UPDATE_ROUTINE.
$$ begin of global - insert your declaration only below this line -
TABLES: ... DATA: /BIC/AZCOPC_O200.
DATA: WS_ZLGL_COST(16) decimals 2 TYPE P,
WS_ZGRP_COST(16) decimals 2 TYPE P.
DATA: ZPRICE_AVG LIKE /BIC/AZCOPC_O100-PRICE_AVG.
DATA: ZPRICE_STD LIKE /BIC/AZCOPC_O100-PRICE_STD.
DATA: ZPRICE_VAL LIKE /BIC/AZCOPC_O100-PRICE_VAL.
DATA: ZPRICE_VAL1 LIKE /BIC/AZCOPC_O100-PRICE_VAL.
DATA: ZPRICE_VAL2 LIKE /BIC/AZCOPC_O100-PRICE_VAL.
CLEAR WS_ZLGL_COST.
CLEAR WS_ZGRP_COST.
DATA: i_/BIC/AZCOPC_O140 like /BIC/AZCOPC_O140.
$$ end of global - insert your declaration only before this line -
FORM compute_data_field
TABLES MONITOR STRUCTURE RSMONITOR "user defined monitoring
USING COMM_STRUCTURE LIKE /BIC/CS0CO_PC_ACT_05
RECORD_NO LIKE SY-TABIX
RECORD_ALL LIKE SY-TABIX
SOURCE_SYSTEM LIKE RSUPDSIMULH-LOGSYS
CHANGING RESULT LIKE /BIC/AZCOPC_O100-/BIC/ZGRP_COST
RETURNCODE LIKE SY-SUBRC "Do not use!
ABORT LIKE SY-SUBRC. "set ABORT <> 0 to cancel update
$$ begin of routine - insert your code only below this line -
fill the internal table "MONITOR", to make monitor entries
result value of the routine
RESULT = ws_zgrp_cost.
if abort is not equal zero, the update process will be canceled
ABORT = 0.
$$ end of routine - insert your code only before this line -
ENDFORM.Hi Sonia,
Definitely, the value for that field is not calculated at this UR level. If there is a start routine, it might have been calculated/derived there. If it is pdated for all records in the start routine it does not make sense to have a UR just to assign this as it is already assigned in the start routine. Please check you start routine. Hope this helps.
Thanks and Regards
Subray Hegde -
Getting error while activatinb update rule 2LIS_02_SCL
Hello BW gurus,
I have activated and replicated datasources for PP and activated the 0PUR_C01 infocube now I am activating the update rule 2LIS_02_SCL but while activating the update rule iam getting error message
"Object UPDR CD2NYEJKIIFCCFA9FW1OQRONE could not be found"
which is nothing but the technical name of 2LIS_02_SCL. in GROUPING TAB I have selected " only necessary objects" option.
Any help on this is greatly appreciated can you please suggest me how I can troubleshoot this.
I will assign points to all appropriate answers.
Thank you,
KrishHi Krish
Don't worry about the error message.
RSA1-> Business content-> here select the update rules from 2LIS_02_SCL to cube 0PUR_C01 and with only necessary objects option-> Install update rules with applicable routines. Then refresh RSA1 and check for update rules. If still you don't get update rules, please let me know
Regards
Pradip -
Conversion of Update rule to new Transformation
Hi All,
I'm using BI 7.0 SP9. I have a scenerio where in I need to load standard cube 0SD_C03 cube from the standard extractors like 2LIS_11_VAITM etc..
Based on the the thread below I have done the follwoing steps.
how to migrate old transfer rule/update rule to new transformation?
- Activated Business content cubes, update rules, infosources etc...
- Done all the required work in Source system.
- Later migrated data sources.
- Now the problem comes, Based on the above tread I have gone to the context menu and selected "Tranforamation erzeugen". It asks to create new Infosource created a new infosource and the the transformation came up. But I can see its not mapped to Source system datasource. I mean its not linked to the datasource in Source system. Its just created in BW and when i load nothing happen. I understand this is not correct process.
But when it pops up for Infosource If I select existing Infosource I dont see the old one's just because they were migrated already.
Now how do I link with the source system with out creating transformation manually. because there are lots of standard routines in update which cant be rewriten in new transformation manually.
Please let me know if there is a way to directly copy them and also correct me If i'm doing some thing wrong.
Thanks in advance,
Reagrds,
Prashanth ReddyAs Alex said delete the existing datasources and try to replicate it again as 3.x datasources. The process will work fine.
When you replicate datasources it will pop-up screen for you to replicate as 3.x datsources or as a new datasource.
Whenever you will plan to migrate from 3.x to new one, do migrate update rule, and transfer rules first. As when you migrate datasource, it deletes existing update rules/transfer rules also. For each update rule/ transfer rule it will create transformation for you after migration.
After migration your scema will look like:
datasource (new)-> transformation( replacement for transfer rule)->infosource(new)->transformation (replacement for update rules)->data target.
Anyways when you will createmodel from scratch in 2004s system, i hope you know infosource is now more mandatory in 2004s system. -
Inactive connection in update rules
Hello,
How do I update my update rules for 0MATERIAL_ATTR in the production system (BW prod)?
I have attempted to transport the update from dev. I have the info object in the uodate rules, but not the connection to the source field.
How do I get the connection active in the update rules?
Best regards,
FredrikFrederik,
create new transport from DEV for Update Rules( Make some change in the description or some space in the routine). Transport this request to production it will be rectified.
or try to import the previous transport again. When cube gets changed UR get deactivated. Try to reactivate the UR either by creating new transport or reimport the old one.
Last week i faced the same problem. i reimported the same transport i sloved my problem. one time i created new transport for UR, i imported in Production it's activated my UR.
all the best.
Regards,
Nagesh Ganisetti.
Maybe you are looking for
-
1. I foolishly agreed to install IOS6. Woke up: my phone told me it had a number of fatal errors 2. Did a RESTORE in iTunes 3. Did a second RESTORE now I have 45 apps missing -- the apps that make the phone so dear to me -- I WANT MY OLD IPHONE BAC
-
Package com.sun.javadoc does not exist
D:\Xyz.java:22: package com.sun.javadoc does not exist import com.sun.javadoc.*;After getting this error, I have set my classpath to C:\Program Files\Java\jdk1.5.0_03\lib\tools.jar. But still the error persists. Could anyone please tell me how do I s
-
Best practices for creating application schema
All, Can anyone recommend best practices (or pointer to a url) for creating application schema. A novice installer created a schema and the tablespace ran out of disk space in 2 days and the system came to a halt at a production site. The tablespace
-
I am a bit of a novice to apple and need some help. as stated in the header, my laptop is not allowing me to drag songs from my laptop to itunes. I have had itunes on a number of laptops and have never had a problem. Can someone help?...
-
Loc.Curr.Amount is blank in MB51
Dear All Every there a New Material number is created GR from Purchase Order , the filed "Loc.Curr.Amount" in MB51 is blank, but after invoicing and create 2nd GR form Purchase Order, the price "Loc.Curr.Amount" in MB51 is there can any one help me