Hi abapers
hi everybody,
i need material regarding reports like how many types of reports, and their applications and implementation.
thanking u,
[email protected],
[email protected]
Hi,
In ABAP there are 2 type of reports: 1. Classical report, 2. Interactive report.
for more information check the following link:
http://www.sapbrain.com
1.CLASSICAL REPORTS
Hi ONly 2 types of Classical reports
1. Basic List
2, Interactive List
Events in Classical report
Events associated with classical report are as follows and each one will be discussed in detail.
INITIALIZATION
AT SELECTION-SCREEN
AT SELECTION-SCREEN ON <field>
START-OF-SELECTION
TOP-OF-PAGE
END-OF-PAGE
END-OF-SELECTION
In this case first three events are associated with selection screen. Rest of the events are associated with your list.
INITIALIZATION
We have already seen how to fill default values for the selection criteria. But in many cases you need to calculate the value and then put it in selection criteria. For example, say, you are accepting date from user and you need to fill in the default value for lower range as sy-datum 30 days and sy-datum for higher range. In this case you are calculating lower range and then filling the criteria. This can be done in INITIALIZATION event. Piece of code to do the above task would look like the following:
Tables: Sflight.
Select-options: fldate1 for sflight-fldate.
INITIALIZATION.
Data: date1 like SY-DATUM.
Date1 = sy-datum 30.
Fldate1-low = date1.
Fldate1-high = sy-datum.
Append fldate1.
Here appending is required because fldate1 is int table
This event is triggered when you execute your program for the first time i.e., before selection screen is displayed.
AT SELECTION-SCREEN
When user enters the values in the fields of selection screen and clicks on execute button, this event gets triggered. This event is basically for checking the values entered by the user for the fields of the selection screen i.e., data validity checking. This event is for entire selection screen. For example:
You are accepting carrid, connid, fldate from user and you dont want to proceed if user enters no value for carrid and fldate. Using AT SELECTION-SCREEN can do this.
Select-options: carrid1 for sflight-carrid,
Connid1 for sflight-connid,
F1date1 for sflight-f1date.
AT SELECTION-SCREEN.
If carrid1-low ne and fldate1-low = .
Error message.
Endif.
In this case, if both the fields are entered blank, then the user gets error message.
Basically, this event is for many fields on selection screen. Usually, it is for the fields which are logically related.
AT SELECTION-SCREEN ON <field>
When you want to check for specific value of a field. For example, carrid should be in the range of LH and SQ. This can be done in this event. Basically, this event is for checking individual fields. You can have many AT selection-screen events in your program (i.e., for each field specified in the Select-Options).
Select-Options carrid1 for sflight-carrid.
AT SELECTION-SCREEN.
If carrid1-low ne LH and carrid1-high ne SQ.
Error message.
Endif.
Here the system will not proceed on entering wrong values.
START-OF-SELECTION
This is the first event for your list. Once all the events are triggered for selection screen, the data is retrieved from database. Data declaration, select statements are done in this event. Consider the following example:
START-OF-SELECTION.
Data: mtype i.
Tables: sflight.
Select * from sflight where carrid = LH.
Write: / sflight-carrid,sflight-connid.
Endselect.
TOP-OF-PAGE
This event is triggered with first WRITE statement or whenever new page is triggered. Advantage of using this event is that, whatever you write under this event, is applicable to all the pages. If you dont have any write statement before TOP-OF-PAGE or in START-OF-SELECTION, this event is not triggered at all. For example, if you want the name of company and column headers for all the pages, it can be written in this event.
TOP-OF-PAGE
Write: / INTELLIGROUP ASIA PVT. LTD.
Write : / 10 carrid, 20 connid, 30 fldate.
END-OF-PAGE
This event is triggered at the end of page.
End-of-page.
Write : / page number, sy-pagno.
In this case page number will be written on every page.
Conditional triggering of EOP
Consider the following case.
REPORT ZDEMO1 line-count 15(3).
Top-of-page.
Write: this line is written by top-of-page event.
Start-of-selection.
Write: this line is written by start-of-selection event.
End-of-page.
Write : this line is written by end-of-page event.
In this case EOP will never be triggered, as end of page is never reached. The total Line-count defined for page = 15 in which 3 lines are for footer area. The output of the above code will be
This line is written by top of page event.
This line is written by start of selection event.
In output screen, only two lines are written and cursor remains still on 3rd line, the end-of-page event is not triggered. To trigger end of page event, cursor should reach at the last position, in this case on 11th line.
Such cases are quite common, and could be overcome by conditional triggering of end of page.
Sy-linct is the system variable, which gives total line count of a list.
Sy-linno is the system variable, which gives the current line number where the cursor is placed on the list.
Consider the following case:
Report zdemo1 line count 20(1).
Start-of-selection.
Data: m type i.
Write: / this is first line.
Do 5 times.
Write: / the number is, sy-index.
Enddo.
M = sy-linct, sy-linno 1.
Skip x.
End-of-page.
Write: / page end.
The output of above example is as follows :
This is first line.
The number is 1
The number is 2
The number is 3
The number is 4
The number is 5
After skipping 10 lines
Page end
In this case, with all write statement, you dont reach to the end of page. After all write statement, m is calculated in this case:
M = 20 8 1, So m is 12. And 11 lines are skipped after write statement and end of page is reached. (In this case you have 6 write statement so 6 lines + 1 line for page number and 1 horizontal line which is displayed for any list. So cursor is on 8th line and is subtracted from total line count i.e, 20.)
Common errors that user commits
Stating of another event denotes the end of any event. If you forget to mention the next event then everything is included in the same event. Consider the following case:
AT SELECTION-SCREEN.
If carrid1-low ne .
Err. or message.
Endif.
Write: / INTELLIGROUP ASIA P. LTD.
WRITE: / 10 CARRID, 20 CONNID, 30 FLDATE.
START-OF-SELECTION.
In this case all the write statement are included in the `at selection screen as top-of-page is not specified. The end of `at selection-screen is denoted by the starting of start-of-selection.
Though the sequence of events in program is immaterial, it is a good programming practice to write all the events in the order specified above.
Using Variants with selection criteria
In many cases you need report to execute report at regular interval for certain fixed values of selection criteria. That means each times you execute the report you need to enter its values again and again. ABAP/4 provides the facility by which you can define the values for selection screen and store it. Using VARIANTS can do this. It can be defined as group of values used for selection criteria while executing report. For a particular report, you create a variant which means variant created for particular report cannot be used for another report. The group of values for the selection criteria is saved and assigned a variant name. So every time you call a report, you need not specify the values for selection criteria but instead call the variant thus avoiding extra typing. User can have many variants for a single report. Each of them can be used as different type of information. For example, if a manager wants to see how an employee in personnel department or admin department has performed. He need not enter the department, one has to just execute the report with variant. In case he doesnt know about the variant, which is available, he can display list of variants attached to the report and values assigned to each variant.
Creating variant
Execute the report program. The selection screen is displayed.
Enter the values for selection screen and click on saves.
- System displays the variant screen
Enter the variant name and description for it.
Save it.
Usually the variants are useful when you need to execute the report in background, which will be discussed in background processing.
also refer to the following links
http://wiki.ittoolbox.com/index.php/FAQ:How_many_types_of_reports_are_there_in_ABAP_and_what_is_the_difference_between_them%3F
http://www.sapdevelopment.co.uk/reporting/alvhome.htm
http://www.sapmaterial.com/?gclid=CN322K28t4sCFQ-WbgodSGbK2g
2.There are 5 types of ALV reports
ALV Grid Display
ALV List Display
Hierarachy ALV reports
Block Display ALV reports
Interactive ALV reports
Regards,
Priyanka.
Similar Messages
-
In sap project who get lot of oppurtunities,sap abapers or sap bw people?
hi all
in general sap project in sap project who get lot of oppurtunities,sap abapers or sap bw people?
thanks,Hi,
It depends on the based on the clients/customer business process & scenario's ,& the type of SAP Projects to be implemented .
In Business intelligenc projects, we do require more BI Consultants compare to ABAP er's & other consultants.In ECC 6.0 & other R/3 implementaions, the demand for ABAP er's & other consultants wil be more .
So finally the Vacancies are the part & parcel of the type SAP projects to be implemented.
Regards
CSM Reddy -
In sap project who get lot of vacancies,sap abapers or sap bw people?
hi all
i want to know in sap project who get lot of vacancies,sap abapers or sap bw people?
thanksHi,
It depends on the based on the clients/customer business process & scenario's ,& the type of SAP Projects to be implemented .
In Business intelligenc projects, we do require more BI Consultants compare to ABAP er's & other consultants.In ECC 6.0 & other R/3 implementaions, the demand for ABAP er's & other consultants wil be more .
So finally the Vacancies are the part & parcel of the type SAP projects to be implemented.
Regards
CSM Reddy -
IS SAP 4.7 BW IS GOOD FOR ABAPERS TO PRACTISE
IS SAP 4.7 BW IS GOOD FOR ABAPERS TO PRACTISE
Hi jagrut,
Any version is good for practise :).
Its all depends on to what depth you want to learn.
Regards,
Atish -
In Fi Hw we wll interact with Abapers and hw we wll write logic for reports
hi every body...
my name is ravi prasad. i need one help.in FI....in real time as a sap FI consultant how we will interact with Abapers.and
how we will write Logic for the Reports. please send me step by step.
My mail id is [email protected]
Thank you very much.
Awaiting for your response.hi,
Please give me one example , and how we enter into tables, and how we know which table we have to use, and we will write logic.
Ex;---if our client needs total sales commission payed by him.... if it is below 100,
and if it above hundred....like that
for that purpose in which place we will write logic.; i need the place where we write the logic.
please send me tcodes and step by steps.
Thank you very much,
awaiting for your reply.
my mail id is [email protected] -
In asap methodology where the role of abapers will come?
friends let me know ,in project implementation in which phase the abapers are going to
involve ?please provide me in detail?Hi,
In Project Implementation when the Design Phase will start then the developers come into Picture.
When Function Specification or Blue Print is ready then you require developers and also Technical Lead to be in conference calls or in picture with the client to know the requirement .
Based on that Design Document is prepared beased on developers start the development .
PLease reward if useful. -
ROLE OF ABAPERS IN SAP-PLM DEVELOPMENT
HI EXPERTS,
I am having 3 yrs of exp in sap - abap. I got an offer to work with sap-plm, please let me know the <b>role of abapers in sap-plm development</b>. If any document u can send me to [email protected]
Thanks&Regards.
B.SRINIVASULU.
09916308002.Hi Bysani,
As ABAP guy in SAP-PLM project you be working mostly on Enhancements, Field exist, user Exists and Reports.
There is nothing worry about SAP-PLM, the work you may get is based on customer requirement & scenarios but you will receive the Detail Funcitonal Specification from the PLM Functional Consultant.
As i mentioned the ABAP work is mostly on Field Exists to make some fields mandatories, User Exists, Functional Modules, Enhancements & Reports.
For details queries you can write in SDN, you will get the replies.
Best of Luck for your new assignment.
Regards
Rehman
Mark Useful Answers -
Give me some PP important tables and Tcodes for abapers
give me some PP important tables and Tcodes for abapers
thank you,
Regards,
Jagrut Bharatkumar Shukla10 Production Planning (PP)
10.1 Work center
CRHH Work center hierarchy
CRHS Hierarchy structure
CRHD Work center header
CRTX Text for the Work Center or Production Resource/Tool
CRCO Assignment of Work Center to Cost Center
KAKO Capacity Header Segment
CRCA Work Center Capacity Allocation
TC24 Person responsible for the workcenter
CRCO Allocation of costcentre to workcentre
S022 Order Operation Data for Work Center
10.2 Routings/operations
MAPL Allocation of task lists to materials
PLAS Task list - selection of operations/activities
PLFH Task list - production resources/tools
PLFL Task list - sequences
PLKO Task list - header
PLKZ Task list: main header
PLPH Phases / suboperations
PLPO Task list operation / activity
PLPR Log collector for tasklists
PLMZ Allocation of BOM - items to operations
10.3 Bill of material
STKO BOM - header
STPO BOM - item
STAS BOMs - Item Selection
STPN BOMs - follow-up control
STPU BOM - sub-item
STZU Permanent BOM data
PLMZ Allocation of BOM - items to operations
MAST Material to BOM link
KDST Sales order to BOM link
10.4 Production orders
AUFK Production order headers
AFIH Maintenance order header
AUFM Goods movement for prod. order
AFKO Order header data PP orders
AFPO Order item
RESB Order componenten
AFVC Order operations
AFVV Quantities/dates/values in the operation
AFVU User fields of the operation
AFFL Work order sequence
AFFH PRT assignment data for the work order(routing)
JSTO Status profile
JEST Object status
AFRU Order completion confirmations
PRTs voor production orders
AFFH PRT assignment data for the work order
CRVD_A Link of PRT to Document
DRAW Document Info Record
TDWA Document Types
TDWD Data Carrier/Network Nodes
TDWE Data Carrier Type
10.5 Planned orders
PLAF Planned orders
10.6 KANBAN
PKPS Kanban identification, control cycle
PKHD Kanban control cycle (header data)
PKER Error log for Kanban containers
10.7 Reservations
RESB Material reservations
RKPF header
10.8 Capacity planning
KBKO Header record for capacity requirements
KBED Capacity requirements records
KBEZ Add. data for table KBED (for indiv. capacities/splits)
10.9 Planned independent requirements
PBIM Independent requirements for material
PBED Independent requirement data
PBHI Independent requirement history
PBIV Independent requirement index
PBIC Independent requirement index for customer req. -
SD reports we generated with the the help of ABAPers
What are the SD reports we generated with the the help of ABAPers? How can we modify existing reports?
Hi Gopala.,
Customer uses standard SAP reports if he wants additional reports apart from the functionality provided we functional people give the specifiction to the technical peole ABAPERS reagrding the report we needed and the tables and fields of the particular repot,With the help of that ABAPERS develop Query reports or they create reports
Some reports we also can generate using LIS
REWARD if helpfull
Thanks & Regards
Narayana
Message was edited by:
manam narayana -
XPRAS_UPG error. Do ABAPers fix these?
Experts,
The XPRAS_UPG phase is failing, because the program SAPLSDHI has syntax error in with SHLP_DESCR_TAB_T type missing or not defined. I checked all the underlying data types that define SHLP_DESCR_TAB_T and all are OK. What could possibly be the cause? Did anyone come across a similar situation? BTW, I am upgrading from 4.0B to ECC 6.0.
Do ABAPers enter the scene in this phase to fix errors?
Thanks in advance. Points will be gratefully awarded.
Edited by: NW on May 19, 2008 8:49 AMHi Raj,
for problems during XPRASS_UPG or any other phase refer to the upgrade manual according to the source and target release
this will give you notes that contains solution to general errors such as this
Thanks and Regards
Abdul Hadi -
Fresher Jobs for Certified ABAPers - Need Working Professionals' helps...
Am 1 among the Certified ABAPers (fresher) in the job hunt. Would be of great help if the working professionals help us out in our job hunts. Please share info on the openings / buddy referrals in your concern. Many many many are waiting, just not me!
Hi Nithya,
as far as i have seen the scenario, its too tough to get a job as an fresher in most of the IT companies,
so according to my own experience, you have to search your job in any middle or small scale companies, if you are in any major city , then i will suggest you to look into any infrastructure or real estate company, who have just implemented sap, in your city you have to search for those infrastructure company , those having many project in our out of town, any infrastructure company having many projects in their hands generally implements SAP , and after that they needs some abaper to support their implemented projects.
You can also search your job in any small level company whom have some more branches in other states or cities, these are handy task and may take some times, but will be fruitful to you , if you will succeed in achieving your goal.
If you have any dought, please feel free to revert by specifying the city name you are looking for a job. -
What is ABAPers Role??
1) What Abapers work in SAP(any company) for different modules like SD, PP, MM, FICO etc?
2) As a fresher what an abaper need to practice more?
3) What type of report we have to create? any example?
4) Is it neccesary for any fresher to have atleast one-lifecycle experience?Hi
) What Abapers work in SAP(any company) for different modules like SD, PP, MM, FICO etc?
You have to create reports,scripts, transactions, exits in those modules
2) As a fresher what an abaper need to practice more?
reports,scripts, transactions, exits
3) What type of report we have to create? any example?
Classical, Interactive reports and ALV reports
4) Is it neccesary for any fresher to have atleast one-lifecycle experience?
If you work in one full life cycle implementation project, then it will be good for your carrier.
Reward points for useful Answers
Regards
Anji -
Hi Guys...
I am SAP ABAPers having 3.5 yr of exp and i am planning to switch to SCM. I do have very good understanding of SD.Following are queries:
1. What are the fields/area in SCM where i should be working as technical guy and also whats are the corresponding knowledge in ABAP can be capitalized?
2. Where should i start from in SCM?
3. can anybody please tell me very good material with practical examples....
Thanks a lot guys in advance..Hi,
Go through the links below , It may help you
http://wiki.sdn.sap.com/wiki/display/BI/Aggregates--SAPBWQueryPerformance
http://help.sap.com/saphelp_nw70/helpdata/EN/9a/33853bbc188f2be10000000a114084/frameset.htm
http://help.sap.com/saphelp_nw70/helpdata/en/c5/40813b680c250fe10000000a114084/content.htm
http://www.sdn.sap.com/irj/scn/index;jsessionid=(J2EE3417700)ID0168391950DB10940851676120293872End?rid=/library/uuid/3a699d90-0201-0010-bc99-d5c0e3a2c87b&overridelayout=true
http://sap.seo-gym.com/performance%20tuning%20for%20queries.pdf
Regards,
Marasa. -
Now maost of the applications in SAP are written using JAVA. If it continues then what s the future of ABAPers... Do we have to learn JAVA for developing applications in SAP?Please clear my doubts..
Hi Selva Kumar,
I am not agree with you that most of the SAP application are written in JAVA. In SAP whatever the business logic and screens etc you find are all created in ABAP. To make fit SAP for business requirement there will be always ABAPer. ABAPer has lots of role in SAP . In all the modules most of the people are from ABAP.
From 6.0 version SAP has accepted JAVA for web application . You should not worry about the future of ABAP. You can learn JAVA or ABAP as your choice.
Reward if helpful
Thanks,
Manas -
i am working on alv report.i want to know how to get end_of_page (summary at the bottom)in the list
Hi,
I am sending sample coding for the ALV REPORT. Kindly go through it.
REPORT YMS_EXDET MESSAGE-ID E4 NO STANDARD PAGE HEADING LINE-SIZE 350.
*REPORT ZMM_EXIN_DOC_ALV_HEADER .
TABLES : J_1IEXCHDR, " header table
J_1IEXCDTL, " item table
J_1IPART1, " Excise part I detials
J_1IPART2, " Excise Part II details
LFA1, " vendor master table
J_1IMOVEND, " vendor excise details table
MSEG, " Document Segment: Material
MKPF, " Header: Material Document
DD07T, " domain text table
T001W. " Plant and Branch Details
DATA : BEGIN OF IT_CHDR OCCURS 100,
SERIALNO LIKE J_1IPART1-SERIALNO,
DOCNO LIKE J_1IEXCHDR-DOCNO,
DOCYR LIKE J_1IEXCHDR-DOCYR,
EXNUM LIKE J_1IEXCHDR-EXNUM,
EXDAT LIKE J_1IEXCHDR-EXDAT,
WERKS LIKE J_1IEXCHDR-WERKS,
EXBED LIKE J_1IEXCHDR-EXBED,
EXCCD LIKE J_1IEXCHDR-EXCCD,
ECS LIKE J_1IEXCHDR-ECS,
STATUS LIKE J_1IEXCHDR-STATUS, "CHALLAN STATUS
END OF IT_CHDR.
DATA : BEGIN OF IT_CDTL OCCURS 100,
SERIALNO LIKE J_1IPART1-SERIALNO,
DOCYR LIKE J_1IEXCDTL-DOCYR,
DOCNO LIKE J_1IEXCDTL-DOCNO,
EXNUM LIKE J_1IEXCDTL-EXNUM,
EXDAT LIKE J_1IEXCDTL-EXDAT,
LIFNR LIKE J_1IEXCDTL-LIFNR,
MATNR LIKE J_1IEXCDTL-MATNR,
MAKTX LIKE J_1IEXCDTL-MAKTX,
CHAPID LIKE J_1IEXCDTL-CHAPID,
EXBAS LIKE J_1IEXCDTL-EXBAS,
EXBED LIKE J_1IEXCDTL-EXBED,
ECS LIKE J_1IEXCDTL-ECS,
MENGE LIKE J_1IEXCDTL-MENGE,
MEINS LIKE J_1IEXCDTL-MEINS,
RDOC2 LIKE J_1IEXCDTL-RDOC2,
EXGRP LIKE J_1IEXCDTL-EXGRP,
RDOC1 LIKE J_1IEXCDTL-RDOC1,
STATUS LIKE J_1IEXCDTL-STATUS, "CHALLAN STATUS
END OF IT_CDTL.
DATA TEXT(10).
DATA : BEGIN OF IT_OUT OCCURS 0,
SERIALNO LIKE J_1IPART1-SERIALNO,
TEXT1 LIKE TEXT,
EXNUM LIKE J_1IEXCDTL-EXNUM,
EXDAT LIKE J_1IEXCDTL-EXDAT,
NAME LIKE LFA1-NAME1,
DDTEXT LIKE DD07T-DDTEXT,
EXCCD LIKE J_1IEXCHDR-EXCCD,
BUDAT LIKE MKPF-BUDAT,
EXBAS LIKE IT_CDTL-EXBAS,
EXBED LIKE IT_CDTL-EXBED,
ECS LIKE IT_CDTL-ECS,
MATNR LIKE IT_CDTL-MATNR,
MAKTX LIKE IT_CDTL-MAKTX,
CHAPID LIKE IT_CDTL-CHAPID,
MENGE LIKE IT_CDTL-MENGE,
MEINS LIKE IT_CDTL-MEINS,
DEL_IND(1),
END OF IT_OUT.
DATA IT_PART2 LIKE J_1IPART1 OCCURS 0 WITH HEADER LINE.
DATA S_NO(4) .
DATA DB_CNT LIKE SY-TABIX.
DATA EBELN_T LIKE MSEG-EBELN .
TYPE-POOLS : SLIS.
DATA : AFIELD TYPE SLIS_FIELDCAT_ALV.
DATA : LIST_HEADER TYPE SLIS_T_LISTHEADER,
FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
LS_FTCAT TYPE LVC_S_FCAT,
SORTCAT TYPE SLIS_T_SORTINFO_ALV,
SORTCAT_LN LIKE LINE OF SORTCAT,
G_REPID LIKE SY-REPID,
G_BACK_GROUND(70), "like bapibds01-objkey,
GS_VARIANT LIKE DISVARIANT,
G_SAVE ,
GT_EVENTS TYPE SLIS_T_EVENT,
ALV_EVENT TYPE SLIS_ALV_EVENT,
EVENTCAT TYPE SLIS_T_EVENT,
EVENTCAT_LN LIKE LINE OF EVENTCAT,
LAYOUT_IN TYPE SLIS_LAYOUT_ALV,
LAYOUT_IN1 TYPE SLIS_LAYOUT_ALV.
CONSTANTS : GC_FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE
'TOP_OF_PAGE',
GC_FORMNAME_USER_COMMAND TYPE SLIS_FORMNAME VALUE
'USER_COMMAND',
GC_FORMNAME_BEFORE_OUTPUT TYPE SLIS_FORMNAME VALUE
'BEFORE_OUTPUT'.
ALV_EVENT TYPE SLIS_ALV_EVENT,
DATA EX_NO LIKE IT_CHDR-EXNUM VALUE 0.
DATA REGTYP_1 LIKE J_1IPART1-REGTYP.
SELECTION-SCREEN BEGIN OF BLOCK B WITH FRAME.
PARAMETERS WERKS TYPE J_1IEXCHDR-WERKS.
SELECT-OPTIONS : BUDAT FOR J_1IEXCHDR-EXDAT.
PARAMETERS : R1 RADIOBUTTON GROUP GRP DEFAULT 'X',
R2 RADIOBUTTON GROUP GRP.
SELECTION-SCREEN END OF BLOCK B.
INITIALIZATION.
G_REPID = SY-REPID.
G_SAVE = 'A'.
PERFORM BUILD_EVENT USING GT_EVENTS[].
PERFORM ALV_EVENT_INIT.
AT SELECTION-SCREEN.
REFRESH LIST_HEADER.
PERFORM TOP_OF_PAGE_LIST_HEADER USING LIST_HEADER.
START-OF-SELECTION.
PERFORM ALV_EVENT_INIT.
G_REPID = SY-REPID.
G_BACK_GROUND = ' ' .
IF R1 = 'X'.
CLEAR R2. CLEAR : REGTYP_1.
REGTYP_1 = 'A'.
set titlebar 'BALAJI' with DB_CNT.
ELSEIF R2 = 'X'.
CLEAR R1.CLEAR : REGTYP_1.
REGTYP_1 = 'C'.
set titlebar 'BALAJI1' with DB_CNT.
ENDIF.
SELECT * FROM J_1IPART1
INTO CORRESPONDING FIELDS OF TABLE IT_PART2
WHERE REGTYP = REGTYP_1 AND
TRNTYP = 'GRPO'.
AND BUDAT IN BUDAT.
DOCYR = IT_CDTL-DOCYR AND
DOCNO = IT_CDTL-DOCNO.
LOOP AT IT_PART2.
SELECT SINGLE * FROM J_1IEXCHDR
INTO CORRESPONDING FIELDS OF IT_CHDR
WHERE TRNTYP = 'GRPO' AND
STATUS NE ' ' AND
STATUS EQ ' ' AND
DOCYR = IT_PART2-DOCYR AND
DOCNO = IT_PART2-DOCNO AND
WERKS = WERKS AND
EXDAT IN BUDAT.
ORDER BY EXDAT.
IF SY-SUBRC = 0.
APPEND IT_CHDR.
ELSE.
CONTINUE.
ENDIF.
IF SY-SUBRC <> 0.
MESSAGE E084.
ENDIF.
ENDLOOP.
*******************SPD****************
SELECT * INTO CORRESPONDING FIELDS OF IT_CDTL FROM J_1IEXCDTL WHERE
TRNTYP = 'GRPO' AND WERKS = WERKS AND
EXDAT IN BUDAT AND STATUS NE 'B'.
SELECT SINGLE * FROM J_1IPART1 WHERE DOCNO = IT_CDTL-DOCNO AND
DOCYR = IT_CDTL-DOCYR AND
REGTYP = REGTYP_1.
IF SY-SUBRC EQ 0.
SELECT SINGLE * FROM J_1IPART2 WHERE DOCNO = IT_CDTL-DOCNO AND
DOCYR = IT_CDTL-DOCYR.
IF SY-SUBRC NE 0.
IT_CDTL-SERIALNO = J_1IPART1-SERIALNO.
APPEND IT_CDTL.
ENDIF.
ENDIF.
ENDSELECT.
***************SPD********************
SELECT BDOCNO BDOCYR BEXNUM BEXDAT BWERKS BEXBED B~EXCCD
B~ECS
B~STATUS
A~SERIALNO
FROM J_1IPART1 AS A INNER JOIN J_1IEXCHDR AS B
ON ADOCYR = BDOCYR AND ADOCNO = BDOCNO INTO CORRESPONDING
FIELDS OF TABLE IT_CHDR WHERE B~TRNTYP = 'GRPO' AND
BWERKS = WERKS AND BEXDAT IN BUDAT AND
B~STATUS = ' ' AND
B~STATUS = 'C' AND
A~REGTYP = REGTYP_1.
SORT IT_PART2 BY SERIALNO.
LOOP AT IT_CHDR.
SELECT * FROM J_1IEXCDTL
INTO CORRESPONDING FIELDS OF IT_CDTL
FOR ALL ENTRIES IN IT_CHDR
WHERE
TRNTYP = 'GRPO' AND
STATUS EQ ' ' AND
STATUS EQ 'C' AND
STATUS NE 'P' AND
DOCNO = IT_CHDR-DOCNO AND
DOCYR = IT_CHDR-DOCYR AND
EXNUM = IT_CHDR-EXNUM AND
EXDAT = IT_CHDR-EXDAT AND
WERKS = IT_CHDR-WERKS.
IF SY-SUBRC = 0.
APPEND IT_CDTL.
CLEAR IT_CDTL.
ELSE.
CONTINUE.
ENDIF.
ENDSELECT.
MODIFY IT_CDTL INDEX SY-TABIX.
CLEAR IT_CDTL.
ENDLOOP.
*****spd change**********
*LOOP AT IT_CDTL.
*SELECT SINGLE * FROM J_1IPART2 WHERE DOCNO = IT_CDTL-DOCNO AND
DOCYR = IT_CDTL-DOCYR.
*IF SY-SUBRC = 0.
DELETE IT_CDTL INDEX SY-TABIX.
*ENDIF.
*ENDLOOP.
**SELECT
*******spd ****************
SORT IT_CDTL BY EXNUM EXDAT.
DELETE ADJACENT DUPLICATES FROM IT_CDTL COMPARING MATNR EXNUM EXDAT.
LOOP AT IT_CDTL.
CLEAR TEXT.
DB_CNT = DB_CNT + 1.
READ TABLE IT_CHDR WITH KEY EXNUM = IT_CDTL-EXNUM DOCNO =
IT_CDTL-DOCNO.
READ TABLE IT_PART2 WITH KEY DOCNO = IT_CDTL-DOCNO .
IT_OUT-SERIALNO = IT_PART2-SERIALNO.
SELECT SINGLE NAME1 FROM LFA1
INTO IT_OUT-NAME
WHERE LIFNR = IT_CDTL-LIFNR.
SELECT SINGLE * FROM LFA1
WHERE LIFNR = IT_CDTL-LIFNR.
IF LFA1-LAND1 EQ 'IN'.
TEXT = 'INVOICE'.
IT_OUT-TEXT1 = TEXT.
ELSE.
TEXT = 'BOE'.
IT_OUT-TEXT1 = TEXT.
ENDIF.
SELECT SINGLE * FROM J_1IMOVEND
WHERE LIFNR = IT_CDTL-LIFNR.
SELECT SINGLE * FROM DD07T
INTO IT_OUT-DDTEXT
WHERE DOMNAME = 'J_1IVTYP' AND
DDLANGUAGE = 'EN' AND
DOMVALUE_L = J_1IMOVEND-J_1IVTYP.
IF DD07T-DDTEXT = 'First Stage Dealer of indigenous excisable goods'
OR
DD07T-DDTEXT = 'Second Stage Dealer of indigenous excisablegoods'.
DD07T-DDTEXT = 'Dealer'.
ENDIF.
IT_OUT-DDTEXT = DD07T-DDTEXT.
ELSEIF DD07T-DDTEXT = 'Second Stage Dealer of indigenous excisable
*goods'.
DD07T-DDTEXT =
CLEAR EBELN_T.
SELECT SINGLE LFBNR FROM MSEG
INTO EBELN_T
WHERE MBLNR = IT_CDTL-RDOC2 .
SELECT SINGLE * FROM MSEG
WHERE BWART EQ '106' AND
LFBNR = EBELN_T ."and
ebeln = ebeln_t.
IF SY-SUBRC = 0.
IT_OUT-DEL_IND = 'X'.
ELSE.
IT_OUT-DEL_IND = ' '.
ENDIF.
SELECT SINGLE BUDAT FROM MKPF
INTO IT_OUT-BUDAT
WHERE MBLNR = EBELN_T ."MSEG-LFBNR.
IT_OUT-EXNUM = IT_CDTL-EXNUM.
IT_OUT-EXDAT = IT_CDTL-EXDAT.
IT_OUT-EXCCD = IT_CHDR-EXCCD.
IT_OUT-SERIALNO = IT_CHDR-SERIALNO.
IT_OUT-SERIALNO = IT_CDTL-SERIALNO.
IT_OUT-EXBAS = IT_CDTL-EXBAS.
IT_OUT-EXBED = IT_CDTL-EXBED.
IT_OUT-ECS = IT_CDTL-ECS.
IT_OUT-MATNR = IT_CDTL-MATNR.
IT_OUT-MAKTX = IT_CDTL-MAKTX.
IT_OUT-CHAPID = IT_CDTL-CHAPID.
IT_OUT-MENGE = IT_CDTL-MENGE.
IT_OUT-MEINS = IT_CDTL-MEINS.
APPEND IT_OUT.
EX_NO = IT_CDTL-EXNUM.
ENDLOOP.
Title Portion
IF REGTYP_1 = 'A'.
SET TITLEBAR 'BALAJI' WITH DB_CNT.
ELSEIF REGTYP_1 = 'C'.
SET TITLEBAR 'BALAJI1' WITH DB_CNT.
ENDIF.
AFIELD-COL_POS = 1.
AFIELD-FIELDNAME = 'SERIALNO'.
AFIELD-SELTEXT_L = 'SERIAL NO.'.
AFIELD-JUST = 'L'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 2.
AFIELD-FIELDNAME = 'TEXT1'.
AFIELD-SELTEXT_L = 'TYPE OF DOC'.
AFIELD-JUST = 'L'.
AFIELD-DECIMALS_OUT = '0'.
AFIELD-NO_ZERO = 'X'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 3.
AFIELD-FIELDNAME = 'EXNUM'.
AFIELD-SELTEXT_L = 'DOC.NO'.
AFIELD-JUST = 'L'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 4.
AFIELD-FIELDNAME = 'EXDAT'.
AFIELD-SELTEXT_L = 'DOC.DATE'.
AFIELD-JUST = 'C'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 5.
AFIELD-FIELDNAME = 'NAME'.
AFIELD-SELTEXT_L = 'NAME OF THE SUPPLIER'.
AFIELD-NO_ZERO = 'X'.
AFIELD-JUST = 'L'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 6.
AFIELD-FIELDNAME = 'DDTEXT'.
AFIELD-SELTEXT_L = 'TYPE-OF-SUPPLIER'.
AFIELD-JUST = 'L'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 7.
AFIELD-FIELDNAME = 'EXCCD'.
AFIELD-SELTEXT_L = 'ECC OF THE SUPPLIER'.
AFIELD-NO_ZERO = 'X'.
AFIELD-JUST = 'L'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 8.
AFIELD-FIELDNAME = 'BUDAT'.
AFIELD-SELTEXT_L = 'INPUT RECV DATE'.
AFIELD-JUST = 'C'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 9.
AFIELD-FIELDNAME = 'EXBAS'.
AFIELD-SELTEXT_L = 'ASSESSABLE-VALUE'.
AFIELD-DO_SUM = 'X'.
AFIELD-JUST = 'R'.
AFIELD-DECIMALS_OUT = '2'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 10.
AFIELD-FIELDNAME = 'EXBED'.
AFIELD-SELTEXT_L = 'DET OF CREDIT TAKEN CENVAT'.
AFIELD-JUST = 'R'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 11.
AFIELD-FIELDNAME = 'ECS'.
AFIELD-SELTEXT_L = 'DET OF CREDIT TAKEN E-CESS'.
AFIELD-JUST = 'R'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 12.
AFIELD-FIELDNAME = 'MATNR'.
AFIELD-SELTEXT_L = 'MATERIAL-CODE'.
AFIELD-JUST = 'L'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 13.
AFIELD-FIELDNAME = 'MAKTX'.
AFIELD-SELTEXT_L = 'DESCRIPTION'.
AFIELD-JUST = 'L'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 14.
AFIELD-FIELDNAME = 'CHAPID'.
AFIELD-SELTEXT_L = 'TARIFF-ID'.
AFIELD-JUST = 'L'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 15.
AFIELD-FIELDNAME = 'MENGE'.
AFIELD-SELTEXT_L = 'QUANTITY'.
AFIELD-JUST = 'R'.
AFIELD-DO_SUM = ' '.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 16.
AFIELD-FIELDNAME = 'MEINS'.
AFIELD-SELTEXT_L = 'UOM'.
AFIELD-JUST = 'C'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 17.
AFIELD-FIELDNAME = 'DEL_IND'.
AFIELD-SELTEXT_L = 'Deleted'.
AFIELD-JUST = 'C'.
APPEND AFIELD TO FIELDCAT.
AFIELD-COL_POS = 18.
AFIELD-FIELDNAME = 'PO NO'.
AFIELD-SELTEXT_L = 'PURDOCNO'.
AFIELD-JUST = 'C'.
APPEND AFIELD TO FIELDCAT.
* LAYOUT FOR ZEBRA CATLOG
LAYOUT_IN-COLWIDTH_OPTIMIZE = 'X'.
LAYOUT_IN-ZEBRA = 'X'.
LAYOUT_IN-GET_SELINFOS = 'X'.
LAYOUT_IN-CONFIRMATION_PROMPT = 'X'.
LAYOUT_IN-DETAIL_POPUP = 'X' .
SORTCAT-decimals = '0'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = G_REPID
I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
I_SAVE = G_SAVE
IS_VARIANT = GS_VARIANT
IT_FIELDCAT = FIELDCAT
IT_SORT = SORTCAT
IS_LAYOUT = LAYOUT_IN
IT_EVENTS = EVENTCAT
I_BACKGROUND_ID = g_back_ground
TABLES
T_OUTTAB = IT_OUT.
*& Form TOP_OF_PAGE_LIST_HEADER
text
-->LIST_HEADERtext
FORM TOP_OF_PAGE_LIST_HEADER USING LIST_HEADER TYPE SLIS_T_LISTHEADER.
DATA : HLINE TYPE SLIS_LISTHEADER,
TEXT(60) TYPE C.
CLEAR : HLINE,TEXT.
HLINE-TYP = 'H'.
HLINE-INFO = TEXT.
APPEND HLINE TO LIST_HEADER.
SELECT SINGLE * FROM T001W WHERE WERKS = WERKS.
CLEAR : HLINE,TEXT.
HLINE-TYP = 'H'.
WRITE 'PLANT :' TO TEXT.
WRITE WERKS TO TEXT+8.
HLINE-INFO = TEXT.
APPEND HLINE TO LIST_HEADER.
CLEAR : HLINE,TEXT.
HLINE-TYP = 'H'.
WRITE T001W-NAME1 TO TEXT.
HLINE-INFO = TEXT.
APPEND HLINE TO LIST_HEADER.
CLEAR : HLINE,TEXT.
HLINE-TYP = 'H'.
WRITE T001W-STRAS TO TEXT.
HLINE-INFO = TEXT.
APPEND HLINE TO LIST_HEADER.
CLEAR : HLINE,TEXT.
HLINE-TYP = 'H'.
WRITE T001W-ORT01 TO TEXT.
HLINE-INFO = TEXT.
APPEND HLINE TO LIST_HEADER.
CLEAR : HLINE,TEXT.
HLINE-TYP = 'H'.
WRITE 'DATE :' TO TEXT.
WRITE BUDAT-LOW TO TEXT+7.
IF BUDAT-HIGH NE ''.
WRITE 'TO' TO TEXT+18.
WRITE BUDAT-HIGH TO TEXT+22.
ENDIF.
HLINE-INFO = TEXT.
APPEND HLINE TO LIST_HEADER.
ENDFORM. "TOP_OF_PAGE_LIST_HEADER
*& Form ALV_EVENT_INIT
text
FORM ALV_EVENT_INIT .
CLEAR ALV_EVENT.
ALV_EVENT-NAME = SLIS_EV_TOP_OF_PAGE.
ALV_EVENT-FORM = 'ALV_TOP_OF_PAGE'.
APPEND ALV_EVENT TO EVENTCAT.
CLEAR ALV_EVENT.
ALV_EVENT-NAME = SLIS_EV_TOP_OF_LIST.
ALV_EVENT-FORM = 'ALV_TOP_OF_LIST'.
APPEND ALV_EVENT TO EVENTCAT.
CLEAR ALV_EVENT.
ALV_EVENT-NAME = SLIS_EV_END_OF_LIST.
ALV_EVENT-FORM = 'ALV_END_OF_LIST'.
APPEND ALV_EVENT TO GT_EVENTS.
CLEAR ALV_EVENT.
ALV_EVENT-NAME = SLIS_EV_END_OF_PAGE.
ALV_EVENT-FORM = 'ALV_END_OF_PAGE'.
APPEND ALV_EVENT TO GT_EVENTS.
ENDFORM. "ALV_EVENT_INIT
*& Form ALV_TOP_OF_PAGE
text
FORM ALV_TOP_OF_PAGE.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
IT_LIST_COMMENTARY = LIST_HEADER
I_LOGO = 'ENJOYSAP_LOGO'.
ENDFORM. "ALV_TOP_OF_PAGE
*& Form BUILD_EVENT
text
-->P_GT_EVENTS[] text
FORM BUILD_EVENT USING P_EVENTS TYPE SLIS_T_EVENT.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
I_LIST_TYPE = 0
IMPORTING
ET_EVENTS = P_EVENTS
EXCEPTIONS
LIST_TYPE_WRONG = 1
OTHERS = 2.
READ TABLE P_EVENTS WITH KEY NAME = SLIS_EV_USER_COMMAND INTO
ALV_EVENT.
IF SY-SUBRC = 0.
MOVE GC_FORMNAME_USER_COMMAND TO ALV_EVENT-FORM.
APPEND ALV_EVENT TO P_EVENTS.
ENDIF.
READ TABLE P_EVENTS WITH KEY NAME = SLIS_EV_BEFORE_LINE_OUTPUT INTO
ALV_EVENT.
IF SY-SUBRC = 0.
MOVE GC_FORMNAME_BEFORE_OUTPUT TO ALV_EVENT-FORM.
APPEND ALV_EVENT TO P_EVENTS.
ENDIF.
ENDFORM. " BUILD_EVENT
Thanks,
Shankar
Maybe you are looking for
-
Old Computer whent bad how do I deauthorize it?
All right I live in more than one place to start off with so I have 2 computer two start with that I authorize to play and down load music + a laptop. Well I had a hard drive go bad on one computer and then my Step father decied to reload the pc that
-
Portalweb 500, Internal Server Error
**Looking for help** I'm running a ConfigMgr 2012 R2 setup, and on the Primary site I'm unable to work with AppCatalog. Looks like IIS isn't functioning properly and I'm getting the following-- from portlctl.log- Call to HttpSendRequestSync failed fo
-
Second Gen Ipod Nano on Vista, not syncing
My Ipod still works and I can play I Tunes just fine on my computer. However, it absolutely refuses to work with me. Can anyone help me, please? I knew Vista was a bad idea.
-
Diffence in line item display and Balance display
Hi Gurus, Please let me know why there is difference in line item display and balance display in one of GL account in previous year for 1 posting period.what can be cause for this, If I go at FS10n and check the balance for specific period it shows d
-
ORA-00604,ORA-00600,ORA-1652,ORA-1653,ORA-00257 errors
Hi All, I am getting the below alerts in my Oracle 9i database. ORA-00604: error occurred at recursive SQL level 3 ORA-00600: internal error code, arguments: [kghpih:ds], [ ORA-1652: unable to extend temp segment by 128 in tablespace TS_PHD