PDA

View Full Version : انتقال جمع کل از کوئری به جدول



smderfan
شنبه 27 تیر 1388, 21:02 عصر
سلام
در نمونه پیوست مشکلی جهت انتقال جمع داده ها دارم لطفا کمک کنید :
در نمونه یک کوئری بنام SumGroup وجود دارد که حاوی دو فیلد :
1- شماره فاکتور Reg
2- جمع کل فاکتور (SumCol)
است.
من می خوام مقدار SumCol به جدول Factor کپی شود بصورتی که مقدار جمع کل فاکتور (SumCol ) درست در قسمت جمع کل فاکتور (SumFactor) در جدول Factor قرار بگیرد.

kamkam1
یک شنبه 28 تیر 1388, 00:14 صبح
باسلام
فکرکنم منظور شمارا متوجه شده باشم توجه بفرمایید.

smderfan
یک شنبه 28 تیر 1388, 16:45 عصر
سلام ؛ تشکر از توجه شما
پیشنهاد خوبی است. اما آیا راه دیگری وجود ندارد تا از یک جدول tmp استفاده نکنیم؟

alirezabahrami
یک شنبه 28 تیر 1388, 18:11 عصر
سلام ؛ تشکر از توجه شما
پیشنهاد خوبی است. اما آیا راه دیگری وجود ندارد تا از یک جدول tmp استفاده نکنیم؟
سلام سيدجان!
من از كد زير در رخداد كليك يك كمند باتن در داخل يك فرم استفاده كردم ولي نميدانم اشكالش كجاست كه اجرا نميشود ؟


Private Sub Command29_Click()
Dim db As Database
Dim Rs As Recordset
Dim Rs2 As Recordset
Dim i As Long
Dim RsCount As Long
Set db = CurrentDb
Set Rs = db.OpenRecordset("select * from Factor")
Set Rs2 = db.OpenRecordset("select * from SumGroup")
RsCount = Rs.RecordCount
Rs.MoveFirst
Rs2.MoveFirst
Rs.Edit
For i = 1 To RsCount
If Rs.Fields("reg").Value = Rs2.Fields("reg").Value Then
Rs.Fields("SumFactor").Value = Rs2.Fields("SumCol").Value
Rs.Update
End If
Rs.MoveNext
Next i
End Sub

kamkam1
یک شنبه 28 تیر 1388, 18:27 عصر
سلام
جدول موقت ایجاد وحذف می گرددو نیاز به جدول موقت بصورت دائمی نمی باشد

smderfan
یک شنبه 28 تیر 1388, 23:03 عصر
سلام
با تشکر از دوستان محترم؛
با کد اصلاح شده آقای ابراهیمی درست شد.

Dim Rs As Recordset
Dim Rs2 As Recordset
Dim i As Long
Dim RsCount As Long

Set db = CurrentDb
Set Rs = db.OpenRecordset("select * from Factor")
Set Rs2 = db.OpenRecordset("select * from SumGroup")

Rs.Sort = "Reg"
Rs2.Sort = "Reg"

Rs.MoveLast
Rs.MoveFirst
Rs2.MoveFirst

RsCount = Rs.RecordCount

For i = 1 To RsCount
Rs.Edit
If Rs.Fields("REG").Value = Rs2.Fields("REG").Value Then
Rs.Fields("SumFactor").Value = Rs2.Fields("SumCol").Value
Rs.Update
End If
Rs.MoveNext
Rs2.MoveNext
Next i

alirezabahrami
سه شنبه 30 تیر 1388, 07:58 صبح
[quote=smderfan;760773]سلام
با تشکر از دوستان محترم؛
با کد اصلاح شده آقای ابراهیمی درست شد.
با سلام
ممكن است نمونه اصلاح شده را ارائه فرمائيد ! چون بنده دوباره با كد اصلاح شده شما هم امتحان كردم و آنگونه كه خواسته بوديد اجرا نشد . با كد قبلي يك ركورد كپي ميشد و با كد اصلاح شده هم همان حالت دوباره صورت ميگيرد .
ارادتمند شما : بهرامي