Replacing FileMaker with Free Software? 445
jhealy1024 asks: "I'm looking for a way to replace our FileMaker DB solution with an open-source RDBMS. Problem is, FileMaker's GUI and report design tools are pretty darn good, and I can't find a suitable replacement. Anybody out there have a solution that doesn't require me to take a year off to hand-code a replacement solution?"
"I'm the netadmin for a small private school. Since we're Mac-based, we've grown up storing all our data in FileMaker, including student information, grades, class assignments, gifts, inventory tracking, and just about anything else you can think of.
FileMaker is coming out with version 7, which is going to require us to tear all our databases to pieces and build them up again from scratch. While the new FileMaker is an improvement, it's still a toy as far as "real" databases go. (The latest update just introduced relational tables, for example). Also, data lock-in is becoming a problem; I'd like to have access to all our data from non-FileMaker interfaces (to populate our LDAP directory, for example). While we can work an export from FileMaker, it would be much better if the data were available in an open, standard database instead.
I figure, so long as we're rebuilding everything from scratch for version 7, why not use a "real" RDBMS (no flames about which, please). Problem is, FileMaker does two things very well:
- Rapid development of front-end data entry screens (using a GUI for layout)
- Ability to create printable layouts for reporting (mail merges, report cards, etc)
Thus far, the only solution I've found is to use some kind of SQL access plug-in for FileMaker. This way, I get to keep the FileMaker interface but ditch its lousy relational model. Unfortunately, I'd still have to pay for FileMaker, and the SQL plug-in requires tons of extra coding to pass the data from FileMaker to SQL and back again.
I know other people have had to move from small, proprietary systems (FileMaker, Access, etc) before; what have you done to keep the simple user interface alive?"
Filemaker Pro Migration software (Score:5, Informative)
Recode for Filemaker 7 (Score:5, Informative)
than going to another system/platform/application.
The improvements in Filemaker 7 are vast, and much needed. It's a great platform, and unbeatable unless you move to a PostgreSQL&Web platform, which would require a lot more re-tooling.
Look into a possible Filemaker 6 to Filemaker 7 conversion tool.
In the future, if you truly need to use a different interface, such as the web, Filemaker is very capable of supporting that on its own, when placed on a server, without a SQL-access plug-in.
http://cocoamysql.sourceforge.net/ (Score:2, Informative)
web-based (Score:3, Informative)
Servoy (Score:4, Informative)
Re:Filemaker Pro Migration software (Score:2, Informative)
Re:Recode for Filemaker 7 (Score:1, Informative)
Possible Alternative (Score:4, Informative)
I have had good luck using MicroOLAP Database Designer for MySQL [microolap.com]. Granted its not opensource, but its super easy to use. One quirk that I haven't sorted out with it is proper quotation of 'enum' and 'set' fields in its generated SQL. But, that being said, its still a slick interface.
GLOM! (Score:5, Informative)
It has a nice, clean GTK interface, and uses PostgreSQL for its backend.
Good luck!
Re:http://cocoamysql.sourceforge.net/ (Score:5, Informative)
Others have recommended web-based solutions wth PHP, which are okay, but are difficult to maintain for the non-PHP literate.
Perhaps something like Rekall [thekompany.com] from theKompany would do it? It's not free, but it's a lot less expensive than most of the commercial front ends out there. It supports MySQL, is multi-platform, and has forms and front end scripting (using Python I believe).
Re:http://cocoamysql.sourceforge.net/ (Score:5, Informative)
Re:http://cocoamysql.sourceforge.net/ (Score:4, Informative)
I think there's something here that is escaping most of the /. readers. Filemaker has a nice GUI for creating applications - RAD type functionality. We're not talking about a GUI to manage a mysql database. I'd like to be able to create an application that uses a database backend quickly. Something like Oracle Forms & Reports of old, or Access, or ??? Think "glade" + "mysql/postgresql" + perl's report writing
I've been looking for something like this in the OSS world for years, and in that time, like the author of the article, could have written one.
also looking for easy, open src forms layout tool (Score:5, Informative)
Stop, drop and roll (Score:4, Informative)
The most recent versions of Filemaker, when treated just right, may be a blessing, but in my experience Filemaker just doesn't scale well. After you've started really putting a lot of data in there it creeps. It is it's own thing, too, so you can't use standard database modeling, reporting, etc. And hosting is an issue.
The impending new version might just be your occasion to stop, drop Filemaker, and roll your own.
Finding a tool to move the data and structure over is tempting, but consider whether the database structure you have is a good one, and if all your data is normalized. This would be a good opportunity to work on that, if you'd be moving to another system anyway.
And try thinking using the Unix philosophy. Use differnt tools. Use a database to store the data, use an off the shelf reporting tool (ie crystal reports) if you want, use Access or Filemaker to allow clients to make custom views, use modeling tools, etc.
Contact me if you want sympathy or some help.
Rekall Revealed GPL (Score:5, Informative)
The real problem (Score:3, Informative)
Re:DIY (Score:5, Informative)
There's a couple of reasons why (and its not just the FOSS community). The first is compatibility. I won't go into all the browser compatibility issues, but its easier to create a web page that works on multiple OS's than it is to create a desktop based application. Secondly, portability. A web based application means I can work from anywhere I have an internet connection. Now that's not to say a desktop application can't do the same thing.
In my experience (even if you're developing for a standard desktop environment) web based apps can be build faster. Then of course there's the issue of upgrades. Its easier to upgrade/update a website than multiple client machines.
It has always been relational.... (Score:5, Informative)
If you read the linked article [filemaker.com] on FileMaker's website, it says:
I've been using FileMaker at home since it was made by Claris, back at version 3.0. It's always been relational. You build relations between files--one file is one table. Now you can have multiple tables in one file. And you can still build a relation to a table in another file, so you've got the best of both.
In fact, using the free demo of 3.0, I built a database with about 25 relations in it, entirely without the manual. Consequently, I was out to the store the next day and bought the real thing. I've upgraded to 5.0 and 7.0 since.
I'm not sure how much "re-writing" is required to upgrade, I just load all my databases from the old version into the new one and let it create new files in the current format. I've never had to change the database definitions.
(It would be nice to turn a couple of my DBs into a "single file with multiple tables", but hey, it works fine in multiple file mode, so like others say, why break it?)
There are times when it Would Be Nice to throw some really grotty SQL into the system. But they're fairly rare.
Rekall, OOo (Score:3, Informative)
Rekall (available in commercial or GPL licenses) is a MS-Access type thing -- it can hold a database in its own format and create forms and reports (like FileMaker) or you can connect it to an SQL server. Last time I tried it was in the v2.2x days, and it would crash just trying to open the demo database. That was on Linux, the Windows demo (NOT GPL) simply crashed before opening. Not good for a software that is supposed to be in its second major version. Maybe it has improved since, though. Not sure if there is a Mac version.
The other option is Openoffice. It has a database form and report mode, but you will need MySQL or PostgreSQL at the backend. Also, there is almost no documentation for it.
School Management software (Score:2, Informative)
Rekall and knoda (Score:2, Informative)
http://www.knoda.
Both free and both viable options imho.
Also keep an eye out for kexi:
http://www.kexi-project.org/
This looks like it will be really impressive. However, as it is still in early beta this probably isn't something for real world usage yet.
Re:There's an old saying... (Score:5, Informative)
Uh did you miss where he said that he was getting lock problems? That means he's outgrown it and it is "broke."
He said "data lock-in", meaning "proprietary", not "lock" as in "data contention".
School Tool (Score:5, Informative)
http://www.schooltool.org/ [schooltool.org]
steveha
Re:Servoy (Score:2, Informative)
Re:Filemaker Pro Migration software (Score:3, Informative)
Re:Knoda (Score:4, Informative)
You can't even see views in the database.
No way (that I can see) to store connection information for more than one backend server. Ok, that's not the end of the world. At least you can make it cache your connection details.
The interface is a little strange with database as a dropdown list in the toolbar, and also a tree-menu at the side but with only one parent database entry at once.
Did I say "no views" yet?
Still, I guess if you're starting from scratch it isn't so bad, and it does fit in reasonably in KDE. Needs some work on the sidebar treeview not overlapping the database windows though. Definitely looks more complete than the gnome offering.
My suggestion (Score:4, Informative)
when there really should be:
Not to mention the "RTFS" answers in "TFM" for questions very frequently asked by beginners:
Other than that I would say that PostgreSQL is definitely the way to go today. Once you get used to reading the source code as documentation (it is actually very clean and properly commented, so that's not such a big deal), you will really love it. And you will have the most important thing: ACID features. I hope it helps, I wish you the best luck.
See also:
(Please forgive me if I repeat anything which has already been said. I started to write it as a first post but it took some time and I am sure that other
not quite free, but might help as a transition (Score:3, Informative)
We looked at precisely this... (Score:3, Informative)
FM7 allows full data/interface separation so our systems are being reworked in this manner. This allows us to later decide if FM7 should serve as an ODBC source to PHP, or as a front-end to MySQL, or what.
Servoy is on our radar, but once you leave FM, you might find that your clients really hate all of the other solutions. FM is really exceptional at quickly putting a solid client/server solution on users desks that is usable.
Re:Rekall Revealed GPL (Score:4, Informative)
Bad story (Score:2, Informative)
FileMaker Pro has been relationnal since version 3. Even worse, the migration from any 3.X, 4.X, 5.X, 6.X to version 7 is handled by FileMaker itself. You even have a 190 pages document describing all the changes and the tweak needed in case of something goes wrong.
I'm not saying the problem is painless, it all depends on the level on complexity you have in your current system. I just migrated a _very_ complex solution (80 tables, over 120 links, 1900 fields, 600 Scripts) to version 7 from 5.5. It's all documented on one A4 sheet.
Platform compatibility, upgrade stability. (Score:3, Informative)
We like to make web-based applications for several reasons.
1. No license fees to worry about ont he server or my clients.
2. I can control the web/database server. (I can't and don't need to control your computer.)
3. If I make my application compliant with Netscape 3.0, it WILL WORK on ALL BROWSERS.
4. I can easily design to minimize trips to the server, maximize data throughput, AND take care of concurrency issues.
5. My application will work on ALL browsers for ALL operating systems (OKAY not the Lynx browser).
6. No license fees to worry about ont he server or my clients.
The list goes on...
You said "No license fees twice!"
I LIKE no license fees.
I live the greatest adventure anyone could wish for. - Tosk the Hunted
Re:There's an old saying... (Score:5, Informative)
Yea, 7 has a lot of spiffy new features that make Filemaker less of a file-sharing system and more of a real server DB ( a *little* more, anyway ). But *must* you upgrade? They'll support your current version for a little while, right ?
How about just looking into SQL-interconnect services, if you want to explore new front-end options ?
If you want to put a 'real' database on the backend, first ask why. Is FileMaker too slow, or are you just looking to cut costs? If you're looking to cut costs, and your current system is working, just don't upgrade. If performance is a problem, then you have a big job- you'll have to learn a lot, and someone will have to do some design and coding. I'll recommend my favorite enterprise DB- PostgreSQL. Sure, there's a little bit of a learning curve, but it's really not bad, and you can do *anything*.
So you want easy form design and reporting? Is that your main criteria? You might want to stick with FileMaker, then. On the other hand, you have a couple of good options, especially if you are a good enough programmer and have enough time to learn Objective-C.
Your options, as I see them, are basically
1) train yourself to learn Cocoa,
2) annoy your users with web-based forms, or
3) continue to annoy them ( and you ) with FileMaker.
We've found that, especially for simple DB lookup stuff, throwing together a nice-looking data viewer or editor in Interface Builder is pretty darn easy, especially once you do it a couple of times ( can you say code reuse? ), and writing a real document-based app lets you do some stuff that'd be darn difficult and/or ugly in a web form ( or in FileMaker ).
Of course, I don't know that all of your clients are on OS X, you don't mention. If you have a few OS 9 holdouts, you may want to go web-based or stay FileMaker.
I'm sure some folks will jump all over me for suggesting doing real Cocoa programming as an actual option for you, but really- it's not that hard, folks, especially if you're doing fairly basic database stuff. This year I took a guy who had only ever written shell-level C programs, got him pointed in the right direction with Objective-C and Interface Builder, and he's written *several* great-looking, highly functional release-quality applications in the past 6 months. He wipped together one multi-user database app in, seriously, like 3 days. It's a real option and I'm a little sad that nobody has offered it up. On the other hand, it's not a simple 'no-programming' solution with auto-generated reports... one of the toughest things for us was learning how to do proper text layout for printing in Cocoa. Then again, once we worked out some details, we have results we couldn't get with FileMaker, and certainly wouldn't get with a web-based forms approach.
Of course, I'm a bit biased towards a 'real programming' solution; before we went all OS X ( and for one project afterward where PC compatability was deemed worthwhile ), I was writing Java Swing database apps... which were totally useable, even with OS 9's antiquated JVM, and once the *design* was nailed down, implementation followed pretty quickly. If you're all Mac at your campus, your actual administration tasks should be light enough to let you do all that programming, right?
Really, though, that's what we've found. I work at an all-Macintosh business, and our IT staff seems to have a lot of time to work on programming projects, rather than applying patches and fighting viruses. Writing database apps in Cocoa gets to be a pretty quick process, and PostgreSQL handles large, complex queries like a champ. It's a great combo.
But honestly, it sounds to me like you shouldn't touch your system, unless it's too slow or has become hard to support. If you do replace it, do it slowly, in phases, and give yourself plenty of time to do the job right.
Re:Servoy (Score:3, Informative)
Re:DIY (Score:5, Informative)
I think you've jumped into a few really bad assumptions on this one.
First, you obviously missed the part about not taking a year off to hand code it.
Second, is MySQL and PHP always the best solution to a problem? I find it useful, but for someone who is trying to get performance out of a server, I seriously doubt that MySQL + PHP is going to be the right answer. I've found the work I have done on a HTML::Mason web server to be easily 10 times faster than it's PHP counterpart.
Third, I don't know much about the project, but I think the question was in regards to the RDMS and not the web pages themselves. I am going to assume that most of the work here is in the database structure.
If this is the case, then even a hand migration shouldn't be that difficult to do. All you have to do is write the scripts to create the tables based on their current definition and procede to dump/load the data. It would be well worth it to develop scripts to do all of this and test them out so that you can migrate the entire back end in one shot.
I don't have an answer to a easy print interface, but I can venture some guesses on what might work. OpenOffice or StarOffice has some kind of ODBC connectivity and maybe that can be capitalized with it's capabilities. Alternatively, and maybe lastly, perl has some printing capabilities that would make for somewhat simple reports but at very high speed.
yeah (Score:1, Informative)
A full cms w/ the proper tools and understanding of OOP programing (how to use an object and how to use a class) can make this easier, of course a lot of this would take into account you know how to run standard db queries.
Similar exp (Score:3, Informative)
I've sense moved on to bigger challenges outside of that company. But from my contacts there they have grow a lot in size and still use it today. I hope my design will last at least as long as their last solution, and hopefully will be a lot more flexable.
The point of my babbling is that their is really no better solution then a custom one if you have the time. If I was still employed there with what I know today, that application could of grew to be much much more for that company. Plus, based on my salary at the time, they saved way more money then buying a good pre-built solution.
P.S. I'm sorry who ever took my job if you had to read my comments.
Omnis Studio (Score:4, Informative)
Re:Filemaker Pro Migration software (Score:4, Informative)
Re:http://cocoamysql.sourceforge.net/ (Score:4, Informative)
http://www.rekallrevealed.org/toplevel/getting/so
Progress RDBMS+4GL (Score:3, Informative)
Its printing capabilities are moderate, not good, not bad. I don't know the price though.
Unfortunately it is mostly geared toward business and is a bit pricey. But who knows - maybe they are hungry and willing to cut a deal?
Re:also looking for easy, open src forms layout to (Score:1, Informative)
In particular, have a look to QuickForm [php.net] or to DB_DataObject_FormBuilder [php.net]
You can find nice tutorials on these technologies
http://www.thelinuxconsultancy.co.uk/quickform.ht
http://www.sklar.com/talks/quickform-oscon2004 [sklar.com]
http://www.21st.de/downloads/rapidprototyping.pdf [21st.de]
With these frameworks, you begin to reach the productivity of RAD tools "à la" MS-Access PowerBuilder, FrameBuilder, and co . But still keeping the advantages of a web deploiement and the avantage of OSS.
Hope this helps.
FMP has been relational for years (Score:2, Informative)
My guess is that you're referring to the fact that FMP 7 introduced multiple tables per file. FileMaker has been a relational database since version 3, but prior to 7 each "table" was a separate file.
Poster Clarifications (Score:5, Informative)
1) I'm not trying to get away from FM just because I'm a DB snob; I know FM7 will scale better than FM6 and will generally do away with the major limitations we have right now. I also know there's a FM6->FM7 conversion tool, but our databases are pretty zany, and all the experts we've talked to have recommended re-structuring the data. That's why we're moving off of FM6.
2) As for why I want to go to FOSS, it's so I can get to the data for other applications without having to export it to TDV or XML and massage it. FM does a great job of holding all our data and making it easy to enter, change, and view. Alas, that doesn't help me for my LDAP database (which needs to be kept in sync), library patrons catalog, and other network-related user information systems. Hence, if it were possible to use an open (e.g., SQL) backend with FM's great front end, I'd be happy.
3) I know FM has a JDBC/ODBC feature to allow external queries, but it doesn't support many facets of SQL (doh), and it doesn't currently work with the Mac version of FM7 (crap -- we're an all-mac shop). Hence another reason why I'd like to keep the backend open; I'm not waiting on FileMaker to "get around" to implementing key features on the Mac.
4) UI is key, however. We have about 20 people who enter data regularly, and they aren't DB admins, so it needs to be simple and painless to enter, search, and report on data. To support that level of user-friendliness would be difficult to acheive in a custom web-based solution. Hence, any pointers on hooking up FM's great UI to a FOSS DB would be great.
5) I have several years of Java, Perl, and PHP programming experience, so I could code this myself, and I fully understand the difficulties of doing so. That's why I was hoping for an off-the-shelf solution; my school simply doesn't have the budget to have me do it, nor to pay someone else to do it.
Thanks for all the feedback so far; I'll post more later.
Re:well... (Score:2, Informative)
The fact that you had many different FM databases was not remotely clear in your question. Even so, each one could be automatically converted to FM7 with no hassles.
As for exporting each file, you can do a direct FM to FM import. So create your master, centralized db and do a direct import from each one.
Or create a new db that just has portals to your other dbs and you have a relational db of dbs. Just as easy to maintain through one central interface.
Re:DIY (Score:3, Informative)
Now I have a nice web interface and everybody can access it in their native platform at home or work. For that reason, I think that web interfaces are best for database apps as they don't require much more than data formatting and validation.
Re:Postgersql (Score:1, Informative)
Strange, on my systems it runs as the unprivlaged user postgres and NOT root. Wonder what you did different.
Re:PostgreSQL (Score:2, Informative)
You have to start it as root, so that it can take it's port and change userid to postgres, but it doesn't run as root - do a
ps -axw | grep post
on a machine with PostgreSQL, and you'll see what I mean.
2) No, you don't need to reboot the whole machine to alter tables. If you read the documentation, you'll find out how to do that from the psql client.
And even if you do need to restart PostgreSQL, you can restart just PostgreSQL - this is unix software, not Microsoft crapware.
Re:Filemaker Pro Migration software (Score:3, Informative)
Other GUI clients in the pgSQL FAQ [postgresql.org].
Not realistic (Score:3, Informative)
Check Out Alpha Software (Score:3, Informative)
Their recent promotions are interesting:
Alpha Five makes it easy to access your data from the Web, from your desktop, or even via email, no matter where you are, no matter what format your data is in.
Build web applications easily and quickly using the Alpha Five .dbf engine, or with live data from MySQL, Oracle, MS SQL Server, DB2 or even MS Access.
Any authorized user can access your Web database thanks to the built-in Web Application Server.
Create powerful applications without having to write tedious and intricate code.
Step-by-step genies assist in creating scripts without knowledge of programming.
We give you the tools to build sophisticated applications quickly and easily.
I used it a few years back, and was impressed then. I think I may go ahead and get the latest version. There is a free trial.
Re:also looking for easy, open src forms layout to (Score:3, Informative)
It's not FileMaker, but it looks pretty good, is cross platform, plays well with others, and seems to have the major features required.
From the link above:
Re:Filemaker Pro Migration software (Score:3, Informative)
Protege (Score:2, Informative)
Use Protege-2000. It's functionality eclipses that of FM Pro. It is well-tested and in wide deployment. It is trivial to make UI plugins and other kinds of deep additions in Java, but hardly ever necessary. It is free and open source. It has a paid team of developer that fix problems proptly and provide support.
And it supports any SQL database as a backend, and inserts a "semantic data modeling" layer in between the DB and UI that allows you to do very sophisticated things in a common sense, non-db-nerd way.