Jump to content

This topic is 7768 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted

I am creating a report for a kind of roll call sheet. I have each part of the layout sorted by day, time, class ID... but some kids have two classes they attend. So the layout part is only sorting by their first class ID and not the second. I have a class list file, but it stores all the students. Even the ones that have stopped. So I turned to the students file and run the report off of that. I have two fields, class ID 1 and class ID 2 and they have a relationship so when I type in the class id into those fields, it brings up the day, time and rank of that class. So if the kid moves to another class, all I have to do is type in the new class # and it will change and I can still keep a history of the kids in that class through the year. My question being, am I doing this wrong by keeping it on the student file or is there away to have it show multiple classes for that student? Any help would be great.

Posted

A more flexible solution would include: Student DB, Class DB and a join file Attendance DB. You reporting would run out fo the join file. However from your description, it sounds like you are getting the result that you need.

Posted

I guess what I am trying to ask is, how do I make it list the student who has two classes in the report. For example, One kid comes at 3:00 for a reading class. Then his main class is at 3:30. So, on his record, I put the 3:30 class id # (cl-0343) in his main class field (class id 1) and his second class, the optional reading class at 3:00, in the class id 2 field. When I created the layout for the report, I have each part sorting the files. First by day, then by time, then by class ID. It shows all the kid's MAIN classes and won't show the second class. I know it is because the parts are set to sort by class ID 1. So how would I make is show both classes and put that student where he/she belongs?

Posted

Hmm...

By using the Attendance Join File Kurt mentionned, and that, from what I can remember, you currently have already done.

Sorting by dates, hours and ClassID would work just fine, as all ClassID, StudentID, Day and Hours are stored there...

You have this file, don't you ?

Posted

I don't have an attendance join file but I do have a class line items file that does store everyone... even the ones that have quit... that is were the problem is... I will look into running my report from that file instead and see what it will produce. I may have to add the student status field into is too. I will post what I come up with here tonight. Thanks for the ideas.

Posted

well, what I did is run a find function in the open script to show all students that are active. Then I modified find script so that each time they perform, they are looking at only the active students. I think this will do the job. Thanks for the advice.

Posted

If your "Active/Inactive" status field is an indexable field, you won't have any need for a find script.

Actually, running a find on an unstored calculation, you'd loose some time and functionnality to what seems to me a "daily" script.

Therefore, look at a way to store the Status, or if it is already use :

- a boolean calculation c_BooleanStatus = Case(Status = Active,1,0)

- a c_AttendanceConcat = Date & "-"& c_BooleanStatus

At left side, add a global for your Date field (g_date) and a calculation c_LeftToAttendance = g_date&"-"&1 or scripted to be formated as a Multiline key in case you imputed a Range of dates.

Create a relationship 'AttendanceByDateSelected' from the c_LeftToAttendance to the c_AttendanceConcat

Then, all you'd need would be to create a script along the lines of

If[isEmpty(g_date)]

Show Message ["Please enter a date"]

End Sript

Else

If[not IsValid(AttendanceByDateSelected::StudentID)]

Show Message ["No record match your request"]

End Script

Else

GoToRelatedRecords[AttendanceByDateSelected-Show only]

PerformExternalScript[sortAndReport]

Where the script "SortAndReport" could be

GoToLayout["Where your report is"]

Sort[NoDialog]

PreviewMode[Pause]

Print

or whatever script you want for your report to be sorted by Date, Hour, ClassID, StudentID.

Posted

that sounds good. forgive me on my lack of knowledge on these things. I am a very basic beginner trying to recreate the wheel. I know I need to put some more time in scripts and really start to understand them. That is where the power of filemaker comes in. But thanks for all the time you and everyone have put into my questions. Thanks again.

This topic is 7768 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.