| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 | 
							- using Comal.Classes;
 
- using InABox.Core;
 
- using InABox.Database;
 
- namespace PRS.Shared;
 
- public class Update_7_40 : DatabaseUpdateScript
 
- {
 
-     public override VersionNumber Version => new VersionNumber(7, 40);
 
-     
 
-     public override bool Update()
 
-     {
 
-         UpdateRequitionItemJobLinks();
 
-         return true;
 
-     }
 
-     private void UpdateRequitionItemJobLinks()
 
-     {
 
-         var requijobs = DbFactory.Provider
 
-             .Query<Requisition>(null, new Columns<Requisition>(x => x.ID, x => x.JobLink.ID))
 
-             .ToDictionary<Requisition, Guid, Guid>(x => x.ID, x => x.JobLink.ID);
 
-         
 
-         var filter = new Filter<RequisitionItem>(x => x.JobLink.ID)
 
-             .IsEqualTo(Guid.Empty);
 
-         
 
-         var columns = new Columns<RequisitionItem>()
 
-             .Add(x => x.ID)
 
-             .Add(x=>x.RequisitionLink.ID)
 
-             .Add(x=>x.RequisitionLink.Filled)
 
-             .Add(x=>x.RequisitionLink.Archived)
 
-             .Add(x => x.JobLink.ID)
 
-             .Add("Job.ID");
 
-         
 
-         var items = DbFactory.Provider.Query(typeof(RequisitionItem), filter, columns)
 
-             .Rows
 
-             .Select(r => r.ToObject<RequisitionItem>())
 
-             .ToArray();
 
-         
 
-         foreach (var item in items)
 
-         {
 
-             requijobs.TryGetValue(item.RequisitionLink.ID, out Guid jobid);
 
-             item.JobLink.ID = jobid;
 
-             CoreUtils.SetPropertyValue(item,"Job.ID", jobid);
 
-         }
 
-         
 
-         DbFactory.Provider.Save<RequisitionItem>(items);
 
-         Logger.Send(LogType.Information, "", $"{items.Length} requisition items processed");
 
-     }
 
- }
 
 
  |