- .NET Assembly works, but not via Workflow...What am I doing wrong?
- Posted by Keener on March 15th, 2006
Hi,
I am having an issue with getting the e-mail portion of this code to work
from workflow. I can get it working via a Win32 app (for testing), but for
some reason cannot get the code to run via workflow. The task creation works
fine (using both Win32 app and using workflow), but cannot seem to get the
e-mail to work. Workflow Monitor says all is well (but it is not). Anybody
have any ideas on what I need to do? My workflow service is running under
DOMAIN ADMIN and DOMAIN ADMIN is part of PrivUserGroup, SQLAccessGroup,
ReportingGroup, SQLRepl, UserGroup . Thanks for the help.
- Keener
Here is my code:
public void CreateInitialCaseTask(Guid IncidentID)
{
CrmService service = new CrmService();
service.Credentials = System.Net.CredentialCache.DefaultCredentials;
email email = new email();
email.regardingobjectid = new Lookup();
email.regardingobjectid.type = EntityName.incident.ToString();
email.regardingobjectid.Value = new Guid(IncidentID.ToString());
email.subject = "This is a test from .net assembly";
activityparty activitypartyFrom = new activityparty();
activitypartyFrom.partyid = new Lookup();
activitypartyFrom.partyid.type = EntityName.systemuser.ToString();
activitypartyFrom.partyid.Value = new
Guid("{D7003CCE-3BE8-4FCC-A95E-80500A59B074}");
activityparty activitypartyTo = new activityparty();
activitypartyTo.partyid = new Lookup();
activitypartyTo.partyid.type = EntityName.contact.ToString();
activitypartyTo.partyid.Value = new
Guid{C3744E96-A40E-4D9F-87B5-68FDD609AB4C}");
email.from = new activityparty[]{activitypartyFrom};
email.to = new activityparty[]{activitypartyTo};
task task = new task();
task.regardingobjectid = new Lookup();
task.regardingobjectid.type = EntityName.incident.ToString();
task.regardingobjectid.Value = new Guid(IncidentID.ToString());
task.subject = "This is a test from .net assembly";
task.ownerid = new Owner();
task.ownerid.type = EntityName.systemuser.ToString();
task.ownerid.Value = new
Guid("{D7003CCE-3BE8-4FCC-A95E-80500A59B074}");
try
{
Guid gTaskId = service.Create(task);
Guid gEmailId = service.Create(email);
}
catch (System.Web.Services.Protocols.SoapException er)
{
er.InnerException.ToString();
}
}
And here is my workflow.config:
<workflow.config xmlns="http://microsoft.com/mscrm/workflow/"
allowunsignedassemblies="true">
<methods>
<method name="Add date and time"
assembly="Microsoft.Crm.Platform.WorkflowAssembly. dll"
typename="Microsoft.Crm.Platform.Workflow.BuildIn"
methodname="AddDateTime"
group="Date and time functions">
<parameter name="Date and Time" datatype="datetime"/>
<parameter name="Years" datatype="integer" default="0"/>
<parameter name="Months" datatype="integer" default="0"/>
<parameter name="Days" datatype="integer" default="0"/>
<parameter name="Hours" datatype="integer" default="0"/>
<parameter name="Minutes" datatype="integer" default="0"/>
<result datatype="datetime"/>
</method>
<method name="Subtract date and time"
assembly="Microsoft.Crm.Platform.WorkflowAssembly. dll"
typename="Microsoft.Crm.Platform.Workflow.BuildIn"
methodname="SubtractDateTime"
group="Date and time functions">
<parameter name="Date and Time" datatype="datetime"/>
<parameter name="Years" datatype="integer" default="0"/>
<parameter name="Months" datatype="integer" default="0"/>
<parameter name="Days" datatype="integer" default="0"/>
<parameter name="Hours" datatype="integer" default="0"/>
<parameter name="Minutes" datatype="integer" default="0"/>
<result datatype="datetime"/>
</method>
<method name="CreateTask"
assembly="AutoSend.dll"
typename="AutoSend.Class1"
methodname="CreateInitialCaseTask">
<parameter name="IncidentID" datatype="lookup"
entityname="incident"/>
</method>
<method name="Execute"
assembly="Microsoft.Crm.Platform.BulkOperationCont rolAssembly.dll"
typename="BulkOperationControlService"
methodname="Execute"
group="BulkOperationControl"
isvisible="0"
timeout="7200">
<parameter name="Caller" datatype="caller"/>
<parameter name="BulkOperationId" datatype="lookup"
entityname="bulkoperation"/>
<result datatype="string"/>
</method>
</methods>
</workflow.config>
- Posted by Jeffry van de Vuurst on March 15th, 2006
I see you already wrapped the code in a try/catch, but you're not mentioning
what the error message is.
--
Jeffry van de Vuurst
CWR Mobility
www.cwrmobility.com
--
"Keener" <Keener@discussions.microsoft.com> wrote in message
news:26B46A88-275C-49D7-B9BC-6CD15C7225E7@microsoft.com...
- Posted by Keener on March 15th, 2006
Hi Jeffry,
I just tried to run it to get the error message for you, and now it is
working. I have absolutely "no idea" as to why it just working now. Thanks
for your help just the same. Maybe in a hour it won't work again....who
knows. 
- Keener
"Jeffry van de Vuurst" wrote: