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

أبو عبدالله الحلوانى

الخبراء
  • Posts

    1727
  • تاريخ الانضمام

  • Days Won

    5

مشاركات المكتوبه بواسطه أبو عبدالله الحلوانى

  1. Private Sub B_1_AfterUpdate()
        If Me.B_1 = ChrW(1584) & ChrW(1603) & ChrW(1585) Then
            Me.t_1 = True
            Me.t_2 = False
        Else
            Me.t_1 = False
            Me.t_2 = True
        End If
    End Sub

    سبقني بها استاذنا قاسم 

    ولكن اضافة الي ما تفضل به يفضل ان لا تجعل في الكود أحرف عربية لتفادي مشكلات اختلاف اللغة علي الاجهزة 

  2. 31 دقائق مضت, نهيلة said:

    الفورم الفرعي يحتوي على حقول من جدول معين

    هل هو نفس الجدول ام جدول آخر غير الموجود بالاستعلام ؟! 

    31 دقائق مضت, نهيلة said:

    بعد الحقول الغير المرتبطة فهل يمكن ان يكون سبب رسائل الخطأ هم الحقول غير المرتبطة ؟

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

    ولكن لعل المشكلة تكون:

    1- بوجود علاقة بين جدولين تتطلب ادخال بعض البيانات المرتبطة وتم اهمال احدها 

    2- او يكون هنالك حقل الزامي يجب ادخال بيانات به ولم يتم تمرير قيمة له بالاستعلام

    3- أو يكون هنالك خطأ املائي بكتابة مسميات بعض الحقول 

    او غيرها من الأمور التي لا يمكن تخمينها الا بعد معاينة المشكلة من خلال المرفق 

    • Like 2
  3. من وجهة نظري الشخصية - ومن الناحية المحاسبية فان هنالك ما يسمي بالخصم المكتسب وهذا الحساب يشمل القيمة المالية التي يتم تخفيضها من قيمة المشتريات (ويدخل في ذلك ما كان عينيا او ماديا) مثال ليتضح المقال:

    لو ان هذه الشاشات ثمنها 1000 مثلا فقيمة الواحدة 50 اذا اجمالي قيمة ال 22 شاشة هو 1100 ويتم معالجة العملية من الناحية المحاسبية بقيد مزدوج متعدد بهذا الشكل 

    1100 من حـ/ المشتريات 

            الي حـ/ مذكورين 

        1000   حـ/ الصندوق (بقيمة المبلغ المدفوع فعليا)

       100     حـ/ الخصم المكتسب (قيمة المبلغ الذي تم خصمه من قيمة المشتريات الفعلية أو قيمة البونص او اي شيئ آخر)

    وقيمة هذا الخصم دائنة وهو تابع لحساب الأرباح والخسائر في الحسابات الختامية

    ارجو ان يكون كلامي واضحا فقد تكلمت باسلوب المحاسبين 😁

    من الناحية البرمجية 

    1- قيمة المشتريات الفعلية هي 1100 يعني ما سيتم ترحيله الي المخازن هو عدد 22 شاشة بقيمة 1100 يعني قيمة الشاشة الواحدة لن تتغير اي بقيمة 50 كما هي 

    2- قيمة الصندوق او الخزينة او البنك ستقل بقيمة المبلغ المدفوع فعليا بقيمة 1000 فقط 

    3- قيمة ال 2 شاشة البونص سيتم اعتبارها ارباح مكتسبة بالكامل 100 

    أرجو ان لا يكون هذا التوضيح بحاجة الي توضيح :biggrin:

    هذا والله اعلم

     

    • Like 2
  4. وعليكم السلام ورحمة الله وبركاته

    اضم صوتي الي صوت استاذا @Barna فسؤالك يحتاج الي مزيد من التوضيح 

    ولكن علي قدر فهمي للسؤال ربما ساعدك هذا الكود 

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

    private Sub zer1_Click()
    	txt2 = 0
    End Sub

    وفقط

    • Like 1
  5. 57 دقائق مضت, Eng.Qassim said:

    ياريت ترفق الاستعلام بمثال...

    اضم صوتي الي صوتك - فبلمثال يتضح المقال 🙂

    فمن الواضح انها تريد الحاق البيانات الي الجدول من خلال فورم رئيس يضم فورم فرعي وبكل فورم مجموعة من الحقول التي يتم ملأها بالجدول

    • Like 1
  6. 12 دقائق مضت, ahmedhassan1948 said:

    Option Compare Database

    Public Myvalue As Integer
    Public MyP2 As Integer

    الفورم الاول 

    Myvalue = NP1.Value
    MyP2 = Np2.Value

    الفورم الثاني 

        If ComPlat.Value = Twitter & comType.Value = Click Then
            
            TargetPlas.Value = txtCost.Value * Myvalue
            Else
    ComPlat.Value = Twitter & comType.Value = engagement
    TargetPlas.Value = txtCost.Value * MyP2
           
            End If

    جرب هذا التعديل

    Option Compare Database
    
    Public Myvalue As Integer
    Public MyP2 As Integer
    
    الفورم الاول 
    private sub Zer1_Click()
      Myvalue = NP1.Value
      MyP2 = Np2.Value
    End sub
    
    الفورم الثاني 
    
        If ComPlat.Value = "Twitter" And comType.Value = "Click" Then
            TargetPlas.Value = txtCost.Value * Myvalue
        Elseif ComPlat.Value = "Twitter" And comType.Value = "engagement" then
    		TargetPlas.Value = txtCost.Value * MyP2
    	End If

    ووافني بالنتائج

    اذا لم تزل تواجه مشكلة ارفق مرفق للتعديل.

    11 دقائق مضت, Eng.Qassim said:

    ياريت تشرح الفكرة بأكثر تفصيل

    الفكرة بكل بساطة هي:

    1- انشاء متغير عام يمكن استدعائه من اي مكان بالبرنامج ( عن طريق انشاء وحدة نمطية عامة وكتابة تصريح عام بها باسم المتغير كما هو موضح بالمشاركة الأولي)

    2- نمرر قيمة الي هذا المتغير العام من اي فورم او تقرير او ... 

    3- نقرأ قيمة المتغير من اي مكان كذلك سواء فورم او تقرير او ...

    وانتهي الأمر

    • Like 1
  7. السلام عليكم 

    جرب هذا التعديل ووافني بالنتائج

    ملاحظة: من المستحسن ان لا تجعل شيئا مكتوبا باللغة العربية داخل الكود هذا سيسهل عليك العميل ويجنبك مشكلات كثيرة فيما بعد عندما تحاول نقل برنامجك للعمل علي اي جهاز آخر غير جهازك الذي تعمل عليه :yes:

    وهذا سيتأتّي معك سهلا ميسورا ان عملت علي نسخة انكليزية من الأكسس وكذلك ان تجعل مسميات الحقول داخل الجداول والنماذج والتقارير والاستعلامات .... باللغة الانكليزية ولا بأس من جعل الوصف باللغة العربية

    هذا ليس تحيزا للغة الاجانب ولكن هذا سيسهل عملك ولا يوقعك بمشكلات كبيرة فيما بعد انت بغنا عنها :yes:

    تمنياتي بالتوفيق

    za-AKSAT-Pro-LAST- (1).mdb

  8. وعليكم السلام ورحمة الله

    لتقسيم الكود يتم استخدام مسافة (فراغ)  ثم هذه العلامة ( _ )  بعد الفراغ كالمثال 

    CurrentDb.Execute "INSERT INTO TEAM(DateDA,DateCmd,NumBesoin,demandeur,commande,imputation,acheteur,departement,designation,marque, _ reference,devise,QTEcommande,QTE,frs1,PU1,PT1,frs2,PU2,PT2,frs3,PU3,PT3,prixRETENU,devise2,TotalEUR, _ fournisseur,CONTRAT,FABRICANT,NonMisEnCON,REGULE,SEMAINE,MOIS,PRODUCTIVITE,devise3,ProdEnEUR) " _
    & "VALUES('" & Me.DateDA & "','" & Me.DateCmd & "','" & Me.NumBesoin & "','" & Me.Demandeur & "','" & _ Me.Commande & "','" & Me.imputation & "','" & Me.Acheteur & "','" & Me.Departement & "','" & Me.TXTdesign &  _ "','" & Me!T_REFRENCE.Form.marque & "','" & Me.txtREF & "','" & Me!T_REFRENCE.Form.devise & "','" & Me.Qte & _ "','" & Me!T_REFRENCE.Form.FRS1 & "','" & Me!T_REFRENCE.Form.PU1 & "','" & Me!T_REFRENCE.Form.PT1 & "','" &  _ Me!T_REFRENCE.Form.FRS2 & "','" & Me!T_REFRENCE.Form.PU2 & "','" & Me!T_REFRENCE.Form.PT2 & "','" &  _ Me!T_REFRENCE.Form.FRS3 & "','" & Me!T_REFRENCE.PU3 & "','" & Me!T_REFRENCE.PT3 & "','" & _ Me!T_REFRENCE.PRIXretenu & "','" & Me!T_REFRENCE.Devise2 & "','" & Me!T_REFRENCE.TotalEUR & "','" & _ Me!T_REFRENCE.fournisseur & "','" & Me!T_REFRENCE.CONTRAT & "','" & Me!T_REFRENCE.Fabricant & "','" & _ Me!T_REFRENCE.NonMisEnCON & "','" & Me!T_REFRENCE.Regule & "','" & Me.Semaine & "','" & Me.Mois & "','" & _ Me!T_REFRENCE.productivite & "','" & Me!T_REFRENCE.devise3 & "','" & Me!T_REFRENCE.prodEnEUR & "'"

    أو يمكنك تقطيع الكود علي عدة اسطر في متغير نصي وتمرير قيمته الي دالة تنفيذ الاستعلام مثل:

    Dim SQLStr as String
    SQLStr = "INSERT INTO TEAM(DateDA,DateCmd,NumBesoin,demandeur,commande,imputation,acheteur,departement,"
    SQLStr = SQLStr & "designation,marque,reference,devise,QTEcommande,QTE,frs1,PU1,PT1,frs2,PU2,PT2,frs3,PU3,PT3,"
    SQLStr = SQLStr & "prixRETENU,devise2,TotalEUR,fournisseur,CONTRAT,FABRICANT,NonMisEnCON,REGULE,SEMAINE,MOIS,"
    SQLStr = SQLStr & "PRODUCTIVITE,devise3,ProdEnEUR) VALUES('" & Me.DateDA & "','" & Me.DateCmd & "','"
    SQLStr = SQLStr & Me.NumBesoin & "','" & Me.Demandeur & "','" & Me.Commande & "','" & Me.imputation & "','"
    SQLStr = SQLStr & Me.Acheteur & "','" & Me.Departement & "','" & Me.TXTdesign & "','" & Me!T_REFRENCE.Form.marque & "','" 
    SQLStr = SQLStr & Me.txtREF & "','" & Me!T_REFRENCE.Form.devise & "','" & Me.Qte & "','" & Me!T_REFRENCE.Form.FRS1 & "','" 
    SQLStr = SQLStr & Me!T_REFRENCE.Form.PU1 & "','" & Me!T_REFRENCE.Form.PT1 & "','" & Me!T_REFRENCE.Form.FRS2 & "','" 
    SQLStr = SQLStr & Me!T_REFRENCE.Form.PU2 & "','" & Me!T_REFRENCE.Form.PT2 & "','" & Me!T_REFRENCE.Form.FRS3 & "','" 
    SQLStr = SQLStr & Me!T_REFRENCE.PU3 & "','" & Me!T_REFRENCE.PT3 & "','" & Me!T_REFRENCE.PRIXretenu & "','"
    SQLStr = SQLStr & Me!T_REFRENCE.Devise2 & "','" & Me!T_REFRENCE.TotalEUR & "','" & Me!T_REFRENCE.fournisseur & "','"
    SQLStr = SQLStr & Me!T_REFRENCE.CONTRAT & "','" & Me!T_REFRENCE.Fabricant & "','" & Me!T_REFRENCE.NonMisEnCON & "','"
    SQLStr = SQLStr & Me!T_REFRENCE.Regule & "','" & Me.Semaine & "','" & Me.Mois & "','" & Me!T_REFRENCE.productivite & "','"
    SQLStr = SQLStr & Me!T_REFRENCE.devise3 & "','" & Me!T_REFRENCE.prodEnEUR & "'"
    
    CurrentDb.Execute SQLStr

    ارجو التجربة وموافاتي بالنتيجة

     

    • Like 3
  9. 1 ساعه مضت, ahmedhassan1948 said:

    انا محتاج اضربها حسب القيمة الموجودة في p1 او p2 او p3 وهكذا 

    اذا لم يكن فهمي خاطئا فلم يتسع وقتي لتحميل المرفق 

    واذا اردت ان تمرر احد هذه القيم من فورم الي اخر ولا يشترط ان يكون كلاهما مفتوحا بنفس الوقت اليك هذه الفكرة.

    قم بانشاء وحدة نمطية واكتب بها هذا السطر

    Public Myvalue as integer

    وبهذا الشكل يمكنك تمرير اي قيمة من الفورم اليها لتستعملها بأي فورم آخر تريده بالكيفية التي تريدها مثال

    من الفورم الأول مثلا اكتب هذا الكود

    Myvalue = p1  'Or p2 or p3 as you want

    ومن الفورم الثاني اكتب هذا الكود 

    TargetPlas= Myvalue * 0.5  'أو اي معادلة حسابية تريد ان تجريها علي هذا المتغير

    وانتهي الأمر

  10. مبارك علينا ابا الجود 

    وأعانكم الله ووفقكم لكل خير والي ما يحبه الله ويرضاه من امور الدنيا والأخرة 

    نفع الله بكم اينما حللتم أو ارتحلتم

    وجمعني بكم وبسائر أساتذتنا الأكارم الأفاضل في مستقر رحمته مع النبيين والصديقين والشهداء والصالحين - وحسن اولئك رفيقا -

    آمين

    • Thanks 1
  11. السلام عليكم ورحمة الله وبركاته

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

    احب دوما أعوض عن القيم النصية بقيم رقمية بالأكواد كلما كان ذلك متاحا

    تجنبا لمشكلات الترجمة واختلاف اللغة بالأجهزة التي سيعمل عليها البرنامج وهذا مثال تعديلا بسيطا علي كود استاذا جعفر لنتفادي وجود اسم اليوم داخل الكود وارجو التجربة مع تغير اعدادات الويندوز للغة العربية والانجليزية بعد التعديل.

        If Weekday(TD) = 6 Then
        
            fOver_Time = DateDiff("n", DS, DE) \ 60 & ":" & DateDiff("n", DS, DE) Mod 60
        
        ElseIf Weekday(TD) = 5 Then
        
            fOver_Time = DateDiff("n", STO2, DE) \ 60 & ":" & DateDiff("n", STO2, DE) Mod 60
        
        ElseIf Weekday(TD) < 5 Or Weekday(TD) > 6 Then   'Or you can say Else Only Here
        
            fOver_Time = DateDiff("n", STO1, DE) \ 60 & ":" & DateDiff("n", STO1, DE) Mod 60
        
        End If

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

    تمنياتي بالتوفيق

    • Like 1
    • Thanks 1
  12. 27 دقائق مضت, ابوخليل said:

    اجادة وصف السؤال وفهمه هو نصف الاجابة 

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

    وانا ايضا اشارك استاذنا أبو خليل ما قال ففهم السؤال هو نصف الاجابة كما قيل

    ولكن اعتقد ان الأخ عمر يريد ان يضيف سجلات متعددة الي الجدول بنفس البيانات ويكون المتغير هو الرقم المتسلسل وعدد السجلات المطلوبة هو الرقم الذي يحدده في النهاية.

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

    Public sub GenrateRecords(byval tbl as string,byval Rfrist As byte,byval Rend As byte)
    Aim rec As Recordset,n as byte
    set rec = CurrentDb.OpenRecordset(tbl, dbOpenDynaset, dbSeeChanges)
    
      With rec 
        for n = Rfrist To Rend       'هنا رقم اول سجل وآخر سجل تريد ادراجه
          .AddNew
          !field_ID = "String" & n   'string = البادئة النصية التي تريد
          !field1 = control1         'بدأ من هذا السطر اسماء الحقول في الجدول وما يقابلها بالنموذج
          !field2 = control2
          !field3 = control3
          !field4 = control4
          .update
        next
      end with
    
    End Sub

    وتستدعيها هكذا 

    Call GenrateRecords ("Table Name",1,15)

    بعد تغير ما يلزم تغيرها بالوحدة حسب مسميات الحقول لديك 

     

    • Like 2
  13. وعليكم السلام ورحمة الله وبركاته

    7 ساعات مضت, safari said:

    محتاج تساعدونى ازاى اصمم نموذج اسمه مثلا :  اقفال الفترة المالية 

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

    7 ساعات مضت, safari said:

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

    عن طريق تشيك بوكس 

    الفكرة بسيطة ان شاء الله من وجهة نظري المتوضعة نضع حقل في جدول العمليات يحوي قيمة رقمية 0 - 1 أو true - false  حسب رغبتك يتم تحديثها عند اغلاق الدورة المالية الي 1 وتأخذ القيمة 0 عند عدم الاغلاق 

    طبعا الأمر سيحتاج الي آلية برمجية للتعامل مع هذا الحقل 

    ومن فوائد هذا الحقل اننا سنوقف كل التعاملات مع السجل الذي يحوي القيمة 1 مثلا بهذا الحقل من تعديل أو اضافة أو حذف أو... لكون هذه المعاملة تم اقفالها ماليا

    8 ساعات مضت, safari said:

    لكن لو شيلت التشيك بوكس ممكن اضيفها عادى ..

    أعتقد من الناحية المحاسبية ان عملية التعديل أو الاضافة لن تكون مسموحة علي دورة مالية منتهية لذي فكرة اعادة فتح الدورة المالية بعد الاقفال شيء خطأ محاسبيا 

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

    أرجو أن يكون كلامي لا اشكال فيه 

    تمنياتي بالتوفيق

  14. 4 دقائق مضت, ناقل said:

    نعم ... هو هذا كان الهدف من السؤال ... بارك الله فيك ... 

    أولا-  أعتذر لاقتحامي النقاش بدون استئذانكم فأنت صاحب الموضوع :wub:

    ثانيا- سعدت بموافقتك ما أقصد واعتقد أن كلنا حولها ندندن :biggrin:

    • Haha 1
  15. منذ ساعه, أبو إبراهيم الغامدي said:

    نسيت أن أذكر شيئاً يتعلق بمواقع التوصل وهو الأمان المشفر، ومنصات IFrame التي يعمل من خلالها المستعرض لا تقدم هذه الميزات..

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

    حيث أن هذا الكود يعتمد علي اننا نقوم بكتابة الشفرة او نمررها كما فعلتم بمرفقكم المميز الفاتورة الالكترونية داخل الأداة وفقط 

    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
    </head>

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

    حيث ان هذا ما يحدث عند استدعاء بعض الصفحات علي هذه الأداة

     

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

    1234.png

    • Like 1
  16. جزاكم الله عنا خيرا 

    لقد عمل المرفق بكل سلاسة وبشكل مذهل كالعادة فليس هذا الابداع بالشئ الجديد عليكم

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

    لدي صفحة اريد التعامل معها من خلال الأكسس كيف احقن هذه الصفحة بالكامل أو امرر عنوان هذه الصفحة بما تحتوي من شفرات بعد استخدام طريقتكم هذه للتعامل معها كمتصفح edge

    في ٥‏/١‏/٢٠٢٢ at 13:58, أبو إبراهيم الغامدي said:
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
    </head>

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

    • Like 1
  17. وعليكم السلام ورحمة الله وبركاته

    يمكنك ان تضع هذا الكود في وحدة نمطية (Module)

    Public Sub ColorCurrentRec(frm As Form, RecKey As Control, ByVal bakColor As Integer, ByVal ForColor As Integer)
      Dim ctl As Control
      
      On Error Resume Next
      
    
    '===================================
    'The required color argument for QBColor function
    'is a whole number in the range 0-15.
    '
    'The color argument has these settings:
    '
    'Number  Color   Number  Color
    '0       Black   8       Gray
    '1       Blue    9       Light Blue
    '2       Green   10      Light Green
    '3       Cyan    11      Light Cyan
    '4       Red     12      Light Red
    '5       Magenta 13      Light Magenta
    '6       Yellow  14      Light Yellow
    '7       White   15      Bright White
    '=============================================
      
      For Each ctl In frm.Section(0).Controls
        With ctl
    '      If .Section = 0 Then
    		'you can change the condition as you want here
            .FormatConditions(0).Modify acExpression, , RecKey.Name & "=" & RecKey
            If Err.Number = 7966 Then
              Err.Clear
              .FormatConditions.Add acExpression, , RecKey.Name & "=" & RecKey
            End If
            If Err.Number <> 438 Then
              .FormatConditions(0).BackColor = QBColor(bakColor)
              .FormatConditions(0).ForeColor = QBColor(ForColor)
              .FormatConditions(0).FontBold = True
            End If
    '      Else
    '        Exit For
    '      End If
        End With
      Next ctl

    ثم تستدعيها من خلال الفورم الذي تريده هكذا

    'ID = اسم الحقل الذي ستسند قيمة الشرط اليه ممكن تغير شرط التساوي داخل الوحدة النمطية الي ما تشاء او تجعل الحقل يساوي null
    '8 = هذه قيمة لون الخلفية للحقل ويمكن تغير القيمة من 0 - 15
    '9 = هذه قيمة لون النص للحقل ويمكن تغير القيمة من 0 - 15
    'حسب الجدول الموضح للقيم في الوحدة النمطية
    
    Call ColorCurrentRec(me, ID, 8, 9)

    تمنياتي بالتوفيق

     

    • Like 1
  18. في ٢١‏/١١‏/٢٠٢١ at 05:42, د.كاف يار said:

    فقط قم بتغيير اسماء الجداول المرتبطة بقاعدة البيانات على السيرفر

     

    تكون الاسماء بهذا الشكل

    image.png.6e9c093d7e5018a5260bc7e7bbcbb199.png

    بعد التغيير تكون بهذا الشكل و تنتهي المشكلة

    image.png.021577c1dc8979b2aa3aa490e36fcb36.png

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

    بالاضافة الي ما تفضل به الاساتذة الكرام

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

    هذا والله اعلم 

    عودا أحمد @ابو محمد2 

    • Like 1
  19. في ١٩‏/١١‏/٢٠٢١ at 02:44, king5star said:

    مساعدة من الخبراء ان أمكن 

    هل من الممكن تشغيل سكريبتك بالاكسس دون الحجة لتفعيله يدوياً كما موضح بأخر الفيديو مع العلم باننى قمت بمحاولات لا تحصي ولكن لا يعمل بالجودة المطلوبة .

    رغم كوني لست من الخبراء الذين تستدعيهم ولكن هذه تجربتي في التعامل مع الاسكربت لعلها تفيدك

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

    وفي العادة استخدم هذا البرنامج المجاني لعمل الملف التنفيذي لبرامجي والذي يسمي smart install maker 

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

    تمنياتي بالتوفيق 

    ارجو ان اكون قد افدتك بشئ

     

    123.png

    • Like 1
  20. 11 دقائق مضت, حسين العربى said:

    احب اوضح لحضرتك اني انا والاستاذ الفاضل ابو خيل  بنتكلم في نقطة مرتجع شراء بيتخصم  مبلغه من الشراء ام من البيع

    لو لاحظت اخي ردي الاول ستري اني قمت بعرض لطريقة الحساب 

    30 دقائق مضت, أبو عبدالله الحلوانى said:

    هب أنك انت العميل وقمت بشراء فاتورة بها ثلاثة اصناف وقمت بارجاع احد هذه الاصناف الي البائع منطقيا ما هي القيمة التي ستطالب بها البائع عند ارجاع الصنف اليست تلك القيمة البيعية التي قمت بشراء الصنف بها اي نفس القيمة المثبتة بالفاتورة. اليس كذلك؟

    اي اننا نقوم بعكس عملية الشراء في حالة مرتجع الشراء يعني كما في مثالك ارجعت من الصنف الذي اشتريته بـ 1 دينار عدد 1 صنف بقيمة؟؟!

    1 دينار طبعا فكما اشتريته بـ 1 دينار عندما اقوم بارجاعه الي المورد سيرد الي 1 دينار اليس كذلك؟

    وعندما بعت نفس الصنف بـ 2 دينار وقام المشتري برد 2 صنف ماذا تعتقد اني سأرد اليه من مبلغ اليس 4 دينار؟!

    اذا سيكون حساب المبلغ علي مثالك :

    صافي قيمة المشتريات = (10 صنف * 1 دينار = 10 دينار - 1 صنف * 1 دينار = 9 دينار)

    صافي قيمة المبيعات =( 5 صنف * 2 دينار = 10 دينار - 2 صنف * 2 دينار = 6 دينار)

    أما بالنسبة الي حساب الربح الناتج من عملية الشراء فينج من خلال المعادلة المحاسبية التالية:

    اجمالي الربح = (بضاعة اخر المدة + صفي المبيعات) - (بضاعة أول المدة + صافي المشتريات)

    أو المعادلة الرياضية التالية:

    (الكمية المباعة * سعر البيع) - ( الكمية المباعة * سعر الشراء)  وكما في مثالك سيكون العمل بهذا الشكل

    الكمية المباعة هي (5-2=3) * 2 دينار = 6  دينار - (لكمية المباعة 3 * سعر الشراء 1 دينار = 3 دينار )

    اذا الربح هو 3 دينار

    آسف علي الاطالة 

    ارجو ان اكون فهمت مرادك بشكل صحيح

    • Thanks 1
  21. 4 دقائق مضت, حسين العربى said:

    انا عاوز من اعمل تقرير به كود الصنف  والاسم   والكمية شراء والكمية بيع   وسعرالشراء  وسعر البيع  والتاريخ 

    واجمالي الشراء

    واجمالي البيع

    واجمالي الربح

    اليك اخي تلك الفكرة البسيطة والنصيحة ان اردت ان تضم بياناتك في جدول واحد:

    1- اجعل جدول لرأس الفاتورة يضم (رقم الفاتورة - نوع الفاتورة (بيع شراء مرتجع) وكود العميل واجمالي قيمة الفاتورة ونوع السداد وقيمة السداد ...)

    2- اجعل جدول لنوع العمليات (كود العملية - ونوع العملية - شراء , بيع , مرتجع بيع , مرتجع شراء)

    3- اجعل جدول للأصناف يشمل ( كود الصنف - اسم الصنف - الكمية المتاحة - وسعر الشراء - سعر البيع)

    4- وجدول لكل العمليات أو تفاصيل الفاتورة ويشمل ( رقم الفاتورة - كود العملية - كود الصنف - الكمية - القيمة - الاجمالي)

    هذا الجدول الأخير يمكن من خلاله عمل ما نريد من خلال الاستعلامات التجميعية بكل سهولة ويسر ان شاء الله

    تمنياتي بالتوفيق

    • Like 1
×
×
  • اضف...

Important Information