|
|
|
date: Wed, 17 Sep 2008 07:28:05 -0700,
group: microsoft.public.vstudio.general
back
Updating an old application
Hi,
I'm in the process of inheriting an application written to use Access97 and
the Access97 runtime. It's a mature application with a ton of functionality,
but it does need to be brought forward. My goal is to re-architect the
system so that it can run on PCs, Macs, or the Web. I *think* I should be
moving the system into the .Net environment, but I'm unclear as to what
options I really have, short of a full re-write, which I'm not opposed to
doing. I understand that the Mac will not be supported by .Net (as far as I
know) but could be by using something like the mono project. I'm also not
opposed to completely changing platforms, ie, Java/MySQL/PHP, but this is,
after all, the Microsoft Developer's forum :-)
I think what I'm shooting for is a common database layout with common logic
components, but with independent front ends depending on the platform.
Anyway, any thoughts you might have on this would be greatly appreciated.
Also, if this question is more appropriate to another group, some direction
would be appreciated on that as well.
Thanks and have a good day.
Ron
date: Wed, 17 Sep 2008 07:28:05 -0700
author: RonG
Re: Updating an old application
The choice is obvious:
Access only runs on Windows desktop, it does not run on Mac (unless you use
Wndows emulator), nor be used via the Internet. If you re-write it as .NET
desktop, it is still Window only. No other OS runs .NET on user end.
If you want to make it a web app, so that users with Win/Mac can access it
vis web browser, then you need to throw away whatever the current Access app
has and re-write the whole thing, be it .NET web app or Java or some other
technologies.
"RonG" wrote in message
news:EA3E0B68-B92C-475F-8947-73A17DC70F80@microsoft.com...
> Hi,
> I'm in the process of inheriting an application written to use Access97
> and
> the Access97 runtime. It's a mature application with a ton of
> functionality,
> but it does need to be brought forward. My goal is to re-architect the
> system so that it can run on PCs, Macs, or the Web. I *think* I should be
> moving the system into the .Net environment, but I'm unclear as to what
> options I really have, short of a full re-write, which I'm not opposed to
> doing. I understand that the Mac will not be supported by .Net (as far as
> I
> know) but could be by using something like the mono project. I'm also not
> opposed to completely changing platforms, ie, Java/MySQL/PHP, but this is,
> after all, the Microsoft Developer's forum :-)
>
> I think what I'm shooting for is a common database layout with common
> logic
> components, but with independent front ends depending on the platform.
>
> Anyway, any thoughts you might have on this would be greatly appreciated.
> Also, if this question is more appropriate to another group, some
> direction
> would be appreciated on that as well.
>
> Thanks and have a good day.
>
> Ron
date: Wed, 17 Sep 2008 08:07:29 -0700
author: Norman Yuan
Re: Updating an old application
RonG wrote:
> Hi,
> I'm in the process of inheriting an application written to use Access97 and
> the Access97 runtime. It's a mature application with a ton of functionality,
> but it does need to be brought forward. My goal is to re-architect the
> system so that it can run on PCs, Macs, or the Web. I *think* I should be
> moving the system into the .Net environment, but I'm unclear as to what
> options I really have, short of a full re-write, which I'm not opposed to
> doing. I understand that the Mac will not be supported by .Net (as far as I
> know) but could be by using something like the mono project. I'm also not
> opposed to completely changing platforms, ie, Java/MySQL/PHP, but this is,
> after all, the Microsoft Developer's forum :-)
>
> I think what I'm shooting for is a common database layout with common logic
> components, but with independent front ends depending on the platform.
>
> Anyway, any thoughts you might have on this would be greatly appreciated.
> Also, if this question is more appropriate to another group, some direction
> would be appreciated on that as well.
Ron:
I don't know if this would work for you (or your customers), but CrossOver Mac
is an inexpensive application that allows many/most Windows programs to run
"natively" on Intel Mac's. CrossOver Mac (and CrossOver Linux) are based on the
WINE project.
--
David Wilkinson
Visual C++ MVP
date: Wed, 17 Sep 2008 11:23:38 -0400
author: David Wilkinson
Re: Updating an old application
Hi Norman,
Thanks for the response. So, I could, for example, convert the database
from Access to SQLServer, and then recode the system using one of the .Net
languages. Is it possible, do you think, to convert AccessVBA into VB.Net
through some sort of migration that might convert some, but probably not all,
of the code?
I'll also have to learn more about deploying SQLServer in these
environments. Is SQLServer supported on the MacOS?
Thanks again for your thoughts.
Ron
"Norman Yuan" wrote:
> The choice is obvious:
>
> Access only runs on Windows desktop, it does not run on Mac (unless you use
> Wndows emulator), nor be used via the Internet. If you re-write it as .NET
> desktop, it is still Window only. No other OS runs .NET on user end.
>
> If you want to make it a web app, so that users with Win/Mac can access it
> vis web browser, then you need to throw away whatever the current Access app
> has and re-write the whole thing, be it .NET web app or Java or some other
> technologies.
>
>
> "RonG" wrote in message
> news:EA3E0B68-B92C-475F-8947-73A17DC70F80@microsoft.com...
> > Hi,
> > I'm in the process of inheriting an application written to use Access97
> > and
> > the Access97 runtime. It's a mature application with a ton of
> > functionality,
> > but it does need to be brought forward. My goal is to re-architect the
> > system so that it can run on PCs, Macs, or the Web. I *think* I should be
> > moving the system into the .Net environment, but I'm unclear as to what
> > options I really have, short of a full re-write, which I'm not opposed to
> > doing. I understand that the Mac will not be supported by .Net (as far as
> > I
> > know) but could be by using something like the mono project. I'm also not
> > opposed to completely changing platforms, ie, Java/MySQL/PHP, but this is,
> > after all, the Microsoft Developer's forum :-)
> >
> > I think what I'm shooting for is a common database layout with common
> > logic
> > components, but with independent front ends depending on the platform.
> >
> > Anyway, any thoughts you might have on this would be greatly appreciated.
> > Also, if this question is more appropriate to another group, some
> > direction
> > would be appreciated on that as well.
> >
> > Thanks and have a good day.
> >
> > Ron
>
>
date: Wed, 17 Sep 2008 08:25:02 -0700
author: RonG
Re: Updating an old application
There might be some third party tools that claim doing Access VBA code
conversion. Personally, knowing both Access VBA and .NET, I do not believe
any tool can generate a useful converted code and not worth wasting time and
money for that. Most importantly, you need to decide which type of .NET app
you want to go, Win form(desktop) or Wweb app (ASP.NET).
If you want to use SQL Server as backend, you still have to decide what
front end you use to replace the functionalities in that Access app. I do
not think SQL Server will run on plain Mac (if you do web app, you do not
need run SQL Server on user computer, though).
"RonG" wrote in message
news:179D9ED6-FE9D-4787-A4F2-59162B365D26@microsoft.com...
> Hi Norman,
>
> Thanks for the response. So, I could, for example, convert the database
> from Access to SQLServer, and then recode the system using one of the .Net
> languages. Is it possible, do you think, to convert AccessVBA into VB.Net
> through some sort of migration that might convert some, but probably not
> all,
> of the code?
>
> I'll also have to learn more about deploying SQLServer in these
> environments. Is SQLServer supported on the MacOS?
>
> Thanks again for your thoughts.
>
> Ron
>
> "Norman Yuan" wrote:
>
>> The choice is obvious:
>>
>> Access only runs on Windows desktop, it does not run on Mac (unless you
>> use
>> Wndows emulator), nor be used via the Internet. If you re-write it as
>> .NET
>> desktop, it is still Window only. No other OS runs .NET on user end.
>>
>> If you want to make it a web app, so that users with Win/Mac can access
>> it
>> vis web browser, then you need to throw away whatever the current Access
>> app
>> has and re-write the whole thing, be it .NET web app or Java or some
>> other
>> technologies.
>>
>>
>> "RonG" wrote in message
>> news:EA3E0B68-B92C-475F-8947-73A17DC70F80@microsoft.com...
>> > Hi,
>> > I'm in the process of inheriting an application written to use Access97
>> > and
>> > the Access97 runtime. It's a mature application with a ton of
>> > functionality,
>> > but it does need to be brought forward. My goal is to re-architect the
>> > system so that it can run on PCs, Macs, or the Web. I *think* I should
>> > be
>> > moving the system into the .Net environment, but I'm unclear as to what
>> > options I really have, short of a full re-write, which I'm not opposed
>> > to
>> > doing. I understand that the Mac will not be supported by .Net (as far
>> > as
>> > I
>> > know) but could be by using something like the mono project. I'm also
>> > not
>> > opposed to completely changing platforms, ie, Java/MySQL/PHP, but this
>> > is,
>> > after all, the Microsoft Developer's forum :-)
>> >
>> > I think what I'm shooting for is a common database layout with common
>> > logic
>> > components, but with independent front ends depending on the platform.
>> >
>> > Anyway, any thoughts you might have on this would be greatly
>> > appreciated.
>> > Also, if this question is more appropriate to another group, some
>> > direction
>> > would be appreciated on that as well.
>> >
>> > Thanks and have a good day.
>> >
>> > Ron
>>
>>
date: Wed, 17 Sep 2008 11:01:04 -0700
author: Norman Yuan
Re: Updating an old application
Hi guys,
And thanks for the responses.
David, that's the kind of solution that we've been giving our customers for
awhile now, and since I'm probably going to end up rebuilding a lot of the
application in the effort to bring it forward, one goal would be to have a
system that can run natively on the MacOS. It might be a pipedream to try
to support all these platforms, but like I said, my goal would be to have
versions for the PC, Mac, and Web, while sharing as many components as
possible to minimize the coding effort.
To be honest, I'm not real sure how I'd go about doing that. My thinking so
far has been something along the lines of.....take the Access database layout
and convert it to SQLServer. It could be used, as is, for the PC and Mac
desktop versions, and then with some modification, for the web version.
Develop the code for the business logic that's supported. That should be the
same across all platforms. And then, develop front ends for each platform
making use of the same underlying foundation. I think in VS I could develop
separate programs but share components for the web and desktop. The desktop
version would have to ported over to something like the mono project to get
it to work on the Mac. Of course, I'm not sure how get that to actually
work, exactly :-) but that's the idea.
Failing that on the Microsoft platfoms, I'd explore something like
MySQL/Java/PHP, which I know can run cross-platform.
Thanks again.
Ron
"David Wilkinson" wrote:
> RonG wrote:
> > Hi,
> > I'm in the process of inheriting an application written to use Access97 and
> > the Access97 runtime. It's a mature application with a ton of functionality,
> > but it does need to be brought forward. My goal is to re-architect the
> > system so that it can run on PCs, Macs, or the Web. I *think* I should be
> > moving the system into the .Net environment, but I'm unclear as to what
> > options I really have, short of a full re-write, which I'm not opposed to
> > doing. I understand that the Mac will not be supported by .Net (as far as I
> > know) but could be by using something like the mono project. I'm also not
> > opposed to completely changing platforms, ie, Java/MySQL/PHP, but this is,
> > after all, the Microsoft Developer's forum :-)
> >
> > I think what I'm shooting for is a common database layout with common logic
> > components, but with independent front ends depending on the platform.
> >
> > Anyway, any thoughts you might have on this would be greatly appreciated.
> > Also, if this question is more appropriate to another group, some direction
> > would be appreciated on that as well.
>
> Ron:
>
> I don't know if this would work for you (or your customers), but CrossOver Mac
> is an inexpensive application that allows many/most Windows programs to run
> "natively" on Intel Mac's. CrossOver Mac (and CrossOver Linux) are based on the
> WINE project.
>
> --
> David Wilkinson
> Visual C++ MVP
>
date: Wed, 17 Sep 2008 11:24:01 -0700
author: RonG
Re: Updating an old application
On Sep 17, 3:28 pm, RonG wrote:
> Hi,
> I'm in the process of inheriting an application written to use Access97 and
> the Access97 runtime. It's a mature application with a ton of functionality,
> but it does need to be brought forward. My goal is to re-architect the
> system so that it can run on PCs, Macs, or the Web. I *think* I should be
> moving the system into the .Net environment, but I'm unclear as to what
> options I really have, short of a full re-write, which I'm not opposed to
> doing. I understand that the Mac will not be supported by .Net (as far as I
> know) but could be by using something like the mono project. I'm also not
> opposed to completely changing platforms, ie, Java/MySQL/PHP, but this is> after all, the Microsoft Developer's forum :-)
>
> I think what I'm shooting for is a common database layout with common logic
> components, but with independent front ends depending on the platform.
>
> Anyway, any thoughts you might have on this would be greatly appreciated.
> Also, if this question is more appropriate to another group, some direction
> would be appreciated on that as well.
>
> Thanks and have a good day.
>
> Ron
Think of things a bit differently (I've read some of the other
responses :-)
Firstly, separate the front and back ends. Port the database to SQL-
Server and replace all the access tables by links to SQL-Server. At
the same time, duplicate that in something like MySQL. Your back end
is now platform-agnostic, but everybody still has to use Access as
their front end.
Now rewrite the front end in something like mono or Tcl/Tk. Your front-
end is now platform-agnostic ...
And off you go :-) Use the right tool for the job, and don't be fooled
by Access, which is actually a collection of tools for data storage,
entry, manipulation and reporting.
Cheers,
Wol
date: Thu, 18 Sep 2008 06:21:46 -0700 (PDT)
author: unknown
Re: Updating an old application
Hi Anthony,
Thanks a lot for your thoughts. I agree completely with your comment about
using the right tools. Seeing as I'm posting this in a Microsoft Developers
forum :-), I'm trying to aim this at MS tools that might do the trick for me.
I'm beginning to think, tho, that implementing my goals using MS-centric
tools might be a bit like sticking a round peg into a square hole.
When I originally started thinking about this, my immediate thought was that
I'd need to move to something like Java/PHP/MySQL to get where I wanted to
be. But, I thought, the system is already built in the land of Windows, it's
at least worth the time to see if there's a usable solution staying in that
development environment. At first, I thought that there might be some way to
port the system into the .Net environment, but that seems to have been
wishful thinking. So far, the closest I've been able to come is something
like C#/SQLServer/mono, building both a desktop and Web application in VS,
and then porting the desktop solution to mono get get support for MacOS and
Linux. I'm kind of thinking of that solution as "build it for Windows and
then do "something" to get it to work everywhere else". The other
alternative is to use a set of tools outside of the Microsoft realm, as
you've suggested, and as I've guessed might be something like Java/PHP/MySQL.
I'm not familiar with Tcl/Tk other than to recognize the name, and I'll
check into that as well. Thanks again for your thoughts.
Ron
"Anthony.Youngman@eca-international.com" wrote:
> On Sep 17, 3:28 pm, RonG wrote:
> > Hi,
> > I'm in the process of inheriting an application written to use Access97 and
> > the Access97 runtime. It's a mature application with a ton of functionality,
> > but it does need to be brought forward. My goal is to re-architect the
> > system so that it can run on PCs, Macs, or the Web. I *think* I should be
> > moving the system into the .Net environment, but I'm unclear as to what
> > options I really have, short of a full re-write, which I'm not opposed to
> > doing. I understand that the Mac will not be supported by .Net (as far as I
> > know) but could be by using something like the mono project. I'm also not
> > opposed to completely changing platforms, ie, Java/MySQL/PHP, but this is,
> > after all, the Microsoft Developer's forum :-)
> >
> > I think what I'm shooting for is a common database layout with common logic
> > components, but with independent front ends depending on the platform.
> >
> > Anyway, any thoughts you might have on this would be greatly appreciated.
> > Also, if this question is more appropriate to another group, some direction
> > would be appreciated on that as well.
> >
> > Thanks and have a good day.
> >
> > Ron
>
> Think of things a bit differently (I've read some of the other
> responses :-)
>
> Firstly, separate the front and back ends. Port the database to SQL-
> Server and replace all the access tables by links to SQL-Server. At
> the same time, duplicate that in something like MySQL. Your back end
> is now platform-agnostic, but everybody still has to use Access as
> their front end.
>
> Now rewrite the front end in something like mono or Tcl/Tk. Your front-
> end is now platform-agnostic ...
>
> And off you go :-) Use the right tool for the job, and don't be fooled
> by Access, which is actually a collection of tools for data storage,
> entry, manipulation and reporting.
>
> Cheers,
> Wol
>
date: Thu, 18 Sep 2008 07:23:02 -0700
author: RonG
|
|