Main Menu
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - gradgrind

#1
I have been thinking about this a bit over the last couple of days. Although I think that, in general, a spreadsheet is not a good way to present the output from FET (why would you want to do this?), I did have some code for reading FET results lying around. Adding a bit of code to produce spreadsheets should not be too difficult, I thought ...

Well, a quick search of the forum brought up a few posts from the past, and it seems that there are at least two reasons for wanting Excel files:

1) To print the results in some sort of customized way.

2) Because some other administrative software accepts only Excel files.

Both of these will probably require tables structured in very particular ways, and be very dependent on the nature of the timetable data. They seem very fragile, in the sense that a different set of input data could break the layout assumptions. Each institution might need its own customized version of the converter. That is not an encouraging basis for a developer to work on.

There are certainly better solutions for printing – all the data is available in the XML, so why convert it to Excel before working on it? I have done some work on printing timetables. Because of the extreme flexibility of FET, it is very difficult (impossible?) to find a layout/structure which will satisfy all requirements, in general. If certain limits can be imposed on the data, quite nice results can be obtained – I have had some success with Typst, but it requires quite a lot of programming.

For providing input to other software, it would certainly be better to consult with the designers of that software, in the hope of getting them to provide a better input interface! Of course, that is not always possible ...

Anyway, for anyone who really wants Excel documents, I have put up a little "proof of concept" at fet2xlsx. It should work roughly like FETtoExcelExporter, but it uses different input files (the "..._data_and_timetable.fet" ones) and is cross-platform. I have posted runnable files for Windows and Linux.

#2
Suggestions / Re: Manual changes
April 08, 2025, 12:28:33 PM
Yes, FET can construct a very wide range of student structures. It is quite difficult to produce a nice, clear timetable display algorithm which covers every possibility for groups within a class/year. So my program only tries to support a particular group structure. My .fet files are normally generated by another program, so it is easy to produce the required structure.

I have attached an example of a working result file, where the classes/years are divided into groups: You cannot view this attachment. .
#3
Suggestions / Re: Manual changes
April 08, 2025, 11:08:19 AM
Hello Liviu,

If you do get around to doing this, there might be some useful ideas in some code I started to write last year. It reads a fet result file (..._data_and_timetable.fet) and shows a GUI where class, teacher or room can be selected. A grid with the timetable for that item is then shown. Clicking on a lesson in the grid should highlight cells where this lesson can be moved to without conflicts.

I think most of that works, but for classes with groups the class divisions must have a particular form, so that the lesson cells can be nicely divided according to group.

If you want to have a look, it's at https://github.com/gradgrind/WZC. The latest code is in folder tt02.
#4
I had a look at the code. If you delete the call "setStretchAvailabilityTableNicely(timesTable)" in addormodifytimeconstraint.cpp, the corner click works. Is there a reason why this call was there?

Also, "timesTable->setCornerButtonEnabled(true)" is not necessary as this is the default (of course, putting it in makes it explicit, which might be a good thing).

But maybe the version with the swap button is better (clearer) anyway?
#5
I know you have done this now, but QTableView does have a way of getting a click on the corner button. It may not be ideal, but clicking on the corner button calls the slot "selectAll", which you can override in a subclass.
#6
Get Help / Re: CSV Import
February 14, 2025, 07:05:48 AM
Sorry Volker, my question wasn't clear enough. I meant the form/format of the data that JOYAL ISAC S actually has, not how it should be for a good CSV-import function (which of course you had already mentioned).
#7
Get Help / Re: CSV Import
February 13, 2025, 07:03:43 AM
I think it should not be too difficult to write a script to insert the data into the FET XML file, I have done quite a lot of that sort of thing. But what does the input data (the CSV) look like, what are the fields? That would determine how easy it is.
#8
Hello Volker,

I don't have any exports from aSc because, like I wrote, I only did it the other way round. aSc does support lessons with groups from different years, something like:

<lesson id="XXX_25" classids="11K,12K" subjectid="MaLk" groupids="11K-alle,12K-alle" teacherids="AE,MK,MT" durationperiods="1" periodsperweek="2" classroomids="11K,RS,12K,NNN"/>
As far as I know, it doesn't support same-starting-time constraints. That was one of the annoying things about it. In fact I think I never used the aSc constraints, I did all that in fet.

I'll send you one of the python files I used for generating aSc-XML. Maybe there's something in there that could help you.
#9
I had to use aSc a few years ago – it was the only thing I needed Windows for. It was quite good for manual placement of the lessons, but the automatic placement wasn't good enough for our timetables. There is a bit of (old and incomplete) documentation of the XML available. It can also export Excel tables (if that's any better for you), if you have Excel installed. I couldn't test this because I never did have Excel installed.

I ended up using my own tables for the data, converting these to a fet file, then using the fet results to provide rooms and times for my data. This data I then converted to aSc-XML which I loaded into aSc for the final manual adjustments and the printing of the timetables. The structures in aSc and fet are not entirely equivalent, but I could design my data such that they were somewhat compatible. Not every aspect of the data could be imported into aSc, one problem being that the XML-import function was incomplete (it could only import one room for a lesson), which made the whole process even more time-consuming. It sort-of worked, but is not really to be recommended!

I'm afraid I didn't do the conversion the other way, from aSc-XML to fet, but I did experiment a bit to discover missing details of the XML. I'm not sure how much I could remember, as it was some time ago, but maybe I can help a little if you decide to go for it and get stuck somewhere.
#10
Glad you solved it. Good old Midnight Commander – a very useful tool, I use it too (though I'm not an expert).

The login problem seems to be only on the page "https://www.lalescu.ro/liviu/fet/forum/" (the link from the main fet page). "https://lalescu.ro/liviu/fet/forum/" works!
#11
Hello Liviu,

Perhaps if you explain what you need advice about it would be easier for people to answer?

By the way, the login button on the forum entry page pops up an error message.

Regards,
Michael
#12
Report a Bug / Re: Missing Labels in Qt Dialogs
December 07, 2024, 07:01:53 AM
Hello Liviu,

I can see your problem. Is there some reason why the whole dialog can't be a bit bigger? For example, if you make it wider you can put label and combobox in one line.

It's just that to me the sight of four blank, unlabelled comboboxes is weird and unhelpful. It looks like there is something missing (which there is – for me the label is not redundant ...). Maybe it's because I am rather old, but it reminds me of so many modern gadgets (dishwashers, washing machines, remote controls, etc.) where there is often an array of buttons and knobs (or some touch-screen version of that) which have no indication of what they do, except for some incomprehensible symbol.

Best wishes,
Michael
#13
Report a Bug / Re: Missing Labels in Qt Dialogs
December 06, 2024, 09:42:19 AM
Hello Liviu,

That's nice! Personally, I would like them back anywhere you took them away, so yes, also when adding/modifying constraints.

Thank you,
Michael
#14
Report a Bug / Re: Missing Labels in Qt Dialogs
December 06, 2024, 06:16:31 AM
Hello Liviu,

To be honest, I am not convinced. If you want more space for the description, you would just have to make the dialog a bit bigger. It is of course possible to discover which of these blank comboboxes is for teachers, students or whatever by clicking around (or remembering their positions ...), but I don't find this new look very friendly or efficient.

I agree with you that a placeholder might be less attractive – I would prefer to have the labels back!

Best wishes,
Michael
#15
Report a Bug / Missing Labels in Qt Dialogs
December 05, 2024, 03:42:12 PM
In some dialogs the Filter labels are missing in the latest release, 6.28.3 (I am using the Linux binary release). In 6.27.0 they were there. For example the dialog "Constraints min days between activities".


You cannot view this attachment.

Hope that helps,

Michael