نمایش نتایج 1 تا 21 از 21

نام تاپیک: طراحی کارنامه ماهیانه

  1. #1

    طراحی کارنامه ماهیانه

    سلام وعرض ادب خدمت عزیزان..
    میخواهم فایلی برای ثبت نمرات هفتگی مدرسه طراحی کنم ....
    روش کار به صورت زیر هست:
    هردانش آموز ممکنه در درسی ودرماه بین 1تا4 نمره داشته باشد..
    هرمعلم میتونه درمدرسه چندکلاس وچنددرس داشته باشه..
    هردانش آموز درسال یک کلاس ودروس مختلف داردوچندین دبیر...
    جداول زیر ساختم:
    دانش آموز(کد(کلیداصلی)،نام،نام خانوادگی،رشته وکلاس)
    دبیر(کد(کلیدتصلی)،نام،نام خانوادگی،رشته یا درس مورد تدریس)
    دروس(کددرس کلید اصلی)،نام درس،تعداد واحد
    نمرات(کددانش آموز،کددرس،تاریخ ثبت،نمره(که هم میتونم 4فیلد برای 4 هفته باشه وهم یک نمره برای یک ماه)
    اصل گیرم نوع ثبت نمرات هست...چطوری وچه فرمی بسازم که باانتخاب کلاس ورشته ودرس،یه لیست بیاد ازدانش آموزان ونمرات....وقتی ثبت کردم،وباتغییرکلاس لیست بعدی بیاد..
    اگه از جدول نمرات سابفرم بسازم که اطلاعاتی نداره که فیلتر بشه..اگه کویری بسازم از دوجدول که بازهم چون نمره ای نیست پس لیستی نمیاد..
    شکل جداول ونوع فرمی که ساختم به پیوست ارسال میشه..
    خواهش میکنم دوستان راهنمایی فرمایند..خیلی نیازش دارم..
    عکس های ضمیمه عکس های ضمیمه
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله kolait : سه شنبه 25 تیر 1398 در 11:11 صبح


  2. #2

    نقل قول: طراحی کارنامه ماهیانه

    مبنای کار رو باید روی درس بگذارین و نه نمره - به این شکل که هر درس برای هر سال و هر دوره تحصیلی منحصر به فرد باید باشه.

    خیلی ساده جداول شما اینها میشن:
    پایه های تحصیلی Grades
    عناوین درسها CourseTitles
    درسها Courses
    آموزگاران (مربیان) Instructors
    دانش آموزان Students
    نمرات Gradings

    همزمان با ثبت نام دانش آموزان برای هر درس، یک رکورد بازای هر دانش آموز در جدول Gradings میسازین،
    بنابراین برای ثبت نمره لیست دانش آموزان آماده است.

    1.PNG

  3. #3

    نقل قول: طراحی کارنامه ماهیانه

    سلام وعرض ادب..خیلی ممنونم....جداول انجام میدم ومزاحمتون میشم..ممنون که وقت گذاشتید..

  4. #4

    نقل قول: طراحی کارنامه ماهیانه

    سلام دوست عزیز..جداول طبق فرمایشتون،ساختم..اینکه چطوری دانش آموزان را برای درسها راثبت نام کنم،متوجه نشدم..هرفرمی ساختم باید یکی یکی دانش آموز انتخاب کنم..یا راهشو نوع فرمو بلد نبودم..ممنونم راهنمایی فرمایید..به این فایل وراهنمایی دوستان خیلی نیاز دارم...ممنونم..

  5. #5

    نقل قول: طراحی کارنامه ماهیانه

    نمونه میگذارم براتون
    time ...

  6. #6

    نقل قول: طراحی کارنامه ماهیانه

    سلام..یک دنیا ممنونم..خیلی لطف میکنید ...
    azad1353@

  7. #7

    نقل قول: طراحی کارنامه ماهیانه

    سلام
    ببخشید دوست عزیزمن به این تاپیک خیلی علاقمند شدم .....
    نمونه ای که فرمودید . آماده نشد

  8. #8

    نقل قول: طراحی کارنامه ماهیانه

    یک time گذاشته بودم تو پست آخر، چون وقت کافی نداشتم.

    در واقع اینجا هیچ موضوع جدید یا نکته خاصی هم نداشتیم ولی چون دوستمون درخواست نمونه داشت برای رفع ابهام یک نمونه ساده براساس طراحی جداول پیشنهادی پیوست میکنم.

    برای راحتی و سرعت کار جداول با دیتا نمونه پر شدن (در صورت نیاز به دونستن روش این کار در یک پست جداگانه درخواست بدین)
    عکس های ضمیمه عکس های ضمیمه
    • نوع فایل: png 6.PNG‏ (22.2 کیلوبایت, 30 دیدار)
    • نوع فایل: png 5.PNG‏ (18.4 کیلوبایت, 28 دیدار)

  9. #9

    نقل قول: طراحی کارنامه ماهیانه

    عناوین دروس:
    2.PNG

    دروس:
    3.PNG
    عکس های ضمیمه عکس های ضمیمه
    • نوع فایل: png 3.PNG‏ (51.3 کیلوبایت, 28 دیدار)

  10. #10

    نقل قول: طراحی کارنامه ماهیانه

    نمرات:
    4.PNG

  11. #11

    نقل قول: طراحی کارنامه ماهیانه

    هر درس یک ID داره (CourseID) که با کد میسازیم و از فیلدهای زیر ترکیب میشه: سال، ترم، عنوان درس، پایه تحصیلی و کد مدرس

    هنگام ثبت دانش آموزان برای هر درس، بازاء هر دانش آموز یک رکورد در جدول نمرات ساخته میشه که شامل کد درس و کد دانش و نمرات خالی هست

    برای ثبت نمرات هر درس، بر اساس کد درس فیلتر میکنیم.

    کلا نکته خاص یا جدیدی نیست که قبلا مشابهش مطرح نشده باشه، ولی پرسشی داشتین مطرح کنین.

  12. #12

    نقل قول: طراحی کارنامه ماهیانه

    فرم ثبت دروس:
    10.PNG

    Option Compare Database
    Option Explicit
    Dim v
    Private Sub AddCourse_Click()
    Dim CourseID, InstructorID As Long
    CourseID = Year & Term & Format(CourseTitle, "00") & Format(Grade, "00")
    If DCount("*", "Courses", "CourseID=" & CourseID) = 0 Then
    DoCmd.RunSQL "INSERT INTO Courses (CourseID,Year,Term,Grade,CourseTitleID,Instructor ID) VALUES (" & CourseID & "," & Year & "," & Term & "," & Grade & "," & CourseTitle & "," & Instructor & ")"
    v = MsgBox("Course Registered", , "")
    Else
    v = MsgBox("Course Alreday Registered!", vbInformation, "")
    End If
    End Sub
    Private Sub CourseTitle_AfterUpdate()
    Check
    End Sub
    Private Sub CourseTitle_NotInList(NewData As String, Response As Integer)
    Me.CourseTitle.Undo
    Me.CourseTitle.Dropdown
    Response = acDataErrContinue
    End Sub
    Private Sub Form_Load()
    Dim i As Long
    For i = 1390 To 1400
    Me.Year.AddItem i
    Next
    End Sub
    Private Sub Grade_AfterUpdate()
    Check
    End Sub
    Private Sub Grade_NotInList(NewData As String, Response As Integer)
    Me.Grade.Undo
    Me.Grade.Dropdown
    Response = acDataErrContinue
    End Sub
    Private Sub Instructor_AfterUpdate()
    Check
    End Sub
    Private Sub Term_AfterUpdate()
    Check
    End Sub
    Private Sub Term_NotInList(NewData As String, Response As Integer)
    Me.Term.Undo
    Me.Term.Dropdown
    Response = acDataErrContinue
    End Sub
    Private Sub Year_AfterUpdate()
    Check
    End Sub
    Private Sub Year_NotInList(NewData As String, Response As Integer)
    Me.Year.Undo
    Me.Year.Dropdown
    Response = acDataErrContinue
    End Sub
    Sub Check()
    Me.AddCourse.Enabled = Not (IsNull(Year) Or IsNull(Term) Or IsNull(Grade) Or IsNull(CourseTitle) Or IsNull(Instructor))
    End Sub


  13. #13

    نقل قول: طراحی کارنامه ماهیانه

    فرم ثبت نام دانش آموزان برای درس مشخص:
    11.PNG

    Option Compare Database
    Option Explicit
    Const RecSrc = "SELECT S.FullName,G.* FROM Gradings G INNER JOIN Students S ON G.StudentID=S.StudentID WHERE G.CourseID="
    Dim CourseID As Long
    Dim v
    Private Sub AddStudent_Click()
    If Nz(CourseID, 0) = 0 Or Nz(Me.Student, 0) = 0 Then Exit Sub
    If DCount("*", "Gradings", "CourseID=" & CourseID & " AND StudentID=" & Me.Student) = 0 Then
    DoCmd.RunSQL "INSERT INTO Gradings (CourseID,StudentID) VALUES(" & CourseID & "," & Student & ")"
    Me.Requery
    Else
    v = MsgBox("Alredey registered", vbExclamation, Me.Student.Column(2))
    End If
    End Sub
    Private Sub CourseTitle_AfterUpdate()
    GetData
    End Sub
    Private Sub CourseTitle_NotInList(NewData As String, Response As Integer)
    Me.CourseTitle.Undo
    Me.CourseTitle.Dropdown
    Response = acDataErrContinue
    End Sub
    Private Sub Form_Load()
    Dim i As Long
    For i = 1390 To 1400
    Me.Year.AddItem i
    Next
    Me.RecordSource = RecSrc & 0
    End Sub
    Private Sub Grade_AfterUpdate()
    Me.CourseTitle.Requery
    GetData
    End Sub
    Private Sub Grade_NotInList(NewData As String, Response As Integer)
    Me.Grade.Undo
    Me.Grade.Dropdown
    Response = acDataErrContinue
    End Sub
    Private Sub RemoveStudent_Click()
    If MsgBox("Are you sure?", vbQuestion + vbYesNo + vbDefaultButton2, "") = vbYes Then
    DoCmd.RunSQL "DELETE FROM Gradings WHERE CourseID=" & CourseID & " AND StudentID=" & Me.StudentID
    Me.Requery
    End If
    End Sub
    Private Sub Term_AfterUpdate()
    Me.Grade.Requery
    GetData
    End Sub
    Private Sub Term_NotInList(NewData As String, Response As Integer)
    Me.Term.Undo
    Me.Term.Dropdown
    Response = acDataErrContinue
    End Sub
    Private Sub Year_AfterUpdate()
    Me.Term.Requery
    GetData
    End Sub
    Private Sub Year_NotInList(NewData As String, Response As Integer)
    Me.Year.Undo
    Me.Year.Dropdown
    Response = acDataErrContinue
    End Sub
    Sub GetData()
    Dim InsID As Long
    CourseID = Year & Term & Format(CourseTitle, "00") & Format(Grade, "00")
    InsID = Nz(DLookup("InstructorID", "Courses", "CourseID=" & CourseID), 0)
    If InsID = 0 Then
    Me.MSG.Caption = "Course Not Registered"
    Else
    Me.MSG.Caption = ""
    End If
    Me.Student.Enabled = (InsID > 0)
    Me.AddStudent.Enabled = (InsID > 0)
    Me.Instructor = DLookup("FullName", "Instructors", "InstructorID=" & InsID)
    Me.RecordSource = RecSrc & CourseID
    End Sub



  14. #14

    نقل قول: طراحی کارنامه ماهیانه

    فرم ثبت نمرات:
    12.PNG

    Option Compare Database
    Option Explicit
    Const RecSrc = "SELECT S.FullName,G.* FROM Gradings G INNER JOIN Students S ON G.StudentID=S.StudentID WHERE G.CourseID="
    Private Sub CourseTitle_AfterUpdate()
    GetData
    End Sub
    Private Sub CourseTitle_NotInList(NewData As String, Response As Integer)
    Me.CourseTitle.Undo
    Me.CourseTitle.Dropdown
    Response = acDataErrContinue
    End Sub
    Private Sub Form_Load()
    Me.RecordSource = RecSrc & 0
    End Sub
    Private Sub Grade_AfterUpdate()
    Me.CourseTitle.Requery
    GetData
    End Sub
    Private Sub Grade_NotInList(NewData As String, Response As Integer)
    Me.Grade.Undo
    Me.Grade.Dropdown
    Response = acDataErrContinue
    End Sub
    Private Sub Term_AfterUpdate()
    Me.Grade.Requery
    GetData
    End Sub
    Private Sub Term_NotInList(NewData As String, Response As Integer)
    Me.Term.Undo
    Me.Term.Dropdown
    Response = acDataErrContinue
    End Sub
    Private Sub Year_AfterUpdate()
    Me.Term.Requery
    GetData
    End Sub
    Private Sub Year_NotInList(NewData As String, Response As Integer)
    Me.Year.Undo
    Me.Year.Dropdown
    Response = acDataErrContinue
    End Sub
    Sub GetData()
    Dim InsID, CrsID As Long
    CrsID = Year & Term & Format(CourseTitle, "00") & Format(Grade, "00")
    InsID = Nz(DLookup("InstructorID", "Courses", "CourseID=" & CrsID), 0)
    Me.Instructor = DLookup("FullName", "Instructors", "InstructorID=" & InsID)
    Me.RecordSource = RecSrc & CrsID
    End Sub


  15. #15

    نقل قول: طراحی کارنامه ماهیانه

    این دیتابیس نمونه فقط جنبه آموزشی داره و نه طراحی جداول و نه کدها بهینه نشدن و با یک برنامه واقعی و کاربردی فاصله دارن.
    ولی اصول کار همین هست و میتونه راهنمای خوبی باشه.
    فایل های ضمیمه فایل های ضمیمه

  16. #16
    مدیر بخش آواتار amirzazadeh
    تاریخ عضویت
    مهر 1386
    محل زندگی
    تبريز
    پست
    1,837

    نقل قول: طراحی کارنامه ماهیانه

    دست مريزاد و خدا قوت.

    DON'T START;OTHERWISE DON'T STOP
    .................................................
    قوانين سايت

  17. #17

    نقل قول: طراحی کارنامه ماهیانه

    سلام وعرض ادب....
    خیلی خیلی ممنونم که وقت گذاشتید...فایل ودیتا را میسازم وسوالی بود،می پرسم.....خدا خیرتون بده..ممنونم

  18. #18

    نقل قول: طراحی کارنامه ماهیانه

    نقل قول نوشته شده توسط amirzazadeh مشاهده تاپیک
    دست مريزاد و خدا قوت.
    ممنون جناب میرزازاده
    نظر لطف شماست

  19. #19

    نقل قول: طراحی کارنامه ماهیانه

    نقل قول نوشته شده توسط kolait مشاهده تاپیک
    سلام وعرض ادب....
    خیلی خیلی ممنونم که وقت گذاشتید...فایل ودیتا را میسازم وسوالی بود،می پرسم.....خدا خیرتون بده..ممنونم
    سلام
    موفق باشید
    پرسشی داشتین حتما مطرح کنین

  20. #20

    نقل قول: طراحی کارنامه ماهیانه

    نقل قول نوشته شده توسط mazoolagh مشاهده تاپیک
    سلام
    موفق باشید
    پرسشی داشتین حتما مطرح کنین
    با سلام خدمت شما دوستان عزیزخصوصا آقای mazoolagh
    خواهشی داشتم .میشه همین دیتابیس را بدون کدنویسی و براساس ارتباط جداول موجود طراحی کرد . و فرمی برای ورود اطلاعات ایجادکنید .؟؟
    آخه بنده کدنویسی بلد نیستم ولی براساس توضیحات جنابعالی جدول را ساختم ولی نتیجه نگرفتم



    خیلی ساده جداول شما اینها میشن:
    پایه های تحصیلی Grades
    عناوین درسها CourseTitles
    درسها Courses
    آموزگاران (مربیان) Instructors
    دانش آموزان Students
    نمرات Gradings


    ممنون میشم ازهمه دوستان عزیز

  21. #21

    نقل قول: طراحی کارنامه ماهیانه

    نقل قول نوشته شده توسط نوشیروانی مشاهده تاپیک
    با سلام خدمت شما دوستان عزیزخصوصا آقای mazoolagh
    خواهشی داشتم .میشه همین دیتابیس را بدون کدنویسی و براساس ارتباط جداول موجود طراحی کرد . و فرمی برای ورود اطلاعات ایجادکنید .؟؟
    آخه بنده کدنویسی بلد نیستم ولی براساس توضیحات جنابعالی جدول را ساختم ولی نتیجه نگرفتم

    سلام و روز خوش
    اینکه نوشتین کدنویسی بلد نیستین رو میگذارم بحساب شکسته نفسی شما، چون در چندین و چند تاپیک دیدم پست های شما رو و اینکه برنامه هم پیوست کردین.


    بطور متعارف و منطقا همه عملیات باید از طریق فرم انجام بشه و دسترسی مستقیم کاربر به جداول درست نیست مگر اینکه دیتابیس برای کارهای شخصی خودتون باشه.
    در جدول هم کنترل بسیار محدودی رو عملیات دارین (در مقایسه با فرم) و فقط بعضی کارهای خاص رو بهتر هست بعهده دیتامکرو ها بگذاریم.

    ساخت روابط از پیش تعریف شده در سطح دیتابیس هم ضروری نیست مگر اینکه هدف خاصی رو دنبال کنیم و در مثال پیوست هم هیچ رابطه ای تعریف نشده، ولی در پست شماره دو تصویر روابطی رو که در واقع در فرم ها استفاده شده، میبینین.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •