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

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

قام بنشر

كيف اكتب هذه الجمله بشكل صحيح 

"create table vac (SELECT * FROM tblVacation where (((tblVacation.emp_code)= " & [TempVars]![EmpIdTemp] & " AND (tblVacation.VacationLife)='سارية')) ORDER BY vacationstartdate Asc;)"

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

قام بنشر

سبب الخطاء هو وجود الجدول Vac مسبقا هل هذا صحيح؟

اذا اليك هذا التغير في الكود.

او ارفق ملفك للنظر اين المشكلة.

Dim strSQL As String
Dim empId As Long
Dim db As DAO.Database
Dim rsVacation As DAO.Recordset
Dim qdf As DAO.QueryDef

empId = [TempVars]![EmpIdTemp]

strSQL = "SELECT * FROM tblVacation " & _
         "WHERE (((tblVacation.emp_code) = " & empId & " AND (tblVacation.VacationLife) = 'سارية')) " & _
         "ORDER BY vacationstartdate ASC;"

Set db = CurrentDb
Set qdf = db.CreateQueryDef("", strSQL)
Set rsVacation = qdf.OpenRecordset()

rsVacation.Close
Set rsVacation = Nothing
Set qdf = Nothing
Set db = Nothing
  • أفضل إجابة
قام بنشر

 أخي الكريم 

من الخطاء جعل حقل رقم الموظف ترقيم تلقائي لانك ستواجه مشاكل كثيرة في ال TempVars من خلال ال Dlookup.   

اليك هذا التعديل في اكواد المودولات Emp_Var و Module2 

' Emp_Var Module

Option Compare Database
Option Explicit

Public Sub EmpNameVar()
    Dim EmpNameTemp As Variant

    If Not IsNull([TempVars]![EmpIdTemp]) And [TempVars]![EmpIdTemp] <> "" Then
    
        Dim empId As Long
        empId = CLng([TempVars]![EmpIdTemp])
        EmpNameTemp = DLookup("[emp_name]", "[tblName]", "[emp_code]=" & empId)
        TempVars.Add "EmpNameTemp", EmpNameTemp
    End If
End Sub

Public Function Totalcountt() As Integer
    Dim x As Integer
    x = DCount("[emp_code]", "tblName", "[job_Status]=1")
    Totalcountt = x
End Function


' Module2

Option Compare Database
Option Explicit

Function TotalVac()
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim rs1 As DAO.Recordset
    Dim rs2 As DAO.Recordset
    Dim CountRecord As Integer
    Dim i, s As Integer

    Set db = CurrentDb
  
    If Not IsNull([TempVars]![EmpIdTemp]) Then
        
        Dim empId As String
        empId = "'" & CStr([TempVars]![EmpIdTemp]) & "'"

        Set rs = db.OpenRecordset("SELECT * FROM tblVacation WHERE (((tblVacation.EmpCode) = " & empId & " AND (tblVacation.VacationLife) = 'سارية')) ORDER BY vacationstartdate Asc;")
        Set rs1 = db.OpenRecordset("SELECT * FROM tblVacation WHERE (((tblVacation.EmpCode) = " & empId & " AND (tblVacation.VacationLife) = 'سارية')) ORDER BY vacationstartdate Asc;")

        
        On Error Resume Next
        db.TableDefs.Delete "vac"
        On Error GoTo 0

        Dim strSQL As String

        strSQL = "SELECT * INTO vac FROM tblVacation " & _
                 "WHERE (((tblVacation.EmpCode) = " & empId & " AND (tblVacation.VacationLife) = 'سارية')) " & _
                 "ORDER BY vacationstartdate ASC;"
        db.Execute strSQL

        rs.Close
        Set rs = Nothing
        rs1.Close
        Set rs1 = Nothing
    Else
      '  (يمكنك إظهار رسالة أو تنفيذ أي إجراء آخر حسب الحاجة)
       
    End If

    Set db = Nothing
End Function

تأخرت  عليك بالرد لان الوقت عندي متقدم  بستة ساعات عن وقت الدول العربية.

بالتوفيق

الكل.rar

  • Like 1

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