Files
Emmanuele Sassi be8dbbb0f4 EgtWPFLib5 :
- Aggiunta Db utensili e lavorazioni.
- Aggiunta finestra di SetUp.
- Aggiunte molte funzioni di utilità generale.
- Migliorie varie.
2017-06-06 08:01:53 +00:00

82 lines
3.5 KiB
VB.net

Imports EgtUILib
Public Module SetUpUtility
Public Function IsToolInSetUp(sTUUID As String) As Boolean
' recupero il gruppo del setup
Dim nSetUpGroup As Integer = EgtGetCurrSetup()
' leggo l'attrezzaggio del progetto
Dim sPosition As String = String.Empty
Dim IniIndex As Integer = 1
' recupero stringa di ogni posizione
While EgtGetInfo(nSetUpGroup, K_POS & IniIndex, sPosition)
' la spezzo sui ;
Dim sItems() As String = sPosition.Split(";".ToCharArray)
' se ci sono almeno tre elementi sono sicuro che ci sia almeno un'uscita attrezzata
If sItems.Count >= 3 Then
' separo le uscite divise dalla ,
Dim sExitToolAssList() As String = sItems(2).Split(",".ToCharArray)
' verifico se l'utensile è quello che sto cercando
For AssIndex = 0 To sExitToolAssList.Count() - 1
Dim sExitToolAssItem() As String = sExitToolAssList(AssIndex).Split("/".ToCharArray)
If sExitToolAssItem.Count > 1 Then
If sExitToolAssItem(1) = sTUUID Then
Return True
End If
End If
Next
End If
IniIndex += 1
End While
Return False
End Function
Public Function IsValidToolHeadExitInSetUp() As Boolean
' recupero il gruppo del setup
Dim nSetUpGroup As Integer = EgtGetCurrSetup()
' leggo l'attrezzaggio del progetto
Dim sPosition As String = String.Empty
Dim IniIndex As Integer = 1
' recupero stringa di ogni posizione
While EgtGetInfo(nSetUpGroup, K_POS & IniIndex, sPosition)
Dim sHead As String = String.Empty
Dim sExit As Integer = 0
Dim sExitList As New List(Of String)
Dim sToolList As New List(Of String)
' la spezzo sui ;
Dim sItems() As String = sPosition.Split(";".ToCharArray)
' se ci sono almeno due elementi sono sicuro che ci sia la H
If sItems.Count >= 2 Then
sHead = sItems(1)
' se ci sono almeno tre elementi sono sicuro che ci sia almeno un'uscita attrezzata
If sItems.Count >= 3 Then
' separo le uscite divise dalla ,
Dim sExitToolAssList() As String = sItems(2).Split(",".ToCharArray)
' creo le liste di uscite e utensili attrezzati ricavati
For AssIndex = 0 To sExitToolAssList.Count() - 1
Dim sExitToolAssItem() As String = sExitToolAssList(AssIndex).Split("/".ToCharArray)
Dim sToolName As String = String.Empty
EgtTdbGetToolFromUUID(sExitToolAssItem(1), sToolName)
If Not String.IsNullOrWhiteSpace(sToolName) Then
EgtTdbSetCurrTool(sToolName)
Dim sToolHead As String = String.Empty
Dim nToolExit As Integer = 0
EgtTdbGetCurrToolParam(MCH_TP.HEAD, sToolHead)
EgtTdbGetCurrToolParam(MCH_TP.EXIT_, nToolExit)
Integer.TryParse(sExitToolAssItem(0), sExit)
If Not (sHead = sToolHead) Or Not (nToolExit = sExit) Then
Return False
End If
Else
Return False
End If
Next
End If
End If
IniIndex += 1
End While
Return True
End Function
End Module