تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
كيف احصل على رصيد بالمخزن؟
#1
الاخوة الافاضل / السلام عليكم ورحمة الله

عندى جدول مبيعات الاصناف موضحا عدد ونوع وكمية الاصناف المباعة وعندى جدول مقابل بالاصناف التى ترد من الموردين للمخزن
المطلوب كيف اقوم بالربط بين الجدولين لكى احصل على رصيد المخزون ؟
استخدم مكتبات فيجوال بيسك 6 واكسيس
اريد الحصول على جدول ثالث يوضحى رصيد كل صنف - وشكرا لحضراتكم .
الرد }}}
تم الشكر بواسطة: awidan76
#2
يأخي الموضوع سهل مايحتاج جدول ثالث
يحتاج فقط حقل للكمية المردودة فقط
وتخصم وتخصم الكمية المردودة من الكمية الواردة يطلع لك صافي المخزون
تحياتي ولو ترفق البرنامج لتعديل علية
[صورة مرفقة: images?q=tbn:ANd9GcT72OLJW7D1E5QW-HUeWeJ...TGoNeg2jnQ]
الرد }}}
تم الشكر بواسطة: awidan76
#3
اشكرك استاذ / تركى ومرفق مثال للتعديل - للحصول على الرصيد من كل نوع
المثال على الرابط التالى :
http://vb4arb.com/vb/uploaded/1272_01356163979.rar
الرد }}}
تم الشكر بواسطة: awidan76
#4
تفضل أخي التعديل [ATTACH]1609[/ATTACH]


الملفات المرفقة
.rar   sal.rar (الحجم : 13.56 ك ب / التحميلات : 338)
[صورة مرفقة: images?q=tbn:ANd9GcT72OLJW7D1E5QW-HUeWeJ...TGoNeg2jnQ]
الرد }}}
تم الشكر بواسطة: awidan76 , awidan76
#5
اولا جزاك الله خيرا - ولكن كنت اريد رصيد كل صنف - حتى يمكن الجرد بسهولة - اى اود معرفة رصيد كل صنف وليس مجموع المشتريات والمبيعات
ومنتظر رد حضرتك - جزاك الله خير الجزاء
الرد }}}
تم الشكر بواسطة: awidan76
#6
جرب هذا التعديل
بس في نقطة مهمه انا عملت لك بس لجل تشوف العملية كيف ولا المفروض يتعمل تفصيل ثاني
يعني شاشة للاصناف لجل تشوف حركة كل صنف


[ATTACH]1612[/ATTACH]


الملفات المرفقة
.rar   sal2.rar (الحجم : 13.97 ك ب / التحميلات : 282)
[صورة مرفقة: images?q=tbn:ANd9GcT72OLJW7D1E5QW-HUeWeJ...TGoNeg2jnQ]
الرد }}}
تم الشكر بواسطة:
#7
فعلا احتاج شاشة توضح حركة الصنف لكل صنف على حدة حتى يمكن عمل جرد للمخزن كالتالى :
الصنف النوع اجمالى الكمية شراء اجمالى الكمية بيع الرصيد الحالى
خشب زان 7م 500 300 200
خشب زان 10م 300 100 200
خشب موسكى 5م 300 200 100
خشب موسكى 3م 6200 600 200
هذا ماريدة بالفعل - ولا اعرف كيف اشكرك - وانك تحاول مساعدتى -جعلة الله لك فى ميزان حسناتك واعطاك الصحة والعافية
الرد }}}
تم الشكر بواسطة:
#8
بس شفت التعديل الاخير
واصبر عليا شوي راح اعمل لك مثال كامل للموضوع ان شاء الله
[صورة مرفقة: images?q=tbn:ANd9GcT72OLJW7D1E5QW-HUeWeJ...TGoNeg2jnQ]
الرد }}}
تم الشكر بواسطة:
#9
السلام عليكم ورحمة الله وبركاته

بعد إذن الأخ (تركي الحلواني)

تفضل المثال



كود :
Option Explicit '' البعض يحذف هذا السطر مما يتسبب لنفسه بالمتاعب

'' AccessDatabase4.0: store.mdb
''  Tables:-   Operations: (ID(Key)>AutoNumber , date>DateTime , ItemID>Integer , QtyIn>Single , QtyOut>Single , Operation>Byte )
''             Items:      (ID(Key)>AutoNumber , Description>Text , Quantity(محجوز)>Single , OrderPoint(محجوز)>Single )

'' 2 MSFlexGrid

Dim myConnection As New ADODB.Connection
Dim myCommand As New ADODB.Command
Dim myRecordSet As New ADODB.Recordset


Private Sub Form_Load()
    myConnection.ConnectionString = " Provider=Microsoft.Jet.OLEDB.4.0;         " & _
                                    " Data Source=" & App.Path & "\store.mdb;   " & _
                                    " Persist Security Info=False               "
    myConnection.CursorLocation = adUseClient
    
    Call OperatiosFlexGrid
    Call OperatiosDBLoad
    
    Call ItemsFlexGrid
    Call ItemsDBLoad
    
End Sub

Private Sub OperatiosFlexGrid()
    With Me.MSFlexGrid1
        .Rows = 1
        .Cols = 6
        .ColWidth(0) = 1000: .ColAlignment(0) = flexAlignCenterCenter
        .ColWidth(1) = 1200: .ColAlignment(1) = flexAlignCenterCenter
        .ColWidth(2) = 800: .ColAlignment(2) = flexAlignCenterCenter
        .ColWidth(3) = 2200: .ColAlignment(3) = flexAlignLeftCenter
        .ColWidth(4) = 800:  .ColAlignment(4) = flexAlignCenterCenter
        .ColWidth(5) = 800:  .ColAlignment(5) = flexAlignCenterCenter
        .TextMatrix(0, 0) = "رقم العملية"
        .TextMatrix(0, 1) = "التاريخ"
        .TextMatrix(0, 2) = "رقم الصنف"
        .TextMatrix(0, 3) = "وصف الصنف"
        .TextMatrix(0, 4) = "الكمية"
        .TextMatrix(0, 5) = "العملية"
    End With
End Sub

Private Sub OperatiosDBLoad()

    Dim sql As String
    sql = " SELECT *                            " & _
          "      , IIf(QtyIn = 0, QtyOut, QtyIn) AS Quantity                        " & _
          "      , IIf(Operations.Operation = 0, 'بيع' ,'شراء') AS OperationName    " & _
          "                                     " & _
          "   FROM Operations                   " & _
          "                                     " & _
          " INNER JOIN Items                    " & _
          " ON Operations.ItemID = Items.ID     " & _
          "                                     " & _
          " ORDER BY [Date]                     "
          
    myConnection.Open
    
    myCommand.ActiveConnection = myConnection
    myCommand.CommandText = sql
    myCommand.CommandType = adCmdText
    
    myRecordSet.CursorType = adOpenStatic
    myRecordSet.CursorLocation = adUseClient
    myRecordSet.LockType = adLockOptimistic
    myRecordSet.Open myCommand
  
    If myRecordSet.RecordCount > 0 Then
        With Me.MSFlexGrid1
            
            .Rows = myRecordSet.RecordCount + 1
            Dim r As Integer
            For r = 1 To myRecordSet.RecordCount
                    .TextMatrix(r, 0) = Format$(myRecordSet.Fields("Operations.id"), "0000")    '' رقم العملية
                    .TextMatrix(r, 1) = Format$(myRecordSet.Fields("Date"), "yyyy/MM/dd")   '' تاريخ العملية
                    .TextMatrix(r, 2) = Format$(myRecordSet.Fields("ItemID"), "0000")       '' رقم الصنف
                    .TextMatrix(r, 3) = myRecordSet.Fields("Description")   '' وصف الصنف
                    .TextMatrix(r, 4) = myRecordSet.Fields("Quantity")      '' الكمية
                    .TextMatrix(r, 5) = myRecordSet.Fields("OperationName") '' نوع العملية
                myRecordSet.MoveNext
            Next r
            Me.Label1.Caption = "مجموع العمليات: " & Str(myRecordSet.RecordCount)
            
        End With
    End If
        
    myConnection.Close
    
End Sub



Private Sub ItemsFlexGrid()
    With Me.MSFlexGrid2
        .Rows = 1
        .Cols = 5
        .ColWidth(0) = 1000: .ColAlignment(0) = flexAlignCenterCenter
        .ColWidth(1) = 2200: .ColAlignment(1) = flexAlignLeftCenter
        .ColWidth(2) = 1200: .ColAlignment(2) = flexAlignCenterCenter
        .ColWidth(3) = 1200: .ColAlignment(3) = flexAlignCenterCenter
        .ColWidth(4) = 1200:  .ColAlignment(4) = flexAlignCenterCenter
        .TextMatrix(0, 0) = "رقم الصنف"
        .TextMatrix(0, 1) = "وصف الصنف"
        .TextMatrix(0, 2) = "كمية الشراء"
        .TextMatrix(0, 3) = "كمية البيع"
        .TextMatrix(0, 4) = "الكمية المتبقية"
    End With
End Sub


Private Sub ItemsDBLoad()
    
    Dim sql As String
    sql = " SELECT    SUM(QtyIn)  AS SUMSale    " & _
          "         , SUM(QtyOut) AS SUMBuy     " & _
          "         , (SUM(QtyIn) - SUM(QtyOut)) AS SUMQuantity     " & _
          "         , Description, Operations.ItemID                " & _
          "                                     " & _
          "   FROM Operations                   " & _
          "                                     " & _
          " INNER JOIN Items                    " & _
          " ON Operations.ItemID = Items.ID     " & _
          "                                     " & _
          " GROUP BY Description,ItemID         " & _
          "                                     " & _
          " ORDER BY ItemID                     "
          
    myConnection.Open
    
    myCommand.ActiveConnection = myConnection
    myCommand.CommandText = sql
    myCommand.CommandType = adCmdText
    
    myRecordSet.CursorType = adOpenStatic
    myRecordSet.CursorLocation = adUseClient
    myRecordSet.LockType = adLockOptimistic
    myRecordSet.Open myCommand
  
    If myRecordSet.RecordCount > 0 Then
        With Me.MSFlexGrid2
            
            .Rows = myRecordSet.RecordCount + 1
            Dim r As Integer
            For r = 1 To myRecordSet.RecordCount
                    .TextMatrix(r, 0) = Format$(myRecordSet.Fields("ItemID"), "0000")   '' رقم الصنف
                    .TextMatrix(r, 1) = myRecordSet.Fields("Description")   '' نوع الصنف
                    .TextMatrix(r, 2) = myRecordSet.Fields("SUMSale")       '' كمية الشراء
                    .TextMatrix(r, 3) = myRecordSet.Fields("SUMBuy")        '' كمية البيع
                    .TextMatrix(r, 4) = myRecordSet.Fields("SUMQuantity")   '' الكمية المتبقية
                myRecordSet.MoveNext
            Next r
        
        End With
    End If
        
    myConnection.Close
    
End Sub

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


الملفات المرفقة
.rar   store -01.rar (الحجم : 46.76 ك ب / التحميلات : 421)
الرد }}}
تم الشكر بواسطة: محمد كريّم , محمد كريّم , awidan76
#10
اكثر من رائع واكثر مما اتخيل استاذى ابو رائد - جعلة الله فى ميزان حسناتك يوم اللقاء - ولا انسى بالطبع كل التحيه والشكر لأخونا الفاضل الاستاذ تركى الحلوانى -اعطاكم الله الصحة والعافية
والسلام عليكم ورحمه الله وبركاتة
الرد }}}
تم الشكر بواسطة: awidan76


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيف يمكن انشاء حقل جمع متراكم في فترة معينة لعميل معين مع وجود رصيد اول مدة rachid 1 3,946 14-04-13, 03:02 PM
آخر رد: VB_Coder

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم