Email address attribute
Hi,
I obtained the email address for GroupWise users and I saw that it has a
specific pattern [email protected]
When I try to send an email to one of GroupWise users using the obtained
email address, the send mail operation failed.
when I use only a part of the email address ([email protected]
Office) the mail is sent successfully.
Can you tell me what is the signification for "7#" ?
It is ok to remove the "7#" part from email address?
Thanks in advance,
V Mandache.
What attribute are you reading this address from?
Looks like this is the "Email Address" attribute.
As I recall, the 7# is an indicator of the type of address that follows.
http://developer.novell.com/document...a/sdk5589.html
-jim
Veronica Mandache wrote:
> Hi,
>
> I obtained the email address for GroupWise users and I saw that it has a
> specific pattern [email protected]
>
> When I try to send an email to one of GroupWise users using the obtained
> email address, the send mail operation failed.
>
> when I use only a part of the email address ([email protected]
> Office) the mail is sent successfully.
>
> Can you tell me what is the signification for "7#" ?
> It is ok to remove the "7#" part from email address?
>
> Thanks in advance,
> V Mandache.
Similar Messages
-
Hi,
Can the Identity Store be used to maintain Email Addresses ? we don't maintain contractors' info on our HCM & would like to see, if we can use the Identity Store to meet our needs.
I would appreciate any inputs/suggestions.
~SureshHi Suresh,
Yes SAP IDM is very capiable to do this. There are number of ways you can do this.
The ways I think is the best ways is as follows:
Create a LDAP from Pass that will extract all the users from the LDAP directory into a temp table
Extract identities from HR system into a temp table and compair them with the LDAP directory users
Put them into IDStore with the Email address attribute toIDstore pass while the pass is doing the processing create a VB,Java script which manaupulates the First Name, Last Name and the Middle name as per the Business Rule.
This way IDStore gets what you want. Then the data in the Idstore can be used to MAP the attributes in LDAP TO pass and Exchange Pass.
The extracting of users from the LDAP directory and HR is ONE off. On run time there will be only one From pass and ToIDstore pass from the Authorititive source.
The script will compare the Email address formulated from the existing Email addresses in the IDstore.
I hope this helps.
Dev -
When printing a list in Address Book, how can I select more than the default Attributes and keep them selected when I print again? I want to print ALL information for contacts so I have email address, notes, phone, company, title, etc all on one page. I don't want to have to check off an additional 5 or 6 attributes each time I print out contact information. Is there a way to change the default setting for printing lists, so it is not just "phone," "photo," and "job title?"
I have a user who wants to do this same thing. I did not find any way either to default the attributes to anything other than what you see the first time. Seems like such a trivial thing, hard to believe they do not allow it. I did find a program for this called iDress but I can't seem to download it from any links on the Internet. Not sure if it is free or not, but it was recommended by a link on the Mac support site.
-
Map the email address from another MSAD attribute
Hi Gurus,
How can we map SOA to get the email address from the otherMail field in MSAD instead of the default mail attribute.
Saw this somewhere, <property name="user.login.attr" but nothing about email mapping.
Appreciate your help as this is delaying our project..
ThanksHi ,
Please share me the entire NDR or error message which you have received at the your end .
Thanks & Regards S.Nithyanandham -
How to delete the duplicate email address in BP master data
Hi,
When you get an email ids from the third party vendor and you are loading into CRM BP master data. how to delete the duplicate email address already exits in the system. In CRM you can create the same BP with different id. I would like to know how to delete the email address during importing email addresses from the third party tool.
During the campaign you are sending email to all your customers, when the customer want to unsubscibe the email address from your list, how to unsubcribe the email address and how to updat the BP master data.
If you are sending the email to customer, you are using html or simple text, if the customer wants only html or simple text, how you to specify in the system?
thanks,
arulHello Arul,
welcome to the SDN CRM Development forum.
1. I think you should clear the data with duplicate E-Mail adresses in the external tool.
2. Unsubscription could be done by a Marketing Attribute which could be set by using a Target Group which is created by Campaign Automation. Have a look at this Toppic. There is also a Best Practice avaliable at http://help.sap.com/bp_crmv340/CRM_DE/index.htm.
3. Also HTML or Simple text can be mained in a Marketing Attribute. You have to use different Mail Forms to which are sent to different Target groups.
Regards
Gregor -
Broadcasting via Bursting to multiple email address for a single vendor cod
Hello -
I have a requirement to broadcast out a web template based scorecard to multiple email addresses for a given vendor code. We have gotten it to work via a single email address, but I need to send it to more than one email per vendor code.
Has anyone else tried this?
Thank you!Hi Chris,
If my understanding is right, you must be using the master data of vendor Code(Which has an attribute to store Email IDs).
You can add multiple email ID to the same master data separated by semi colon ";"
If you are using user IDs instead, I dont think it is possible to use multiple user ID in the same attribute.
in this case you need to enhance the master data with a new attribute to store the second user ID and the create a separate setting for this attribute.
Hope this helps.
Regards.
Shafi. -
Creating a target group based on the BP email address only in CRM
Hi there,
I am currently trying to create a target group based on the business partner email address only.
I have a list of over 1000 email addresses - these email addresses equate to a BP in our CRM system, however I do not have a list of the equivalent business partner numbers, all I have to work on are the email addresses. With these 1000 BP email addresses I need to update the marketing attributes of each of these 1000 BP records in CRM.
What I need is a method to find the 1000 BP numbers based on the email addresses and then use the marketing expert tool (tx. CRMD_MKT_TOOLS) to change the marketing attributes on all of the 1000 BPs.
The issue I am having is how can I find the list of BP numbers just based on the BP email address, I tried creating an infoset based on table BUT000, BUT020 and ADR6 but I after creating attribute list & data source for this I am stuck on what to do next. In the attribute list the selection criteria does not allow me to import a file for the selection range. I can only enter a value but I have 1000 email addresses and cannot possibly email them manually in the filter for the attribute list. I also looked at imported a file into the target group but I do not have any BP numbers so this will not work.
Does anyone know a method where I can create a target group based on the email addresses only without having to do any code?
Any help would be most appreciated.
Kind regard
JoJoHi JoJo ,
The below report will return you BP GUID from emails that is stored in a single column .xls file and assign the BP to a target group.
REPORT zexcel.
* G L O B A L D A T A D E C L A R A T I O N
TYPE-POOLS : ole2.
TYPES : BEGIN OF typ_xl_line,
email TYPE ad_smtpadr,
END OF typ_xl_line.
TYPES : typ_xl_tab TYPE TABLE OF typ_xl_line.
DATA : t_data TYPE typ_xl_tab,
lt_bu_guid TYPE TABLE OF bu_partner_guid,
ls_bu_guid TYPE bu_partner_guid,
lt_guids TYPE TABLE OF bapi1185_bp,
ls_guids TYPE bapi1185_bp,
lt_return TYPE bapiret2_t.
* S E L E C T I O N S C R E E N L A Y O U T
PARAMETERS : p_xfile TYPE localfile,
p_tgguid TYPE bapi1185_key .
* E V E N T - A T S E L E C T I O N S C R E E N
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_xfile.
CALL FUNCTION 'WS_FILENAME_GET'
IMPORTING
filename = p_xfile
EXCEPTIONS
inv_winsys = 1
no_batch = 2
selection_cancel = 3
selection_error = 4
OTHERS = 5.
IF sy-subrc <> 0.
CLEAR p_xfile.
ENDIF.
* E V E N T - S T A R T O F S E L E C T I O N
START-OF-SELECTION.
* Get data from Excel File
PERFORM sub_import_from_excel USING p_xfile
CHANGING t_data.
SELECT but000~partner_guid FROM but000 INNER JOIN but020 ON
but000~partner =
but020~partner
INNER JOIN adr6 ON but020~addrnumber = adr6~addrnumber INTO TABLE
lt_bu_guid FOR ALL ENTRIES IN t_data WHERE adr6~smtp_addr =
t_data-email.
CLEAR: lt_guids,ls_guids.
LOOP AT lt_bu_guid INTO ls_bu_guid.
ls_guids-bupartnerguid = ls_bu_guid.
APPEND ls_guids TO lt_guids.
ENDLOOP.
CALL FUNCTION 'BAPI_TARGETGROUP_ADD_BP'
EXPORTING
targetgroupguid = p_tgguid
TABLES
return = lt_return
businesspartner = lt_guids.
*& Form SUB_IMPORT_FROM_EXCEL
* text
* -->U_FILE text
* -->C_DATA text
FORM sub_import_from_excel USING u_file TYPE localfile
CHANGING c_data TYPE typ_xl_tab.
CONSTANTS : const_max_row TYPE sy-index VALUE '65536'.
DATA : l_dummy TYPE typ_xl_line,
cnt_cols TYPE i.
DATA : h_excel TYPE ole2_object,
h_wrkbk TYPE ole2_object,
h_cell TYPE ole2_object.
DATA : l_row TYPE sy-index,
l_col TYPE sy-index,
l_value TYPE string.
FIELD-SYMBOLS : <fs_dummy> TYPE ANY.
* Count the number of columns in the internal table.
DO.
ASSIGN COMPONENT sy-index OF STRUCTURE l_dummy TO <fs_dummy>.
IF sy-subrc EQ 0.
cnt_cols = sy-index.
ELSE.
EXIT.
ENDIF.
ENDDO.
* Create Excel Application.
CREATE OBJECT h_excel 'Excel.Application'.
CHECK sy-subrc EQ 0.
* Get the Workbook object.
CALL METHOD OF h_excel 'Workbooks' = h_wrkbk.
CHECK sy-subrc EQ 0.
* Open the Workbook specified in the filepath.
CALL METHOD OF h_wrkbk 'Open' EXPORTING #1 = u_file.
CHECK sy-subrc EQ 0.
* For all the rows - Max upto 65536.
DO const_max_row TIMES.
CLEAR l_dummy.
l_row = l_row + 1.
* For all columns in the Internal table.
CLEAR l_col.
DO cnt_cols TIMES.
l_col = l_col + 1.
* Get the corresponding Cell Object.
CALL METHOD OF h_excel 'Cells' = h_cell
EXPORTING #1 = l_row
#2 = l_col.
CHECK sy-subrc EQ 0.
* Get the value of the Cell.
CLEAR l_value.
GET PROPERTY OF h_cell 'Value' = l_value.
CHECK sy-subrc EQ 0.
* Value Assigned ? pass to internal table.
CHECK NOT l_value IS INITIAL.
ASSIGN COMPONENT l_col OF STRUCTURE l_dummy TO <fs_dummy>.
<fs_dummy> = l_value.
ENDDO.
* Check if we have the Work Area populated.
IF NOT l_dummy IS INITIAL.
APPEND l_dummy TO c_data.
ELSE.
EXIT.
ENDIF.
ENDDO.
* Now Free all handles.
FREE OBJECT h_cell.
FREE OBJECT h_wrkbk.
FREE OBJECT h_excel.
ENDFORM. " SUB_IMPORT_FROM_EXCEL
Just copy paste the code and run the report select any local xls file with emails and pass the target group guid.
snap shot of excel file:
Let me know if it was useful. -
Email address as a User in ADF application (part 2)
It is fairly normal these days to sign into into public-facing applications using an email address and password. However, people change email address periodically so you really want some sort of long-lived "users" entity of which the email address is an attribute that can be updated over time.
Of course we code all the work manually and log in against a database table (with an alternate/unique key of user ID), but really we should try to use the tools already provided and do this in a JEE standard way. Then if you have some sort of unique user ID as the principal then you get the benefit, for example, of using automatically populated audit columns in ADF BC.
This [recent discussion|http://forums.oracle.com/forums/thread.jspa?messageID=3440934] talked about a similar requirement but in that instance the poster was happy to have the email address as the unique identifier.
I think there are two ways to go about this:
1) you have a unique ID as principal but the login module has to do a lookup from email address to ID before the authentication call can be made (e.g. out to LDAP)
2) you have the email address as the principal (there may be problems with the length/characters for some backend authentication providers) and then an additional attribute for the unique ID (which is subsequently used for auditing)
My initial feeling is that the first method ought to be the best compromise, but am I missing anything that is available "out of the box" as I think this requirement will become increasingly common?
-SimonHi Simon,
You can always add additional principals to the Subject during login,but keep the primay principal as the first one in the set.
If you write your own login module, you can fetch the user-id from the database/directory server based on
the email and add it to the Subject as the primary principal and then add the email as subsequent pruncipal; i.e.
if the System requires ID(PK) as the primary principal, then add ID as the Subject's first Principal and later add the email,and vice versa.
You can use both at any moment in the execution cycle; howewver, when you call
ejbContext.getCallerPrincipal() or ServletRequest.getCallerPrincipal() you would only get the primary principal.
To retrieve all the principals a subject is carrying, you need to try
Set<Principal> principals= Subject.getSubject(AccessController.getContext()).getPrincipals(); and then iterate over the set to find the appropriate principal that you want.
Writing LoginModule is not so difficult as some put it; some time back Frank Nimphius has written a how-to article on this topic
which you can easily find by little googling.
I hope this helps,
Regards,
Samba -
Can an email address be a member of an LDAP group even if it isn't
associated with an object in the Directory Server?
<P>
General members of a group are the members defined in the
Directory Server. They are full-fledged members of the group who
may have a set of permissions associated with their membership,
a title, or other attributes. Mail-specific users are users who
are not full-fledged members of the group, but who receive mail
sent to the group. Mail-specific users need not be identified as
a user in the Directory Server--an email address is sufficient.
An example of this is a group of salespeople, all of whom are in
the group "North American Sales Team." They have access to a
sales-tracking database, on-line quota information, and
competitive information. The mail-specific users of this group
are the admins who support the members of the sales team, who need
to get the mail that goes out to the group, but don't need access
to the applications and information that the salespeople do.Hey EllyK,
Welcome to the BlackBerry Support Community Forums.
Thanks for the question.
I would suggest performing this workaround and then try to login to BlackBerry Link:
Open BlackBerry World on the BlackBerry smartphone and sign in using the BlackBerry ID.
Connect the BlackBerry 10 smartphone to the computer.
Open BlackBerry Link
Sign in using the BlackBerry ID.
Let me know if the issue still persists.
Cheers.
-ViciousFerret
Come follow your BlackBerry Technical Team on Twitter! @BlackBerryHelp
Be sure to click Like! for those who have helped you.
Click Accept as Solution for posts that have solved your issue(s)! -
How to set "Cc" field in Dynamic Email address in Receiver Mail adapter
I have done the configuration for setting up the dynamic email address using the XSD provided by SAP in note no 748024. It is working fine.
Michal's blog Mail Adapter (XI) - how to implement dynamic mail address. was a gr8 help in doing this.
But there is no clue of setting up of "CC" in email.
There should be "CC" in email is our bussiness requirement.
Would appreciate your helps.
with regards,
Ravi SiddamHi,
If you do not need mail package for other reasons, I suppose it is enough to provide a value in Dynamic Configuration for fields "THeaderTO" and "THeaderCC" and the select "Use Adapter-Specific Message Attributes" and "Variable Transport Binding" in receiver Mail Adapter.
see <a href="http://help.sap.com/saphelp_nw04/helpdata/en/6b/4493404f673028e10000000a1550b0/frameset.htm">SAP help</a> for more details.
Regards,
Daniele -
How to set "Cc" field in Dynamic Email address in Receiver JDBC adapter
I have done the configuration for setting up the dynamic email address using the XSD provided by SAP in note no 748024. It is working fine.
Michal's blog Mail Adapter (XI) - how to implement dynamic mail address. was a gr8 help in doing this.
But there is no clue of setting up of "CC" in email.
There should be "CC" in email is our bussiness requirement.
Would appreciate your helps.
with regards
Ravi SiddamHI,
See fragment from help,
Specifications for mail attributes:
○ Under From, specify the e-mail address from which the message is sent.
○ Under To, specify the e-mail address that will receive the message. If you enter more than one address, you must separate them with a semicolon.
If you have specified an IMAP server under URL, the message is saved in the specified folder but is not sent to the receiver specified under To.
○ Under Cc, specify the other e-mail addresses to which the e-mail is to be sent.
These addresses are visible to the receiver.
○ Under Bcc, specify the other e-mail addresses to which the e-mail is to be sent.
These addresses are not visible to the receiver.
○ Enter the Subject of the e-mail message.
○ Specify whether you want to encode the content of the e-mail message. You have the following options:
■ None
■ Base64 (default value)
■ quoted-printable
Hope this helps.
Regards,
Akshay.
reward points if find useful. -
Configuring Receiver mail adapter with dynamic email addresses
Hi,
I'm a newbie to XI and I have problems in configuring the Receiver mail adapter with the "Use Mail package" option selected. I am trying pickup a file (using file adapter on Sender side, picks up a simple XML file) and after mapping in XI, send the message as an email message to dynamic email addresses.
Everything works fine if I did not select the "Use Mail Package". But when I choose that option it errors out. I followed this blog posted on SDN -
/people/michal.krawczyk2/blog/2005/03/07/mail-adapter-xi--how-to-implement-dynamic-mail-address
The following XML message is my source
<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/Somenamespace">
<ns0:Message1>
<ns1:studentlisttest xmlns:ns1="urn:karthiksender_to_karthikreceiver">
<Student>
<studentid>1</studentid>
<lastname>Studentlastname</lastname>
<firstname>Studentfirstname</firstname>
</Student>
<Mail>
<From>[email protected]</From>
<To>[email protected]</To>
<Subject>Test mail adapter</Subject>
</Mail>
</ns1:studentlisttest>
</ns0:Message1>
</ns0:Messages>
What I want to accomplish is, I have a simple message mapping where the Studentdetails are mapped to, lets say Customer details. For convenience lets keep it simple, StudentId --> Customerid, (student)Firstname --> (customer)Firstname, (Student)Lastname --> (customer)Lastname
I would like to get the Customer details as an XML attachment or in the body of an email with from, to and subject corresponding to that specified in the <Mail> node.
I followed the instructions posted on the blog and it works fine if I don't map the studentdetails to customerdetails. I did multimapping, with one source message (the xml file I posted above) and two target messages (customerdetails and Mail, which is the external definition posted on the blog). I beleive I'm missing something here. Could somebody please guide me through this?
Thanks
Karthikhi,
I still have not found the solution for this problem. Michal, your blog works fine when my source message has got only the mail details. As per your advice, I tried modified the structure of the xsd file as follows
<xs:schema targetNamespace="http://sap.com/xi/XI/Mail/30"
xmlns:xi="http://sap.com/xi/XI/Mail/30"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!--
Mail
-->
<xs:element name="Mail">
<xs:annotation>
<xs:documentation>Mail package for XI - Mail Adapter</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Subject" type="xs:string" minOccurs="0"/>
<xs:element name="From" type="xs:string" minOccurs="0"/>
<xs:element name="To" type="xs:string" minOccurs="0"/>
<xs:element name="Reply_To" type="xs:string" minOccurs="0"/>
<xs:element name="Content_Type" type="xs:string" minOccurs="0"/>
<xs:element name="Date" type="xs:dateTime" minOccurs="0"/>
<xs:element name="Message_ID" type="xs:string" minOccurs="0"/>
<xs:element name="X_Mailer" type="xs:string" minOccurs="0"/>
<xs:element name="Content" minOccurs="0">
<xs:annotation>
<xs:documentation>any type</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attribute name="encoding" type="xs:string"/>
</xs:complexType>
</xs:element>
<xs:element name="MailReceipt">
<xs:annotation>
<xs:documentation>Mail Receipt for XI - Mail Adaper</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Server" type="xs:string"/>
<xs:element name="Format" type="xs:string"/>
<xs:element name="UseMailPackage" type="xs:boolean"/>
<xs:element name="Encoding" type="xs:string"/>
<xs:element name="Subject" type="xs:string" minOccurs="0"/>
<xs:element name="From" type="xs:dateTime" minOccurs="0"/>
<xs:element name="To" type="xs:string" minOccurs="0"/>
<xs:element name="Date" type="xs:dateTime" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CustomerlistExternal">
<xs:annotation>
<xs:documentation>Customer List</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="Customername" type="xs:string"/>
<xs:element name="Customerid" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
My source message will be something like
<?xml version="1.0" encoding="UTF-8"?>
<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
<ns0:Message1>
<ns1:studentlisttest xmlns:ns1="urn:karthiksender_to_karthikreceiver">
<Student>
<studentid>1</studentid>
<lastname>abclname</lastname>
<firstname>abcfname</firstname>
</Student>
<Mail>
<From>[email protected]</From>
<To>[email protected]</To>
<Subject>Testing Mail adapter</Subject>
</Mail>
</ns1:studentlisttest>
</ns0:Message1>
</ns0:Messages>
I have mapped the <student></student> information to customerlist, with customerid --> studentid and customername --> firstname or lastname (for symplicity). This was a multimapping with one source and two target messages. My test mapping output is
<?xml version="1.0" encoding="UTF-8"?>
<ns0:Messages xmlns:ns0="http://sap.com/xi/XI/SplitAndMerge">
<ns0:Message1>
<ns2:Mail xmlns:ns2="http://sap.com/xi/XI/Mail/30">
<Subject>Testing Mail adapter</Subject>
<From>[email protected]</From>
<To>[email protected]</To>
</ns2:Mail>
</ns0:Message1>
<ns0:Message2>
<ns2:CustomerlistExternal xmlns:ns2="http://sap.com/xi/XI/Mail/30">
<Customername>abclname</Customername>
<Customerid>1</Customerid>
</ns2:CustomerlistExternal>
</ns0:Message2>
</ns0:Messages>
So how would I get this part of the <CustomerlistExternal></CustomerlistExternal> part of the message as an attachment to the mail address specified in the <ns2:Mail></ns2:Mail> tags.
I'm definitely not understanding it right and am missing something. Could you give me step by step instructions to acheive this. I apologize for the trouble..this would be of great help to me.
Thanks
Karthik -
How to send an email with an attachment to the customers email address.
Hi friends,
How to send an email with an attachment to the customers email address.
the attachment will be in doc format.
Having an Header
the data which i am sending must be in a TABLE format
with 5 columns.
and each column must have a column heading
Please guide me.
Thanks in Advance,
Ganesh.*& Report ZEMAIL_ATTACH *
*& Example of sending external email via SAPCONNECT *
REPORT ZEMAIL_ATTACH .
TABLES: ekko.
PARAMETERS: p_email TYPE somlreci1-receiver .
*Here get the values of mail from the table adn6 for the customer address.
TYPES: BEGIN OF t_ekpo,
ebeln TYPE ekpo-ebeln,
ebelp TYPE ekpo-ebelp,
aedat TYPE ekpo-aedat,
matnr TYPE ekpo-matnr,
END OF t_ekpo.
DATA: it_ekpo TYPE STANDARD TABLE OF t_ekpo INITIAL SIZE 0,
wa_ekpo TYPE t_ekpo.
TYPES: BEGIN OF t_charekpo,
ebeln(10) TYPE c,
ebelp(5) TYPE c,
aedat(8) TYPE c,
matnr(18) TYPE c,
END OF t_charekpo.
DATA: wa_charekpo TYPE t_charekpo.
DATA: it_message TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
WITH HEADER LINE.
DATA: it_attach TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
WITH HEADER LINE.
DATA: t_packing_list LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
t_contents LIKE solisti1 OCCURS 0 WITH HEADER LINE,
t_receivers LIKE somlreci1 OCCURS 0 WITH HEADER LINE,
t_attachment LIKE solisti1 OCCURS 0 WITH HEADER LINE,
t_object_header LIKE solisti1 OCCURS 0 WITH HEADER LINE,
w_cnt TYPE i,
w_sent_all(1) TYPE c,
w_doc_data LIKE sodocchgi1,
gd_error TYPE sy-subrc,
gd_reciever TYPE sy-subrc.
*START_OF_SELECTION
START-OF-SELECTION.
Retrieve sample data from table ekpo
PERFORM data_retrieval.
Populate table with detaisl to be entered into .xls file
PERFORM build_xls_data_table.
*END-OF-SELECTION
END-OF-SELECTION.
Populate message body text
perform populate_email_message_body.
Send file by email as .xls speadsheet
PERFORM send_file_as_email_attachment
tables it_message
it_attach
using p_email
'Example .xls documnet attachment'
'DOC'
'filename'
changing gd_error
gd_reciever.
Instructs mail send program for SAPCONNECT to send email(rsconn01)
PERFORM initiate_mail_execute_program.
*& Form DATA_RETRIEVAL
Retrieve data form EKPO table and populate itab it_ekko
FORM data_retrieval.
SELECT ebeln ebelp aedat matnr
UP TO 10 ROWS
FROM ekpo
INTO TABLE it_ekpo.
ENDFORM. " DATA_RETRIEVAL
*& Form BUILD_XLS_DATA_TABLE
Build data table for .xls document
FORM build_xls_data_table.
CONSTANTS: con_cret TYPE x VALUE '0D', "OK for non Unicode
con_tab TYPE x VALUE '09'. "OK for non Unicode
*If you have Unicode check active in program attributes thnen you will
*need to declare constants as follows
*class cl_abap_char_utilities definition load.
*constants:
con_tab type c value cl_abap_char_utilities=>HORIZONTAL_TAB,
con_cret type c value cl_abap_char_utilities=>CR_LF.
CONCATENATE 'EBELN' 'EBELP' 'AEDAT' 'MATNR'
INTO it_attach SEPARATED BY con_tab.
CONCATENATE con_cret it_attach INTO it_attach.
APPEND it_attach.
LOOP AT it_ekpo INTO wa_charekpo.
CONCATENATE wa_charekpo-ebeln wa_charekpo-ebelp
wa_charekpo-aedat wa_charekpo-matnr
INTO it_attach SEPARATED BY con_tab.
CONCATENATE con_cret it_attach INTO it_attach.
APPEND it_attach.
ENDLOOP.
ENDFORM. " BUILD_XLS_DATA_TABLE
*& Form SEND_FILE_AS_EMAIL_ATTACHMENT
Send email
FORM send_file_as_email_attachment tables pit_message
pit_attach
using p_email
p_mtitle
p_format
p_filename
p_attdescription
p_sender_address
p_sender_addres_type
changing p_error
p_reciever.
DATA: ld_error TYPE sy-subrc,
ld_reciever TYPE sy-subrc,
ld_mtitle LIKE sodocchgi1-obj_descr,
ld_email LIKE somlreci1-receiver,
ld_format TYPE so_obj_tp ,
ld_attdescription TYPE so_obj_nam ,
ld_attfilename TYPE so_obj_des ,
ld_sender_address LIKE soextreci1-receiver,
ld_sender_address_type LIKE soextreci1-adr_typ,
ld_receiver LIKE sy-subrc.
ld_email = p_email.
ld_mtitle = p_mtitle.
ld_format = p_format.
ld_attdescription = p_attdescription.
ld_attfilename = p_filename.
ld_sender_address = p_sender_address.
ld_sender_address_type = p_sender_addres_type.
Fill the document data.
w_doc_data-doc_size = 1.
Populate the subject/generic message attributes
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle .
w_doc_data-sensitivty = 'F'.
Fill the document data and get size of attachment
CLEAR w_doc_data.
READ TABLE it_attach INDEX w_cnt.
w_doc_data-doc_size =
( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle.
w_doc_data-sensitivty = 'F'.
CLEAR t_attachment.
REFRESH t_attachment.
t_attachment[] = pit_attach[].
Describe the body of the message
CLEAR t_packing_list.
REFRESH t_packing_list.
t_packing_list-transf_bin = space.
t_packing_list-head_start = 1.
t_packing_list-head_num = 0.
t_packing_list-body_start = 1.
DESCRIBE TABLE it_message LINES t_packing_list-body_num.
t_packing_list-doc_type = 'RAW'.
APPEND t_packing_list.
Create attachment notification
t_packing_list-transf_bin = 'X'.
t_packing_list-head_start = 1.
t_packing_list-head_num = 1.
t_packing_list-body_start = 1.
DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
t_packing_list-doc_type = ld_format.
t_packing_list-obj_descr = ld_attdescription.
t_packing_list-obj_name = ld_attfilename.
t_packing_list-doc_size = t_packing_list-body_num * 255.
APPEND t_packing_list.
Add the recipients email address
CLEAR t_receivers.
REFRESH t_receivers.
t_receivers-receiver = ld_email.
t_receivers-rec_type = 'U'.
t_receivers-com_type = 'INT'.
t_receivers-notif_del = 'X'.
t_receivers-notif_ndel = 'X'.
APPEND t_receivers.
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = w_doc_data
put_in_outbox = 'X'
sender_address = ld_sender_address
sender_address_type = ld_sender_address_type
commit_work = 'X'
IMPORTING
sent_to_all = w_sent_all
TABLES
packing_list = t_packing_list
contents_bin = t_attachment
contents_txt = it_message
receivers = t_receivers
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
Populate zerror return code
ld_error = sy-subrc.
Populate zreceiver return code
LOOP AT t_receivers.
ld_receiver = t_receivers-retrn_code.
ENDLOOP.
ENDFORM.
*& Form INITIATE_MAIL_EXECUTE_PROGRAM
Instructs mail send program for SAPCONNECT to send email.
FORM initiate_mail_execute_program.
WAIT UP TO 2 SECONDS.
SUBMIT rsconn01 WITH mode = 'INT'
WITH output = 'X'
AND RETURN.
ENDFORM. " INITIATE_MAIL_EXECUTE_PROGRAM
*& Form POPULATE_EMAIL_MESSAGE_BODY
Populate message body text
form populate_email_message_body.
REFRESH it_message.
it_message = 'Please find attached a list test ekpo records'.
APPEND it_message.
endform. " POPULATE_EMAIL_MESSAGE_BODY
regards,
venkat. -
Dynamic Email Addresses in Mail Adapter in PI 7.1
Hi All,
I am having trouble populating email addresses in the structure and sending them. I have a source and target structure. The target structure should be sent as a mail attachment. I have created the external defintion of the mail attributes from the blog https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1361. [original link is broken] [original link is broken] [original link is broken] Now my message mapping is multi-mapping. Its 1: 2 messages. And my operation mapping also has one source and 2 target interfaces. Now in Interface determination I gave the same mapping and both the messages showed up. But when I execute the scenario, its giving a mapping error, though its working in ESR. Can anybody please help me out here.
Please do not send me links to
/people/prasad.ulagappan2/blog/2005/06/07/mail-adapter-scenarios-150-sap-exchange-infrastructure or /people/jayakrishnan.nair/blog/2005/06/20/dynamic-file-name-using-xi-30-sp12-part--i .
Thanks,
GeethaHi,
Cause: com.sap.engine.interfaces.messaging.api.exception.MessagingException:
Error: invalid XIMailAdapter channel
This problem is answered in this thread:
invalid XIMailAdapter
Regards,
Abhishek. -
SapScript Form by email: Using output medium 5 - several email address
Hello, ppl
I've been doing some developing concerning the send of correspondence by email.
I've used output medium 5, and have have build email recipient parameters as follow:
Getting email address:
CLEAR address.
SELECT SINGLE smtp_addr FROM adr6
INTO address
WHERE addrnumber = p_adrnr
AND persnumber = space
AND flgdefault = 'X'.
IF address IS INITIAL.
p_device = 'PRINTER'.
EXIT.
ENDIF.
create recipient
swc_create_object lo_recipient 'RECIPIENT' space.
swc_set_element lt_container 'SendAsACopy'
'X'.
swc_set_element lt_container 'AddressString'
address.
swc_set_element lt_container 'TypeID'
'U'.
swc_call_method lo_recipient 'CreateAddress' lt_container.
swc_object_to_persistent lo_recipient p_persistent_recipient.
create sender (current user)
swc_create_object lo_sender 'RECIPIENT' space.
swc_set_element lt_container 'AddressString'
sy-uname.
swc_set_element lt_container 'TypeID' 'B'.
swc_call_method lo_sender 'CreateAddress' lt_container.
swc_object_to_persistent lo_sender p_persistent_sender.
And have called open_form as follows:
CALL FUNCTION 'OPEN_FORM'
EXPORTING form = xformular
language = ekko-spras
OPTIONS = itcpo
archive_index = toa_dara
archive_params = arc_params
device = xdevice
dialog = xdialog
mail_sender = p_persistent_sender
mail_recipient = p_persistent_recipient
EXCEPTIONS canceled = 01.
IF sy-subrc NE 0.
PERFORM protocol_update USING '142' ekko-ebeln space space space.
retco = sy-subrc.
EXIT.
ENDIF.
Everything works fine ... problem is i need to send the email to several adresses and also add some as CC: instead of TO: in the email parameters.
Is this possible?
As far as i know mail_ricipient only allows one email reference ...
Please, provide some help.
Thanks,
MárioLOOP AT <receiver_table>.
w_email = <receiver_table-mailid.
*-- Create persistent send request
send_request = cl_bcs=>create_persistent( ).
*--Add document to send request
CALL METHOD send_request->set_document( document ).
*-- Get sender object
sender = cl_sapuser_bcs=>create(<Sender mailid / userid ).
*--Add sender
CALL METHOD send_request->set_sender
EXPORTING
i_sender = sender.
recipient = cl_cam_address_bcs=>create_internet_address( w_email ).
RECIPIENT = CL_CAM_ADDRESS_BCS=>CREATE_INTERNET_ADDRESS( P_RECVR ).
*--Add recipient with its respective attributes to send request
CALL METHOD send_request->add_recipient
EXPORTING
i_recipient = recipient.
*--set send immediately flag
send_request->set_send_immediately( 'X' ).
*--Send document
CALL METHOD send_request->send( ).
COMMIT WORK.
endloop.
Maybe you are looking for
-
Itunes still is not working correctly. There was a software update that i received yesterday and i figured it would fix the problem with itunes not responding, but it didn't. It's still doing the same thing. I'm getting kinda annoyed cause i use itun
-
HT204053 How do I access my iCloud on my computer? I want to see my photos.
Yes. I feel like a moron, but I cannot figure out how to access the photos / my iCloud account on my mac. My phone backs up to the iCloud, and I'd like to view that content from my mac. Thanks.
-
How to view *.eml files in Lotus Notes as native application?
Using Desktop Integration for Lotus Notes, and using Contribution Folders via Notes: I can drop-and-drag an e-mail from lotus notes inbox to the contribution folder (in Notes) ok. I can view the *.eml file in Contribution Folder (Notes and Explorer),
-
How can I get IP addresses of client and host in a web application. Not just in servlets, I want to know how to get these values in a simple java class. Thanks,
-
ICal crawling SO SLOOOOOOWWW! Please Help!
It's actually on my sister-in-laws 1.6ghz G5 Powermac, but I have run out of ideas to try and help her.. Granted, she has about 17 very full calenders, but there is definitely something wrong.... iCal takes about 8 seconds to launch, moving from fiel