Request from Foxite group - Fabrice?

This forum is meant for questions about the Visual FoxPro Language support in X#.

Post Reply
User avatar
lumberjack
Posts: 727
Joined: Fri Sep 25, 2015 3:11 pm
Location: South Africa

Request from Foxite group - Fabrice?

Post by lumberjack »

After I posted the link regarding the VFP function support list, here is another response...
Thanks for the updates,
I am very new to X#,However,is there anyway to get small documents or video to create a small Address book software in X#.
and I am expecting in the document something like,
How to connect SQL Database, How to create a Menu,How to create a single form , how to create a Master Details form,
How to connect Modern third party Reporting tools like Crystal Report or Jasper Report (Open Source).
and how to create Exe. and distribution/setup files to install application in client site.
______________________
Johan Nel
Boshof, South Africa
User avatar
Fabrice
Posts: 459
Joined: Thu Oct 08, 2015 7:47 am
Location: France

Request from Foxite group - Fabrice?

Post by Fabrice »

Hi Johan,
I must admit that since the "bad" noise the previous had made, I was wondering the kind of Video I could try to produce...
As always, the first question first was "For what kind of Attendees ?", so I decided to rename the video and set some categories (Beginner,Intermediate,Advanced,...)
But ok, let's start a serie with an Address Book :
I will go Windows Forms, but
what about the database ? MySQL, MariaDB, PostgreSQL, SQLite, ...
Should I go direct SQL, ADO.NET, Entity Framework ?...May be Beginner, Intermediate, Advanced ?
Should I go DBF first ?
And as Report Engine ? Why not Report Pro ??
Should I create a poll ?? So it is User-driven.... ;)

Fab
XSharp Development Team
fabrice(at)xsharp.eu
User avatar
lumberjack
Posts: 727
Joined: Fri Sep 25, 2015 3:11 pm
Location: South Africa

Request from Foxite group - Fabrice?

Post by lumberjack »

Hi Fabrice,
Fabrice wrote:I must admit that since the "bad" noise the previous had made, I was wondering the kind of Video I could try to produce...
As always, the first question first was "For what kind of Attendees ?", so I decided to rename the video and set some categories (Beginner,Intermediate,Advanced,...)
But ok, let's start a serie with an Address Book :
I will go Windows Forms, but
what about the database ? MySQL, MariaDB, PostgreSQL, SQLite, ...
Should I go direct SQL, ADO.NET, Entity Framework ?...May be Beginner, Intermediate, Advanced ?
Should I go DBF first ?
And as Report Engine ? Why not Report Pro ??
Should I create a poll ?? So it is User-driven.... ;)
Fab
Well I don't really think it really matters, WinForm with DBF, then a SQL database (they basically all the same, except for the connection string). Maybe just some videos of what Paul Piko did in Vulcan At Warp Speed? I don't think it should be too advanced, just the basics. 5 min max per video.
______________________
Johan Nel
Boshof, South Africa
FoxProMatt

Request from Foxite group - Fabrice?

Post by FoxProMatt »

In the beginning of ones X# consideration and review path, I think the safest route is to show it as *close* to VFP commands and paradigms as possible. That will make people feel more comfortable to give it a look. Even though there are some new and cool things X# can do, I recommend do not show that in the beginning videos. Save it for teaching later; they will come around to trying new things once they see their old, familiar Fox really has a new space to keep living.

As for data:

MySql or Sql Server would require SqlExec() function (and the few other related functions) to be working.

Ideally, DBF-based would want native FoxPro Sql to work, but you could get by without it.

Then there is the binding model... Some people bind UI fields to ParentCursor.FieldName and move the record pointer in a parent table whilst they have Set Relation in place to Child Cursors or Related Cursors and display values from ChildCursor.FieldName or RelatedCursor.FieldName in other UI controls on the form. Other people use Scatter on their their data rows from each cursor to a master data-object model (aka View Model), and bind the UI to the view model properties, then use commands (in a framework class) to update the DBFs from the view model.



I would not dive into Report Pro yet. It seems to me like FoxPro-all-the way is the best strategy for now.
User avatar
Fabrice
Posts: 459
Joined: Thu Oct 08, 2015 7:47 am
Location: France

Request from Foxite group - Fabrice?

Post by Fabrice »

Matt,
FoxProMatt_MattSlay wrote: MySql or Sql Server would require SqlExec() function (and the few other related functions) to be working.
Don't forget that we are a .NET language....So we can use existing .NET SQL access; MySql connectors (like https://mysqlconnector.net/ ), or PostgreSQL (with http://www.npgsql.org/ ) and others
So, no need for theses compatibility Functions, it is already available for any "new" application.

For DataBinding, I may have to digg a bit but I remember to have written some stuff once in order to map to EntityFramework, so....

But maybe this is will have to be tagged as Intermediate/Advanced.. ??

Fab.
XSharp Development Team
fabrice(at)xsharp.eu
User avatar
Chris
Posts: 4910
Joined: Thu Oct 08, 2015 7:48 am
Location: Greece

Request from Foxite group - Fabrice?

Post by Chris »

I absolutely agree with Matt. For VO developers, the samples we have been showing were using VO DataWindows, ShellWindows, browsers, the DBServer class etc, so they can be confident they can move easily to X#.

For FoxPro develpers, I think we should be doing the same, show them how they can work in X#, in a similar way they are doing in FoxPro. Of course we are not ready for that to do it for a GUI app, FoxPro support in X# is still at its early stages. But I think we can show them what IS already available, ie writing some code that already "looks and is" FoxPro code. So create a VS console app, add a Start() function and use FoxPro commands (not functions) to open a dbf, add a filter, read and update etc. Use FoxPro specific features like TEXT...END TEXT etc.

I think that will do for now, later when we make more progress in GUI items, we can also demonstrate such stuff as well.
Chris Pyrgas

XSharp Development Team
chris(at)xsharp.eu
User avatar
Fabrice
Posts: 459
Joined: Thu Oct 08, 2015 7:47 am
Location: France

Request from Foxite group - Fabrice?

Post by Fabrice »

Chris,
I agree but...if I go back to the request, the user is willing to have a Form application.
And anyway, we won't have the FoxPro GUI, but will rather try to provide them a translation/transportation application that will move their FoxProForm to WindowsForms, so...for the GUI part, I will have to show new things.
But then ok, I can do have DBF statements to get and write datas.

Same, I can "emulate" a Browse with WindowsForms, but this will be a Intermediate level as I will have to use some .NET "new" stuff....

Anyway, I will try to produce something and...I will hear the feeback ;)

Fab
XSharp Development Team
fabrice(at)xsharp.eu
User avatar
Chris
Posts: 4910
Joined: Thu Oct 08, 2015 7:48 am
Location: Greece

Request from Foxite group - Fabrice?

Post by Chris »

Hi Fabrice,

Well, as long as you make it very clear that this is how you would do something like that in a pure .Net way, but not how VFP users will be _forced_ to work from now on (and that they will still be able to use their familiar way of working in a future build), I think it's fine. After all, we also show to VO developers how they can do things the .Net way, but of course still support DBServers, all VO functions etc etc.

I just think it needs to be made very clear that FoxPro support in X# is still in its VERY early stage, some months later there will be A LOT more FoxPro oriented features implemented than those that exist right now. And after some months you will be able to show a lot more things that will look much more familiar to FoxPro developers.
Chris Pyrgas

XSharp Development Team
chris(at)xsharp.eu
Post Reply