How to MAIL in wdapllication abap .
Hello Experts ,
I am developing abap web dynpro application . view is having fields ;
mail to :
message text :
and button send .
clicking on button should send the mail to receipent specified in mail to inputfiled .
can anybody help me in doing this .
i have develoed view with fields , but i dnt know how to send the mail .
Hi Thomas ,
I am using following code to send mail . this code doesnt give any error . but no mail is getting send . there is no mail in inbox of specified receipent .
can u tell whats wrong with this
DATA :
l_o_send_request TYPE REF TO cl_bcs, " email request object
l_o_document TYPE REF TO cl_document_bcs, " documents object
l_o_sender TYPE REF TO cl_cam_address_bcs, " sender object
l_o_recipient TYPE REF TO cl_cam_address_bcs, " recipient object
bcs_exception TYPE REF TO cx_bcs, " exceptions
*l_v_ret javascript:void(0) TYPE os_boolean, " boolean return value
" document contents
l_it_contents TYPE bcsy_text,
l_wa_contents TYPE LINE OF bcsy_text.
TRY.
" create email objects
l_o_send_request = cl_bcs=>create_persistent( ).
" sender
l_o_sender = cl_cam_address_bcs=>create_internet_address( 'senders address ' ).
l_o_send_request->set_sender( i_sender = l_o_sender ).
" recipient TO
l_o_recipient = cl_cam_address_bcs=>create_internet_address( ' receipent address'').
l_o_send_request->add_recipient(
i_recipient = l_o_recipient
i_copy = '' " CC indicator
" recipient CC
l_o_recipient = cl_cam_address_bcs=>create_internet_address( 'email addr' ).
l_o_send_request->add_recipient(
i_recipient = l_o_recipient
i_copy = 'X' " CC indicator
" email contents
CLEAR l_wa_contents.
l_wa_contents-line = 'Dear Recipients,'.
APPEND l_wa_contents TO l_it_contents.
CLEAR l_wa_contents.
l_wa_contents-line = 'This in the contents'.
APPEND l_wa_contents TO l_it_contents.
" create documents
l_o_document = cl_document_bcs=>create_document(
i_type = 'RAW' " RAW document format
i_text = l_it_contents
i_subject = 'This Is The Subject for Simple Email'
l_o_send_request->set_document( l_o_document ).
" send email
*l_v_ret = l_o_send_request->send( ).
l_o_send_request->send( ).
CATCH cx_bcs INTO bcs_exception.
exceptions, do something
ENDTRY.
commit work .
Similar Messages
-
Mail Sender to Abap Proxy Receiver with Attachements
Hi All,
Scenario: I need to create a ticket in Solman from a mail. I intend to do the scenario as Mail sender to Abap Proxy receiver asynchronous.
I have configured my sender mail adapter and am able to get the mails in XI. The attachements also appear in Inbound payload as MailAttachement-1, MailAttachement-2 etc. I have checked use mail packege and keep attachements in sender adapter.
Transport Protocol: IMAP4
Message Protocol: XIPAYLOAD
Queries:
1. My Inbound Data Type is the mail Package -- ximail30_xsd. Here in sxmb_moni I can see the mail attributes like from, to and the mail body in content. But How can I read the attachements in my message mapping.
2. How can I pass these attachements to Abap Proxy ( I do not need to alter attachments only pass to proxy ). These attachements have to be attached to the Solman ticket in SOLMAN server.
Appreciate your kind response to my above queries.
Thanks.
Regards,
Siddhesh S.Tawate
PS: I have tried using PayloadSwapBean in adapter module but still the content at source remains same.Hi,
Please find below the part of code that might help you. I have given code only responsible for attachements part of the ticket.
loop at lt_attach into l_attachment.
count = count + 1.
if count = 1.
first_line = 1.
endif.
l_type = l_attachment->GET_CONTENT_TYPE( ).
split l_type at '"' into l_type
file_name
l_name.
l_name = file_name.
split file_name at '.' into file_name
file_type.
l_xstring = l_attachment->GET_BINARY_DATA( ).
strlen = xstrlen( l_xstring ).
Compute int = ( strlen div 255 ).
Compute rem = ( strlen mod 255 ).
if rem <> 0.
int = int + 1.
endif.
count1 = int.
if count = 1.
last_line = count1.
else.
if int = 1.
first_line = last_line.
else.
last_line = first_line + count1.
endif.
endif.
wa_APPX_HEADERS-APPXNO = count.
wa_APPX_HEADERS-DESCR = l_name.
wa_APPX_HEADERS-FILETYP = file_type.
wa_APPX_HEADERS-FILENAM = l_name.
wa_APPX_HEADERS-FILEFM_UL = 'BIN'.
wa_APPX_HEADERS-FIRSTL = first_line.
wa_APPX_HEADERS-LASTL = last_line.
wa_APPX_HEADERS-FILELEN = strlen.
wa_APPX_HEADERS-LAST_USR = sy-uname.
GET TIME STAMP FIELD wa_appx_headers-TIMESTAMP.
append wa_APPX_HEADERS to it_APPX_HEADERS.
while count1 <> 0.
count1 = count1 - 1.
if count1 <> 0.
wa_APPX_LINES_bin-LINE = l_xstring+0(255).
shift l_xstring left by 255 places in BYTE MODE.
ELSE.
wa_APPX_LINES_bin-LINE = l_xstring.
endif.
append wa_APPX_LINES_bin to it_APPX_LINES_bin.
clear: wa_APPX_LINES_bin, wa_APPX_LINES.
endwhile.
first_line = last_line + 1.
clear: strlen, count1, file_name, file_type, l_type, int, rem, l_xstring, l_attachment.
endloop.
CALL FUNCTION 'BAPI_NOTIFICATION_CREATE'
EXPORTING
NOTIF_EXT = wa_NOTIF_EXT
NOTIF_CRM = wa_NOTIF_CRM
IBASE_DATA =
IMPORTING
NUMBER = Refnum
NUMB = Numb
REFNUM = Ticket_No
SYSID = SYSID
TABLES
NOTIF_PARTNERS = it_NOTIF_PARTNERS
NOTIF_NOTES = it_NOTIF_N_EXT
NOTIF_SAP_DATA = it_NOTIF_SAP_DATA
NOTIF_TEXT_HEADERS = it_NOTIF_TEXT_HEADERS
NOTIF_TEXT_LINES = it_NOTIF_TEXT_LINES
APPX_HEADERS = it_APPX_HEADERS
APPX_LINES = it_APPX_LINES
APPX_LINES_BIN = it_APPX_LINES_BIN
RETURN = RETURN
Please observe how first and last line of attachement is calculated. That is what created problem for me initially.
Hope this helps.
Regards,
Siddhesh S.Tawate -
How we can see the abap memory data
How we can see the abap-memory data
fine the code below
import lsind
report_title
table_name
report_field
change_display
show_hide
conversion_exits
table_description
form_program
select_form
update_form
line_size
line_count
records[]
fields[]
header_fields[]
select_fields[]
xrep[]
from memory id 'LZUT5U11'.
Regards
santhosh
mail-id : [email protected]Dear Santosh,
ABAP MEMORY:
A logical memory model illustrates how the main memory is distributed from the view of executable programs. A distinction is made here between external sessions and internal sessions .
An external session is usually linked to an R/3 window. You can create an external session by choosing System/Create session, or by entering /o in the command field. An external session is broken down further into internal sessions. Program data is only visible within an internal session. Each external session can include up to 20 internal sessions (stacks).
Every program you start runs in an internal session.
All "squares" with rounded "corners" displayed in the status diagram represent a set of data objects in the main memory.
The data in the main memory is only visible to the program concerned.
CALL TRANSACTION and SUBMIT AND RETURN open a new internal session that forms a new program context. The internal sessions in an external session form a memory stack. The new session is added to the top of the stack.
When a program has finished running, the top internal session in the stack is removed, and the calling program resumes processing.
The same occurs when the system processes a LEAVE PROGRAM statement.
LEAVE TO TRANSACTION removes all internal sessions from the stack and opens a new one containing the program context of the calling program.
The ABAP memory is initialized after the program is called. In other words, you cannot transfer any data to a program called with LEAVE TO TRANSACTION via the ABAP memory.
SUBMIT replaces the internal session of the program performing the call with the internal session of the program that has been called. The new internal session contains the program context of the called program with which it is performed.
When a function module is called, the following steps are executed:
A check is made to establish whether your program has called a function module of the same function group previously.
If this is not the case, the system loads the associated function group to the internal session of the calling program as an additional program group. This initializes its global data.
If your program used a function module of the same function group before the current call, the function module that you have called up at present can access the global data of the function group. The function group is not reloaded.
Within the internal session, all of the function modules that you call from the same group access the global data of that group.
If, in a new internal session, you call a function module from the same function group as in internal session 1, a new set of global data is initialized for the second internal session. This means that the data accessed by function modules called in session 2 may be different from that accessed by the function modules in session 1.
You can call function modules asynchronously as well as synchronously. To do so, you must extend the function module call using the addition STARTING NEW TASK ''. Here, '' is a symbolic name in the calling program that identifies the external session, in which the called program is executed.
Function modules that you call using the addition STARTING NEW TASK '' are executed independently of the calling program. The calling program is not interrupted.
To make function modules available for local asynchronous calls, you must identify them as executable remotely (processing type: Remote-enabled module).
There are various ways of transferring data between programs that are running in different program contexts (internal sessions). You can use:
(1) The interface of the called program (standard selection screen, or interface of a
subroutine, function module, or dialog module)
(2) ABAP memory
(3) SAP memory
(4) Database tables
(5) Local files on your presentation server.
For further information about transferring data between an ABAP program and your presentation server, refer to the documentation for the function modules WS_UPLOAD and WS_DOWNLOAD.
Function modules have an interface, which you can use to pass data between the calling program and the function module itself (there is also a comparable mechanism for ABAP subroutines). If a function module supports RFC, certain restrictions apply to its interface.
If you are calling an ABAP program that has a standard selection screen, you can pass values to the input fields. There are two options here:
By using a variant of the standard selection screen in the program call
By passing actual values for the input fields in the program call
If you want to call a report program without displaying its selection screen (default setting), but still want to pass values to its input fields, there is a variety of techniques that you can use.
The WITH addition allows you to assign values to the parameters and select-options fields on the standard selection screen.
If the selection screen is to be displayed when the program is called, use the addition: VIA SELECTION-SCREEN.
Use the pattern button in the ABAP Editor to insert a program call via SUBMIT. The structure shows you the names of data objects that you can complete with the standard selection screen.
For further information on working with variants and further syntax variants for the WITH addition, see the key word documentation in the ABAP Editor for SUBMIT.
You can use SAP memory and ABAP memory to pass data between different programs.
The SAP memory is a user-specific memory area for storing field values. It is available in all of the open sessions in a user's terminal session, and is reset when the terminal session ends. You can use its contents as default values for screen fields. All external sessions can access SAP memory. This means that it is only of limited use for passing data between internal sessions.
The ABAP memory is also user-specific, and is local to each external session. You can use it to pass any ABAP variables (fields, structures, internal tables, complex objects) between the internal sessions of a single external session.
Each external session has its own ABAP memory. When you end an external session (/i in the command field), the corresponding ABAP memory is released automatically.
To copy a set of ABAP variables and their current values (data cluster) to the ABAP memory, use the EXPORT TO MEMORY ID statement. The (up to 32 characters) is used to identify the different data clusters.
If you repeat an EXPORT TO MEMORY ID statement to an existing data cluster, the new data overwrites the old.
To copy data from ABAP memory to the corresponding fields of an ABAP program, use the IMPORT FROM MEMORY ID statement.
The fields, structures, internal tables, and complex objects in a data cluster in ABAP memory must be declared identically in both the program from which you exported the data and the program into which you import it.
To release a data cluster, use the FREE MEMORY ID statement.
You can import just parts of a data cluster with IMPORT, since the objects are named in the cluster.
In the SAP memory, you can define memory areas (SET/GET parameters, or parameter IDs), which you can then address by a name of up to 20 characters.
You can fill these memory areas either using the contents of input/output fields on screens, or using the ABAP statement:
SET PARAMETER ID '' FIELD .
The memory area with the name now has the value .
You can use the contents of a memory area to display a default value in an input field on a screen.
You can also read the memory areas from the SAP memory using the ABAP statement GET PARAMETER ID FIELD . The field then contains the value from parameter .
The link between an input/output field and a memory area in SAP memory is inherited from the data element on which the field is based. You can enable the set parameter or get parameter attributes in the input/output field attributes.
Once you have set the Set parameter attribute for an input/output field, you can fill it with default values from SAP memory. This is particularly useful for transactions that you call from another program without displaying the initial screen. For this purpose, you must activate the Set parameter functionality for the input fields of the first screen of the transaction.
You can:
(1) Copy the data that is to be used for the first screen of the transaction to be called to the parameter ID in the SAP memory. To do so, use the statement SET PARAMETER immediately before calling the transaction.
(2) Start the transaction using CALL TRANSACTION or LEAVE TO
TRANSACTION . If you do not want to display the initial screen, use the AND
SKIP FIRST SCREEN addition.
(3) The system program that starts the transaction fills the input fields that do not already have default values and for which the Get parameter attribute has been set with values from SAP memory.
The Technical information for the input fields in the transaction you want to call contains the names of the parameter IDs that you need to use.
Parameter IDs should be entered in table TPARA. This happens automatically if you create them via the Object navigator.
Programs that you call using the statements SUBMIT , LEAVE TO TRANSACTION , SUBMIT AND RETURN, or CALL TRANSACTION run in their own SAP LUW, and update requests receive their own update key.
When you use SUBMIT and LEAVE TO TRANSACTION , the SAP LUW of the calling program ends. If no COMMIT WORK statement occurred before the program call, the update requests in the log table remain incomplete and cannot be processed. They can no longer be executed. The same applies to inline changes that you make using PERFORM … ON COMMIT.
Data that you have written to the database using inline changes is committed the next time a new screen is displayed.
If you use SUBMIT AND RETURN or CALL TRANSACTION to insert a program and then return to the calling program, the SAP LUW of the calling program is resumed when the called program ends. The LUW processing of calling and called programs is independent.
In other words, inline changes are committed the next time a new screen is displayed. Update requests and calls using PERFORM ... ON COMMIT require an independent COMMIT WORK statement in the SAP LUW in which they are running.
Function modules run in the same SAP LUW as the program that calls them.
If you call transactions with nested calls, each transaction needs its own COMMIT WORK, since each transaction maps its own SAP LUW.
The same applies to calling executable programs, which are called using SUBMIT AND RETURN.
The statement CALL TRANSACTION allows you to
Shorten the user dialog when calling using CALL TRANSACTION USING .
Determine the type of update (asynchronous, local, or synchronous) for the transaction called. For this purpose, use the addition CALL TRANSACTION USING UPDATE 'update_mode', where update_mode can have the values a (asynchronous), L (local), or S (synchronous).
Combining the two options enables you to call several transactions in sequence (logical chain), to reduce their screen sequence, and to postpone processing of the SAP LUW 2 until processing of the SAP LUW 1 has been completed.
When you call a function module asynchronously using the CALL FUNCTION STARTING NEW TASK ' ' statement, it runs in its own SAP LUW.
Programs that are executed with a SUBMIT AND RETURN or CALL
TRANSACTION statement starts their own LUW processing. You can use these to perform nested (complex) LUW processing.
You can use function modules as modularization units within an SAP LUW.
Function modules that are called asynchronously are suitable for programs that allow parallel processing of some of their components.
All techniques are suitable for including programs with purely display functions.
Note that a function module called with CALL FUNCTION STARTING NEW TASK is executed as a new logon. It, therefore, sees a separate SAP memory area. You can use the interface of the function module for data transfers.
Example: In your program, you want to call a display transaction that is displayed in a separate window (amodal). To do so, you encapsulate the transaction call in a function module, which you set as to Remote-enabled module. You use the function module interface to accept values that you write to the SAP memory. You then call up the transaction in the function module using CALL TRANSACTION AND SKIP FIRST SCREEN. You call the function module itself asynchronously.
Type ‘E' locks for nested program calls may be requested more than once from the same object. This behavior can be described as follows:
Lock entries from function modules called synchronously increment the cumulative counter, And are therefore successful.
Lock entries from programs called with CALL TRANSACTION or SUBMIT
AND
RETURN is refused. The object to be locked by the called program is displayed as already Locked by another user.
Programs that you call using SUBMIT or LEAVE TO TRANSACTION cannot come into conflict with lock entries from the calling program, since the old program ends when the call is made. When a program ends, the system deletes all of the lock entries that it had set.
Lock requests belonging to the same user from different R/3 windows or logons are treated as lock requests from other users.
Regards,
Rajesh.
Please reward points if found helpful. -
How many mails i can send at a time per day using APEX mail system?
HI,
I am working on application, when i have written a process to send mail, i have a project where i have to send mail at a time for all the email id's
given list there are upto 5000 email id's where text body also include certain set of data from a report. thinking at a time 3000 its difficult i divided
it region wise, but still each region have 2000 odd email id's. during testing when i run the process just 950 mails i could send then i got a error
saying "ORA-20001: You have exceeded the maximum number of email messages per workspace. Please contact your administrator." so please
can any one help me to know How many mails i can send at a time per day using APEX mail system?
Thanks in advance
GowthamiHi jfosteroracle,
You are getting the error may be the following reason,
Check the following,
Login as ADMIN and Goto -->Manage Instance-->Instance Settings--> Mail-->Maximum Emails per workspace
Actually this number denotes the Number of mails can be sent per 24 hour for the workspace,It may exceeded.
It may be the reason.
Thank you.
Regards,
Gurujothi
Edited by: Gurujothi on Jun 27, 2012 5:54 AM -
How to copy/download all ABAP programs in a text with a single report ?
How to copy/download all ABAP programs in a text format with a single report/TC ?
How to copy/download ABAP source code with all include programs ?....
we need to search & copy all include programs everytime....Hi,
check this link
downloading programs
Regards -
my mail has been working perfectly on my 3gs iphone. I can now longer access the mail after tapping on the mail icon. All i get is a blank screen with a reload icon and a write icon at the bottom, neither of which responds when touched. The icon continues to tell me how many mails I have in my inbox and continues to update.
Any ideas?
am on version 4.3.4 operating system.
ThanksI have tried that also, but its still doing the same thing
-
HT1277 How many mail accounts can I configure in "Mail" on my mac book pro ?
Im trying to open multiple mail accounts in "Mail" but am unable to. How many mail accounts can I configure ?
http://support.apple.com/kb/TS3276
http://support.apple.com/kb/HT1277
http://www.apple.com/support/macosx/mailassistant/
should be as many as you want
http://www.dummies.com/how-to/content/adding-a-new-mail-account-in-mac-os-x.html -
How to call Webservice in abap Program
Hi Guys,
How can i call a abap webservice located in another server(CRM) in Bpc BADI.Is this web service is thing is possible??Hi,
For calling a web service first you have to Create Proxy object using web service URL or WSDL file.
and create logical port for that URL.
This will generate Class and method in your system.
After that you can use this class and method to call this web service.
Regards,
Arpit -
Why and how to use events in abap objects
Dear all,
Please explain me why and how to use events in abap objects with real time example
regards
pankaj giriHi Pankaj,
I will try to explain why to use events... How to use is a different topic.. which others have already answered...
This is same from your prev. post...
Events :
Technically speaking :
" Events are notifications an object receives from, or transmits to, other objects or applications. Events allow objects to perform actions whenever a specific occurrence takes place. Microsoft Windows is an event-driven operating system, events can come from other objects, applications, or user input such as mouse clicks or key presses. "
Lets say you have an ALV - An editable one ...
Lats say - Once you press some button you want some kind of validation to be done.
How to do this ?
Raise an Event - Which is handled by a method and write the validation code.
Now you might argue, that I can do it in this way : Capture the function code - and call the validate method.
Yes, in this case it can be done.. But lets say .. you change a field in the ALV and you want the validation to be done as soon as he is done with typing.
Where is the function code here ? No function code... But there is an event here - The data changed event.
So you can raise a data changed event that can be handled and will do the validation.
It is not user friendly that you ask the user to press a button (to get the function code) for validation each time he enters a data.
The events can be raised by a system, or by a program also. So in this case the data changed event is raised by a system that you can handle.
Also, Lets say on a particular action you want some code to trigger. (You can take the same example of validation code). In this case the code to trigger is in a separate class. The object of which is not available here at this moment. (This case happens very frequently).
Advantage with events : Event handlers can be in a separate class also.
e.g : In the middle of some business logic .. you encounter a error. You want to send this information to the UI (to user - in form of a pop up) and then continue with some processing.
In many cases - A direct method call to trigger the pop up is not done. Because (in ideal cases) the engine must not interact with UI directly - Because the UI could be some other application - like a windows UI but the error comes from some SAP program.
So - A event is raised from the engine that is handled in the UI and a pop up is triggered.
Here -- I would have different classes (lets say for different Operating Systems). And all these classes must register to the event ERROR raised in application.
And these different classes for different Operation systems will have different code to raise a pop-up.
Now you can imagine : If you coded a pop-up for Windows (in your application logic) .. it will not work for Mac or Linux. But of you raise a event.. that is handled separately by a different UI classes for Win, Linux or Mac they will catch this event and process accordingly.
May be I complicated this explanation .... but I couldn't think of a simpler and concrete example.
Cheers.
Varun. -
How to create popup in ABAP webdynpro.
Hi,
I found lot of examples to create a popup/ model window for java webdynpro.
Could anyone give a pointer to an example which explains how to create popup in ABAP webdynpro??
Kind Regards
ShahulHi Thomas:
It worked fine the 1st time. Second time when the user clicks on the button to open up the popup it dumps.
Here is the code in the action for popup:
data: l_cmp_api type ref to if_wd_Component,
l_window_manager type ref to if_wd_window_manager,
l_api type ref to if_wd_View_controller,
l_text type string_table.
l_cmp_api = wd_comp_controller->wd_get_api( ).
l_window_manager = l_cmp_api->get_window_manager( ).
if wd_this->m_popup is initial.
wd_this->m_popup = l_window_manager->create_window(
window_name = 'DOCQSOW'
button_kind = if_wd_window=>co_buttons_ok
message_type = if_wd_window=>co_msg_type_none ).
component_usage_name = 'DOCQUERY_USAGE_1'
l_api = wd_this->wd_get_api( ).
wd_this->m_popup->subscribe_to_button_event(
button = if_wd_window=>co_button_ok
button_text = 'Transfer'
action_name = 'POPUP_CLOSED'
action_view = l_api ) .
wd_this->m_popup->SET_REMOVE_ON_CLOSE( abap_true ).
endif.
wd_this->m_popup->open( ).
Second time when the popup tries to open, I get the following error:
Method: RENDER_WINDOW of program CL_WDR_WINDOW_RENDERER========CP
Method: RENDER_WINDOW of program CL_WDR_CLIENT_SSR=============CP
Method: RENDER_POPUP_WINDOWS of program CL_WDR_CLIENT_SSR=============CP
Method: RENDER_WINDOWS of program CL_WDR_CLIENT_SSR=============CP
Method: IF_WDR_RESPONSE_RENDERER~RENDER_VIEWS of program CL_WDR_CLIENT_SSR=============CP
Method: IF_WDR_RESPONSE_RENDERER~RENDER_USER_INTERFACE_UPDATES of program CL_WDR_CLIENT_SSR=============CP
Method: IF_WDR_CLIENT~SEND_RESPONSE of program CL_WDR_CLIENT_ABSTRACT_HTTP===CP
Method: IF_WDR_CLIENT~SEND_RESPONSE of program CL_WDR_CLIENT_SSR=============CP
Method: EXECUTE of program CL_WDR_MAIN_TASK==============CP
Method: IF_HTTP_EXTENSION~HANDLE_REQUEST of program CL_WDR_MAIN_TASK==============CP
Is there a way to destroy the instance of the m_popup?
Any help is appreciated!
Thanks -
How to add breakpoint in abap code
when use <i><b>java</b></i> call abap code ,
how to add breakpoint in abap code?Hi,
To start the ABAP debugger from your java client you have to set the JCO client to debug mode:
e.g.
yourJCOClient.setAbabDebugMode(true)
(hope thats the right method name:-)).
And don't forget to set also a break point of type "External" in the function module you call from your java client. For debuging, the user which calls the FM has to be a SAP User of type "<b>Dialog"</b> and has to be the rights to call RFCs, ... -
How to use wildcards in ABAP query where condition?
Hi,
Please tell me how to use wildcards in ABAP qurey where condition.
e.g. select * from mara where matnr = * (wildcard we need to use.
Thanks & Regards,
Gaurav TDo you want to query asterix * ?
select * from mara where matnr = '*'. "then just put it in apstrophes
or you want certain part of string be used as * ?
select * from mara where matnr like '%*' "then use % sign before it
or maybe you want something like this
select * from mara where matnr like '%1' . "then it will look for all materials having '1' inside it
Regards
Marcin -
How e-mail is routed between two servers
Hi ,
Please anybody tell me how e-mail is routed between two servers , from the software point of view as well as hardware point of view .
And how Java mail API related to that .
Thanks,
KizIf you're looking for a simple answer there isn't one. Here's a place to start.
http://community.roxen.com/developers/idocs/rfc/rfc974.html -
Work schedule: Approval field for a position - How to get it in ABAP?
Hi all,
could you please help me to find out how to get in a ABAP report the value of field Approval
(RHCSHORA-CPROZT) that is shown in the Work Schedule tab in OM (PPOSE tx), starting
from a position id? E.g. 100,00 (% of Standard value)
Thanks in advance, bye.
AngeloHi,
Are you asking about staffing Percentage?
Check Table HRP1001 with relation ship A008 .
get Weighting Percentage.
Regards,
Manoj. -
Can u explain me how to work with OOPs ABAP
Hi,
Can u explain me how to work with OOPS Abap, If possible pls send me some sample programs regarding OOps concept used in Realtime.
Thanks.hii,
Please check this online document (starting page 1291).
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCABA/BCABA.pdf
Also check this links as well.
http://help.sap.com/saphelp_nw2004s/helpdata/en/ce/b518b6513611d194a50000e8353423/frameset.htm
http://www.sapgenie.com/abap/OO/
http://www.futureobjects.de/content/intro_oo_e.html
http://www.sap-img.com/abap/business-add-in-you-need-to-understand-abap-oo-interface-concept.htm
/people/ravikumar.allampallam/blog/2005/02/11/abap-oo-in-action
What is Object Orientation?
Object orientation (OO), or to be more precise, object-oriented programming, is a problem-solving method in which the software solution reflects objects in the real world.
A comprehensive introduction to object orientation as a whole would go far beyond the limits of this introduction to ABAP Objects. This documentation introduces a selection of terms that are used universally in object orientation and also occur in ABAP Objects. In subsequent sections, it goes on to discuss in more detail how these terms are used in ABAP Objects. The end of this section contains a list of further reading, with a selection of titles about object orientation.
Objects
An object is a section of source code that contains data and provides services. The data forms the attributes of the object. The services are known as methods (also known as operations or functions). Typically, methods operate on private data (the attributes, or state of the object), which is only visible to the methods of the object. Thus the attributes of an object cannot be changed directly by the user, but only by the methods of the object. This guarantees the internal consistency of the object.
Classes
Classes describe objects. From a technical point of view, objects are runtime instances of a class. In theory, you can create any number of objects based on a single class. Each instance (object) of a class has a unique identity and its own set of values for its attributes.
Object References
In a program, you identify and address objects using unique object references. Object references allow you to access the attributes and methods of an object.
In object-oriented programming, objects usually have the following properties:
Encapsulation
Objects restrict the visibility of their resources (attributes and methods) to other users. Every object has an interface, which determines how other objects can interact with it. The implementation of the object is encapsulated, that is, invisible outside the object itself.
Polymorphism
Identical (identically-named) methods behave differently in different classes. Object-oriented programming contains constructions called interfaces. They enable you to address methods with the same name in different objects. Although the form of address is always the same, the implementation of the method is specific to a particular class.
Inheritance
You can use an existing class to derive a new class. Derived classes inherit the data and methods of the superclass. However, they can overwrite existing methods, and also add new ones.
Uses of Object Orientation
Below are some of the advantages of object-oriented programming:
Complex software systems become easier to understand, since object-oriented structuring provides a closer representation of reality than other programming techniques.
In a well-designed object-oriented system, it should be possible to implement changes at class level, without having to make alterations at other points in the system. This reduces the overall amount of maintenance required.
Through polymorphism and inheritance, object-oriented programming allows you to reuse individual components.
In an object-oriented system, the amount of work involved in revising and maintaining the system is reduced, since many problems can be detected and corrected in the design phase.
Achieving these goals requires:
Object-oriented programming languages
Object-oriented programming techniques do not necessarily depend on object-oriented programming languages. However, the efficiency of object-oriented programming depends directly on how object-oriented language techniques are implemented in the system kernel.
Object-oriented tools
Object-oriented tools allow you to create object-oriented programs in object-oriented languages. They allow you to model and store development objects and the relationships between them.
Object-oriented modeling
The object-orientation modeling of a software system is the most important, most time-consuming, and most difficult requirement for attaining the above goals. Object-oriented design involves more than just object-oriented programming, and provides logical advantages that are independent of the actual implementation
http://www.sapgenie.com/abap/OO/index.htm
http://www.geocities.com/victorav15/sapr3/abap_ood.html
http://www.brabandt.de/html/abap_oo.html
Check this cool weblog:
/people/thomas.jung3/blog/2004/12/08/abap-persistent-classes-coding-without-sql
/people/thomas.jung3/blog/2004/12/08/abap-persistent-classes-coding-without-sql
/people/sap.user72/blog/2005/05/10/a-small-tip-for-the-beginners-in-oo-abap
/people/ravikumar.allampallam/blog/2005/02/11/abap-oo-in-action
/people/thomas.jung3/blog/2005/09/08/oo-abap-dynpro-programming
http://help.sap.com/saphelp_nw04/helpdata/en/c3/225b6254f411d194a60000e8353423/frameset.htm
http://www.sapgenie.com/abap/OO/
http://www.sapgenie.com/abap/OO/index.htm
http://help.sap.com/saphelp_nw04/helpdata/en/c3/225b5654f411d194a60000e8353423/content.htm
http://www.esnips.com/doc/375fff1b-5a62-444d-8ec1-55508c308b17/prefinalppt.ppt
http://www.esnips.com/doc/2c76dc57-e74a-4539-a20e-29383317e804/OO-abap.pdf
http://www.esnips.com/doc/5c65b0dd-eddf-4512-8e32-ecd26735f0f2/prefinalppt.ppt
http://www.allsaplinks.com/
http://www.sap-img.com/
http://www.sapgenie.com/
http://help.sap.com
http://www.sapgenie.com/abap/OO/
http://www.sapgenie.com/abap/OO/index.htm
http://www.sapgenie.com/abap/controls/index.htm
http://www.esnips.com/doc/2c76dc57-e74a-4539-a20e-29383317e804/OO-abap.pdf
http://www.esnips.com/doc/0ef39d4b-586a-4637-abbb-e4f69d2d9307/SAP-CONTROLS-WORKSHOP.pdf
http://www.sapgenie.com/abap/OO/index.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/ce/b518b6513611d194a50000e8353423/frameset.htm
http://www.sapgenie.com/abap/OO/
these links
http://help.sap.com/saphelp_47x200/helpdata/en/ce/b518b6513611d194a50000e8353423/content.htm
For funtion module to class
http://help.sap.com/saphelp_47x200/helpdata/en/c3/225b5954f411d194a60000e8353423/content.htm
for classes
http://help.sap.com/saphelp_47x200/helpdata/en/c3/225b5c54f411d194a60000e8353423/content.htm
for methods
http://help.sap.com/saphelp_47x200/helpdata/en/08/d27c03b81011d194f60000e8353423/content.htm
for inheritance
http://help.sap.com/saphelp_47x200/helpdata/en/dd/4049c40f4611d3b9380000e8353423/content.htm
for interfaces
http://help.sap.com/saphelp_47x200/helpdata/en/c3/225b6254f411d194a60000e8353423/content.htm
For basic stuff......
abap oops
http://esnips.com/doc/5c65b0dd-eddf-4512-8e32-ecd26735f0f2/prefinalppt.ppt
http://esnips.com/doc/2c76dc57-e74a-4539-a20e-29383317e804/OO-abap.pdf
http://esnips.com/doc/0ef39d4b-586a-4637-abbb-e4f69d2d9307/SAP-CONTROLS-WORKSHOP.pdf
http://esnips.com/doc/92be4457-1b6e-4061-92e5-8e4b3a6e3239/Object-Oriented-ABAP.ppt
http://esnips.com/doc/448e8302-68b1-4046-9fef-8fa8808caee0/abap-objects-by-helen.pdf
http://esnips.com/doc/39fdc647-1aed-4b40-a476-4d3042b6ec28/class_builder.ppt
http://help.sap.com/saphelp_nw04/helpdata/en/c3/225b5654f411d194a60000e8353423/frameset.htm
ABAP Business Development and Service Provisioning/ABAP Objects
General information
What is Object Orientation?
some blogs
A small tip for the beginners in OO ABAP
Object Oriented ABAP (OO-ABAP)
and others wiki OO Abap
cheers,
sharad
Edited by: sharad narayan on Apr 29, 2008 12:19 PM
Maybe you are looking for
-
I cannot get access through the online security as when it requests my birth date, it informs that it is wrong (I got it right). ANd, when i attempt to do it via email, I don;t get the email in either of the only 2 accounts that I ahve ever had. Any
-
Can't figure out beeps....HP pavillion p6110f
We have a HP Pavillion p6110f that is basically stock except for the addition of a 160 gb HD that i use for backups. Our problem is that upon start up (the first start up of the day only) that it beeps various codes, sometimes it 3 -1, then its ok, s
-
Any recommendations for decent color-accurate monitors in the sub-$300 range? I've been thinking about getting a pair of "Dell U2412M UltraSharp 24" LED" monitors. http://www.bhphotovideo.com/bnh/controller/home?O=&sku=829236&is=REG&Q=&A=details A
-
Crystal Report Export to PDF with Group Tree Bookmarks
Dear Forum I have created a Crystal Report aspx page with an export function of the report to pdf. So far all has been successful, except form one little annoying this. The report does export to a pdf file and it does create bookmarks based on the gr
-
Finding locked objects in design repository?
Does anyone know if it is possible to get a list of objects that are currently locked by users inside a design repository? I am looking for something that is equivalant to what v$locked_object is for Oracle objects. I've tried looking at the tables/v