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

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

قام بنشر

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

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

قلت ياولد مالها الا رجال اوفسنا فلا تخيبون ظني

وإذا اردتم إيضاح او مثال وضعناه

ولكم شكري سلفا

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

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

سواء باستعلام او امر برمجي او غيره

قام بنشر (معدل)

بالنسبه للاستعلام عن أقل قيمه في حقل معين

افتح صفحة تصميم الاستعلام

و ليكم لديك الحقلين :

prod,amount

SELECT Count(mytable.Prod) AS CountOfProd, Min(mytable.Amount) AS MinOfAmount
FROM mytable;
أما بالنسبه لاختيار قيم عشوائيه يوجد الكود التالي :
Dim MyValue
Randomize    

MyValue = Int((6 * Rnd) + 1)

يختار لك قيم عشوائيه بين الواحد و السته

تستطيع تطبيقه على مثالك بأخذ رقم آخر سجل عندك ( تعليمة max - مشابهة لتعليمة min (

و تضع قيمة أكبر حقل بدل السته في المثال أعلاه ,

تم تعديل بواسطه rudwan
قام بنشر

اخي الكريم

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

وأريد ان استخدمها كشرط لإظهار حقل آخر

ولكي تصل الفكرة ادرج مثال

لدي جدول به الحقول التالية:

رقم الموظف ...................اسم الموظف.........عدد المعاملات

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

1.................................علي............................3

2 ................................سعيد .......................... 2

3................................محمد ........................... 5

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

بحيث يظهر رقم الموظف الذي لديه أقل معاملات

وفي المثال اعلاه المفروض تكون نتيجة الاستعلام كما يلي :

رقم الموظف...............اسم الموظف

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

.....2..........................سعيد........

ارجو ان تكون الصورة واضحه

كنت اود ارفاق المثال ولكني لم اجد اختيار مرفق

ارجو اخي الكريم ان لا تهمل الرد لان هذه الخطوة جزء من برنامج متكامل اعده للعمل لدينا

قام بنشر (معدل)

أولا حساب اقل قيمة معاملات

F=dmin("perNo","MyTABLE")
ثانيا :استخراج رقم الموةظف
K=DLOOKUP("EmpName","MyTable","PerNo= "& f)

على أساس :

PerNo عدد المعاملات

و عدل قيم الحقول بما عندك في الجداول

تم تعديل بواسطه rudwan
قام بنشر

رضوان وينك مالك حس :fff:

اكيد تبغاني اسألك علاشان تجاوبني :lol:

خذ والله يعينك على كثرة اسئلتي :@

بفرض ان الجدول اصبح كما يلي

رقم الموظف ...................اسم الموظف.........عدد المعاملات........تاريخ نهاية الاجازة

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

1.................................علي............................3

2 ................................سعيد .......................... 2 .................10/12/1425

3................................محمد ........................... 5

احد الموظفين لديه إجازة وفي هذه الحالة لن تحال إليه معاملات

بمعنى آخر اود ان اضيف للكود الذي ذكرته لي في الاعلى شرط أخر وهوا

ان يكون تاريخ نهاية الاجازة اصغر من التاريخ الحالي فلو كان تاريخ الحالي 08/12/1425 فإنه لن يختار الموظف رقم 2 رغم انه اقل قيمة بل يختار الموظف رقم 1

ايضاح اكثر

اختيار رقم الموظف بشرط ان يكون عدد المعاملات لديه اقل قيمة ويكون تاريخ نهاية الاجازة أقل من تاريخ اليوم ( التاريخ الحالي )

ولك مني الف الف الف الف شكر على حسن تعاونك معي :fff:

توضيح اكثر

قام بنشر

يمكن

اضاقة شرط آخر الى الكود وهو أن يكون التاريخ اقل من التاريخ الحالي

اي

K=DLOOKUP("EmpName","MyTable","PerNo= "& f and "MyDate <" &Date)

و الأحسن تعمل استعلام تضع فيه شرط التاريخ المطلوب

ثم تغير اسماء الجدول في المعادلات الى اسم الاستعلام

قام بنشر

اخي rudwan

والله لقد احرجتني بكرمك ومتابعتك لموضوعي هذا

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

ولا تروح بعيد يمكن نحتاجك :lol: ......طماع

قام بنشر (معدل)

عفوا , الكود الأخير الذي وضعته أنا غير صحيح

K=DLOOKUP("EmpName","MyTable","PerNo= "& f and "MyDate <" &Date)
لأنه في هذه الحاله لو كان الموظف الذي في اجازه هو صاحب أقل عدد , فلذلك لن يتم اختياره بواسطة هذا الكود . كان من المفروض أن يكون الكود الأول كذلك
F=dmin("perNo","MyTABLE","MyDate <" &Date)
و عليه يتم اختيار علي بدلا من سعيد ثم يأتي الكود الثاني :
K=DLOOKUP("EmpName","MyTable","PerNo= "& f)

و الأحسن تعمل استعلام تضع فيه شرط التاريخ المطلوب

ثم تغير اسماء الجدول في المعادلات الى اسم الاستعلام

تم تعديل بواسطه rudwan
قام بنشر

فعلا انا حاولت بالطريقة الاولى ما زبطت

ولأن سوف احاول بالطريقة الثانية التي ذكرتها لي حاليا

ولا زال الشكر يتواصل اخي الكريم

وليس هناك من العبارات ما يوصل شكري لك

ولكن جهدك لا يضيع عند الله

ولك تحياتي

قام بنشر (معدل)
يمكن

اضاقة شرط آخر الى الكود وهو أن يكون التاريخ اقل من التاريخ الحالي

اي

K=DLOOKUP("EmpName","MyTable","PerNo= "& f and "MyDate <" &Date)

هذا ما اريده بالفعل فأنا اريد الموظف الذي في إجازة لاتحال إليه معاملات

ولكن اخي رضوان

الامر لم يتنفذ بعد إضافة التشييك على التاريخ ارجو التأكد

بارك الله فيك

تم تعديل بواسطه abutawfig
قام بنشر

يا أخي عد الى مشاركتي الأخيره حيث عدلت الكود

الظاهر أنك ما انتبهت الى التعديل

F=dmin("perNo","MyTABLE","MyDate <" &Date) 

K=DLOOKUP("EmpName","MyTable","PerNo= "& f)

قام بنشر

السلام عليكم

أولا : كيف رقم الموظف تجعله نص , لابد أن يكون رقم , طالما أن الاسم موجود و تنسيقه نص

ثانيا : جدول المحاسبين فيه حقل اسمه مجموع معاملات الموظف , ف يحال وردت معامله جديده للموظف , كيف يتم اضافتها الى رصيده في الجدول ‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍؟؟؟؟؟؟؟؟؟

و كذلك الأمر بالنسبه لجدول المعاملات ,

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

جدول الموظفين : رقم - اسم - تاريخ نهاية الاجازه

جدول المعاملات : رقم - رقم الموظف - نوع المعامله - تاريخ ورودها

الاستعلام رقم واحد : استعلام مجاميع لجدول المعاملات بناء على رقم الموظف يعطيك

عدد المعاملات المحوله سابقا للموظف ,

عدل على هذا الشكل , ثم نكمل الباقي

قام بنشر

حبيب قلبي رضوان

بالنسبة للحقول التي لن يتم عليها أي عمليات حسابية جعلتها نص حتى ولو كان مسماها رقم كذا ( مثل رقم الموظف ) وكذلك رقم المعاملة مثلها مثل رقم الهاتف وغيرها وليست مشكلة في البرنامج فقد تختلف فيها وجهات النظر وانا قصدت ان اجعلها هنا نصية.

أما بخصوص الحقل الذي تتم عليه الاضافة في جدول الموظف فتتم إضافة المعاملات لكي نعرف رصيد الموظف من المعاملات لكي نعرف من اقل قيمة

وجدول الموظف ماهوا الا للمقارنة وتحديد الاختيار فقط وتتم عملية الاضافة بالشكل التالي

02.gif

03.gif

ومختصر البرنامج

انني اريد بعد إدخال رقم القيد وتاريخه وعدد المعاملات فيه

يتم الضغط على زر حول

فيتم اختيار الموظف الذي ستحال إليه المعاملة

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

ثم يتم إضافة عدد المعاملات إلى رصيده من المعاملات

والامور ماشية معاية زي الحلاوة

عدا عملية الإجازة وقد وضحتها مسبقا

ولك تحياتي

قام بنشر

السلام عليكم

المشكله ليست فقط في الكود , لأنه عندك في جدول المحاسبين حقل الاجازات , ليس كل موظف له حقل اجازه , و بالتالي عندما شرط التاريخ فلن يختار الا الموظفين الذين تاريخ اجازتهم أقل من التاريخ الحالي , اي الموظفين الذين ليس لهم حقل اجازه فسوف يتم استبعادهم من الاختيار , و بالتالي فسيجلسون بدون عمل

اعمل استعلام جديد و ليكن اسمه QryAvailableAccountants

SELECT count_table.count_no, count_table.count_name, count_table.count_work, count_table.vacetion_date
FROM count_table WHERE (((count_table.vacetion_date)<Date() Or (count_table.vacetion_date) Is Null))
ORDER BY count_table.count_work;
و الآن عد الى الكود و احذف منه كل شي و ليكن كما يلي :
form_count_no = DFirst("count_no", "QryAvailableAccountants")

و بذلك تكون حققت ثلاثة شروط في شرط واحد و هي :

اختيار موظف عشوائي - عدد معاملاته أقل من غيره - تاريخ اجازته أقل من التاريخ الحالي

قام بنشر

اخي رضوان

انت مبدع بالفعل (y)

وان الكلمات لا تسعفني لأقدم لك شكري على طول بالك على كثرة اسئلتي

واقولها حقيقة وليست مجاملة

لقد استفدت من هذا النقاش الشيء الكثير

:fff: فلك مني ارق وأعذب تحية :fff:

وبرضه لا تبعد يمكن نحتاجك كمان :d

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information