limit data loader processing to specific plant

This commit is contained in:
Rich 2012-02-15 20:39:14 +00:00
parent b327409d72
commit f46022bf8c

View File

@ -114,20 +114,55 @@ namespace DataLoader
return (object)v; return (object)v;
} }
return 0; return 0;
}
private string _OnlyThisFolder;
public string OnlyThisFolder
{
get
{
if (_OnlyThisFolder == null)
{
if (frmMain.MySettings.OnlyThisSet)
{
DirectoryInfo dir = new DirectoryInfo(frmMain.MySettings.ProcedureSetPath);
_OnlyThisFolder = dir.Parent.FullName.ToUpper();
}
else
_OnlyThisFolder = "";
}
return _OnlyThisFolder;
}
}
private bool IsInSelectedPlantData(Object parent)
{
if (OnlyThisFolder == "")
return true;
Folder fld = parent as Folder;
if (fld == null)
return true;
if (fld.MyParent.MyParent != null)
return true;
if (fld.Title.ToUpper() == OnlyThisFolder)
return true;
return false;
} }
private void MigrateChildren(vlnObject vb, vlnServer vs, Connection dbConn, Object parent, TreeNode tn) private void MigrateChildren(vlnObject vb, vlnServer vs, Connection dbConn, Object parent, TreeNode tn)
{ {
if (vb.Type != "version") if (vb.Type != "version")
{ {
//if(frmMain.MySettings.OnlyThisSet)
vb.LoadChildren(vs.GetChildren(vb.ToString())); vb.LoadChildren(vs.GetChildren(vb.ToString()));
List<vlnObject> lv = vb.Children; List<vlnObject> lv = vb.Children;
foreach (vlnObject vbc in lv) foreach (vlnObject vbc in lv)
{
if (vbc.Path.ToUpper().StartsWith(OnlyThisFolder) || OnlyThisFolder.StartsWith(vbc.Path.ToUpper()))
{ {
TreeNode tnc = tn.Nodes.Add(vbc.Title); TreeNode tnc = tn.Nodes.Add(vbc.Title);
object idc = cslaObject(vbc, dbConn, parent, tnc); object idc = cslaObject(vbc, dbConn, parent, tnc);
frmMain.Status = "Loading " + vbc.Title; frmMain.Status = "Loading " + vbc.Title;
MigrateChildren(vbc, vs, dbConn, idc, tnc); MigrateChildren(vbc, vs, dbConn, idc, tnc);
} }
}
} }
frmMain.Status = " "; frmMain.Status = " ";
} }