Task
|
Report
|
Function Module/BAPI
|
Report for Converting the
IDoc Status
|
RC1_IDOC_SET_STATUS
|
|
RFC - Connection Test
|
RSRFCPIN
|
CAT_CHECK_RFC_DESTINATION
|
RSRFCCHK
|
RFC_CHECK_DESTINATION
|
|
RSRFCPIN_NEW
|
RFC_CHECK_DESTINATION_ID
|
|
RSRFCTES
|
SCWB_RFC_CHECK_DESTINATION
|
|
Reprocess IDOC status 51
|
RBDMANIN
|
|
RBDMANI2
|
||
Reprocess IDOC status 64
|
RBDAPP01
|
|
Reprocess IDOC status 30
|
RSEOUT00
|
|
Reprocess IDOC status 32 & 69-Edited
|
RBDAGAIE
|
|
Reprocess IDOC status 26
|
RBDSYNER
|
Mar 22, 2016
Useful Standard SAP Reports
Jan 15, 2016
ABAP: Send Email with attached Internal Table XLS file
Function module that will take any internal table as input, convert in to XLS format
and send out emails with the attachment.
Add the appropriate import parameters.
Source Code
====================================================
function zinttab_excl_email.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(SENDER) TYPE AD_SMTPADR
*" REFERENCE(SUBJECT) TYPE SO_OBJ_DES
*" TABLES
*" RECEPIENTS TYPE BCSY_SMTPA
*" RETURN TYPE TABLE_OF_STRINGS OPTIONAL
*" DATA_TO_SEND
*" EMAIL_BODY TYPE BCSY_TEXT
*"----------------------------------------------------------------------
*Function module that will take any internal table as input, convert in to XLS format
*and send out emails with the attachment. :SATYABRATA SAHOO
*"----------------------------------------------------------------------
if recepients[] is initial.
return.
endif.
data: lo_send_request type ref to cl_bcs,
lo_document type ref to cl_document_bcs,
lo_sender_id type ref to if_sender_bcs,
lo_recipient type ref to if_recipient_bcs.
data: lo_bcs_exception type ref to cx_bcs.
data: lv_bcs_message type string,
lv_send_to_all type os_boolean,
lv_fields(10).
field-symbols: < fs_recipient > type ad_smtpadr.
*******************************************************************************
* build the file content
data: lo_struct_type type ref to cl_abap_structdescr,
lo_element_type type ref to cl_abap_elemdescr.
data: lt_components type cl_abap_structdescr=>component_table,
ls_field type dfies.
field-symbols: type abap_componentdescr.
data: lt_binary_text type solix_tab,
lv_text type string,
lv_size type so_obj_len.
* build the header data
lo_struct_type ?= cl_abap_typedescr=>describe_by_data( data_to_send ).
lt_components = lo_struct_type->get_components( ).
loop at lt_components assigning.
if sy-tabix gt 1.
concatenate lv_text cl_bcs_convert=>gc_tab into lv_text.
endif.
lo_element_type ?=-type.
ls_field = lo_element_type->get_ddic_field( ).
concatenate lv_text ls_field-scrtext_l into lv_text.
endloop.
concatenate lv_text cl_bcs_convert=>gc_crlf into lv_text.
* build the structure of the body
field-symbols: type any,
type any.
loop at data_to_send assigning.
loop at lt_components assigning.
if sy-tabix gt 1.
concatenate lv_text cl_bcs_convert=>gc_tab into lv_text.
endif.
assign component-name of structure to .
lv_fields =.
condense lv_fields.
* concatenate lv_text into lv_text.
concatenate lv_text lv_fields into lv_text.
endloop.
concatenate lv_text cl_bcs_convert=>gc_crlf into lv_text.
endloop.
try .
cl_bcs_convert=>string_to_solix(
exporting
iv_string = lv_text
iv_codepage = '4103' "suitable for MS Excel, leave empty"
iv_add_bom = abap_true
importing
et_solix = lt_binary_text
ev_size = lv_size ).
catch cx_bcs into lo_bcs_exception.
lv_bcs_message = lo_bcs_exception->get_text( ).
append lv_bcs_message to return.
exit.
endtry.
*******************************************************************************
* send an email
try .
clear: lo_send_request, lo_document, lo_sender_id.
lo_send_request = cl_bcs=>create_persistent( ).
lo_document = cl_document_bcs=>create_document(
i_type = 'RAW'
i_text = email_body[]
i_subject = subject ).
if not data_to_send[] is initial.
lo_document->add_attachment(
i_attachment_type = 'XLS'
i_attachment_subject = subject
i_attachment_size = lv_size
i_att_content_hex = lt_binary_text ).
endif.
lo_send_request->set_document( lo_document ).
lo_sender_id = cl_cam_address_bcs=>create_internet_address( sender ).
lo_send_request->set_sender( lo_sender_id ).
* add recipients
loop at recepients assigning.
clear lo_recipient.
lo_recipient = cl_cam_address_bcs=>create_internet_address( ).
* add recipient with its respective attributes to send request
lo_send_request->add_recipient( i_recipient = lo_recipient
i_express = abap_true ).
endloop.
lo_send_request->set_status_attributes( i_requested_status = 'E'
i_status_mail = 'E' ).
lo_send_request->set_send_immediately( abap_true ).
lv_send_to_all = lo_send_request->send( i_with_error_screen = abap_true ).
if lv_send_to_all eq abap_true.
data: ls_return like line of return.
ls_return = text-001. "Success
append ls_return to return.
endif.
commit work.
catch cx_bcs into lo_bcs_exception.
lv_bcs_message = lo_bcs_exception->get_text( ).
append lv_bcs_message to return.
exit.
endtry.
endfunction.
============================================
Ref-http://techsplice.com/
and send out emails with the attachment.
Add the appropriate import parameters.
Add appropriate table parameters.
Source Code
====================================================
function zinttab_excl_email.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(SENDER) TYPE AD_SMTPADR
*" REFERENCE(SUBJECT) TYPE SO_OBJ_DES
*" TABLES
*" RECEPIENTS TYPE BCSY_SMTPA
*" RETURN TYPE TABLE_OF_STRINGS OPTIONAL
*" DATA_TO_SEND
*" EMAIL_BODY TYPE BCSY_TEXT
*"----------------------------------------------------------------------
*Function module that will take any internal table as input, convert in to XLS format
*and send out emails with the attachment. :SATYABRATA SAHOO
*"----------------------------------------------------------------------
if recepients[] is initial.
return.
endif.
data: lo_send_request type ref to cl_bcs,
lo_document type ref to cl_document_bcs,
lo_sender_id type ref to if_sender_bcs,
lo_recipient type ref to if_recipient_bcs.
data: lo_bcs_exception type ref to cx_bcs.
data: lv_bcs_message type string,
lv_send_to_all type os_boolean,
lv_fields(10).
field-symbols: < fs_recipient > type ad_smtpadr.
*******************************************************************************
* build the file content
data: lo_struct_type type ref to cl_abap_structdescr,
lo_element_type type ref to cl_abap_elemdescr.
data: lt_components type cl_abap_structdescr=>component_table,
ls_field type dfies.
field-symbols:
data: lt_binary_text type solix_tab,
lv_text type string,
lv_size type so_obj_len.
* build the header data
lo_struct_type ?= cl_abap_typedescr=>describe_by_data( data_to_send ).
lt_components = lo_struct_type->get_components( ).
loop at lt_components assigning
if sy-tabix gt 1.
concatenate lv_text cl_bcs_convert=>gc_tab into lv_text.
endif.
lo_element_type ?=
ls_field = lo_element_type->get_ddic_field( ).
concatenate lv_text ls_field-scrtext_l into lv_text.
endloop.
concatenate lv_text cl_bcs_convert=>gc_crlf into lv_text.
* build the structure of the body
field-symbols:
loop at data_to_send assigning
loop at lt_components assigning
if sy-tabix gt 1.
concatenate lv_text cl_bcs_convert=>gc_tab into lv_text.
endif.
assign component
lv_fields =
condense lv_fields.
* concatenate lv_text
concatenate lv_text lv_fields into lv_text.
endloop.
concatenate lv_text cl_bcs_convert=>gc_crlf into lv_text.
endloop.
try .
cl_bcs_convert=>string_to_solix(
exporting
iv_string = lv_text
iv_codepage = '4103' "suitable for MS Excel, leave empty"
iv_add_bom = abap_true
importing
et_solix = lt_binary_text
ev_size = lv_size ).
catch cx_bcs into lo_bcs_exception.
lv_bcs_message = lo_bcs_exception->get_text( ).
append lv_bcs_message to return.
exit.
endtry.
*******************************************************************************
* send an email
try .
clear: lo_send_request, lo_document, lo_sender_id.
lo_send_request = cl_bcs=>create_persistent( ).
lo_document = cl_document_bcs=>create_document(
i_type = 'RAW'
i_text = email_body[]
i_subject = subject ).
if not data_to_send[] is initial.
lo_document->add_attachment(
i_attachment_type = 'XLS'
i_attachment_subject = subject
i_attachment_size = lv_size
i_att_content_hex = lt_binary_text ).
endif.
lo_send_request->set_document( lo_document ).
lo_sender_id = cl_cam_address_bcs=>create_internet_address( sender ).
lo_send_request->set_sender( lo_sender_id ).
* add recipients
loop at recepients assigning
clear lo_recipient.
lo_recipient = cl_cam_address_bcs=>create_internet_address(
* add recipient with its respective attributes to send request
lo_send_request->add_recipient( i_recipient = lo_recipient
i_express = abap_true ).
endloop.
lo_send_request->set_status_attributes( i_requested_status = 'E'
i_status_mail = 'E' ).
lo_send_request->set_send_immediately( abap_true ).
lv_send_to_all = lo_send_request->send( i_with_error_screen = abap_true ).
if lv_send_to_all eq abap_true.
data: ls_return like line of return.
ls_return = text-001. "Success
append ls_return to return.
endif.
commit work.
catch cx_bcs into lo_bcs_exception.
lv_bcs_message = lo_bcs_exception->get_text( ).
append lv_bcs_message to return.
exit.
endtry.
endfunction.
============================================
Ref-http://techsplice.com/
Dec 18, 2015
SAP ABAP FAQs- Part 3 (Object Oriented ABAP)
SAP OOABAP
Interview Questions Answers
1. Explain about Object oriented programming?
Object oriented programming is one of the most popular
methodologies in
software development. It offers a powerful model for
creating computer programs.
It speeds the program development process, improves
maintenance and enhances
Reusability of programs.
2. Object oriented Concepts?
Encapsulation:
It means combining data and code that acts up on data
into one single unit of
organization, so that both are safe from out side
interference. In OOAbap
encapsulation is achieved through classes.
Polymorphism:
It means many forms that mean the same method behaves
differently in different
method calls.
Inheritance:
It means deriving a child class from base class; child
class acquires all the
properties from base class.
Abstraction:
Abstraction simplifies a complex problem to a simpler
problem by specifying and
modeling the class to the relevant problem scenario.
It simplifies the problem by giving the class its
specific class of inheritance.
Composition also helps in solving the problem to an
extent.
3. What is a class?
Classes are templates for objects. Conversely, you can
say that the type of an
object is the same as its class. A class is an abstract
description of an object.
You could say that it is a set of instructions for
building an object. The attributes
of objects are defined by the components of the class,
which describe the state
and behavior of objects.
4. What is an object?
An object is a combination of messages and data. Objects
can receive and send
messages and use messages to interact with each other.
The messages contain
information that is to be passed to the recipient
object.
5. How many types of classes are there in OOABAP?
Public class
Private class
Final class
Singleton
class
Abstract class
Persistent class
Friend class
6. What is the difference between function group and classes?
We can create many instances of the same class with in a
program, but we cannot
create many instances of function group.
7. What are the differences local & global classes?
Local classes are defined locally with in a program and
the other programs can’t
access the same classes directly.
But global classes are not like that they are globally
accessible from ABAP
environment. Global classes are centrally defined in a
repository. Transaction code
for global classes is SE24(class builder).
8. What are the Components of a class?
Attributes and methods are components inside a class.
9. How to define a class locally?
class definition.
Public section.
Methods: m1 importing p1 type
Exporting p2 type
Changing p3 type
Returning p4 type
Exceptions .
Protected section.
Private section.
Endclass.
Class implementation.
Method m1.
Endmethod.
Endclass.
10. What is a constructor & types of constructors?
Constructor is a special method, which will be called
automatically as and when
the object is created for a class, it can have only
importing parameters but not
exporting, it is generally used to give some initial
state to the object.
A class can contain have two types of constructors
static and instance
constructors.
11. Difference between static and instance constructors?
Static constructor will be called only once, i.e. at the
time of loading class in to
memory. Instance constructors are instance specific,
these constructors will be
called as and when the new object is created for that
class.
12. How to a create object for the class?
Data: ref type ref to .
Create object ref.
13. how to call a method?
Call method ref>
method_name .
14. What is static attribute & method?
Static attributes & methods are class specific,
memory will be allocated only once
for Static attributes & methods irrespective of no.
of objects created.
We can access the components with a reference variable
i.e. by using class name
Call method =>menthod_name.
15. Can we instantiate a class within implementation of other class?
Yes
16. Can we put non declarative statement e.g. STARTOFSELECTION
within a class?
No, we can’t use.
17. How to create a global class?
With tcode SE24
18. How can we pass importing parameter?
Pass by value/pass by reference
19. Can we pass returning parameter by reference?
NO, only pass by value
20. Can a method call itself?
Yes
21. What is me variable?
It just like a selfreference, by this we can call
methods that are with in same class
with out creating object.
22. Can we have export parameter in Instance constructor? No
23. What is an abstract class?
Abstract class contains both abstract methods and normal
methods, abstract
methods cannot implement in side abstract class, and
instead these methods will
be implemented by child classes of that abstract class.
24. What is final class & Method?
Final classes can’t be inherited that means it can not
have child classes and final
method of a class cannot be redefined.
25. What is an interface?
Interfaces contain only public methods with no
implementation; these interfaces
are included in public section of classes and implement
the methods of interfaces.
26. Can we implement interface in private section of any class?
No
26. What is alias?
Instead of specifying full name of interface methods, we
can assign it a name
which can directly trigger.
28. What is a friend class?
Friend class is a class it can access private components
of it’s friends class.
29. How to create an object for private class?
In general we can not create object for a private class,
but we can access static
method of a private class so call that method using its
class name and import that
object.
For example take one static method with an exporting
parameter inside private
class and write object creation code in that static
method and export that object.
30. What is a Singleton class?
Singleton classes can be instantiated only once, i.e.
only one object is created for
Singleton classes.
31. What is a Persistent class?
A special class, the attributes of which are linked to
database tables via objectrelational
mapping. Since Release 6.10 they can be created using
the Mapping Assistant of the Class Builder.
The objects of persistent classes are managed by Object
Services. An object in a
persistent class, the attributes of which are saved as
database content after the
run time of an ABAP program.
Oct 9, 2015
Oct 7, 2015
Transaction Codes For SAP PI
| SXMB_IFR | Start Integration Builder |
| SXMB_MONI | Integration Engine Monitoring |
| SXMB_ADM | Integration Engine Administration |
| SXMB_MONI_BPE | Process Engine Monitoring |
| SXI_MONITOR | XI: Message Monitoring |
| SXI_CACHE | To Access IS runtime cache |
| IDX1 | Port Maintenance in IDoc Adapter |
| IDX2 | Meta Data Overview in IDoc Adapter |
| IDX5 | Monitor IDoc Adapter |
| IDXP | to monitor the message packages |
| IDXPW | to activate the IDOC message package |
| SMQ1 | qRFC Monitor (Outbound Queue) |
| SMQ2 | qRFC Monitor (Inbound Queue) |
| SMQR | to register the queue |
| SMQS | to register the destination in QOUT scheduler |
| ST03 | workload |
| ST06 | OS Monitor |
| ST22 | Dump analysis |
| SCC4 | Client Administration |
| SALE | ALE Settings |
| RZ10 | edit system profile |
| RZ70 | SLD Administration |
| SU01 | users maintenance |
| AL08 | list all logged users(user login logon) |
| SE01 | manage change requests |
| SE09 | Change Request |
| SE10 | Change Request |
| SE11 | ABAP Data dictionary |
| SE16 | Data Browser |
| SE24 | Class Builder |
| SE37 | mantain funcion modules |
| SE38 | ABAP Editor |
| SE80 | Object Navigator |
| SE93 | Maintain Transaction Codes |
| SICF | http server configuration |
| SMGW | Gateway Monitor |
| PFCG | Roles |
| TSTC | SAP transactions codes table |
| TSTCT | transaction descriptions table |
| STMS | transports management |
| SPAM | apply ABAP support packages |
| SPAU | manage objects after apply support packages |
| SLDCHECK | Test SLD Connection |
| SLDAPICUST | SLD API Customizing |
| ST22 | ABAP dump analysis |
| SPROXY | ABAP Proxy Generation |
| ABAPDOCU | ABAP Documentation and Examples |
| SM02 | System Messages |
| SM21 | Online System Log Analysis (log sistema XI) |
| SM30 | Call View Maintenance |
| SM58 | Asynchronous RFC Error Log |
| SM59 | RFC Destinations (Display/Maintain) |
| SMICM | ICM Monitor (J2EE administration) |
| BD64 | mantain distribution model |
| BD87 | Status Monitor for ALE Messages |
| WE02 | Display IDoc |
| WE05 | IDoc Lists |
| WE09 | Search for IDocs by Content |
| WE19 | IDoc Test tool |
| WE20 | Partner Profiles |
| WE21 | Port definition in XI |
| WE60 | Documentation for IDoc types |
| SWXF_PBUILDER | for Detail BPM Process |
| WEOUTQUEUE | to start the queue processing |
Subscribe to:
Posts (Atom)
How to change Transport request from Released to Modifiable
Step 1: Go to SE38 – Execute Program RDDIT076. Step 2: Give your released requests number and execute again. Step 3: After executing, yo...
-
Links to various helpful posts on SAP PI on SCN n other sites. Process Integration (PI) & SOA Middleware-SCN http://scn.sap.com/comm...
-
Function module that will take any internal table as input, convert in to XLS format and send out emails with the attachment. Add the...
-
Category : ABAP Programming Error Runtime Errors: READ_REPORT_LINE_TOO_LONG Except.: CX_SY_READ_SRC_LINE_TOO_LONG Detail explanati...

