اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

كيف يمكنني تحديد سجلات معينة ثم نسخها إلى جدول آخر


الردود الموصى بها

السلام عليكم ورحمة الله تعالى وبركاته

ما هي أفضل طريقة لنسخ السجلات المحددة في النموذج الفرعي إلى جدول آخر TblTempSave

وجدت كود من خلال البحث لكن لم أستطع التعديل عليه

رابط الكود:http://access.mvps.org/access/forms/frm0033.htm

'************* Code Start **************
' This code was originally written by Dev Ashish.
' It is not to be altered or distributed,
' except as part of an application.
' You are free to use it in any application,
' provided the copyright notice is left unchanged.
'
' Code Courtesy of
' Dev Ashish
'
Private Sub Form_Timer()
Dim i As Long
Dim strSQL As String
Dim loqd As QueryDef


    If Me.SelHeight = 0 Or mfPrint Then Exit Sub

    strSQL = "Select * from [" & Me.RecordSource _
                & "] Where "

    With Me.RecordsetClone
        .MoveFirst
        .Move Me.SelTop - 1

        For i = 1 To Me.SelHeight
            strSQL = strSQL & "ProductID = " & _
                            ![ProductID] & _
                            " or "
            .MoveNext
        Next i
        strSQL = Left$(strSQL, Len(strSQL) - 3)

        If MsgBox("Are you ready to print now?", _
                    vbQuestion + vbYesNo, _
                    "Please Confirm...") = vbYes Then

            Set loqd = CurrentDb.QueryDefs("qryProducts")
            loqd.SQL = strSQL
            loqd.Close
            'DoCmd.OpenReport "SomeReport", acViewPreview
            mfPrint = True
        End If
    End With
    Set loqd = Nothing
End Sub
'**************** Code End *****************

بارك الله فيكم وفي علمكم

Access Database2003UP.zip

تم تعديل بواسطه بوعبد الله محفوظ
رابط هذا التعليق
شارك

5 دقائق مضت, ابوخليل said:

عليكم السلام

ولماذا النسخ ..  يمكنك توظيف  هذه القيم كيف شئت ومتى شئت

 

مشكووووووووووور مشرفنا الغالي أبو خليل

فكرتي مقتبسة من برنامج اسمه STRUMIS ربما غدا أضع فيديو يوضح الطريقة

حيث يتم تحديد السجلات المراد التغيير عليها وبالضغط على زر تحريك 

يتم انبثاق شاشة جديدة تحتوي فقط القيم التي تما تحديدها سابقا

بعد ذلك يمكن للمستعمل اختيار الكمية التي تم تصنيعها ثم حفظ

 

لهذا أنا أريد نسخ هذه السجلات إلى جدول جديد TblTempSave يتم فيه كتابة القيمة NumberPeinture وبعد ذلك يتم الحفظ في الجدول tblRealisation

ويتم تحديث القيمة NumberPeinture في الجدول tblProjectExp وحذف السجلات التي في الجدول TblTempSave

 

لا أدري إن كان تفكيري منطقي 

لكن هذه هي الفكرة العامة لحد الساعة

 

أي آراء أنا في الاستماع

 

رابط هذا التعليق
شارك

كما فهمت  انك تريد في الجدول الرئيس  :

عندك مشاريع  تسجلها بالجملة ويمثل بعدد في حقل A

ثم يبدأ التنفيذ واحدة واحدة وكلما تم تنفيذ واحدة تضيف رقم 1 الى حقل  B  

حتى تتساوى الكمية في الحقلين  .

اذا  فهمي صحيح  فقبل ان اقول  تستطيع  عمل ذلك  بدون نسخ  ويكفي الجدول الفرعي  لكتابة التفاصيل

قبل ذلك :  لا بد من شرح وافي لكيفية تسجيل التفاصيل

وهل تفاصيل المشروع تسجل في tblRealisation واحدة واحدة  وكل واحدة تمثل الرقم 1

فاذا كان الجواب نعم كيف تفسر وجود الرقم 10 في جدول tblRealisation 

 

رابط هذا التعليق
شارك

مشكووووووووور مشرفنا الغالي أبو خليل

أولا هذا رابط الفيديو الذي تكلمت عنه سابقا

https://www.youtube.com/watch?v=Y2WirS72PlA&feature=youtu.be

أما فيما بخص طريقة العمال فهذه هي الواجهة الرئيسة للبرنامج 

Strumis1.png.c7cca300cea2f9fdc1c27524949eb76f.png

حيث يتم تسجيل البيانات في الجدول tblRealisation 

وعندما تكون القيمة في مربع النص تم =F
يتم إضافة العدد إلى القيمة  "NumberPeinture "
 في الجدول tblProjectExp

من عيوب هذه الطريقة أنها تقوم بتسجيل كل قطعة على حدة

أما الطريقة التي في الفيديو تقوم بتسجيل عدة قطع دفعة واحدة

"أعلم أني سأقوم بكثير من التغيرات لكن إن كانت النتيجة جيدة لا بأس"

 

طريقة الدخول 

Strumis2.png.347fbaf25414725e1d280b5b39890695.png

يجب ان تكون كلمة السر مخفية

رابط البرنامج

New folder.zip -  13.1 MB

 

تم تعديل بواسطه بوعبد الله محفوظ
رابط هذا التعليق
شارك

اهلا  بو عبدالله  ,, لا بد أنقل برنامجك الى جهاز آخر لاطلع عليه ، حتى افهمه جيدا

اتمنى اجد الوقت الكافي لخدمتك ، ولكن توقع مني ايضا بعض الاستفسارات

 

  • Like 1
رابط هذا التعليق
شارك

الحق يا بوعبدالله  ان فهم السؤال نصف الاجابة

وانا لم اصل الى فهم المسألة بعد ‘ لاني لم افهم المراد بالضبط

وحتى لا يطول انتظارك كتبت لك

  • Like 1
رابط هذا التعليق
شارك

مشكوووور مشرفنا الغالي أبو خليل

آآآآآآآآآآآآسف على أتعابك معنا

01/ بخصوص الجدول tblProjectExp

حيث يتم استيراد بياناته من ملف اكسيل 

حيث جميع الحقول في أصلية 

ماعدا NumberPeinture قمت بإضافته حتى يتم تسجيل فيه عدد القطع المصنعة وقيمته الابتدائية 0 وحتى لا تتجاوز قيمته الحقل Quantité الذي يحوي القيمة الكلية لكل قطعة (Repère)

02/ بخصوص الجدول tblRealisation  جميع العمليات يتم حفظها فيه بدون استثناء

03/ طريقة العمل

يتم تحديث الحقل NumberPeinture في الجدول tblProjectExp إذا كانت قيمة مربع النص (تم)= F "نهائي"

حيث يتم إضافة قيمة مربع النص (العدد) إلى القيمة الموجودة سابقا في NumberPeinture في الجدول tblProjectExp

من عيوب الطريقة القديمة أنها لا تسمح بتسجيل أكثر من قطعة واحدة في نفس الوقت

 

الذي أريده هو تسجيل عدة قطع دفعة واحدة

 

سأسجل فيديو وأضعه حتى تتضح طريقة عمل البرنامج

 

 

تم تعديل بواسطه بوعبد الله محفوظ
رابط هذا التعليق
شارك

اخي الكريم  لم تدع لاحد عذر 

شرح وافي  واضح  وهو نفس مفهومي الاول ولكنك لم تؤكد لي من البداية

انظر  اخي الحبيب : انا اعطي مشورة حسب خبرتي في  العمل على قواعد البيانات  وكثير هنا في هذا المنتدى من هم افضل مني   ولا تأتي الخبرة الا من ممارسة انواع كثيرة ومختلفة من الاعمال وتطبيقها  برمجيا .

من الخطوات التي  انصح بالابتعاد عنها  هي النسخ واللصق والالحاق  والحذف داخل  قاعدة البيانات  مادامت المعلومة المسجلة يمكن التعامل معها وتطويعها .

لو كلفت بعمل مثل هذا  لجعلت  tblProjectExp  هو رأس  النموذج و tblRealisation  فرعيا  ولن اكون محتاجا  لحقل NumberPeinture في جدول  tblProjectExp   يكفي ان  اكتب المعطيات في النموذج الفرعي  وحين اصل الى العدد المحدد   الموجود في جدول الرأس يمنعني اكسس من تجاوز الرقم 

هذا مجمل الفكرة  وأرى انها منطقية متسلسلة

حتى لو لم يظهر من السجلات الا سجلات اليوم   فان المصدر  سيكون استعلاما والضوابط  ستكون من خلاله

 

 

  • Like 1
رابط هذا التعليق
شارك

21 ساعات مضت, ابوخليل said:

اخي الكريم  لم تدع لاحد عذر 

شرح وافي  واضح  وهو نفس مفهومي الاول ولكنك لم تؤكد لي من البداية

انظر  اخي الحبيب : انا اعطي مشورة حسب خبرتي في  العمل على قواعد البيانات  وكثير هنا في هذا المنتدى من هم افضل مني   ولا تأتي الخبرة الا من ممارسة انواع كثيرة ومختلفة من الاعمال وتطبيقها  برمجيا .

من الخطوات التي  انصح بالابتعاد عنها  هي النسخ واللصق والالحاق  والحذف داخل  قاعدة البيانات  مادامت المعلومة المسجلة يمكن التعامل معها وتطويعها .

لو كلفت بعمل مثل هذا  لجعلت  tblProjectExp  هو رأس  النموذج و tblRealisation  فرعيا  ولن اكون محتاجا  لحقل NumberPeinture في جدول  tblProjectExp   يكفي ان  اكتب المعطيات في النموذج الفرعي  وحين اصل الى العدد المحدد   الموجود في جدول الرأس يمنعني اكسس من تجاوز الرقم 

هذا مجمل الفكرة  وأرى انها منطقية متسلسلة

حتى لو لم يظهر من السجلات الا سجلات اليوم   فان المصدر  سيكون استعلاما والضوابط  ستكون من خلاله

 

 

مشكوووووووور مشرفنا الغالي أبو خليل

إذا ممكن مثال صغير 

ثم هل ممكن  إدخال عدة قطع مرة واحدة بتاريخ محدد

 

آآآآآآآآآآآآآآآآآسف على كثرة طلباتي

بارك الله فيك وفي علمك

رابط هذا التعليق
شارك

14 ساعات مضت, ابوخليل said:

تفضل اخي الكريم

المثال يبين الفكرة 

حاول ان يزيد مجموع  الارقام في الفرعي  عن الرقم الموجود في النموذج الرئيسي

 

2003UP.rar

مشكووووووووووووور أستاذنا
جاري التجريب

رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information