Re: Task: Process thousands of records through a regular process -- multiple EXE runs to cut down processing time??

2020-08-01 Thread Stephen Russell
What is your bottleneck in the process, an update of the backend data ?

Can your update or insert be made in groups of 100 or 1000 at a pass,
instead of one at a time?  Or do you need a key back for
additional processing?

On Sat, Aug 1, 2020 at 12:07 PM MB Software Solutions, LLC <
mbsoftwaresoluti...@mbsoftwaresolutions.com> wrote:

> I've got a regular process that runs, basically using key information to
> grab data from an API and then update the local VFP database.  There are
> maybe 64000 records to process, and each record to update through this
> process takes about a second, so to process this group would take over
> 17 hours.  Each record could be processed on its own; there are no
> relationships between each.
>
> I don't want to start it and run the 64000 in a row for 17+ hours.  I
> would like to design the app to use the table, RLOCK the row I'm
> processing, and the UNLOCK the row when I'm done.  I figure with this
> design, I could run multiple instances of the MyProgram.exe (similar to
> how WestWind Web Connection allows you to run multiple instances) to
> process the batch maybe 4x faster (if I launched 4 instances of
> MyProgram.exe).  The basic construct would be as follows:
>
> USE ListOfRecsToProcess IN 0 SHARED Alias MyList && record is PK (to
> process) i, tProcessed t, tError t, cSession c(10)
> SCAN FOR EMPTY(cSession) AND RLOCK('MyList')
>  IF ProcessRecord(MyList.ID) THEN
>  REPLACE tProcessed WITH DATETIME(), cSession WITH this.cSession
> IN MyList
>  ELSE
>  REPLACE tError WITH DATETIME(), cSession WITH this.cSession IN
> MyList
>  ENDIF
> ENDSCAN
>
>
> Does anybody see any problems with that general design?  The
> ProcessRecord method calls an API to get values and then updates the
> local VFP record accordingly.
>
> tia,
> --Mike
>
>
>
> --
> This email has been checked for viruses by Avast antivirus software.
> https://www.avast.com/antivirus
>
>
[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: https://leafe.com/archives
This message: 
https://leafe.com/archives/byMID/cajidmykzwsphe+euz6t5bgipvt-4a2abdbzvriyu13ooo2g...@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.


Re: Task: Process thousands of records through a regular process -- multiple EXE runs to cut down processing time??

2020-08-01 Thread Koen Piller
Also missing the code for your procedure ProcessRecord()

Op za 1 aug. 2020 om 20:05 schreef Koen Piller :

> Hi,
>
> 64000 records in 17 hours That is way unacceptable. To run the code
> you published would take normally around  minutes max. I suppose the most
> of the time is not by your code but the API call to get the data into the
> cursor ListOfRecsToProces, advise you to implement Codereference to find
> the time consuming bottle-neck.
> Instead of scan..endscan you may also try to make use of the SQL Update()
> function, this should be faster.
>
> Koen
>
>
> Op za 1 aug. 2020 om 19:07 schreef MB Software Solutions, LLC <
> mbsoftwaresoluti...@mbsoftwaresolutions.com>:
>
>> I've got a regular process that runs, basically using key information to
>> grab data from an API and then update the local VFP database.  There are
>> maybe 64000 records to process, and each record to update through this
>> process takes about a second, so to process this group would take over
>> 17 hours.  Each record could be processed on its own; there are no
>> relationships between each.
>>
>> I don't want to start it and run the 64000 in a row for 17+ hours.  I
>> would like to design the app to use the table, RLOCK the row I'm
>> processing, and the UNLOCK the row when I'm done.  I figure with this
>> design, I could run multiple instances of the MyProgram.exe (similar to
>> how WestWind Web Connection allows you to run multiple instances) to
>> process the batch maybe 4x faster (if I launched 4 instances of
>> MyProgram.exe).  The basic construct would be as follows:
>>
>> USE ListOfRecsToProcess IN 0 SHARED Alias MyList && record is PK (to
>> process) i, tProcessed t, tError t, cSession c(10)
>> SCAN FOR EMPTY(cSession) AND RLOCK('MyList')
>>  IF ProcessRecord(MyList.ID) THEN
>>  REPLACE tProcessed WITH DATETIME(), cSession WITH this.cSession
>> IN MyList
>>  ELSE
>>  REPLACE tError WITH DATETIME(), cSession WITH this.cSession IN
>> MyList
>>  ENDIF
>> ENDSCAN
>>
>>
>> Does anybody see any problems with that general design?  The
>> ProcessRecord method calls an API to get values and then updates the
>> local VFP record accordingly.
>>
>> tia,
>> --Mike
>>
>>
>>
>> --
>> This email has been checked for viruses by Avast antivirus software.
>> https://www.avast.com/antivirus
>>
>>
[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: https://leafe.com/archives
This message: 
https://leafe.com/archives/byMID/cacuu1stgizctq6p8nedlvenqvd0ffnviuu5u9b0zdgsw+r3...@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.


Re: Task: Process thousands of records through a regular process -- multiple EXE runs to cut down processing time??

2020-08-01 Thread Koen Piller
Hi,

64000 records in 17 hours That is way unacceptable. To run the code you
published would take normally around  minutes max. I suppose the most of
the time is not by your code but the API call to get the data into the
cursor ListOfRecsToProces, advise you to implement Codereference to find
the time consuming bottle-neck.
Instead of scan..endscan you may also try to make use of the SQL Update()
function, this should be faster.

Koen


Op za 1 aug. 2020 om 19:07 schreef MB Software Solutions, LLC <
mbsoftwaresoluti...@mbsoftwaresolutions.com>:

> I've got a regular process that runs, basically using key information to
> grab data from an API and then update the local VFP database.  There are
> maybe 64000 records to process, and each record to update through this
> process takes about a second, so to process this group would take over
> 17 hours.  Each record could be processed on its own; there are no
> relationships between each.
>
> I don't want to start it and run the 64000 in a row for 17+ hours.  I
> would like to design the app to use the table, RLOCK the row I'm
> processing, and the UNLOCK the row when I'm done.  I figure with this
> design, I could run multiple instances of the MyProgram.exe (similar to
> how WestWind Web Connection allows you to run multiple instances) to
> process the batch maybe 4x faster (if I launched 4 instances of
> MyProgram.exe).  The basic construct would be as follows:
>
> USE ListOfRecsToProcess IN 0 SHARED Alias MyList && record is PK (to
> process) i, tProcessed t, tError t, cSession c(10)
> SCAN FOR EMPTY(cSession) AND RLOCK('MyList')
>  IF ProcessRecord(MyList.ID) THEN
>  REPLACE tProcessed WITH DATETIME(), cSession WITH this.cSession
> IN MyList
>  ELSE
>  REPLACE tError WITH DATETIME(), cSession WITH this.cSession IN
> MyList
>  ENDIF
> ENDSCAN
>
>
> Does anybody see any problems with that general design?  The
> ProcessRecord method calls an API to get values and then updates the
> local VFP record accordingly.
>
> tia,
> --Mike
>
>
>
> --
> This email has been checked for viruses by Avast antivirus software.
> https://www.avast.com/antivirus
>
>
[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: https://leafe.com/archives
This message: 
https://leafe.com/archives/byMID/cacuu1ssh22opok_5iv2jfvbcacxyo2lansj_t0fryobc5ud...@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.


Re: Task: Process thousands of records through a regular process -- multiple EXE runs to cut down processing time??

2020-08-01 Thread Christof Wollenhaupt
> I'm not sure I trust RLock(). I'd probably use a "Status" field that
> indicates the record is unprocessed, in process, or processed. This might
> be a good use case for Christof's DMult multi-threading utility

You still have to use either RLOCK() or a SET REFRESH value of -1 to read the 
status field, because otherwise VFP will lie to you about the current value of 
that field. Unless you move away from a record, you get the same value for 
hours in VFP. Even if you move away, the cache is considered to be the truth 
for up to how many seconds SET REFRESH indicates.

Christof


___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: https://leafe.com/archives
This message: 
https://leafe.com/archives/byMID/8bc9aee1-ed4a-43b2-b3db-6bf3c5b91...@wollenhaupt.org
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.


Re: Task: Process thousands of records through a regular process -- multiple EXE runs to cut down processing time??

2020-08-01 Thread Eric Selje
I'm not sure I trust RLock(). I'd probably use a "Status" field that
indicates the record is unprocessed, in process, or processed. This might
be a good use case for Christof's DMult multi-threading utility
.


Eric


On Sat, Aug 1, 2020 at 12:06 PM MB Software Solutions, LLC <
mbsoftwaresoluti...@mbsoftwaresolutions.com> wrote:

> I've got a regular process that runs, basically using key information to
> grab data from an API and then update the local VFP database.  There are
> maybe 64000 records to process, and each record to update through this
> process takes about a second, so to process this group would take over
> 17 hours.  Each record could be processed on its own; there are no
> relationships between each.
>
> I don't want to start it and run the 64000 in a row for 17+ hours.  I
> would like to design the app to use the table, RLOCK the row I'm
> processing, and the UNLOCK the row when I'm done.  I figure with this
> design, I could run multiple instances of the MyProgram.exe (similar to
> how WestWind Web Connection allows you to run multiple instances) to
> process the batch maybe 4x faster (if I launched 4 instances of
> MyProgram.exe).  The basic construct would be as follows:
>
> USE ListOfRecsToProcess IN 0 SHARED Alias MyList && record is PK (to
> process) i, tProcessed t, tError t, cSession c(10)
> SCAN FOR EMPTY(cSession) AND RLOCK('MyList')
>  IF ProcessRecord(MyList.ID) THEN
>  REPLACE tProcessed WITH DATETIME(), cSession WITH this.cSession
> IN MyList
>  ELSE
>  REPLACE tError WITH DATETIME(), cSession WITH this.cSession IN
> MyList
>  ENDIF
> ENDSCAN
>
>
> Does anybody see any problems with that general design?  The
> ProcessRecord method calls an API to get values and then updates the
> local VFP record accordingly.
>
> tia,
> --Mike
>
>
>
> --
> This email has been checked for viruses by Avast antivirus software.
> https://www.avast.com/antivirus
>
>
[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: https://leafe.com/archives
This message: 
https://leafe.com/archives/byMID/CAAwxvUk7hukD6y=7caccuyydaccjoyqy15b5_h1nwajarbu...@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.


Task: Process thousands of records through a regular process -- multiple EXE runs to cut down processing time??

2020-08-01 Thread MB Software Solutions, LLC
I've got a regular process that runs, basically using key information to 
grab data from an API and then update the local VFP database.  There are 
maybe 64000 records to process, and each record to update through this 
process takes about a second, so to process this group would take over 
17 hours.  Each record could be processed on its own; there are no 
relationships between each.


I don't want to start it and run the 64000 in a row for 17+ hours.  I 
would like to design the app to use the table, RLOCK the row I'm 
processing, and the UNLOCK the row when I'm done.  I figure with this 
design, I could run multiple instances of the MyProgram.exe (similar to 
how WestWind Web Connection allows you to run multiple instances) to 
process the batch maybe 4x faster (if I launched 4 instances of 
MyProgram.exe).  The basic construct would be as follows:


USE ListOfRecsToProcess IN 0 SHARED Alias MyList && record is PK (to 
process) i, tProcessed t, tError t, cSession c(10)

SCAN FOR EMPTY(cSession) AND RLOCK('MyList')
    IF ProcessRecord(MyList.ID) THEN
        REPLACE tProcessed WITH DATETIME(), cSession WITH this.cSession 
IN MyList

    ELSE
        REPLACE tError WITH DATETIME(), cSession WITH this.cSession IN 
MyList

    ENDIF
ENDSCAN


Does anybody see any problems with that general design?  The 
ProcessRecord method calls an API to get values and then updates the 
local VFP record accordingly.


tia,
--Mike



--
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus


___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: https://leafe.com/archives
This message: 
https://leafe.com/archives/byMID/1b438d3a-0117-f793-4792-1d63a4245...@mbsoftwaresolutions.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

AW: VFP9SP2 Error 108: File is in use by another user.

2020-08-01 Thread Jürgen Wondzinski
Ouch. Some old memories :) Glad to be indirectly helping! 

wOOdy

-Ursprüngliche Nachricht-
Von: ProFox  Im Auftrag von MB Software Solutions, LLC
Gesendet: Freitag, 31. Juli 2020 23:43
An: profox@leafe.com
Betreff: Re: VFP9SP2 Error 108: File is in use by another user.

Yeah I stopped using DBFs in 2004!  Took over Jeff Johnson's (RIP) client a 
few years back when he passed which is an all Fox backend.

I added the SET TABLEVALIDATE TO 0.  Will see if that helps.  I don't have any 
RLOCKs or FLOCKs on this table.  In this case, it's a simple logging table that 
only gets INSERT INTO commands to it. Never UPDATE or DELETE.

Thanks for the lead, Frank!!!


On 7/31/2020 4:11 PM, Frank Cazabon wrote:
> I haven't used dbfs in years and can't say I've ever got this error but this 
> might help:
>
> https://www.tek-tips.com/viewthread.cfm?qid=686993


___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: https://leafe.com/archives
This message: 
https://leafe.com/archives/byMID/007a01d66822$fa9a20b0$efce6210$@wondzinski.de
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

RE: [NF] What if...?

2020-08-01 Thread John Weller
This discussion reminded me of a language spec I was sent some years ago.  I 
reproduce it for your edification and interest:

We have just become the Value Abandoned Reseller for the new programming 
language C+-, which can only be used by programmers with at least three years 
C+- experience thus ensuring an immediate skills shortage. A government 
minister has already booked her first-class ticket to a foreign country where 
sufficient guile is thought to exist to make up for this shortage before the 
general election. The new fast track visa scheme will be extended to include 
illegal immigrants who may have heard of C+- on their way through Europe to the 
UK.

C+- (pronounced ‘C More or Less’) is a subject-oriented language. Each C+- 
class instance, known as a subject, holds hidden members, known as prejudices, 
agendas or undeclared preferences, which are impervious to outside messages; as 
well as public members, known as boasts or claims. C+- is an innovation-neutral 
buzzword-compliant language developed by Nanosoft in a hurry for maximum user 
lock-in. It comes with its own methodology known as Subject-Oriented 
Development in Information Technology or SODIT for short.

C+- has pointer oppression and extensive coercions to help cure programmers of 
their unhealthy propensity for creative thinking. Multithreading is encouraged 
for maximum entanglement so that programs run slow enough to facilitate 
debugging of the flawed design during project overruns. For obvious reasons, 
C+- will not work with any forking kernel, least of all Linux. C+- supports 
information hiding so successfully that data may never be found again. And it 
has automatic garbage collection twice a week, although garbage may be 
distributed if the Xmas bit is set to ungenerous mode.

The following C operators are overridden as shown:

>   better than
<   worse than
>>  way better than
<<  forget it
!   not on your life
*   any which way
~   sometimes
?:  rhetorical question
+=  more equal than
==  comparable (ceteris paribus)
!== get a life
->  blame allocator
sizeof  doesn’t matter

C+- is strongly typed, based on stereotyping and self-righteous logic. The 
Boolean variables TRUE and FALSE (known as constants in other, less realistic 
languages) are supplemented with CREDIBLE and DUBIOUS. All Booleans can be 
declared with the modifiers strong and weak. Weak implication is said to 
“preserve deniability” and was added at US government insistence. What-if, 
why-not and so-what expressions are aided by the special conditional EVENIFNOT 
X THEN Y.

The methodology promotes the Mongolian Hordes approach whereby many junior 
staff are thrown at a project until it achieves critical mass, a bit like the 
Manhattan project. New staff should ‘hit the ground running’ because moving 
targets are more difficult to hit. ‘Team-players’ are recommended because weak 
members will be carried by the others and, in any case, ‘original-thinkers’ 
undermine the self-esteem of managers. It should be noted that all other 
methodologies are just as good -- any ‘ology’ is guaranteed to make up for poor 
planning and lack of leadership. For more or less information see Cplusminus.com

John

John Weller
01380 723235
07976 393631



___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: https://leafe.com/archives
This message: 
https://leafe.com/archives/byMID/003501d66814$34fed980$9efc8c80$@johnweller.co.uk
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

Re: [NF] What if...?

2020-08-01 Thread AndyHC

VB:     What if we wanted to allow anyone to program?
VB.NET  What if we wanted to stop them again?

 that's wicked  -  there's many a true word spoken in jest!

...   Access:   What if we wanted to allow anybody to screw with company 
data?


On 31-Jul-20 11:38 PM, Ed Leafe wrote:

Another language comparison:

https://i.imgur.com/9U7sg9A.jpg

I labeled this [NF] because, well… you know.


-- Ed Leafe








[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: https://leafe.com/archives
This message: 
https://leafe.com/archives/byMID/e74c4d45-fe3c-6a25-c929-9f734b04f...@hawthorncottage.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

ProFox List Statistics for July 2020

2020-08-01 Thread List Administrator Account
==
ProFox List Statistics
July 2020
==
Subscriber Count at End of Month:
ProFox: 296
ProFoxTech: 181
==

Total Posts: 184
(Up 71.96% from June 2020)

Total [OT] Posts: 0
(Unchanged from June 2020)

Total [NF] Posts: 93
(Up 1062.5% from June 2020)


Daily Message Counts for July 2020

DOW  Date  Count
---    -
 W 1  -   4
 T 2  -  12
 F 3  -   3
 S 4  -   2
 M 6  -   4
 T 7  -   4
 T 9  -   3
 F10  -   8
 M13  -   4
 W15  -   3
 T16  -   2
 F17  -   4
 S18  -   3
 S19  -   2
 M20  -  16
 T21  -  27
 W22  -  13
 T23  -   9
 F24  -  11
 T28  -  11
 W29  -  10
 T30  -  10
 F31  -  19


Message Counts By Day of Week for July 2020

DOW  Count
---  -
Sun -2
Mon -   24
Tue -   42
Wed -   30
Thu -   36
Fri -   45
Sat -5


Distinct Posters to the List
(changes relative to June 2020)

Non-OT messages: 35 (Up 45.83%)
OT messages: 0 (Unchanged)
NF messages: 28 (Up 600.0%)
Total number: 35 (Up 45.83%)


Top 20 Contributors by Number of Non-OT Posts

|Posts   Contributor   |

  1.   23MB Software Solutions, LLC 
  2.   19Stephen Russell 
  3.   17Alan Bourke 
  4.   16Ed Leafe 
  5.   14Philip Borkholder 
  6.   13Eric Selje 
  7.   12Ted Roche 
  8.   10Richard Kaye 
  9.9Tracy Pearson 
 10.6Charles Hart Enzer, M.D. 
 11.4Vince Teachout 
 12.3Johan Nel 
 13.3Christof Wollenhaupt 
 14.3Matt Slay 
 15.3Dave Crozier 
 16.3
 17.2Jim Brotz 
 18.2Richard A Mertl, CPA, CA 
 19.2Paul H. Tarver 
 20.2Bill Anderson 


Top 0 Contributors by Number of OT Posts

|Posts   OT%  Contributor  |



Top 20 Contributors by Number of NF Posts

|Posts   Contributor   |

  1.   15Stephen Russell 
  2.   10MB Software Solutions, LLC 
  3.9Alan Bourke 
  4.9Eric Selje 
  5.6Charles Hart Enzer, M.D. 
  6.6Tracy Pearson 
  7.5Richard Kaye 
  8.3Vince Teachout 
  9.3Ed Leafe 
 10.3Ted Roche 
 11.3Christof Wollenhaupt 
 12.2Paul H. Tarver 
 13.2Jürgen Wondzinski 
 14.2John Weller 
 15.2
 16.1Matt Slay 
 17.1Garrett Fitzgerald 
 18.1Charlie 
 19.1Dave Crozier 
 20.1M Jarvis 


Top 20 Contributors by Total Number of Posts

|Posts   Contributor   |

  1.   23MB Software Solutions, LLC 
  2.   19Stephen Russell 
  3.   17Alan Bourke 
  4.   16Ed Leafe 
  5.   14Philip Borkholder 
  6.   13Eric Selje 
  7.   12Ted Roche 
  8.   10Richard Kaye 
  9.9Tracy Pearson 
 10.6Charles Hart Enzer, M.D. 
 11.4Vince Teachout 
 12.3Johan Nel 
 13.3Christof Wollenhaupt 
 14.3Matt Slay 
 15.3Dave Crozier 
 16.3
 17.2Jim Brotz 
 18.2Richard A Mertl, CPA, CA 
 19.2Paul H. Tarver 
 20.2Bill Anderson 


Top 13 Contributors by Number of New Threads Started

|Posts   Contributor   |

  1.4Philip Borkholder 
  2.4Charles Hart Enzer, M.D. 
  3.3Ed Leafe 
  4.3Stephen Russell 
  5.3MB Software Solutions, LLC 
  6.2Jürgen Wondzinski 
  7.1List Administrator Account 
  8.1Ted Roche 
  9.1Johan Nel 
 10.1Vince Teachout 
 11.1Rick Schummer 
 12.1Malcolm Greene 
 13.1Tracy Pearson 


Top 20 Non-OT Threads by Total Number of Posts
--
|Posts   Subject |
--
  1.   20Unit tests (was [NF] I will .)
  2.   19NF Windows 11 ?
  3.   15[NF] I will .
  4.   15DBFs Server 2012 R2 very slow with Certain Processors
  5.   13[NF] .NET Core build to runtime 3.1.5 with SDK for 3.1.6 installed 
- Possible?
  6.   12X# and .NET Core
  7.   11Where is the 

Re: [NF] What if...?

2020-08-01 Thread Jean Laeremans
FoxPro = KISS

On Sat, Aug 1, 2020 at 12:38 AM Ed Leafe  wrote:

> Another language comparison:
>
> https://i.imgur.com/9U7sg9A.jpg
>
> I labeled this [NF] because, well… you know.
>
>
> -- Ed Leafe
>
>
>
>
>
>
>
[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: https://leafe.com/archives
This message: 
https://leafe.com/archives/byMID/CAPqLOBxt1cPOoqOsg-zdNGD0ELz1zr2L2Nhwm=ssntniez7...@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

Re: Where is the Fox?

2020-08-01 Thread Jean Laeremans
Like a lot around here i'm retired so i said goodbye to the ratrace.

On Fri, Jul 31, 2020 at 10:53 PM Ed Leafe  wrote:

> On Jul 31, 2020, at 15:47, Jean Laeremans 
> wrote:
> >
> > Am I supposed to care ?
>
> Only if you’re planning for the future.
>
> -- Ed Leafe
>
>
>
>
>
>
>
[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: https://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: https://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: https://leafe.com/archives
This message: 
https://leafe.com/archives/byMID/CAPqLOBy_-Hh=a-9cst2n9mpprs5pywy0o8pkunwuutyavd3...@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.