PSLine2000Documentation/Forms/14_ Process Sheet old.md

663 lines
18 KiB
Markdown

# 14_ Process Sheet old
---
## Record Source
- [[Queries/UniversalQ]]
## Controls
| Control Name | Reference |
|--------------|-----------|
| Field113 | MetalType (from [[Queries/UniversalQ]]) |
| Field113 (Row Source) | [[Tables/[metalQ1];]] |
| DatasheetFlag (Row Source) | |
| Field325 | Warehouse (from [[Queries/UniversalQ]]) |
| Field325 (Row Source) | |
| BlankSize | BlankSize (from [[Queries/UniversalQ]]) |
| PartSize | PartSize (from [[Queries/UniversalQ]]) |
| GrossWt | GrossWt (from [[Queries/UniversalQ]]) |
| ActualWt | ActualWt (from [[Queries/UniversalQ]]) |
| Utilization | Utilization (from [[Queries/UniversalQ]]) |
| SheetSize | SheetSize (from [[Queries/UniversalQ]]) |
| GrainDir | GrainDir (from [[Queries/UniversalQ]]) |
| GrainDir (Row Source) | |
| BlocksPerSheet | BlocksPerSheet (from [[Queries/UniversalQ]]) |
| BlanksPerBlock | BlanksPerBlock (from [[Queries/UniversalQ]]) |
| PartsPerSheet | PartsPerSheet (from [[Queries/UniversalQ]]) |
| ActualPartHeight | ActualPartHeight (from [[Queries/UniversalQ]]) |
| PartCost | PartCost (from [[Queries/UniversalQ]]) |
| Field238 | PartsPerBlank (from [[Queries/UniversalQ]]) |
| PartNumber | PartNumber (from [[Queries/UniversalQ]]) |
| PartName | PartName (from [[Queries/UniversalQ]]) |
| IssueNumber | IssueNumber (from [[Queries/UniversalQ]]) |
| IssueDate | IssueDate (from [[Queries/UniversalQ]]) |
| PreviousIssue | PreviousIssue (from [[Queries/UniversalQ]]) |
| PreviousDate | PreviousDate (from [[Queries/UniversalQ]]) |
| Programmer | Programmer (from [[Queries/UniversalQ]]) |
| PrintSize | PrintSize (from [[Queries/UniversalQ]]) |
| History | History (from [[Queries/UniversalQ]]) |
| MetalType | MetalType (from [[Queries/UniversalQ]]) |
| MetalType (Row Source) | [[Tables/[metalQ1];]] |
| FirstDim | FirstDim (from [[Queries/UniversalQ]]) |
| SecDim | SecDim (from [[Queries/UniversalQ]]) |
| BotTrimCut | BotTrimCut (from [[Queries/UniversalQ]]) |
| TopTrimCut | TopTrimCut (from [[Queries/UniversalQ]]) |
| CutType | CutType (from [[Queries/UniversalQ]]) |
| CutType (Row Source) | |
| Deburr | Deburr (from [[Queries/UniversalQ]]) |
| Deburr (Row Source) | |
| PartWidth | PartWidth (from [[Queries/UniversalQ]]) |
| ActualPartWidth | ActualPartWidth (from [[Queries/UniversalQ]]) |
| PartsPerBlank | PartsPerBlank (from [[Queries/UniversalQ]]) |
| PressBrake | PressBrake (from [[Queries/UniversalQ]]) |
| PressBrake (Row Source) | [[Tables/[PressBrakes];]] |
| EntPartHeight | PartHeight (from [[Queries/UniversalQ]]) |
| Field240 | CellDeburrTypes (from [[Queries/UniversalQ]]) |
| Field240 (Row Source) | |
| SavedProcesses (Row Source) | [[Tables/[QWorkCenters];]] |
| AddnlDeburrInches | AddnlDeburrInches (from [[Queries/UniversalQ]]) |
| Reason | Reason (from [[Queries/UniversalQ]]) |
| PunchPressOption | PunchOption (from [[Queries/UniversalQ]]) |
| PunchCount | PunchPartsPerStrip (from [[Queries/UniversalQ]]) |
| PunchDie | PunchNumber (from [[Queries/UniversalQ]]) |
| PunchDie (Row Source) | [[Tables/punchpressQ1;]] |
| GrainShearChk | GrainShear (from [[Queries/UniversalQ]]) |
| PunchStd | PunchStd (from [[Queries/UniversalQ]]) |
| PhantomNumber | PhantomNumber (from [[Queries/UniversalQ]]) |
| Gr3 | GrainNone (from [[Queries/UniversalQ]]) |
| PaperLaserFlag | PaperLaserFlag (from [[Queries/UniversalQ]]) |
## VBA Code
```vba
Option Compare Database 'Use database order for string comparisons
Dim dwncntL%, dwncntT%, dwncnt%, ToyClick%, ToyCaption%, Toys$(10)
Private Sub addPr_Click()
NewPartName_Parm$ = "NEW"
Call AddPartButton
End Sub
Private Sub Button184_Click()
Call Add_Additional_Process
End Sub
Private Sub Button190_Click()
On Error GoTo Err_Button190_Click
DoCmd.Quit
Exit_Button190_Click:
Exit Sub
Err_Button190_Click:
MsgBox Error$
Resume Exit_Button190_Click
End Sub
Private Sub Button193_Click()
NewPartName_Parm$ = Me!PartNumber
Call AddPartButton
End Sub
Private Sub Button194_Click()
On Error GoTo Err_Button194_Click
Dim DocName As String
Dim MyForm As Form
DocName = PrimaryScreen$
Set MyForm = Screen.ActiveForm
DoCmd.SelectObject A_FORM, DocName, True
DoCmd.PrintOut
DoCmd.SelectObject A_FORM, MyForm.name, False
Exit_Button194_Click:
Exit Sub
Err_Button194_Click:
MsgBox Error$
Resume Exit_Button194_Click
End Sub
Private Sub Button196_Click()
On Error GoTo Err_Button196_Click
If currform![CalculationStatus] <> 0 Then
M$ = "Unable to Print Report." + Chr$(13) + "Calculation Status Of Part in Error."
MsgBox M$
Exit Sub
End If
Refresh
DocName = "Process Sheet Print"
DoCmd.OpenReport DocName, A_PRINTALL, "Q1-14" + Chr$(34)
Exit_Button196_Click:
Exit Sub
Err_Button196_Click:
MsgBox Error$
Resume Exit_Button196_Click
End Sub
Private Sub Button200_Click()
Dim MainDB As Database, MainSet As Recordset
Dim MachNamesDB As Database, MachNamesSet As Recordset
Dim MachQDB As Database, MachQSet As Recordset
Set MainDB = DBEngine.Workspaces(0).Databases(0)
Set MachNamesDB = DBEngine.Workspaces(0).Databases(0)
Set MachQDB = DBEngine.Workspaces(0).Databases(0)
Set MachNamesSet = MachNamesDB.OpenRecordset("MachineNames", DB_OPEN_TABLE) ' Create dynaset.
Set MachQSet = MachQDB.OpenRecordset("Machines", DB_OPEN_TABLE) ' Create dynaset.
Set MainSet = MainDB.OpenRecordset("Process", DB_OPEN_TABLE) ' Create dynaset.
' Set MachNamesSet = StMachNamesSet
' Set MachQSet = StMachQSet
' Set MainSet = StMainSet
PartN$ = Me![PartNumber]
MainSet.Index = "PrimaryKey"
MachQSet.Index = "PartNumber"
MachNamesSet.MoveFirst
While Not (MachNamesSet.EOF)
A$ = MachNamesSet.MachineName
GoSub search
If Not (fnd) Then
MachQSet.AddNew
MachQSet.MachineName = A$
MachQSet.Tool = "***"
MachQSet.PartNumber = PartN$
MachQSet.Update
End If
MachNamesSet.MoveNext
Wend
Refresh
Exit Sub
search:
MachQSet.MoveFirst
MachQSet.Seek "=", PartN$, A$
If MachQSet.NoMatch Then
fnd = False
Else
fnd = True
End If
Return
End Sub
Private Sub Button244_Click()
On Error GoTo Err_Button224_Click
Dim DocName As String
Dim LinkCriteria As String
DoCmd.Hourglass True
DocName = "Data Sheet Select"
DoCmd.OpenForm DocName, , , LinkCriteria
DoCmd.FindRecord Me![PartNumber]
DoCmd.SelectObject A_FORM, PrimaryScreen$
DoCmd.Close
Exit_Button224_Click:
DoCmd.Hourglass False
Exit Sub
Err_Button224_Click:
MsgBox Error$
Resume Exit_Button224_Click
End Sub
Private Sub Button246_Click()
Call HistoryR
End Sub
Private Sub Button247_Click()
Dim DocName As String
DocName = "YESORNO"
YesOrNoStr$ = "delete this part"
DoCmd.OpenForm DocName
Do Until YESORNO% > 0
DoEvents
Loop
DoCmd.Close A_FORM, DocName
If YESORNO% <> 1 Then
Exit Sub
End If
Call Delete_Part
End Sub
Private Sub Button248_Click()
Call Edit_The_Shear_Files
End Sub
Private Sub Button249_Click()
Call Find_By_PartNumber
End Sub
Private Sub Button288_Click()
PN$ = currform![PartNumber]
thispn$ = " "
' DoCmd GoToRecord , , A_FIRST
Do
Call Calculate_Button
On Error GoTo button288_error
DoCmd.GoToRecord , , A_NEXT
On Error GoTo 0
nextpn$ = currform![PartNumber]
If thispn$ = nextpn$ Then
Exit Do
End If
thispn$ = nextpn$
Loop
button288_last:
Call GOTOPARTNUMBER(PN$, PrimaryScreen$)
Call Button291_Click
Exit Sub
button288_error:
Resume button288_last
End Sub
Private Sub Button289_Click()
End Sub
Private Sub Button290_Click()
PN$ = currform![PartNumber]
thispn$ = " "
DoCmd.GoToRecord , , A_FIRST
Do
Refresh
DocName = "Process Sheet Print"
DoCmd.OpenReport DocName, A_PRINTALL, "Q1-14" + Chr$(34)
On Error GoTo button290_error
DoCmd.GoToRecord , , A_NEXT
On Error GoTo 0
nextpn$ = currform![PartNumber]
If thispn$ = nextpn$ Then
Exit Do
End If
thispn$ = nextpn$
Loop
button290_last:
Call GOTOPARTNUMBER(PN$, PrimaryScreen$)
Call Button291_Click
Exit Sub
button290_error:
Resume button290_last
End Sub
Private Sub Button291_Click()
If Button291.Width = Int(0.5563 * 1440) Then
Button291.Left = 0.0521 * 1440
Button291.Width = 1.7021 * 1440
Button291.Caption = "DO ALL"
Else
Button291.Left = 1.1979 * 1440
Button291.Width = 0.5563 * 1440
Button291.Caption = "Do All Saftey"
End If
End Sub
Private Sub Button294_Click()
PN$ = currform!PartNumber
Phn$ = itsaNull$(currform!PhantomNumber)
If PN$ <> Phn$ Then
If Phn$ <> "" Then
Call GOTOPARTNUMBER(Phn$, PrimaryScreen$)
End If
End If
End Sub
Private Sub Button309_Click()
On Error GoTo Err_Button309_Click
If currform![CalculationStatus] <> 0 Then
M$ = "Unable to Print Report." + Chr$(13) + "Calculation Status Of Part in Error."
MsgBox M$
Exit Sub
End If
Refresh
DocName = "Process Sheet Print"
DoCmd.OpenReport DocName, A_PREVIEW, "Q1-14" + Chr$(34)
Exit_Button309_Click:
Exit Sub
Err_Button309_Click:
MsgBox Error$
Resume Exit_Button309_Click
End Sub
Private Sub Button322_Click()
Call diskout
End Sub
Private Sub Button324_Click()
'add a data sheet for Eugene!!!
End Sub
Private Sub Button327_Click()
DoCmd.Hourglass True
p$ = currform.PartNumber
If PaperLaserFlag Then PaperFlag$ = "1" Else PaperFlag$ = "0"
Call LaserTapeGenerate(p$, PaperFlag$)
DoCmd.Hourglass False
Refresh
End Sub
Private Sub buttUpload_Click()
On Error GoTo Err_buttUpload_Click
Dim x As Integer
Dim AppName As String
AppName = "S:\UPLOADER.BAT"
x = Shell(AppName, 1)
Exit_buttUpload_Click:
Exit Sub
Err_buttUpload_Click:
MsgBox Error$
Resume Exit_buttUpload_Click
End Sub
Private Sub CalcCNCtape_Click()
DoCmd.Hourglass True
Call Button200_Click
p$ = currform.PartNumber
Call CalcCNCRunTimes(p$)
DoCmd.Hourglass False
Refresh
End Sub
Private Sub Calculate_Click()
Dim DocName As String
Call Calculate_Button
End Sub
Private Sub cmdTricks_Click()
On Error GoTo Err_cmdTricks_Click
Dim DocName As String
Dim LinkCriteria As String
DocName = "Tricks"
DoCmd.OpenForm DocName, , , LinkCriteria
Exit_cmdTricks_Click:
Exit Sub
Err_cmdTricks_Click:
MsgBox Error$
Resume Exit_cmdTricks_Click
End Sub
Private Sub CutType_Click()
Call CutTypeFormSettings
End Sub
Private Sub FindMakeButton_Click()
Call Find_By_MakeNumber
End Sub
Private Sub FindPhantom_Click()
Call Find_By_PartNumber
End Sub
Private Sub Form_Current()
'
' Code to indicate record is locked (Requires a text object called LOCKEDRECORD
'
'
A$ = itsaNull$(Me!IssueNumber)
If A$ = "" Then A$ = " "
l = 0
On Error GoTo BadRecord
Me!IssueNumber = A$
If l <> 0 Then
LockedRecord.Visible = True
Else
LockedRecord.Visible = False
End If
On Error GoTo 0
Call CutTypeFormSettings
Call PBFormView
GrainFromRec
Call ErrorMessages
Exit Sub
BadRecord:
l = 1
Resume Next
End Sub
Private Sub Form_Load()
Set currform = Me
On Error GoTo FL_die
dwncntT% = 1
dwncntL% = 1
TextCalcErr.Visible = False
TextCalcErr.Top = 2.58 * 1440
PrimaryScreen$ = "14" + Chr$(34) + " Process Sheet"
On Error GoTo FL_die
DoCmd.GoToControl "PartName"
DoCmd.GoToControl "PartNumber"
On Error GoTo 0
ToyDepartment:
On Error Resume Next
Toys$(0) = "DO NOT PRESS THIS BUTTON"
Toys$(1) = "HEY, I told you not to do that!"
Toys$(2) = "What Kinda Moron are you?"
Toys$(3) = "I'm Warning you...."
Toys$(4) = "If you think this is a joke..."
Toys$(5) = "OK, Look... if you do that again..."
Toys$(6) = "What's a matter buddy can't you read?"
Toys$(7) = "I won't be held responsible for happens next!"
Toys$(8) = "If you do that again... You Will Be sorry!"
Toys$(9) = "I tried to warn you!"
Toys$(10) = "That was fun but . . . DO NOT PRESS THIS BUTTON"
Killer.Top = 0
Killer.Left = 0
Killer.Height = 9285
Killer.Width = 10785
Exit Sub
FL_die:
If Err = 2109 Then
End
End If
Resume Next
End Sub
Private Sub Form_Timer()
If dwncnt% = 1 Then
Steps% = 100
Toy.Visible = True
Toy.Top = Toy.Top + dwncntT% * Steps%
Toy.Left = Toy.Left + dwncntL% * Steps%
If ((Toy.Top + dwncntT% * Steps%) > 7000) Then
dwncntT% = -1
Toy.Top = 7000
End If
If ((Toy.Top + dwncntT% * Steps%) < 0) Then
Toy.Top = 0
dwncntT% = 1
End If
If ((Toy.Left + dwncntL% * Steps%) > 7000) Then
Toy.Left = 7000
dwncntL% = -1
End If
If ((Toy.Left + dwncntL% * Steps%) < 0) Then
Toy.Left = 0
dwncntL% = 1
End If
End If
If ToyClick% = 1 Then
ToyClick% = 0
ToyCaption% = ToyCaption% + 1
If ToyCaption% > 10 Then
ToyCaption% = 0
dwncnt% = 0
Toy.FontSize = 8
Toy.Height = 840
Toy.Width = 870
Toy.Top = 945
Toy.Left = 9465
End If
If ToyCaption% = 9 Then
Killer.Visible = True
Else
Killer.Visible = False
End If
Toy.Caption = Toys$(ToyCaption%)
End If
End Sub
Private Sub GrainShearChk_Click()
Call CutTypeFormSettings
End Sub
Private Sub GrDirOpt_Click()
NewGrain
End Sub
Private Sub MetalType_Click()
Call CutTypeFormSettings
End Sub
Private Sub PressBrake_Click()
Call PBFormView
End Sub
Private Sub PressBrakeSubForm_Enter()
Text234.Visible = True
Text237.Visible = True
End Sub
Private Sub PressBrakeSubForm_Exit(Cancel As Integer)
Text234.Visible = False
Text237.Visible = False
End Sub
Private Sub PunchDie_AfterUpdate()
If (PunchDie = "!NONE!") Or (Trim$(PunchDie) = "") Then
PunchPressOption.Visible = False
PunchCount.Visible = False
PunchStd.Visible = False
Else
PunchPressOption.Visible = True
If CutType = "Single" Then
PunchCount.Visible = False
PunchStd.Visible = True
Else
PunchCount.Visible = True
PunchStd.Visible = True
End If
End If
End Sub
Private Sub PunchPressOption_AfterUpdate()
If (CutType <> "Single") Then
If PunchPressOption = 2 Then
PunchCount.Visible = True
Else
PunchCount.Visible = True
End If
Else
PunchCount.Visible = False
End If
PunchStd.Visible = True
End Sub
Private Sub Toy_Click()
If ToyCaption% = 0 Then
Toy.FontSize = 18
Toy.Height = 1305
Toy.Width = 3570
dwncnt% = 1
End If
ToyClick% = 1
End Sub
```
## What it does
**Button Click Event Handlers in VBA Code**
This code contains several Button click event handlers, each responsible for performing a specific task. Here's a detailed description of what each button does:
### 1. `addPr` Button (Command Button 184)
When clicked, this button calls the `AddPartButton` procedure and passes the string `"NEW"` as an argument.
### 2. `Button190` Command Button
When clicked, this button attempts to quit the database application. If an error occurs during this process, it displays an error message using `MsgBox Error$`. The `Exit_Button190_Click` label is then executed to exit the procedure.
### 3. `Button193` Command Button
Similar to `addPr`, when clicked, this button calls `AddPartButton` and passes the current value of `Me!PartNumber` as an argument.
### 4. `Button194` Command Button
When clicked, this button attempts to print a report using `DoCmd.PrintOut`. If the calculation status is not 0, it displays an error message using `MsgBox Error$. The procedure then calls `Exit_Button194_Click` to exit. If an error occurs during printing, it displays an error message and continues executing.
### 5. `Button196` Command Button
When clicked, this button checks the calculation status of the part in error. If so, it displays an error message using `MsgBox Error$. The procedure then calls `Refresh` to refresh the data. Otherwise, it opens a report named "Process Sheet Print" and prints it.
### 6. `Button200` Command Button
When clicked, this button opens several databases (`MainDB`, `MachNamesDB`, and `MachQDB`) and sets up Recordsets for various tables. It then performs the following actions:
* Moves to the first record in the "MachineNames" table.
* Calls the `search` subroutine.
* If no match is found, adds a new record to the "Machines" table using the machine name from "MachineNames".
### 7. `Button224` Command Button
When clicked, this button opens an hourglass cursor and displays a form named "Data Sheet Select". It then searches for a record in the database corresponding to the current value of `Me!PartNumber` using `DoCmd.FindRecord`. Finally, it closes the form.
### 8. `Button246` Command Button
When clicked, this button calls the `HistoryR` subroutine (not shown in the provided code).
### 9. `Button247` Command Button
When clicked, this button opens a form named "YESORNO", displays a message prompt with the string `"delete this part"`, and waits for user input using `Do Until YESORNO% \u003e 0`. If the user clicks Cancel, the procedure exits. Otherwise, it calls the `Delete_Part` subroutine (not shown in the provided code).
### 10. `Button248` Command Button
When clicked, this button calls the `Edit_The_Shear_Files` subroutine (not shown in the provided code).
### 11. `Button249` Command Button
When clicked, this button calls the `Find_By_PartNumber` procedure (not shown in the provided code).
### 12. `Button288` Command Button
When clicked, this button sets a variable (`PN$`) to the current value of `currform![PartNumber]`.
Note: The procedures mentioned in the code but not shown here are likely defined elsewhere in the VBA project and perform specific tasks related to data manipulation, printing, or report generation.