Skip to content

Commit e60d4c6

Browse files
authored
Merge pull request #229 from dotnetprojects/feature/varTabImport
Fixes #228: Var tab import
2 parents 3daa3ac + 8950e39 commit e60d4c6

File tree

4 files changed

+19
-27
lines changed

4 files changed

+19
-27
lines changed

DotNetSiemensPLCToolBoxLibrary.TIAV19/Step7ProjectV19Tia.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
using System.Collections.Generic;
33
using System.IO;
44
using System.Linq;
5-
using System.Security;
65
using System.Xml.Linq;
76
using DotNetSiemensPLCToolBoxLibrary.DataTypes;
87
using DotNetSiemensPLCToolBoxLibrary.DataTypes.Blocks;
@@ -459,6 +458,11 @@ public List<ITIAVarTab> TagTables
459458
return retVal;
460459
}
461460
}
461+
462+
public override void ImportFile(FileInfo file, bool overwrite, bool importFromSource)
463+
{
464+
this.group.TagTables.Import(file, overwrite ? ImportOptions.Override : ImportOptions.None);
465+
}
462466
}
463467

464468
public class TIAOpennessWatchTable : ITIAWatchTable

DotNetSiemensPLCToolBoxLibrary.TIAV20/Step7ProjectV20Tia.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -458,6 +458,10 @@ public List<ITIAVarTab> TagTables
458458
}
459459
return retVal;
460460
}
461+
}
462+
public override void ImportFile(FileInfo file, bool overwrite, bool importFromSource)
463+
{
464+
this.group.TagTables.Import(file, overwrite ? ImportOptions.Override : ImportOptions.None);
461465
}
462466
}
463467

LibNoDaveConnectionLibrary/DataTypes/Blocks/Step7V11/ITIAVarTabFolder.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
using DotNetSiemensPLCToolBoxLibrary.DataTypes.Projectfolders;
2+
using DotNetSiemensPLCToolBoxLibrary.Projectfiles.TIA.Openness;
23
using System.Collections.Generic;
34

45
namespace DotNetSiemensPLCToolBoxLibrary.DataTypes.Blocks.Step7V11
56
{
6-
public interface ITIAVarTabFolder: IProjectFolder
7+
public interface ITIAVarTabFolder: ITIAOpennessProjectFolder
78
{
89
List<ITIAVarTab> TagTables { get; }
910
}

TiaImporter/Program.cs

Lines changed: 8 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
using System.Collections.Generic;
33
using System.IO;
44
using System.Linq;
5-
using DotNetSiemensPLCToolBoxLibrary.DataTypes.Projectfolders;
5+
using DotNetSiemensPLCToolBoxLibrary.DataTypes.Blocks.Step7V11;
66
using DotNetSiemensPLCToolBoxLibrary.Projectfiles;
77
using DotNetSiemensPLCToolBoxLibrary.Projectfiles.TIA.Openness;
88

@@ -116,37 +116,20 @@ void ImportFiles()
116116
{
117117
var dtFolder = importFolder as ITIAOpennessPlcDatatypeFolder;
118118
var pgFolder = importFolder as ITIAOpennessProgramFolder;
119+
var tagFolder = importFolder as ITIAVarTabFolder;
119120

120121
if (dtFolder != null)
121122
{
122123
dtFolder.ImportFile(new FileInfo(importFile), true, false);
123124
}
124125
else if (pgFolder != null)
125126
{
126-
//if (importFile.ToLower().EndsWith("scl"))
127-
//{
128-
// string srcBeforeScl = null;
129-
// var blkInfo = pgFolder.BlockInfos.FirstOrDefault(x => x.Name.ToLower() == Path.GetFileNameWithoutExtension(importFile).ToLower());
130-
// if (blkInfo != null)
131-
// {
132-
// Console.WriteLine("SCL File with XML File: " + relativePath);
133-
// Console.WriteLine("Export current XML...");
134-
// srcBeforeScl = blkInfo.Export(ExportFormat.Xml);
135-
// Console.WriteLine("Import SCL...");
136-
// }
137-
// pgFolder.ImportFile(new FileInfo(importFile), true, !importFile.ToLower().EndsWith("xml"));
138-
// if (blkInfo != null)
139-
// {
140-
// Console.WriteLine("Export new XML...");
141-
// var blkAfter = pgFolder.BlockInfos.FirstOrDefault(x => x.Name.ToLower() == Path.GetFileNameWithoutExtension(importFile).ToLower());
142-
// var srcAfter = blkAfter.Export(ExportFormat.Xml);
143-
// Console.WriteLine("Import combined XML...");
144-
// }
145-
//}
146-
//else
147-
{
148-
pgFolder.ImportFile(new FileInfo(importFile), true, !importFile.ToLower().EndsWith("xml"));
149-
}
127+
128+
pgFolder.ImportFile(new FileInfo(importFile), true, !importFile.ToLower().EndsWith("xml"));
129+
}
130+
else if (tagFolder != null)
131+
{
132+
tagFolder.ImportFile(new FileInfo(importFile), true, false);
150133
}
151134

152135
Console.ForegroundColor = ConsoleColor.Green;

0 commit comments

Comments
 (0)