Wednesday, August 31, 2016

0ASSET_ATTR_TEXT

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.


Tuesday, August 30, 2016

BW Asset Extraction

List of Datasources
  • 0FI_AA_11 - FI-AA: Transactions

0FI_AA_11

Base Tables : ANLC
                       ANEK : Document Header Asset Posting


Datasource Notes from SAP : LINK


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~POPER
a~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

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.

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

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

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

Webservices


Extracting data from microsoft excel to BW using webservices.
  - MS Excel to BW

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’.

Control tables
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/