Sending an email to specific user after checkin
Hi all,
I have a requirement where an email needed to be send to a specific user after a doc checked in into UCM, Here the scenario:
A contributor, while check in a doc, he/she select a name (or maybe multiple name) from a list, whom an email will be send to after the doc checked into UCM.
Is this possible, if so, is it a lot of work or straight forward?
Thanks in advance
d.s.
Hey D.S.
you would need to setup a "onEndServiceRequestActions" filter. This gets executed on successful execution of any service.
1) Get the service name
String serviceName = binder.getLocal("IdcService");
2) Check if its your service
if(serviceName.equalsIgnoreCase("<YOUR_SERVICE_NAME>")){
String emailUsers = binder.getLocal("YOUR META DATA ");
send them emails.
cheers,
sapan
Similar Messages
-
I want to receive all emails a specific user sends and receives
Hello,
I am a SysAdmin of a medium-sized company, and for different reasons, I would like to configure/implement what the title says.
I would like to receive all the emails a specific user sends and receives without him noticing (even the ones he is CC'ed).
Is this possible? If so, how can I do it?
Note: we are running Exchange 2010.
Thanks in advance.Note that the CAL requirement is stated clearly in the link I sent:
Standard journaling Standard journaling is configured on a mailbox database. It enables the Journaling agent to journal all messages sent to and from mailboxes located on a specific mailbox database. To journal all messages
to and from all recipients and senders, you must configure journaling on all mailbox databases on all Mailbox servers in the organization.
Premium journaling Premium journaling enables the Journaling agent to perform more granular journaling by using journal rules. Instead of journaling all mailboxes residing on a mailbox database, you can configure journal
rules to match your organization's needs by journaling individual recipients or members of distribution groups.
You must have an Exchange Enterprise client access license (CAL) to use premium journaling. -
I'd like to send an email to a specific group of users base on events. I know about the NotificationAgent sample program and how it sends email to document owner and modifier. So, I'd like to extend this to be able to send email to specific users based on the event. Do I need to extend DirectoryGroup or ExtendedUserProfile?....
no, you don't need to extend DirectoryUser or any other iFS ClassObject to accomplish this. you just need to write an agent that works in a similar way to the NotificationAgent. instead of sending an email to the document owner, you can send an email to any user you want. you just have to decide which user to send the email to, based on your business logic.
-
Send e-mail from specific user
Hello!
I'd like to create two different sending from SAP System - the first is monthly and the second is everyday.
May I schedule jobs either send mail from concrete SAP Users?
Otherwise Everyday job also can send preset messages from monthly job...
SAP Release: NW 2004
Thanks and Regards,
A.M.Hello A.M.,
You cannot schedule the job to send emails from specific users. If the send job is configured to run for INT, for example, it will send all emails with status 672 in SOST.
One thing you can do is to set waiting time in the emails. To do this, go to SOST, select the emails you want to set a wait time and click on the button "Set Wait Time" (it's a clock icon next to the delete button).
Regards,
Tiago -
Sending an email to the user if the WEBi scheduling failed in CMC
Hello Everyone,
Current scenario :
I am scheduling WEBi report through CMC and the report is going to end user email as an excel attachment.
Desired Functionality :
What happens is if the scheduling fails due to some reason. The email does not go to the end user on a particular date and then he complaints.
What i need here an email sending option that if the WEBi scheduling has been failed in CMC an email should go to the user saying : " The WEBi scheduling has failed. The team is working on it " . (This is just a sample message)
So the idea is to send an email to the user when the WEBi scheduling fails in the CMC. How to achieve this ?
Regards,
Ashutosh SinghHi Ashutosh,
You can send an alert email to a group when the schedule fails to run by choosing the "A job has failed to run" option under notification.
You can see this option only if you schedule the report through CMC.
Regards
Sunil -
When I send an email, a photo appears after my name in the sender line. How do I get rid of it?
I don't have a signature set up, but did a little research. Someone posted that these will show up when I send an email to myself, but will not show up when sent to another person. I sent a test email to a friend to check for sure.
-
How to send one email to multi-users using JavaMail ?
I am using JavaMail API. I am working in "sending emails to users", I had already tested "one email to one user" and got success but when tried to send one email to multi-users then I failed to do that?
Can anyone help me to do this?
I have used the below code to send to multi-user:
Address[] toAddr = {new InternetAddress(_to),new InternetAddress (to2)};
msg.addRecipients(Message.RecipientType.TO, toAddr);
But it is static only 2 users. I want to send to multi-users dynamically taking datas from database.
I have tried by using below code but it doesn't work.....
InternetAddress[] emails;
while (resultset.next()) {
temp = resultset.getString(1);
emails.setAddress(temp);
i++;
Address[] toAddr = emails;
msg.addRecipients(Message.RecipientType.TO, toAddr);
Thank you in advance...
-riteshI think you're confused about some basic Java programming techniques.
There are two obvious ways to do this.
1. Call the addRecipient method in a loop.
2. Collect all the recipients in a List, convert it to an array, and call addRecipients. -
How to send an email to external user (offline form) from se38
Hi all
how to send an email to external user (offline form) from se38 and upload the same from recipent.
we have sent mail using scripts and smartforms but couldnt do here. It will be helpful if you can give us any sample code
regards
mohammedHi,
Have a look at this thread [Re: Sending PDF forms (created using SFP) as Email Attachment] i explain all the solution with a sample code .
Hope it's help you
regards -
Abap cod e required for send an email with specific template
hi guru's
i want to send an email with specific template ,which contain some email links in the body of the email,and some of the font will be in different colour
i want load the template it in to abap program as it is.is this possible. please let me know.
where can i maintain the template,hello
check this may help u
TABLES: ekko.
PARAMETERS: p_email TYPE somlreci1-receiver
DEFAULT 'xyzlive.com'.
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'
'XLS'
'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
Thank u,
santhosh -
Log out a specific user after inactivity, not all users
I'd like to log out a specific user after a few minutes of inactivity. Not all users. Is there a ways to set this on a per user basis?
I know how to do it system wide.Should be possible with this:
Workgroup Manager 10.8 -
FM to SEND an email to SAP USER
Hi Gurus,
Pls let me know the FM if any to send a email to SAP USER (eg. DANYGG) so that it will go to SAP INBOX of the user in T.code So01.
Promise to reward.
Regards
Machi,
check with this code, and reward if u find useful..
Table Declarations
TABLES: SOLI.
Data Declarations
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
PARAMETERS: SAPID RADIOBUTTON GROUP ADDR,
EMAIL_ID RADIOBUTTON GROUP ADDR.
SELECTION-SCREEN END OF BLOCK B1.
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
SELECT-OPTIONS: ID FOR SOLI-LINE NO INTERVALS.
SELECT-OPTIONS: CC FOR SOLI-LINE NO INTERVALS.
SELECT-OPTIONS: BCC FOR SOLI-LINE NO INTERVALS.
*PARAMETERS: SENDER LIKE SOUD-USRNAM.
SELECTION-SCREEN END OF BLOCK B2.
SELECTION-SCREEN BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-009.
PARAMETERS: SUB_LINE(60) TYPE C.
SELECTION-SCREEN END OF BLOCK B3.
SELECTION-SCREEN BEGIN OF BLOCK B4 WITH FRAME TITLE TEXT-008.
SELECT-OPTIONS: TEXT1 FOR SOLI-LINE NO INTERVALS.
SELECTION-SCREEN END OF BLOCK B4.
SELECTION-SCREEN BEGIN OF BLOCK B5 WITH FRAME TITLE TEXT-009.
SELECTION-SCREEN BEGIN OF LINE.
parameters: P_ATTACH as checkbox.
selection-screen comment 3(30) text-010.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK B5.
DATA: MAIL_CONTENT LIKE SOLI OCCURS 0 WITH HEADER LINE,
SUBJECT_LINE LIKE SOOD1-OBJDES.
Start of program processing
START-OF-SELECTION.
Get the Body of the Message from the selection screen or from
calling program
LOOP AT TEXT1.
MOVE TEXT1-LOW TO MAIL_CONTENT-LINE.
APPEND MAIL_CONTENT.
ENDLOOP.
Subject of the Message
MOVE SUB_LINE TO SUBJECT_LINE.
call a routine to send the workflow message
PERFORM SEND_EMAIL
TABLES MAIL_CONTENT
USING SUBJECT_LINE.
*& Form SEND_EMAIL
Send Workflow message
FORM SEND_EMAIL TABLES OBJCONT STRUCTURE MAIL_CONTENT
USING TITLE LIKE SOOD-OBJDES.
DATA: RECEIVERS LIKE SOOS1 OCCURS 0 WITH HEADER LINE,
TSOOD1 LIKE SOOD1,
PACKING_LIST LIKE SOXPL OCCURS 0 WITH HEADER LINE,
OBJCONT1 LIKE MAIL_CONTENT OCCURS 0 WITH HEADER LINE.
DATA: BEGIN OF AT_HEADER OCCURS 1.
INCLUDE STRUCTURE SOLI.
DATA: END OF AT_HEADER.
CLEAR: TSOOD1,
RECEIVERS.
REFRESH RECEIVERS.
MOVE: SY-LANGU TO TSOOD1-OBJLA,
'Email Notice' TO TSOOD1-OBJNAM,
'C' TO TSOOD1-OBJSNS,
TITLE TO TSOOD1-OBJDES.
'SCHIAVONIR' TO TSOOD1-OWNNAM.
loop through each ID and move them to recipient table
LOOP AT ID.
TRANSLATE ID-LOW TO UPPER CASE.
IF SAPID = 'X'.
MOVE: SY-DATUM TO RECEIVERS-RCDAT,
SY-UZEIT TO RECEIVERS-RCTIM,
' ' TO RECEIVERS-RECESC,
ID-LOW TO RECEIVERS-RECNAM,
'X' TO RECEIVERS-SNDEX.
ELSE.
MOVE: SY-DATUM TO RECEIVERS-RCDAT,
SY-UZEIT TO RECEIVERS-RCTIM,
'U' TO RECEIVERS-RECESC,
'U-' TO RECEIVERS-RECNAM,
ID-LOW TO RECEIVERS-RECEXTNAM.
ENDIF.
APPEND RECEIVERS.
CLEAR RECEIVERS.
ENDLOOP.
loop through each CC and move them to recipient table
LOOP AT CC.
TRANSLATE CC-LOW TO UPPER CASE.
IF SAPID = 'X'.
MOVE: SY-DATUM TO RECEIVERS-RCDAT,
SY-UZEIT TO RECEIVERS-RCTIM,
' ' TO RECEIVERS-RECESC,
CC-LOW TO RECEIVERS-RECNAM,
'X' TO RECEIVERS-SNDEX,
'X' TO RECEIVERS-SNDCP.
ELSE.
MOVE: SY-DATUM TO RECEIVERS-RCDAT,
SY-UZEIT TO RECEIVERS-RCTIM,
'U' TO RECEIVERS-RECESC,
'U-' TO RECEIVERS-RECNAM,
CC-LOW TO RECEIVERS-RECEXTNAM,
'X' TO RECEIVERS-SNDCP.
ENDIF.
APPEND RECEIVERS.
CLEAR RECEIVERS.
ENDLOOP.
loop through each BCC and move them to recipient table
LOOP AT BCC.
TRANSLATE BCC-LOW TO UPPER CASE.
IF SAPID = 'X'.
MOVE: SY-DATUM TO RECEIVERS-RCDAT,
SY-UZEIT TO RECEIVERS-RCTIM,
' ' TO RECEIVERS-RECESC,
BCC-LOW TO RECEIVERS-RECNAM,
'X' TO RECEIVERS-SNDEX,
'X' TO RECEIVERS-SNDBC.
ELSE.
MOVE: SY-DATUM TO RECEIVERS-RCDAT,
SY-UZEIT TO RECEIVERS-RCTIM,
'U' TO RECEIVERS-RECESC,
'U-' TO RECEIVERS-RECNAM,
BCC-LOW TO RECEIVERS-RECEXTNAM,
'X' TO RECEIVERS-SNDBC.
ENDIF.
APPEND RECEIVERS.
CLEAR RECEIVERS.
ENDLOOP.
AT_HEADER = SY-DATUM.
APPEND AT_HEADER.
AT_HEADER = SY-UZEIT.
APPEND AT_HEADER.
IF SENDER EQ SPACE.
SENDER = SY-UNAME.
ENDIF.
IF P_ATTACH EQ 'X'.
PACKING_LIST-HEAD_START = 1.
PACKING_LIST-HEAD_NUM = 2.
PACKING_LIST-BODY_START = 1.
PACKING_LIST-BODY_NUM = 9999.
PACKING_LIST-FILE_EXT = 'TXT'.
APPEND PACKING_LIST.
CLEAR PACKING_LIST.
APPEND LINES OF OBJCONT TO OBJCONT1.
REFRESH OBJCONT.
ENDIF.
CALL FUNCTION 'SO_OBJECT_SEND'
EXPORTING
OBJECT_HD_CHANGE = TSOOD1
OBJECT_TYPE = 'RAW'
TABLES
OBJCONT = OBJCONT
RECEIVERS = RECEIVERS
ATT_HEAD = AT_HEADER
ATT_CONT = OBJCONT1
PACKING_LIST = PACKING_LIST
EXCEPTIONS
ACTIVE_USER_NOT_EXIST = 1
COMMUNICATION_FAILURE = 2
COMPONENT_NOT_AVAILABLE = 3
FOLDER_NOT_EXIST = 4
FOLDER_NO_AUTHORIZATION = 5
FORWARDER_NOT_EXIST = 6
NOTE_NOT_EXIST = 7
OBJECT_NOT_EXIST = 8
OBJECT_NOT_SENT = 9
OBJECT_NO_AUTHORIZATION = 10
OBJECT_TYPE_NOT_EXIST = 11
OPERATION_NO_AUTHORIZATION = 12
OWNER_NOT_EXIST = 13
PARAMETER_ERROR = 14
SUBSTITUTE_NOT_ACTIVE = 15
SUBSTITUTE_NOT_DEFINED = 16
SYSTEM_FAILURE = 17
TOO_MUCH_RECEIVERS = 18
USER_NOT_EXIST = 19
X_ERROR = 20
OTHERS = 21.
ENDFORM. " SEND_EMAIL
regards
dinesh -
Send Welcome Email to New User using the Scripting Agent
Hi
I require some assistance please. I have found a number of scripts online to send a Welcome Email to new users whereby they make use of the ScriptingAgent.xml file.
I like the way the scripts have been configured and have mashed up one or two scripts together for my desired result however when testing in my lab (Exchange 2013) I have found tow problems.
The problems are:
1. When creating a new user and mailbox (New-Mailbox) via the ECP the script throws out an error which I will post later in this post. The mailbox is created fine but it does not send out a welcome email. When a user is created in ADUC and then a mailbox
is created (Enable-Mailbox) the welcome email is sent out correctly.
2. In the script i have a section to check for NewUser00 in the HTML file and replace that with the Users Name and Surname, however this does not work correctly, I just come up blank:
The Script:
<?xml version="1.0" encoding="utf-8" ?>
<Configuration version="1.0">
<Feature Name="WelcomeEmail" Cmdlets="New-Mailbox,Enable-Mailbox">
<ApiCall Name="OnComplete">
if($succeeded) {
# Waiting for synchronization after mailbox has been created.
Set-ADServerSettings -ViewEntireForest $true
Start-Sleep -s 10
# New-Mailbox triggered. Taking SamAccountName parameter.
if ($provisioningHandler.UserSpecifiedParameters.Contains("SamAccountName") -eq $true) {
$UsrSamAccountName = $provisioningHandler.UserSpecifiedParameters["SamAccountName"]
$USRdfirst = $provisioningHandler.UserSpecifiedParameters["FirstName"]
$USRdlast = $provisioningHandler.UserSpecifiedParameters["LastName"]
$UsrAlias = (Get-Mailbox -Filter {SamAccountName -eq $UsrSamAccountName}).Alias.ToString()
$USRdname = $USRdfirst + " " + $USRdlast
# Enable-Mailbox triggered. Taking Identity parameter, this is the only one avalaible in this case.
if ($provisioningHandler.UserSpecifiedParameters.Contains("Identity") -eq $true) {
$UsrIdentity = $provisioningHandler.UserSpecifiedParameters["Identity"].ToString()
$USRdfirst=$provisioningHandler.UserSpecifiedParameters["FirstName"]
$USRdlast=$provisioningHandler.UserSpecifiedParameters["LastName"]
$UsrAlias = (Get-Mailbox -Identity $UsrIdentity).Alias.ToString()
$USRdname= $USRdfirst + " " + $USRdlast
# Defining variables.
$UsrAddr = (Get-Mailbox -Filter {Alias -eq $UsrAlias}).PrimarySmtpAddress.ToString()
$UsrOU = (Get-Mailbox -Filter {Alias -eq $UsrAlias}).OrganizationalUnit
# Sending email notification to the user in specific OU.
if ($UsrOU -match "Contoso.com") {
# HR #
$fromHR="[email protected]"
$SubjectHR="'Welcome to Contoso'"
$BodyHR = [string] (get-content ("c:\welcome\WelcomeMSG.htm"))
$BodyHR = $BodyHR -replace "NewUser00",$USRdname
$fileHR = "c:\welcome\WelcomeMSG.htm"
$smtp="192.168.x.x"
Send-MailMessage -From $fromHR -To $UsrAddr -Subject $SubjectHR -Body $BodyHR -BodyAsHtml -Encoding ([System.Text.Encoding]::UTF8) -SmtpServer $Smtp
# Clearing variables. Each one in its own line in order to prevent error messages from being shown on EMC.
if ($UsrAlias) { Remove-Variable UsrAlias }
if ($UsrAddr) { Remove-Variable UsrAddr }
if ($UsrOU) { Remove-Variable UsrOU }
if ($UsrMsg) { Remove-Variable UsrMsg }
if ($UsrIdentity) { Remove-Variable UsrIdentity }
if ($UsrSamAccountName) { Remove-Variable UsrSamAccountName }
</ApiCall>
</Feature>
</Configuration>
The Error for issue 1:
The cmdlet extension agent with the index 5 has thrown an exception in OnComplete().
The exception is: Microsoft.Exchange.Provisioning.ProvisioningException: ScriptingAgent:
Exception thrown while invoking scriptlet for OnComplete API: You cannot call a method on a
null-valued expression.. ---> System.Management.Automation.RuntimeException:
You cannot call a method on a null-valued expression. at CallSite.Target(Closure , CallSite , Object ) at
System.Dynamic.UpdateDelegates.UpdateAndExecute1[T0,TRet](CallSite site, T0 arg0) at
System.Management.Automation.Interpreter.DynamicInstruction`2.Run(InterpretedFrame frame) at
System.Management.Automation.Interpreter.EnterTryCatchFinallyInstruction.Run(InterpretedFrame frame)
--- End of inner exception stack trace --- at Microsoft.Exchange.ProvisioningAgent.ScriptingAgentHandler.OnComplete(Boolean succeeded, Exception e)
at Microsoft.Exchange.Provisioning.ProvisioningLayer.OnCompleteImpl(Task task, Boolean succeeded, Exception exception)
Any assistance in resolving these two issues will be really appreciatedOk I am gonna to answer my own question.
I have persevered through the day and have resolved my two issues. I hope this assist others within the community.
Script:
<?xml version="1.0" encoding="utf-8" ?>
<Configuration version="1.0">
<Feature Name="WelcomeEmail" Cmdlets="New-Mailbox,Enable-Mailbox">
<ApiCall Name="OnComplete">
if($succeeded) {
# Waiting for synchronization after mailbox has been created.
Start-Sleep -s 30
Set-ADServerSettings -ViewEntireForest $true
# New-Mailbox triggered. Taking SamAccountName parameter.
if ($provisioningHandler.UserSpecifiedParameters.Contains("Name") -eq $true) {
$UsrSamAccountName = $provisioningHandler.UserSpecifiedParameters["Name"]
$Usrname = (Get-Mailbox -identity $UsrSamAccountName | Select Name | foreach { $_.Name})
$UsrString = $Usrname | Out-String
$UsrAlias = (Get-Mailbox -Filter {Name -eq $UsrSamAccountName}).Alias.ToString()
# Enable-Mailbox triggered. Taking Identity parameter, this is the only one avalaible in this case.
if ($provisioningHandler.UserSpecifiedParameters.Contains("Identity") -eq $true) {
$UsrIdentity = $provisioningHandler.UserSpecifiedParameters["Identity"].ToString()
$Usrname = (Get-Mailbox -identity $UsrIdentity | Select Name | foreach { $_.Name})
$UsrString = $Usrname | Out-String
$UsrAlias = (Get-Mailbox -Identity $UsrIdentity).Alias.ToString()
# Defining variables.
$UsrAddr = (Get-Mailbox -Filter {Alias -eq $UsrAlias}).PrimarySmtpAddress.ToString()
$UsrOU = (Get-Mailbox -Filter {Alias -eq $UsrAlias}).OrganizationalUnit
# Sending email notification to the user in specific OU.
if ($UsrOU -match "contoso.com") {
# HR #
$fromHR="[email protected]"
$SubjectHR="'Welcome to CONTOSO'"
$BodyHR = [string] (get-content ("c:\welcome\WelcomeMSG.htm"))
$BodyHR = $BodyHR -replace "NewUser00",$UsrString
$fileHR = "c:\welcome\WelcomeMSG.htm"
$smtp="x.x.x.x"
Send-MailMessage -From $fromHR -To $UsrAddr -Subject $SubjectHR -Body $BodyHR -BodyAsHtml -Encoding ([System.Text.Encoding]::UTF8) -SmtpServer $Smtp
# Clearing variables. Each one in its own line in order to prevent error messages from being shown on EMC.
if ($UsrAlias) { Remove-Variable UsrAlias }
if ($UsrAddr) { Remove-Variable UsrAddr }
if ($UsrOU) { Remove-Variable UsrOU }
if ($UsrMsg) { Remove-Variable UsrMsg }
if ($UsrIdentity) { Remove-Variable UsrIdentity }
if ($UsrSamAccountName) { Remove-Variable UsrSamAccountName }
</ApiCall>
</Feature>
</Configuration> -
Send system message to specific users
Hi,
We have a requirement to send a system message to specific users that will be displayed immediately to those in the list who are logged on, or for those not currently logged on, the message should be displayed when they next log-in.
We do not want the message to go to their in-box or to be sent by email. We are looking for something similar to the system message produced by SM02.
Does anyone have any ideas or examples?
Thanks
JanHi Mylene,
We have looked at TH_POPUP.
This works fine if the user is logged in but not if they are not. We need something that will pop up when they do log in.
Thanks for your help tho
Jan -
Send an email to previous approver after rejection in OOB Approval workflow
Hi all,
I have created OOB Approval workflow with two approvers.
If first approver rejects then i want it to send an email to the requester.
If second approver rejects then i want it to send an email to the first approver as well as requester?
Is there any way to acheive this?
And same should happened when document is approved
Also how to identify that the first approver has completed their task?Hi Trupti,
you can do that using SharePoint designer workflows:
you can do that by putting the actions in the complete condition so you check who approved it and based on that you do the actions of sending email so it will be if conditions and where to put that in here
http://bobbyspworld.com/2013/02/08/5-step-to-enhance-sharepoint-2010-approval-workflow/
https://support.office.com/en-gb/article/Use-the-task-process-editor-for-approval-workflows-8680b4a4-36b1-441c-b070-e515976078aa
<section class="ocpSection" style="color:#363636;font-family:'Segoe UI', 'Segoe UI Web Regular', 'Segoe UI Symbol', 'Helvetica Neue', 'BBAlpha Sans', 'S60 Sans', Arial, sans-serif;font-size:10.3999996185303px;line-height:normal;">
Completion conditions for the task process
When you click the completion conditions, you’re taken to a full-page workflow editor where you can add or change the completion conditions that for the task process. Specifically, these actions
will run every time an individual task is completed. You can customize the logic here using the workflow commands in SharePoint Designer, like conditions, actions, and else-if statements. You can also add task behavior actions, like the Set Content Approval
Status and End Task Process.
Top
of Page
</section><section class="ocpSection" style="color:#363636;font-family:'Segoe UI', 'Segoe UI Web Regular', 'Segoe UI Symbol', 'Helvetica Neue', 'BBAlpha Sans', 'S60 Sans', Arial, sans-serif;font-size:10.3999996185303px;line-height:normal;">
Behavior of a single task
From the summary page, if you change the behavior of a single task, you’re taken to another full-screen workflow editor where you see the individual task events, such as when it’s assigned, pending,
expires, and so on. Specifically, there are five events:
Before a task is assigned: These actions run before every individual task is created.
When a task is pending: These actions run after every individual task has been created.
When a task expires: These actions run every time an individual task is incomplete after its due date.
When a task is deleted: These actions run every time an individual task is deleted before it’s completed.
When a task completes: These actions run every time an individual task is complete.
You can add any of the available conditions and actions, and you can add several more task behavior actions this time, like append, delegate, escalate, and reassign. You can even add task notification
emails and wait for changes in a task process item. The available task behavior actions change depending on the event you’ve selected.
</section>
Kind Regards,
John Naguib
Technical Consultant/Architect
MCITP, MCPD, MCTS, MCT, TOGAF 9 Foundation
Please remember to mark your question as answered if this solves your problem -
Hi Experts,
I need to remove a name on a group list in Outlook as the user is getting email delivery failure when processing via SAP (He sends the invoice for approval and emails get sent to different users for approval.) One of those users has left the company and so the user gets a email delivery failure error.
How do I remove this user who is no longer with the company?
The user is saying: When I approve an invoice in SAP it sends an email notification through outlook. One of those users is no longer with the company so it cannot deliver the notification, and in return send a delivery failure (in outlook). I am approving the invoices from my SAP Workplace inbox.
How do we know what group the email is going to?
Please let me know if you have seen this issue before. Greatly appreciate your help.
Thanks,
AsadHi,
Please check whether you are using a custom z program for sending emails of approved invoices to users. If yes then either the user email ids are hardcoded in the program else a ztable is maintained for them.
Maybe you are looking for
-
How to generate a new segment in IDoc for multiple occurance of Control Num
Hi Experts, In my scenario, i need to generate a new segment in IDoc(Target Structure) based on Control Number Field in the Source Structure. The segment need to be created for multiple occurance of the Control Number. Ex: Control Number - 100 appea
-
UCM Component Integration with a BPEL WSDL
Background 1. I have a WSDL of a BPEL Process hosted on Oracle SOA Middleware Server. 2. I want to write a Component in UCM which could consume this Web Service. Problem How to write a Web Service Client in UCM to consume this Web Service? A Sample c
-
Satellite m505 problems with booting up programs after started with black screen
I went to start my laptop and after login to my profile, i was getting only a black screen. after restarting many times in both safe mode and regular, miracles i got it to long in correctly... now the problem is my main program and a few others would
-
I just bought photoshop elements. where is the mac version. i only see windows. thx
-
Upgrade Price Differentials - Justification?
The price to upgrade CS3 Design Suite to CS6 on the Australian store is over $1000. To do the same upgrade on the US Store is about $700. The currencies have been at parity for over 6 months so this represents at least a 30% markup over the US price