Thread: Porting CRM Application to Postgres
I was advised to ask on this list for ideas on assisting application developers quickly port their hard-wired MySQL application to postgres. My need (and that of others who have contacted me about the same issue) is with XRMS <http://xrms.sourceforge.net/>. While I'm not a fan of web-based applications, I'm apparently in the minority on this issue, so I just shrug and use them because I have no options. Xrms is the best I've seen in the sales administration/customer (client) relationship management arena. It is much better for solo consultants or small companies without a separate sales department, but it can also be used by the latter. It's written in php and uses the ADOdb dbms abstraction toolkit. When I inquired about difficulties supporting postgres on the ADOdb mail list, I learned that it's very easy to write a mysql-specific application using adodb to communicate between the middleware and the dbms backend. Apparently, use of postgres reserved words and mysql-specific extensions or non-compliant syntax are the most likely stumbling blocks. Last January, I saw interest in porting the application to postgres in the xrms web forum. I added my support to the request. Since then, I've done some work in terms of table and attribute name capitalization for the xrms developer who is looking at the postgres port. However, over the past month or so he does not respond to my emails offering help if he provides me with direction. It would probably take too much time and effort to port xrms into a stand alone application using python and the wxPython UI toolset. But, if those who know much more about postgres and php than do I can get the xrms project leader to agree to accept help, then those of us who have neither the need nor the desire for multiple dbms' on our systems, each to support a specific application, would be grateful. Thanks for suggestions, Rich -- Richard B. Shepard, Ph.D. | The Environmental Permitting Applied Ecosystem Services, Inc.(TM) | Accelerator <http://www.appl-ecosys.com> Voice: 503-667-4517 Fax: 503-667-8863
Rich Shepard wrote: > I was advised to ask on this list for ideas on assisting application > developers quickly port their hard-wired MySQL application to > postgres. My > need (and that of others who have contacted me about the same issue) > is with > XRMS <http://xrms.sourceforge.net/>. While I'm not a fan of web-based > applications, I'm apparently in the minority on this issue, so I just > shrug > and use them because I have no options. > > Xrms is the best I've seen in the sales administration/customer > (client) > relationship management arena. It is much better for solo consultants or > small companies without a separate sales department, but it can also > be used > by the latter. It's written in php and uses the ADOdb dbms abstraction > toolkit. When I inquired about difficulties supporting postgres on the > ADOdb > mail list, I learned that it's very easy to write a mysql-specific > application using adodb to communicate between the middleware and the > dbms > backend. Apparently, use of postgres reserved words and mysql-specific > extensions or non-compliant syntax are the most likely stumbling blocks. > > Last January, I saw interest in porting the application to postgres > in the > xrms web forum. I added my support to the request. Since then, I've done > some work in terms of table and attribute name capitalization for the > xrms > developer who is looking at the postgres port. However, over the past > month > or so he does not respond to my emails offering help if he provides me > with > direction. > > It would probably take too much time and effort to port xrms into a > stand > alone application using python and the wxPython UI toolset. But, if those > who know much more about postgres and php than do I can get the xrms > project > leader to agree to accept help, then those of us who have neither the > need > nor the desire for multiple dbms' on our systems, each to support a > specific > application, would be grateful. Um, they already state " To the best of our knowledge, XRMS has been successfully deployed on ..., Postgres, ..." Maybe you just need a recent update. Regards, Andreas
Rich, although i have no experience with xrms, i have converted a few applications ( including php ) to postgresql. i compiled php without mysql support, and implemented these functions as wrappers for postgresql function calls in a separate module(file). then i do a search replace on the incoming sql-statements to make them postgresql compliant runtime. also in contrib, there is mysql-compatibility package ( lots of mysql-function-implementations/wrappers ). regards, usleep On 8/21/06, Rich Shepard <rshepard@appl-ecosys.com> wrote: > I was advised to ask on this list for ideas on assisting application > developers quickly port their hard-wired MySQL application to postgres. My > need (and that of others who have contacted me about the same issue) is with > XRMS <http://xrms.sourceforge.net/>. While I'm not a fan of web-based > applications, I'm apparently in the minority on this issue, so I just shrug > and use them because I have no options. > > Xrms is the best I've seen in the sales administration/customer (client) > relationship management arena. It is much better for solo consultants or > small companies without a separate sales department, but it can also be used > by the latter. It's written in php and uses the ADOdb dbms abstraction > toolkit. When I inquired about difficulties supporting postgres on the ADOdb > mail list, I learned that it's very easy to write a mysql-specific > application using adodb to communicate between the middleware and the dbms > backend. Apparently, use of postgres reserved words and mysql-specific > extensions or non-compliant syntax are the most likely stumbling blocks. > > Last January, I saw interest in porting the application to postgres in > the > xrms web forum. I added my support to the request. Since then, I've done > some work in terms of table and attribute name capitalization for the xrms > developer who is looking at the postgres port. However, over the past month > or so he does not respond to my emails offering help if he provides me with > direction. > > It would probably take too much time and effort to port xrms into a stand > alone application using python and the wxPython UI toolset. But, if those > who know much more about postgres and php than do I can get the xrms project > leader to agree to accept help, then those of us who have neither the need > nor the desire for multiple dbms' on our systems, each to support a specific > application, would be grateful. > > Thanks for suggestions, > > Rich > > -- > Richard B. Shepard, Ph.D. | The Environmental Permitting > Applied Ecosystem Services, Inc.(TM) | Accelerator > <http://www.appl-ecosys.com> Voice: 503-667-4517 Fax: 503-667-8863 > > ---------------------------(end of broadcast)--------------------------- > TIP 2: Don't 'kill -9' the postmaster >
On Mon, 21 Aug 2006, usleepless@gmail.com wrote: > i compiled php without mysql support, and implemented these functions as > wrappers for postgresql function calls in a separate module(file). usleep, I have php compiled without mysql support installed here for webcollab. But, xrms is not my application; rather, it's one I'd like to use for my own business. There are many files in xrms and I have no idea where to start looking for sql statements or functions that might need to be changed. > also in contrib, there is mysql-compatibility package ( lots of > mysql-function-implementations/wrappers ). I'll look at that when I can make some time. Thank you, Rich -- Richard B. Shepard, Ph.D. | The Environmental Permitting Applied Ecosystem Services, Inc.(TM) | Accelerator <http://www.appl-ecosys.com> Voice: 503-667-4517 Fax: 503-667-8863
On Mon, 21 Aug 2006, Andreas Pflug wrote: > Um, they already state " To the best of our knowledge, XRMS has been > successfully deployed on ..., Postgres, ..." Maybe you just need a recent > update. Andreas, I know. I read that, too. I asked about this both on the forum and in an e-mail to one of the developers. No response. However, I'm running postgres-8.1.4 and the latest CVS download from Xrms. It now installs without error, but will not run. As soon as I select the Administration menu, for example, I get an error message and cannot add users, change the demo user, or do anything else. Is there more for me to upgrade that I've missed? I've php-4.4.4 installed here. Rich -- Richard B. Shepard, Ph.D. | The Environmental Permitting Applied Ecosystem Services, Inc.(TM) | Accelerator <http://www.appl-ecosys.com> Voice: 503-667-4517 Fax: 503-667-8863
Rich Shepard wrote: > On Mon, 21 Aug 2006, Andreas Pflug wrote: > >> Um, they already state " To the best of our knowledge, XRMS has been >> successfully deployed on ..., Postgres, ..." Maybe you just need a >> recent >> update. > > Andreas, > > I know. I read that, too. I asked about this both on the forum and > in an > e-mail to one of the developers. No response. > > However, I'm running postgres-8.1.4 and the latest CVS download from > Xrms. > It now installs without error, but will not run. As soon as I select the > Administration menu, for example, I get an error message and cannot add > users, change the demo user, or do anything else. > > Is there more for me to upgrade that I've missed? I've php-4.4.4 > installed > here. This sounds like a support problem to me, sad you didn't get any response. Since they say "runs on any SQL RDBMS", you've probably hit an installation issue or some kind of bug, but not a fundamentally unported/rdbms-specific app. You're probably best off if somebody of the XRMS people tells you what's wrong. If you can't get answers, XRMS is a dead system, not suitable for usage unless you like deep hacking. For sure, this forum is the wrong one for XRMS support. For almost immediate answers (!) to postgresql-specific questions, go to pgsql-general. Regards, Andreas
> It would probably take too much time and effort to port xrms into a stand > alone application using python and the wxPython UI toolset. But, if those > who know much more about postgres and php than do I can get the xrms > project > leader to agree to accept help, then those of us who have neither the need > nor the desire for multiple dbms' on our systems, each to support a > specific > application, would be grateful. I would take a look at CentricCRM. It supports PostgreSQL out of the box. They have an online Demo you can play with as well. I was pretty impressed. Joshua D. Drake > > Thanks for suggestions, > > Rich > -- === The PostgreSQL Company: Command Prompt, Inc. === Sales/Support: +1.503.667.4564 || 24x7/Emergency: +1.800.492.2240 Providing the most comprehensive PostgreSQL solutions since 1997 http://www.commandprompt.com/
On Monday 21 August 2006 12:59, Rich Shepard wrote: > On Mon, 21 Aug 2006, Andreas Pflug wrote: > > Um, they already state " To the best of our knowledge, XRMS has been > > successfully deployed on ..., Postgres, ..." Maybe you just need a recent > > update. > > Andreas, > > I know. I read that, too. I asked about this both on the forum and in an > e-mail to one of the developers. No response. > That's not a good sign... > However, I'm running postgres-8.1.4 and the latest CVS download from > Xrms. It now installs without error, but will not run. As soon as I select > the Administration menu, for example, I get an error message and cannot add > users, change the demo user, or do anything else. > Have you created a bug ticket on this with the error? You need to try to get some form of communication going with the project developers if you're ever going to get postgresql support. My personal recommendation would be to get some type of official commitment that they will support postgresql in the mainline code, and then start sending small patches that fix issues you come up with (as opposed to the one big "here is postgres support" patch). You can then judge if they are honestly going to support postgresql by how quickly these patches get committed. If you need technical support for specific error, your probably better off asking for help on something like pgsql-php@ mailing list. While this type of development is great as an advocacy tool, we've yet to get anyone to put resources behind it, and it's more of a technical problem once you get to discussing specific error messages. -- Robert Treat Build A Brighter LAMP :: Linux Apache {middleware} PostgreSQL
On Mon, 21 Aug 2006, Robert Treat wrote: > That's not a good sign... Yup. > Have you created a bug ticket on this with the error? You need to try to > get some form of communication going with the project developers if you're > ever going to get postgresql support. I had been exchanging e-mail with the developer focusing on getting postgres to work. Don't know why it went away. > My personal recommendation would be to get some type of official > commitment that they will support postgresql in the mainline code, and > then start sending small patches that fix issues you come up with (as > opposed to the one big "here is postgres support" patch). You can then > judge if they are honestly going to support postgresql by how quickly > these patches get committed. Upon the developer's request, I went through all the .php files in the access control directory and made sure that all references to table and attribute names were in lower case. I've since learned that this does not matter; postgres folds all mixed case names one way and mysql the other, so the changes are really not necessary. It seems to be more an issue of using mysql-specific extensions and language, some of which may use postgres reserved words. > If you need technical support for specific error, your probably better off > asking for help on something like pgsql-php@ mailing list. While this > type of development is great as an advocacy tool, we've yet to get anyone > to put resources behind it, and it's more of a technical problem once you > get to discussing specific error messages. I'll go back to the xrms lead and ask again -- politely, of course -- what plans they have, especially since the forum from more than a year ago claims the application works with postgres. I've sent the error messages I see, and the actions that generated them; it's not like I'm asking them to guess the number I have in mind. Thanks, Robert, Rich -- Richard B. Shepard, Ph.D. | The Environmental Permitting Applied Ecosystem Services, Inc.(TM) | Accelerator <http://www.appl-ecosys.com> Voice: 503-667-4517 Fax: 503-667-8863
On Mon, 21 Aug 2006, Andreas Pflug wrote: > This sounds like a support problem to me, sad you didn't get any response. > Since they say "runs on any SQL RDBMS", you've probably hit an > installation issue or some kind of bug, but not a fundamentally > unported/rdbms-specific app. Andreas, According to the lead developer, and the one fellow who's working on the postgres port, it's not yet fully there. I know the information is contradictory, but I can go only by my e-mail exchanges with them. > For sure, this forum is the wrong one for XRMS support. I know this. I was hoping that someone here would be interested enough to cooperate in assisting the xrms developers to get a truely working version for postgres. Thanks, Rich -- Richard B. Shepard, Ph.D. | The Environmental Permitting Applied Ecosystem Services, Inc.(TM) | Accelerator <http://www.appl-ecosys.com> Voice: 503-667-4517 Fax: 503-667-8863
On Monday 21 August 2006 14:30, Rich Shepard wrote: > On Mon, 21 Aug 2006, Robert Treat wrote: > > My personal recommendation would be to get some type of official > > commitment that they will support postgresql in the mainline code, and > > then start sending small patches that fix issues you come up with (as > > opposed to the one big "here is postgres support" patch). You can then > > judge if they are honestly going to support postgresql by how quickly > > these patches get committed. > > Upon the developer's request, I went through all the .php files in the > access control directory and made sure that all references to table and > attribute names were in lower case. I've since learned that this does not > matter; postgres folds all mixed case names one way and mysql the other, so > the changes are really not necessary. It seems to be more an issue of using > mysql-specific extensions and language, some of which may use postgres > reserved words. > I've worked on a number of these types of projects and these problems aren't usually to hard to work out technically, it's just a matter of getting the developer buy in to change code that works on mysql to let it work on postgresql (and probably other db's as well). A good example of this is dealing with something like an enum. You can often mimic this with constraints or change this to work as a FK lookup table...neither is too complex (although a mysql user might not know how to do it) and can usually be done in an easily digestible code change. -- Robert Treat Build A Brighter LAMP :: Linux Apache {middleware} PostgreSQL
You can try my mysql compatibility library: http://pgfoundry.org/projects/mysqlcompat/ Chris