Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- $entryDate = get-date -Format G
- $inputXML = @"
- <Window x:Class="WpfApplication2.MainWindow"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
- xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
- xmlns:local="clr-namespace:WpfApplication2"
- mc:Ignorable="d"
- Title="Braen Haledon Quarry Truck Que" Height="680.794" Width="777" Topmost="True">
- <Grid Margin="0,0,45,0">
- <Image x:Name="image" HorizontalAlignment="Left" Height="100" Margin="24,28,0,0" VerticalAlignment="Top" Width="100" Source="\\nas\IT\BRAEN STONE LOGO GREEN.jpg"/>
- <TextBlock x:Name="textBlock" HorizontalAlignment="Left" Height="100" Margin="174,28,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="16"><Run Text="Haledon Truck Que"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock1" HorizontalAlignment="Left" Height="100" Margin="224,135,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="14"><Run Text="Truck ID"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock2" HorizontalAlignment="Left" Height="100" Margin="353,135,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="14"><Run Text="Job ID"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock3" HorizontalAlignment="Left" Height="100" Margin="435,135,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="14"><Run Text="Amount"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock4" HorizontalAlignment="Left" Height="100" Margin="515,135,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="14"><Run Text="Cus ID"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock18" HorizontalAlignment="Left" Height="100" Margin="576,135,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="14"><Run Text="Product ID"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock19" HorizontalAlignment="Left" Height="100" Margin="135,135,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="14"><Run Text="Carrier ID"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock20" HorizontalAlignment="Left" Height="100" Margin="15,135,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text=""/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock5" HorizontalAlignment="Left" Height="100" Margin="560,34,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="14"><Run Text="Slot to Delete"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock6" HorizontalAlignment="Left" Height="100" Margin="675,203,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text="Slot 0"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock7" HorizontalAlignment="Left" Height="100" Margin="675,228,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text="Slot 1"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock8" HorizontalAlignment="Left" Height="100" Margin="675,251,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text="Slot 2"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock9" HorizontalAlignment="Left" Height="100" Margin="675,274,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text="Slot 3"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock10" HorizontalAlignment="Left" Height="100" Margin="675,297,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text="Slot 4"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock11" HorizontalAlignment="Left" Height="100" Margin="675,321,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text="Slot 5"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock12" HorizontalAlignment="Left" Height="100" Margin="675,345,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text="Slot 6"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock13" HorizontalAlignment="Left" Height="100" Margin="675,368,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text="Slot 7"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock14" HorizontalAlignment="Left" Height="100" Margin="675,389,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text="Slot 8"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock15" HorizontalAlignment="Left" Height="100" Margin="675,412,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text="Slot 9"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock16" HorizontalAlignment="Left" Height="100" Margin="675,435,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text="Slot 10"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <TextBlock x:Name="textBlock17" HorizontalAlignment="Left" Height="100" Margin="675,458,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="282" FontSize="12"><Run Text="Slot 11"/><InlineUIContainer>
- </InlineUIContainer></TextBlock>
- <Button x:Name="button" Content="Update Que" HorizontalAlignment="Left" Height="35" Margin="174,54,0,0" VerticalAlignment="Top" Width="121" FontSize="18.667"/>
- <TextBox x:Name="textBox" HorizontalAlignment="Left" Height="30" Margin="204,104,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="120" FontSize="16"/>
- <TextBox x:Name="textBox1" HorizontalAlignment="Left" Height="30" Margin="330,104,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="100" FontSize="16"/>
- <TextBox x:Name="textBox2" HorizontalAlignment="Left" Height="30" Margin="445,104,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="30" FontSize="16"/>
- <TextBox x:Name="textBox3" HorizontalAlignment="Left" Height="30" Margin="505,104,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="60" FontSize="16"/>
- <TextBox x:Name="textBox5" HorizontalAlignment="Left" Height="30" Margin="570,104,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="80" FontSize="16"/>
- <TextBox x:Name="textBox6" HorizontalAlignment="Left" Height="30" Margin="145,104,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="40" FontSize="16"/>
- <Button x:Name="button1" Content="Enter Truck" HorizontalAlignment="Left" Height="35" Margin="300,54,0,0" VerticalAlignment="Top" Width="121" FontSize="18.667"/>
- <Button x:Name="button2" Content="Remove from Que" HorizontalAlignment="Left" Height="35" Margin="434,54,0,0" VerticalAlignment="Top" Width="121" FontSize="13"/>
- <TextBox x:Name="textBox4" HorizontalAlignment="Left" Height="30" Margin="560,54,0,0" TextWrapping="Wrap" Text="" VerticalAlignment="Top" Width="120" FontSize="16"/>
- <ListView x:Name="listView" HorizontalAlignment="Left" Height="450" Margin="5,175,0,0" VerticalAlignment="Top" Width="668" FontSize="14">
- <ListView.View>
- <GridView>
- <GridViewColumn Header="C-ID" DisplayMemberBinding ="{Binding 'Carrier ID'}" Width="45"/>
- <GridViewColumn Header="Truck ID" DisplayMemberBinding ="{Binding 'Truck ID'}" Width="100"/>
- <GridViewColumn Header="Job ID" DisplayMemberBinding ="{Binding 'Job ID'}" Width="100"/>
- <GridViewColumn Header="Amount" DisplayMemberBinding ="{Binding 'Amount'}" Width="60"/>
- <GridViewColumn Header="Customer ID" DisplayMemberBinding ="{Binding 'Customer ID'}" Width="90"/>
- <GridViewColumn Header="Product ID" DisplayMemberBinding ="{Binding 'Product ID'}" Width="90"/>
- <GridViewColumn Header="Date of Entry" DisplayMemberBinding ="{Binding 'date of entry'}" Width="180"/>
- </GridView>
- </ListView.View>
- </ListView>
- </Grid>
- </Window>
- "@
- $inputXML = $inputXML -replace 'mc:Ignorable="d"','' -replace "x:N",'N' -replace '^<Win.*', '<Window'
- [void][System.Reflection.Assembly]::LoadWithPartialName('presentationframework')
- [xml]$XAML = $inputXML
- #Read XAML
- $reader=(New-Object System.Xml.XmlNodeReader $xaml)
- try{$Form=[Windows.Markup.XamlReader]::Load( $reader )}
- catch{Write-Host "Unable to load Windows.Markup.XamlReader. Double-check syntax and ensure .net is installed."}
- #===========================================================================
- # Store Form Objects In PowerShell
- #===========================================================================
- $xaml.SelectNodes("//*[@Name]") | %{Set-Variable -Name "WPF$($_.Name)" -Value $Form.FindName($_.Name)}
- Function Get-FormVariables{
- if ($global:ReadmeDisplay -ne $true){Write-host "If you need to reference this display again, run Get-FormVariables" -ForegroundColor Yellow;$global:ReadmeDisplay=$true}
- write-host "Found the following interactable elements from our form" -ForegroundColor Cyan
- get-variable WPF*
- }
- #Get-FormVariables
- #===========================================================================
- # make the objects work
- #===========================================================================
- Function TQue{
- $truckque = @()
- $adOpenStatic = 3
- $adLockOptimistic = 3
- $objConnection = New-Object -comobject ADODB.Connection
- $objRecordset = New-Object -comobject ADODB.Recordset
- $objConnection.Open("Provider=Microsoft.ACE.OLEDB.12.0; Data Source = c:\Database\gen3data.mdb")
- $objRecordset.Open("Select * from QueueTrucks", $objConnection,$adOpenStatic,$adLockOptimistic)
- $objRecordset.MoveFirst()
- do { $a = $objRecordset.Fields.Item("Truck_ID").Value
- $b = $objRecordset.Fields.Item("Job_ID").Value
- $c = $objRecordset.Fields.Item("Amount").Value
- $d = $objRecordset.Fields.Item("LastModifieddate").Value
- $e = $objRecordset.Fields.Item("Customer_ID").Value
- $f = $objRecordset.Fields.Item("Product_ID").Value
- $g = $objRecordset.Fields.Item("Carrier_ID").Value
- $truckq = [PSCustomobject]@{
- "Truck ID" = $a
- "Job ID" = $b
- "Amount" = $c
- "date of entry" = $d
- "Customer ID" = $e
- "Product ID" = $f
- "Carrier ID" = $g
- }
- $truckque += $truckq
- $objRecordset.MoveNext() }
- until ($objRecordset.EOF -eq $True)
- $objRecordset.Close()
- $objConnection.Close()
- $truckque | Select-Object @{Name='Carrier ID';Ex={$_."Carrier ID"}},
- @{Name='Truck ID';Ex={$_."Truck ID"}},
- @{Name='Customer ID';Ex={$_."Customer ID"}},
- @{Name='Job ID';Ex={$_."Job ID"}},
- @{Name='Product ID';Ex={$_."Product ID"}},
- @{Name='Amount';Ex={$_."Amount"}},
- @{Name='Date of Entry';Ex={$_."Date of Entry"}}
- }
- Function AddQue {
- param($truckid,$custid,$jobid,$amt,$proarea,$productID,$carrierID)
- $adOpenStatic = 3
- $adLockOptimistic = 3
- $objConnection = New-Object -comobject ADODB.Connection
- $objRecordset = New-Object -comobject ADODB.Recordset
- $objConnection.Open("Provider=Microsoft.ACE.OLEDB.12.0; Data Source = c:\Database\Gen3Data.mdb")
- $objRecordset.Open("Select * from QueueTrucks", $objConnection,$adOpenStatic,$adLockOptimistic)
- $objRecordset.MoveLast()
- $objRecordset.AddNew()
- $objRecordset.Fields.Item("Truck_ID").Value = $truckid
- $objRecordset.Fields.Item("Customer_ID").Value = $custid
- $objRecordset.Fields.Item("Job_ID").Value = $JobID
- $objRecordset.Fields.Item("Amount").Value = $amt
- $objRecordset.Fields.Item("LastModifieddate").Value = Get-Date -Format G
- $objRecordset.Fields.Item("ProcessAreaType").Value = 2
- $objRecordset.Fields.Item("Product_ID").Value = $productID
- $objRecordset.Fields.Item("Area_ID").Value = 0
- $objRecordset.Fields.Item("Carrier_ID").Value = $carrierID
- $objRecordset.Update()
- $objRecordset.Close()
- $objConnection.Close()
- }
- Function RemoveQue {
- param($trknum)
- $adOpenStatic = 3
- $adLockOptimistic = 3
- $objConnection = New-Object -comobject ADODB.Connection
- $objRecordset = New-Object -comobject ADODB.Recordset
- $objConnection.Open("Provider=Microsoft.ACE.OLEDB.12.0; Data Source = c:\Database\Gen3Data.mdb")
- $objRecordset.Open("Select * from QueueTrucks", $objConnection,$adOpenStatic,$adLockOptimistic)
- $objRecordset.Move($trknum)
- $objRecordset.Delete()
- $objRecordset.Update()
- $objRecordset.Close()
- $objConnection.Close()
- }
- Tque | % {$WPFlistView.AddChild($_)}
- $WPFbutton.Add_Click({
- $WPFlistView.Items.Clear()
- start-sleep -Milliseconds 840
- Tque | % {$WPFlistView.AddChild($_)}
- })
- ## Process Area 2 for drum plant
- $WPFbutton1.Add_Click({
- $WPFlistView.Items.Clear()
- start-sleep -Milliseconds 840
- AddQue -truckid $WPFtextBox.Text -jobid $WPFtextBox1.Text -amt $WPFtextBox2.Text -custid $WPFtextBox3.Text -proarea "2" -productID $WPFtextBox5.text -carrierID $WPFtextBox6.Text
- Tque | % {$WPFlistView.AddChild($_)}
- })
- $WPFbutton2.Add_Click({
- $WPFlistView.Items.Clear()
- start-sleep -Milliseconds 840
- RemoveQue -trknum $WPFtextBox4.Text
- Tque | % {$WPFlistView.AddChild($_)}
- })
- ########-------------# Mount Actions #------------#########
- $WPFtextBox.add_MouseEnter({$WPFtextBlock20.Text = "Enter TRUCK ID"})
- $WPFtextBox.Add_MouseLeave({$WPFtextBlock20.Text = ""})
- $WPFtextBox1.add_MouseEnter({$WPFtextBlock20.Text = "Enter Job ID"})
- $WPFtextBox1.Add_MouseLeave({$WPFtextBlock20.Text = ""})
- $WPFtextBox2.add_MouseEnter({$WPFtextBlock20.Text = "Input Amount"})
- $WPFtextBox2.Add_MouseLeave({$WPFtextBlock20.Text = ""})
- $WPFtextBox3.add_MouseEnter({$WPFtextBlock20.Text = "Input Customer ID"})
- $WPFtextBox3.Add_MouseLeave({$WPFtextBlock20.Text = ""})
- $WPFtextBox5.add_MouseEnter({$WPFtextBlock20.Text = "Input Product ID"})
- $WPFtextBox5.Add_MouseLeave({$WPFtextBlock20.Text = ""})
- $WPFtextBox6.add_MouseEnter({$WPFtextBlock20.Text = "Enter Carrier ID"})
- $WPFtextBox6.Add_MouseLeave({$WPFtextBlock20.Text = ""})
- $WPFtextBox4.add_MouseEnter({$WPFtextBlock20.Text = "Pick Slot from Table"})
- $WPFtextBox4.Add_MouseLeave({$WPFtextBlock20.Text = ""})
- #===========================================================================
- # Shows the form
- #===========================================================================
- #write-host "To show the form, run the following" -ForegroundColor Cyan
- $Form.ShowDialog() | out-null
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement