Compare commits

...

6 Commits

Author SHA1 Message Date
markvitariusfamex
0eb1d39949 LAyout tablazatoknal volt hiba 2025-09-24 16:18:36 +02:00
markvitariusfamex
b7e43ffddb Merge branch 'master' of https://gitea.vitarius.hu/svhs/Robotizalunk---doksikeszito 2025-09-24 13:52:42 +02:00
4623a3f09b purge javitaqs 2025-07-04 23:37:54 +02:00
2885e38ee5 working fejléc for excel 2025-06-26 10:38:19 +02:00
9d8e9864ae mai 2025-06-20 15:05:28 +02:00
dc38a21336 végre elekzdtem 2025-06-19 14:58:10 +02:00
4 changed files with 369 additions and 363 deletions

View File

@@ -19,7 +19,7 @@
WindowStyle="None" WindowStyle="None"
ResizeMode="NoResize" ResizeMode="NoResize"
SizeToContent="WidthAndHeight" SizeToContent="WidthAndHeight"
WindowStartupLocation="CenterScreen" Height="283"> WindowStartupLocation="CenterScreen" Height="329">
<!-- ******** THEME ******** --> <!-- ******** THEME ******** -->
@@ -75,10 +75,24 @@
<!-- listbox placeholder --> <!-- listbox placeholder -->
<ListBox x:Name="ListBox1" <ListBox x:Name="ListBox1"
Margin="265,126,10,0" Margin="400,10,10,0"
Background="{x:Null}" Background="{x:Null}"
BorderThickness="2" BorderThickness="2"
BorderBrush="#FFECE0E0" Height="70" VerticalAlignment="Top"/> BorderBrush="#FFECE0E0"
Height="191"
VerticalAlignment="Top"
FontSize="14">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem" BasedOn="{StaticResource {x:Type ListBoxItem}}">
<Setter Property="Height" Value="64"/>
<Setter Property="MinHeight" Value="64"/>
<Setter Property="Padding" Value="10,0"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
<!-- BAL OLDALI CSOPORTOK --> <!-- BAL OLDALI CSOPORTOK -->
<StackPanel Margin="10,10,0,0" HorizontalAlignment="Left" Width="180"> <StackPanel Margin="10,10,0,0" HorizontalAlignment="Left" Width="180">
@@ -92,7 +106,7 @@
</GroupBox> </GroupBox>
</StackPanel> </StackPanel>
<StackPanel Margin="0,10,215,252" HorizontalAlignment="Right" Width="190"> <StackPanel Margin="0,122,410,140" HorizontalAlignment="Right" Width="180" Visibility="Collapsed">
<GroupBox Header="Dokumentáció " Padding="5" Height="73"> <GroupBox Header="Dokumentáció " Padding="5" Height="73">
<StackPanel> <StackPanel>
<RadioButton x:Name="NamingSyntaxStefani" Content="Robotizálunk"/> <RadioButton x:Name="NamingSyntaxStefani" Content="Robotizálunk"/>
@@ -101,7 +115,8 @@
</GroupBox> </GroupBox>
</StackPanel> </StackPanel>
<StackPanel Margin="10,126,0,71" HorizontalAlignment="Left" Width="250">
<StackPanel Margin="10,126,0,71" HorizontalAlignment="Left" Width="250" Visibility="Collapsed">
<GroupBox Header="Egyéb" Padding="5"> <GroupBox Header="Egyéb" Padding="5">
<StackPanel> <StackPanel>
<CheckBox x:Name="AutomaticFolderSelect" Content="Automatikus mappa választás"/> <CheckBox x:Name="AutomaticFolderSelect" Content="Automatikus mappa választás"/>
@@ -112,18 +127,25 @@
<!-- Rajz használat módja --> <!-- Rajz használat módja -->
<GroupBox Header="Rajz használat módja" <GroupBox Header="Rajz használat módja"
Margin="390,10,0,235" Width="200" HorizontalAlignment="Left" Padding="5"> Margin="195,10,0,235"
Width="200"
HorizontalAlignment="Left"
Padding="5">
<StackPanel> <StackPanel>
<RadioButton x:Name="MaterialRadioButton3" Content="Aktív rajz használata"/> <RadioButton x:Name="MaterialRadioButton3"
<RadioButton x:Name="KulonAloRajzok" Content="Különálló rajzok használata"/> Content="Aktív rajz használata"
IsChecked="True"/>
<RadioButton x:Name="KulonAloRajzok"
Content="Különálló rajzok használata"/>
</StackPanel> </StackPanel>
</GroupBox> </GroupBox>
<!-- Böngészés gomb --> <!-- Böngészés gomb -->
<Button x:Name="Files_Browse" <Button x:Name="Files_Browse"
Content="Böngészés" Content="Böngészés"
HorizontalAlignment="Left" HorizontalAlignment="Left"
Margin="390,87,0,0" Margin="195,112,0,0"
VerticalAlignment="Top" VerticalAlignment="Top"
Width="200" Height="30" Width="200" Height="30"
FontSize="10"/> FontSize="10"/>

View File

@@ -15,6 +15,7 @@ Imports System.Runtime.Serialization.Formatters.Binary
Imports System.Runtime.Serialization Imports System.Runtime.Serialization
Imports Microsoft.Win32 Imports Microsoft.Win32
Imports System.ComponentModel Imports System.ComponentModel
Imports System.Windows.Interop
@@ -51,7 +52,7 @@ Public Class MainWindow
Dim excelPrintNeeded As Boolean Dim excelPrintNeeded As Boolean
Dim NeedPdf As Boolean Dim NeedPdf As Boolean = True
Dim NeedPdfOssze As Boolean Dim NeedPdfOssze As Boolean
Dim NeedDxf As Boolean Dim NeedDxf As Boolean
Dim NeedDWG As Boolean Dim NeedDWG As Boolean
@@ -98,6 +99,9 @@ Public Class MainWindow
Dim namingsyntax As String Dim namingsyntax As String
Dim xlstype As String = "" Dim xlstype As String = ""
Dim session As IpfcBaseSession = Nothing
Dim conn As IpfcAsyncConnection = Nothing
'Buttons 'Buttons
@@ -182,6 +186,25 @@ Public Class MainWindow
End If End If
Try
Process.GetProcessesByName("pfclscom")(0).Kill()
Catch ex As Exception
End Try
Try
Connect(session, conn)
Catch ex As Exception
If ex.Message = "pfcExceptions::XToolkitAmbiguous" Then
MsgBox("Egynél több Creo fut, kérlezk zárd be az egyiket.")
End If
Exit Sub
End Try
workDir = session.GetCurrentDirectory
' MsgBox(workDir)
End Sub End Sub
Private Sub Destenation_Browse_Click(sender As Object, e As EventArgs) Private Sub Destenation_Browse_Click(sender As Object, e As EventArgs)
@@ -203,14 +226,14 @@ Public Class MainWindow
Dim b As New OpenFileDialog Dim b As New OpenFileDialog
b.Multiselect = True 'Több file kijelölhetősége b.Multiselect = True 'Több file kijelölhetősége
b.Filter = "DRW|*drw.1|All version drw|*.drw*" 'Alap formátum kiválasztáas b.Filter = "DRW|*drw.1|All version drw|*.drw*" 'Alap formátum kiválasztáas
b.InitialDirectory = "C:\" b.InitialDirectory = workDir
' MsgBox(workDir)
' b.AutoUpgradedimEnabled = True ' b.AutoUpgradedimEnabled = True
'ez biztos rossz lesz!!!!!!!!!!!! 'ez biztos rossz lesz!!!!!!!!!!!!
' Dim bul As Boolean ' Dim bul As Boolean
' bul = b.ShowDialog ' bul = b.ShowDialog
Purge.Purge(workDir, 999, ".drw", False, False, Path.GetTempPath() + "temp.txt")
If b.ShowDialog() = True Then If b.ShowDialog() = True Then
Dim names As String() = b.FileNames Dim names As String() = b.FileNames
@@ -224,28 +247,11 @@ Public Class MainWindow
End Sub End Sub
Private Sub CreateDocument_Click(sender As Object, e As RoutedEventArgs) Handles CreateDocument.Click Private Sub CreateDocument_Click(sender As Object, e As RoutedEventArgs) Handles CreateDocument.Click
Try
Process.GetProcessesByName("pfclscom")(0).Kill()
Catch ex As Exception
End Try
Dim session As IpfcBaseSession = Nothing
Dim conn As IpfcAsyncConnection = Nothing
Try
Connect(session, conn)
Catch ex As Exception
If ex.Message = "pfcExceptions::XToolkitAmbiguous" Then
MsgBox("Egynél több Creo fut, kérlezk zárd be az egyiket.")
End If
Exit Sub
End Try
workDir = session.GetCurrentDirectory
' MsgBox(workDir) ' MsgBox(workDir)
If PDFCheckBox.IsChecked = True Or If PDFCheckBox.IsChecked = True Or
DXFCheckBox.IsChecked = True Or DXFCheckBox.IsChecked = True Or
@@ -432,6 +438,9 @@ Public Class MainWindow
End Sub End Sub
Private Sub TiffCheckBox_CheckedChanged(sender As Object, e As EventArgs) Handles TIFFCheckbox.Checked, TIFFCheckbox.Unchecked Private Sub TiffCheckBox_CheckedChanged(sender As Object, e As EventArgs) Handles TIFFCheckbox.Checked, TIFFCheckbox.Unchecked
If TIFFCheckbox.IsChecked = True Then If TIFFCheckbox.IsChecked = True Then
@@ -453,6 +462,13 @@ Public Class MainWindow
End Sub End Sub
Private Sub PdfCheckBox_CheckedChanged(sender As Object, e As EventArgs) Handles PDFCheckBox.Checked, PDFCheckBox.Unchecked Private Sub PdfCheckBox_CheckedChanged(sender As Object, e As EventArgs) Handles PDFCheckBox.Checked, PDFCheckBox.Unchecked
If PDFCheckBox.IsChecked = True Then
NeedPdf = True
Else
NeedPdf = False
End If
If KulonAloRajzok.IsChecked = True Then If KulonAloRajzok.IsChecked = True Then
If PDFCheckBox.IsChecked = True Then If PDFCheckBox.IsChecked = True Then
@@ -624,7 +640,7 @@ Public Class MainWindow
If NeedPdf = True Then If NeedPdf = True Then
Dim FileNameMod As String Dim FileNameMod As String
' MsgBox(FileNames(y)) ' MsgBox(FileNames(y))
FileNameMod = FileNames(y) FileNameMod = FileNames(y)
HandleNames(FileNameMod, y, 0, ".PDF", model1) HandleNames(FileNameMod, y, 0, ".PDF", model1)
CreatePdf(session, model1, FileNameMod) CreatePdf(session, model1, FileNameMod)
@@ -659,11 +675,15 @@ Public Class MainWindow
If isSeperateDrawing = True Then If isSeperateDrawing = True Then
If y = 0 Then Try
HandleNames(FileNameMod, y, i, ".xls", Model1) HandleNames(FileNameMod, y, i, ".xls", Model1)
CreateExcel(Session, FileNameMod) CreateExcel(Session, FileNameMod)
End If Catch ex As Exception
End Try
Else Else
HandleNames(FileNameMod, y, i, ".xls", Model1) HandleNames(FileNameMod, y, i, ".xls", Model1)
@@ -715,65 +735,7 @@ Public Class MainWindow
End If End If
'--------------------- Calculate sheetsize for print '--------------------- Calculate sheetsize for print
Try
Dim iFormatDrawing As IpfcModelDescriptor
iFormatDrawing = SheetOwner.GetSheetFormatDescr(i)
Dim NameOfSheet As String = iFormatDrawing.InstanceName(iFormatDrawing.InstanceName.Length - 4)
Dim A01234 As String = iFormatDrawing.InstanceName.IndexOf("A?")
Dim regex As New RegularExpressions.Regex("A\d")
Dim FormatString As String = regex.Match(iFormatDrawing.InstanceName).Value
NameOfSheet = FormatString.Substring(1, 1)
Dim e_int As Integer
e_int = 2 ^ CInt(NameOfSheet)
Dim model2d As IpfcModel2D
Dim view2d As IpfcView2D
Dim dview As CpfcView2Ds
Dim model2 As IpfcModel
Dim ListOfViewSheets As New List(Of Integer)
Dim SheetNumberIndex As New List(Of Integer)
Dim ViewCount As Single
Dim IndexOfCurrentSheetFirstView As Integer
model2d = Model1
dview = model2d.List2DViews()
ViewCount = dview.Count
For z = 0 To ViewCount - 1
view2d = (dview(z))
ListOfViewSheets.Add(view2d.GetSheetNumber)
Next
If i = 0 Then
i = 1
IndexOfCurrentSheetFirstView = ListOfViewSheets.IndexOf(i)
i = 0
Else
IndexOfCurrentSheetFirstView = ListOfViewSheets.IndexOf(i)
End If
view2d = dview(IndexOfCurrentSheetFirstView)
model2 = view2d.GetModel
Dim SheetScale As Double = SheetOwner.GetSheetScale(i, model2)
Dim Print_value As Double = e_int * 10 * SheetScale
'--------------------- Calculate sheetsize for print END
If printNeeded = True Then
HandleNames(FileNameMod, y, i, ".Tif", Model1)
Printtoprinter(Session, Drawing, i, i, FileNameMod, Model1, Print_value)
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
Next i Next i
@@ -792,15 +754,8 @@ Public Class MainWindow
End If End If
If excelPrintNeeded = True Then
folderpicked = Path.GetTempPath
HandleNames(FileNameMod, 0, 0, ".xls", Model1)
CreateExcel(Session, FileNameMod)
PrintExcel(FileNameMod)
End If
End Sub End Sub
@@ -848,7 +803,7 @@ Public Class MainWindow
FileNamesWOExtention = sresult FileNamesWOExtention = sresult
Else Else
FileNamesWOExtention = "NO_VIEW_ON_SHEET" FileNamesWOExtention = System.IO.Path.GetFileNameWithoutExtension(model1.FileName)
End If End If
@@ -915,7 +870,7 @@ Public Class MainWindow
FileNameModTimer = FileNameMod FileNameModTimer = FileNameMod
End Sub End Sub
Public Sub HandleTable(session As IpfcBaseSession, ByRef TableContent(,) As String) Public Sub HandleTable(session As IpfcBaseSession, ByRef TableContent(,) As String, MoreThanOneTable As Integer)
Dim selection As IpfcSelection = Nothing Dim selection As IpfcSelection = Nothing
Dim selections As New CpfcSelections Dim selections As New CpfcSelections
@@ -933,12 +888,12 @@ Public Class MainWindow
Dim CellValues As String Dim CellValues As String
' str1 = " Creo segéd program" ' str1 = " Creo segéd program"
'str2 = "" 'str2 = ""
Dim MoreThanOneTable As Boolean = False
ChooseTable(session, session.CurrentModel, MoreThanOneTable, table)
If MoreThanOneTable = True Then ' ChooseTable(session, session.CurrentModel, MoreThanOneTable, table)
If MoreThanOneTable > 1 Then
HandleWindow.FocusWindowM("In", "fo") HandleWindow.FocusWindowM("In", "fo")
ProgressTextstr = "Válassz táblázatot!" ProgressTextstr = "Válassz táblázatot!"
@@ -951,13 +906,13 @@ Public Class MainWindow
selectionOptions = (New CCpfcSelectionOptions).Create("dwg_table") selectionOptions = (New CCpfcSelectionOptions).Create("dwg_table")
selectionOptions.MaxNumSels = 1 selectionOptions.MaxNumSels = 1
Try ' Try
selections = session.Select(selectionOptions, Nothing) selections = session.Select(selectionOptions, Nothing)
selection = selections.Item(0) selection = selections.Item(0)
Catch ex As Exception ' Catch ex As Exception
MsgBox(ex.Message) ' MsgBox(ex.Message)
Exit Sub ' Exit Sub
End Try ' End Try
' Dim name1 As String = "Creo Parametric" ' Dim name1 As String = "Creo Parametric"
' Dim name2 As String = "(Active)" ' Dim name2 As String = "(Active)"
' HandleWindow.FocusWindowM(name2, name1) ' HandleWindow.FocusWindowM(name2, name1)
@@ -971,53 +926,32 @@ Public Class MainWindow
' table = iTableOwner.GetTable(2) ' table = iTableOwner.GetTable(2)
TableCoulomnCount = table.GetColumnCount() TableCoulomnCount = table.GetColumnCount()
TableRowCount = table.GetRowCount() TableRowCount = table.GetRowCount()
ReDim TableContent(TableRowCount - 5, TableCoulomnCount) ReDim TableContent(TableRowCount - 1, TableCoulomnCount)
For col = 1 To TableCoulomnCount For col = 1 To TableCoulomnCount
For row = 6 To TableRowCount For row = 7 To TableRowCount
TableCell = (New CCpfcTableCell).Create(row, col) TableCell = (New CCpfcTableCell).Create(row, col)
Try Try
Cstringseq = table.GetText(TableCell, 0) Cstringseq = table.GetText(TableCell, 0)
CellValues = Cstringseq.Item(0) CellValues = Cstringseq.Item(0)
' MsgBox(Cstringseq.Item(0))
If col = 7 Then TableCell = (New CCpfcTableCell).Create(row, col)
If Cstringseq.Item(0).Substring(0, 2) = "" Then
CellValues = Cstringseq.Item(0).Substring(2, Cstringseq.Item(0).Length - 2)
End If
If Cstringseq.Item(0).Substring(0, 1) = "" Then
CellValues = Cstringseq.Item(0).Substring(1, Cstringseq.Item(0).Length - 1)
End If
End If
If col = 10 Then TableContent(row - 4, col) = CellValues
If Cstringseq.Item(0) = "-" Then
CellValues = ""
End If
End If
If namingsyntax = "audi" = False Then
If Cstringseq.Item(0).Length > 8 Then
If Cstringseq.Item(0).Substring(0, 6) = "26-000" Then
CellValues = ""
End If
If Cstringseq.Item(0).Substring(0, 5) = " Pos." Then
CellValues = ""
End If
End If
End If
TableContent(row - 5, col) = CellValues
Catch ex As Exception Catch ex As Exception
TableContent(row - 5, col) = "" TableContent(row - 4, col) = " "
End Try End Try
' MsgBox(row)
Next Next
Next Next
@@ -1026,10 +960,10 @@ Public Class MainWindow
SHMNum = CellToString(table, 1, 5) SHMNum = CellToString(table, 1, 5)
MachineName = CellToString(table, 3, 7) MachineName = CellToString(table, 2, 7)
SHMDate = CellToString(table, 4, 7) SHMDate = CellToString(table, 3, 7)
SubMachineName = CellToString(table, 2, 7) SubMachineName = CellToString(table, 1, 7)
AudiNum = CellToString(table, 1, 7) 'AudiNum = CellToString(table, 1, 7)
NameT = CellToString(table, 3, 5) NameT = CellToString(table, 3, 5)
@@ -1037,92 +971,146 @@ Public Class MainWindow
'table.Erase() 'table.Erase()
End Sub End Sub
Private Sub HandleExcel(model1 As IpfcModel, FilnameMod As String, TableContent(,) As String) Private Sub HandleExcel(model1 As IpfcModel, FilnameMod As String, TableContent(,) As String)
xlApp = New Excel.Application xlApp = New Excel.Application
xlWorkBook = xlApp.Workbooks.Open(FilnameMod) xlWorkBook = xlApp.Workbooks.Open(FilnameMod)
xlWorkSheet = xlWorkBook.Worksheets("AUDI-Bemi-Stückliste") xlWorkSheet = xlWorkBook.Worksheets("Darabjegyzék")
xlApp.DisplayAlerts = False xlApp.DisplayAlerts = False
Dim RowCount As Integer = TableContent.GetLength(0) - 1 Dim RowCount As Integer = TableContent.GetLength(0) - 1
Dim ColCount As Integer = TableContent.GetLength(1) - 1 Dim ColCount As Integer = TableContent.GetLength(1) - 1
'Fill V-numbers...I think 'Fill V-numbers...I think
For row = 1 To RowCount Dim ColCount2 As Integer = TableContent.GetLength(1)
Console.WriteLine(TableContent(row, 7)) Dim o As Integer = 2
If TableContent(row, 7).Length < 2 Then If ColCount2 > 12 Then
TableContent(row, 7) = " " For row = 3 To RowCount - 3
End If
'Ha "V-"-vel kezdődik a string akkor kitölti a Console.WriteLine(TableContent(row, 7))
' If TableContent(row, 7).Substring(0, 2) <> "V-" Then ' If TableContent(row, 7).Length < 2 Then
For col = 1 To ColCount ' TableContent(row, 7) = " "
xlWorkSheet.Cells(row + 5, col) = TableContent(row, col) ' End If
'Ha "V-"-vel kezdődik a string akkor kitölti a
' If TableContent(row, 7).Substring(0, 2) <> "V-" Then
' For col = 1 To ColCount
' xlWorkSheet.Cells(row + 5, col) = TableContent(row, col)
'xt
' Else
Dim u As Integer = 0
xlWorkSheet.Cells(row + u, 3) = TableContent(row, 1) 'gyarto
xlWorkSheet.Cells(row + u, 4) = TableContent(row, 2) 'rajzszan
'xlWorkSheet.Cells(row + u, 3) = TableContent(row, 3)
' xlWorkSheet.Cells(row + u, 3) = TableContent(row, 4)
xlWorkSheet.Cells(row + u, 5) = TableContent(row, 3) 'filename
xlWorkSheet.Cells(row + u, 6) = TableContent(row, 4) 'bf
' xlWorkSheet.Cells(row + u, 5) = TableContent(row, 7) 'ures
xlWorkSheet.Cells(row + u, 8) = TableContent(row, 6) 'db
xlWorkSheet.Cells(row + u, 9) = TableContent(row, 7) 'anyag
' xlWorkSheet.Cells(row + u, 9) = TableContent(row, 9).Replace("n", "ø")
' xlWorkSheet.Cells(row + u, 9) = TableContent(row, 9)
xlWorkSheet.Cells(row + u, 10) = TableContent(row, 8) 'fel
xlWorkSheet.Cells(row + u, 12) = TableContent(row, 9) 'felszin
xlWorkSheet.Cells(row + u, 12) = TableContent(row, 10) 'hok
xlWorkSheet.Cells(row + u, 13) = TableContent(row, 11) 'hok kemeny
xlWorkSheet.Cells(row + u, 14) = TableContent(row, 12) 'note
' End If
'
Next Next
' Else
' xlWorkSheet.Cells(row + 5, 7) = TableContent(row, 7)
' xlWorkSheet.Cells(row + 5, 3) = TableContent(row, 3)
' xlWorkSheet.Cells(row + 5, 4) = TableContent(row, 4)
' End If
' '
Next
'Do I really need this ?!
SHMNum = CellToString(table, 1, 5)
NameT = CellToString(table, 3, 5)
MachineName = CellToString(table, 3, 7)
SHMDate = CellToString(table, 4, 7)
SubMachineName = CellToString(table, 2, 7)
AudiNum = CellToString(table, 1, 7)
'A fejléc kitöltése
xlWorkSheet.Cells(1, 5) = SHMNum
' xlWorkSheet.Cells(4, 10) = SHMNum
xlWorkSheet.Cells(3, 5) = NameT
xlWorkSheet.Cells(4, 5) = NameT
xlWorkSheet.Cells(3, 7) = MachineName
xlWorkSheet.Cells(4, 7) = SHMDate
xlWorkSheet.Cells(4, 9) = SHMDate
xlWorkSheet.Cells(2, 7) = SubMachineName
If namingsyntax = "stefani" Then
xlWorkSheet.Cells(1, 7) = ""
ElseIf namingsyntax = "audi" Then
xlWorkSheet.Cells(1, 7) = AudiNum
Else Else
Try For row = 3 To RowCount - 3
Dim tempparam As String = ""
ReadParam(model1, "BESTELLER", tempparam)
xlWorkSheet.Cells(1, 7) = tempparam
Catch ex As Exception Console.WriteLine(TableContent(row, 7))
xlWorkSheet.Cells(1, 7) = " " ' If TableContent(row, 7).Length < 2 Then
End Try ' TableContent(row, 7) = " "
' End If
'Ha "V-"-vel kezdődik a string akkor kitölti a
' If TableContent(row, 7).Substring(0, 2) <> "V-" Then
' For col = 1 To ColCount
' xlWorkSheet.Cells(row + 5, col) = TableContent(row, col)
'xt
' Else
Dim u As Integer = 1
xlWorkSheet.Cells(row + u, 1) = TableContent(row, 1)
xlWorkSheet.Cells(row + u, 2) = TableContent(row, 2)
xlWorkSheet.Cells(row + u, 3) = TableContent(row, 3)
xlWorkSheet.Cells(row + u, 4) = TableContent(row, 4)
xlWorkSheet.Cells(row + u, 5) = TableContent(row, 5)
xlWorkSheet.Cells(row + u, 6) = TableContent(row, 6)
xlWorkSheet.Cells(row + u, 7) = TableContent(row, 7)
xlWorkSheet.Cells(row + u, 8) = TableContent(row, 8)
xlWorkSheet.Cells(row + u, 9) = TableContent(row, 9).Replace("n", "ø")
' xlWorkSheet.Cells(row + u, 9) = TableContent(row, 9)
xlWorkSheet.Cells(row + u, 10) = TableContent(row, 10)
Next
'Do I really need this ?!
'SHMNum = CellToString(table, 1, 5)
' NameT = CellToString(table, 3, 5)
' MachineName = CellToString(table, 3, 7)
' SHMDate = CellToString(table, 4, 7)
' SubMachineName = CellToString(table, 2, 7)
' AudiNum = CellToString(table, 1, 7)
' End If
'A fejléc kitöltéseű
xlWorkSheet.Cells(1, 4) = CellToString(table, 1, 4) 'rajszam
xlWorkSheet.Cells(1, 5) = CellToString(table, 1, 5) 'rajszam
xlWorkSheet.Cells(1, 7) = CellToString(table, 1, 7) 'megnevezés
xlWorkSheet.Cells(1, 6) = CellToString(table, 1, 6) 'megnevezés
xlWorkSheet.Cells(1, 10) = CellToString(table, 3, 5) 'tervező
xlWorkSheet.Cells(1, 9) = CellToString(table, 3, 1) 'tervező
xlWorkSheet.Cells(2, 5) = CellToString(table, 2, 5) 'gyártó
xlWorkSheet.Cells(2, 1) = CellToString(table, 2, 1) 'gyártó
xlWorkSheet.Cells(2, 7) = CellToString(table, 2, 7) 'projektszám
xlWorkSheet.Cells(2, 6) = CellToString(table, 2, 6) 'projektszám
xlWorkSheet.Cells(2, 10) = CellToString(table, 3, 7) 'dátum
xlWorkSheet.Cells(2, 9) = CellToString(table, 3, 6) 'dátum
xlWorkSheet.Cells(3, 1) = CellToString(table, 4, 1) 'lsz
xlWorkSheet.Cells(3, 2) = CellToString(table, 4, 2) 'po
xlWorkSheet.Cells(3, 3) = CellToString(table, 4, 3) 'db
xlWorkSheet.Cells(3, 4) = CellToString(table, 4, 4) 'kp
xlWorkSheet.Cells(3, 5) = CellToString(table, 4, 5) 'megnevezes
xlWorkSheet.Cells(3, 6) = CellToString(table, 4, 6) 'rajzszam
xlWorkSheet.Cells(3, 7) = CellToString(table, 4, 7) 'gyarto
xlWorkSheet.Cells(3, 8) = CellToString(table, 4, 8) 'anyagminoseg
xlWorkSheet.Cells(3, 9) = CellToString(table, 4, 9) 'méret
xlWorkSheet.Cells(3, 10) = CellToString(table, 4, 10) 'megjegyzes
End If End If
'Delete useless cells
xlWorkSheet.Range(xlWorkSheet.Cells(RowCount + 6, 1), xlWorkSheet.Cells(3000, 10)).Clear()
If namingsyntax = "audi" = True Then
xlApp.Run("Atalakitas_doksihoz")
'Check for hianyzik in "Herstellaradressen
xlWorkSheet = xlWorkBook.Worksheets("Herstelleradressen")
ddas = IsNothing(xlWorkSheet.Range(xlWorkSheet.Cells(1, 1), xlWorkSheet.Cells(100, 10)).Find("#HIÁNYZIK"))
' If ddas = False Then
'End If
End If
If xlstype = "hanon" Then
xlApp.Run("Atalakitas_doksihoz_hanon") '
End If
'Save and close, set display alerts back to true 'Save and close, set display alerts back to true
xlWorkBook.Save() xlWorkBook.Save()
@@ -1336,35 +1324,52 @@ Public Class MainWindow
End Sub End Sub
Private Sub CreateExcel(session As IpfcBaseSession, FilnameMod As String) Private Sub CreateExcel(session As IpfcBaseSession, FilnameMod As String)
Try Dim TableContent(,) As String = Nothing
Dim MoreThanOneTable As Integer = 0
ChooseTable(session, session.CurrentModel, MoreThanOneTable, table)
If MoreThanOneTable = 0 Then
Exit Sub
End If
Dim TableContent(,) As String = Nothing HandleTable(session, TableContent, MoreThanOneTable)
HandleTable(session, TableContent) Dim tempPath As String = System.IO.Path.Combine(System.IO.Path.GetTempPath(), Path.GetFileName(FilnameMod))
Dim currentDirectory As String = Directory.GetCurrentDirectory() ' Gets the running directory
'Copies XLS to destenation folder currentDirectory = "C:\Creo11\18-Utilities\Dokumentacio"
If namingsyntax = "audi" Then Dim ColCount2 As Integer = TableContent.GetLength(1)
File.Copy("U:\proe_beallitasok\Creo4\Utilities\Stuckliste_alap.xls", FilnameMod.ToUpper(), 1) 'English Dim sourcePath As String
Else
File.Copy("U:\proe_beallitasok\Creo4\Utilities\Stuckliste_alap_hu.xls", FilnameMod.ToUpper(), 1) 'Hungarian
End If
' MsgBox(FilnameMod)
'Writes Creo table content to XLS
HandleExcel(session.CurrentModel, FilnameMod, TableContent)
If ddas = True Then
xlsCreated.Add(Path.GetFileName(FilnameMod) & " elkészült.")
Else
xlsCreated.Add(Path.GetFileName(FilnameMod) & " elkészült." & " - Cég információk hiányoznak!")
HibakSzama = HibakSzama + 1
End If
If ColCount2 > 12 Then
sourcePath = Path.Combine(currentDirectory, "Darabjegyzek_beszerzes.xlsm")
Else
sourcePath = Path.Combine(currentDirectory, "Darabjegyzek.xlsm")
Catch ex As Exception End If
xlsCreated.Add(Path.GetFileName(FilnameMod) & " nem készült el, a következő hiba üzenettel: " & ex.Message)
' Generálja a temp fájl elérési útját
' Másolja az XLS-t az ideiglenes mappába
File.Copy(sourcePath, tempPath, True)
' Kiírja a Creo táblázat tartalmát az XLS-be
HandleExcel(session.CurrentModel, tempPath, TableContent)
' Ellenőrzés és visszajelzés
If ddas = True Then
xlsCreated.Add(Path.GetFileName(FilnameMod) & " elkészült.")
Else
xlsCreated.Add(Path.GetFileName(FilnameMod) & " elkészült." & " - Cég információk hiányoznak!")
HibakSzama = HibakSzama + 1 HibakSzama = HibakSzama + 1
End Try End If
' Végleges fájl elérési útjának generálása
Dim finalDestination As String = FilnameMod.ToUpper()
' Másolja az ideiglenes fájlt a végleges célhelyre
File.Copy(tempPath, finalDestination & "M", True)
End Sub End Sub
'Printing each file to printer 'Printing each file to printer
@@ -1377,64 +1382,6 @@ Public Class MainWindow
<DllImport("user32.dll", EntryPoint:="SendMessageW")> <DllImport("user32.dll", EntryPoint:="SendMessageW")>
Private Shared Function SendMessageW(ByVal hWnd As IntPtr, ByVal Msg As UInteger, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As Integer Private Shared Function SendMessageW(ByVal hWnd As IntPtr, ByVal Msg As UInteger, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As Integer
End Function End Function
Private Sub Printtoprinter(ByRef session As IpfcBaseSession, ByRef Drawing As IpfcDrawing, ByVal StartSheet As Integer, ByVal EndSheet As Integer, Filename As String, model1 As IpfcModel, Print_Value As Double)
'Dim the used variables
Dim pcfOptions As IpfcPrinterPCFOptions
Dim printerOptions As IpfcPrinterInstructions
Dim ExportInstr As IpfcExportInstructions
'Turning off displayed planes,axes,points and coordiante systems
session.SetConfigOption("display_planes", "no")
session.SetConfigOption("display_axes", "no")
session.SetConfigOption("datum_point_display", "no")
session.SetConfigOption("display_coord_sys", "no")
'Choosing and using the PCF file"
If Print_Value > 15 Then 'a4
pcfOptions = session.GetPrintPCFOptions("CDC5520_A4.pcf", model1)
ElseIf Print_Value > 3 Then 'A3
pcfOptions = session.GetPrintPCFOptions("CDC5520_A3.pcf", model1)
ElseIf Print_Value > 1 Then 'A2
pcfOptions = session.GetPrintPCFOptions("CDC5520_A2.pcf", model1)
ElseIf Print_Value > 0 Then 'A1
pcfOptions = session.GetPrintPCFOptions("CDC5520_A1.pcf", model1)
Else 'A0
pcfOptions = session.GetPrintPCFOptions("CDC5520_A0.pcf", model1)
End If
printerOptions = (New CCpfcPrinterInstructions).Create()
printerOptions.ModelOption = pcfOptions.ModelOption
printerOptions.PlacementOption = pcfOptions.PlacementOption
printerOptions.PrinterOption = pcfOptions.PrinterOption
printerOptions.WindowId = session.GetModelWindow(Drawing).GetId()
'Choosing the sheets to print, the reason why it is printed one by one is to use the right naming syntax
printerOptions.ModelOption.Sheets = EpfcPrintSheets.EpfcPRINT_SELECTED_SHEETS
printerOptions.ModelOption.FirstPage = StartSheet
printerOptions.ModelOption.LastPage = EndSheet
'Choosing the model to print
printerOptions.ModelOption.Mdl = model1
printerOptions.PrinterOption.FileName = model1.InstanceName
'Printing the document (Don't mind that it is called export, for some fucking reason)
ExportInstr = CType(printerOptions, IpfcExportInstructions)
If Print_Value > 3 Then 'A3
' EZ VALAMI OKNÁL FOGVA BACKGROUND WOERKERBEN VOLT ????
BackgroundWorker3.RunWorkerAsync()
Else
MsgBox("Kérlek válaszd ki a nyomtató beállításokat, javasolt a Canon plotter használata.")
End If
model1.Export(Filename, ExportInstr)
End Sub
'Write parameters and sheetnumber
Private Sub WriteParam(iFeature As IpfcModel, iParamValueStr As String, iParamName As String) Private Sub WriteParam(iFeature As IpfcModel, iParamValueStr As String, iParamName As String)
@@ -1738,88 +1685,93 @@ Public Class MainWindow
model2 = view2d.GetModel model2 = view2d.GetModel
models.Add(model2) models.Add(model2)
End Sub End Sub
Private Sub ChooseTable(session As IpfcBaseSession, model1 As IpfcModel, ByRef MoreThanOne As Boolean, ByRef iTableRef As IpfcTable) Private Sub ChooseTable(session As IpfcBaseSession, model1 As IpfcModel, ByRef MoreThanOne As Integer, ByRef iTableRef As IpfcTable)
Dim iTables As IpfcTables Dim iTables As IpfcTables
Dim iTableOnwer As IpfcTableOwner Dim iTableOnwer As IpfcTableOwner
iTableOnwer = model1 iTableOnwer = model1
iTables = iTableOnwer.ListTables iTables = iTableOnwer.ListTables
Dim iTCells As IpfcTableCell Dim iTCells As IpfcTableCell
iTCells = (New CCpfcTableCell).Create(5, 7) iTCells = (New CCpfcTableCell).Create(2, 2)
Dim Cstringseq As New Cstringseq Dim Cstringseq As New Cstringseq
Dim a As Integer = 0 Dim a As Integer = 0
'MsgBox(iTables.Count)
For Each iTablea As IpfcTable In iTables For Each iTablea As IpfcTable In iTables
Try Try
Cstringseq = iTablea.GetText(iTCells, 0) Dim CellStr As String = CellToString(iTablea, 2, 5)
Dim CellStr2 As String = CellToString(iTablea, 2, 2)
If Cstringseq.Item(0) = "Stefani" Then 'MsgBox(CellStr)
a = a + 1 If CellStr = "Robotizalunk Kft." Or CellStr = "Robotizalunk" Or CellStr2 = "Robotizalunk" Or CellStr2 = "Robotizalunk Kft." Then
MoreThanOne = MoreThanOne + 1
iTableRef = iTablea iTableRef = iTablea
End If End If
Catch ex As Exception Catch ex As Exception
' MsgBox(ex.Message)
End Try End Try
Next Next
' MsgBox(a)
If a = 1 Then
MoreThanOne = False
Else
MoreThanOne = True
End If
' MsgBox(iTableRef.GetRowCount) ' MsgBox(iTableRef.GetRowCount)
' iLayer. ' iLayer.
End Sub End Sub
Private Sub HideShowTables(session As IpfcBaseSession, model1 As IpfcModel, HideShow As Boolean) Private Sub HideShowTables(session As IpfcBaseSession, model1 As IpfcModel, HideShow As Boolean)
Try
Dim iTables As IpfcTables
Dim iTableOnwer As IpfcTableOwner
iTableOnwer = model1
iTables = iTableOnwer.ListTables
Dim iTCells As IpfcTableCell
iTCells = (New CCpfcTableCell).Create(5, 7)
Dim Cstringseq As New Cstringseq
Dim iModelItems As IpfcModelItems
Dim iLayer As IpfcLayer = Nothing
iModelItems = CType(model1, IpfcModelItemOwner).ListItems(EpfcModelItemType.EpfcITEM_LAYER)
Dim CheckLayers As Integer = 0
For Each iModelItem In iModelItems Dim iTables As IpfcTables
If iModelItem.GetName.ToString = "HIDETABLE" Then Dim iTableOnwer As IpfcTableOwner
iLayer = iModelItem iTableOnwer = model1
CheckLayers = 1 iTables = iTableOnwer.ListTables
Dim iTCells As IpfcTableCell
End If iTCells = (New CCpfcTableCell).Create(5, 7)
Next Dim Cstringseq As New Cstringseq
Dim iModelItems As IpfcModelItems
If CheckLayers = 0 Then Dim iLayer As IpfcLayer = Nothing
iLayer = model1.CreateLayer("HideTable") iModelItems = CType(model1, IpfcModelItemOwner).ListItems(EpfcModelItemType.EpfcITEM_LAYER)
End If Dim CheckLayers As Integer = 0
iLayer.Status = 2
For Each iTablea As IpfcTable In iTables
' iTablea.
Try
Cstringseq = iTablea.GetText(iTCells, 0)
If Cstringseq.Item(0) = "Stefani" Then
If HideShow = True Then
iLayer.AddItem(iTablea)
Else
iLayer.RemoveItem(iTablea)
End If
For Each iModelItem In iModelItems
If iModelItem.GetName.ToString = "HIDETABLE" Then
iLayer = iModelItem
CheckLayers = 1
End If End If
' MsgBox(Cstringseq.Item(0)) Next
Catch ex As Exception
End Try If CheckLayers = 0 Then
iLayer = model1.CreateLayer("HideTable")
End If
Next iLayer.Status = 2
For Each iTablea As IpfcTable In iTables
' iTablea.
Try
Cstringseq = iTablea.GetText(iTCells, 0)
If Cstringseq.Item(0) = "Robot" Then
If HideShow = True Then
iLayer.AddItem(iTablea)
Else
iLayer.RemoveItem(iTablea)
End If
End If
' MsgBox(Cstringseq.Item(0))
Catch ex As Exception
End Try
Next
Catch ex As Exception
End Try
' iLayer. ' iLayer.
End Sub End Sub

View File

@@ -1,11 +1,4 @@
<Window x:Class="Form3" <Window x:Class="Form3"
TextElement.Foreground="{DynamicResource MaterialDesignBody}"
TextElement.FontWeight="Regular"
TextElement.FontSize="13"
TextOptions.TextFormattingMode="Ideal"
TextOptions.TextRenderingMode="Auto"
Background="{DynamicResource MaterialDesignPaper}"
FontFamily="{DynamicResource MaterialDesignFont}"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
@@ -14,12 +7,51 @@
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes" xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
xmlns:mde="clr-namespace:MaterialDesignExtensions.Controls;assembly=MaterialDesignExtensions" xmlns:mde="clr-namespace:MaterialDesignExtensions.Controls;assembly=MaterialDesignExtensions"
mc:Ignorable="d" mc:Ignorable="d"
Title="Elkészült" Height="183.994" Width="370.188" FontSize="13" WindowStyle="None" WindowStartupLocation="CenterScreen"> Title="Elkészült"
<Grid Height="178" VerticalAlignment="Top" HorizontalAlignment="Left" Width="370" Margin="0,0,-8,0"> Height="183.994"
<TextBox x:Name="TextBox1" HorizontalAlignment="Left" Height="68" Margin="0,63,0,0" TextWrapping="Wrap" Text="TextBox" VerticalAlignment="Top" Width="360" IsReadOnly="True" BorderBrush="{DynamicResource {x:Static SystemColors.ActiveBorderBrushKey}}" BorderThickness="1" VerticalScrollBarVisibility="Auto"/> Width="370.188"
<Button x:Name="MaterialRaisedButton1" Content="Ok" HorizontalAlignment="Left" Margin="10,136,0,0" VerticalAlignment="Top" Width="156" RenderTransformOrigin="0.785,1.101"/> FontSize="13"
<Label x:Name="Label1" Content="A dokumentáció elkészült" Margin="0,10,10,0" FontSize="20" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Height="48" VerticalAlignment="Top"/> WindowStyle="None"
<Button x:Name="MaterialRaisedButton2" Content="Tartalmazó mappa" HorizontalAlignment="Left" Margin="187,136,0,0" VerticalAlignment="Top" Width="156" RenderTransformOrigin="0.785,1.101"/> WindowStartupLocation="CenterScreen"
TextElement.Foreground="{DynamicResource MaterialDesignBody}"
TextElement.FontWeight="Regular"
TextElement.FontSize="13"
TextOptions.TextFormattingMode="Ideal"
TextOptions.TextRenderingMode="Auto"
Background="{DynamicResource MaterialDesignPaper}"
FontFamily="{DynamicResource MaterialDesignFont}">
<!-- Téma beállítása Teal színnel -->
<Window.Resources>
<materialDesign:BundledTheme BaseTheme="Light"
PrimaryColor="Teal"
SecondaryColor="Teal"/>
</Window.Resources>
<Grid Height="178" VerticalAlignment="Top" HorizontalAlignment="Left" Width="370" Margin="0,0,-8,0">
<Button x:Name="MaterialRaisedButton1"
Content="Ok"
Style="{StaticResource MaterialDesignRaisedButton}"
HorizontalAlignment="Left"
Margin="10,106,0,0"
VerticalAlignment="Top"
Width="156"/>
<Label x:Name="Label1"
Content="A dokumentáció elkészült"
Margin="5,10,5,0"
FontSize="20"
HorizontalContentAlignment="Center"
VerticalContentAlignment="Center"
Height="48"
VerticalAlignment="Top"/>
<Button x:Name="MaterialRaisedButton2"
Content="Tartalmazó mappa"
Style="{StaticResource MaterialDesignRaisedButton}"
HorizontalAlignment="Left"
Margin="185,106,0,0"
VerticalAlignment="Top"
Width="156"/>
</Grid> </Grid>
</Window> </Window>

View File

@@ -2,7 +2,7 @@
Private Sub Form3_Loaded(ByVal sender As Object, ByVal e As EventArgs) Handles MyClass.Loaded Private Sub Form3_Loaded(ByVal sender As Object, ByVal e As EventArgs) Handles MyClass.Loaded
TextBox1.Text = MainWindow.sresult ' TextBox1.Text = MainWindow.sresult
' MaterialLabel2.Text = "Hibák száma: " & MainWindow.HibakSzama ' MaterialLabel2.Text = "Hibák száma: " & MainWindow.HibakSzama
If MainWindow.HibakSzama = 0 Then If MainWindow.HibakSzama = 0 Then
@@ -25,9 +25,9 @@
Process.Start(MainWindow.workDir) Process.Start(MainWindow.workDir)
End Sub End Sub
Private Sub TextBox1_TextChanged(sender As Object, e As TextChangedEventArgs) Handles TextBox1.TextChanged ' Private Sub TextBox1_TextChanged(sender As Object, e As TextChangedEventArgs) Handles TextBox1.TextChanged
End Sub ' End Sub
Private Sub MaterialRaisedButton1_Click_1(sender As Object, e As RoutedEventArgs) Handles MaterialRaisedButton1.Click Private Sub MaterialRaisedButton1_Click_1(sender As Object, e As RoutedEventArgs) Handles MaterialRaisedButton1.Click