husseinharby قام بنشر منذ 3 ساعات قام بنشر منذ 3 ساعات السلام عليكم في نموذج sale قمت بعمل زر copy لنقل البيانات الي نموذج buy لكنه ينقل فقط البيانات الخاصة بالنموذج الرئيسي فقط اريده ان ينقل ايضا بيانات النموذج الفرعي وهي العدد والسعر والصنف كما هو موضح في الفيديو Downloads.rar
Foksh قام بنشر منذ 8 دقائق قام بنشر منذ 8 دقائق وعليكم السلام ورحمة الله وبركاته .. رغم عدم قناعتي بهيكلة وتصميم الملف ، اعتقد أن ذهابك إلى جدول منفصل لعمليات البيع وجدول آخر منفصل لعميات الشراء ، أو جدول الحركات الموحد العام وهو جدول يعرض تفاصيل لجميع حركات المخزن ( بيع ، شراء ، مرتجع ، تحويل من إلى ... إلخ ) ، ولكن بحقول موحدة ( TransID , DocType , DocID , Item , Qty , Price , Discount ) ؛ حيث DocType كمثال ، سيحدد هل الحركة هي حركة بيع أم شراء ، وبذلك لا تحتاج لتكرار حقول sale_qty و buy_qty .... ولكن !! في فكرة التنفيذ على الزر ، استعمل الحدث التالي :- Private Sub Command160_Click() On Error GoTo ErrHandler If Me.NewRecord Or IsNull(Me.sale_id) Then MsgBox "يرجى تحديد فاتورة بيع أولاً", vbExclamation + vbMsgBoxRight, "" Exit Sub End If If Me.Dirty Then Me.Dirty = False Dim db As DAO.Database Dim rsBuy As DAO.Recordset Dim rsSaleDet As DAO.Recordset Dim rsBuyDet As DAO.Recordset Dim newBuyID As Long Set db = CurrentDb Set rsBuy = db.OpenRecordset("buy", dbOpenDynaset) rsBuy.AddNew rsBuy!reg_date = Me.reg_date rsBuy!code = Me.code rsBuy!explain = Me.explain rsBuy!discount = Me.discount rsBuy!note = Me.note rsBuy!saving = Me.saving newBuyID = rsBuy!buy_id rsBuy.Update rsBuy.Close Set rsBuy = Nothing Set rsSaleDet = db.OpenRecordset("SELECT * FROM details WHERE sale_id = " & Me.sale_id, dbOpenSnapshot) Set rsBuyDet = db.OpenRecordset("details", dbOpenDynaset) Do While Not rsSaleDet.EOF rsBuyDet.AddNew rsBuyDet!buy_id = newBuyID rsBuyDet!item = rsSaleDet!item rsBuyDet!buy_qty = rsSaleDet!sale_qty rsBuyDet!buy_price = rsSaleDet!sale_price rsBuyDet!buy_discount_percent = rsSaleDet!sale_discount_percent rsBuyDet!note = rsSaleDet!note rsBuyDet!m = rsSaleDet!m rsBuyDet!check = rsSaleDet!check rsBuyDet!serial = rsSaleDet!serial rsBuyDet.Update rsSaleDet.MoveNext Loop rsSaleDet.Close: Set rsSaleDet = Nothing rsBuyDet.Close: Set rsBuyDet = Nothing DoCmd.OpenForm "buy", acNormal, , "buy_id = " & newBuyID Exit Sub ErrHandler: MsgBox "حدث خطأ أثناء نسخ الفاتورة الحالية", vbCritical + vbMsgBoxRight, "" End Sub تفضل الملف المرفق :- yasser_10.zip
الردود الموصى بها
انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد
يجب ان تكون عضوا لدينا لتتمكن من التعليق
انشئ حساب جديد
سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .
سجل حساب جديدتسجيل دخول
هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.
سجل دخولك الان