Down the rabbit hole we go!
This is excellent! Thank you so much, Greg!
I have modified the code just a bit for my POC test. This work perfectly to update the ResourceGroupID, and Descriptions. I will get the entire thing working and post back with my final results. I can’t thank you all enough for persevering through this with me!
/* update JobOpDtl */
string NewResourceGroup = string.Empty;
string NewResourceID = string.Empty;
string rgdesc = string.Empty;
Erp.Tables.JobOpDtl JobOpDtl;
Erp.Tables.JobOper JobOper;
Erp.Tables.ResourceGroup ResourceGroup;
Erp.Tables.ResourceTimeUsed ResourceTimeUsed;
foreach (var ttResults_iterator in (from ttResults_Row in ttResults
where !ttResults_Row.Unchanged()
select ttResults_Row))
{
var ttResultsRow = ttResults_iterator;
JobOpDtl = (from JobOpDtl_Row in Db.JobOpDtl
where JobOpDtl_Row.Company == Session.CompanyID && JobOpDtl_Row.SysRowID == ttResultsRow.JobOpDtl_SysRowID
select JobOpDtl_Row).FirstOrDefault();
if (JobOpDtl != null)
{
NewResourceGroup = ttResultsRow.JobOpDtl_ResourceGrpID;
NewResourceID = ttResultsRow.JobOpDtl_ResourceID;
ResourceGroup = (from ResourceGroup_Row in Db.ResourceGroup
where ResourceGroup_Row.Company == Session.CompanyID && ResourceGroup_Row.ResourceGrpID == NewResourceGroup &&
(ResourceGroup_Row.Inactive != true)
select ResourceGroup_Row).FirstOrDefault();
if (ResourceGroup != null)
{
rgdesc = ResourceGroup.Description;
}
Ice.Diagnostics.Log.WriteEntry("New RG is " + ttResultsRow.JobOpDtl_ResourceGrpID);
JobOpDtl.ResourceGrpID = NewResourceGroup;
JobOpDtl.OpDtlDesc = rgdesc;
foreach (var ResourceTimeUsed_iterator in (from ResourceTimeUsed_Row in Db.ResourceTimeUsed
where ResourceTimeUsed_Row.Company == JobOpDtl.Company
&& ResourceTimeUsed_Row.JobNum == JobOpDtl.JobNum
&& ResourceTimeUsed_Row.AssemblySeq == JobOpDtl.AssemblySeq
&& ResourceTimeUsed_Row.OprSeq == JobOpDtl.OprSeq
&& ResourceTimeUsed_Row.OpDtlSeq == JobOpDtl.OpDtlSeq
select ResourceTimeUsed_Row))
{
ResourceTimeUsed = ResourceTimeUsed_iterator;
Ice.Diagnostics.Log.WriteEntry(" made it to resourcetimeused " + ResourceTimeUsed.OprSeq);
ResourceTimeUsed.ResourceGrpID = ttResultsRow.JobOpDtl_ResourceGrpID;
ResourceTimeUsed.ResourceID = NewResourceID;
}
foreach (var JobOper_iterator in (from JobOper_Row in Db.JobOper
where JobOper_Row.Company == JobOpDtl.Company
&& JobOper_Row.JobNum == JobOpDtl.JobNum
&& JobOper_Row.AssemblySeq == JobOpDtl.AssemblySeq
&& JobOper_Row.OprSeq == JobOpDtl.OprSeq
select JobOper_Row))
{
JobOper = JobOper_iterator;
Ice.Diagnostics.Log.WriteEntry(" made it to JobOper " + JobOper.OprSeq);
JobOper.OpDesc = rgdesc;
}
}
}