E10 C# BPM "Row has been modified by another user and couldn't b


On Wed, Mar 4, 2015 at 12:41 PM, T xevilive11x@... [vantage] <vantage@yahoogroups.com> wrote:
E10 Converted Code Programming guide

​That's the one, it talks about replacing the data set and such.​



Jose C Gomez
Software Engineer


T: 904.469.1524 mobile

Quis custodiet ipsos custodes?

I have created a post process BPM that updates a job operation using a post process directive via custom code (C#).  Since it updates fields in the database table (Db.JobOper), I am having issues with the screen because it no longer has the most recent dataset from the database.  I have also tried updating the ttJobOper table so the fields match but still subsequent updates to the record via the interface require a refresh. 


Any help is greatly appreciated-


Thanks in advance,
T

​After you make your changes do a getbyid and then attach the dataset to the dataset holder

this.dsHolder.Attach(myDS)​
​


On Feb 26, 2015 5:09 PM, "xevilive11x@... [vantage]" <vantage@yahoogroups.com> wrote:

Â
<div>
  
  
  <p></p><p><span></span></p><p><span style="font-size:11pt;">I have created a post process BPM that updates a

job operation using a post process directive via custom code (C#). Since it updates fields in the database table
(Db.JobOper), I am having issues with the screen because it no longer has the
most recent dataset from the database. I
have also tried updating the ttJobOper table so the fields match but still
subsequent updates to the record via the interface require a refresh.Â


Any help is greatly appreciated-


Thanks in advance,
T

</div>
 


<div style="color:#fff;min-height:0;"></div>
Thanks for the quick answer.  Would anyone be able to provide me an example of this in C#?  I am struggling to find specific information and the content assist in BPM designer for E10 does not help me.  My code is below if it helps

Thanks again!


// This code strips out concatenated information that was stored in the callcontextbpm fields character04-06 and works in conjunction with
// pre processor to clear out start and end date of WBSAddedOperations.
int intCount = 0;
char[] splitchar = { '~' };
string thisjob = "";
int thisop = 0;
int thisasm = 0;

string[] jobs = callContextBpmData.Character04.Split(splitchar);
string[] asm = callContextBpmData.Character05.Split(splitchar);
string[] ops = callContextBpmData.Character06.Split(splitchar);

/*for debugging
var messageTextBuilder = new System.Text.StringBuilder();
messageTextBuilder.Append("Will update " + callContextBpmData.Character01 + "/r");
messageTextBuilder.Append(jobs.Length.ToString());
*/
for (intCount = 0; intCount < jobs.Length - 1; intCount++)
{
  thisjob = jobs[intCount];
  thisop = int.Parse(ops[intCount]);
  thisasm = int.Parse(asm[intCount]);

 using (var txScope = IceContext.CreateDefaultTransactionScope())
  {
   //update permanent record
   var myop = (from op in Db.JobOper.With(LockHint.UpdLock) where op.Company == callContextClient.CurrentCompany &&
               op.JobNum == thisjob && op.AssemblySeq == thisasm &&
               op.OprSeq == thisop select op).FirstOrDefault();
   if (myop != null)
   {
     myop.StartDate = null;
     myop.DueDate = null;
      Db.Validate();

   //update temp record
    var mytop = (from op in ttJobOper where op.Company == callContextClient.CurrentCompany &&
                op.JobNum == thisjob && op.AssemblySeq == thisasm &&
               op.OprSeq == thisop select op).FirstOrDefault();
    if (myop != null)
    {
      //mytop.StartDate = null;
      //mytop.DueDate = null;
   }
  }
   txScope.Complete();
  }




On Thursday, February 26, 2015 7:07 PM, "Jose Gomez jose@... [vantage]" <vantage@yahoogroups.com> wrote:


 
<div id="ygrps-yiv-1118397850yiv5349654115ygrp-text">
  
  
  <div></div><div dir="ltr"><div dir="ltr"><span style="font-family:verdana, sans-serif;"></span></div><div class="ygrps-yiv-1118397850yiv5349654115gmail_default" style="font-family:verdana, sans-serif;font-size:small;">​After you make your changes do a getbyid and then attach the dataset to the dataset holder</div><div></div><div dir="ltr"><span style="font-family:verdana, sans-serif;"></span></div><div class="ygrps-yiv-1118397850yiv5349654115gmail_default" style="font-family:verdana, sans-serif;font-size:small;">this.dsHolder.Attach(myDS)​</div>​<div></div><div dir="ltr"><br clear="none"></div>
On Feb 26, 2015 5:09 PM, "xevilive11x@... [vantage]" <vantage@yahoogroups.com> wrote:

 
<div>
  
  
  <div></div><div><span></span></div><div><span style="font-size:11pt;">I have created a post process BPM that updates a

job operation using a post process directive via custom code (C#).  Since it updates fields in the database table
(Db.JobOper), I am having issues with the screen because it no longer has the
most recent dataset from the database.  I
have also tried updating the ttJobOper table so the fields match but still
subsequent updates to the record via the interface require a refresh. 


Any help is greatly appreciated-

Thanks in advance,
T

</div>
 


<div style="color:rgb(255, 255, 255);min-height:0px;"></div>
</div>
 


<div style="height:0px;color:rgb(255, 255, 255);"></div></div>
#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 -- #ygrps-yiv-1118397850yiv5349654115ygrp-mkp { border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-mkp hr {
border:1px solid #d8d8d8;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-mkp #ygrps-yiv-1118397850yiv5349654115hd {
color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-mkp #ygrps-yiv-1118397850yiv5349654115ads {
margin-bottom:10px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-mkp .ygrps-yiv-1118397850yiv5349654115ad {
padding:0 0;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-mkp .ygrps-yiv-1118397850yiv5349654115ad p {
margin:0;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-mkp .ygrps-yiv-1118397850yiv5349654115ad a {
color:#0000ff;text-decoration:none;}
#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-sponsor #ygrps-yiv-1118397850yiv5349654115ygrp-lc {
font-family:Arial;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-sponsor #ygrps-yiv-1118397850yiv5349654115ygrp-lc #ygrps-yiv-1118397850yiv5349654115hd {
margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-sponsor #ygrps-yiv-1118397850yiv5349654115ygrp-lc .ygrps-yiv-1118397850yiv5349654115ad {
margin-bottom:10px;padding:0 0;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115actions {
font-family:Verdana;font-size:11px;padding:10px 0;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115activity {
background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115activity span {
font-weight:700;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115activity span:first-child {
text-transform:uppercase;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115activity span a {
color:#5085b6;text-decoration:none;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115activity span span {
color:#ff7900;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115activity span .ygrps-yiv-1118397850yiv5349654115underline {
text-decoration:underline;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 .ygrps-yiv-1118397850yiv5349654115attach {
clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 .ygrps-yiv-1118397850yiv5349654115attach div a {
text-decoration:none;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 .ygrps-yiv-1118397850yiv5349654115attach img {
border:none;padding-right:5px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 .ygrps-yiv-1118397850yiv5349654115attach label {
display:block;margin-bottom:5px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 .ygrps-yiv-1118397850yiv5349654115attach label a {
text-decoration:none;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 blockquote {
margin:0 0 0 4px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 .ygrps-yiv-1118397850yiv5349654115bold {
font-family:Arial;font-size:13px;font-weight:700;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 .ygrps-yiv-1118397850yiv5349654115bold a {
text-decoration:none;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 dd.ygrps-yiv-1118397850yiv5349654115last p a {
font-family:Verdana;font-weight:700;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 dd.ygrps-yiv-1118397850yiv5349654115last p span {
margin-right:10px;font-family:Verdana;font-weight:700;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 dd.ygrps-yiv-1118397850yiv5349654115last p span.ygrps-yiv-1118397850yiv5349654115yshortcuts {
margin-right:0;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 div.ygrps-yiv-1118397850yiv5349654115attach-table div div a {
text-decoration:none;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 div.ygrps-yiv-1118397850yiv5349654115attach-table {
width:400px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 div.ygrps-yiv-1118397850yiv5349654115file-title a, #ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 div.ygrps-yiv-1118397850yiv5349654115file-title a:active, #ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 div.ygrps-yiv-1118397850yiv5349654115file-title a:hover, #ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 div.ygrps-yiv-1118397850yiv5349654115file-title a:visited {
text-decoration:none;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 div.ygrps-yiv-1118397850yiv5349654115photo-title a, #ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 div.ygrps-yiv-1118397850yiv5349654115photo-title a:active, #ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 div.ygrps-yiv-1118397850yiv5349654115photo-title a:hover, #ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 div.ygrps-yiv-1118397850yiv5349654115photo-title a:visited {
text-decoration:none;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 div#ygrps-yiv-1118397850yiv5349654115ygrp-mlmsg #ygrps-yiv-1118397850yiv5349654115ygrp-msg p a span.ygrps-yiv-1118397850yiv5349654115yshortcuts {
font-family:Verdana;font-size:10px;font-weight:normal;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 .ygrps-yiv-1118397850yiv5349654115green {
color:#628c2a;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 .ygrps-yiv-1118397850yiv5349654115MsoNormal {
margin:0 0 0 0;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 o {
font-size:0;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115photos div {
float:left;width:72px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115photos div div {
border:1px solid #666666;height:62px;overflow:hidden;width:62px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115photos div label {
color:#666666;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115reco-category {
font-size:77%;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115reco-desc {
font-size:77%;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 .ygrps-yiv-1118397850yiv5349654115replbq {
margin:4px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-actbar div a:first-child {
margin-right:2px;padding-right:5px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-mlmsg {
font-size:13px;font-family:Arial, helvetica, clean, sans-serif;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-mlmsg table {
font-size:inherit;font:100%;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-mlmsg select, #ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 input, #ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 textarea {
font:99% Arial, Helvetica, clean, sans-serif;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-mlmsg pre, #ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 code {
font:115% monospace;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-mlmsg * {
line-height:1.22em;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-mlmsg #ygrps-yiv-1118397850yiv5349654115logo {
padding-bottom:10px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-msg p a {
font-family:Verdana;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-msg p#ygrps-yiv-1118397850yiv5349654115attach-count span {
color:#1E66AE;font-weight:700;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-reco #ygrps-yiv-1118397850yiv5349654115reco-head {
color:#ff7900;font-weight:700;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-reco {
margin-bottom:20px;padding:0px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-sponsor #ygrps-yiv-1118397850yiv5349654115ov li a {
font-size:130%;text-decoration:none;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-sponsor #ygrps-yiv-1118397850yiv5349654115ov li {
font-size:77%;list-style-type:square;padding:6px 0;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-sponsor #ygrps-yiv-1118397850yiv5349654115ov ul {
margin:0;padding:0 0 0 8px;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-text {
font-family:Georgia;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-text p {
margin:0 0 1em 0;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-text tt {
font-size:120%;}

#ygrps-yiv-1118397850 #ygrps-yiv-1118397850yiv5349654115 #ygrps-yiv-1118397850yiv5349654115ygrp-vital ul li:last-child {
border-right:none !important;}
#ygrps-yiv-1118397850



THe E10 Programmers guide available in EpicWeb can walk you through all of this, including re-attaching the dataset.


Jose C Gomez
Software Engineer


T: 904.469.1524 mobile

Quis custodiet ipsos custodes?

On Fri, Feb 27, 2015 at 11:04 AM, T Post xevilive11x@... [vantage] <vantage@yahoogroups.com> wrote:

Â
<div>
  
  
  <p></p><div style="color:#000;background-color:#fff;font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"><div><div><div style="color:rgb(0,0,0);font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;background-color:rgb(255,255,255);"><div dir="ltr"><span>Thanks for the quick answer.  Would anyone be able to provide me an example of this in C#?  I am struggling to find specific information and the content assist in BPM designer for E10 does not help me.  My code is below if it helps</span></div><div dir="ltr"><span></span><br clear="none"></div><div dir="ltr"><span>Thanks again!</span></div> <div><br></div><div><br></div><div>// This code strips out concatenated information that was stored in the callcontextbpm fields character04-06 and works in conjunction with<br>// pre processor to clear out start and end date of WBSAddedOperations.<br>int intCount = 0;<br>char[] splitchar = { &#39;~&#39; };<br>string thisjob = &quot;&quot;;<br>int thisop = 0;<br>int thisasm = 0;</div><div><br></div><div>string[] jobs = callContextBpmData.Character04.Split(splitchar);<br>string[] asm = callContextBpmData.Character05.Split(splitchar);<br>string[] ops = callContextBpmData.Character06.Split(splitchar);</div><div><br></div><div>/*for debugging<br>var messageTextBuilder = new System.Text.StringBuilder();<br>messageTextBuilder.Append(&quot;Will update &quot; + callContextBpmData.Character01 + &quot;/r&quot;);<br>messageTextBuilder.Append(jobs.Length.ToString());<br>*/</div><div>for (intCount = 0; intCount &lt; jobs.Length - 1; intCount++)<br>{<br>  thisjob = jobs[intCount];</div><div>  thisop = int.Parse(ops[intCount]);<br>  thisasm = int.Parse(asm[intCount]);</div><div><br></div><div> using (var txScope = IceContext.CreateDefaultTransactionScope())<br>  {<br>   //update permanent record <br>   var myop = (from op in Db.JobOper.With(LockHint.UpdLock) where op.Company == callContextClient.CurrentCompany &amp;&amp;<br>               op.JobNum == thisjob &amp;&amp; op.AssemblySeq == thisasm &amp;&amp;<br>               op.OprSeq == thisop select op).FirstOrDefault();<br>   if (myop != null) <br>   {<br>     myop.StartDate = null;<br>     myop.DueDate = null;<br>      Db.Validate();<br></div><div><br></div><div>   //update temp record<br>    var mytop = (from op in ttJobOper where op.Company == callContextClient.CurrentCompany &amp;&amp;<br>                op.JobNum == thisjob &amp;&amp; op.AssemblySeq == thisasm &amp;&amp;<br>               op.OprSeq == thisop select op).FirstOrDefault();<br>    if (myop != null) <br>    {<br>      //mytop.StartDate = null;<br>      //mytop.DueDate = null;<br>   }<br>  }<br>   txScope.Complete();<br>  }<br><br clear="none"><br clear="none"></div><span class="ygrps-yiv-2013305781"><div> <div style="font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"> <div style="font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"> <div><br><br></div><div><div dir="ltr"> <font face="Arial"> On Thursday, February 26, 2015 7:07 PM, &quot;Jose Gomez <a rel="nofollow" target="_blank" href="mailto:jose@...">jose@...</a> [vantage]&quot; &lt;<a rel="nofollow" target="_blank" href="mailto:vantage@yahoogroups.com">vantage@yahoogroups.com</a>&gt; wrote:<br clear="none"> </font> </div>  <br clear="none"><br clear="none"> <div><div><div>

Â

<div>
  
  
  <div></div><div dir="ltr"><div dir="ltr"><span style="font-family:verdana, sans-serif;"></span></div><div style="font-family:verdana, sans-serif;font-size:small;">​After you make your changes do a getbyid and then attach the dataset to the dataset holder</div><div></div><div dir="ltr"><span style="font-family:verdana, sans-serif;"></span></div><div style="font-family:verdana, sans-serif;font-size:small;">this.dsHolder.Attach(myDS)​</div>​<div></div><div dir="ltr"><br clear="none"></div>
On Feb 26, 2015 5:09 PM, "xevilive11x@... [vantage]" <vantage@yahoogroups.com> wrote:

Â
<div>
  
  
  <div></div><div><span></span></div><div><span style="font-size:11pt;">I have created a post process BPM that updates a

job operation using a post process directive via custom code (C#). Since it updates fields in the database table
(Db.JobOper), I am having issues with the screen because it no longer has the
most recent dataset from the database. I
have also tried updating the ttJobOper table so the fields match but still
subsequent updates to the record via the interface require a refresh.Â


Any help is greatly appreciated-

Thanks in advance,
T

</div>
 


<div style="color:rgb(255,255,255);min-height:0px;"></div>
</div>
 


<div style="min-height:0px;color:rgb(255,255,255);"></div></div>


</div>
 


<div style="color:#fff;min-height:0;"></div>

#ygrps-yiv-1121323373 {font-family:'Times New Roman';font-size:13px;}
I do not see an E10 Programmers guide on EpicWeb.  Are you referring to the E10 Converted Code Programming guide or is there something more in depth out there?

-T

On Fri, 27 Feb 2015 10:29:12 -0600, Jose Gomez jose@... [vantage] <vantage@yahoogroups.com> wrote:

 
<div id="ygrps-yiv-1121323373ygrp-text">
  
  
  <div dir="ltr"><div class="ygrps-yiv-1121323373gmail_default" style="font-family:verdana, sans-serif;font-size:small;">THe E10 Programmers guide available in EpicWeb can walk you through all of this, including re-attaching the dataset.</div></div><div class="ygrps-yiv-1121323373gmail_extra"><br clear="all"><div><div class="ygrps-yiv-1121323373gmail_signature"><div dir="ltr"><div><font face="verdana, sans-serif"><br><font color="#333333"><b>Jose C Gomez</b></font></font></div><div><font color="#666666" face="verdana, sans-serif" size="1"><b>Software Engineer<br><br></b></font></div><div><font face="verdana, sans-serif"><font><font color="#666666"><b><br></b></font><font color="#FF6600" size="1">T: </font></font><font size="1"><span title="Call with Google Voice"><span title="Call with Google Voice">904.469.1524</span></span> mobile</font></font></div><div><font size="1" face="verdana, sans-serif"><font color="#FF6600">E:</font> <a rel="nofollow" target="_blank" href="mailto:jose@...">jose@...</a></font><font size="1" face="verdana, sans-serif"><br><a rel="nofollow" target="_blank" href="http://www.josecgomez.com"><font color="#FF6600">http://www.josecgomez.com</font></a><br><a rel="nofollow" target="_blank" href="http://www.linkedin.com/in/josecgomez" style="font-size:small;"><img src="https://ec.yimg.com/ec?url=http%3A%2F%2Fwww.josecgomez.com%2Fimages%2Flinkedin.png&t=1472996623&sig=IjlWXCUipQLanWevseZQ0g--~C"></a>&nbsp;<a rel="nofollow" target="_blank" href="http://www.facebook.com/josegomez" style="font-size:small;"><img src="https://ec.yimg.com/ec?url=http%3A%2F%2Fwww.josecgomez.com%2Fimages%2Ffacebook.png&t=1472996623&sig=zV6Jtzh2BKibFrH3TkJFBg--~C"></a>&nbsp;</font><a rel="nofollow" target="_blank" href="http://www.google.com/profiles/jose.gomez"><img src="https://ec.yimg.com/ec?url=http%3A%2F%2Fwww.josecgomez.com%2Fimages%2Fgoogle.png&t=1472996623&sig=DOUNywC7b5SezTsiwItkFw--~C"></a>&nbsp;<a rel="nofollow" target="_blank" href="http://www.twitter.com/joc85"><img src="https://ec.yimg.com/ec?url=http%3A%2F%2Fwww.josecgomez.com%2Fimages%2Ftwitter.png&t=1472996623&sig=tzd4Xbo6b51iypIZWno4Dg--~C"></a>&nbsp;<a rel="nofollow" target="_blank" href="http://www.josecgomez.com/professional-resume/"><img src="https://ec.yimg.com/ec?url=http%3A%2F%2Fwww.josecgomez.com%2Fimages%2Fwp.png&t=1472996623&sig=JxD82S7ikNhTaDz4jeq0PQ--~C"></a>&nbsp;<span style="font-family:verdana, sans-serif;"><a rel="nofollow" target="_blank" href="http://www.josecgomez.com/feed/"><img src="https://ec.yimg.com/ec?url=http%3A%2F%2Fwww.josecgomez.com%2Fimages%2Frss.png&t=1472996623&sig=MjB8UqynbxIlo_Mrh4eoLQ--~C"></a>&nbsp;</span></div><div><span lang="LA" style="color:black;"><br><font face="Verdana, sans-serif" style="font-weight:bold;" size="1"><i>Quis custodiet

ipsos custodes?



On Fri, Feb 27, 2015 at 11:04 AM, T Post xevilive11x@… [vantage] <vantage@yahoogroups.com> wrote:

 
<div>
  
  
  <div style="color:#000;background-color:#fff;font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"><div><div><div style="color:rgb(0,0,0);font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;background-color:rgb(255,255,255);"><div dir="ltr"><span>Thanks for the quick answer.&nbsp;&nbsp;Would anyone be able to&nbsp;provide me&nbsp;an example of this in C#?&nbsp; I am&nbsp;struggling to find specific information and the content assist in BPM designer for E10 does not help me.&nbsp; My code is below if it helps</span></div><div dir="ltr"><br clear="none"></div><div dir="ltr"><span>Thanks again!</span></div> <div><br></div><div><br></div><div>// This code strips out concatenated information that was stored in the callcontextbpm fields character04-06 and works in conjunction with<br>// pre processor to clear out start and end date of WBSAddedOperations.<br>int intCount = 0;<br>char[] splitchar = { &#39;~&#39; };<br>string thisjob = &quot;&quot;;<br>int thisop = 0;<br>int thisasm = 0;</div><div><br></div><div>string[] jobs = callContextBpmData.Character04.Split(splitchar);<br>string[] asm = callContextBpmData.Character05.Split(splitchar);<br>string[] ops = callContextBpmData.Character06.Split(splitchar);</div><div><br></div><div>/*for debugging<br>var messageTextBuilder = new System.Text.StringBuilder();<br>messageTextBuilder.Append(&quot;Will update &quot; + callContextBpmData.Character01 + &quot;/r&quot;);<br>messageTextBuilder.Append(jobs.Length.ToString());<br>*/</div><div>for (intCount = 0; intCount &lt; jobs.Length - 1; intCount++)<br>{<br>&nbsp; thisjob = jobs[intCount];</div><div>&nbsp; thisop = int.Parse(ops[intCount]);<br>&nbsp; thisasm = int.Parse(asm[intCount]);</div><div><br></div><div>&nbsp;using (var txScope = IceContext.CreateDefaultTransactionScope())<br>&nbsp; {<br>&nbsp;&nbsp; //update permanent record <br>&nbsp; &nbsp;var myop = (from op in Db.JobOper.With(LockHint.UpdLock) where op.Company == callContextClient.CurrentCompany &amp;&amp;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; op.JobNum == thisjob &amp;&amp; op.AssemblySeq == thisasm &amp;&amp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; op.OprSeq == thisop select op).FirstOrDefault();<br>&nbsp; &nbsp;if (myop != null) <br>&nbsp; &nbsp;{<br>&nbsp;&nbsp;&nbsp; &nbsp;myop.StartDate = null;<br>&nbsp;&nbsp;&nbsp; &nbsp;myop.DueDate = null;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Db.Validate();<br></div><div><br></div><div>&nbsp;&nbsp;&nbsp;//update temp record<br>&nbsp;&nbsp; &nbsp;var mytop = (from op in ttJobOper where op.Company == callContextClient.CurrentCompany &amp;&amp;<br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; op.JobNum == thisjob &amp;&amp; op.AssemblySeq == thisasm &amp;&amp;<br>&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; op.OprSeq == thisop select op).FirstOrDefault();<br>&nbsp; &nbsp;&nbsp;if (myop != null) <br>&nbsp; &nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;//mytop.StartDate = null;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;//mytop.DueDate = null;<br>&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;}<br>&nbsp;&nbsp; txScope.Complete();<br>&nbsp; }<br><br clear="none"><br clear="none"></div><span class="ygrps-yiv-1121323373"><div> <div style="font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"> <div style="font-family:HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px;"> <div><br><br></div><div><div dir="ltr"> <font face="Arial"> On Thursday, February 26, 2015 7:07 PM, &quot;Jose Gomez <a rel="nofollow" target="_blank" href="mailto:jose@...">jose@...</a> [vantage]&quot; &lt;<a rel="nofollow" target="_blank" href="mailto:vantage@yahoogroups.com">vantage@yahoogroups.com</a>&gt; wrote:<br clear="none"> </font> </div>  <br clear="none"><br clear="none"> <div><div><div>

 

<div>
  
  
  <div dir="ltr"><div style="font-family:verdana, sans-serif;font-size:small;">​After you make your changes do a getbyid and then attach the dataset to the dataset holder</div><div style="font-family:verdana, sans-serif;font-size:small;">this.dsHolder.Attach(myDS)​</div>​<div dir="ltr"><br clear="none"></div>
On Feb 26, 2015 5:09 PM, "xevilive11x@... [vantage]" <vantage@yahoogroups.com> wrote:
 
<div>
  
  
  <div><span style="font-size:11pt;">I have created a post process BPM that updates a

job operation using a post process directive via custom code (C#).  Since it updates fields in the database table
(Db.JobOper), I am having issues with the screen because it no longer has the
most recent dataset from the database.  I
have also tried updating the ttJobOper table so the fields match but still
subsequent updates to the record via the interface require a refresh. 


Any help is greatly appreciated-

Thanks in advance,
T

</div>
</div>
 


</div>


</div>

</div>
 


<div style="color:#fff;height:0;"></div>



--
Using Opera's mail client: http://www.opera.com/mail/