|
|
|
Source คำนวณค่าเสื่อมราคา ใครพอมีตัวอย่างแนะนำหน่อยนะครับ |
|
|
|
|
|
|
|
Code (C#)
private void btnDepEx_Click(object sender, EventArgs e)
{
double Damount;
double Dscrap;
double Y;
double CAdd;
double CAdd1;
string strOut = "";
DateTime Edate1 = new DateTime(dtpeqm.Value.Year,
dtpeqm.Value.Month,
dtpeqm.Value.Day);
DateTime Ddate1 = new DateTime(dtp1.Value.Year,
dtp1.Value.Month,
dtp1.Value.Day);
TimeSpan ts = new TimeSpan();
ts = Ddate1.Subtract(Edate1);
double Day1 = Convert.ToDouble(ts.TotalDays);
Damount = Convert.ToDouble(txtamount.Text.ToString());
Dscrap = Convert.ToDouble(txtscrap.Text.ToString());
Y = Convert.ToInt32(txtYear.Text.ToString());
for (int i= lsvDep.Items.Count+1; i <= Y; i++)
{
CAdd = (double)(Damount - Dscrap) * 0.20;
CAdd1 = (double)(i / Y) * (Damount - Dscrap) * (356 / 356);
string[] YearDep = new string[] { Convert.ToString(i), Convert.ToString(CAdd), Convert.ToString(CAdd1), Convert.ToString(Damount - CAdd1) };
ListViewItem lvi = new ListViewItem(YearDep);
lsvDep.Items.Add(lvi);
txtout.Text = strOut + Day1+"วัน";
}
}
Tag : .NET, Ms SQL Server 2005, VBScript, Crystal Report, Win (Windows App), VS 2005 (.NET 2.x)
|
ประวัติการแก้ไข 2010-09-12 23:05:04 2010-09-12 23:06:44
|
|
|
|
|
Date :
2010-09-07 13:44:20 |
By :
worlord |
View :
4994 |
Reply :
9 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คุณใใส่ผิดป๊ะนี่ -*-
|
|
|
|
|
Date :
2010-09-07 14:21:43 |
By :
deawx |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (VB.NET)
'//พอดีทำระบบพัสดุให้กระทรวงอยู่ หลังไมได้ครับถ้าต้องการสอบถามแลกเปลี่ยนความรู้เพิ่มเติมกัน ผมก็มีคำถามเหมือนกัน แลกเปลี่ยนกันได้
'//ตัวอย่างให้พอเข้าใจหลักการครับ
Private Sub SetValue()
'//ส่งที่ต้องมีคือ
txtAssetPrice.Text = "1000"
txtUseYearAge.Text = 5 'อายุใช้งาน
txtRecAsset.Text = "01/02/2553" 'วันที่รับสินทรัยพ์มา
Dim TD As DateTime = Today
If txtAssetPrice.Text = String.Empty Then txtAssetPrice.Text = 0
If txtUseYearAge.Text = String.Empty Then txtUseYearAge.Text = 0
'//ค่าเสื่อมราคาต่อปี =ราคาต้นทุน / อายุการใช้งาน (อายุการใช้งานเป็นจำนวนปีที่ครุภัณฑ์สามารถใช้งานได้ทางภาษี)
txtDepreciationPerYearPrice.Text = Strings.Format(CDbl(txtAssetPrice.Text) / CDbl(txtUseYearAge.Text), "#,##0.00")
Dim YearTotal As Integer = 0
Dim MonthTotal As Integer = 0
If txtRecAsset.Text = String.Empty Then txtRecAsset.Text = thDate(Strings.Format(Today, "dd/MM/yyyy"))
'//แปลงวันที่ไทยเป็น eng แต่ผมแปลงแล้วทำไมพอเปลี่ยนเป็น Date Time ทำไมเดือนกับวันมันสลับกันไม่รู้
Dim USDATES As String = USDate(txtRecAsset.Text)
'//ตรงนี้แก้ไขปัญหาเดือนกับวันมันสลับกัน ก็เลยทำแบบบ้าน ๆ ลองดูก็ได้ผล แต่จะหาวิธีที่ดีกว่านี้ใหม่ ได้แล้วส่งมาบอกด้วยนะครับ
USDATES = Strings.Mid(USDATES, 4, 2) & "/" & Strings.Left(USDATES, 2) & "/" & Strings.Right(USDATES, 4)
'//พอทำตามบรรทัดบน แล้วมาแปลงเป็น datetime อีกทีกลับได้
Dim RecAsset As DateTime = USDATES
'//หาจำนวนวันที่ใช้งานนับตั้งแต่ที่ซื้อมาจนถึงปัจจุบัน
Dim DayTotal As Integer = ((DateDiff(DateInterval.Day, RecAsset, Today)) + 1)
'//คำนวณออกเป็นปี
YearTotal = DayTotal \ 365
'//วัน
DayTotal = DayTotal - (YearTotal * 365)
'//เดือน
MonthTotal = (DayTotal \ 30)
'//หาวันอีกรอบ
DayTotal = DayTotal - (MonthTotal * 30)
'//เหลือเศษจำนวนวัน
DayTotal = DayTotal Mod 30
'//ค่าเสื่อมราคาทั้งหมดตามจำนวนปี
Dim YearPrice As Double = (CDbl(txtAssetPrice.Text) / CDbl(txtUseYearAge.Text)) * CDbl(YearTotal)
'//ค่าเสื่อมราคาทั้งหมดตามจำนวนเดือนที่ไม่ถึงปี
Dim MonthPrice As Double = (CDbl(txtAssetPrice.Text) / CDbl(txtUseYearAge.Text) / 12) * MonthTotal
'//ค่าเสื่อมราคาทั้งหมดตามจำนวนวันที่ไม่ถึงเดือน
Dim DayPrice As Double = ((CDbl(txtAssetPrice.Text) / CDbl(txtUseYearAge.Text) / 12) / 30) * DayTotal
'//ค่าเสื่อมราคาสะสมทั้งหมด
txtDepreciationTotal.Text = Strings.Format(CDbl(YearPrice + MonthPrice + DayPrice), "#,##0.00")
'//มูลค่าคงเหลือ
txtAssetValue.Text = Strings.Format((CDbl(txtAssetPrice.Text) - (YearPrice + MonthPrice + DayPrice)), "#,##0.00")
'//แสดงจำนวนปีที่ใช้งาน
txtAmountYear.Text = YearTotal
'//แสดงจำนวนเดือนที่ใช้งาน
txtAmountMonth.Text = MonthTotal
'//แสดงจำนวนวันที่ใช้งาน
txtDay.Text = DayTotal
'//ถ้าค่าเสื่อมราคามากกว่ามูลค่าสินทรัพย์ให้มีค่าเท่ากับมูลค่าเดิม
If CDbl(txtDepreciationTotal.Text) > CDbl(txtAssetPrice.Text) Then
txtDepreciationTotal.Text = Strings.Format(CDbl(txtAssetPrice.Text), "#,##0.00")
'//มูลค่าให้เป็น 0
txtAssetValue.Text = 0
End If
End Sub
|
|
|
|
|
Date :
2010-09-07 15:17:36 |
By :
สุพัฒน์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
รู้สึกหนังสือ Advance.NET จะมี Code อยู่มั้ง ถ้าผมจำไม่ผิด
|
|
|
|
|
Date :
2010-09-07 15:25:29 |
By :
3rds |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ค่าเสื่อมราคาถ้าจำไม่ผิดจะมีอยู่ 2 ประเภท คือแบบเส้นตรงกับถัวเฉลี่ย
ถ้าเป็นส่วนราชการจะจบลงตรงนั้นละมั้งคะ แต่ในกรณีเอกชนหรือโปรแกรมพัสดุที่พ่วงกับคลังสินค้า
จะคิดกันอีกยาวไกล แล้วระบบที่ว่าของคุณอะไรละคะ
|
|
|
|
|
Date :
2010-09-07 16:41:21 |
By :
blurEyes |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มีCode PHP(คำนวณค่าเสื่อม) ไหมค่ะ ช่วยส่งให้หน่อยน่ะ
|
|
|
|
|
Date :
2011-02-22 14:48:53 |
By :
girl |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มีCode PHP(คำนวณค่าเสื่อม) ไหมค่ะ ช่วยส่งให้หน่อยน่ะ
|
|
|
|
|
Date :
2014-02-28 22:34:09 |
By :
nungna11 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มีCode PHP(คำนวณค่าเสื่อม) ไหมค่ะ ช่วยส่งให้หน่อยน่ะ
|
|
|
|
|
Date :
2016-12-11 15:40:30 |
By :
pudjaza0014 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|