Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec=10&cname=mwsc...
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
Downloads for me - do you want me to email it ?
Thanks Alan I would appreciate that
Paul
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Alan Bourke Sent: 01 February 2017 14:13 To: profoxtech@leafe.com Subject: Re: Diffing VCXs
Downloads for me - do you want me to email it ?
I right clicked on the link button and "save link as" it then brought up my fireftp add-on and I could then transfer the file. Confirmed the zip contains the program. I can email it to you if you have no joy.
Peter Cushing IT Department WHISPERING SMITH
On 01/02/2017 14:07, Paul Newton wrote:
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec=10&cname=mwsc...
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
Thanks Peter - Alan is going to send it to me
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Peter Cushing Sent: 01 February 2017 14:28 To: profoxtech@leafe.com Subject: Re: Diffing VCXs
I right clicked on the link button and "save link as" it then brought up my fireftp add-on and I could then transfer the file. Confirmed the zip contains the program. I can email it to you if you have no joy.
Peter Cushing IT Department WHISPERING SMITH
On 01/02/2017 14:07, Paul Newton wrote:
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec=10&cname=mwsc... ext.zip
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
The enhanced SCCTEXT is a VFPx project.
http://vfpx.codeplex.com/wikipage?title=Alternate%20SCCText
--
rk -----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Paul Newton Sent: Wednesday, February 01, 2017 9:07 AM To: profoxtech@leafe.com Subject: Diffing VCXs
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec=10&cname=mwsc...
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
you can find an even more sophisticated version of SCCTEXT.prg
Sorry but... Really? Scctext? in 2017?
Please, there is a much better and newer VFPx project for this since end 2013, called FoxBin2Prg, which allow converting to PRG-like text all binaries, and can regenerate the binaries from text (Scctext can't)
You can use it with whichever scc/DVCS tool you want, SourceSafe, git, Plastic.
Take a look on VFPx and you'll find it on latest updates.
Fernando D. Bozzo
El 1/2/2017 15:07, "Paul Newton" Paul.Newton@pegasus.co.uk escribió:
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec= 10&cname=mwscctext.zip
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
Hi Paul,
If you have a license to Beyond Compare from Scooter Software, you can get an terrific add-on from Frank Perez that diffs not only VCXs, but any of the VFP source code DBFs and naturally PRGs too. No need to pick up SCCText or any other binary flattener for straight comparisons. It handles it for you.
http://pfsolutions-mi.com/Product/VFP2Text
Not sure I could do my job without this tool.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Paul Newton Sent: Wednesday, February 01, 2017 09:07 To: profoxtech@leafe.com Subject: Diffing VCXs
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec=10&cname=mwsc...
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
Hi Rick:
I did take a look at Frank's converter, and it's not bidirectional, so you just can "view" converted files to text like Scctext does, but you can't merge them...
How did you use it in a source control development environment when you need to merge changes from different developers?
And using the class browser to generate PRG-like files doesn't allow to Regenerate the binaries from them, so it's a one-way conversion too.
El 2/2/2017 0:41, "Rick Schummer" profox@whitelightcomputing.com escribió:
Hi Paul,
If you have a license to Beyond Compare from Scooter Software, you can get an terrific add-on from Frank Perez that diffs not only VCXs, but any of the VFP source code DBFs and naturally PRGs too. No need to pick up SCCText or any other binary flattener for straight comparisons. It handles it for you.
http://pfsolutions-mi.com/Product/VFP2Text
Not sure I could do my job without this tool.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Paul Newton Sent: Wednesday, February 01, 2017 09:07 To: profoxtech@leafe.com Subject: Diffing VCXs
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec= 10&cname=mwscctext.zip
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
Hi Fernando,
I rarely have to merge as we normally have one-developer one-project scenario at WLC. Always a pain in the neck to deal with on the rare occasions it pops up.
That said, the newest version of VFP2Text does support "two-way" if you save the files after you merge in Beyond Compare. Just like anything that you merge with the various binary source code files, you have to be smart to know what you can merge and how to merge. For instance, OLE controls are a pain. Moving methods that refer to a new property/method and not merging over the property/method details for the class definitely lead to problems.
The bi-directional feature has been in the tool since v2 so possibly you reviewed an earlier version.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Fernando D. Bozzo Sent: Thursday, February 02, 2017 01:24 To: profoxtech@leafe.com Subject: RE: Diffing VCXs
Hi Rick:
I did take a look at Frank's converter, and it's not bidirectional, so you just can "view" converted files to text like Scctext does, but you can't merge them...
How did you use it in a source control development environment when you need to merge changes from different developers?
And using the class browser to generate PRG-like files doesn't allow to Regenerate the binaries from them, so it's a one-way conversion too.
El 2/2/2017 0:41, "Rick Schummer" profox@whitelightcomputing.com escribió:
Hi Paul,
If you have a license to Beyond Compare from Scooter Software, you can get an terrific add-on from Frank Perez that diffs not only VCXs, but any of the VFP source code DBFs and naturally PRGs too. No need to pick up SCCText or any other binary flattener for straight comparisons. It handles it for you.
http://pfsolutions-mi.com/Product/VFP2Text
Not sure I could do my job without this tool.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Paul Newton Sent: Wednesday, February 01, 2017 09:07 To: profoxtech@leafe.com Subject: Diffing VCXs
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec= 10&cname=mwscctext.zip
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
Hi Rick!
I've downloaded the tryal of Beyond Compare 4, installed VFP2Text extension and made a simple form with 1 button on with a messagebox.
VFP2Text generates this output (I've copied just the dataenvironment part):
[+Record] [PLATFORM]WINDOWS [UNIQUEID]_4UE16XWOR [CLASS]dataenvironment [BASECLASS]dataenvironment [OBJNAME]Dataenvironment [+PROPERTIES] DataSource = .NULL. Height = 0 Left = 0 Name = "Dataenvironment" Top = 0 Width = 0
....now I understand WHY you say it's a pain in the neck to merge with it. This format is very similar of what SCCTEXT does! It's ilegible in many parts
Now this is the same extract with FoxBin2Prg (SC2 file edited with Beyond Compare 4 too):
DEFINE CLASS dataenvironment AS dataenvironment *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" />
DataSource = .NULL. Height = 0 Left = 0 Name = "Dataenvironment" Top = 0 Width = 0
ENDDEFINE
...I think you should definetly take a look at FoxBin2Prg. It will make your team's (1 dev or more) life easier.
We use it in 2 teams with 8+ people each one, and a LOT of merging of VCX and SCX every day, without problems.
Well, just my sugestion.
Best Regards,
Fernando D. Bozzo.-
2017-02-07 20:54 GMT+01:00 Rick Schummer profox@whitelightcomputing.com:
Hi Fernando,
I rarely have to merge as we normally have one-developer one-project scenario at WLC. Always a pain in the neck to deal with on the rare occasions it pops up.
That said, the newest version of VFP2Text does support "two-way" if you save the files after you merge in Beyond Compare. Just like anything that you merge with the various binary source code files, you have to be smart to know what you can merge and how to merge. For instance, OLE controls are a pain. Moving methods that refer to a new property/method and not merging over the property/method details for the class definitely lead to problems.
The bi-directional feature has been in the tool since v2 so possibly you reviewed an earlier version.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Fernando D. Bozzo Sent: Thursday, February 02, 2017 01:24 To: profoxtech@leafe.com Subject: RE: Diffing VCXs
Hi Rick:
I did take a look at Frank's converter, and it's not bidirectional, so you just can "view" converted files to text like Scctext does, but you can't merge them...
How did you use it in a source control development environment when you need to merge changes from different developers?
And using the class browser to generate PRG-like files doesn't allow to Regenerate the binaries from them, so it's a one-way conversion too.
El 2/2/2017 0:41, "Rick Schummer" profox@whitelightcomputing.com escribió:
Hi Paul,
If you have a license to Beyond Compare from Scooter Software, you can get an terrific add-on from Frank Perez that diffs not only VCXs, but any of the VFP source code DBFs and naturally PRGs too. No need to pick up SCCText or any other binary flattener for straight comparisons. It handles it for you.
http://pfsolutions-mi.com/Product/VFP2Text
Not sure I could do my job without this tool.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Paul Newton Sent: Wednesday, February 01, 2017 09:07 To: profoxtech@leafe.com Subject: Diffing VCXs
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec= 10&cname=mwscctext.zip
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
The pain I talk about is not the readability, it is knowing what to merge and how to go about it successfully. Fortunately I can merge things from all kinds of binary flatteners because I work with so many teams that have used different ones over the years.
The tools I use are for a different purpose. I use Beyond Compare to compare folders, files in a folder, and synchronize FTP sites with updates, compare data sets to see what is different in multiple sets of the same data just to name a few. None of these have anything to do with source code control.
Having a tool that does all this and can determine differences between VFP binary source code and data files is a super important feature I need.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Fernando D. Bozzo Sent: Tuesday, February 07, 2017 06:28 To: profoxtech@leafe.com Subject: Re: Diffing VCXs
Hi Rick!
I've downloaded the tryal of Beyond Compare 4, installed VFP2Text extension and made a simple form with 1 button on with a messagebox.
VFP2Text generates this output (I've copied just the dataenvironment part):
[+Record] [PLATFORM]WINDOWS [UNIQUEID]_4UE16XWOR [CLASS]dataenvironment [BASECLASS]dataenvironment [OBJNAME]Dataenvironment [+PROPERTIES] DataSource = .NULL. Height = 0 Left = 0 Name = "Dataenvironment" Top = 0 Width = 0
....now I understand WHY you say it's a pain in the neck to merge with it. This format is very similar of what SCCTEXT does! It's ilegible in many parts
Now this is the same extract with FoxBin2Prg (SC2 file edited with Beyond Compare 4 too):
DEFINE CLASS dataenvironment AS dataenvironment *< CLASSDATA: Baseclass="dataenvironment" Timestamp="" Scale="" Uniqueid="" ClassIcon="1" />
DataSource = .NULL. Height = 0 Left = 0 Name = "Dataenvironment" Top = 0 Width = 0
ENDDEFINE
...I think you should definetly take a look at FoxBin2Prg. It will make your team's (1 dev or more) life easier.
We use it in 2 teams with 8+ people each one, and a LOT of merging of VCX and SCX every day, without problems.
Well, just my sugestion.
Best Regards,
Fernando D. Bozzo.-
2017-02-07 20:54 GMT+01:00 Rick Schummer profox@whitelightcomputing.com:
Hi Fernando,
I rarely have to merge as we normally have one-developer one-project scenario at WLC. Always a pain in the neck to deal with on the rare occasions it pops up.
That said, the newest version of VFP2Text does support "two-way" if you save the files after you merge in Beyond Compare. Just like anything that you merge with the various binary source code files, you have to be smart to know what you can merge and how to merge. For instance, OLE controls are a pain. Moving methods that refer to a new property/method and not merging over the property/method details for the class definitely lead to problems.
The bi-directional feature has been in the tool since v2 so possibly you reviewed an earlier version.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Fernando D. Bozzo Sent: Thursday, February 02, 2017 01:24 To: profoxtech@leafe.com Subject: RE: Diffing VCXs
Hi Rick:
I did take a look at Frank's converter, and it's not bidirectional, so you just can "view" converted files to text like Scctext does, but you can't merge them...
How did you use it in a source control development environment when you need to merge changes from different developers?
And using the class browser to generate PRG-like files doesn't allow to Regenerate the binaries from them, so it's a one-way conversion too.
El 2/2/2017 0:41, "Rick Schummer" profox@whitelightcomputing.com escribió:
Hi Paul,
If you have a license to Beyond Compare from Scooter Software, you can get an terrific add-on from Frank Perez that diffs not only VCXs, but any of the VFP source code DBFs and naturally PRGs too. No need to pick up SCCText or any other binary flattener for straight comparisons. It handles it for you.
http://pfsolutions-mi.com/Product/VFP2Text
Not sure I could do my job without this tool.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Paul Newton Sent: Wednesday, February 01, 2017 09:07 To: profoxtech@leafe.com Subject: Diffing VCXs
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec= 10&cname=mwscctext.zip
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
All this is why IMO the best approach is to have as much code as possible in programmatic classes and treat VCX files as atomic units.
On 2017-02-08 06:01, Alan Bourke wrote:
All this is why IMO the best approach is to have as much code as possible in programmatic classes and treat VCX files as atomic units.
By that, are you saying "just have VCXes for the visual stuff and put all the non-visual code in PRGs." Typically, that's how I develop. I have my framework VCX base classes with any custom-MBSS stuff, but the client-specifics are general SCX forms, and because I do the n-tier design, the visual forms invoke PRG-classes for the bizobj and dataobj layers, where all non-visual work is usually done. That design has worked well for me since 2004, making maintenance pretty easy, and allowing me to switch backends without much work if any (since I deal with VFP cursors, akin to Charlie Coleman's approach but not exactly). At one time I used Paul McNett's MakeUpdatable.prg routine in my framework, but years ago I changed to something along the lines of dynamically building the UPDATE SQL based on what properties had actually changed. (My data record is created via SCATTER and referenced in THISFORM.oRecord.) Changes were detected using AMEMBERS:
IF AMEMBERS(laProps,toRecord,0,"C") > 0 THEN liCnt = 0 FOR EACH cProp IN laProps IF EMPTY(lcFieldList) OR LOWER(cProp) $ LOWER(lcFieldList) THEN lvValue = EVALUATE("toRecord." + cProp) lcCmd = [private mjb] + ALLTRIM(cProp) &lcCmd lcCmd = [mjb] + ALLTRIM(cProp) + [ = lvValue] &lcCmd lcExpr = lcExpr + ALLTRIM(cProp) + [ = ?mjb] + ALLTRIM(cProp) + ", " ENDIF ENDFOR IF EMPTY(lcExpr) THEN && nothing to update! llSuccess = .T. ELSE * get rid of last comma lcExpr = LEFT(lcExpr,LEN(lcExpr)-2) lcSQL = this.BuildUpdateStatement(tcTable,lcExpr,this.cPKField,tvKey) llSuccess = this.ExecuteSQL(lcSQL) = 1 IF NOT llSuccess THEN AERROR(laError) *** mjb 12/05/2014 - just setting cErrMsg now IF EMPTY(laError[2]) THEN this.cErrMsg = "Unable to update " + ALLTRIM(TRANSFORM(tvKey)) ELSE this.cErrMsg = "Unable to update " + ALLTRIM(TRANSFORM(tvKey)) + "." + CRLF + "Error: " + laError[2] ENDIF && EMPTY(laError[2]) ENDIF && NOT llUpdated ENDIF && EMPTY(lcExpr) ELSE && nothing has changed; flag as ok llSuccess = .T. ENDIF && AMEMBERS(..) > 0
By that, are you saying "just have VCXes for the visual stuff and put all the non-visual code in PRGs."
Yep. In fact I don't think UI code/markup/metadata lends itself well to source control in any language on any platform.
On 2017-02-20 15:53, Alan Bourke wrote:
By that, are you saying "just have VCXes for the visual stuff and put all the non-visual code in PRGs."
Yep. In fact I don't think UI code/markup/metadata lends itself well to source control in any language on any platform.
I'm betting you're right about that last part.
On Mon, Feb 20, 2017 at 3:53 PM, Alan Bourke alanpbourke@fastmail.fm wrote:
Yep. In fact I don't think UI code/markup/metadata lends itself well to source control in any language on any platform.
I think that's overly broad. HyperText Markup Language works well in source control. And the corresponding CSS and JavaScript. The minimized and obfuscated versions are like object and executable code and good to run with but less fun to version.
The only adventage of using VCXs over PRGs is that: - Descriptions of the methods and properties are shown by intellisense when you scroll them while using an instantiated class, which is not possible with PRGs, except PRG-COM classes instantiated from the registered Windows object. - Can be created (NewObject) from external exes/apps (with PRGs just the main program with SET PROCEDURE)
On the other side, PRGs have plenty of adventages over VCX: - The text never gets corrupted - You can define the type of procs/funcs parameters and their returned values (useful for COM) - Better for merging in a SCM/DVCS tool - It is the only way to use the Session class - Easier for bach-replacing between a bunch of files (you can do that with the tx2 versions generated by FoxBin2Prg, but then you need to regenarate the binaries, which is an extra step)
Fernando D. Bozzo
2017-02-21 15:15 GMT+01:00 Ted Roche tedroche@gmail.com:
On Mon, Feb 20, 2017 at 3:53 PM, Alan Bourke alanpbourke@fastmail.fm wrote:
Yep. In fact I don't think UI code/markup/metadata lends itself well to source control in any language on any platform.
I think that's overly broad. HyperText Markup Language works well in source control. And the corresponding CSS and JavaScript. The minimized and obfuscated versions are like object and executable code and good to run with but less fun to version.
-- Ted Roche Ted Roche & Associates, LLC http://www.tedroche.com
[excessive quoting removed by server]
Fernando D. Bozzo wrote on 2017-02-21:
The only adventage of using VCXs over PRGs is that: - Descriptions of the methods and properties are shown by intellisense when you scroll them while using an instantiated class, which is not possible with PRGs, except PRG-COM classes instantiated from the registered Windows object. - Can be created (NewObject) from external exes/apps (with PRGs just the main program with SET PROCEDURE)
On the other side, PRGs have plenty of adventages over VCX:
- The text never gets corrupted
- You can define the type of procs/funcs parameters and their returned
values (useful for COM)
- Better for merging in a SCM/DVCS tool
- It is the only way to use the Session class
- Easier for bach-replacing between a bunch of files (you can do that
with
the tx2 versions generated by FoxBin2Prg, but then you need to regenarate the binaries, which is an extra step)
Fernando D. Bozzo
Fernando,
A PRG based class can be created from an external exe. I have a couple of executables than instantiate PRG based classes in the main executable.
oObject = newobject({classname}, {prgfilename}, {executable})
Tracy Pearson PowerChurch Software
Hi Tracy,
You are right. I don't know why I did keep convinced of this. I remember that I did test it once and didn't work, but just can remember how many years of this and the specific situation of the test.
Thanks!! :D
2017-02-21 18:14 GMT+01:00 Tracy Pearson tracy@powerchurch.com:
Fernando D. Bozzo wrote on 2017-02-21:
The only adventage of using VCXs over PRGs is that: - Descriptions of the methods and properties are shown by intellisense when you scroll them while using an instantiated class, which is not possible with PRGs, except PRG-COM classes instantiated from the registered Windows object. - Can be created (NewObject) from external exes/apps (with PRGs just the main program with SET PROCEDURE)
On the other side, PRGs have plenty of adventages over VCX:
- The text never gets corrupted
- You can define the type of procs/funcs parameters and their returned
values (useful for COM)
- Better for merging in a SCM/DVCS tool
- It is the only way to use the Session class
- Easier for bach-replacing between a bunch of files (you can do that
with
the tx2 versions generated by FoxBin2Prg, but then you need to
regenarate
the binaries, which is an extra step)
Fernando D. Bozzo
Fernando,
A PRG based class can be created from an external exe. I have a couple of executables than instantiate PRG based classes in the main executable.
oObject = newobject({classname}, {prgfilename}, {executable})Tracy Pearson PowerChurch Software
[excessive quoting removed by server]
On 2017-02-07 18:27, Fernando D. Bozzo wrote:
Hi Rick!
<snipped> ...I think you should definetly take a look at FoxBin2Prg. It will make your team's (1 dev or more) life easier.
We use it in 2 teams with 8+ people each one, and a LOT of merging of VCX and SCX every day, without problems.
Hi Fernando,
Where do you hook this in? Are you integrating your VCS within the IDE or are you using the VCS's IDE to manually check in and out?
Thanks, --Mike
Hi Mike:
We are using it with PlasticSCM, the best DVCS I know of, compared with SourceSafe, CVS, SVN, and Git. Git is really good, but PlasticSCM have better GUI and algorithms that help a lot identifying differences.
On VFPx, on the help pages of FoxBin2Prg I've dedicated a few pages explaning a basic workflow with it, but many of the concepts I explain there are applicable to other SCM/DVCSs.
The nice thing about SCM/DVCS tools is that some of them allow configuring external tools using internal triggers or external GUIs or scripts that can be selected, in some cases from configurable internal menues. It's really easy to hook a converter like FoxBin2Prg on personal scripts to do conversions, and then use the SCM/DVCS to do it's stuff.
One thing that every SCM/DVCS tool gives you is the possibility of viewing the files that have changed, this file can be obtained from command line (that means: automated from inside your scripts), so you can use this list of changed files to call the converter and do the convertion just for the changed files. Actually, this is what the 2 Git projects on VFPx do to generated the text files from binaries.
Some people do not get the SCM/DVCS work correctly, and ends checking-in "every changed file".... so when compiling a project, you have all binaries changed!!... but really the compiled code have changed on 99% of them, and few files just have changed their code. This part is when FoxBin2Prg enters in action, because only generates the text files of the binaries who's code had really changed, so when you later see the changed files, you can undo the changes an all binaries that have not a regenerated text file, so at the end you left only with the changed ones.
This may be sound a little complicated, but in practice a checkin is something like this (in PlasticSCM):
- Show changed files on a panel (all binaries that where changed by hand or a recompilation) - Right-click and select "Regenerate all text files from changed binaries" and wait for the conversions - Show changed files on panel (again), now showing the previous files and the text files for the binaries that really changed code - Select all of the binaries that have not a text file showed as changed (so that text files are not showed) and undo their changes - The few files that remain are the binaries with their respective text version, so now you can checkin
This way a typical changeset have little files, which makes Diffing between branches a breeze, or at least much more clean.
To answer your final question: We do not use the VFP project hook, because the PJX is part of the project to, and must be checked-in if had changed, so all the diff/merge/checkin/checkout stuff are done on the SCM/DVCS tool side (with a GUI in our case, but can be done with explorer scripts or other ways).
2017-02-20 21:00 GMT+01:00 mbsoftwaresolutions@mbsoftwaresolutions.com:
On 2017-02-07 18:27, Fernando D. Bozzo wrote:
Hi Rick!
<snipped> ...I think you should definetly take a look at FoxBin2Prg. It will make your team's (1 dev or more) life easier.
We use it in 2 teams with 8+ people each one, and a LOT of merging of VCX and SCX every day, without problems.
Hi Fernando,
Where do you hook this in? Are you integrating your VCS within the IDE or are you using the VCS's IDE to manually check in and out?
Thanks, --Mike
[excessive quoting removed by server]
I want to get setup with BitBucket asap, and I've already printed out Rick Borup's session from 2015 as a reference guide.
On 2017-02-20 18:12, Fernando D. Bozzo wrote:
Hi Mike:
We are using it with PlasticSCM, the best DVCS I know of, compared with SourceSafe, CVS, SVN, and Git. Git is really good, but PlasticSCM have better GUI and algorithms that help a lot identifying differences.
On VFPx, on the help pages of FoxBin2Prg I've dedicated a few pages explaning a basic workflow with it, but many of the concepts I explain there are applicable to other SCM/DVCSs.
The nice thing about SCM/DVCS tools is that some of them allow configuring external tools using internal triggers or external GUIs or scripts that can be selected, in some cases from configurable internal menues. It's really easy to hook a converter like FoxBin2Prg on personal scripts to do conversions, and then use the SCM/DVCS to do it's stuff.
One thing that every SCM/DVCS tool gives you is the possibility of viewing the files that have changed, this file can be obtained from command line (that means: automated from inside your scripts), so you can use this list of changed files to call the converter and do the convertion just for the changed files. Actually, this is what the 2 Git projects on VFPx do to generated the text files from binaries.
Some people do not get the SCM/DVCS work correctly, and ends checking-in "every changed file".... so when compiling a project, you have all binaries changed!!... but really the compiled code have changed on 99% of them, and few files just have changed their code. This part is when FoxBin2Prg enters in action, because only generates the text files of the binaries who's code had really changed, so when you later see the changed files, you can undo the changes an all binaries that have not a regenerated text file, so at the end you left only with the changed ones.
This may be sound a little complicated, but in practice a checkin is something like this (in PlasticSCM):
- Show changed files on a panel (all binaries that where changed by
hand or a recompilation)
- Right-click and select "Regenerate all text files from changed
binaries" and wait for the conversions
- Show changed files on panel (again), now showing the previous files
and the text files for the binaries that really changed code
- Select all of the binaries that have not a text file showed as
changed (so that text files are not showed) and undo their changes
- The few files that remain are the binaries with their respective text
version, so now you can checkin
This way a typical changeset have little files, which makes Diffing between branches a breeze, or at least much more clean.
To answer your final question: We do not use the VFP project hook, because the PJX is part of the project to, and must be checked-in if had changed, so all the diff/merge/checkin/checkout stuff are done on the SCM/DVCS tool side (with a GUI in our case, but can be done with explorer scripts or other ways).
2017-02-20 21:00 GMT+01:00 mbsoftwaresolutions@mbsoftwaresolutions.com:
On 2017-02-07 18:27, Fernando D. Bozzo wrote:
Hi Rick!
<snipped> ...I think you should definetly take a look at FoxBin2Prg. It will make your team's (1 dev or more) life easier.
We use it in 2 teams with 8+ people each one, and a LOT of merging of VCX and SCX every day, without problems.
Hi Fernando,
Where do you hook this in? Are you integrating your VCS within the IDE or are you using the VCS's IDE to manually check in and out?
Thanks, --Mike
[excessive quoting removed by server]
Wow Mike! I didn't know that Rick Borup published a PDF with all the info for configuring SourceTree/Mercurial/Git with FoxBin2Prg. It's really a great document, thanks por pointing it out!
http://www.ita-software.com/papers/Borup_GitVsHg_Published.pdf
2017-02-21 8:15 GMT+01:00 mbsoftwaresolutions@mbsoftwaresolutions.com:
I want to get setup with BitBucket asap, and I've already printed out Rick Borup's session from 2015 as a reference guide.
On 2017-02-20 18:12, Fernando D. Bozzo wrote:
Hi Mike:
We are using it with PlasticSCM, the best DVCS I know of, compared with SourceSafe, CVS, SVN, and Git. Git is really good, but PlasticSCM have better GUI and algorithms that help a lot identifying differences.
On VFPx, on the help pages of FoxBin2Prg I've dedicated a few pages explaning a basic workflow with it, but many of the concepts I explain there are applicable to other SCM/DVCSs.
The nice thing about SCM/DVCS tools is that some of them allow configuring external tools using internal triggers or external GUIs or scripts that can be selected, in some cases from configurable internal menues. It's really easy to hook a converter like FoxBin2Prg on personal scripts to do conversions, and then use the SCM/DVCS to do it's stuff.
One thing that every SCM/DVCS tool gives you is the possibility of viewing the files that have changed, this file can be obtained from command line (that means: automated from inside your scripts), so you can use this list of changed files to call the converter and do the convertion just for the changed files. Actually, this is what the 2 Git projects on VFPx do to generated the text files from binaries.
Some people do not get the SCM/DVCS work correctly, and ends checking-in "every changed file".... so when compiling a project, you have all binaries changed!!... but really the compiled code have changed on 99% of them, and few files just have changed their code. This part is when FoxBin2Prg enters in action, because only generates the text files of the binaries who's code had really changed, so when you later see the changed files, you can undo the changes an all binaries that have not a regenerated text file, so at the end you left only with the changed ones.
This may be sound a little complicated, but in practice a checkin is something like this (in PlasticSCM):
- Show changed files on a panel (all binaries that where changed by hand
or a recompilation)
- Right-click and select "Regenerate all text files from changed binaries"
and wait for the conversions
- Show changed files on panel (again), now showing the previous files and
the text files for the binaries that really changed code
- Select all of the binaries that have not a text file showed as changed
(so that text files are not showed) and undo their changes
- The few files that remain are the binaries with their respective text
version, so now you can checkin
This way a typical changeset have little files, which makes Diffing between branches a breeze, or at least much more clean.
To answer your final question: We do not use the VFP project hook, because the PJX is part of the project to, and must be checked-in if had changed, so all the diff/merge/checkin/checkout stuff are done on the SCM/DVCS tool side (with a GUI in our case, but can be done with explorer scripts or other ways).
2017-02-20 21:00 GMT+01:00 mbsoftwaresolutions@mbsoftwaresolutions.com:
On 2017-02-07 18:27, Fernando D. Bozzo wrote:
Hi Rick!
<snipped> ...I think you should definetly take a look at FoxBin2Prg. It will make your team's (1 dev or more) life easier.
We use it in 2 teams with 8+ people each one, and a LOT of merging of VCX and SCX every day, without problems.
Hi Fernando,
Where do you hook this in? Are you integrating your VCS within the IDE or are you using the VCS's IDE to manually check in and out?
Thanks, --Mike
[excessive quoting removed by server]
Thanks for that information, Rick
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Rick Schummer Sent: 01 February 2017 23:41 To: profoxtech@leafe.com Subject: RE: Diffing VCXs
Hi Paul,
If you have a license to Beyond Compare from Scooter Software, you can get an terrific add-on from Frank Perez that diffs not only VCXs, but any of the VFP source code DBFs and naturally PRGs too. No need to pick up SCCText or any other binary flattener for straight comparisons. It handles it for you.
http://pfsolutions-mi.com/Product/VFP2Text
Not sure I could do my job without this tool.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Paul Newton Sent: Wednesday, February 01, 2017 09:07 To: profoxtech@leafe.com Subject: Diffing VCXs
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec=10&cname=mwsc...
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
Hi Paul:
Did you try FoxBin2Prg? Are you going to Diff only, or something else?
Best regards.-
2017-02-02 15:54 GMT+01:00 Paul Newton Paul.Newton@pegasus.co.uk:
Thanks for that information, Rick
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Rick Schummer Sent: 01 February 2017 23:41 To: profoxtech@leafe.com Subject: RE: Diffing VCXs
Hi Paul,
If you have a license to Beyond Compare from Scooter Software, you can get an terrific add-on from Frank Perez that diffs not only VCXs, but any of the VFP source code DBFs and naturally PRGs too. No need to pick up SCCText or any other binary flattener for straight comparisons. It handles it for you.
http://pfsolutions-mi.com/Product/VFP2Text
Not sure I could do my job without this tool.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Paul Newton Sent: Wednesday, February 01, 2017 09:07 To: profoxtech@leafe.com Subject: Diffing VCXs
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec= 10&cname=mwscctext.zip
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
Fernando
Have not got around to it yet - busy on other things ... will give feedback in due course
Paul
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Fernando D. Bozzo Sent: 03 February 2017 13:26 To: profoxtech@leafe.com Subject: Re: Diffing VCXs
Hi Paul:
Did you try FoxBin2Prg? Are you going to Diff only, or something else?
Best regards.-
2017-02-02 15:54 GMT+01:00 Paul Newton Paul.Newton@pegasus.co.uk:
Thanks for that information, Rick
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Rick Schummer Sent: 01 February 2017 23:41 To: profoxtech@leafe.com Subject: RE: Diffing VCXs
Hi Paul,
If you have a license to Beyond Compare from Scooter Software, you can get an terrific add-on from Frank Perez that diffs not only VCXs, but any of the VFP source code DBFs and naturally PRGs too. No need to pick up SCCText or any other binary flattener for straight comparisons. It handles it for you.
http://pfsolutions-mi.com/Product/VFP2Text
Not sure I could do my job without this tool.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Paul Newton Sent: Wednesday, February 01, 2017 09:07 To: profoxtech@leafe.com Subject: Diffing VCXs
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec= 10&cname=mwscctext.zip
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
Paul, It works really well and I can recommend it.
Dave
-----Original Message----- From: ProFox [mailto:profox-bounces@leafe.com] On Behalf Of Paul Newton Sent: 03 February 2017 14:00 To: profox@leafe.com Subject: RE: Diffing VCXs
Fernando
Have not got around to it yet - busy on other things ... will give feedback in due course
Paul
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Fernando D. Bozzo Sent: 03 February 2017 13:26 To: profoxtech@leafe.com Subject: Re: Diffing VCXs
Hi Paul:
Did you try FoxBin2Prg? Are you going to Diff only, or something else?
Best regards.-
2017-02-02 15:54 GMT+01:00 Paul Newton Paul.Newton@pegasus.co.uk:
Thanks for that information, Rick
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Rick Schummer Sent: 01 February 2017 23:41 To: profoxtech@leafe.com Subject: RE: Diffing VCXs
Hi Paul,
If you have a license to Beyond Compare from Scooter Software, you can get an terrific add-on from Frank Perez that diffs not only VCXs, but any of the VFP source code DBFs and naturally PRGs too. No need to pick up SCCText or any other binary flattener for straight comparisons. It handles it for you.
http://pfsolutions-mi.com/Product/VFP2Text
Not sure I could do my job without this tool.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Paul Newton Sent: Wednesday, February 01, 2017 09:07 To: profoxtech@leafe.com Subject: Diffing VCXs
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec= 10&cname=mwscctext.zip
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]
+1
--
rk -----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Dave Crozier Sent: Friday, February 03, 2017 9:13 AM To: profoxtech@leafe.com Subject: RE: Diffing VCXs
Paul, It works really well and I can recommend it.
Dave
-----Original Message----- From: ProFox [mailto:profox-bounces@leafe.com] On Behalf Of Paul Newton Sent: 03 February 2017 14:00 To: profox@leafe.com Subject: RE: Diffing VCXs
Fernando
Have not got around to it yet - busy on other things ... will give feedback in due course
Paul
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Fernando D. Bozzo Sent: 03 February 2017 13:26 To: profoxtech@leafe.com Subject: Re: Diffing VCXs
Hi Paul:
Did you try FoxBin2Prg? Are you going to Diff only, or something else?
Best regards.-
2017-02-02 15:54 GMT+01:00 Paul Newton Paul.Newton@pegasus.co.uk:
Thanks for that information, Rick
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Rick Schummer Sent: 01 February 2017 23:41 To: profoxtech@leafe.com Subject: RE: Diffing VCXs
Hi Paul,
If you have a license to Beyond Compare from Scooter Software, you can get an terrific add-on from Frank Perez that diffs not only VCXs, but any of the VFP source code DBFs and naturally PRGs too. No need to pick up SCCText or any other binary flattener for straight comparisons. It handles it for you.
http://pfsolutions-mi.com/Product/VFP2Text
Not sure I could do my job without this tool.
Rick White Light Computing, Inc.
www.whitelightcomputing.com
-----Original Message----- From: ProfoxTech [mailto:profoxtech-bounces@leafe.com] On Behalf Of Paul Newton Sent: Wednesday, February 01, 2017 09:07 To: profoxtech@leafe.com Subject: Diffing VCXs
Hi all
I came across this in response to a message posted by Dominic Burford
Hi Dominic,
you can find an even more sophisticated version of SCCTEXT.prg on the ProLib FTP archives:
ftp://ftp.prolib.de/public/vfp/mwscctext.prg
This is an adopted version from Markus Winhard (hence the "mw"), which has all the changes from Mark Wilden plus several other enhancements, like a much improved speed, a correct sorting of classes and methods, and more robust working.
However the FTP link does not work (it requires login credentials). However a bit of searching came up with
http://www.dfpug.de/Forum/catbody.afp?!_4U70VHTXU&nsec= 10&cname=mwscctext.zip
Unfortunately the Download button on that page will not allow me to save the zip file.
Any ideas/suggestions?
Paul
[excessive quoting removed by server]