|
@@ -15,7 +15,9 @@ public class Update_8_02 : DatabaseUpdateScript
|
|
|
|
|
|
private static void PopulateDone()
|
|
|
{
|
|
|
- var requiItems = DbFactory.Provider.Query<RequisitionItem>(null, new Columns<RequisitionItem>(x => x.ID).Add(x => x.Picked).Add(x => x.Done))
|
|
|
+ var requiItems = DbFactory.Provider.Query<RequisitionItem>(
|
|
|
+ new Filter<RequisitionItem>(x => x.Done).IsEqualTo(false).And(x => x.Picked).IsNotEqualTo(DateTime.MinValue),
|
|
|
+ new Columns<RequisitionItem>(x => x.ID).Add(x => x.Picked).Add(x => x.Done))
|
|
|
.ToList<RequisitionItem>();
|
|
|
Logger.Send(LogType.Information, "", $"Populating Done flag for {requiItems.Count} RequisitionItems");
|
|
|
foreach(var item in requiItems)
|
|
@@ -57,17 +59,26 @@ public class Update_8_02 : DatabaseUpdateScript
|
|
|
|
|
|
private static void PopulateManufacturingPacketStageDescription()
|
|
|
{
|
|
|
- var mpStages = DbFactory.Provider.Query(
|
|
|
+ var table = DbFactory.Provider.Query(
|
|
|
new Filter<ManufacturingPacketStage>(x => x.Description).IsEqualTo(null),
|
|
|
new Columns<ManufacturingPacketStage>(x => x.ID)
|
|
|
- .Add(x => x.Form.Description))
|
|
|
- .ToArray<ManufacturingPacketStage>();
|
|
|
- Logger.Send(LogType.Information, "", $"Populating Description for {mpStages.Length} ManufacturingPacketStages");
|
|
|
- foreach(var stage in mpStages)
|
|
|
+ .Add(x => x.Form.Description));
|
|
|
+ Logger.Send(LogType.Information, "", $"Populating Description for {table.Rows.Count} ManufacturingPacketStages");
|
|
|
+ for(int i = 0; i < table.Rows.Count; i += 1000)
|
|
|
{
|
|
|
- stage.Description = stage.Form.Description;
|
|
|
+ Logger.Send(LogType.Information, "", $"{(double)i / (double)table.Rows.Count * 100.0:F2}%");
|
|
|
+ var mpStages = new List<ManufacturingPacketStage>(1000);
|
|
|
+ for(int j = i; j < Math.Min(i + 1000, table.Rows.Count); j++)
|
|
|
+ {
|
|
|
+ mpStages.Add(table.Rows[j].ToObject<ManufacturingPacketStage>());
|
|
|
+ }
|
|
|
+
|
|
|
+ foreach(var stage in mpStages)
|
|
|
+ {
|
|
|
+ stage.Description = stage.Form.Description;
|
|
|
+ }
|
|
|
+ DbFactory.Provider.Save(mpStages);
|
|
|
}
|
|
|
- DbFactory.Provider.Save(mpStages);
|
|
|
Logger.Send(LogType.Information, "", $"Done populating Description!");
|
|
|
}
|
|
|
|