-
Posts
946 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
10
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو Amr Ashraf
-
حماية قاعدة البيانات من التلف وفقدان الادخالات (معدل)
Amr Ashraf replied to EMM2020's topic in قسم الأكسيس Access
اعمل Backup يومى للجداول ولو حدثت مشكلة اعمل استعادة لليوم السابق مثلا .. وما اكثر المواضيع فى المنتدى تتحدث عن النسخ الاحتياطى للجداول ابحث وستجد الكثير .. بالتوفيق- 1 reply
-
- 1
-
مساعدة في جلب اسم للزر من الجدول
Amr Ashraf replied to ازهر عبد العزيز's topic in قسم الأكسيس Access
تحت امرك, بالتوفيق -
حقيقة ومجربة بالفعل بس لم اكن اعرف لها بديل .. جزاك الله خير .. بالنسبة للبرنامج بعد التجربة لأكثر من مرة وجدت ان اول مرة فقط اللى بيعمل الحاق لجدول TblPoMaterials المسئولة عنه جملة الSQL يعنى حضرتك جرب اعمل 5 اوامر شغل ورا بعض بدون غلق النموذج وستجد المشكلة .. فضلاً الق نظرة على المرفق @jjafferr New Code JJ.accdb
-
مساعدة في جلب اسم للزر من الجدول
Amr Ashraf replied to ازهر عبد العزيز's topic in قسم الأكسيس Access
وعليكم السلام ورحمة الله وبركاته .. تفضل b.accdb -
رجعنا لنفس المشكلة الاولى Private Sub Command204_Click() DoCmd.OpenForm "Robot" DoCmd.GoToRecord , , acNewRec Forms![Robot]![PONumber] = Me.T7 Forms![Robot]![productcode] = Me.t0 Forms![Robot]![OrderQty] = Me.T3 Forms![Robot]![zdate] = Me.T6 Forms![Robot]![Mold] = Me.Mold Forms![Robot]![Machine] = Me.Machine Forms![Robot]![Status] = Me.Status Forms![Robot]![ProductBomNum] = Me.Bom DoCmd.Close Dim sql As DAO.Recordset Dim Lsql As DAO.Recordset Set sql = CurrentDb.OpenRecordset("TblPoMaterials", dbOpenDynaset) Set Lsql = Me.RecordsetClone 'DoCmd.SetWarnings False 'DoCmd.GoToRecord , , acFirst 'EIC?E C??O??E ?? ??C C???? 'For m = 1 To T8 Do Until Lsql.EOF With sql .AddNew !PONumber = Lsql!T7 !MaterialCode = Lsql!code !MaterialName = Lsql!Item !ProductionDate = Lsql!T6 !Shift = "none" !cons = Lsql!cons !AdditionPercent = Lsql!Remarks !MaterialType = Lsql!Type !OrderQty = Lsql!Nz(Nz([T2], 0) * Nz([T3], 0), 0) .Update End With Lsql.MoveNext Loop 'DoCmd.GoToRecord , , acNext sql.Close: Set sql = Nothing Lsql.Close: Set Lsql = Nothing 'Next m MsgBox "Done", vbInformation, "Saved successfully" 'DoCmd.SetWarnings True t0 = "" T6 = "" T7 = "" T3 = "" T10 = "" T10 = "" Status = "" BomCombo = "" Me.ComboMachine = "" Me.ComboMold = "" Mold = "" Machine = "" T216 = "" Me.Requery End Sub
-
السلام عليكم .. اخوانى الافاضل عندى مشكلة غريبة واتمنى سعة الصدر لطول الموضوع نسبيا , المشكلة كما العنوان تحدث فى قاعدة بيانات Accde فى نموذج مستمر Continuous Form مصدره كالتالى : SELECT Bom.productcode, Bom.code, Bom.Item, Bom.cons, Bom.BomNumber, [Item Names].Type, Bom.Remarks FROM [Item Names] INNER JOIN Bom ON [Item Names].code = Bom.code WHERE (((Bom.productcode)=Forms!FrmNewPo!t0) And ((Bom.BomNumber)=Forms!FrmNewPo!Bom)); المشكلة تحدث عند ضغط زر الامر بالكود التالى : Private Sub Command204_Click() DoCmd.OpenForm "Robot" DoCmd.GoToRecord , , acNewRec Forms![Robot]![PONumber] = Me.T7 Forms![Robot]![productcode] = Me.t0 Forms![Robot]![OrderQty] = Me.T3 Forms![Robot]![zdate] = Me.T6 Forms![Robot]![Mold] = Me.Mold Forms![Robot]![Machine] = Me.Machine Forms![Robot]![Status] = Me.Status Forms![Robot]![ProductBomNum] = Me.Bom DoCmd.Close Dim sql As DAO.Recordset Set sql = CurrentDb.OpenRecordset("TblPoMaterials", dbOpenDynaset) DoCmd.SetWarnings False DoCmd.GoToRecord , , acFirst 'بداية المشكلة من هذا السطر For m = 1 To T8 With sql .AddNew !PONumber = T7 !MaterialCode = Code1 !MaterialName = T1 !ProductionDate = T6 !Shift = "none" !cons = T2 !AdditionPercent = Text324 !MaterialType = Text300 !OrderQty = T3 .Update End With DoCmd.GoToRecord , , acNext Next m MsgBox "Done", vbInformation, "Saved successfully" DoCmd.SetWarnings True t0 = "" T6 = "" T7 = "" T3 = "" T10 = "" T10 = "" Status = "" BomCombo = "" Me.ComboMachine = "" Me.ComboMold = "" Mold = "" Machine = "" T216 = "" Me.Requery بالنسبة لأول جزء من الكود مهمته الحاق البيانات فى جدول ما والجملة Sql لالحاق جزء التفاصيل Detail من النموذج الى جدول اخر ,, عند حدوث المشكلة يتم الحاق جزء الهيدر "مهمة النموذج Robot" اما بالنسبة للتفاصيل فلا تضيف حتى السطر الاول منها وبالتالى شككت فى سطر فى الكود بجواره ملاحظه .. قلت اجرب طريقة تانية بدل جملة SQL وقمت بعمل استعلام الحاق مهمته نفس مهمة جملة Sql وكود كالتالى : INSERT INTO TblPoMaterials ( PONumber, MaterialCode, MaterialName, Cons, MaterialType, ProductionDate, Shift, AdditionPercent, OrderQty ) SELECT [Forms]![FrmNewPo]![T7] AS Expr1, [Forms]![FrmNewPo]![Code1] AS Expr2, [Forms]![FrmNewPo]![T1] AS Expr3, [Forms]![FrmNewPo]![T2] AS Expr6, [Forms]![FrmNewPo]![Text300] AS Expr8, [Forms]![FrmNewPo]![T6] AS Expr4, "none" AS Expr5, [Forms]![FrmNewPo]![Text324] AS Expr7, [Forms]![FrmNewPo]![T3] AS Expr9; فاصبح الكود خلف زر الامر بالشكل التالى : Private Sub Command204_Click() DoCmd.OpenForm "Robot" DoCmd.GoToRecord , , acNewRec Forms![Robot]![PONumber] = Me.T7 Forms![Robot]![productcode] = Me.t0 Forms![Robot]![OrderQty] = Me.T3 Forms![Robot]![zdate] = Me.T6 Forms![Robot]![Mold] = Me.Mold Forms![Robot]![Machine] = Me.Machine Forms![Robot]![Status] = Me.Status Forms![Robot]![ProductBomNum] = Me.Bom DoCmd.Close DoCmd.SetWarnings False DoCmd.GoToRecord , , acFirst For m = 1 To T8 DoCmd.OpenQuery "QryAppendMat2" DoCmd.GoToRecord , , acNext Next m MsgBox "Done", vbInformation, "Saved successfully" DoCmd.SetWarnings True t0 = "" T6 = "" T7 = "" T3 = "" 'T5 = "" T10 = "" T10 = "" Status = "" BomCombo = "" Me.ComboMachine = "" Me.ComboMold = "" Mold = "" Machine = "" T216 = "" Me.Requery ولكن استمرت المشكلة ومش عارف المشكلة من ايه بالتحديد وعندى مجموعة ملاحظات , المشكلة مش بتحصل فى القاعدة Accdb مع جداول مرتبطة او مدمجة فى القاعدة قبل فصلها ولكن بتحصل مع Accde فقط المشكلة ممكن تحصل وممكن متحصلش بنفس الظروف وبنفس البيانات يعنى لو حصلت المشكلة وكررت العملية تانى بعد غلق وفتح النموذج ممكن العملية تشتغل تمام بدون اى مشكلة يعنى المشكلة مش سببها حقول فارغة او اختلاف فى نوعية البيانات . حذفت صورة المشكلة بالخطأ ولكن اتذكر ان فيها جزء In Design View يعنى ان النموذج ممكن يكون فى وضع التصميم ازاى فى قاعدة Accde مش عارف بس ممكن يكون تذكرى اللى خاطئ فهلتزم بالنقط اللى متأكد منها . المشكلة ممكن تحصل مرة كل 5 محاولات وممكن تحصل 2 كل 5 محاولات وممكن متحصلش من الاساس , اعتذر مرة اخرى لطول الموضوع واتطلع للمناقشة مع الاساتذة .. دمتم بخير
-
مشكلة جمع كميات الاصناف مرتين لمخزن واحد
Amr Ashraf replied to أكسس وبس's topic in قسم الأكسيس Access
كلنا بنتعلم من حضرتك يا استاذنا من يوم ما اشتركنا فى هذا المنتدى ربنا يبارك فيك .. وانا حاولت الفت نظر الاخ صاحب الموضوع للمشكلة الحقيقية ونحاول نساعده باذن الله على حسب ما تيسر من الوقت. راجع ردى على رسالتك على الخاص وانشره هنا للفائدة وأسس زى ما قلتلك ونكملها مع بعض كل يوم شوية على حسب الوقت المتوفر .. بس لازم التأسيس اللى قلتهولك لأنه الصح على حسب خبرتى فى المجال الصناعى و مجال الاكسس فى نفس الوقت . بالتوفيق -
مشكلة جمع كميات الاصناف مرتين لمخزن واحد
Amr Ashraf replied to أكسس وبس's topic in قسم الأكسيس Access
يعنى رصيد اول المدة ده بمثابة نتيجة جرد بتعمله كل فترة ؟ طيب ماهو لو رصيدك تمام وبتراجع عليه كل اسبوع مثلا مش هتحتاج تعمل جرد وكل اللى هتعمله موضوع ملاحظات على رصيدك انه تم مراجعته فى التاريخ كذا وكانت النتيجة مظبوطة او لو فيه مشكلة هتعمل حركة وارد او صادر كتسوية جردية وبالتالى مش هتحتاج تعمل رصيد اول المدة ده اكتر من مرة أساسا الموضوع مخزنيا خطأ ونسبة الاخطاء هتزيد سواء فى كثرة الجرد او فى الادخال والعامل البشرى بصفة عامة .. عامة هيا مجرد آراء واللى يريحك اشتغل بيه وفى المرفق بتاعى هتلاقى رصيدك بيطلع بناء على كل مخزن على حدى -
مشكلة جمع كميات الاصناف مرتين لمخزن واحد
Amr Ashraf replied to أكسس وبس's topic in قسم الأكسيس Access
انا حليتها بالفعل راجع كل المشاركات .. ولا راجعت والحل مش تمام ؟؟ -
مشكلة جمع كميات الاصناف مرتين لمخزن واحد
Amr Ashraf replied to أكسس وبس's topic in قسم الأكسيس Access
شوف كده .. عملت استعلامات جديدة والنتيجة فى استعلام QryBalance استعلاماتك فيها مشكلة ومعنديش وقت اراجعها .. نصيحة قاعدة البيانات محتاجة اعادة هيكلة هتحصل معاك مشاكل بسبب التقسيم السيئ ليها. تانى حاجة نصيحة اخوية طريقة الطلب والسؤال تبقى افضل من كده لأن محدش مضطر انه يساعدك كله بيساعد على حسب وقته .. بالتوفيق ABcont Amr.mdb -
مشكلة جمع كميات الاصناف مرتين لمخزن واحد
Amr Ashraf replied to أكسس وبس's topic in قسم الأكسيس Access
سؤال بس انتا معملتش رصيد اول المدة كحركة واردة زيها زى اى وارد ليه بتاريخ نهاية السنة اللى فاتت مثلا وجنبها ملاحظة انها رصيد اول المدة وممكن تجيبها بأى استعلام ؟ لى عودة اذا حليتها ليك من اول ملاحظة اخى الكريم واضح ان بناء القاعدة من الاساس غير جيد وبالتالى حتى لو حلينا النقطة دى هتظهر معاك مشاكل فى المستقبل وكل ده بسبب التعقيد اللى بدون داعى .. ومع ذلك هحاول اشتغل على طريقتك يمكن اعرف اطلع اللى انتا طالبه -
استفسار عن تسلسل بشروط .. Count IIF؟؟
Amr Ashraf replied to Amr Ashraf's topic in قسم الأكسيس Access
جزاك الله استاذى الفاضل , سأقوم ان شاء الله بفتح موضوع جديد لمناقشة الطرق لجعل الاستعلامات اسرع وابسط .. بالاشارة الى الفكرة الجديدة فى التقسيم الى استعلامين سأقوم بتطبيقها باذن الله عند تيسر الوقت جزاك الله خير -
استفسار عن تسلسل بشروط .. Count IIF؟؟
Amr Ashraf replied to Amr Ashraf's topic in قسم الأكسيس Access
السلام عليكم .. بجانب حل استاذنا الفاضل جعفر كنت قد طرحت المشكلة فى منتدى اجنبى وبعد مناقشات عديدة تم التوصل لهذا الحل سأقوم بمشاركته حتى تعم الفائدة Sub MakeNum() Dim rs As DAO.Recordset, intS As Integer, strG As String Set rs = CurrentDb.OpenRecordset("SELECT PONumber & MachineNumber & ZDate & Shift AS Grp, ReasonSerial " & _ "FROM tblDowntime WHERE ReasonSerial Is Null ORDER BY PONumber, MachineNumber, ZDate, Shift, ID") strG = rs!grp While Not rs.EOF If strG = rs!grp Then intS = intS + 1 rs.Edit rs!ReasonSerial = intS rs.Update rs.MoveNext Else intS = 0 strG = rs!grp End If Wend End Sub جزاكم الله خير -
استفسار عن تسلسل بشروط .. Count IIF؟؟
Amr Ashraf replied to Amr Ashraf's topic in قسم الأكسيس Access
استاذى الفاضل جعفر زادك الله من علمه وبالفعل فى الطريقة الثانية قريبة جدا مما اطلبه وسنزيد حقلين فقط بالاضافة للتاريخ والوردية سنزيد رقم الماكينة ورقم امر الشغل ليصبح التسلسل طبقا لل4 شروط ,, أما بخصوص السبب فى انى احفظ الرقم فى الجدول لأنى استعمله فى استعلامات اخرى مثل التالى SELECT TblDownTime.PONumber, TblDownTime.Zdate, TblDownTime.Shift, TblDownTime.MachineNumber, IIf([SerialFormat]="Num1" And [MachineNumber]=[MachineNumber],[ReasonCode],"") AS Code1, IIf([SerialFormat]="Num1" And [MachineNumber]=[MachineNumber],[Reason],"") AS Reason1, IIf([SerialFormat]="Num1" And [MachineNumber]=[MachineNumber],[DepartmentResponsible],"") AS Dept1, IIf([SerialFormat]="Num1" And [MachineNumber]=[MachineNumber],[StoppedFrom],"") AS From1, IIf([SerialFormat]="Num1" And [MachineNumber]=[MachineNumber],[StoppedTo],"") AS To1, IIf([SerialFormat]="Num1" And [MachineNumber]=[MachineNumber],[TotalDownTime/Min],"") AS TotalDownTime1 FROM TblDownTime WHERE (((IIf([SerialFormat]="Num1" And [MachineNumber]=[MachineNumber],[ReasonCode],""))<>"")); ومثل هذا الاستعلام هناك 5 آخرين لاحضار رقم عطل اخر لمجموع 5 اعطال متقيدين بال4 شروط (تاريخ-وردية-امرشغل-رقم ماكينة) وفى النهاية استعلام كبير ييضم ال5 اعطال بتفاصيلهم مثل الاستعلام المذكور فى الكود ليصبح كل اعطال الماكينة فى نفس اليوم فى نفس الوردية على نفس امر الشغل كلهم فى سطر واحد فقط (وذلك طبقا لتفضيل المدير فى قراءة التقرير :) ) .. وأعلم استاذى ان هناك طرق افضل ولكن كل شخص يستعمل الادوات التى يتمكن منها كل على حسب مستواه :) نشعر بقلة المعرفة عند مناقشتك فى مواضيع مثل هذه زادك الله من علمه .. اذا كان لديك رحابة صدر لتكملة الموضوع ممكن افتح موضوع جديد لمناقشة طريقة افضل للحصول على نفس النتيجة وطبعا بشكل اسرع .. آسف جدا على الاطالة و سأتصفح الردود غدا باكرا