View Full Version : عدم جستجو بین دو تاریخ با دستور select
look20
شنبه 18 اردیبهشت 1389, 23:38 عصر
با سلام و خسته نباشید به دوستان پر تلاش و یاران همیشگی سایت
ببخشید مشکل من سر این کده
Adodc1.RecordSource = "select * from Table1 where borndate Between '" & Trim(txtDate.Text) & "' and '" & Trim(txtDate1.Text) & "'"
Adodc1.Refresh
عمل نمیکنه
البته اگه اسم فیلد borndate رو به dateتغییر بدم و توی کد بالا هم بجای borndate از date استفاده کنم عمل میکنه
ولی مشکل اینجاست که من میخام توی فیلد دیگه ای بنام employdate به همین روش جستجو بسازم
وقتی کد بالا فقط بانام date کار میکنه
پس چطور برای employdate همچین سرچی بسازم
ممنون
vbnovin
یک شنبه 19 اردیبهشت 1389, 00:11 صبح
متوجه سوالتان نمیشم هر مشکلی باشه حلللللللللل ، بهتر توضیح بدید سوال پرسیدن هنر است ..
look20
یک شنبه 19 اردیبهشت 1389, 10:36 صبح
سلام منظورم اینکه میخام توی فیلد borndate رکوردهایی که بین دو تاریخ که توی txtdate.text و txtdate1.text نوشتم رو با دستور select انتخاب کنم ولی متاسفانه نمیاره
vbnovin
یک شنبه 19 اردیبهشت 1389, 11:16 صبح
Public Sub TARYKH_HAFTGY()
Dim b As Boolean
گزارش بر اساس تاریخ و منطقه
If Mask2 = "__/__/__" Or Mask3 = "__/__/__" Then
MsgBox ".ÊÇÑíÎ ÒÇÑÔ ÑÇÊÚííä äãÇííÏ", vbOKOnly + vbInformation + vbMsgBoxRight, "ãÔÇæÑ ÇÒ - æÇÑÔ"
Op6.Value = False
Exit Sub
End If
date2 = Mask2
date3 = Mask3
Frm.Visible = True
PrGB.Value = 0
Timer3.Enabled = True
'ÍÐÝ ÌÏæá ãÌÇÒí
SQLSTR = " DELETE * FROM t_TEMPHAFTEGY "
cn2.Execute SQLSTR
'
If rs1.State = 1 Then
rs1.Close
End If
SQLSTR = " SELECT tROSTA.CODRO, tROSTA.NAMERO, Sum(tSADERE.MASRAFYDATE) AS SumOfMASRAFYDATE,Sum(tSADERE.TN) AS SumOfTN,Sum(tSADERE.TH) AS SumOfTH,Sum(tSADERE.TPE) AS SumOfTPE,Sum(tSADERE.TP) AS SumOfTP,Sum(tSADERE.TB) AS SumOfTB,Sum(tSADERE.TGA) AS SumOfTGA, tSADERE.CODKA,tSADERE.NAMEKA,tSADERE.VAHED, tMantagheh.namemn, tNewPyman.npy, tNewPyman.namesh, tNewPyman.hpy, tNewPyman.NAMESHAHR, tNewPyman.DATESH, tNewPyman.DATEAN, tNewPyman.MABPY, tSADERE.PE, tSADERE.ST, tSADERE.MS, tSADERE.codmn" _
& " FROM tMantagheh INNER JOIN ((tROSTA INNER JOIN (tSADERE INNER JOIN tNewPyman ON tSADERE.npy = tNewPyman.npy) ON tROSTA.CODRO = tSADERE.CODRO) INNER JOIN tkala ON tSADERE.CODKA = tkala.codka) ON tMantagheh.codmn = tSADERE.codmn " _
& " Where(tSADERE.TARYKH) >= " & SETCOMA(Mask2, True, False) & _
" And " & _
" (tSADERE.tarykh) <= " & SETCOMA(Mask3, True, False) & _
" And " & _
" (tSADERE.CODMN) = " & SETCOMA(Trim(Left(Cmbman.List(Cmbman.ListIndex), 2)), True, False) _
& " GROUP BY tROSTA.CODRO, tROSTA.NAMERO, tSADERE.CODKA,tSADERE.NAMEKA,tSADERE.VAHED, tMantagheh.namemn, tNewPyman.npy, tNewPyman.namesh, tNewPyman.hpy, tNewPyman.NAMESHAHR, tNewPyman.DATESH, tNewPyman.DATEAN, tNewPyman.MABPY, tSADERE.PE, tSADERE.ST, tSADERE.MS, tSADERE.codmn" & " ORDER BY tSADERE.CODKA ASC"
rs1.Open SQLSTR, cn1, adOpenDynamic, adLockOptimistic
If rs1.EOF = True Then
rs1.Close
MsgBox ".ãÕÑÝí Êǘäæä ÏÑ Çíä ÈÇÒå ÊÇÑíÎí ËÈÊ äÑÏíÏå ÇÓÊ", vbOKOnly + vbInformation + vbMsgBoxRight, "ãÔÇæÑ ÇÒ - æÇÑÔ"
'Exit Sub
b = True
End If
''''''''''''''''''''''''''
If b <> True Then
SUM1 = 0
SUM2 = 0
HPY = 0
rs1.MoveFirst
Do While Not rs1.EOF
DoEvents
If rs2.State = 1 Then
rs2.Close
End If
SQLSTR = " SELECT * FROM t_TEMPHAFTEGY "
rs2.Open SQLSTR, cn2, adOpenDynamic, adLockOptimistic
rs2.AddNew
DoEvents
rs2!npy = rs1!npy
rs2!namesh = rs1!namesh
rs2!codmn = rs1!codmn
rs2!namemn = rs1!namemn
rs2!CODRO = rs1!CODRO
rs2!namero = rs1!namero
rs2!HPY = rs1!HPY
HPY = rs1!HPY
rs2!nameshahr = rs1!nameshahr
rs2!CODKA = "" & rs1!CODKA
rs2!nameka = "" & rs1!nameka
rs2!vahed = "" & rs1!vahed
rs2!DATESH = "" & rs1!DATESH
rs2!DATEAN = "" & rs1!DATEAN
rs2!MABPY = rs1!MABPY
'ãÕÑÝí ÏÑ Çíä ÈÇÒå ÊÇÑíÎ
rs2!masrafyhaftgy = rs1!SumOfMASRAFYDATE
'ÂãÇÑ ÊÓÊ ÏÑ Çíä ÈÇÒå ÊÇÑíÎí
rs2!TN = rs1!SumOfTN
rs2!TH = rs1!SUMOFTH
rs2!TPE = rs1!SUMOFTPE
rs2!TP = rs1!SUMOFTP
rs2!TB = rs1!SUMOFTB
rs2!TGA = rs1!SUMOFTGA
If rs1!st = True Then
rs2!st = 1
SUMMAHST = SUMMAHST + rs1!SumOfMASRAFYDATE
End If
If rs1!PE = True Then
rs2!PE = 1
SUMMAHPE = SUMMAHPE + rs1!SumOfMASRAFYDATE
End If
If rs1!MS = True Then
rs2!MS = 1
SUMMAHMS = SUMMAHMS + rs1!SumOfMASRAFYDATE
End If
DoEvents
''''''''''''''''''''''''''''
'ÈÏÓÊ ÂæÑÏä ÓØÍ æ ÈÑÂæÑÏ ãÌÏÏ
If rs3.State = 1 Then
rs3.Close
End If
SQLSTR = " SELECT tSATHE_ka_rosta.sathepy, tSATHE_ka_rosta.bms, tSATHE_ka_rosta.SUMSB, tSATHE_ka_rosta.namero" _
& " FROM (tkala INNER JOIN tSATHE_ka_rosta ON tkala.codka = tSATHE_ka_rosta.codka) INNER JOIN tROSTA ON tSATHE_ka_rosta.codro = tROSTA.CODRO" _
& " Where(tSATHE_ka_rosta.npy) = " & SETCOMA(rs1!npy, False, False) & _
" And " & _
" tROSTA.CODRO = " & SETCOMA(Trim(rs1!CODRO), True, False) & _
" And " & _
" (tkala.codka) = " & SETCOMA(rs1!CODKA, True, False) _
& " GROUP BY tSATHE_ka_rosta.sathepy, tSATHE_ka_rosta.bms, tSATHE_ka_rosta.SUMSB, tSATHE_ka_rosta.namero"
rs3.Open SQLSTR, cn3, adOpenDynamic, adLockOptimistic
If Not rs3.EOF = True Then
rs2!sathepy = rs3!sathepy
rs2!bms = rs3!bms
rs2!SUMSB = rs3!SUMSB
If rs1!st = True Then
SUMSBPE = SUMSBPE + rs3!SUMSB
End If
If rs1!PE = True Then
SUMSBST = SUMSBST + rs3!SUMSB
End If
If rs1!MS = True Then
SUMSBMS = SUMSBMS + rs3!SUMSB
End If
Else
rs2!sathepy = 0
rs2!bms = 0
rs2!SUMSB = 0
End If
rs3.Close
'
DoEvents
'ÈÏÓÊ ÂæÑÏä ãÕÑÝí Êǘäæä
If rs3.State = 1 Then
rs3.Close
End If
SQLSTR = " SELECT tROSTA.CODRO, tROSTA.NAMERO, tMantagheh.codmn, tMantagheh.namemn, tkala.codka, tkala.nameka, tkala.VAHED, Sum(tSADERE.MASRAFYDATE) AS SumOfMASRAFYDATE,Sum(tSADERE.TN) AS SumOfTN,Sum(tSADERE.TH) AS SumOfTH,Sum(tSADERE.TPE) AS SumOfTPE,Sum(tSADERE.TP) AS SumOfTP,Sum(tSADERE.TB) AS SumOfTB,Sum(tSADERE.TGA) AS SumOfTGA, tSADERE.npy" _
& " FROM (tkala INNER JOIN (tMantagheh INNER JOIN (tROSTA INNER JOIN tSADERE ON tROSTA.CODRO = tSADERE.CODRO) ON tMantagheh.codmn = tSADERE.codmn) ON tkala.codka = tSADERE.CODKA) INNER JOIN tNewPyman ON tSADERE.npy = tNewPyman.npy" _
& " GROUP BY tROSTA.CODRO, tROSTA.NAMERO, tMantagheh.codmn, tMantagheh.namemn, tkala.codka, tkala.nameka, tkala.VAHED, tSADERE.npy" _
& " HAVING (tSADERE.npy) = " & SETCOMA(rs1!npy, False, False) & _
" AND " & _
" (tMantagheh.codmn) = " & SETCOMA(Trim(rs1!codmn), True, False) & _
" AND " & _
" (tkala.codka) = " & SETCOMA(rs1!CODKA, True, False) & _
" AND " & _
" (tROSTA.CODRO) = " & SETCOMA(Trim(rs1!CODRO), True, False) & " ORDER BY tkala.codka ASC"
rs3.Open SQLSTR, cn3, adOpenDynamic, adLockOptimistic
rs2!MASRAFYTAKA = rs3!SumOfMASRAFYDATE
rs2!TNTAKA = rs3!SumOfTN
rs2!THTAKA = rs3!SUMOFTH
rs2!TPETAKA = rs3!SUMOFTPE
rs2!TPTAKA = rs3!SUMOFTP
rs2!TBTAKA = rs3!SUMOFTB
rs2!TGATAKA = rs3!SUMOFTGA
'ÇÑ áí ÇÊíáä æÝæáÇÏí,ãæÇäÚ ÓÎÊ ÈæÏ
If rs1!st = True Then
rs2!st = 1
SUM1 = SUM1 + rs3!SumOfMASRAFYDATE
End If
If rs1!PE = True Then
rs2!PE = 1
SUM2 = SUM2 + rs3!SumOfMASRAFYDATE
End If
If rs1!MS = True Then
rs2!MS = 1
SUM3 = SUM3 + rs3!SumOfMASRAFYDATE
End If
rs3.Close
'
rs2.UpdateBatch
rs2.Close
DoEvents
If PrGB.Value < 100 Then
PrGB.Value = 5 + PrGB.Value
L.Caption = PrGB.Value
ElseIf PrGB.Value >= 100 Then
Frm.Visible = True
PrGB.Value = 0
Timer3.Enabled = True
End If
rs1.MoveNext
Loop
rs1.Close
End If
' SUM1 = 0
' SUM2 = 0
' HPY = 0
' ãæÇÞÚí íÔ ãí ÂíÏ ˜å ÏÑÇíä ÈÇÒå ãÕÑÝí äÏÇÑíã æ ÈÇíÏ ãÕÑÝí Êǘäæä ˜ÇáÇí Çíä ÑæÓÊÇí íãÇä ãÍÇÓÈå ÑÏÏ
' ÈÏÓÊ ÂæÑÏ ãÕÑÝí Êǘäæä ÂãÇÑåÇíí ˜å ÏÑÇíä ÊÇÑíÎ äãíÈÇÔÏ
If rs1.State = 1 Then
rs1.Close
End If
SQLSTR = " SELECT tROSTA.CODRO, tROSTA.NAMERO, Sum(tSADERE.MASRAFYDATE) AS SumOfMASRAFYDATE,Sum(tSADERE.TN) AS SumOfTN,Sum(tSADERE.TH) AS SumOfTH,Sum(tSADERE.TPE) AS SumOfTPE,Sum(tSADERE.TP) AS SumOfTP,Sum(tSADERE.TB) AS SumOfTB,Sum(tSADERE.TGA) AS SumOfTGA, tSADERE.CODKA,tSADERE.NAMEKA,tSADERE.VAHED, tMantagheh.namemn, tNewPyman.npy, tNewPyman.namesh, tNewPyman.hpy, tNewPyman.NAMESHAHR, tNewPyman.DATESH, tNewPyman.DATEAN, tSADERE.CODKA,tSADERE.NAMEKA,tSADERE.VAHED, tMantagheh.namemn, tNewPyman.npy, tNewPyman.namesh, tNewPyman.hpy, tNewPyman.NAMESHAHR, tNewPyman.DATESH, tNewPyman.DATEAN, tNewPyman.MABPY, tSADERE.PE, tSADERE.ST, tSADERE.MS, tSADERE.codmn" _
& " FROM tMantagheh INNER JOIN ((tROSTA INNER JOIN (tSADERE INNER JOIN tNewPyman ON tSADERE.npy = tNewPyman.npy) ON tROSTA.CODRO = tSADERE.CODRO) INNER JOIN tkala ON tSADERE.CODKA = tkala.codka) ON tMantagheh.codmn = tSADERE.codmn " _
& " Where (tSADERE.CODMN) = " & SETCOMA(Trim(Left(Cmbman.List(Cmbman.ListIndex), 2)), True, False) _
& " GROUP BY tROSTA.CODRO, tROSTA.NAMERO, tSADERE.CODKA,tSADERE.NAMEKA,tSADERE.VAHED, tMantagheh.namemn, tNewPyman.npy, tNewPyman.namesh, tNewPyman.hpy, tNewPyman.NAMESHAHR, tNewPyman.DATESH, tNewPyman.DATEAN, tNewPyman.MABPY, tSADERE.PE, tSADERE.ST, tSADERE.MS, tSADERE.codmn" & " ORDER BY tSADERE.codka ASC"
rs1.Open SQLSTR, cn1, adOpenDynamic, adLockOptimistic
If rs1.EOF = True Then
rs1.Close
Else
rs1.MoveFirst
Do While Not rs1.EOF
If rs2.State = 1 Then
rs2.Close
End If
SQLSTR = " SELECT * FROM t_TEMPHAFTEGY " & _
" Where " & _
" CODKA = " & SETCOMA(rs1!CODKA, True, False) & _
" AND " & _
" NPY = " & SETCOMA(rs1!npy, False, False) & _
" AND " & _
" NAMESH = " & SETCOMA(rs1!namesh, True, False) & _
" AND " & _
" CODMN = " & SETCOMA(rs1!codmn, True, False) & _
" AND " & _
" CODRO = " & SETCOMA(Trim(rs1!CODRO), True, False)
rs2.Open SQLSTR, cn2, adOpenDynamic, adLockOptimistic
If rs2.EOF = True Then
rs2.AddNew
rs2!npy = rs1!npy
rs2!namesh = rs1!namesh
rs2!codmn = rs1!codmn
rs2!namemn = rs1!namemn
rs2!CODRO = rs1!CODRO
rs2!namero = rs1!namero
rs2!HPY = rs1!HPY
HPY = rs1!HPY
rs2!nameshahr = rs1!nameshahr
rs2!CODKA = "" & rs1!CODKA
rs2!nameka = "" & rs1!nameka
rs2!vahed = "" & rs1!vahed
rs2!DATESH = "" & rs1!DATESH
rs2!DATEAN = "" & rs1!DATEAN
rs2!MABPY = rs1!MABPY
If rs1!st = True Then
rs2!st = 1
'SUMMAHST = SUMMAHST + rs1!SumOfMASRAFYDATE
End If
If rs1!PE = True Then
rs2!PE = 1
'SUMMAHPE = SUMMAHPE + rs1!SumOfMASRAFYDATE
End If
If rs1!MS = True Then
rs2!MS = 1
'SUMMAHMS = SUMMAHMS + rs1!SumOfMASRAFYDATE
End If
rs2!masrafyhaftgy = 0
'ÈÏÓÊ ÂæÑÏä ãÕÑÝí ÊÇ ˜äæä
If rs3.State = 1 Then
rs3.Close
End If
SQLSTR = " SELECT tROSTA.CODRO, tROSTA.NAMERO, tMantagheh.codmn, tMantagheh.namemn, tkala.codka, tkala.nameka, tkala.VAHED, Sum(tSADERE.MASRAFYDATE) AS SumOfMASRAFYDATE,Sum(tSADERE.TN) AS SumOfTN,Sum(tSADERE.TH) AS SumOfTH,Sum(tSADERE.TPE) AS SumOfTPE,Sum(tSADERE.TP) AS SumOfTP,Sum(tSADERE.TB) AS SumOfTB,Sum(tSADERE.TGA) AS SumOfTGA, tSADERE.npy" _
& " FROM (tkala INNER JOIN (tMantagheh INNER JOIN (tROSTA INNER JOIN tSADERE ON tROSTA.CODRO = tSADERE.CODRO) ON tMantagheh.codmn = tSADERE.codmn) ON tkala.codka = tSADERE.CODKA) INNER JOIN tNewPyman ON tSADERE.npy = tNewPyman.npy" _
& " GROUP BY tROSTA.CODRO, tROSTA.NAMERO, tMantagheh.codmn, tMantagheh.namemn, tkala.codka, tkala.nameka, tkala.VAHED, tSADERE.npy" _
& " HAVING (tSADERE.npy) = " & SETCOMA(rs1!npy, False, False) & _
" AND " & _
" (tMantagheh.codmn) = " & SETCOMA(Trim(rs1!codmn), True, False) & _
" AND " & _
" (tkala.codka) = " & SETCOMA(rs1!CODKA, True, False) & _
" AND " & _
" (tROSTA.CODRO) = " & SETCOMA(Trim(rs1!CODRO), True, False) & "ORDER BY tkala.codka ASC"
rs3.Open SQLSTR, cn3, adOpenDynamic, adLockOptimistic
rs2!MASRAFYTAKA = rs3!SumOfMASRAFYDATE
rs2!TNTAKA = rs3!SumOfTN
rs2!THTAKA = rs3!SUMOFTH
rs2!TPETAKA = rs3!SUMOFTPE
rs2!TPTAKA = rs3!SUMOFTP
rs2!TBTAKA = rs3!SUMOFTB
rs2!TGATAKA = rs3!SUMOFTGA
rs3.Close
'
DoEvents
'ÈÏÓÊ ÂæÑÏä ÓØÍ æ ÈÑÂæÑÏ ãÌÏÏ
If rs3.State = 1 Then
rs3.Close
End If
SQLSTR = " SELECT tSATHE_ka_rosta.sathepy, tSATHE_ka_rosta.bms, tSATHE_ka_rosta.SUMSB, tSATHE_ka_rosta.namero" _
& " FROM (tkala INNER JOIN tSATHE_ka_rosta ON tkala.codka = tSATHE_ka_rosta.codka) INNER JOIN tROSTA ON tSATHE_ka_rosta.codro = tROSTA.CODRO" _
& " Where(tSATHE_ka_rosta.npy) = " & SETCOMA(rs1!npy, False, False) & _
" And " & _
" tROSTA.CODRO = " & SETCOMA(Trim(rs1!CODRO), True, False) & _
" And " & _
" (tkala.codka) = " & SETCOMA(rs1!CODKA, True, False) _
& " GROUP BY tSATHE_ka_rosta.sathepy, tSATHE_ka_rosta.bms, tSATHE_ka_rosta.SUMSB, tSATHE_ka_rosta.namero"
rs3.Open SQLSTR, cn3, adOpenDynamic, adLockOptimistic
If Not rs3.EOF = True Then
rs2!sathepy = rs3!sathepy
rs2!bms = rs3!bms
rs2!SUMSB = rs3!SUMSB
If rs1!st = True Then
SUMSBPE = SUMSBPE + rs3!SUMSB
End If
If rs1!PE = True Then
SUMSBST = SUMSBST + rs3!SUMSB
End If
If rs1!MS = True Then
SUMSBMS = SUMSBMS + rs3!SUMSB
End If
Else
rs2!sathepy = 0
rs2!bms = 0
rs2!SUMSB = 0
End If
rs3.Close
'
rs2.UpdateBatch
rs2.Close
End If
DoEvents
If PrGB.Value < 100 Then
PrGB.Value = 5 + PrGB.Value
L.Caption = PrGB.Value
ElseIf PrGB.Value >= 100 Then
Frm.Visible = True
PrGB.Value = 0
Timer3.Enabled = True
End If
DoEvents
rs1.MoveNext
Loop
rs1.Close
End If
'
If PrGB.Value < 100 Then
PrGB.Value = 100
Frm.Visible = False
Timer3.Enabled = False
End If
msg = ".ÒÇÑÔ ÂãÇÏå Ç ãí ÈÇÔÏ"
Call MsgBox(msg, vbOKOnly + vbCritical + vbMsgBoxRight, "ãÔÇæÑ ÇÒ - æÇÑÔ")
FrmG.Visible = True
'ÏÑÕÏ íÔÑÝÊ ÝíÒí˜í
'QQ = ((SUM1 + SUM2) * 100) / HPY
'SUMKOL = SUM1 + SUM2
'Unload Me
'Call PRINTHAFTGY
End Sub
look20
یک شنبه 19 اردیبهشت 1389, 11:47 صبح
این فایلم مشکل داره
vbnovin
یک شنبه 19 اردیبهشت 1389, 11:51 صبح
Public Sub TARYKH_HAFTGY()
Dim b As Boolean
گزارش بر اساس تاریخ و منطقه
If Mask2 = "__/__/__" Or Mask3 = "__/__/__" Then
MsgBox ".ÊÇÑíÎ ÒÇÑÔ ÑÇÊÚííä äãÇííÏ", vbOKOnly + vbInformation + vbMsgBoxRight, "ãÔÇæÑ ÇÒ - æÇÑÔ"
Op6.Value = False
Exit Sub
End If
date2 = Mask2
date3 = Mask3
Frm.Visible = True
PrGB.Value = 0
Timer3.Enabled = True
'ÍÐÝ ÌÏæá ãÌÇÒí
SQLSTR = " DELETE * FROM t_TEMPHAFTEGY "
cn2.Execute SQLSTR
'
If rs1.State = 1 Then
rs1.Close
End If
SQLSTR = " SELECT tROSTA.CODRO, tROSTA.NAMERO, Sum(tSADERE.MASRAFYDATE) AS SumOfMASRAFYDATE,Sum(tSADERE.TN) AS SumOfTN,Sum(tSADERE.TH) AS SumOfTH,Sum(tSADERE.TPE) AS SumOfTPE,Sum(tSADERE.TP) AS SumOfTP,Sum(tSADERE.TB) AS SumOfTB,Sum(tSADERE.TGA) AS SumOfTGA, tSADERE.CODKA,tSADERE.NAMEKA,tSADERE.VAHED, tMantagheh.namemn, tNewPyman.npy, tNewPyman.namesh, tNewPyman.hpy, tNewPyman.NAMESHAHR, tNewPyman.DATESH, tNewPyman.DATEAN, tNewPyman.MABPY, tSADERE.PE, tSADERE.ST, tSADERE.MS, tSADERE.codmn" _
& " FROM tMantagheh INNER JOIN ((tROSTA INNER JOIN (tSADERE INNER JOIN tNewPyman ON tSADERE.npy = tNewPyman.npy) ON tROSTA.CODRO = tSADERE.CODRO) INNER JOIN tkala ON tSADERE.CODKA = tkala.codka) ON tMantagheh.codmn = tSADERE.codmn " _
& " Where(tSADERE.TARYKH) >= " & SETCOMA(Mask2, True, False) & _
" And " & _
" (tSADERE.tarykh) <= " & SETCOMA(Mask3, True, False) & _
" And " & _
" (tSADERE.CODMN) = " & SETCOMA(Trim(Left(Cmbman.List(Cmbman.ListIndex), 2)), True, False) _
& " GROUP BY tROSTA.CODRO, tROSTA.NAMERO, tSADERE.CODKA,tSADERE.NAMEKA,tSADERE.VAHED, tMantagheh.namemn, tNewPyman.npy, tNewPyman.namesh, tNewPyman.hpy, tNewPyman.NAMESHAHR, tNewPyman.DATESH, tNewPyman.DATEAN, tNewPyman.MABPY, tSADERE.PE, tSADERE.ST, tSADERE.MS, tSADERE.codmn" & " ORDER BY tSADERE.CODKA ASC"
rs1.Open SQLSTR, cn1, adOpenDynamic, adLockOptimistic
If rs1.EOF = True Then
rs1.Close
MsgBox ".ãÕÑÝí Êǘäæä ÏÑ Çíä ÈÇÒå ÊÇÑíÎí ËÈÊ äÑÏíÏå ÇÓÊ", vbOKOnly + vbInformation + vbMsgBoxRight, "ãÔÇæÑ ÇÒ - æÇÑÔ"
'Exit Sub
b = True
End If
''''''''''''''''''''''''''
If b <> True Then
SUM1 = 0
SUM2 = 0
HPY = 0
rs1.MoveFirst
Do While Not rs1.EOF
DoEvents
If rs2.State = 1 Then
rs2.Close
End If
SQLSTR = " SELECT * FROM t_TEMPHAFTEGY "
rs2.Open SQLSTR, cn2, adOpenDynamic, adLockOptimistic
rs2.AddNew
DoEvents
rs2!npy = rs1!npy
rs2!namesh = rs1!namesh
rs2!codmn = rs1!codmn
rs2!namemn = rs1!namemn
rs2!CODRO = rs1!CODRO
rs2!namero = rs1!namero
rs2!HPY = rs1!HPY
HPY = rs1!HPY
rs2!nameshahr = rs1!nameshahr
rs2!CODKA = "" & rs1!CODKA
rs2!nameka = "" & rs1!nameka
rs2!vahed = "" & rs1!vahed
rs2!DATESH = "" & rs1!DATESH
rs2!DATEAN = "" & rs1!DATEAN
rs2!MABPY = rs1!MABPY
'ãÕÑÝí ÏÑ Çíä ÈÇÒå ÊÇÑíÎ
rs2!masrafyhaftgy = rs1!SumOfMASRAFYDATE
'ÂãÇÑ ÊÓÊ ÏÑ Çíä ÈÇÒå ÊÇÑíÎí
rs2!TN = rs1!SumOfTN
rs2!TH = rs1!SUMOFTH
rs2!TPE = rs1!SUMOFTPE
rs2!TP = rs1!SUMOFTP
rs2!TB = rs1!SUMOFTB
rs2!TGA = rs1!SUMOFTGA
If rs1!st = True Then
rs2!st = 1
SUMMAHST = SUMMAHST + rs1!SumOfMASRAFYDATE
End If
If rs1!PE = True Then
rs2!PE = 1
SUMMAHPE = SUMMAHPE + rs1!SumOfMASRAFYDATE
End If
If rs1!MS = True Then
rs2!MS = 1
SUMMAHMS = SUMMAHMS + rs1!SumOfMASRAFYDATE
End If
DoEvents
''''''''''''''''''''''''''''
'ÈÏÓÊ ÂæÑÏä ÓØÍ æ ÈÑÂæÑÏ ãÌÏÏ
If rs3.State = 1 Then
rs3.Close
End If
SQLSTR = " SELECT tSATHE_ka_rosta.sathepy, tSATHE_ka_rosta.bms, tSATHE_ka_rosta.SUMSB, tSATHE_ka_rosta.namero" _
& " FROM (tkala INNER JOIN tSATHE_ka_rosta ON tkala.codka = tSATHE_ka_rosta.codka) INNER JOIN tROSTA ON tSATHE_ka_rosta.codro = tROSTA.CODRO" _
& " Where(tSATHE_ka_rosta.npy) = " & SETCOMA(rs1!npy, False, False) & _
" And " & _
" tROSTA.CODRO = " & SETCOMA(Trim(rs1!CODRO), True, False) & _
" And " & _
" (tkala.codka) = " & SETCOMA(rs1!CODKA, True, False) _
& " GROUP BY tSATHE_ka_rosta.sathepy, tSATHE_ka_rosta.bms, tSATHE_ka_rosta.SUMSB, tSATHE_ka_rosta.namero"
rs3.Open SQLSTR, cn3, adOpenDynamic, adLockOptimistic
If Not rs3.EOF = True Then
rs2!sathepy = rs3!sathepy
rs2!bms = rs3!bms
rs2!SUMSB = rs3!SUMSB
If rs1!st = True Then
SUMSBPE = SUMSBPE + rs3!SUMSB
End If
If rs1!PE = True Then
SUMSBST = SUMSBST + rs3!SUMSB
End If
If rs1!MS = True Then
SUMSBMS = SUMSBMS + rs3!SUMSB
End If
Else
rs2!sathepy = 0
rs2!bms = 0
rs2!SUMSB = 0
End If
rs3.Close
'
DoEvents
'ÈÏÓÊ ÂæÑÏä ãÕÑÝí Êǘäæä
If rs3.State = 1 Then
rs3.Close
End If
SQLSTR = " SELECT tROSTA.CODRO, tROSTA.NAMERO, tMantagheh.codmn, tMantagheh.namemn, tkala.codka, tkala.nameka, tkala.VAHED, Sum(tSADERE.MASRAFYDATE) AS SumOfMASRAFYDATE,Sum(tSADERE.TN) AS SumOfTN,Sum(tSADERE.TH) AS SumOfTH,Sum(tSADERE.TPE) AS SumOfTPE,Sum(tSADERE.TP) AS SumOfTP,Sum(tSADERE.TB) AS SumOfTB,Sum(tSADERE.TGA) AS SumOfTGA, tSADERE.npy" _
& " FROM (tkala INNER JOIN (tMantagheh INNER JOIN (tROSTA INNER JOIN tSADERE ON tROSTA.CODRO = tSADERE.CODRO) ON tMantagheh.codmn = tSADERE.codmn) ON tkala.codka = tSADERE.CODKA) INNER JOIN tNewPyman ON tSADERE.npy = tNewPyman.npy" _
& " GROUP BY tROSTA.CODRO, tROSTA.NAMERO, tMantagheh.codmn, tMantagheh.namemn, tkala.codka, tkala.nameka, tkala.VAHED, tSADERE.npy" _
& " HAVING (tSADERE.npy) = " & SETCOMA(rs1!npy, False, False) & _
" AND " & _
" (tMantagheh.codmn) = " & SETCOMA(Trim(rs1!codmn), True, False) & _
" AND " & _
" (tkala.codka) = " & SETCOMA(rs1!CODKA, True, False) & _
" AND " & _
" (tROSTA.CODRO) = " & SETCOMA(Trim(rs1!CODRO), True, False) & " ORDER BY tkala.codka ASC"
rs3.Open SQLSTR, cn3, adOpenDynamic, adLockOptimistic
rs2!MASRAFYTAKA = rs3!SumOfMASRAFYDATE
rs2!TNTAKA = rs3!SumOfTN
rs2!THTAKA = rs3!SUMOFTH
rs2!TPETAKA = rs3!SUMOFTPE
rs2!TPTAKA = rs3!SUMOFTP
rs2!TBTAKA = rs3!SUMOFTB
rs2!TGATAKA = rs3!SUMOFTGA
'ÇÑ áí ÇÊíáä æÝæáÇÏí,ãæÇäÚ ÓÎÊ ÈæÏ
If rs1!st = True Then
rs2!st = 1
SUM1 = SUM1 + rs3!SumOfMASRAFYDATE
End If
If rs1!PE = True Then
rs2!PE = 1
SUM2 = SUM2 + rs3!SumOfMASRAFYDATE
End If
If rs1!MS = True Then
rs2!MS = 1
SUM3 = SUM3 + rs3!SumOfMASRAFYDATE
End If
rs3.Close
'
rs2.UpdateBatch
rs2.Close
DoEvents
If PrGB.Value < 100 Then
PrGB.Value = 5 + PrGB.Value
L.Caption = PrGB.Value
ElseIf PrGB.Value >= 100 Then
Frm.Visible = True
PrGB.Value = 0
Timer3.Enabled = True
End If
rs1.MoveNext
Loop
rs1.Close
End If
' SUM1 = 0
' SUM2 = 0
' HPY = 0
' ãæÇÞÚí íÔ ãí ÂíÏ ˜å ÏÑÇíä ÈÇÒå ãÕÑÝí äÏÇÑíã æ ÈÇíÏ ãÕÑÝí Êǘäæä ˜ÇáÇí Çíä ÑæÓÊÇí íãÇä ãÍÇÓÈå ÑÏÏ
' ÈÏÓÊ ÂæÑÏ ãÕÑÝí Êǘäæä ÂãÇÑåÇíí ˜å ÏÑÇíä ÊÇÑíÎ äãíÈÇÔÏ
If rs1.State = 1 Then
rs1.Close
End If
SQLSTR = " SELECT tROSTA.CODRO, tROSTA.NAMERO, Sum(tSADERE.MASRAFYDATE) AS SumOfMASRAFYDATE,Sum(tSADERE.TN) AS SumOfTN,Sum(tSADERE.TH) AS SumOfTH,Sum(tSADERE.TPE) AS SumOfTPE,Sum(tSADERE.TP) AS SumOfTP,Sum(tSADERE.TB) AS SumOfTB,Sum(tSADERE.TGA) AS SumOfTGA, tSADERE.CODKA,tSADERE.NAMEKA,tSADERE.VAHED, tMantagheh.namemn, tNewPyman.npy, tNewPyman.namesh, tNewPyman.hpy, tNewPyman.NAMESHAHR, tNewPyman.DATESH, tNewPyman.DATEAN, tSADERE.CODKA,tSADERE.NAMEKA,tSADERE.VAHED, tMantagheh.namemn, tNewPyman.npy, tNewPyman.namesh, tNewPyman.hpy, tNewPyman.NAMESHAHR, tNewPyman.DATESH, tNewPyman.DATEAN, tNewPyman.MABPY, tSADERE.PE, tSADERE.ST, tSADERE.MS, tSADERE.codmn" _
& " FROM tMantagheh INNER JOIN ((tROSTA INNER JOIN (tSADERE INNER JOIN tNewPyman ON tSADERE.npy = tNewPyman.npy) ON tROSTA.CODRO = tSADERE.CODRO) INNER JOIN tkala ON tSADERE.CODKA = tkala.codka) ON tMantagheh.codmn = tSADERE.codmn " _
& " Where (tSADERE.CODMN) = " & SETCOMA(Trim(Left(Cmbman.List(Cmbman.ListIndex), 2)), True, False) _
& " GROUP BY tROSTA.CODRO, tROSTA.NAMERO, tSADERE.CODKA,tSADERE.NAMEKA,tSADERE.VAHED, tMantagheh.namemn, tNewPyman.npy, tNewPyman.namesh, tNewPyman.hpy, tNewPyman.NAMESHAHR, tNewPyman.DATESH, tNewPyman.DATEAN, tNewPyman.MABPY, tSADERE.PE, tSADERE.ST, tSADERE.MS, tSADERE.codmn" & " ORDER BY tSADERE.codka ASC"
rs1.Open SQLSTR, cn1, adOpenDynamic, adLockOptimistic
If rs1.EOF = True Then
rs1.Close
Else
rs1.MoveFirst
Do While Not rs1.EOF
If rs2.State = 1 Then
rs2.Close
End If
SQLSTR = " SELECT * FROM t_TEMPHAFTEGY " & _
" Where " & _
" CODKA = " & SETCOMA(rs1!CODKA, True, False) & _
" AND " & _
" NPY = " & SETCOMA(rs1!npy, False, False) & _
" AND " & _
" NAMESH = " & SETCOMA(rs1!namesh, True, False) & _
" AND " & _
" CODMN = " & SETCOMA(rs1!codmn, True, False) & _
" AND " & _
" CODRO = " & SETCOMA(Trim(rs1!CODRO), True, False)
rs2.Open SQLSTR, cn2, adOpenDynamic, adLockOptimistic
If rs2.EOF = True Then
rs2.AddNew
rs2!npy = rs1!npy
rs2!namesh = rs1!namesh
rs2!codmn = rs1!codmn
rs2!namemn = rs1!namemn
rs2!CODRO = rs1!CODRO
rs2!namero = rs1!namero
rs2!HPY = rs1!HPY
HPY = rs1!HPY
rs2!nameshahr = rs1!nameshahr
rs2!CODKA = "" & rs1!CODKA
rs2!nameka = "" & rs1!nameka
rs2!vahed = "" & rs1!vahed
rs2!DATESH = "" & rs1!DATESH
rs2!DATEAN = "" & rs1!DATEAN
rs2!MABPY = rs1!MABPY
If rs1!st = True Then
rs2!st = 1
'SUMMAHST = SUMMAHST + rs1!SumOfMASRAFYDATE
End If
If rs1!PE = True Then
rs2!PE = 1
'SUMMAHPE = SUMMAHPE + rs1!SumOfMASRAFYDATE
End If
If rs1!MS = True Then
rs2!MS = 1
'SUMMAHMS = SUMMAHMS + rs1!SumOfMASRAFYDATE
End If
rs2!masrafyhaftgy = 0
'ÈÏÓÊ ÂæÑÏä ãÕÑÝí ÊÇ ˜äæä
If rs3.State = 1 Then
rs3.Close
End If
SQLSTR = " SELECT tROSTA.CODRO, tROSTA.NAMERO, tMantagheh.codmn, tMantagheh.namemn, tkala.codka, tkala.nameka, tkala.VAHED, Sum(tSADERE.MASRAFYDATE) AS SumOfMASRAFYDATE,Sum(tSADERE.TN) AS SumOfTN,Sum(tSADERE.TH) AS SumOfTH,Sum(tSADERE.TPE) AS SumOfTPE,Sum(tSADERE.TP) AS SumOfTP,Sum(tSADERE.TB) AS SumOfTB,Sum(tSADERE.TGA) AS SumOfTGA, tSADERE.npy" _
& " FROM (tkala INNER JOIN (tMantagheh INNER JOIN (tROSTA INNER JOIN tSADERE ON tROSTA.CODRO = tSADERE.CODRO) ON tMantagheh.codmn = tSADERE.codmn) ON tkala.codka = tSADERE.CODKA) INNER JOIN tNewPyman ON tSADERE.npy = tNewPyman.npy" _
& " GROUP BY tROSTA.CODRO, tROSTA.NAMERO, tMantagheh.codmn, tMantagheh.namemn, tkala.codka, tkala.nameka, tkala.VAHED, tSADERE.npy" _
& " HAVING (tSADERE.npy) = " & SETCOMA(rs1!npy, False, False) & _
" AND " & _
" (tMantagheh.codmn) = " & SETCOMA(Trim(rs1!codmn), True, False) & _
" AND " & _
" (tkala.codka) = " & SETCOMA(rs1!CODKA, True, False) & _
" AND " & _
" (tROSTA.CODRO) = " & SETCOMA(Trim(rs1!CODRO), True, False) & "ORDER BY tkala.codka ASC"
rs3.Open SQLSTR, cn3, adOpenDynamic, adLockOptimistic
rs2!MASRAFYTAKA = rs3!SumOfMASRAFYDATE
rs2!TNTAKA = rs3!SumOfTN
rs2!THTAKA = rs3!SUMOFTH
rs2!TPETAKA = rs3!SUMOFTPE
rs2!TPTAKA = rs3!SUMOFTP
rs2!TBTAKA = rs3!SUMOFTB
rs2!TGATAKA = rs3!SUMOFTGA
rs3.Close
'
DoEvents
'ÈÏÓÊ ÂæÑÏä ÓØÍ æ ÈÑÂæÑÏ ãÌÏÏ
If rs3.State = 1 Then
rs3.Close
End If
SQLSTR = " SELECT tSATHE_ka_rosta.sathepy, tSATHE_ka_rosta.bms, tSATHE_ka_rosta.SUMSB, tSATHE_ka_rosta.namero" _
& " FROM (tkala INNER JOIN tSATHE_ka_rosta ON tkala.codka = tSATHE_ka_rosta.codka) INNER JOIN tROSTA ON tSATHE_ka_rosta.codro = tROSTA.CODRO" _
& " Where(tSATHE_ka_rosta.npy) = " & SETCOMA(rs1!npy, False, False) & _
" And " & _
" tROSTA.CODRO = " & SETCOMA(Trim(rs1!CODRO), True, False) & _
" And " & _
" (tkala.codka) = " & SETCOMA(rs1!CODKA, True, False) _
& " GROUP BY tSATHE_ka_rosta.sathepy, tSATHE_ka_rosta.bms, tSATHE_ka_rosta.SUMSB, tSATHE_ka_rosta.namero"
rs3.Open SQLSTR, cn3, adOpenDynamic, adLockOptimistic
If Not rs3.EOF = True Then
rs2!sathepy = rs3!sathepy
rs2!bms = rs3!bms
rs2!SUMSB = rs3!SUMSB
If rs1!st = True Then
SUMSBPE = SUMSBPE + rs3!SUMSB
End If
If rs1!PE = True Then
SUMSBST = SUMSBST + rs3!SUMSB
End If
If rs1!MS = True Then
SUMSBMS = SUMSBMS + rs3!SUMSB
End If
Else
rs2!sathepy = 0
rs2!bms = 0
rs2!SUMSB = 0
End If
rs3.Close
'
rs2.UpdateBatch
rs2.Close
End If
DoEvents
If PrGB.Value < 100 Then
PrGB.Value = 5 + PrGB.Value
L.Caption = PrGB.Value
ElseIf PrGB.Value >= 100 Then
Frm.Visible = True
PrGB.Value = 0
Timer3.Enabled = True
End If
DoEvents
rs1.MoveNext
Loop
rs1.Close
End If
'
If PrGB.Value < 100 Then
PrGB.Value = 100
Frm.Visible = False
Timer3.Enabled = False
End If
msg = ".ÒÇÑÔ ÂãÇÏå Ç ãí ÈÇÔÏ"
Call MsgBox(msg, vbOKOnly + vbCritical + vbMsgBoxRight, "ãÔÇæÑ ÇÒ - æÇÑÔ")
FrmG.Visible = True
'ÏÑÕÏ íÔÑÝÊ ÝíÒí˜í
'QQ = ((SUM1 + SUM2) * 100) / HPY
'SUMKOL = SUM1 + SUM2
'Unload Me
'Call PRINTHAFTGY
End Sub
----------------------------
اینم تابع برای تنظیم کوتیشن های رشته ای و عددی برای پارامترهای که بالا استفاده کردم امیدوارم این نمونه سورس کمکتان کنه در ضمن در تایپک دیگر نونمه سورس گذاشتم از یک برنامه ام امیدوارم مفید باشه:
http://rapidshare.com/files/385020827/for_upload.rar.html
Public Function SETCOMA(STRX As Variant, Y1 As Boolean, y2 As Boolean) As Variant
If (STRX <> False) And (STRX <> True) Then
STRX = Trim(STRX)
End If
If Y1 = True Then
STRX = "'" & STRX & "'"
End If
If y2 = True Then
STRX = STRX & ","
End If
SETCOMA = STRX
End Function
look20
یک شنبه 19 اردیبهشت 1389, 11:53 صبح
مشکل حل شد فهمیدم کجا مشکل داشتم
xxxxx_xxxxx
یک شنبه 19 اردیبهشت 1389, 12:23 عصر
سلام دوست عزیز،
برنامه تون هیچ مشکلی نداره و دستورات به طور صحیح اجرا میشن. و این موضوع ارتباطی با نام فیلد تاریخ نداره. (شاید به خاطر تست های مختلف به نام فیلد شک کردید)
به هر حال، فقط کافیست محتوای فیلد تاریخ رو با این فرمت وارد کنید (##/##/####). روز و ماه دو رقمی باشه، سال چهار رقمی.
مثلاً بجای 1389/2/18 بنویسید: 1389/02/18
موفق باشید/
look20
یک شنبه 19 اردیبهشت 1389, 12:30 عصر
قبل از پست شما مشکل رو فهمیدم
حق با شما بود
راستش مشکل من عدم دقت توی اضاف کردن کد فرم بود توی دیتابیس تاریخ رو بصورت 6 رقمی وارد نکرده بودم و تکس باکس سرچ کننده بصورت 6 رقمی سرچ میکرد به همین خاطر چیزی پیدا نمیکرد
بازم ممنون که توجه کردید
vbnovin
یک شنبه 19 اردیبهشت 1389, 12:35 عصر
این فایلم مشکل داره
این فایلتان را اصلاح کردم مشکلش درست شد در ضمن توضیحات گذاشتم
بد نیست به روش کار من هم نگاه کنید .... نظر بدهید
look20
یک شنبه 19 اردیبهشت 1389, 13:05 عصر
ببینید دوست عزیز من قرار حدود 250 دستور if استفاده کنم که برای هر کدوم حدود 5 خط کد باید ساخته بشه حالا حساب کنید 250*5 چقدر میشه حالا به استثنای سایر قسمتهای کد نویسی انوقت چطور انتظار دارید بخام از روش طولانی استفاده کنم روش شما خیلی خوبه ولی همیشه توی کد نویسیهایی که مثل مال من این قدر کد نیاز داره باید سعی کنم از کوتاه ترین و کمترین روش کدنویسی استفاده کنم
ممنون
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.