189. Araxis Merge File Comparison Report

Produced by Araxis Merge on 2/1/2017 2:56:23 PM Eastern Standard Time. See www.araxis.com for information about Merge. This report uses XHTML and CSS2, and is best viewed with a modern standards-compliant browser. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

189.1 Files compared

# Location File Last Modified
1 C:\Araxis_Merge_Comprasion\Pub_un\BTSSS_CIF_122016.zip\BTSSS_CIF_12_20_16\clean\CRM\trunk\SDK\SampleCode\CS\BusinessDataModel\BusinessManagement ConfigureQueueEmail.cs Tue Dec 20 19:51:44 2016 UTC
2 Wed Feb 1 19:56:23 2017 UTC

189.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 0 0
Changed 0 0
Inserted 0 0
Removed 1 254

189.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

189.4 Active regular expressions

No regular expressions were active.

189.5 Comparison detail

1   // ======= ========== ========== ========== ========== ========== ========== ==        
2   //        
3   //  This f ile is par t of the M icrosoft D ynamics CR M SDK code  samples.        
4   //        
5   //  Copyri ght (C) Mi crosoft Co rporation.   All righ ts reserve d.        
6   //        
7   //  This s ource code  is intend ed only as  a supplem ent to Mic rosoft        
8   //  Develo pment Tool s and/or o n-line doc umentation .  See the se other        
9   //  materi als for de tailed inf ormation r egarding M icrosoft c ode sample s.        
10   //        
11   //  THIS C ODE AND IN FORMATION  ARE PROVID ED "AS IS"  WITHOUT W ARRANTY OF  ANY        
12   //  KIND,  EITHER EXP RESSED OR  IMPLIED, I NCLUDING B UT NOT LIM ITED TO TH E        
13   //  IMPLIE D WARRANTI ES OF MERC HANTABILIT Y AND/OR F ITNESS FOR  A        
14   //  PARTIC ULAR PURPO SE.        
15   //        
16   // ======= ========== ========== ========== ========== ========== ========== ==        
17   //<snippet ConfigureQ ueueEmail>        
18   using Syst em;        
19   using Syst em.Linq;        
20   using Syst em.Service Model;        
21   using Syst em.Service Model.Desc ription;        
22          
23   // These n amespaces  are found  in the Mic rosoft.Xrm .Sdk.dll a ssembly        
24   // found i n the SDK\ bin folder .        
25   using Micr osoft.Xrm. Sdk;        
26   using Micr osoft.Xrm. Sdk.Client ;        
27   using Micr osoft.Xrm. Sdk.Query;        
28   using Micr osoft.Xrm. Sdk.Discov ery;        
29   using Micr osoft.Xrm. Sdk.Messag es;        
30          
31   // This na mespace is  found in  Microsoft. Crm.Sdk.Pr oxy.dll as sembly        
32   // found i n the SDK\ bin folder .        
33   using Micr osoft.Crm. Sdk.Messag es;        
34          
35   namespace  Microsoft. Crm.Sdk.Sa mples        
36   {        
37       /// <s ummary>        
38       /// Th is Sample  shows how  to configu re a queue 's email p roperties.        
39       /// </ summary>        
40           pu blic class  Configure QueueEmail        
41           {        
42           #r egion Clas s Level Me mbers        
43                   
44           // / <summary >        
45           // / Stores t he organiz ation serv ice proxy.        
46           // / </summar y>        
47           pr ivate Orga nizationSe rviceProxy  _serviceP roxy;        
48          
49           //  Define th e IDs need ed for thi s sample.        
50           pu blic Guid  _queueId;        
51                   
52           #e ndregion C lass Level  Members        
53          
54           #r egion How  To Sample  Code        
55           // / <summary >        
56           // / Create a nd configu re the org anization  service pr oxy.        
57           // / Configur e an exist ing queue' s email pr operty val ues.        
58           // / Optional ly delete  any entity  records t hat were c reated for  this samp le.        
59           // / </summar y>        
60           // / <param n ame="serve rConfig">C ontains se rver conne ction info rmation.</ param>        
61           // / <param n ame="promp tforDelete ">When Tru e, the use r will be  prompted t o delete a ll        
62           // / created  entities.< /param>        
63           pu blic void  Run(Server Connection .Configura tion serve rConfig, b ool prompt ForDelete)        
64           {        
65                try        
66                {        
67                    // C onnect to  the Organi zation ser vice.         
68                    // T he using s tatement a ssures tha t the serv ice proxy  will be pr operly dis posed.        
69                    usin g (_servic eProxy = n ew Organiz ationServi ceProxy(se rverConfig .Organizat ionUri, se rverConfig .HomeRealm Uri,        
70                                                                              s erverConfi g.Credenti als, serve rConfig.De viceCreden tials))        
71                    {        
72                         // This st atement is  required  to enable  early-boun d type sup port.        
73                         _servicePr oxy.Enable ProxyTypes ();        
74          
75          
76                         // Call th e method t o create a ny data th at this sa mple requi res.        
77                         CreateRequ iredRecord s();        
78          
79                         //<snippet ConfigureQ ueueEmail1 >        
80                         // Define  some anony mous types  to define  the range          
81                         // of poss ible queue  property  values.        
82                         var Incomi ngEmailDel iveryMetho ds = new        
83                         {        
84                             None =  0,        
85                             EmailR outer = 2,        
86                             Forwar dMailbox =  3        
87                         };        
88          
89                         var Incomi ngEmailFil teringMeth ods = new        
90                         {        
91                             AllEma ilMessages  = 0,        
92                             EmailM essagesInR esponseToC rmEmail =  1,        
93                             EmailM essagesFro mCrmLeadsC ontactsAnd Accounts =  2        
94                         };        
95          
96                         var Outgoi ngEmailDel iveryMetho ds = new        
97                         {        
98                             None =  0,        
99                             EmailR outer = 2        
100                         };        
101          
102                         // Update  a queue in stance and  set its e mail prope rty values .        
103                         Queue conf igureQueue  = new Que ue()        
104                         {        
105                             QueueI d = _queue Id,        
106                             Incomi ngEmailDel iveryMetho d = new Op tionSetVal ue(        
107                                 In comingEmai lDeliveryM ethods.Ema ilRouter),        
108                             Incomi ngEmailFil teringMeth od = new O ptionSetVa lue(        
109                                 In comingEmai lFiltering Methods.Em ailMessage sInRespons eToCrmEmai l),        
110                             Outgoi ngEmailDel iveryMetho d = new Op tionSetVal ue(        
111                                 Ou tgoingEmai lDeliveryM ethods.Non e),        
112          
113                             // TOD O: Update  with appro priate add ress         
114                             // for  accessing  the e-mai l router.         
115                             EMailA ddress = " someone@ex ample.com" ,                                  
116                         };        
117          
118                         _servicePr oxy.Update (configure Queue);        
119                         //</snippe tConfigure QueueEmail 1>          
120          
121                         Console.Wr iteLine("C onfigured  the queue' s email pr operty val ues.");        
122          
123                         DeleteRequ iredRecord s(promptFo rDelete);        
124          
125                    }        
126                }        
127                // Catch  any servi ce fault e xceptions  that Micro soft Dynam ics CRM th rows.        
128                catch (F aultExcept ion<Micros oft.Xrm.Sd k.Organiza tionServic eFault>)        
129                {        
130                    // Y ou can han dle an exc eption her e or pass  it back to  the calli ng method.        
131                    thro w;        
132                }        
133           }        
134          
135           // / <summary >        
136           // / This met hod create s any enti ty records  that this  sample re quires.        
137           // / Create a  new queue  instance.          
138           // / </summar y>        
139           pu blic void  CreateRequ iredRecord s()        
140           {        
141                // Creat e a queue  instance a nd set its  property  values.        
142                Queue ne wQueue = n ew Queue()        
143                {        
144                    Name  = "Exampl e Queue",        
145                    Desc ription =  "This is a n example  queue."        
146                };        
147          
148                _queueId  = _servic eProxy.Cre ate(newQue ue);        
149                Console. WriteLine( "Created { 0}.", newQ ueue.Name) ;        
150          
151                return;        
152           }        
153          
154           // / <summary >        
155           // / Deletes  any entity  records t hat were c reated for  this samp le.        
156           // / <param n ame="promp t">Indicat es whether  to prompt  the user         
157           // / to delet e the reco rds create d in this  sample.</p aram>        
158           // / </summar y>        
159           pu blic void  DeleteRequ iredRecord s(bool pro mpt)        
160           {        
161                bool del eteRecords  = true;        
162          
163                if (prom pt)        
164                {        
165                    Cons ole.WriteL ine("\nDo  you want t hese entit y records  deleted? ( y/n)");        
166                    Stri ng answer  = Console. ReadLine() ;        
167          
168                    dele teRecords  = (answer. StartsWith ("y") || a nswer.Star tsWith("Y" ));        
169                }        
170          
171                if (dele teRecords)        
172                {        
173                    _ser viceProxy. Delete(Que ue.EntityL ogicalName , _queueId );        
174          
175                    Cons ole.WriteL ine("Entit y records  have been  deleted.") ;        
176                }        
177           }        
178          
179           #e ndregion H ow To Samp le Code        
180          
181           #r egion Main        
182           // / <summary >        
183           // / Standard  Main() me thod used  by most SD K samples.        
184           // / </summar y>        
185           // / <param n ame="args" ></param>        
186           st atic publi c void Mai n(string[]  args)        
187           {        
188                try        
189                {        
190                    // O btain the  target org anization' s Web addr ess and cl ient logon          
191                    // c redentials  from the  user.        
192                    Serv erConnecti on serverC onnect = n ew ServerC onnection( );        
193                    Serv erConnecti on.Configu ration con fig = serv erConnect. GetServerC onfigurati on();        
194          
195                    Conf igureQueue Email  app  = new Con figureQueu eEmail();        
196                    app. Run(config , true);        
197                }        
198          
199                catch (F aultExcept ion<Micros oft.Xrm.Sd k.Organiza tionServic eFault> ex )        
200                {        
201                    Cons ole.WriteL ine("The a pplication  terminate d with an  error.");        
202                    Cons ole.WriteL ine("Times tamp: {0}" , ex.Detai l.Timestam p);        
203                    Cons ole.WriteL ine("Code:  {0}", ex. Detail.Err orCode);        
204                    Cons ole.WriteL ine("Messa ge: {0}",  ex.Detail. Message);        
205                    Cons ole.WriteL ine("Plugi n Trace: { 0}", ex.De tail.Trace Text);        
206                    Cons ole.WriteL ine("Inner  Fault: {0 }",        
207                         null == ex .Detail.In nerFault ?  "No Inner  Fault" :  "Has Inner  Fault");        
208                }        
209                catch (S ystem.Time outExcepti on ex)        
210                {        
211                    Cons ole.WriteL ine("The a pplication  terminate d with an  error.");        
212                    Cons ole.WriteL ine("Messa ge: {0}",  ex.Message );        
213                    Cons ole.WriteL ine("Stack  Trace: {0 }", ex.Sta ckTrace);        
214                    Cons ole.WriteL ine("Inner  Fault: {0 }",        
215                         null == ex .InnerExce ption.Mess age ? "No  Inner Faul t" : ex.In nerExcepti on.Message );        
216                }        
217                catch (S ystem.Exce ption ex)        
218                {        
219                    Cons ole.WriteL ine("The a pplication  terminate d with an  error.");        
220                    Cons ole.WriteL ine(ex.Mes sage);        
221          
222                    // D isplay the  details o f the inne r exceptio n.        
223                    if ( ex.InnerEx ception !=  null)        
224                    {        
225                         Console.Wr iteLine(ex .InnerExce ption.Mess age);        
226          
227                         FaultExcep tion<Micro soft.Xrm.S dk.Organiz ationServi ceFault> f e        
228                             = ex.I nnerExcept ion        
229                             as Fau ltExceptio n<Microsof t.Xrm.Sdk. Organizati onServiceF ault>;        
230                         if (fe !=  null)        
231                         {        
232                             Consol e.WriteLin e("Timesta mp: {0}",  fe.Detail. Timestamp) ;        
233                             Consol e.WriteLin e("Code: { 0}", fe.De tail.Error Code);        
234                             Consol e.WriteLin e("Message : {0}", fe .Detail.Me ssage);        
235                             Consol e.WriteLin e("Plugin  Trace: {0} ", fe.Deta il.TraceTe xt);        
236                             Consol e.WriteLin e("Inner F ault: {0}" ,        
237                                 nu ll == fe.D etail.Inne rFault ? " No Inner F ault" : "H as Inner F ault");        
238                         }        
239                    }        
240                }        
241                // Addit ional exce ptions to  catch: Sec urityToken Validation Exception,  ExpiredSe curityToke nException ,        
242                // Secur ityAccessD eniedExcep tion, Mess ageSecurit yException , and Secu rityNegoti ationExcep tion.        
243          
244                finally        
245                {        
246                    Cons ole.WriteL ine("Press  <Enter> t o exit.");        
247                    Cons ole.ReadLi ne();        
248                }        
249          
250           }        
251           #e ndregion M ain        
252       }        
253   }        
254   //</snippe tConfigure QueueEmail >