auto fill fields, with a twist

This topic is 6535 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

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.

Share on other sites

Hi Bruce,

Thanks for the tip. I can use one record for each period. One problem: I'm using a portal to show which students are in each group. The portal only works in the first record. How can I get around that?

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)?

Share on other sites

Actually, I figured it out. You really pointed me in the right direction. Thanks for your help. If it gets weird, I'll send another posting

OK, here

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

Share on other sites

Hi Ugo,

I'd like to try your recommendation, but I'm not sure how to get started.

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

Share on other sites

Hi Joe

If you post your solution so far - I'll see what I can do for you. I've done lots of things like this so may be able to modify your solution to do what you want.

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!!

Joe

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

Share on other sites

I've got it working. Thanks for your help.

Joe

Share on other sites

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

Create an account

Register a new account