Tables
ANLA - Asset Master Record Segment
ANLZ - Time-Dependent Asset Allocations
ANLH - Main asset number
T-code
AS01 / 02 / 03
Delta entries Table
BWFIAA_AEDAT_AS
You can edit asset in AS02 and can see entries in this table for testing purposes.
Delta Timestamp Table
BWOM2_TIMEST
Delta Working
Delta for this datasource can be run only ONCE per day. Even if there are changes added to delta table and the delta is run, it still does not pick up any data. They will all come in the run the next day.
Below are couple of points to better understand the working of delta.
Extraction depends on settings in table BWOM_SETTINGS
BWFITIMBOR - Default value '020000' ( 2:00 AM )
If the extractor is runs at 1:20 AM on 8th August, since it is before 2:00 AM, system goes back one day to get the delta values.
So it gets data from 7th and 6th August.
If it runs at 2:30 AM, it fetches data from 7th August.
BWFIOVERLA = ' '
Default is blank value. If it is 'X' (???)
BWFISAFETY = '1'
This is used when calculating timestamp ranges.
Internally, in FM BWFIT_GET_TIMESTAMPS , the timestamps are fetched.
Basic logic is as follows.
Get the Low and High Timestamps from BWOM2_TIMEST table.
For say last run was 08/06/2012 00:00:00 - 08/06/2012 23:59:59
If there is NO Overlap, +1 to the High Date ==> New Low Date ==> 08/07/2012 00:00:00
Sy-datum - 1 ( safety ) ==> New High Date ==> 08/08/2012 23:59:59
Interval : High Date - Low Date Should not be less than 1 ( No negitive ).
Here, 08/08/2012 - 08/07/2017 = 1 -- Fetches data from delta table BWFIAA_AEDAT_AS where aedat > LowDate
Else, < 1 : System immediately raises - No Data Present flag. No selection happens.
The above logic is also the reason why delta does not get any delta when run on the same day.
For say last run was 08/08/2012 00:00:00 - 08/08/2012 23:59:59
New Low Date = 08/08/2012 + 1 ==> 08/09/2012
new High Date = Sy-datum ( 08/09/2012 ) - 1 ==> 08/08/2012
Interval = -1 ==> No Data Present Flag
After successfull run of delta , low and high dates are dependent on the run dates, but the times are always 00:00:00 to 23:59:59.
When the delta runs, it fetches all the data present in the delta table > Date of the lower limit.
In BWOM2_TIMEST, you can see all the timestamps.
However, time stamps are present in seconds format [Seconds since 1.1.1990,0:00 GMT * 10000 ].
Run FM RKE_TIMESTAMP_CONVERT_OUTPUT to convert to date and hours format. you can use TZONE and DAYST from the table to run the FM.
Learn and Let Learn - Trying to document things I have learned /gathered ( mostly SAP ) in one place , yeah, some other stuff too
Wednesday, August 31, 2016
Tuesday, August 30, 2016
BW Asset Extraction
List of Datasources
- 0ASSET_ATTR_TEXT - Asset Subnumber with Description
- 0ASSET_AFAB_ATTR - Depreciation Area Real or Derived
- 0FI_AA_11 - FI-AA: Transactions
- 0FI_AA_12 - FI-AA: Posted Depreciations
Important DELTA Notes
All the above datasources work as a set , the deltas are dependent.
For delta of 0ASSET_AFAB_ATTR to work fine, 0ASSET_ATTR_TEXT should have successful data extraction.
For 0FI_AA_11 and 0FI_AA_12, both 0ASSET_ATTR_TEXT and 0ASSET_AFAB_ATTR should have successful data extractions.
There should be 'D' entries in the table for the preceding datasource, for the next datasource to have successful data extraction.
If FI_GL_4 is active in the system, system checks for the delta from that datasource too.
The delta timestamps can be seen in table BWOM2_TIMEST
Other Information
User FM 'RKE_TIMESTAMP_CONVERT_OUTPUT' to convert the timestamps in the table to general format.SAP Note 926047 gives some information on delta functionality.
Delta FM
BWFIT_RESET_TIMESTAMPS
Tables
- ANLB -
- ANLC - Asset Value Fields
T-Codes
- AS01 - Asset Master Data
- AW01
- In the parameters tab
- Exp. Useful Life in Years = ( Order Dep. Start Date year ) - ( Previous Year)
- Exp Useful Life in Years = ( Order Dep. Start Date Period) - ( Start of that Fiscal Period)
Other Details
- BAPI_FIXEDASSET_GETDETAIL
Related SAP Notes
926047 - Depreciation values extracted without master data to BW
Reference Notes
0FI_GL_14
Base Tables
BKPF - Accounting Document Header
BSEG - Accounting Document Segment
FAGLFLEXA - General Ledger: Actual Line Items
TCode
FBL3N - GL Account Line Item Display
FAGLF03 - Comparision : Documents/Transaction Figures ( not sure how to use )
Notes
This extractor gets data from FAGLFLEXA and BSEG tables.
Below is the query used in the extractor to fetch data.
SELECT a~PPRCTR a~SFAREA a~RASSC a~PSEGMENT a~TSL a~HSL a~KSL a~OSL a~MSL a~WSL a~DRCRK a~POPERa~RWCUR a~GJAHR a~BUDAT a~BELNR a~BUZEI a~BSCHL a~BSTAT a~TIMESTAMP
b~BUKRS b~BLART b~BLDAT b~MONAT b~CPUDT b~XBLNR b~WAERS b~GLVOR b~AWKEY b~FIKRS b~HWAER
b~HWAE2 b~HWAE3 b~AWSYS b~LDGRP b~KURSF
( FAGLFLEXA AS a INNER JOIN BKPF as b
on b~bukrs = a~rbukrs
and b~belnr = a~belnr
and b~gjahr = a~gjahr
and b~mandt = a~rclnt )
and the items from selection screen - The RLDNR is always '0L'
( a~DOCNR EQ '2400018785' )
AND ( a~RLDNR EQ '0L' )
AND ( a~RCLNT EQ '100' )
AND ( b~MANDT EQ '100' )
Delta Pointer Table
ROOSGENDLM
The pointer in this table can be changed using FM
Points to consider
When the infopackage is run with the option 'Initialization with out data transfer' - the pointer in RSA7 is not set.The entry is present, but when the pointer is checked, it shows as blank. So, for this datasource, if we want to initializae, we need to check the option 'Initialization with data transfer' .
0FI_AP_4
Vendors: Line Items with Delta Extrcation
Datasource Function Module : BWFID_GET_FIAP_ITEM
Delta Trigger Fields
Regular update Minute Based Update
CPUDT ; AEDAT ; CPUTM ; AETIM
In the FM BWFID_GET_FIAP_ITEM, data is fetched based on CPUDT and AEDAT.
CPUDT is a field in both BSIK and BSAK, but system does not fetch data from these tables. Instead if uses tables BKPF_BSIK and BKPF_BSAK for fetching data.
AEDAT is not present in the tables. So for this field, it fetches data from BKPF_BSIK_AEDAT and BKPF_BSAK_AEDAT.
Delta Process
AIE
Only after images are passed through this extractor. No RECORDMODE present. All entries come with new values and data gets overwritten in DSO. ( Not to be needed to be loaded to Cube directly )
Tables
BSIK : Accounting: Secondary Index for Vendors
BSAK : Accounting: Secondary Index for Vendors (Cleared Items)
Delta Pointer Table
BWOM2_TIMEST
- Do 'Initialize with Data Transfer' for delta init.
0FI_AR_4
Accounts Recievable : Line Items - Customers: Items
Tables
BSAD ( Cleared Items )
BSID ( Open Items )
Delta Pointer Table
BWOM2_TIMEST
Related T-codes :
FBL5N : This gives the data for Customer Line Item
Source Fields Link from SAP
https://help.sap.com/saphelp_nw70/helpdata/en/2f/ea8953d7363d58e10000000a174cb4/frameset.htm
Monday, August 29, 2016
0FI_AA_12
FI-AA: Posted Depreciations
It is part of Asset Accounting.
This DataSource supplies the values of depreciation postings by period. Depreciation values are simulated for periods that were not yet posted.
Base Tables
ANLP
TCode
AS03
AW01N
Delta DataTable
BWFIAA_AEDAT_TR
Delta Pointer Table
BWOM2_TIMEST
Delta for this extractor is dependent on the successful delta triggers for 0ASSET_ATTR_TEXT and 0ASSET_AFAB_ATTR. If the deltas do not get any records/pointers not updated in delta pointer table, there will be no delta records for this datasource and also, 0fi_aa_11 datasource.
Help.SAP.com : Link
ASSET extraction
SIM / FIAA_SIM field
It is the simulated field.The type of simulation depends on the following parameter maintained in the system.
Table : BWOM_SETTINGS
Param_Name : BWFIAASIM
This datasource gives the asset depreciations till current month along with simulations for the rest of the year.The simulation values get calculated on run time.
SIM = 'X' - Simulated values.
SIM = <blank> - Real Values
SIM = 'N'. - real values -> no carryforward
When the datasource is run FULL - We get 'BLANK' values for existing values and 'X' for simulated ones.
When run DELTA, - we get 'BLANK' and 'N' values for existing and new records and 'X' for simulated. Right now, not sure on what exact difference is between the <blank> and N values, however, in the standard BI content flow given for this extractor which goes to DSO 0FIA_DS13, the N values are filtered out in the start routine.
Internal Function Modules
BWFIAA_GET_DEPR_DELTA
It is part of Asset Accounting.
This DataSource supplies the values of depreciation postings by period. Depreciation values are simulated for periods that were not yet posted.
Base Tables
ANLP
TCode
AS03
AW01N
Delta DataTable
BWFIAA_AEDAT_TR
Delta Pointer Table
BWOM2_TIMEST
Delta for this extractor is dependent on the successful delta triggers for 0ASSET_ATTR_TEXT and 0ASSET_AFAB_ATTR. If the deltas do not get any records/pointers not updated in delta pointer table, there will be no delta records for this datasource and also, 0fi_aa_11 datasource.
Help.SAP.com : Link
ASSET extraction
SIM / FIAA_SIM field
It is the simulated field.The type of simulation depends on the following parameter maintained in the system.
Table : BWOM_SETTINGS
Param_Name : BWFIAASIM
This datasource gives the asset depreciations till current month along with simulations for the rest of the year.The simulation values get calculated on run time.
SIM = 'X' - Simulated values.
SIM = <blank> - Real Values
SIM = 'N'. - real values -> no carryforward
When the datasource is run FULL - We get 'BLANK' values for existing values and 'X' for simulated ones.
When run DELTA, - we get 'BLANK' and 'N' values for existing and new records and 'X' for simulated. Right now, not sure on what exact difference is between the <blank> and N values, however, in the standard BI content flow given for this extractor which goes to DSO 0FIA_DS13, the N values are filtered out in the start routine.
Internal Function Modules
BWFIAA_GET_DEPR_DELTA
Friday, August 19, 2016
InfoCubes
Activating Infocubes
When data is already present in the infocube and a new field is added, data in the infocube has to be dropped and loaded ( as the cube has to adjust the dimension tables data according to the new changes). if not done , DTP would fail.
also check activation
Try RSD1 and press infocube option at the top then proceed with utilities of infocube and go for activation of infocube. A program will appear try to run that program in background which will help you in getting the infocube activation.
Or Try running the program RSDB_CUBE_ACTIVATE in background. Foreground sometimes go for time out hence it is difficult to activate in foreground.
If some error persists try using RSRV and correct the cube inconsistencies then proceed with activation of cube.
When data is already present in the infocube and a new field is added, data in the infocube has to be dropped and loaded ( as the cube has to adjust the dimension tables data according to the new changes). if not done , DTP would fail.
also check activation
Try RSD1 and press infocube option at the top then proceed with utilities of infocube and go for activation of infocube. A program will appear try to run that program in background which will help you in getting the infocube activation.
Or Try running the program RSDB_CUBE_ACTIVATE in background. Foreground sometimes go for time out hence it is difficult to activate in foreground.
If some error persists try using RSRV and correct the cube inconsistencies then proceed with activation of cube.
Wednesday, August 10, 2016
Flat Files
Points to Remember
- When loading data from a flat file, the datasource will take the default lenghts from the file. If a particular field is not populated in the flat file, it might take 1 as length , which will cause
Error
Overflow converting from on assignment field
Error 'Overflow converting from '12345'' on assignment field zfield record 9 value 12345
Reason : The type of the flat file and BW are different. change type / increase the length of the fields.
Eg : the field length is 6, but in your datasource it is type INT2 which is max of 5. Change it to INT10 or CHAR
- When loading data from a flat file, the datasource will take the default lenghts from the file. If a particular field is not populated in the flat file, it might take 1 as length , which will cause
Error
Overflow converting from on assignment field
Error 'Overflow converting from '12345'' on assignment field zfield record 9 value 12345
Eg : the field length is 6, but in your datasource it is type INT2 which is max of 5. Change it to INT10 or CHAR
Tuesday, August 9, 2016
12 Shipping / Deliveries - COPIED
Base Tables
LIKP - SD Document: Delivery Header Data
LIPS - SD document: Delivery: Item data
T-Code
VL01/02/03 ( outdated )
Outbound Deliveries : VL03N
Inbound Deliveries : VL33N
SetUp Tables
Delete Setup tables : LBWG (12)
Filling Setup : OLI8BW - RMCVNEUL
Enter some values in selection screen - else, the job will error. eg: give comp code from 0001 to 9999
Setup tables can be run based on ERDAT ( Created On ) / AEDAT ( Changed At ) from LIKP and LIPS for selective full load of data ( for failed delta / V3 jobs ).
Follow the procedure HERE to run setup tables for multiple single values.
2LIS_12_VCHDR
This datasource gets the header details of all delivery documents.
Helpful Links : SAPHelpNotes
2LIS_12_VCITM
This datasource extracts all item level data for OUTBOUND deliveries.
Inbound deliveries are not extracted with this datasource.
Inbound deliveries are MM deliveries. Vendor to Purchasing organsiation .Inbound Deliveries comes into picture of Purchasing.So for inbound deliveries you have to seek MM extractors.Pls try extractors of procurement 2lis_02_scl, 2lis_02_sgr, 2lis_02_cgr.
Inbound delivery is the delivery document through which the goods reach the plant (in MM perspective,after purhcase order, we receive goods through tcode MIGO which is ntohign but inbound delivery)
Inbound delivery types adn the functionality are configured as a part of procurement process and hence in MM
Outbound delivery is the delivery document in sales through which the goods are issued to the ship to party.
Helpful Links : SDN Discussion1 ; SAPHelpNotes
2LIS_12_VCSCL
Outbound Deliveries and Inbound Deliveries
Outbound Deliveries VL03N
If you want to send
the material to customer Outbound delivery is required .
The flow is in Sales
process.
Sales order -->
delivery >Shipment>Billing against delivery.
You use this process in order to support all shipping activities like picking,packing,transport and goods issue.
All information regarding shipping planning is stored in outbound delivery,the status of shipping activities is monitored, and data gathered during the course of shipping processing is recorded.By creating outbound delivery,shipping activities are started and data is transfered that is generated during shipping processing
LIKP - VBTYP = 'J' or 'T'
Inbound Delivery VL33N
Inbound delivery is
required to receipt the material against PO from vendor.
You specify some dates in your PO for delivering material.
However the vendor
after seeing the PO, delays the delivery by own week because of lack of
resource. He intimates you thru phone. So you create an inbound delivery with
respect to the PO released on that vendor stating that the delivery will be
exactly on so and so date.
This makes you to
have the exact delivery schedule or otherwise it is a pre-intimation of vendor
by when he could supply the material. Since this could be created automatically
thru IDOC once vendor sends the information, This reduces processing time and data
entry time when you receive the goods actually.
Inbound
delivery does not necessarily mean goods receipt. INBOUND DELIVERY in SAP
pertains to all incoming goods, which may refer to either a vendor delivery or
a return of a rejected delivery to a customer. It may cover the schedules of
deliveries from your vendors/suppliers or even a rejected delivery to a
customer.
LIKP - VBTYP = '7'
Monday, August 8, 2016
BDLS
BDLS - Logical system name conversion
This is used when the source system of BW(may be others, i donno) is changed.
Like, initially BWDEV100 is mapped to ECCDEV100, but due to some reasons like upgrade etc, BWDEV100 needs to be mapped to EC1DEC100 - then BDLS is used.
Some links
https://wiki.scn.sap.com/wiki/display/BI/BDLS+-+Logical+system+name+conversion
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/805eefcd-5428-2d10-c0ab-dc27a95b2c81?overridelayout=true
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70a7b233-8be5-2c10-4190-aed723af5373?QuickLink=index&overridelayout=true&46316927648529
This is used when the source system of BW(may be others, i donno) is changed.
Like, initially BWDEV100 is mapped to ECCDEV100, but due to some reasons like upgrade etc, BWDEV100 needs to be mapped to EC1DEC100 - then BDLS is used.
Some links
https://wiki.scn.sap.com/wiki/display/BI/BDLS+-+Logical+system+name+conversion
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/805eefcd-5428-2d10-c0ab-dc27a95b2c81?overridelayout=true
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70a7b233-8be5-2c10-4190-aed723af5373?QuickLink=index&overridelayout=true&46316927648529
Thursday, August 4, 2016
Excel to BW
Prerequisite excel settings
- Excel should be Macro enabled. ( Save excel with extension .xlsm)
- Make sure ‘Developer’ option is enabled.
- If not, Options -> Popular à ‘show developer tab in the Ribbon’.
- Create a table (Excel -> Insert -> Table ) in excel and then enter data inside the table ( might work directly inserting data in the sheet, I am not sure)
- Alt+F11 would open the VB screen.
- VBA Settings
- Clicking on ‘Developer’ tab in excel. It has VBA editor icon.
- Open VBA and check following in Tools à References
- ‘Microsoft XML.v6.0’ checked.
- ‘Micorsoft DAO 3.6 Object Library’ is checked.
Points to remember
Wednesday, August 3, 2016
RSREQREDUCE
This is the main t-code which can be used to monitor the
growth of the requests in the system.This gives the growth of all types of infoproviders - DSO/W.DSO/Infocubes/Master data objects
Green : Good, No
reduction needed
yellow : Can be useful to reduce/delete the request list
Red : Request list should be reduced/deleted.
Maintain a single datatarget
This gives overview of the single datasource selected.
Filter for Mass Actions
This gives us the ability to filter the report display using
various options like only yellow data targets, data targets with more than 1000
records etc.
Mass Reduction of Requests
This option can be used to reduce the requests from
InfoCubes and Std. DSOs.
Underlying FM : RSSM_REDUCE_REQUESTLIST
Mass Deletion of Requests
This is for Write Optimized DSOs and Master Data
InfoObjects.
Underlying FMs:
WDSO Deletion of
requests : RSM1_DELETE_WO_DSO_REQUESTS
Master Data and Texts : RSS2_AUTODEL_REQU_MASTER_TEXT
RSSM_REDUCE_REQUESTLIST
Points to note
- This is the used for maintaining DSOs and InfoCubes.
- Change log should be deleted before running this program.
- The standard program needs 1000 requests and min. of 1 month to delete the requests.
- As of 7.4 upgrade, enqueue and dequeue locks are added to the program, which ensures safe running. before that version, program dumps/acts wierd when run when loading process is going on.
RSM1_DELETE_WO_DSO_REQUESTS
This is for deleting requests from Write Optimized DSOs.
In order to use this program, the requests in the W.DSO need to archived, else we cannot run the deletion.
( ?? I ran the program the first time and it ran fine with out archiving. Next time, I ran it started giving me message, " Data target ZWDSOSALES is already reduced; no further deletion allowed. First undo the reduction" . Not sure why it reduced it the first time )
Points to Note
-
Min of 1 day is necessary to delete the entries
-
Min no. or requests = 1
RSSM_AUTODEL_REQU_MASTER_TEXT
This is used to delete requests from Master Data and Texts.
Only administration information and status manager information will be deleted.
-
Min no of days : 1
-
Min no. of records to remain : 1
-
The same program deletes Master data Attributes
and Master data text.
o
When deleting attributes, give ‘0MATERIAL’ on
the selection screen
o
For texts ‘0Material$T’.
rsmonreqdelredu - Creates an entry with the deletion job name and other details
RSICCONT - Has list of all requests in the infoprovider
Related Notes
Housekeeping for BW requests : Notes
2248065 - P14; DTP; REDUCE: Dump CL_RSSM_STATMAN/CHECK_REQUESTS_EXIST
Tuesday, August 2, 2016
IDT
Creating Universe in IDT : Click
Common Terms in IDT : Click
Errors in IDT : Click
Other Terms
Bursting: Process for sending the reports to different users depending on their filters. Like, the same sales report can be sent to different users, depending on the plants they are looking for.Adding filters on data
When adding filters to data on a table, use Derived table and then add filter in the SQL where condition rather than using the original table and inserting filter.
Other Online Notes
https://blogs.sap.com/2013/04/22/information-design-tool-tips-and-tricks/
Subscribe to:
Posts (Atom)