所以,首先,让我开始说它是F-O-R-E-V-E-R,因为我已用Vb编码......不要判断。计算如下:
Dim laborCost As Decimal
laborCost = (loadLabor + unLabor + dryPckge) / 60 * costpHour
lblLabCostpRun.Text = laborCost.ToString("C2")
我觉得自己像个白痴,因为我知道它的一些简单和我失踪的东西...一切都已经定义了...无论我放入什么......我得到0.每个发臭的时间。我究竟做错了什么?
来源
'Option Explicit On
'Option Strict On
'Option Infer Off
Public Class Job_Shop
Dim wearRate As Decimal
Dim density As Decimal
Dim capacity As Decimal
Dim costpGallon As Decimal
Dim cuFt As Decimal
Dim costpHour As Decimal = 20
Dim machineCost As Decimal
Dim bOH As Decimal
Dim facOH As Decimal
Dim profit As Decimal = 0.3
Dim processTime As Decimal
Dim loadLabor As Decimal
Dim unLabor As Decimal
Dim dryPckge As Decimal
Dim pcPerLoad As Decimal
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
cmbbxVMachineName.Items.Add("Torex TH-299 F")
cmbbxVMachineName.Items.Add("Sweco 1.2")
cmbbxVMachineName.Items.Add("Torex 6026 A")
cmbbxVMachineName.Items.Add("Torex 6026 B")
cmbbxVMachineName.Items.Add("Sweco FM10")
cmbbxVMachineName.Items.Add("Sweco FM7")
cmbbxVMachineName.Items.Add("VT-5524 F - A")
cmbbxVMachineName.Items.Add("VT-5524 F - B")
cmbbxVMachineName.Items.Add("VTHT-2450")
cmbbxBMachineName.Items.Add("BB6")
cmbbxBMachineName.Items.Add("RS 6060 Rotating Head")
cmbbxBMachineName.Items.Add("PF 3648 SRC")
cmbbxBMachineName.Items.Add("PF 3648 SRC - Basket")
cmbbxVibMedia.Items.Add("HD-1 3/4 Cone")
cmbbxVibMedia.Items.Add("F 3/16 Cyl.")
cmbbxVibMedia.Items.Add("ECH 7/8 T2")
cmbbxVibMedia.Items.Add("ECH 7/16 Cyl.")
cmbbxVibMedia.Items.Add("3/16 Steel Ball Cone")
cmbbxVibMedia.Items.Add("UFX 3/8 X 3/8 ACT")
cmbbxVibMedia.Items.Add("XC 7/8 Cyl.")
cmbbxVibMedia.Items.Add("LD 2 3/4 Cone")
cmbbxVibMedia.Items.Add("HD-1 Tri Star 1-3/8 X 1/2")
cmbbxVibMedia.Items.Add("5/16 Steel Cone")
cmbbxVibMedia.Items.Add("25/32 Steel Cone")
cmbbxBlastMedia.Items.Add("S-170")
cmbbxBlastMedia.Items.Add("B-120")
cmbbxBlastMedia.Items.Add("BT-8 & BT-18")
cmbbxBlastMedia.Items.Add("20-70 A/O")
cmbbxBlastMedia.Items.Add("120-220 A/O")
cmbbxBlastMedia.Items.Add("Poly V 16/20 IG")
cmbbxBlastMedia.Items.Add("WB #3")
cmbbxPCompName.Items.Add("211")
cmbbxPCompName.Items.Add("551")
cmbbxPCompName.Items.Add("553")
cmbbxPCompName.Items.Add("4677")
cmbbxPCompName.Items.Add("842")
cmbbxPCompName.Items.Add("320")
cmbbxLCompName.Items.Add("103")
cmbbxLCompName.Items.Add("307")
cmbbxProcessTime.Items.Add("1-10 Minutes")
cmbbxProcessTime.Items.Add("11-20 Minutes")
cmbbxProcessTime.Items.Add("21-30 Minutes")
cmbbxProcessTime.Items.Add("31-40 Minutes")
cmbbxProcessTime.Items.Add("41-50 Minutes")
cmbbxProcessTime.Items.Add("51-60 Minutes")
cmbbxProcessTime.Items.Add("61-70 Minutes")
If cmbbxProcessTime.Text = "1-10 Minutes" Then
processTime = 1
End If
cmbbxLoadLabor.Items.Add("1-10 Minutes")
If cmbbxLoadLabor.Text = "1-10 Minutes" Then
loadLabor = 1
End If
cmbbxLoadLabor.Items.Add("11-20 Minutes")
cmbbxLoadLabor.Items.Add("21-30 Minutes")
cmbbxLoadLabor.Items.Add("31-40 Minutes")
cmbbxLoadLabor.Items.Add("41-50 Minutes")
cmbbxLoadLabor.Items.Add("51-60 Minutes")
cmbbxUnLabor.Items.Add("1-10 Minutes")
If cmbbxUnLabor.Text = "1-10 Minutes" Then
unLabor = 1
End If
cmbbxUnLabor.Items.Add("11-20 Minutes")
cmbbxUnLabor.Items.Add("21-30 Minutes")
cmbbxUnLabor.Items.Add("31-40 Minutes")
cmbbxUnLabor.Items.Add("41-50 Minutes")
cmbbxUnLabor.Items.Add("51-60 Minutes")
cmbbxDryPckage.Items.Add("1-10 Minutes")
If cmbbxDryPckage.Text = "1-10 Minutes" Then
dryPckge = 1000
End If
cmbbxDryPckage.Items.Add("11-20 Minutes")
cmbbxDryPckage.Items.Add("21-30 Minutes")
cmbbxDryPckage.Items.Add("31-40 Minutes")
cmbbxDryPckage.Items.Add("41-50 Minutes")
cmbbxDryPckage.Items.Add("51-60 Minutes")
cmbbxPcperLoad.Items.Add("1-10 Pieces")
If cmbbxPcperLoad.Text = "1-10 Minutes" Then
pcPerLoad = 10000
End If
cmbbxPcperLoad.Items.Add("11-20 Pieces")
cmbbxPcperLoad.Items.Add("21-50 Pieces")
cmbbxPcperLoad.Items.Add("51-100 Pieces")
cmbbxPcperLoad.Items.Add("101-250 Pieces")
cmbbxPcperLoad.Items.Add("251-500 Pieces")
cmbbxPcperLoad.Items.Add("501-1000 Pieces")
End Sub
Private Sub btnExit_Click(sender As Object, e As EventArgs) Handles btnExit.Click
Me.Close()
End Sub
Private Sub btnCalc_Click(sender As Object, e As EventArgs) Handles btnCalc.Click
Dim laborCost As Decimal
laborCost = (loadLabor + unLabor + dryPckge) / 60 * costpHour
lblLabCostpRun.Text = laborCost.ToString("C2")
'lblLabCostpRun.Text = laborCost
'lblLabCostpRun.Text = (loadLabor + unLabor + dryPckge) / 60 * costpHour
End Sub
End Class
答案 0 :(得分:0)
如果loadLabor
和unLabor
以及dryPckge
是整数,则除以将得到舍入到最接近整数的值。首先尝试乘以:
Dim laborCost As Decimal laborCost = costpHour * (loadLabor + unLabor
+ dryPckge) / 60 lblLabCostpRun.Text = laborCost.ToString("C2")
...或在计算前将每个值转换为小数。
最后,如果你的任何一个变量为零,你的答案就会为零。应该不言而喻,但我在这里说。