Jump to content

auto fill fields, with a twist


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

Recommended Posts

Hi folks,

I've been working on a music class scheduler program and I've run into an interesting problem. I have 10 groups of students (A thru J) that meet on a rotating schedule once a week. Assuming 10 weeks to a marking period and 10 periods per day, I made a grid of 100 fields - 10 weeks across and 10 periods down. If group A meets in period 1 on week 1, group A then meets in period 2 in week 2 and so on. Group B would meet in period 2 of week 1, then meet in period 3 of week 2, etc. So far so good. Fairly easy to auto-calculate. But here's the rub...teachers don't teach in every period of the day. And there's no way to predict in advance which periods they have off (lunch, study hall, free period, etc.). I have a calculation that indicates a blocked out period (either with dashes in each field or the word BAND in each field). My question, oh great Swamis of FMP, is whether the groups can be auto-inserted in the proper fields after the teacher blocks out the "off" periods. In other words, when the teacher enters "A" in period 1 of week 1, the calculation or script would then automatically enter all the "A"s, "B"s, "C"s, etc. in the proper fields, taking into account the blocked out periods.

Thanks for any input you can give me.

Joe

Link to comment
Share on other sites

"My question, oh great Swamis of FMP, is whether the groups can be auto-inserted in the proper fields after the teacher blocks out the "off" periods."

Wrong question. The question is, "how do I move from a spreadsheet styled approach to a proper relational database design?" You are mixing up data display (your grid) with data structure (your field definitions). A record should not contain 100 fields, it should contain about 4: day, period, class name, instructor.

Link to comment
Share on other sites

You'll need to provide a little more detail. How did you define the relationship? What does it mean, "the portal only works in the first record" ? What is the first record? In which table (database)?

How are your files structured?

Link to comment
Share on other sites

Hi,

Bruce show you the direction for the "Highway", but you're still in the "City" right now....

Try to avoid the 10 fields design, which doesn't much differ from a repeating fields system.

You'd get very close to your goal with a total relational system, and implementing a Join file as an Attendance file.

Ugo

Link to comment
Share on other sites

I'm not sure on how do you need to treat the sequencing of groups when blocked period is achieved (maybe a little bit more clarification on this from you could help).

Any way , in attached file is the implementation of "linear sequence" to spreed sheet conversion.

To see what I mean, first try to set the table without blocking individual cells, the result will be obviously the rotating sequence of groups spread on weks and periods, now reset the table and start clicking on individual cells (click again to make the cell free)

When finished click on "set" again

Dj

PS The main file is Display.fp5

BTW those files are stripped from TicTacToe game I've created some time ago, I've only started with cleaning it from impertinent (to this solution) scripts, rels and fields

GridMaker.zip

Link to comment
Share on other sites

Hi Dj & Carey,

Here's what I have so far: The marking period can be anywhere from 10 weeks to 18 weeks. However, I think I'll use separate solutions for the different marking periods. So let's say 10 weeks for now. There are 10 periods per day, but some of those periods will be free (lunch, study hall, etc.). I have 10 fields across the top (week 1, week 2, etc.). For the ten periods, I use 10 records in a columnar list layout. The teacher omits a record for each free period, thereby leaving only the teaching periods in the found set. I want group "A" to appear in period 1 of week 1, then period 2 of week 2, period 3 of week 3, etc. Then group "B" wowuld start in period 2 of week 1, period 3 of week 2, etc., all the way through group "J" (some teachers might have less than 10 groups. Also, if all 10 groups don't fit in, say Monday, they would got over to another day). I've tried using the loop function but it doesn't work for all cases. What I want is for the loop to continue past the last record and back to the first record and then quit at week 10 (but only if need be-if all 10 periods are in the found set, "A" group would exit after last record). To complicate matters even more, I need portals for each group on the same layout so the teacher can see which students are in which group. Putting the class periods in the body of the layout, I put the student portals in the footer. They show up OK on the screen, but they don't print out. Is there a way I can get the portals to print out on the same page as the class assignments? Whew!!

Thanks for your help,

Joe

Link to comment
Share on other sites

Hello,

Ok, I tried to quickly build a set of files to answer what I understood of your problem.

So you have a scheduler with 10 periods for each day, each period being used by a Group.

Once a Group is affiliated to a period, this same period should be registered for the whole scheduler.

Then you want to affiliate students to groups, and finally a Teacher to the group.

Teachers may be affiliated to several froups, while students (still in your case) wouldn't.

There may be some adaptation to be made for sure to fit your exact situation, but this file, in a step by step should lead you there.

1. It starts by building a calendar (may be not useful) and a scheduler for the current year

2. Then you're brought to a Layout where you'd choose a period by group

3. Then you select the students to be affiliated to each group.

4. Finally, in the Teacher's file, you'd be able to set the Teacher to one or more group, according to those available, as well as viewing the Student's list.

Hope it works as expected.

HTH

Classrooms.zip

Link to comment
Share on other sites

This topic is 7352 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.