Thankd for any advice.
As per my knowledge, ABAP in 21 days is one of the best book to learn ABAP and my fav one. It is not outdated for BW because we don't use much more complex functionalitty in BW. (But for ABAP this book is some what outdated, the new features are not available in this book. still i will prefer this book for start.)
Now related to BW-ABAP, you might get lots of articles and blogs on SDN,
kindly refer below some links for more BW specific docs.
Before you start reading any ABAP book, you should know where all ABAP is used in BI and how much of the coding details are required,
Refer the following article, this will give you an overview about ABAP usage in BI.
ABAP in BW is quite basic so i would suggest you that instead of going for a book you learn it according to uses .
ABAP code in BW are mainly like hooked subprogram which get added as part of auto generated code .Most of the BW requirement are logically tough and technically simple .
To learn the use of ABAP in BW you need more about in what kind of requirement which thing is used and how .
I will suggest you some basic fields in BW where we use ABAP :
1. In Transformation
Field Level Routine
2. Report Program
3. CMOD code
ECC side : for Data Source Enhancement
BW side : for Customer exits ,user exits
5.Infoobject transfer routine
6.Creation of function module etc
For each of this lots of SDN articles are available and that will give you very good understanding with business scenario.
BASIC abap that one need to know is :
1.data declaration of different types (basic data types ,table ,work area )
2. LOOP statements
3. IF-ELSE decision control statements
4. use of work area
5. reading from table
6. Different types of statements like TYPES, DATA, CONSTANTS, PARAMETERS, TABLES ,use of SELECTION SCREEN (mainly in report program needed) Control statements and loops IF ... ELSEIF ... ELSE ... ENDIF CASE ... ENDCASE CHECK DO ... ENDDO WHILE ... ENDWHILE LOOP ... ENDLOOP
MOVE, ADD, SUBTRACT, DIVIDE
String operation : SEARCH, REPLACE, CONCATENATE, CONDENSE
Open SQL : SELECT, INSERT, UPDATE, DELETE, MODIFY
Operations on Internal table : READ TABLE, INSERT, UPDATE, DELETE, MODIFY
SORT, DELETE ADJACENT DUPLICATES, REFRESH
This will solve 90% of your BW ABAP requirement .
Hope this will be helpful .
in my opinion if want to learn abap you can simply learn by doing things yourself usually by book you get idea about how to go at things but when you try doing things then only you will feel more confident in the system plus your confidence get boosts up and you are able to analyze the problem better.
i would recommend you to consult ' Official ABAP Programming Guidelines '
it is very good book and i think best as well (in my opinion)
you will be able to learn abap conceptually plus it will be helpful with your hands-on experience as well
as far as bw/bi consultant..i think it will have only 5- 10 % of coding that too on the requirement basis.So do no worry about it you can gain lot of knowledge by learning the basics of ABAP and some relevant topics related to BI (like loop,if else decision control,using of work area,internal tables,string operations......)