diff --git a/Specification_PDF/Specification.pdf b/Specification_PDF/Specification.pdf
index fc56548..0f7adb3 100644
Binary files a/Specification_PDF/Specification.pdf and b/Specification_PDF/Specification.pdf differ
diff --git a/Wardrobe/GUI/Draw_Grating.vb b/Wardrobe/GUI/Draw_Grating.vb
index 2ccb415..da6ff4b 100644
--- a/Wardrobe/GUI/Draw_Grating.vb
+++ b/Wardrobe/GUI/Draw_Grating.vb
@@ -146,35 +146,41 @@
' --- Draw all the lines for the panel and grating ---
Public Shared Sub DrawingPanel_Paint(sender As Object, e As PaintEventArgs)
- ' Draw grating gross area (red)
- Dim penCon As Pen = New Pen(Color.Red, 2)
- penCon.DashPattern = {4, 6}
- e.Graphics.DrawLine(penCon, Data.grossAreaPoints(0)("GUI X"), Data.grossAreaPoints(0)("GUI Y"),
- Data.grossAreaPoints(1)("GUI X"), Data.grossAreaPoints(1)("GUI Y"))
- e.Graphics.DrawLine(penCon, Data.grossAreaPoints(1)("GUI X"), Data.grossAreaPoints(1)("GUI Y"),
- Data.grossAreaPoints(2)("GUI X"), Data.grossAreaPoints(2)("GUI Y"))
- e.Graphics.DrawLine(penCon, Data.grossAreaPoints(2)("GUI X"), Data.grossAreaPoints(2)("GUI Y"),
- Data.grossAreaPoints(3)("GUI X"), Data.grossAreaPoints(3)("GUI Y"))
- e.Graphics.DrawLine(penCon, Data.grossAreaPoints(3)("GUI X"), Data.grossAreaPoints(3)("GUI Y"),
- Data.grossAreaPoints(0)("GUI X"), Data.grossAreaPoints(0)("GUI Y"))
-
- ' Draw grating direction symbol
- Dim symPen As Pen = New Pen(Color.Black, 1)
- For i = 0 To DirSymbolPoints.Count - 2
- e.Graphics.DrawLine(symPen, DirSymbolPoints(i)(0), DirSymbolPoints(i)(1),
- DirSymbolPoints(i + 1)(0), DirSymbolPoints(i + 1)(1))
- Next
+ Draw_Grating(e.Graphics, 7)
' Draw arrow symbol
+ Dim symPen As Pen = New Pen(Color.Black, 1)
For i = 1 To ArrowSymbolPoints.Count - 1
e.Graphics.DrawLine(symPen, ArrowSymbolPoints("p" & i)(0), ArrowSymbolPoints("p" & i)(1),
ArrowSymbolPoints("p" & i + 1)(0), ArrowSymbolPoints("p" & i + 1)(1))
Next
+ End Sub
+
+ Public Shared Sub Draw_Grating(g As Graphics, fontSize As Integer)
+ ' Draw grating gross area (red)
+ Dim penCon As Pen = New Pen(Color.Red, 2)
+ penCon.DashPattern = {4, 6}
+ g.DrawLine(penCon, Data.grossAreaPoints(0)("GUI X"), Data.grossAreaPoints(0)("GUI Y"),
+ Data.grossAreaPoints(1)("GUI X"), Data.grossAreaPoints(1)("GUI Y"))
+ g.DrawLine(penCon, Data.grossAreaPoints(1)("GUI X"), Data.grossAreaPoints(1)("GUI Y"),
+ Data.grossAreaPoints(2)("GUI X"), Data.grossAreaPoints(2)("GUI Y"))
+ g.DrawLine(penCon, Data.grossAreaPoints(2)("GUI X"), Data.grossAreaPoints(2)("GUI Y"),
+ Data.grossAreaPoints(3)("GUI X"), Data.grossAreaPoints(3)("GUI Y"))
+ g.DrawLine(penCon, Data.grossAreaPoints(3)("GUI X"), Data.grossAreaPoints(3)("GUI Y"),
+ Data.grossAreaPoints(0)("GUI X"), Data.grossAreaPoints(0)("GUI Y"))
+
+ ' Draw grating direction symbol
+ Dim symPen As Pen = New Pen(Color.Black, 1)
+ For i = 0 To DirSymbolPoints.Count - 2
+ g.DrawLine(symPen, DirSymbolPoints(i)(0), DirSymbolPoints(i)(1),
+ DirSymbolPoints(i + 1)(0), DirSymbolPoints(i + 1)(1))
+ Next
+
' Draw measure labels
For i = 0 To measureLabels.Count - 1
Dim mesName As String = measureLabels.Keys(i)
- e.Graphics.DrawString(measureLabels(mesName)(0), New Font("Microsoft Sans Serif", 7), Brushes.Black,
+ g.DrawString(measureLabels(mesName)(0), New Font("Microsoft Sans Serif", fontSize), Brushes.Black,
New Point(measureLabels(mesName)(1), measureLabels(mesName)(2)))
Next
@@ -182,18 +188,18 @@
Dim penMes As Pen = New Pen(Color.Gray, 1)
For i = 0 To sideSquareMesLine.Count - 1
Dim mesName As String = sideSquareMesLine.Keys(i)
- e.Graphics.DrawLine(penMes, sideSquareMesLine(mesName)(0), sideSquareMesLine(mesName)(1),
+ g.DrawLine(penMes, sideSquareMesLine(mesName)(0), sideSquareMesLine(mesName)(1),
sideSquareMesLine(mesName)(2), sideSquareMesLine(mesName)(3))
If Data.pointsMeasurements(mesName)(2) = 1 OrElse Data.pointsMeasurements(mesName)(2) = 3 Then
- e.Graphics.DrawLine(penMes, sideSquareMesLine(mesName)(0), sideSquareMesLine(mesName)(1) + 2,
+ g.DrawLine(penMes, sideSquareMesLine(mesName)(0), sideSquareMesLine(mesName)(1) + 2,
sideSquareMesLine(mesName)(0), sideSquareMesLine(mesName)(1) - 2)
- e.Graphics.DrawLine(penMes, sideSquareMesLine(mesName)(2), sideSquareMesLine(mesName)(1) + 2,
+ g.DrawLine(penMes, sideSquareMesLine(mesName)(2), sideSquareMesLine(mesName)(1) + 2,
sideSquareMesLine(mesName)(2), sideSquareMesLine(mesName)(1) - 2)
Else
- e.Graphics.DrawLine(penMes, sideSquareMesLine(mesName)(0) + 2, sideSquareMesLine(mesName)(1),
+ g.DrawLine(penMes, sideSquareMesLine(mesName)(0) + 2, sideSquareMesLine(mesName)(1),
sideSquareMesLine(mesName)(0) - 2, sideSquareMesLine(mesName)(1))
- e.Graphics.DrawLine(penMes, sideSquareMesLine(mesName)(0) + 2, sideSquareMesLine(mesName)(3),
+ g.DrawLine(penMes, sideSquareMesLine(mesName)(0) + 2, sideSquareMesLine(mesName)(3),
sideSquareMesLine(mesName)(0) - 2, sideSquareMesLine(mesName)(3))
End If
Next
@@ -215,9 +221,9 @@
Exit For
End If
Next
- e.Graphics.DrawLine(Pendot, Data.angleRecessPoints.Rows(i)("GUI X"), Data.angleRecessPoints.Rows(i)("GUI Y"),
+ g.DrawLine(Pendot, Data.angleRecessPoints.Rows(i)("GUI X"), Data.angleRecessPoints.Rows(i)("GUI Y"),
p1XGUI, p1YGUI)
- e.Graphics.DrawLine(Pendot, Data.angleRecessPoints.Rows(i)("GUI X"), Data.angleRecessPoints.Rows(i)("GUI Y"),
+ g.DrawLine(Pendot, Data.angleRecessPoints.Rows(i)("GUI X"), Data.angleRecessPoints.Rows(i)("GUI Y"),
p2XGUI, p2YGUI)
Next
@@ -238,7 +244,7 @@
pTemp2(1) = Data.gratingPoints.Rows(0)("GUI Y")
End Try
- e.Graphics.DrawLine(pen, pTemp1(0), pTemp1(1), pTemp2(0), pTemp2(1))
+ g.DrawLine(pen, pTemp1(0), pTemp1(1), pTemp2(0), pTemp2(1))
Next
For i = 0 To Data.gratingMiddlePoints.Rows.Count - 1
@@ -256,10 +262,9 @@
pTemp2(1) = Data.gratingMiddlePoints.Rows(i + 1)("GUI Y")
End If
- e.Graphics.DrawLine(pen, pTemp1(0), pTemp1(1), pTemp2(0), pTemp2(1))
+ g.DrawLine(pen, pTemp1(0), pTemp1(1), pTemp2(0), pTemp2(1))
Next
-
' Draw grating grid for fill area
If AppForm.fillMode Then
Dim dashPen As Pen = New Pen(Color.DarkGray, 1)
@@ -269,14 +274,10 @@
For i = 0 To Grating_Fill.numOfHorizontal - 2
Dim x As Integer
x = Data.grossAreaPoints.Rows(0)("GUI X") + singleLength * (i + 1)
- 'If Grating_Fill.lengthRevNeeded AndAlso i = Grating_Fill.numOfHorizontal - 2 Then
- ' x = Data.grossAreaPoints.Rows(0)("GUI X") + singleLength * i + Grating_Fill.revLength / Data.scaleDiff
- 'Else
- 'x = Data.grossAreaPoints.Rows(0)("GUI X") + singleLength * (i + 1)
- 'End If
+
Dim y1 As Integer = Data.grossAreaPoints.Rows(0)("GUI Y")
Dim y2 As Integer = Data.grossAreaPoints.Rows(3)("GUI Y")
- e.Graphics.DrawLine(dashPen, x, y1, x, y2)
+ g.DrawLine(dashPen, x, y1, x, y2)
Next
Dim singleWidth As Integer = Grating_Fill.maxSingleWidth / Data.scaleDiff
@@ -289,10 +290,8 @@
End If
Dim x1 As Integer = Data.grossAreaPoints.Rows(0)("GUI X")
Dim x2 As Integer = Data.grossAreaPoints.Rows(1)("GUI X")
- e.Graphics.DrawLine(dashPen, x1, y, x2, y)
+ g.DrawLine(dashPen, x1, y, x2, y)
Next
End If
-
End Sub
-
End Class
diff --git a/Wardrobe/GUI/Individual.vb b/Wardrobe/GUI/Individual.vb
index dc3a01d..71accf2 100644
--- a/Wardrobe/GUI/Individual.vb
+++ b/Wardrobe/GUI/Individual.vb
@@ -1,4 +1,4 @@
-Imports Word = Microsoft.Office.Interop.Word
+
Public Class Individual
Public Shared filepath As String
@@ -257,117 +257,7 @@ Public Class Individual
' ---------------------------------- Export GUI ----------------------------------
' --- When export GUI button is pressed ---
Private Sub Button_Export_GUI_Click(sender As Object, e As EventArgs) Handles Button_Export_GUI.Click
- 'Dim startPoint As New Point(Me.Left + Panel_Grating.Left, Me.Top + Panel_Grating.Top)
- Dim startPoint As New Point
- startPoint = Panel_Grating.PointToScreen(Point.Empty)
-
- Dim tempImg As New Bitmap(Panel_Grating.Width - 1, Panel_Grating.Height - 1)
- Dim test As Graphics = Graphics.FromImage(tempImg)
- test.CopyFromScreen(startPoint, New Point(0, 0), tempImg.Size)
- tempImg.Save(filepath & "\X2021\Specification_PDF\GUI.png", Imaging.ImageFormat.Png)
-
-
- Dim doc As Word.Document = New Word.Document()
-
- 'doc.Content.Text = "Hello World"
-
- Dim Para1 As Word.Paragraph
- Para1 = doc.Content.Paragraphs.Add
- Para1.Range.InlineShapes.AddPicture(filepath & "\X2021\Specification_PDF\Weland_Logo.png")
- doc.InlineShapes(1).ScaleHeight = 50
- doc.InlineShapes(1).ScaleWidth = 50
- Para1.Format.SpaceAfter = 30
- Para1.Range.InsertParagraphAfter()
-
- Dim table1 As Word.Table
- table1 = doc.Tables.Add(doc.Bookmarks.Item("\endofdoc").Range, 4, 2)
- table1.Columns(1).SetWidth(120, 2)
- table1.Rows.SetHeight(18, 2)
-
- table1.Cell(1, 1).Range.Text = "Quote Date:"
- table1.Cell(1, 2).Range.Text = Date.Today
-
- table1.Cell(2, 1).Range.Text = "Order number:"
- table1.Cell(2, 2).Range.Text = "1337"
-
- table1.Cell(3, 1).Range.Text = "Customer number:"
- table1.Cell(3, 2).Range.Text = "20041605"
-
- table1.Cell(4, 1).Range.Text = "Sales Representative:"
- table1.Cell(4, 2).Range.Text = "Sven Svensson"
-
- table1.Range.ParagraphFormat.SpaceAfter = 30
-
- 'table1.Range.InsertParagraphAfter()
- 'table1.Range.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
-
- Dim oLineBreak As Word.Paragraph
- oLineBreak = doc.Content.Paragraphs.Add(doc.Bookmarks.Item("\endofdoc").Range)
- oLineBreak.Range.InsertParagraphBefore()
- oLineBreak.Range.Text = ""
- oLineBreak.Format.SpaceAfter = 0.5
- oLineBreak.Range.InsertParagraphAfter()
-
-
- Dim table2 As Word.Table
- table2 = doc.Tables.Add(doc.Bookmarks.Item("\endofdoc").Range, 5, 5) 'FIXA generiskt
- table2.Rows.SetHeight(18, 2)
-
- For i = 1 To table2.Columns.Count
- table2.Cell(1, i).Range.Font.Color = Word.WdColor.wdColorWhite
- table2.Cell(1, i).Shading.BackgroundPatternColor = Word.WdColor.wdColorBlack
- Next
-
- table2.Cell(1, 1).Range.Text = "Description"
- table2.Cell(1, 2).Range.Text = "QTY"
- table2.Cell(1, 3).Range.Text = "Art. Nr."
- table2.Cell(1, 4).Range.Text = "Unit Price"
- table2.Cell(1, 5).Range.Text = "Total Price"
-
- For i = 2 To table2.Rows.Count
- table2.Cell(i, 1).Range.Text = "Floor Grating" & i
- table2.Cell(i, 2).Range.Text = "QTY"
- table2.Cell(i, 3).Range.Text = "Art. Nr."
- table2.Cell(i, 4).Range.Text = "Unit Price"
- table2.Cell(i, 5).Range.Text = "Total Price"
-
- Next
-
- table2.Range.ParagraphFormat.SpaceAfter = 40
-
- Dim Para2 As Word.Paragraph
- Para2 = doc.Content.Paragraphs.Add
- Para2.Range.InsertParagraphBefore()
- Para2.Range.Text = "Total Price: " & "2200"
- Para2.Range.Font.Bold = True
- Para2.Range.Font.Size = 20
- Para2.Alignment = Word.WdParagraphAlignment.wdAlignParagraphRight
- Para2.Format.SpaceAfter = 24
-
- Dim table3 As Word.Table
- doc.Sections(1).PageSetup.DifferentFirstPageHeaderFooter = False
- table3 = doc.Sections(1).Footers(Word.WdHeaderFooterIndex.wdHeaderFooterPrimary).Range.Tables.Add(doc.Sections(1).Footers(Word.WdHeaderFooterIndex.wdHeaderFooterPrimary).Range, 3, 2)
-
- table3.Columns(1).SetWidth(360, 2)
-
- table3.Cell(1, 1).Range.Text = "Phone Number: "
- table3.Cell(2, 1).Range.Text = "Email: "
- table3.Cell(3, 1).Range.Text = "Webpage: "
-
- table3.Cell(1, 2).Range.Text = "0731-344 00"
- table3.Cell(2, 2).Range.Text = "info@weland.se"
- table3.Cell(3, 2).Range.Text = "www.weland.com"
-
- For i = 1 To table3.Rows.Count
- table3.Cell(i, 1).Range.Font.Bold = True
- For j = 1 To table3.Columns.Count
- table3.Cell(i, j).Range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphRight
- table3.Cell(i, j).Range.Font.Size = 10
- Next
- Next
-
- doc.ExportAsFixedFormat(filepath & "\X2021\Specification_PDF\Specification.pdf", Word.WdExportFormat.wdExportFormatPDF)
- doc.Close(False)
+ GUI_Export.Generate_Quote()
End Sub
' ---------------------------------- Back to main menu ----------------------------------
diff --git a/Wardrobe/Gratings Data/User_Input.vb b/Wardrobe/Gratings Data/User_Input.vb
index 84baa89..e7e9683 100644
--- a/Wardrobe/Gratings Data/User_Input.vb
+++ b/Wardrobe/Gratings Data/User_Input.vb
@@ -448,6 +448,7 @@
Dim gratingTable As New DataTable
gratingTable.Columns.Add("TYPE", GetType(String))
+ gratingTable.Columns.Add("NAME", GetType(String))
gratingTable.Columns.Add("SERRATED", GetType(Boolean))
gratingTable.Columns.Add("WIDTH", GetType(Integer))
gratingTable.Columns.Add("LENGTH", GetType(Integer))
@@ -461,7 +462,8 @@
gratingTable.Rows.Add()
- gratingTable.Rows(0)("SERRATED") = False 'Hämta från GUI
+ gratingTable.Rows(0)("NAME") = gratingName
+ gratingTable.Rows(0)("SERRATED") = gratingSerrated
gratingTable.Rows(0)("WIDTH") = CInt(Individual.ComboBox_Width.Text)
gratingTable.Rows(0)("LENGTH") = CInt(Individual.TextBox_Length.Text)
gratingTable.Rows(0)("LOADBAR_THICKNESS") = CInt(Individual.ComboBox_Thickness.Text)
diff --git a/Wardrobe/Quote_Export/GUI_Export.vb b/Wardrobe/Quote_Export/GUI_Export.vb
new file mode 100644
index 0000000..3797a97
--- /dev/null
+++ b/Wardrobe/Quote_Export/GUI_Export.vb
@@ -0,0 +1,215 @@
+Imports Word = Microsoft.Office.Interop.Word
+Public Class GUI_Export
+ Private Shared gratingTable As New DataTable
+ Public Shared Sub Generate_Quote()
+ gratingTable = User_Input.Create_ExportTable()
+
+ Dim doc As Word.Document = New Word.Document()
+
+ 'Page 1
+ Create_HeaderFooter(doc)
+ Create_QuoteInfo(doc)
+ Create_ProductsInfo(doc)
+
+ 'Page 2-X
+ doc.Words.Last.InsertBreak(Word.WdBreakType.wdPageBreak)
+
+ Generate_Screenshot()
+
+ Dim drawingPara As Word.Paragraph
+ Dim lineRange As Word.Range = doc.Bookmarks.Item("\endofdoc").Range
+ drawingPara = doc.Content.Paragraphs.Add(lineRange)
+ drawingPara.Range.InsertParagraphBefore()
+ drawingPara.Format.SpaceBefore = 10
+ drawingPara.Range.InlineShapes.AddPicture(Individual.filepath & "\X2021\Specification_PDF\GUI.png")
+ drawingPara.Range.InlineShapes(1).ScaleHeight = 55
+ drawingPara.Range.InlineShapes(1).ScaleWidth = 55
+ drawingPara.Format.SpaceAfter = 10
+ drawingPara.Range.InsertParagraphAfter()
+
+
+
+ doc.ExportAsFixedFormat(Individual.filepath & "\X2021\Specification_PDF\Specification.pdf", Word.WdExportFormat.wdExportFormatPDF)
+ doc.Close(False)
+ End Sub
+
+ Private Shared Sub Generate_Screenshot()
+ 'Dim startPoint As New Point(Me.Left + Panel_Grating.Left, Me.Top + Panel_Grating.Top)
+ 'Dim startPoint As New Point
+ 'startPoint = Individual.Panel_Grating.PointToScreen(Point.Empty)
+
+ 'Dim tempImg As New Bitmap(Individual.Panel_Grating.Width - 1, Individual.Panel_Grating.Height - 1)
+ 'Dim test As Graphics = Graphics.FromImage(tempImg)
+ 'test.CopyFromScreen(startPoint, New Point(0, 0), tempImg.Size)
+ 'tempImg.Save(Individual.filepath & "\X2021\Specification_PDF\GUI.png", Imaging.ImageFormat.Png)
+
+
+ Dim gratingImg As New Bitmap(Individual.Panel_Grating.Width - 1, Individual.Panel_Grating.Height - 1)
+ Dim graphicImg As Graphics = Graphics.FromImage(gratingImg)
+
+ Draw_Grating.Draw_Grating(graphicImg, 12)
+
+ gratingImg.Save(Individual.filepath & "\X2021\Specification_PDF\GUI.png", Imaging.ImageFormat.Png)
+
+ End Sub
+
+ Private Shared Sub Create_HeaderFooter(doc As Word.Document)
+ doc.Sections(1).PageSetup.DifferentFirstPageHeaderFooter = False
+
+ 'Header
+ Dim headerTable As Word.Table
+ headerTable = doc.Sections(1).Headers(Word.WdHeaderFooterIndex.wdHeaderFooterPrimary).Range.
+ Tables.Add(doc.Sections(1).Headers(Word.WdHeaderFooterIndex.wdHeaderFooterPrimary).Range, 1, 2)
+
+ headerTable.Cell(1, 1).Range.InlineShapes.AddPicture(Individual.filepath & "\X2021\Specification_PDF\Weland_Logo.png")
+ headerTable.Cell(1, 1).Range.InlineShapes(1).ScaleHeight = 50
+ headerTable.Cell(1, 1).Range.InlineShapes(1).ScaleWidth = 50
+
+ headerTable.Cell(1, 2).Range.Text = "QUOTE"
+ headerTable.Cell(1, 2).Range.Font.Size = 18
+ headerTable.Cell(1, 2).Range.Font.Bold = True
+ headerTable.Cell(1, 2).Range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphRight
+ headerTable.Cell(1, 2).VerticalAlignment = Word.WdVerticalAlignment.wdAlignVerticalBottom
+
+ 'Footer
+ Dim footerTable As Word.Table
+ footerTable = doc.Sections(1).Footers(Word.WdHeaderFooterIndex.wdHeaderFooterPrimary).Range.
+ Tables.Add(doc.Sections(1).Footers(Word.WdHeaderFooterIndex.wdHeaderFooterPrimary).Range, 3, 2)
+ footerTable.Columns(1).SetWidth(360, 2)
+
+ footerTable.Cell(1, 1).Range.Text = "Phone Number: "
+ footerTable.Cell(2, 1).Range.Text = "Email: "
+ footerTable.Cell(3, 1).Range.Text = "Webpage: "
+
+ footerTable.Cell(1, 2).Range.Text = "0731-344 00"
+ footerTable.Cell(2, 2).Range.Text = "info@weland.se"
+ footerTable.Cell(3, 2).Range.Text = "www.weland.com"
+
+ For i = 1 To footerTable.Rows.Count
+ footerTable.Cell(i, 1).Range.Font.Bold = True
+ For j = 1 To footerTable.Columns.Count
+ footerTable.Cell(i, j).Range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphRight
+ footerTable.Cell(i, j).Range.Font.Size = 10
+ Next
+ Next
+ End Sub
+
+ Private Shared Sub Create_QuoteInfo(doc)
+ Dim lineBreak As Word.Paragraph
+ lineBreak = doc.Content.Paragraphs.Add
+ lineBreak.Range.InsertParagraphBefore()
+ lineBreak.Range.Text = ""
+ lineBreak.Format.SpaceAfter = 20
+ lineBreak.Range.InsertParagraphAfter()
+
+ Dim infoTable As Word.Table
+ Dim tableRange As Word.Range = doc.Bookmarks.Item("\endofdoc").Range
+ infoTable = doc.Tables.Add(tableRange, 4, 2)
+ infoTable.Columns(1).SetWidth(120, 2)
+ infoTable.Rows.SetHeight(18, 2)
+
+ Dim date2 As Date = Date.Today
+
+ infoTable.Cell(1, 1).Range.Text = "Quote Date:"
+ infoTable.Cell(1, 2).Range.Text = date2.ToString("dd-MM-yyyy")
+
+ infoTable.Cell(2, 1).Range.Text = "Order number:"
+ infoTable.Cell(2, 2).Range.Text = date2.ToString("ddMMyyyy") & Get_RandomNumber(10000, 99999)
+
+ infoTable.Cell(3, 1).Range.Text = "Customer number:"
+ infoTable.Cell(3, 2).Range.Text = Get_RandomNumber(10000, 99999)
+
+ infoTable.Cell(4, 1).Range.Text = "Sales Representative:"
+ infoTable.Cell(4, 2).Range.Text = "Sven Svensson"
+ End Sub
+
+ Private Shared Sub Create_ProductsInfo(doc)
+ Dim lineBreak As Word.Paragraph
+ Dim lineRange As Word.Range = doc.Bookmarks.Item("\endofdoc").Range
+ lineBreak = doc.Content.Paragraphs.Add(lineRange)
+ lineBreak.Range.InsertParagraphBefore()
+ lineBreak.Range.Text = ""
+ lineBreak.Format.SpaceAfter = 10
+ lineBreak.Range.InsertParagraphAfter()
+
+ Dim productsTable As Word.Table
+ Dim tableRange As Word.Range = doc.Bookmarks.Item("\endofdoc").Range
+ productsTable = doc.Tables.Add(tableRange, 5, 5) 'FIXA generiskt
+ productsTable.Rows.SetHeight(18, 2)
+ productsTable.Columns(1).SetWidth(240, 2)
+ productsTable.Columns(2).SetWidth(78, 2)
+ productsTable.Columns(3).SetWidth(40, 2)
+ productsTable.Columns(4).SetWidth(60, 2)
+ productsTable.Columns(5).SetWidth(52, 2)
+
+ For c = 1 To productsTable.Columns.Count
+ productsTable.Cell(1, c).Range.Font.Color = Word.WdColor.wdColorWhite
+ productsTable.Cell(1, c).Shading.BackgroundPatternColor = Word.WdColor.wdColorBlack
+ productsTable.Cell(1, c).VerticalAlignment = Word.WdVerticalAlignment.wdAlignVerticalBottom
+ If c > 2 Then
+ For r = 1 To productsTable.Rows.Count
+ productsTable.Cell(r, c).Range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphRight
+ Next
+ End If
+ If c = 5 Then
+ For r = 2 To productsTable.Rows.Count
+ productsTable.Cell(r, c).Range.Font.Bold = True
+ Next
+ End If
+ Next
+
+ productsTable.Cell(1, 1).Range.Text = "Description"
+ productsTable.Cell(1, 2).Range.Text = "Art. Nr."
+ productsTable.Cell(1, 3).Range.Text = "QTY"
+ productsTable.Cell(1, 4).Range.Text = "Unit Price"
+ productsTable.Cell(1, 5).Range.Text = "Price"
+
+ For i = 2 To productsTable.Rows.Count
+ productsTable.Cell(i, 1).Range.Text = "Floor Grating " & gratingTable.Rows(0)("NAME") & " " &
+ gratingTable.Rows(0)("LOADBAR_HEIGHT") & "/" & gratingTable.Rows(0)("LOADBAR_THICKNESS")
+ If gratingTable.Rows(0)("SERRATED") Then
+ productsTable.Cell(i, 2).Range.Text = gratingTable.Rows(0)("NAME").substring(0, 1) & "S" &
+ gratingTable.Rows(0)("LOADBAR_HEIGHT") & Get_RandomNumber(10000000, 99999999)
+ Else
+ productsTable.Cell(i, 2).Range.Text = gratingTable.Rows(0)("NAME") & gratingTable.Rows(0)("LOADBAR_HEIGHT") &
+ Get_RandomNumber(10000000, 99999999)
+ End If
+ productsTable.Cell(i, 3).Range.Text = "5"
+ productsTable.Cell(i, 4).Range.Text = "20 000"
+ productsTable.Cell(i, 5).Range.Text = "100 000"
+ For j = 1 To productsTable.Columns.Count
+ productsTable.Cell(i, j).Range.Font.Size = 10
+ Next
+ Next
+
+
+ Dim lineBreak2 As Word.Paragraph
+ lineRange = doc.Bookmarks.Item("\endofdoc").Range
+ lineBreak2 = doc.Content.Paragraphs.Add(lineRange)
+ lineBreak2.Range.InsertParagraphBefore()
+ lineBreak2.Range.Text = ""
+ lineBreak2.Format.SpaceAfter = 20
+ lineBreak2.Range.InsertParagraphAfter()
+
+ Dim priceTable As Word.Table
+ tableRange = doc.Bookmarks.Item("\endofdoc").Range
+ priceTable = doc.Tables.Add(tableRange, 1, 2)
+ priceTable.Columns(1).SetWidth(370, 2)
+
+ priceTable.Cell(1, 1).Range.Text = "Total Price:"
+ priceTable.Cell(1, 1).Range.Font.Bold = True
+ priceTable.Cell(1, 1).Range.Font.Size = 20
+
+ priceTable.Cell(1, 2).Range.Text = "100 000"
+ priceTable.Cell(1, 2).Range.Font.Bold = True
+ priceTable.Cell(1, 2).Range.Font.Size = 20
+
+ priceTable.Cell(1, 1).Range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphRight
+ priceTable.Cell(1, 2).Range.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphRight
+ End Sub
+
+ Private Shared Function Get_RandomNumber(Min As Integer, Max As Integer) As Integer '
+ Static Generator As System.Random = New System.Random()
+ Return Generator.Next(Min, Max)
+ End Function
+End Class
diff --git a/Wardrobe/Wardrobe.vbproj b/Wardrobe/Wardrobe.vbproj
index 32d4dfe..e6172de 100644
--- a/Wardrobe/Wardrobe.vbproj
+++ b/Wardrobe/Wardrobe.vbproj
@@ -114,6 +114,7 @@
Settings.settings
True
+