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

مطلوب الحاق الحقول ودوال الى جدول بالاكواد


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

السلام عليكم

مطلوب ان امكن الحاق الحقول اللى فى استعلام اعمار2

الى جدول الاعمار

وهما 8 حقول اغلبهم دوال

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

فسيتم الاعتماد على كود الحاق مباشرة docmd.sql "insert into "

لكنى غير متمكن بها حتى الان

وجزاكم الله خيرا

الملف

الحاق الحقول بالكود.accdb

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

جزاكم الله خيرا
1- على سرعة الرد
2- وعلى اصرارك على  مساعتى بشتى الافكار

بالضبط هذا ما اريده بشرط ( لا اعتمد على الاستعلام اطلاقا )

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

يعنى اول ما الكود يشتغل والتاكد من النتائج هعمل حذف للاستعلام ولا اعتمد علية فى اى مرة استخدم الزر

وذالك لان الداله dsum مع كتر الداتا وبالشروط ده بتاخد حوالى 10 دقائق توقف للملف تخيل

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

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

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

لكن المشكلة هنا في ملفك هي

ان بعض القيم والنتائج تعتمد على استعلام اعمار2

لاحظ الصورة

في حال حذفت الاستعلام سيتم ارجاع القيمة الى صفر لعدم توفر المصدر

اذا استطعت إيجاد القيم بعيدا عن اعمار2 فلا مشكلة وسيتم الحاق البيانات بجملة اس كيو ال 

أتمنى ان تكون قد فهمت مقصدي

في المثال المرفق الالحاق يعمل بشكل سليم اذا وجد الاستعلام 

وفي حال حذفته سيرجع القيم الى صفر

 

Capture.PNG

Capture2.PNG

InsertTest.accdb

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

فعلا الكود يعمل بشكل ممتاز وكمان كما اريد بدون الارجاع للاستعلامات

لكن ...........

ما زالت المشكله قائمه حتى الان ثقل رهيب عند تنفيذ الكود او فتح الاستعلام ولا ادرى لماذا ؟؟؟

سارفع لكم ملف به داتا للعمل عندى ( جزء من الداتا تظهر المشكله حوالى 14 الف سجل )

ملف مرفق

InsertTest.rar

---------------------------------------

فلكم ان تتخيلوا لو وصل عدد السجلات 70 الف او 100 الف

فعلا الاستعلام لا يفتح الا بعد 10 دقائق ولما بيفتح لا يسمح بالانتقال داخل السجلات

اكيد فى حاجه مش مفهومه ( او ضعف الاكسس هنا ) ولا اتمنى ذالك

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

3 ساعات مضت, اسلام سيد said:

فعلا الكود يعمل بشكل ممتاز وكمان كما اريد بدون الارجاع للاستعلامات

لكن ...........

ما زالت المشكله قائمه حتى الان ثقل رهيب عند تنفيذ الكود او فتح الاستعلام ولا ادرى لماذا ؟؟؟

سارفع لكم ملف به داتا للعمل عندى ( جزء من الداتا تظهر المشكله حوالى 14 الف سجل )

ملف مرفق

InsertTest.rar

---------------------------------------

فلكم ان تتخيلوا لو وصل عدد السجلات 70 الف او 100 الف

فعلا الاستعلام لا يفتح الا بعد 10 دقائق ولما بيفتح لا يسمح بالانتقال داخل السجلات

اكيد فى حاجه مش مفهومه ( او ضعف الاكسس هنا ) ولا اتمنى ذالك

ايش هذا هنق البرنامج :wavetowel:

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

8 minutes ago, ابوآمنة said:

اكيد فى حاجه مش مفهومه ( او ضعف الاكسس هنا ) ولا اتمنى ذالك

ليس ضعفا في الاكسس

بناء الجدول حركات من البداية خاطئ

يجب تقسيمه الى ثلاثة اقسام

بيانات العملاء

دفعات

خصم

مرتجعات

وبناء عليه يتم ربط الجداول بمعرف ثابت هو رقم العميل

وحبذا لو يتم التسميات بالانجليزية ولو كانت معربة

أتمنى ان تستطيع عمل ذلك

وسوف تكون النتائج افضل بكثير

::

 

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

48 دقائق مضت, AlwaZeeR said:

وحبذا لو يتم التسميات بالانجليزية ولو كانت معربة

أتمنى ان تستطيع عمل ذلك

وسوف تكون النتائج افضل بكثير

::

 

تم عمل ذالك بالفعل ولم تنجح
تم تغير بكود للعميل (رقم) بدل الاسم كامل ونفس المشكله بالضبط (ثقل فى الفتح والتحميل والانتقال بين السجلات)

فعلا اتمنى اجد حل والا ... لا مبررا سوى ضعف فى الاستعلامات بالاكسيس

اما المسميات العربى لا مشكله فها من ناحية ثقل البرنامج ( فقط بتججن عند كتابة الاكود فى بعض الاحيان )

 

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

بس للتوضيح انا بالكود او بالاستعلام فى طال الحالتين نعتمد على الاستعلام 

ولكن بغض النظر عن كونط تريد نسخ بيانات من عدد   11207   سجل وفى كل سجل 8 حقول تقريبا 
انت تمرر بيانات جدول الحركات  والذى يساوى عدد  14267  سجل  الى استعلام     اعمار1     والذى يقوم بعمل  SUM  لبعض الحقول

يمكن ان نتغاضى عما سبق

ولكن لاحظ الاتى 

الدائن: Nz([مجموع المرتجعات],0)+Nz([مجموع الخصم],0)+Nz([مجموع الدفعات],0

يجب ان تتم هذه العملية الحسابية اولا قبل نسخ قيمة الحقل

وكذلك

x1: Nz(DSum("المدين","اعمار2","[اسم العميل]='" & [اسم العميل] & "'

وكذلك
 

x2: Nz(DSum("الدائن","اعمار2","[اسم العميل]='" & [اسم العميل] & "'"),0)

وايضا
 

الباقى: IIf([x1]-[x2]<=0,0,IIf([x1]-[x2]>=[المدين],[المدين],[x1]-[x2]))

واخيرا
 

ايام التاخير: DateDiff("d",[التاريخ],Date())

ياله من كم هائل من المعادلات الحسابية المعقدة والتى تتم لكل حقل على حده سم اضف ما قد تغاضينا عنه سالفا :rol:

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

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

InsertTest.accdb

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

في ٣٠‏/٦‏/٢٠١٩ at 16:32, ابا جودى said:

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

للاسف يا هندسة ما زال ثقيل جدا

وهذا كان مشروع مقدم لاحد الشركات الكبرى

وسيتم الاعتذار عنه ... حتى اتمكن من معالجتها بالشمل الصحيح

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

فقط اريده تقرير

فتخيل بقى لو تم تركه كما هو فى الاستعلام وفتحت تقرير به بدل من 14 الف سجل ممكن يصل الى 100 الف سجل

وطبعا هكون واضع شرط فى الرصيد لا يساوى <>0 للوصول للخلاصه

تخيل المعانه

لكنى نسيت اشكر تعبك واستجابتك لى وحسن تواصلكم

فانتم قرة عينى والله اسأل ان يجزيكم كل خير ... اللهم امين

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

  • 2 weeks later...

السلام عليكم

اخي اسلام السيد

ارفقت لك مثال لاعمار الذمم وانا جربته على حوالي 24000 سجل وكان سريعا

المشكلة عند تطبيقك للمثال يجب تصفية البيانات من

اول استعلام تكون النتيجة اسرع على  كل

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

وانظر الى الفرز في الاستعلامات الخاصة باعمار الذمم   ادخل 30000سجل وانظرهل النتيجة سريعة ام بطيئة

تم تعديل بواسطه محب العقيدة
  • Like 1
رابط هذا التعليق
شارك

  • 8 months later...

السلام عليكم 

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

https://drive.google.com/file/d/1HWuQXyYFpT2KXRGS2dYlYhFRIbFUm53Z/view?usp=sharing

السلام عليكم 

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

https://drive.google.com/file/d/1HWuQXyYFpT2KXRGS2dYlYhFRIbFUm53Z/view?usp=sharing

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

5 ساعات مضت, محب العقيدة said:

السلام عليكم 

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

https://drive.google.com/file/d/1HWuQXyYFpT2KXRGS2dYlYhFRIbFUm53Z/view?usp=sharing

السلام عليكم 

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

https://drive.google.com/file/d/1HWuQXyYFpT2KXRGS2dYlYhFRIbFUm53Z/view?usp=sharing

جزاكم الله خيرا 🙏 شكرا لك سيدي الكريم 🌹

لوتشرح يكون تفضلا وتكرما منكم سيدى

يعنى دائماً وابدا اعمل حساب طلاب العلم امثالى والذين ينتظرون العلم بلهفة مشتاق :eek2:

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

استغفر االه 

انت معلمنا ونحن مجرد طلاب علم

وقد وعدت سابقا بان اشرح كود الوارد اولا صادر اولا 

وهذا جزء من ذاك الكود لذا اسمحلي ان افتح موضوع جديد لشرح كود الوارد اولا صادر اولا او اخيرا

 ولان جهاز الكمبيوتر لدي

بطيء بعض الشيء ولكي لا بفصل النت ويضيع ما 

اكتب ساكتب بعدة مشاركات ان شاء الله

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

37 دقائق مضت, محب العقيدة said:

وقد وعدت سابقا بان اشرح كود الوارد اولا صادر اولا 

وهذا جزء من ذاك الكود لذا اسمحلي ان افتح موضوع جديد لشرح كود الوارد اولا صادر اولا او اخيرا

 ولان جهاز الكمبيوتر لدي

بطيء بعض الشيء ولكي لا بفصل النت ويضيع ما 

اكتب ساكتب بعدة مشاركات ان شاء الله

العفو منكم استاذى الجليل انتظر موضوعكم بلهفة مشتاق :eek2:

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

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

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



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

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

Important Information