b10cfb3913
-sistemata grafica progressbar per verifica -aggiunto creazione btlinfo nuovo progetto -aggiunto reset feature -sistemato creazione pdf
126 lines
5.6 KiB
VB.net
126 lines
5.6 KiB
VB.net
Imports System.IO
|
|
Imports EgtBEAMWALL.Core.ConstBeam
|
|
Imports EgtBEAMWALL.Core.ConstIni
|
|
Imports EgtUILib
|
|
Imports EgtWPFLib5
|
|
Imports EgwMultiEngineManager.Core
|
|
Imports EgwMultiEngineManager.Data
|
|
Imports EgwMultiEngineManager.Data.Constants
|
|
|
|
Module MyExecProcessManager
|
|
|
|
Friend nProjIndex As Integer = 0
|
|
Friend nProdIndex As Integer = 0
|
|
|
|
Private m_ExecProcessManagerList As New Dictionary(Of EXECENVIRONMENTS, ExecProcessManager)
|
|
Public ReadOnly Property ExecProcessManagerList As Dictionary(Of EXECENVIRONMENTS, ExecProcessManager)
|
|
Get
|
|
Return m_ExecProcessManagerList
|
|
End Get
|
|
End Property
|
|
|
|
Friend Function Init() As Boolean
|
|
' creazione manager dei processi
|
|
Dim sCamExePath As String = ""
|
|
GetMainPrivateProfileString(S_GENERAL, K_CAMEXEPATH, "", sCamExePath)
|
|
EgtOutLog("CAMExePath = " & sCamExePath)
|
|
If Not File.Exists(sCamExePath) Then
|
|
Dim sMsg As String = "CAMExePath not found!"
|
|
EgtOutLog(sMsg)
|
|
Return False
|
|
End If
|
|
Dim sPipeLuaDir As String = ""
|
|
GetMainPrivateProfileString(S_GENERAL, K_PIPELUADIR, "", sPipeLuaDir)
|
|
EgtOutLog("PipeLuaDir = " & sPipeLuaDir)
|
|
If Not File.Exists(sCamExePath) Then
|
|
Dim sMsg As String = "PipeLuaDir not found!"
|
|
EgtOutLog(sMsg)
|
|
Return False
|
|
End If
|
|
Dim nGroupIndex As Integer = 1
|
|
Dim sEnvironment As String = ""
|
|
Dim sPipeLuaFile As String = ""
|
|
Dim nMaxCamInstances As Integer = 0
|
|
While GetMainPrivateProfileString(S_EXECGROUP & nGroupIndex.ToString(), K_ENVIRONMENT, "", sEnvironment) > 0 AndAlso
|
|
GetMainPrivateProfileString(S_EXECGROUP & nGroupIndex.ToString(), K_PIPELUAFILE, "", sPipeLuaFile) AndAlso
|
|
GetMainPrivateProfileString(S_EXECGROUP & nGroupIndex.ToString(), K_MAXCAMINSTANCES, "", nMaxCamInstances)
|
|
System.Console.WriteLine("Group" & nGroupIndex.ToString())
|
|
System.Console.WriteLine("Environment = " & sEnvironment)
|
|
System.Console.WriteLine("PipeLuaFile = " & sPipeLuaFile)
|
|
System.Console.WriteLine("MaxCAMInstances = " & nMaxCamInstances)
|
|
Dim Environment As EXECENVIRONMENTS = EXECENVIRONMENTS.NULL
|
|
Select Case sEnvironment
|
|
Case "BEAM"
|
|
Environment = EXECENVIRONMENTS.BEAM
|
|
Case "WALL"
|
|
Environment = EXECENVIRONMENTS.WALL
|
|
End Select
|
|
Dim PipeLuaPath As String = sPipeLuaDir & "\" & sPipeLuaFile
|
|
If nMaxCamInstances <= 0 OrElse Environment = EXECENVIRONMENTS.NULL OrElse Not File.Exists(PipeLuaPath) Then
|
|
System.Console.WriteLine(String.Format("Group{0} not created!", nGroupIndex.ToString()))
|
|
nGroupIndex += 1
|
|
Continue While
|
|
End If
|
|
Dim NewExecProcessManager As New ExecProcessManager(nGroupIndex, Environment, sCamExePath, PipeLuaPath, nMaxCamInstances, ExecProcessManager.ReturnModes.EVENT_, False)
|
|
AddHandler NewExecProcessManager.m_AnswerReceived, AddressOf ExecProcessManager_AnswerReceived
|
|
NewExecProcessManager.StartExecutionThread()
|
|
m_ExecProcessManagerList.Add(Environment, NewExecProcessManager)
|
|
nGroupIndex += 1
|
|
End While
|
|
Return True
|
|
End Function
|
|
|
|
Private Sub ExecProcessManager_AnswerReceived(Answer As AnswerDTO)
|
|
Map.refMyStatusBarVM.SetLoadingProgress_Visibility(True)
|
|
Dim sBarPath As String = Answer.Args("BarPath")
|
|
Dim nProgramPage As Integer = -1
|
|
Integer.TryParse(Answer.Args("ProgramPage"), nProgramPage)
|
|
Dim nBarId As Integer = -1
|
|
Integer.TryParse(Answer.Args("BarId"), nBarId)
|
|
EgtOutLog("Risultato progetto " & nBarId)
|
|
Map.refCALCPanelVM.ProcessResults(sBarPath, nProgramPage, nBarId)
|
|
' Gestione progressbar per verificare l'inizio e la fine della verifica
|
|
If nProgramPage = ProjectType.PROJ Then
|
|
If nProjIndex = -1 Then
|
|
Map.refMyStatusBarVM.MaximumValue = 1
|
|
Map.refMyStatusBarVM.SetLoadingProgress(1)
|
|
Map.refMyStatusBarVM.SetOutputMessage("Verifica Completata")
|
|
Else
|
|
Map.refMyStatusBarVM.MaximumValue = Map.refProjectVM.BTLStructureVM.BTLPartVMList.Count - 1
|
|
Map.refMyStatusBarVM.SetLoadingProgress(nProjIndex)
|
|
nProjIndex += 1
|
|
End If
|
|
If nProjIndex = Map.refProjectVM.BTLStructureVM.BTLPartVMList.Count - 1 Then
|
|
Map.refMyStatusBarVM.SetOutputMessage("Verifica Completata")
|
|
Map.refSceneShowBuldingVM.SceneShowBulding.Enable(True)
|
|
Map.refSceneBuildingVM.SetViewPanel_IsEnable(True)
|
|
Map.refShowBeamPanelVM.ShowBuilding_IsEnabled = True
|
|
End If
|
|
Else
|
|
If nProdIndex = -1 Then
|
|
Map.refMyStatusBarVM.MaximumValue = 1
|
|
Map.refMyStatusBarVM.SetLoadingProgress(1)
|
|
Map.refMyStatusBarVM.SetOutputMessage("Verifica Completata")
|
|
Else
|
|
Map.refMyStatusBarVM.MaximumValue = Map.refMachGroupPanelVM.MachGroupVMList.Count - 1
|
|
Map.refMyStatusBarVM.SetLoadingProgress(nProdIndex)
|
|
nProdIndex += 1
|
|
End If
|
|
If nProdIndex = Map.refMachGroupPanelVM.MachGroupVMList.Count - 1 Then
|
|
Map.refMyStatusBarVM.SetOutputMessage("Verifica Completata")
|
|
Map.refSceneShowBuldingVM.SceneShowBulding.Enable(True)
|
|
Map.refSceneBuildingVM.SetViewPanel_IsEnable(True)
|
|
Map.refShowBeamPanelVM.ShowBuilding_IsEnabled = True
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
Friend Function Close()
|
|
For Each Key In m_ExecProcessManagerList.Keys
|
|
m_ExecProcessManagerList(Key).Dispose()
|
|
Next
|
|
Return True
|
|
End Function
|
|
|
|
End Module
|