اذهب الي المحتوي
أوفيسنا

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

قام بنشر

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

اخواني الافاضل مشرفي واعضاء منتدانا العظيم

الحاقا لمشاركة سابقة  بعنوان ( حصر عدد صنف معين داخل النموذج الفرعي )

وكانت بمشاركة اخواني الافاضل ( جعفر – رمهان ) ، وكان لي طلب اخر

ولذلك طرحته بموضوع منفصل ( حسب نظام وقوانين المنتدي الغالي )

الفكرة اخواني الكرام موضحة بمثال كالتالــــي :-

المكان : مطعم وكافية

الاقسام داخل المكان ( 1 - مطعم 2 – المشروبات 3 – الشيشة )

يوجد طابعة بكل قسم من الاقسام المذكورة

الهدف هو طباعة الاصناف الخاصة بكل قسم  ( ارسال الاوردر بالاصناف التابعة لكل قسم على حدة حتي يتم تحضيرها وتقديمها للزبون )

مرفق صورة توضيحية  والقاعدة   ..... مع كامل الشكر والتقدير

 

 

post-140842-0-79494400-1428565036_thumb.

AAA.rar

قام بنشر

وعليكم السلام أخي وائل  :smile:

 

لوسمحت تعطي توضيح بمثال اول مثالين ، وياريت بالصور او بالاكسل (لأني بصراحة ما فهمت المطلوب حسب شرحك  :eek2: )

 

 

 

جعفر

قام بنشر

السلام عليكم

استاذنا الفاضل جعفر يسعدني مرورك الكريم

الفكرة باختصار هو انني اريد طباعة اصناف محددة من داخل الفاتورة حسب نوعها ( اصناف مطعم - اصناف مشروبات - ......)

علي سبيل المثال

الفاتورة بها اصناف وجبات مطعم وبها اصناف مشروبات واصناف اخري

المطلوب عند الضغط علي امر طباعة مطعم  يقوم الكود باختيار وطباعة اصناف المطعم والمحددة مسبقا ( 1001 - 1002 )  فقط  دون باقي الاصناف الاخري

وبالمثل عند الضغط علي امر طباعة مشروبات يقوم الكود باختيار وصباعة اصناف المشروبات والمحددة مسبقا  ( 1003 - 1004 ) فقط دون باقي الاصناف الاخري

وهكذا ....

مرفق صور توضيحية

 

 

 

 

post-140842-0-96482900-1429164682_thumb.

post-140842-0-60140900-1429164705_thumb.

post-140842-0-98152600-1429164719_thumb.

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

السلام عليكم أخي وائل  :smile:

 

اعتذر عن التأخير في الرد  :smile:

 

انت الآن قسمت الاصناف عندك الى 3 مجموعات:

المطعم ، المشروبات ، الشيشة.

ولكن مافي عندنا طريقة نعرف نربط الصنف بالمجموعة !!

 

لذلك ، اقترح عليك عمل حقل جديد في جدول Tmenu وتسميه Item_Group ، وفيه نكتب اسم المجموعة لكل صنف ، هكذا:

post-142414-0-25003300-1429647817_thumb.

 

 

ونضيف الحقل في الاستعلام Qorder والذي يغذي النموذج:

post-142414-0-36238100-1429647828_thumb.

 

 

ثم نضيفه للنموذج مخفيا:

post-142414-0-50117800-1429647839_thumb.

 

 

وهذه الاضافة على كود فتح التقارير:

post-142414-0-69341500-1429647850_thumb.

 

 

ليطلع التقرير هكذا:

post-142414-0-54748400-1429647861_thumb.

 

 

الى هنا وانتهى سؤالك  :smile:

 

اما انا ، فاردت من النموذج ان اعرف عدد كل مجموعة (يعني كم مادة للمطعم مثلا) ، فاستخدمت الوحدة النمطية RowCounter ، واللي كاتبها أحد اصدقائي القدامى:

Option Compare Database
Option Explicit
       
Public Function RowCounter( _
  ByVal strKey As String, _
  ByVal booReset As Boolean, _
  Optional ByVal strGroupKey As String) _
  As Long
  
' Builds consecutive RowIDs in select, append or create query
' with the possibility of automatic reset.
' Optionally a grouping key can be passed to reset the row count
' for every group key.
'
' Usage (typical select query):
'   SELECT RowCounter(CStr([ID]),False) AS RowID, *
'   FROM tblSomeTable
'   WHERE (RowCounter(CStr([ID]),False) <> RowCounter("",True));
'
' Usage (with group key):
'   SELECT RowCounter(CStr([ID]),False,CStr([GroupID])) AS RowID, *
'   FROM tblSomeTable
'   WHERE (RowCounter(CStr([ID]),False) <> RowCounter("",True));
'
' The Where statement resets the counter when the query is run
' and is needed for browsing a select query.
'
' Usage (typical append query, manual reset):
' 1. Reset counter manually:
'   Call RowCounter(vbNullString, False)
' 2. Run query:
'   INSERT INTO tblTemp ( RowID )
'   SELECT RowCounter(CStr([ID]),False) AS RowID, *
'   FROM tblSomeTable;
'
' Usage (typical append query, automatic reset):
'   INSERT INTO tblTemp ( RowID )
'   SELECT RowCounter(CStr([ID]),False) AS RowID, *
'   FROM tblSomeTable
'   WHERE (RowCounter("",True)=0);
'
' 2002-04-13. Cactus Data ApS. CPH
' 2002-09-09. Str() sometimes fails. Replaced with CStr().
' 2005-10-21. Str(col.Count + 1) reduced to col.Count + 1.
' 2008-02-27. Optional group parameter added.
' 2010-08-04. Corrected that group key missed first row in group.

  Static col      As New Collection
  Static strGroup As String
  
  On Error GoTo Err_RowCounter
  
  If booReset = True Then
    Set col = Nothing
  ElseIf strGroup <> strGroupKey Then
    Set col = Nothing
    strGroup = strGroupKey
    col.Add 1, strKey
  Else
    col.Add col.Count + 1, strKey
  End If
  
  RowCounter = col(strKey)
  
Exit_RowCounter:
  Exit Function
  
Err_RowCounter:
  Select Case Err
    Case 457
      ' Key is present.
      Resume Next
    Case Else
      ' Some other error.
      Resume Exit_RowCounter
  End Select

End Function


Public Function Reset_RowCounter()

    Call RowCounter(vbNullString, False)
End Function

أضفت حقل RowID ليقرأ هذه الوحدة النمطية ، في الاستعلام Qorder

post-142414-0-95825800-1429648322_thumb.

 

 

وأضفت الحقل الى النموذج ، وعملت له تنسيق مشروط (علشان لون ارقام التسلسل تتماشى مع الوان ازرار التقرير :smile: )

post-142414-0-92616700-1429647872_thumb.

 

 

بهذه المعادلة في التنسيق الشرطي:

post-142414-0-79384900-1429647883_thumb.

 

 

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

post-142414-0-93777400-1429648602_thumb.

 

 

والنتيجة اصبحت:

1. يوجد رقم تسلسلي للمطعم ، وتسلسل آخر للمشروبات ، وتسلسل آخر للشيشة ،

2. لون ارقام التسلسل ، هو نفس لو زر طباعة التقارير  :smile:

post-142414-0-42052800-1429647895_thumb.

 

 

صافي يالبن  :smile:

 

جعفر

52.AAA.mdb.zip

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

بسم الله ماشالله فناااااااااان كالعادة استاذنا الجميل جعفر

بارك الله فيك وزادك الله من علمه

مع خالص شكري وتقديري

قام بنشر

المطعم ، المشروبات ،           الشيشة ( شيشة تفاح )

لا يستوون....

:rol:

 

 

زين الحمدلله جانا المشرف شخصيا ،

أبا عمر واللي يرحم والديك شوف لي هالموضوع ، ترى هذا الموضوع تعبني شخصيا ، واضطررت ان اعمل قانون خاص بي للمنتدى ، قلت فيه:

 

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

لهذا ، فانا اضع بين يديك قانون جعفر:

 

على هذا الرابط http://www.officena.net/ib/index.php?showtopic=60448&p=388352

 

 

والحمدلله في هذا الموضوع ، المكان كان بدون شيش وقت الشغل  :smile:

 

 

جعفر

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