home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mega CD-ROM 1
/
megacd_rom_1.zip
/
megacd_rom_1
/
CLIPPER
/
CLIP0588.ZIP
/
CLIP0588
Wrap
Text File
|
1988-06-01
|
299KB
|
6,567 lines
Msg#3918 To:ALL
From:ABE RICE Date:05/01/88
Subject:SST
------------------------------------------------------------------------------
To Steve and all Clipper lovers out there:
.
I just received SST for Clipper and it is replete with functions,
suggestions, and techniques, with a surprisingly well written manual.
Just as advertised (how unusual!). Source code is included which
allowed me to modify and build on what he did, easily. Unlike
Nantuckt code (DBU, etc.), SST's is well documented and easy to
follow. But what I liked most was the section on Quick Tricks. This
alone would have been worth the 90 bucks. Some of these tricks I'm
sure Nantucket learnt for first time from SST! I would like to hear
what others using SST think.
.
Yours
Abe
Msg#3922 To:MARK NEIDORFF (Rcvd)
From:HARRY GILBERT Date:05/01/88
Subject:(R)UPDATE Parent Msg#3565
------------------------------------------------------------------------------
I agree the more that's in the code, the larger the .EXE, but I'd like to
control (read that remove) un-necessary, unused functions, and keep
things as small as possible. Guess that goes back to the days when I
wrote entire engineering analysis programs to run in 4K.
Msg#3923 To:TONY KIRK (Rcvd)
From:HARRY GILBERT Date:05/01/88
Subject:(R)S87 UPDATE Parent Msg#3774
------------------------------------------------------------------------------
My UPS man is well familh patrons who jump up and down; I do when anew
disk arrives, and my wife does when the daily deliveries from JC Penny
and Sears mailorder.
Msg#3924 To:CLIFF CORCORAN (Rcvd)
From:HARRY GILBERT Date:05/01/88
Subject:(R)S87 UPDATE Parent Msg#3780
------------------------------------------------------------------------------
New Future for Nantucket? They've ALWAYS acted responsibly, and mailed
out updates/bug fixes.
Msg#3925 To:TIM CREAGH (Rcvd)
From:HARRY GILBERT Date:05/01/88
Subject:(R)ACHOICE.ARC
------------------------------------------------------------------------------
Yes, large databases dramatically use memory, and I recently re-wrote an
application to do the same things using dbedit(). I'll upload it
tomorrow. Glad the sample code helps -- that's what we're all here for,
to learn and share.
Msg#3926 To:DIRK LESKO (Rcvd)
From:STEVE STRALEY Date:05/01/88
Subject:(R)ALTRIM() VS LTRIM(TRIM Parent Msg#3926
------------------------------------------------------------------------------
Dirk, I'm not arguing HOW it is implemented. I know that very well.
What I am arguing is the fact the Nantucket implements a function that
serves no purpose: it's bigger and it's larger. That point in FROM DOSS
is to raise a few eyebrows: why is a function considered "enhanced" when
it increases executable and load size by nearly 2K.
That purpose of the newletter is to inform and to shake people up a bit:
I don't think it is important all that much to know why it's bigger, just
that it is and that people shouldn't necessairly use it. AGain,
practicle Clipper: I preach that and I believe in that. And no amount
of bits and bytes is going to change it. Consider this: should a
manufacturer give a free upgrade out to piss people off, only to ADD
features which only increase the file sizes. This is pure hypocracy at
it's best.
So, if you should happen to gander at future articles, either in DOSS or
other places, kepp in mind I know why and how it happens, I just
questions IF it should happen. That's all...
S. Straley
Msg#3927 To:ABE RICE
From:STEVE STRALEY Date:05/01/88
Subject:(R)SST
------------------------------------------------------------------------------
Well, let's try to answer each of your questions:
1. Function names (and procedures) can only be up to 10 chartacters. I
have a tendency to go over that just to keep the name clear in my ind.
2. To get the serial number of the disk, just take a DIR of the disk.
The VOL number of the disk is the serial number.
3. I'm not sure about Quick Basic files and linking them in with this. I
don't think it will work, but then again, if it follows Microsfot's
standard .OBJ file, it may. Doubtful though....
4. The two functions which increment a date the way you want is either
FOX_DATE() on page 60 or INC_DATE() on page 61. Either will do the
trick.
5. I appreciate the general comment. As you get further into the
Toolkit, you'll see several nuances that blew Nantucket's mind. Try the
code generating report writer... that should get your blood stiring!
6. Much of the credit (and cause for the delay) is due to Joe King's
persistence for perfection. Like I've said before, this project has been
out of my hands for a few months now and Joe has really done a fantastic
job finishing it up. He's a great partner and deserves half of the
credit (or blame).
Thanks again, and hope all of this answers your questions....
Steve
Msg#3929 To:ALL
From:RICHARD STREETER Date:05/01/88
Subject:CLIPPER UG MEETING
------------------------------------------------------------------------------
The ACNJ will hold a Clpper user group meeting at Union County College,
Scotch Plains Campus on May 13 at 7:30 pm. I belive this is a second
attempt to get a group going so if you would like to have one you should
try to attend. If you have any questions call Art Clancy at 201 654 7890
and leave a message.
Msg#3930 To:RICHARD STREETER (Rcvd)
From:STEVE STRALEY Date:05/01/88
Subject:(R)STRALEY'S RETURN
------------------------------------------------------------------------------
THanks for the message RIchard. Well, my mind is made up to a point. I
am still here and will still suport users of the product. I will send
you a catalogue of our products in the mail as requested. As far as
anything I say people "take me to task" for... well, what can I say. In
some eyes, people still see me part of Nantucket, and that's a shame. If
I come down too hard on Nantucket, they (Nantucket) feel that I'm not
playing fair since I'm a home grown kid. And my personality doesn't
warrent it to play in the middle. I will still be controversal,
informative, energetic, and helpful to as many people as I can. In the
meantime, I'll still pump out a product a month. SO, in essence, you
can still leave me messages here, write to me, or even call or come to
the NYMCUG meetings. Hope this clears everything up. Take care,
Steve
Msg#3931 To:STEVE STRALEY (Rcvd)
From:TIM CREAGH Date:05/01/88
Subject:(R)DBEDIT()
------------------------------------------------------------------------------
Steve, I just downloaded Straley1.arc and I can hardly wait open it,
this is like christmas. I read your message #3911 about 12 times now and
I don't know what the heck your talking about???? Maybe if I read it
another 13 times?
On second thought I think I'll just wait until you upload the documented
version. I'm going to go look at straley1.arc. Bye and T H A N K
Y O U!!!
.
-tim-
Msg#3935 To:STEVE STRALEY (Rcvd)
From:TIM CREAGH Date:05/01/88
Subject:(R)STRALEY1.ARC Parent Msg#3935
------------------------------------------------------------------------------
Regarding "FROM D.O.S.S." I enjoyed reading your reviews, views,
announcements and previews. I had been having trouble with ASORT()
working in two of my applications and not in the third. Thanks to your
comments in "2.3 ASORT() is not sorting" I found that by renaming my
array the problem was solved.
I would like to see a listing of the functions that are included in your
Clipper(IRMA) Library(tm). I am looking at the possiblity of working
with a mainframe. Your direct mainframe communication to and from a
Clipper application would be useful.
3. DBEDIT()
Boy when someone asks you for some helpful tips you go all out. I was
hoping to get a brief outline of DBEDIT() and I got 3 months of thought
provoking work. I encourage everyone to download the file straley1.arc
and look at it.
I also encourage everyone if it alright with this board, to give their
reviews on such things as the best ......
An example would be Steves' remarks on Brief. I have been using MSWord,
Sidekick, or WS. I would take a recommendation from users of this board
over a hundred adds. I guess to sum it up, you guys have gone thru trying
all the different programs and sometimes you forget what a hassle that
is. Please be assured that I for one would rather hear your comments,
buy one and start coding than waste hours finding out the same thing thru
trial and EFFORT.
.
Steve the answers are (1)Very, (2)2 times a day (3)Oh, about as much as
I can get, (4)Where????
-tim-
Msg#3936 To:STEVE STRALEY (Rcvd)
From:DIRK LESKO Date:05/01/88
Subject:(R)ALTRIM() VS LTRIM(TRIM Parent Msg#3926
------------------------------------------------------------------------------
Oh......Ok. You might wnat to add also that the inline code -
ltrim(trim()) is also FASTER than alltrim().
Right?
dLESKO
Msg#3937 To:DON DAVENPORT
From:KELLY STANONIK Date:05/01/88
Subject:(R)S87 RUN COMMAND Parent Msg#3879
------------------------------------------------------------------------------
Get the 3.0 update to R&R (received here a few days ago). It is _much_
improved, and the runtime version runs in 25k (yes, you read it right!).
Msg#3938 To:MARK KASS (Rcvd)
From:ALAN KOBB Date:05/01/88
Subject:(R)CLIPPER MANUALS Parent Msg#3791
------------------------------------------------------------------------------
Mark,
Sure. They'll fix the manuals, but will ignore the problems with
the libraries. ASORT(), ALIAS, etc... Ad Infinitium, Ad Nauseam...
--Alan--
Msg#3944 To:STEVE STRALEY (Rcvd)
From:TIM CREAGH Date:05/01/88
Subject:(R)STRALEY1.ARC Parent Msg#3935
------------------------------------------------------------------------------
Steve your last message got cut off, but your welcome and thank you. Now
that you have opened my eyes to all those extras in DBEDIT() maybe I can
do something on my own.
In reading over the MEMOEDIT() notes I see that you can also call
functions in that. Do you have an idea how I could use that to tell me
what line and column I am in when I'm writing a note?
Msg#3945 To:TIM CREAGH (Rcvd)
From:STEVE STRALEY Date:05/01/88
Subject:(R)STRALEY1.ARC Parent Msg#3935
------------------------------------------------------------------------------
Thanks for the message. I thought that in putting up my efforst in
hard, cold terms (reality in other words), that the promotional
bull... thoughts would go out the window. This would be due to you,
and everybody else, could see that I put alot into a little, and ask
for even less. For example, DBEDIT() takes 3 issues to cover fully,
and every issue of FROM DOSS tackles DBEDIT() from a practicle point
of view. The view, preview, and reviews are my place to try to be
an editor: You should have seen the first issue: I gave my honest
opinion of "release dates" and even blamed myself for getting caught
up in the race of "beating the Jones'". Yes, I extensively talk
about our favorite company out in California... specifically by name
as well. I hope that by giving THIS type of information, Clipper
users will begin to see the real power of Clipper. Then, and only
then, will ansilary libraries in other languages start to make even
more sense based on the knowledge you have: you will know
instinctually where the gaps are in Clipper. I hope this makes
sense. I will try to upload another file containg the list of
funtions you requested.
Enjoy the reading, and take care...
Steve
Msg#3946 To:DIRK LESKO (Rcvd)
From:STEVE STRALEY Date:05/01/88
Subject:(R)ALTRIM() VS LTRIM(TRIM Parent Msg#3946
------------------------------------------------------------------------------
I don't think there is THAT much speed differential. It's hard to tell
on this new machine. One would think that there are about equal since
there are 2 calls madeto the LTRIM(TRIM()) combination. I could be
wrong, but that's not what's at issue here... an added feature that
increases the .EXE. It kindof reminds me of a certain company that is
the only company in the history of software to give a free upgrade to its
users only to piss them off. I wonder who we could be talking about.
Take care,
Steve
ps. gee, I guess you may note that there is a slight difference in my
tone... hmm...
Msg#3948 To:ALL
From:ABE RICE Date:05/01/88
Subject:LINKING QUICKBASIC & PASC Parent Msg#3948
------------------------------------------------------------------------------
Hi
Can anyone tell me whether one can link .obj code created with quick
basic or pascal with clipper?
thanks
Msg#3951 To:DIRK LESKO (Rcvd)
From:TIM CREAGH Date:05/01/88
Subject:HELLO Parent Msg#3951
------------------------------------------------------------------------------
Dirk, just wanted to introduce myself and take this chance to say what a
great service your doing. I appreciate the chance to log in as a total
beginner and learn from some of or is it THE best around. I spent all
day today working thru DBEDIT() with the help I got on this board. I
know that sometimes it can be a no win situation running these things but
sometimes it nice just to know someone is getting a lot out of it.
-tim-
Msg#3952 To:TIM CREAGH (Rcvd)
From:STEVE STRALEY Date:05/01/88
Subject:(R)STRALEY1.ARC Parent Msg#3935
------------------------------------------------------------------------------
BTW, I've uploaded yet another file called STRALEY2.ARC and in it
contains the listing of the functions you asked about. Now, as far as
the MEMOEDIT() function, Clipper automatically passes teh row and column
number of the cursor within the text to the user-defined function.
Believe me, it's real easy. I'll be getting a few docs together on it
later. Hope this helps... Take care.. and yes, I got cut off due to
call waiting....
Steve
Msg#3955 To:ALL
From:RON CALLAHAN Date:05/02/88
Subject:TRANSACTION BLOCKING
------------------------------------------------------------------------------
Is anyone working on a set of functions that perform true transaction
blocking and processing with roll-back capbilities as in dBase IV.
I got used to working with these functions on unix systems and sorely
miss them when working on multi-user jobs with clipper.
Msg#3958 To:STEVE STRALEY (Rcvd)
From:TIM CREAGH Date:05/02/88
Subject:(R)STRALEY1.ARC Parent Msg#3935
------------------------------------------------------------------------------
Sometimes I hate that call waiting, that is until I found out by hitting
#9 you can suspend call waiting. I'm sure if you check with your phone
company you'll have a similar system. Thanks for the listings of your
"main frame" functions. I'll call back to get your MEMOEDIT() ideas.
-tim-
Msg#3959 To:DIRK LESKO (Rcvd)
From:HARRY VANTASSELL Date:05/02/88
Subject:(R)HOW DATES ARE STORED Parent Msg#3898
------------------------------------------------------------------------------
Dirk: I still would like to see your 14 byte array structure, did you
get it from from your good friend Brian R.?
Msg#3960 To:TIM CREAGH (Rcvd)
From:CLIFF CORCORAN Date:05/02/88
Subject:(R)NEWCOMMER Parent Msg#3883
------------------------------------------------------------------------------
Welcome. I did accomplish my psuedo-spread sheet. Basically I used a
procedure to 'remember' the row and col position then go to a do case
section where the users input was checked. If the input indicated he
wished to change the 'cell' then I went to a get read procedure. Other
wise when he pressed an arrow or exit key the row and col pointers were
updated and back to the inkey routine. I must admit that I sweated out
the problem for quite some time but the application is out the door and
in use.
Glad to have you aboard.
CLiff
Msg#3963 To:ALL
From:DON DAVENPORT Date:05/02/88
Subject:IDL AND SST Parent Msg#3963
------------------------------------------------------------------------------
Since I have not seen either oth these products it would be nice if there
was a file describing each on the board to include a list of functions
etc that are included. I have TR.LIb and am in the process of
registering for several other libraries but don't like to be in the dark
if there is something good out there I don't have. I think this would be
a benefit to all those who haven't seen these.
Don
Msg#3968 To:STEVE STRALEY (Rcvd)
From:DIRK LESKO Date:05/02/88
Subject:(R)ALTRIM() VS LTRIM(TRIM Parent Msg#3946
------------------------------------------------------------------------------
The tone is fine......I figure the speed difference to be about 15 - 20
per cent FASTER using ltrim(trim()) than alltrim(). I do however have my
own alltrim the beats the ltrim(trim()) combo by about 10%. But you have
to use a lot of slick code because of the overhead the damn __parxx
functions impose on you. Something ole BR forgot to take into
consideration I guess. Speak to you soon.....
dLESKO
Msg#3969 To:ABE RICE
From:DIRK LESKO Date:05/02/88
Subject:(R)LINKING QUICKBASIC & P Parent Msg#3948
------------------------------------------------------------------------------
QB 4.00 handles functions in the same manner as MSC medium model, Which
means you might be able to do it using the CDECL declarations in QB4.
However, you cannot use the underscore character unless you specify
something which I have forgotten and am too lazy to look up right now. I
have the MS mixed language programming guide which might help you if you
have some more specific questions.
dLESKO
PS - you are noe on the list at Limelight......
Msg#3970 To:TIM CREAGH (Rcvd)
From:DIRK LESKO Date:05/02/88
Subject:(R)HELLO Parent Msg#3951
------------------------------------------------------------------------------
thanks for the pat on the back. You are very welcome here, and I know
that you too will become a contributor as well. Like they say.....two
heads are better than one.
PS - Have you checked out all the neat files in the Clipper directory??
dLESKO
Msg#3971 To:HARRY VANTASSELL (Rcvd)
From:DIRK LESKO Date:05/02/88
Subject:(R)HOW DATES ARE STORED Parent Msg#3898
------------------------------------------------------------------------------
No, It took me about a week to figure it out......The reason it took so
long because it appears to be the most supid calling convention I have
seend. Poitners to pointers to pointers that point to pointers......
dLESKO
Msg#3972 To:CLIFF CORCORAN (Rcvd)
From:DIRK LESKO Date:05/02/88
Subject:(R)IDL LINK ORDER Parent Msg#3972
------------------------------------------------------------------------------
Hmmmmm..... Sounds like an internal naming problem there......BUt not too
likely. By the way, the CAPFIRST() function does the same thing as
capitalize(lower(fieldname))...... If you can track it down a little
better it would be helpful. Does the function call work if TR.LIB is left
off the link line??
dLESKO
Msg#3974 To:DON DAVENPORT
From:DIRK LESKO Date:05/02/88
Subject:(R)IDL AND SST Parent Msg#3963
------------------------------------------------------------------------------
Hi Don.....the is a file called IDL_LIB.ARC that contains the listings of
the functions in IDL. I don't think Steve has uploading anything as yet.
I will leave him a message as well....
dLESKO
Msg#3976 To:ALL
From:DIRK LESKO Date:05/02/88
Subject:TRASH Parent Msg#3976
------------------------------------------------------------------------------
Hi all, Just wanted to get some feedback. Marc has been trying to recoup
some disk space as of late. And I was wondering what was your opinion on
deleting the uploaded files that pertain to Autumn86 version of Clipper??
Since I think that most of us are now using Summer, I would say that it
might be in our best interests to Nuke the Autumn stuff since I know that
it can cause some confusion when you link an old lib into the new
Clipper. If it is OK with you, I will make a suggestion......
dLESKO
Msg#3977 To:TIM CREAGH (Rcvd)
From:CLIFF GREEN Date:05/02/88
Subject:(R)NEWCOMMER Parent Msg#3883
------------------------------------------------------------------------------
(re: spreadsheet coding for Clipper)
I don't know if anyone else out there has heard of this package, and I
haven't seen it or tried it myself, but it might be a possible approach
to WKS/WK1-type coding: "WKS LIBRARY" and "WKS LIBRARY v. 2.0" from
Tenon Software (800-367-9882) in Bellevue WA. It's a C library which
"enables .. access to worksheets.... use wscanf() and wprintf() to read
and write wks rows.... Cell values, formulas,macros, range-names, column
widths, etc. are all accessible." It's not the same as doing it all in
Clipper or even in Clipper-accessible files (hmmm, maybe with FREAD(),
FWRITE(), etc.), but it's a possibility.
Msg#3978 To:TIM CREAGH (Rcvd)
From:CLIFF GREEN Date:05/02/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
Thanks Tim, I've been trying to work out a solution to this too.
-cg
Msg#3981 To:TIM CREAGH (Rcvd)
From:CLIFF GREEN Date:05/02/88
Subject:(R)OSG104.ARC Parent Msg#3907
------------------------------------------------------------------------------
Tim,
There's a piece in this month's (May) CLM in the public domain
software column on OSG. He reviewed v. 1.05, and seemed to like it.
That version linked ok with FORTRAN, C, and QuickBASIC ok, and it's
supposed to work ok with most MicroSoft languages, TurboC, Manx,
Datalight, Intel compilers, and (aha!) Clipper.
I have not tried it, but intend to RSN. (I'll probably go for a
later version from the Project X Development Group's bbs: (215)627-3910.
Msg#3984 To:CLIFF GREEN (Rcvd)
From:DIRK LESKO Date:05/02/88
Subject:(R)TRASH Parent Msg#3976
------------------------------------------------------------------------------
I was thinking of that stuff that just won't work at all if you use
Summer. Clipper code is keepable. But many of the LIBS require A86 and
may be worhtwhile taking them off line??
dLESKO
Msg#3986 To:ROBERT HEYMAN (Rcvd)
From:JOHN THORN Date:05/02/88
Subject:(R)S87 RUN COMMAND Parent Msg#3879
------------------------------------------------------------------------------
I'm running at-cache which comes with Mace Utilities (run in extended
NOT expanded RAM) and have no problems. Also running 1Mb RAM disk
along with it. This cache is identical to Golden Bow's program. Am
also running 1/2 meg of expanded RAM loaded at the very top of the
mem map (back fills - nice, better than others I've seen!)
John
Msg#3987 To:DIRK LESKO (Rcvd)
From:JOHN THORN Date:05/02/88
Subject:(R)TRASH Parent Msg#3976
------------------------------------------------------------------------------
Yes, but then again, no. New users (and new SIG members) still will
find some of the messages filled with useful information. Perhaps
what is needed is to cull the files of unnecessary messages and keep
just the ones that help/teach/elaborate/etc. the development process.
Msg#3988 To:DIRK LESKO (Rcvd)
From:TIM CREAGH Date:05/02/88
Subject:(R)HELLO Parent Msg#3951
------------------------------------------------------------------------------
Thanks for the welcome and yes I have looked at the terrific files. I
don't know where to start?????
-tim-
Msg#3989 To:DIRK LESKO (Rcvd)
From:TIM CREAGH Date:05/02/88
Subject:(R)TRASH Parent Msg#3976
------------------------------------------------------------------------------
I'm all for deleting the files that pertain to Autumn86. Calling from
California is expensive enough without wading thru and accidentally
downloading files that won't work. If the conscensus is to leave the
files on maybe they could be marked in some way or separated so those who
are not interested can bypass them.
-tim-
Msg#3990 To:CLIFF GREEN (Rcvd)
From:TIM CREAGH Date:05/02/88
Subject:(R)NEWCOMMER Parent Msg#3883
------------------------------------------------------------------------------
Thanks Cliff, I'll try calling Tenon Software and find out the scoop on
"WKS LIBRARY". If anyone else is interested I'll relate back the infor I
get.
-tim-
Msg#3991 To:CLIFF GREEN (Rcvd)
From:TIM CREAGH Date:05/02/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
O.K. Cliff, I hope you can improve on the code. I am just a beginner
and I tend to write 35 lines for 2 lines of code. Guess that's why my
EXE files are always so big <grin>. I like to blame it on Nantucket
tho.
-tim-
Msg#3992 To:CLIFF GREEN (Rcvd)
From:TIM CREAGH Date:05/02/88
Subject:(R)OSG104.ARC Parent Msg#3907
------------------------------------------------------------------------------
Cliff, please let me know what you think and if you can get a later
version I would be very interested also. I made a note of the Project X
Development Group's bbs. thanks
-tim-
Msg#3993 To:ABE RICE (Rcvd)
From:MARK NEIDORFF Date:05/02/88
Subject:(R)LINKING QUICKBASIC & P Parent Msg#3948
------------------------------------------------------------------------------
Hi Abe,
I know that quickbasic produces MS style obj files, so if you adhere
to the calling conventions of clipper (however you would do that in
basic!) it should work. Not so with Borland's pascal (as best as I can
figure from reading their docs.,)
<< Mark >>
Msg#3999 To:MARK NEIDORFF (Rcvd)
From:ABE RICE Date:05/02/88
Subject:(R)LINKING QUICKBASIC & P Parent Msg#3948
------------------------------------------------------------------------------
Hi Mark,
I was wondering how one would go about linking qbasic with clipper -
actualy someone I know who has been writting in Qbasic for a while just
started using clipper and asked me about it.
As for Pascal, I was referring to MS, I guess then that it would be the
same as qbasic..
thanks
Msg#4002 To:ALL
From:TIM CREAGH Date:05/03/88
Subject:DBEDIT() 2 COLUMN Parent Msg#4002
------------------------------------------------------------------------------
Is it possible to set up a screen using DBEDIT() so that you have the
database continue side-by-side. For instance in the case of a screen in
which you only had 8 lines to show the fields but you only needed 32
columns. Could you then show 16 lines by dividing the screen in half?
Example
***** Same Database *****
================================ ================================
|SENT LETTER WHO CALLED | |SENT LETTER WHO CALLED |
================================ ================================
|04/23/88 DYNAMIC THC 04/28/88| |06/22/87 MIRAMAR THC 07/24/87|
|02/28/88 PLAYA THC 03/03/88| |03/18/87 MIRAMAR THC 03/24/87|
|02/18/88 MIRAMAR/ THC 02/22/88| |03/10/87 COLLWOOD THC 03/15/87|
|12/15/87 MIRAMAR THC 12/20/87| |02/18/87 MIRAMAR THC 02/24/87|
|09/09/87 GENTLMN2 THC 09/20/87| |12/24/86 COLLWOOD THC 01/03/87|
================================ ================================
[C]all [E]dit [N]ext lead [P]revious lead [Q]uit
Also the Clipper manual mentions you can call multiple copies of DBEDIT()
withing each copy of DBEDIT() allowing you multiple browse windows on the
screen at one time? That's the extent of their explanation. WHAT???
Any help is greatly appreciated!!
-tim-
Msg#4004 To:RON CALLAHAN (Rcvd)
From:RON LANDBERG Date:05/03/88
Subject:(R)HELP WITH 3COM NETWORK Parent Msg#3882
------------------------------------------------------------------------------
{ I'VE EXPERIENCED THIS PROBLEM ON SEVERAL NETWORKS. FOR SOME REASON
CLIPPER DOES NOT RELEASE A FILE WHEN YOU EXIT YOUR APPLICATION. THE ONLY
WAY I'VE FOUND TO MAKE THE FILE AVAILABLE TO OTHER SYSTEMS IS TO REBOOT
THE MASTER STATION. HOPE THIS HELPS.}
*******
??? Which files are you talking about? The .EXE file or the .DBF files?
If
.DBF, what do you mean that Clipper doesn't release it? Isn't the
file
released when you close it?
Msg#4006 To:STEVE DAVIES (Rcvd)
From:STEVE STRALEY Date:05/03/88
Subject:(R)CALL WAITING
------------------------------------------------------------------------------
Thanks for the message. I think I'll take my chances until I get a
dedicated line for my BBS. In the meantime, like right now, I'm calling
at 3:00 a.m. so I don't think THAT many people will be calling be
bouncing me off of the system.
Glad you liked the upload. There's a whole lot more goodies like that in
store: I seriously have fun pushing this language to the ultimate. Take
care, and thanx...
Steve
Msg#4007 To:TIM CREAGH (Rcvd)
From:STEVE STRALEY Date:05/03/88
Subject:(R)DBEDIT() 2 COLUMN Parent Msg#4002
------------------------------------------------------------------------------
SURE, It's simple. I'll try to get someting together in the next few
days or so, but you realize that you're taking away from some of the
matierla at the Clipper conference, FROM DOSS, and other things I'm
wanting to do. The main this is that you're asking the RIGHT questions:
without dBLINDERS on. The trick to what you're asking for is the
possibility to call DBEDIT() .....WITHIN ..... DBEDIT(). A showed a
smaple of this technique to Mr. Lobel and showed him it CAN be
accomplished with relative ease. Without giving an elaborate scheme,
I'll just point you in the right direction and let you try out a few
exampels. Take care,
Steve
Msg#4009 To:CLIFF GREEN (Rcvd)
From:JILL GOHR Date:05/03/88
Subject:(R)TRASH Parent Msg#3976
------------------------------------------------------------------------------
I tend to agree. There are probably still people that haven't converted
over yet. Besides, whether 86 or 87, a lot of those files are still good
information. Altho, some may be strictly 86, they contain code and ideas
not duplicated yet in the files uploaded for 87. I think removing them is
a bit premature. Cleanup for duplicates, W85, is fine. It seems that the
DOS utils directory would be a better place to start, as there are
multiple versions of pgms out there that could go, as wel as in other
directories where there is NOT source code involved. I just hate to see
source code, no matter what version, be trashed. Its still a valuable
learning tool!
Msg#4010 To:TIM CREAGH (Rcvd)
From:JILL GOHR Date:05/03/88
Subject:(R)TRASH Parent Msg#4010
------------------------------------------------------------------------------
this could be remedied VERY easily is people would put (S87) or (A86) in
their upload file description!
Msg#4011 To:MARK NEIDORFF (Rcvd)
From:HAWKINS DALE Date:05/03/88
Subject:(R)S87 RUN COMMAND Parent Msg#3879
------------------------------------------------------------------------------
Don't you mean Caveat Emptor? Or maybe I'm just being a pedantic jerk.
Caveat Mentor would mean "Let the teacher beware".
Msg#4012 To:DIRK LESKO (Rcvd)
From:CLIFF CORCORAN Date:05/03/88
Subject:(R)IDL LINK ORDER Parent Msg#3972
------------------------------------------------------------------------------
I thought from the docs that CAPFIRST would only work on the first word,
sooo the CAPITALIZE(LOWER()) deal. DOesn't seem to matter. I will try to
produce some code where the problem surfaces. The weird deal is that the
problem surfaces as soon as the application tried to open a db. Much
before any of the code gets around to the formatting in reports using the
cap stuff. Also, as a clue, the memory of the machine gets totally
trashed, where even a warm boot does not recycly properly. It takes a BIG
RED SWITCH reboot. As I said, I will try to duplicate it in some
reasonable sized code and zap it up to you.
Regards CLiff
Msg#4013 To:DIRK LESKO (Rcvd)
From:CLIFF CORCORAN Date:05/03/88
Subject:(R)TRASH Parent Msg#3976
------------------------------------------------------------------------------
Fine with me (nuking A 86.) Most of the regular users pick stuff up to
try pretty soon after they appear.
Msg#4015 To:DIRK LESKO (Rcvd)
From:HAWKINS DALE Date:05/03/88
Subject:(R)TRASH Parent Msg#3976
------------------------------------------------------------------------------
dIRK:
Drop the big one.
-- HD
Msg#4017 To:ABE RICE
From:DIRK LESKO Date:05/03/88
Subject:(R)QBASIC
------------------------------------------------------------------------------
Maybe I can give it a shot.....I have all the tools here, now, If someone
can lend me an ╤hour or two.......
dLESKO
Msg#4019 To:HAWKINS DALE
From:DIRK LESKO Date:05/03/88
Subject:(R)S87 RUN COMMAND Parent Msg#3879
------------------------------------------------------------------------------
Caveat Mentor.......I thought that was what he meant.....
Msg#4020 To:CLIFF CORCORAN (Rcvd)
From:DIRK LESKO Date:05/03/88
Subject:(R)IDL LINK ORDER Parent Msg#3972
------------------------------------------------------------------------------
That god damn Clipper memory allocation again......If you get some code
that definately acts weird, upload it to me......
dLESKo
Msg#4022 To:ALL
From:ROBERT HEYMAN Date:05/03/88
Subject:R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
Have been experimenting with the new R&R (3.0)....and have to report that
it's terriffic! One problem I've always had using R&R is printing
reports to screen. The problem has beeen in the past...and remains so
with the new version...is that one cannot go backwards during the screen
listing.....the only options are to cancel..resume...or restart from the
top...
hence...
I've been thinking of outputting the reports to disk ...and letting the
user view said ASCII report using an ASCII file browser run from within
Clipper. Now...the rub..... I would dearly like to call something like
Vern Buerg's lister program from Clipper, except for 2 reasons...
1. I believe that I would have to liscense same from Mr. Buerg...and
2. While it's a nice piece of work...it's just a bit complex for my
needs ......so....
has someone written a simple file browser in Clipper that can be used?
(I expect Straley has)...or....does someone know of a SIMPLE (page
up....page down etc.) ASCII browser in the PUBLIC DOMAIN?
Rob
Msg#4023 To:JILL GOHR (Rcvd)
From:TIM CREAGH Date:05/03/88
Subject:(R)TRASH Parent Msg#4010
------------------------------------------------------------------------------
Or mbe just a number 6 or 7 so they could still have seven letters to
name their file appropriately. It would also be fairly simple
(especially since I don't have to do it), to rename the files in the
directory with a 6 for '86 or a 7 for '87.
Msg#4024 To:ALL
From:ABE RICE Date:05/03/88
Subject:POPUP CALCULATOR Parent Msg#4024
------------------------------------------------------------------------------
Hi
Does anyone know if there is some kind of public domain/shareware popup
calculator linkable with clipper 87?
thanks
abe
Msg#4025 To:ROBERT HEYMAN (Rcvd)
From:DIRK LESKO Date:05/03/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
Why don't you use f_read() to read in the file into a mem_var, and then
let the user browse it with memoedit()???? Just send a .F. so that the
user cannot dit it. And of course you will have to use a full screen
window....I have something that I could probably adapt for you if that
doesn't work......
dLESKo
Msg#4026 To:ABE RICE
From:DIRK LESKO Date:05/03/88
Subject:(R)POPUP CALCULATOR Parent Msg#4024
------------------------------------------------------------------------------
There is one on the board, I think it is called JBCALC.ARC or something
similiar.....
dLESKO
Msg#4028 To:ROBERT HEYMAN (Rcvd)
From:STEVE STRALEY Date:05/03/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
You can quickly use MEMOEDIT() in conjunction with MEMOREAD() with the
new Clipper. TO just use to arrow and curosr keys, try the following
line of code....
MEMOEDIT(MEMOREAD(<ascii file>),10,20,20,60,.F.)
The false makes the cursor keys works W/O eiditng, the MEMOREAD() opens
the file directly.. Try it, and see if it works...
Take care,
Steve
Msg#4029 To:ABE RICE
From:TIM CREAGH Date:05/03/88
Subject:(R)POPUP CALCULATOR Parent Msg#4024
------------------------------------------------------------------------------
Abe I'm pretty sure J. Bristor has one. As I remember it's on this board
and you can get the code from the address listed in the file. It's
called something like JBCALC.arc. He charges something like $1.00 for
the code. If you don't find it let me know and I'll upload a copy.
-tim-
Msg#4030 To:STEVE STRALEY (Rcvd)
From:TIM CREAGH Date:05/03/88
Subject:(R)DBEDIT() 2 COLUMN
------------------------------------------------------------------------------
O.K. Steve I read your message about 3:00 a.m. last night and I was
probably still asleep. I see what you mean now I'll try to implement it.
-tim-
Msg#4031 To:ABE RICE
From:MARK NEIDORFF Date:05/03/88
Subject:(R)LINKING QUICKBASIC & P Parent Msg#3948
------------------------------------------------------------------------------
Abe,
I don't know MS PASCAL. It is different than qbasic. I know that.
There is a new version coming out soon (out already?) which will be OS/2
ready and so compatible with CLIPPER due to the correct obj file format.
This is an uninformed opinion.
<< Mark >>
Msg#4033 To:TIM CREAGH (Rcvd)
From:MARK NEIDORFF Date:05/03/88
Subject:(R)TRASH Parent Msg#4010
------------------------------------------------------------------------------
Tim,
I was over at the home of the BOSS one fine evening into the wee hours.
IT IS NOT EASY to just find the clipper files and rename them!
<< Mark >>
Msg#4034 To:ABE RICE
From:MARK NEIDORFF Date:05/03/88
Subject:(R)POPUP CALCULATOR Parent Msg#4024
------------------------------------------------------------------------------
There is jbcalc.arc on the boss which is written in clipper.
<< Mark >>
Msg#4035 To:DIRK LESKO (Rcvd)
From:ROBERT HEYMAN Date:05/03/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
Dirk.....sounds like a possibility......some of the files I have in mind
(i.e. a large backorder report) are kind of large though....150K...
somehow....reading it into a memvar seems like it might be a problem
(grin). I did find a lister under 1k...that works nicely. Been looking
at your q_*() functions in IDL by the way...all sorts of nice
possibilities for printing the sucker.
Rob
Msg#4036 To:STEVE STRALEY (Rcvd)
From:ROBERT HEYMAN Date:05/03/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
Steve......Memoread() opens the file directly?....no memvars involved?
Rob
Msg#4037 To:ROBERT HEYMAN (Rcvd)
From:DIRK LESKO Date:05/03/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
I use the q_* functions to print reports and label runs in the
background!!!! And the user can still edit add update and delete records
in the forground!
dLESKO
Msg#4038 To:ROBERT HEYMAN (Rcvd)
From:DIRK LESKO Date:05/03/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
memoread() will open the file and read it's ENTIRE contents into a memvar
that you can then edit with memoedit(). You might want to use fread() to
read the desired amount into the memvar. Remeberyou can only have string
length of 64k max with Summer.
dLESKO
Msg#4039 To:ROBERT HEYMAN (Rcvd)
From:STEVE STRALEY Date:05/04/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
Rob, I'm amazed! Questioning the Captain? Sorry for the joking around,
trying to implement some light humor. YES, that line of code I gave you
works. Did you try it? Why woudn't it work! Think about it.
MEMOREAD() returns a string value, MEMOEDIT() requires a string value.
By the way, I tried calling you back several times to no avail. Leave
your message here, and I'll try to get to it 'morrow. Take care,
Steve
Msg#4040 To:ROBERT HEYMAN (Rcvd)
From:STEVE STRALEY Date:05/04/88
Subject:CONTINUING Parent Msg#4040
------------------------------------------------------------------------------
Additionally, even though Dirks' mesage was partially correct in
mentioning the fread() functions, I think it should be noted as to the
original quesion: viewing reports. I have yet to see a report which is
larger than 64K. So, rather than going and trying to work our an
algorythm which is not practicle based on the ORIGINAL question, the
MEMOREAD(), MEMOEDIT() combination is quite sufficient.
Remember, never work harder than you have to, while trying to work the
hardest at all times. This isa good example for this axiom. Take care,
Steve'
Msg#4041 To:MARK NEIDORFF (Rcvd)
From:TIM CREAGH Date:05/04/88
Subject:(R)TRASH Parent Msg#4010
------------------------------------------------------------------------------
O.K. Mark I BELIEVE you! I vote to nuke the files rather than hassell
with them.
-tim-
Msg#4042 To:STEVE STRALEY (Rcvd)
From:JOHN DUKE Date:05/04/88
Subject:YOUR BOOK
------------------------------------------------------------------------------
Sir, Having seen numerous replys to msgs on this system I was impressed
with both your knowledge and willingness to help. A coworker who was
looking into CLIPPER programming asked me for some advice on learning.
Totally sight-un-seen, I suggested your book. Normally I would not have
been so dramatic, but as noted your responses to questions here gave 'me
anyway' an idea that you definitely knew what you were talking about.
Since this person did purchase the book, I (kindly) requested I be alowed
to view it for (my advice). I can say honestly that he was totally
impressed but I would expect that of any new user, but after viewing
'even briefly' for myself I was equally impressed. Now i am no clipper
god by any strech of the imagination, but probably more advanced then the
typical user, So to see the samples and 'tricks' i learned in just a few
pages I have purchased my own copy. From one who appreciates 'STRAIGHT
FOWARD KNOWELEDGE' my THANKS for a great book. JDD.
Msg#4043 To:RON LANDBERG (Rcvd)
From:RON CALLAHAN Date:05/04/88
Subject:(R)HELP WITH 3COM NETWORK Parent Msg#3882
------------------------------------------------------------------------------
For some reason clipper does not always release a dbf file when closing.
The file would be available to those running a clipper compiled program
but not to those useing anything else such as dbase foxbase or dos
commands. This would be true if no one else on the network was using the
file at all. The only way I could get the file released would be to
reboot the master station. It appears that some netbios flag is not being
reset when closing the file or when exiting the clipper compiled program.
This is not a frequent problem but does happen once in a while.
Msg#4045 To:ABE RICE
From:JILL GOHR Date:05/04/88
Subject:(R)POPUP CALCULATOR
------------------------------------------------------------------------------
Check out John Bristor's JBCALC10.arc on the board.
Msg#4048 To:STEVE STRALEY (Rcvd)
From:JILL GOHR Date:05/04/88
Subject:DOSS Parent Msg#4048
------------------------------------------------------------------------------
Steve - From D.O.S.S is great! Informative, thorough, and as always,
provides new insight. my answers are
1. VERY
2. actually once a week , however, I would be more than satisfied with
twice a month!
3. Yes ... the more the better!
4. I give up ---- where can I get more??
... Jill
Msg#4052 To:JILL GOHR (Rcvd)
From:STEVE STRALEY Date:05/04/88
Subject:(R)DOSS Parent Msg#4048
------------------------------------------------------------------------------
Thanks Jill. Joe King and I are deciding whether people, in general,
will find that useful or if there should be yet another high-level
section dedicated to C and ASM. I'm not quite sure at this point.
ONCE A WEEK! I barely get 4 hours of sleep a night, how could I ever
put out 4 issues a month. Not even me and other collegaue have that much
hot air collectively.
I'll be collecting these views and will be having a strategy meeting with
Joe King the end of the week, or next week. If there is ANYTHING coming
out in the future, he's the guy that will give you the pessimistic view
(I always give the optemistic views and reality lies between and betwix).
Joe King - 212-599-2141
Steve S. - 201-332-7520
EIther number will get you one of us. Thanx for the message and always,
Take care,
Steve
Msg#4054 To:CLIFF CORCORAN (Rcvd)
From:ROB HANNAH Date:05/04/88
Subject:(R)NEWCOMMER Parent Msg#3883
------------------------------------------------------------------------------
I had to implement a large spreadsheet setup for a client awhile back -
I started out using a database containing fields for row, column,
picture, up, down, left and right, with the cursor keys (up,...)
containing recno() positions. This was much too slow (100+ cells on the
screen), so I wrote a small program to convert the database into an
initialize procedure for 7 arrays. This certainly solved the speed
problem, but blew me out memory-wise. The final solution I used was to
move everything into a C structure (static) with a small set of routines
to retreive (sp?) the needed data. This saved me about 47k and did not
require the 13 second initialization the prg required.
ROB
Msg#4055 To:ALL
From:ROB HANNAH Date:05/04/88
Subject:MONGO CLIPPER Parent Msg#4055
------------------------------------------------------------------------------
Anyone tried removing object records from the obj files to prevent the
entire Clipper library from being loaded? Anyone have any idea as to how
difficult this might be?
ROB
Msg#4057 To:ALL
From:ABE RICE Date:05/04/88
Subject:JBCALC10 Parent Msg#4057
------------------------------------------------------------------------------
Hi,
I d/l the jbcalc, but I still have one problem.
Before going to jbcalc10 I save the current color with var =
set_color() and when I return I reset it with set color to var. Now
this works when poping the calcultor from a read, but when I call it
from a menu to the colors are messed up when I return. Any
suggestions?
Thanks
Abe
Msg#4058 To:ABE RICE
From:STEVE STRALEY Date:05/04/88
Subject:(R)JBCALC10 Parent Msg#4057
------------------------------------------------------------------------------
Abe, before calling the procedure store the color contents of the screen
to a variable either using Summer 87 SETCOLOR() function, or a couple of
other functions. Let me outline it for you...
oldcolor = SETCOLOR()
DO Popcalc
SETCOLOR(oldcolor)
For the Autumn 86 versions and prior, you can use my ATTRIBUTE() function
on Page 80 to help deceipher the color attribute bytes. Complie them to
a string and SET the COLOR back TO the compiled string.
Hope this helps....
Steve
Msg#4059 To:ALL
From:STEVE STRALEY Date:05/04/88
Subject:FREE COPY
------------------------------------------------------------------------------
For information, download STRALEY3.ARC. Otherwise, ignore this potential
promotional offer.
S. Straley
Msg#4060 To:ROB HANNAH (Rcvd)
From:CLIFF CORCORAN Date:05/04/88
Subject:(R)NEWCOMMER Parent Msg#3883
------------------------------------------------------------------------------
I am starting to dabble in "C" (that means skim through the text). It
sounds like you solved your need nicely. I had a smaller number of
"Active" cells at any one time. Also I allowed edits to the whole screen
(arrays) and only went to disk after the screen was ok, updated AND the
user confirmed changes. That way I only had oh about 72 X 2 array elemets
active.
Regards CLiff
Msg#4061 To:ALL
From:CLIFF CORCORAN Date:05/04/88
Subject:LINKED ARRAYS Parent Msg#4061
------------------------------------------------------------------------------
I am diving into the nice ADIR() function in S 87. What I would like to
do is read a bunch of dir entries and create arrays for;
name, size, date. So far piece of cake. I then whis to display the name
array in a achoice() with the size and date in a added info box showing
the current selection. Again no problem just use a @ say in a UDF that
uses the element parameter returned from achoice. Now the rub. Before I
display the file names, I would like to ASORT() by date. How in the world
do I link the name,size and date arrays so that once I order the key
array, the other arrays will know what I am pointing to?
Regards CLiff
Msg#4062 To:STEVE STRALEY (Rcvd)
From:ROBERT HEYMAN Date:05/04/88
Subject:(R)R&R - LISTER
------------------------------------------------------------------------------
It works...It works!....as above mssg from Dirk....must limit file size
to 64K.
Rob
Msg#4063 To:STEVE STRALEY (Rcvd)
From:ROBERT HEYMAN Date:05/04/88
Subject:(R)CONTINUING Parent Msg#4040
------------------------------------------------------------------------------
You've never seen a report over 64K??? I'm shocked....you should see the
backorder reports for one of my clients...HUGE (OVER 150K).
Rob
Msg#4064 To:ALL
From:STEVE STRALEY Date:05/04/88
Subject:CORRECTIONS
------------------------------------------------------------------------------
Instead of STRALEY3.ARC.... Download STRALEY4.ARC.
Thanks...
Steve
Msg#4066 To:STEVE STRALEY (Rcvd)
From:ALAN KOBB Date:05/04/88
Subject:(R)STRALEY1.ARC Parent Msg#3935
------------------------------------------------------------------------------
Steve,
Just a short note. Everyone tries to "beat the Jones'". It's
probably the only way to do business in this world where the early-bird
always gets the buck.
--Alan--
Msg#4067 To:CLIFF CORCORAN (Rcvd)
From:TIM CREAGH Date:05/04/88
Subject:(R)NEWCOMMER Parent Msg#3883
------------------------------------------------------------------------------
Cliff, please keep posting your progress on the spreadsheet. I'm trying
to do the same thing. I went out last night to find a good book on "C"
so I can start learning. I talked with Joe, (Mr. Straleys' other half),
he told me that done two three would work or that SSTKit might work. I
ordered SSTKit but it hasn't come yet.
-tim-
Msg#4068 To:ALL
From:TIM CREAGH Date:05/04/88
Subject:IDL Parent Msg#4068
------------------------------------------------------------------------------
ALLRIGHT --- my new version of IDL just arrived, I can't wait to start
rewriting my code to use the much faster functions in Steve and Dirks'
library. Now I'm just waiting for Joe to send my SSTKit and for Steve
Straley's new book.
-tim-
Msg#4069 To:DIRK LESKO (Rcvd)
From:TIM CREAGH Date:05/04/88
Subject:XTRACT Parent Msg#4069
------------------------------------------------------------------------------
Dirk, I just used your XTRACT.EXE program. It pulled out 98 procedure
files in my program. WHAT A GREAT TOOL!!!!! It would have taken me a
tremendous amount of time to do it manually. Thanks for uploading it.
-tim-
Msg#4073 To:ROB HANNAH (Rcvd)
From:DIRK LESKO Date:05/04/88
Subject:(R)MONGO CLIPPER Parent Msg#4055
------------------------------------------------------------------------------
there are not a lot of OBJ'sthat you can remove. You can write your own
error handling routine in Clipper when your project is fully debugged.
Essentially all it needs is to get the parameters, and then just return.
The OBJ NDEBUG is also worthless. It's just there so that you don't get
MISSING EXTERNAL errors from the linker. So, your options are not too
good. the internal Clipper routinesare so poorly laid out that it is
impossible to remove any of the modules without re-writing that module
yourself. I have done this, and beleive me it is no picnic! I have been
talking with Nantucket about the memory issue, and I can safelty say that
they have heard us. I'lll bet money that the next release of Clipper will
have better memory management to control final .EXE size, and memory
requirements. (Just say a little birdie told you......) But I am sure it
will happen.
dLESKO
Msg#4074 To:CLIFF CORCORAN (Rcvd)
From:DIRK LESKO Date:05/04/88
Subject:(R)LINKED ARRAYS Parent Msg#4061
------------------------------------------------------------------------------
Cliff, Why dont you concatenate the elements of all the arrays into one
final array. Your new array would contain all the info from the other
arrays, make sure that the date array is the first on the line. then
asort() that array and things should be in date order. sort of:
new_array[1] = date_array[1]+name_array[1]+size_array[1]
Do that for all the elements, and then asort(new_array). and display the
filenames from the new_array[]. Help any...?
dLESKO
Msg#4075 To:ROBERT HEYMAN (Rcvd)
From:DIRK LESKO Date:05/04/88
Subject:(R)CONTINUING Parent Msg#4040
------------------------------------------------------------------------------
150k?????? thats all?? One of my clients likes to print the entire
contents of a 9998 record database, and each record has like 450bytes
per. The damn thing takes like 6 hours to print (naturally at night) and
weighs in at about 8 pounds. Sent it to a file once..........something
like 5 megs.....
Msg#4076 To:TIM CREAGH (Rcvd)
From:DIRK LESKO Date:05/04/88
Subject:(R)IDL Parent Msg#4068
------------------------------------------------------------------------------
Sounds like your gearing up for war......
dLESKO
Msg#4077 To:TIM CREAGH (Rcvd)
From:DIRK LESKO Date:05/04/88
Subject:(R)XTRACT Parent Msg#4069
------------------------------------------------------------------------------
And it was written in Clipper. It's funny, I just uploaded it as a sample
program to show what can be done with Clipper....Now I am finding out
that people even use it!......I am happy to know that it works. I havents
played with it for a while. Maybe I will re-compile with Summer. That
will make it a lot faster.....
dLESKO
Msg#4078 To:DIRK LESKO (Rcvd)
From:ROBERT HEYMAN Date:05/04/88
Subject:(R)CONTINUING Parent Msg#4040
------------------------------------------------------------------------------
Damn the torpedos...just give me disk space
Rob
Msg#4090 To:STEVE STRALEY (Rcvd)
From:HENRY ABELMAN Date:05/05/88
Subject:SST
------------------------------------------------------------------------------
Let this be one of the first, if not the first feed back from a non-beta
user. First, from what I have seen it is great. There are so many
functions and features, I hardly know where to start. I had some
problems with linking. Evidently INSTALL generates files that give
TLINK problems. The BAT files look ok, but TLINK leaves unsatisfied
externals -- looks like it is ignoring the CLIPPER.LIB. I think it is a
bug in TLINK. That was an easy one to fix. I just threw all the SST_?
files into a library and I didn't have to bother with all those BAT files
anway. Speaking of LIB files, I guess I should confront you with a
comment I made earlier today. Why did you put all the routines in six
.PRG files. It takes up a lot of memory with routines that may not be
used. I am planning to XTRACT the procedures into separat files and
stick them into a library so that only those that I neeed will be used.
Putting them in separate files also, makes life easier in using standard
documenting routines. At any rate, I haven't run into any serious
problems thus far, but I haven't really started using them. I'll let you
know of my progress. By the way, I'm getting some static on my screen
when some of your windows are open. Is there a way to correct it?
I would like to repeat --- despite my comments --- I think your tool kit
is great !!!!!!!!!!!!
Legally,
Henry
Msg#4091 To:DIRK LESKO (Rcvd)
From:TIM CREAGH Date:05/05/88
Subject:(R)XTRACT Parent Msg#4069
------------------------------------------------------------------------------
It would be great if you recompiled it. The program is very useful and
would be nice if it were even faster.
-tim-
Msg#4092 To:STEVE STRALEY (Rcvd)
From:RUSSELL FREELAND Date:05/05/88
Subject:(R)RETURN
------------------------------------------------------------------------------
OK, OK, OK! I am not noted for my tact (as you may have noted). I
apologize IN CAPITAL LETTERS for whatever I said. Hey, I don't even know
you. I don't take your tone of voice seriously, please don't take mine
seriously! NEVER take me seriously--that's not the kinda guy I am
[grin]. PS Sorry I took so long to reply, I don't get on here often.
Msg#4094 To:DIRK LESKO (Rcvd)
From:ROB HANNAH Date:05/05/88
Subject:(R)MONGO CLIPPER Parent Msg#4055
------------------------------------------------------------------------------
You wouldn't happen to know when this birdie thought it might become a
reality? If they hurry, they can still call it Winter 87!
ROB
Msg#4095 To:TIM CREAGH (Rcvd)
From:CLIFF CORCORAN Date:05/05/88
Subject:(R)NEWCOMMER Parent Msg#3883
------------------------------------------------------------------------------
Ok. The task that I had was to display store order history. I read a raw
order file from a main frame computer. Went through the file and
converted the data to a record showing store,warehouse,sun,mon,...sat
fileds. To display, I read the SELECTED warehouse orders and used a set
of 12 arrays (dow's + warename + some other needed stuff). I painted the
screen with the arrays and put the curson on the first entry, (Monday,
warename[1]. I then went into a do case routine where a arrow key would
move the cusor down/up/whatever, skipping display only cols and of course
checking for boundries. I added some function key inputs to create a
runnimg total if desired as well as moving the values from place to place
and adding them to cells if the target cell was not empty. To edit the
cell, I cheated a bit and copied the value to a working scoreboard type
cell where the edits took place. The user has the option of saving
changes or not. Oh yes, I used IDL (then PDL) to check the values and
display them in a cue color for the user based upon storage, balance etc.
(G=ok, r-hi,y=lo etc). Quite a lot of need to haves went into the
project. Is this giving you any clues?
Regards CLiff
Msg#4096 To:DIRK LESKO (Rcvd)
From:CLIFF CORCORAN Date:05/05/88
Subject:(R)LINKED ARRAYS Parent Msg#4061
------------------------------------------------------------------------------
I will roll that one through today. Thanks. I guess I was(am) afraid that
the varying length of the file name would cause probs, but thinking it
over they will be padded by spaces (I think). Humm, Ok I will give it a
go.
Regards CLiff
P.S. I am still trying to get a reasonable sive code segment to send you
re; that mem (or whatever) problem. I used the "Saywhat" screen gen
system and the TSR Vidpop with the code.
Msg#4098 To:ABE RICE
From:STEVE STRALEY Date:05/05/88
Subject:(R)SETCOLOR
------------------------------------------------------------------------------
Great. I'm finding out, which is not all that unusual, that there are
lots of hidden nuances to many of the new functions in Clipper. It's
kindof like you finding all of the nuances in my stuff, I'm finding it
out in Brian's stuff. Take care, Stvee
Msg#4103 To:TIM CREAGH (Rcvd)
From:DAVID WITT Date:05/05/88
Subject:(R)NEWCOMMER Parent Msg#3883
------------------------------------------------------------------------------
If you can't find Steve's first book the last time (ABOUT 3WEEKS AGO) I
was in WASH, DC Reiters Scientific & Professional Book Store had about a
dozen copies on the shelf. The Phone number is 202-223-3327 maybe they
will let you order by phone or mail. The addres is 2021 K STREET
WASHINGTON, D.C. 20006. Hope that helps.
DAVID
Msg#4107 To:DIRK LESKO (Rcvd)
From:ALAN KOBB Date:05/05/88
Subject:(R)TRASH Parent Msg#3976
------------------------------------------------------------------------------
Trash em....
--Alan--
Msg#4108 To:ROBERT HEYMAN (Rcvd)
From:ALAN KOBB Date:05/05/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
Robert,
PC Magazine IRS has a public domain file lister called BROWSE.COM.
It's very simple. HOME/END/PgUp/PgDn/arrow keys/ESC=exit. That's all it
does, and it handles any size file.
--Alan--
Msg#4109 To:DIRK LESKO (Rcvd)
From:CLIFF GREEN Date:05/05/88
Subject:(R)TRASH Parent Msg#3976
------------------------------------------------------------------------------
aye, Cap'n.
Msg#4110 To:TIM CREAGH (Rcvd)
From:CLIFF GREEN Date:05/05/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
I don't think I can improve on the code (after all, the idea is simple
and it works), but I'll probably merge it with a few other ideas.
Assuming I can write a generalizable version (i.e., one not specifically
tied to the application I'm working on), I'll leave it here.
Msg#4111 To:JILL GOHR (Rcvd)
From:CLIFF GREEN Date:05/05/88
Subject:(R)TRASH Parent Msg#3976
------------------------------------------------------------------------------
I guess there's two issues here: 1) should the Clipper files be broken
out into more than one directory (e.g., S85, A86, S87, General, etc.) and
2) what kind of storage is available for/can be provided for all these
files, and should we as conferees support it (or will BOSS subscriptions
cover it - not likely, Mark, huh?) or is there enough room left (also not
likely).
As far as #1 is concerned, I like the idea, but am loathe to burden Mark
or Dirk with it (who else?), and as far as #2 is concerned, well, that's
probably something we can all discuss and then defer to Mark's decision.
Msg#4112 To:ROBERT HEYMAN (Rcvd)
From:CLIFF GREEN Date:05/05/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
check out the file README.PRG that came with S87. It'll give you the
skeleton of a file lister in Clipper. (does require S87, though, as
written).
Msg#4113 To:ROB HANNAH (Rcvd)
From:DIRK LESKO Date:05/05/88
Subject:(R)MONGO CLIPPER Parent Msg#4055
------------------------------------------------------------------------------
I am not sure as to the timetable, but my guess would be within a year,
with some OS/2 stuff to follow the year after that.....
dLESKO
Msg#4115 To:ALAN KOBB (Rcvd)
From:MARK NEIDORFF Date:05/05/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
I thought that BROWSE was limited to 64K file sizes. (That is the BROWSE
from PC maagazine) That's why it could be a .com file.
<< Mark >>
Msg#4116 To:ALL
From:DIRK LESKO Date:05/05/88
Subject:XTRACT
------------------------------------------------------------------------------
Hi all. In response to popular request, the XTRACT program has been
re-compiled using SUMMER87. The new file is called XTRACT87.ARC andcan be
ddownloaded right now. XTRACT will xtract functions and procedures into
seperate files so you can include them in libraries, and other Clipper
programs. XTRACT87 is now 100% faster using the new version of Clipper,
and is a great and handy tool for those of you who have many procs and
funcs to maintain. Give it a looksee, and enjoy!
dLESKO
Msg#4117 To:MARK NEIDORFF (Rcvd)
From:DIRK LESKO Date:05/05/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
BROWSE.COM will handle any file size with no problem. There is no limit.
dLESKO
Msg#4119 To:ALL
From:MARK WOLLAM Date:05/05/88
Subject:CLIPPER LOAD SIZE Parent Msg#4119
------------------------------------------------------------------------------
Is anyone interested is starting a discussion on ways to reduce
clipper's load size. I program large applications, usually
in excess of 20,000 lines of code. Due to the nature of
the systems there really isn't a feasible way to break them
apart into separate exe's, especially since I use extensive
hot key jumps from data entry points to on-line inquiry to
reports
I have tried everything. internal and external overlays,
sections within sections, etc. and I still end up with load
sizes around 400K... sometimes more. I can virtually forget
about using the RUN command and in most cases my customers
have to uninstall any TSR and print spoolers that can't be
loaded into extended memory.
Consequently, I am forced to include a pop up calculator,
note pad and calender, which are the usual things people want.
I have tried removing objects from both clipper and extend libs.
I am also sure that most of you have torn these libs apart as well
and quickly discovered that many of the functions and commands that
are rarly used are lumped together in an object that has other
necessities.
I have even resorted to wirting a separate program that is nothing
but screens and them saving them to disk... calling them only when
needed to reduce constants.
Any ideas you want to share would be greatly appreciated...
< Mark >
Msg#4120 To:ALL
From:MARK WOLLAM Date:05/05/88
Subject:PROGRAMMING
------------------------------------------------------------------------------
I have been logging on and reading the messages from this board for
about a month now. I fel it about time to start provding something
useful.. specifically programming techniques in clipper.
Here is my first one. I know must of you have a CENTER function
either your own or from one of the several third party libs.
I think you will find this implementation different.
---------------------------------------------------------------------
** FUNCTION CENTER
---------------------------------------------------------------------
*
* Center a character string either on the screen or on paper.
*
* Paramaters string .. string to center
* row ..... row to center on
* col ..... number of columns in format < default = 80 >
* color ... Color to display centered string
*
* Syntax Center(<string>[,row,col,color])
*
* Also note that since this function does not return anything it
* could just as easily be a procedure ... do CENTER with ........
function center
param string,row,col,color
private CenterCol && Initialize Center Point
if (PCOUNT() == 1) && only param passed was the string
private row,width
row = row() && row = current row
width = 80 && default to 80 columns
else (pcount() = 2) && row and string passed
if ( PCOUNT() == 2 )
private width
width = 80
endif
endif
CenterCol = len(string) && Find the Center
if (CenterCol < width-1)
CenterCol = int((width-CenterCol)/2)
else
CenterCol = 1
endif
if type('row') = 'C' && check for '?' mark output
if row == '?'
? space(CenterCol-1)+string
endif
else
if ( pcount() > 3 ) && check for color setting
private RetColor,BackColor,Point
RetColor = setcolor(color)
Point = at('/',Color)
*&& if there is a background color, lets pad the string with a
*&& leading and trailing space to make it pretty.
if ( Point > 0 .and. substr(color,Point+1,1) != 'N' )
@ row,CenterCol-1 say ' '+string+' '
else
@ row,CenterCol say string
endif
setcolor(RetColor)
else
@ row,CenterCol say string
endif
endif
return('')
Enjoy .... I will start uploading short, but useful functions and
procedures on a regular basis. Who knows, I may take the time
to document my own library and upload it someday...
< Mark >
Msg#4122 To:DIRK LESKO (Rcvd)
From:MARK WOLLAM Date:05/06/88
Subject:XTRACT Parent Msg#4122
------------------------------------------------------------------------------
Hi dIRK ....
Downloaded xtract... the wrong version because I didn't read close
enough. Anyway... I would have been nice if you hade posted such a
source .ARC for those of us who already have IDL. Sure would have cut
my download time. As you have mentioned before, don't upload clipper
exes because the cost people in other parts of the country a fortune to
download. Enough complaining. The program works great, after I
recompiled for summer. Thanks....
< Mark >
Msg#4123 To:ABE RICE
From:JOE BOOTH Date:05/06/88
Subject:(R)POPUP CALCULATOR Parent Msg#4024
------------------------------------------------------------------------------
There are several available. I have one published by the Nantucket news
which I have made some modifications to. I'll upload it you need a copy.
In addition, the BREEZE windowing library has one included in the DEMO,
however you need the BREEZE to run it ( or you could rewrite the
windowing parts)
Msg#4124 To:MARK WOLLAM
From:CLIFF CORCORAN Date:05/06/88
Subject:(R)CLIPPER LOAD SIZE Parent Msg#4119
------------------------------------------------------------------------------
Hear Hear! The size of the exe files that we are developing, even with
"Hi Mom" type systems is getting to be a problem. I would gladly trade a
bit of compile or link time if Clipper could be set to only include
features ACTUALLY called or stated in a system. This is not a new wish,
but lets get the ball going and be heard. (Geez, sounds like an old 60's
campus speech{grin})
Regards CLiff
Msg#4125 To:MARK WOLLAM
From:JOE BOOTH Date:05/06/88
Subject:(R)CLIPPER LOAD SIZE Parent Msg#4119
------------------------------------------------------------------------------
I, too, have a large application which was getting too big. The trick
I've found, is that while the load size is important, it is because of
the amount of free memory left. I don't use @ SAY's very much for
screens, (I type a text file instead). I've also reduced the amount of
arrays I use by switching to temporary DBFS (where the record number acts
as my array subscript). These techniques, while slightly slower, do not
use up as much free memory pool. If you use TLINK, download the program
I uploaded called TMAP, which will show you what routines are using how
much space. While I haven't substantially reduced my load size, I have
made code changes to use less of the free pool. Since I am using less of
the free memory pool, I have less memory problems.
The fun of work-arounds.
Msg#4126 To:ALL
From:JOE BOOTH Date:05/06/88
Subject:PARAMETER TESTING
------------------------------------------------------------------------------
I have seen many code examples where parameters are tested with code like
the following:
IF pcount() < 1
param1 = 80
ENDIF
IF TYPE("param1") = "U"
param1 = 80
ENDIF
I use the following:
param1 = iif( TYPE("param1") <> "N" , 80, param1 )
This not only tests for missing parameters, but also tests for wrong
parameter types.
Msg#4128 To:MARK WOLLAM (Rcvd)
From:STEVE STRALEY Date:05/06/88
Subject:(R)CLIPPER LOAD SIZE Parent Msg#4119
------------------------------------------------------------------------------
I want to ask a couple of questions:
1> How many prg's. are involved?
2> How many CLP files are involved?
3> DO you use implied overlays or SECTION command?
4> Have you removed the line numbers?
5> Do you use ALLTRIM() vs. LTRIM(TRIM())
6> Do you use IF commands instead of nested IF() functions?
7> What version of DOS?
These are just a few of my standard (pat) question before going into any
discussions with overlay logic. This oughta get the discussions going.
Oh, by the way, how did that trick I gave you over the phone work out?
Talk with ya soon,
Steve
Msg#4131 To:MARK NEIDORFF (Rcvd)
From:JILL GOHR Date:05/06/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
I thought that the COM extension referred to the size of the executable
file itself and that any executable file larger than 64k required the EXE
extension. Has nothing to do with the file being read in (by BROWSE) ...
Msg#4132 To:ALL
From:DAVE LOBEL Date:05/06/88
Subject:SET RELATION Parent Msg#4132
------------------------------------------------------------------------------
Hello ALL,
Has anyone had any problems with SET RELATION TO in the sense that when
the related database doesn't have a matching record, it doesn't go to an
empty record or RECNO() = 0?????
Please let me know.
Thanks.....
YEL-DAVE
Msg#4137 To:CLIFF CORCORAN (Rcvd)
From:TIM CREAGH Date:05/06/88
Subject:(R)NEWCOMMER Parent Msg#3883
------------------------------------------------------------------------------
Thanks, I'll have to ponder your message awhile and I'll get back to you
with my outcome.
-tim-
Msg#4138 To:DAVID WITT (Rcvd)
From:TIM CREAGH Date:05/06/88
Subject:(R)NEWCOMMER Parent Msg#3883
------------------------------------------------------------------------------
Thanks Dave, I'll call DC Reiters today before they sell out too.
-tim-
Msg#4139 To:CLIFF GREEN (Rcvd)
From:TIM CREAGH Date:05/06/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
Cliff, whenever you get around to finishing your MMAIL MERGE application
please let me know. I have been enhancing mine over the last few days
and I can't figure out why you can't just load the memo field into a
memory variable, replace the strings and print it. Each time I have to
write the memo field to disk, reload it to a memvar, replace the strings,
save it to disk again, reload it and then I can print it ----- what a
waste of time!!!! I'm sure it can be done easier but so far I can't
figure out how. I ordered SSTKit and I hear it has a wordproccessor in
it. So maybe I'm just wasting alot of time but I'm learning.
-tim-
Msg#4140 To:DIRK LESKO (Rcvd)
From:TIM CREAGH Date:05/06/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
Dirk, I saw a message from Cliff last November I think it was asking how
to replace variables in a form type letter. I did it using the STRTRAN()
function. I am having problems with it tho. I have a dbf file with each
form letter in a memo field. The user picks the letter they want and it
is loaded. In the letter are fields like /f_name/ these are replaced
with the clients name etc. using strtran(). This all works fine, the
irritating thing is I think that I should be able to create a memvar and
replace it with the memo file but for somereason that doesn't work
without writing it to disk first. Anyway, I would be very interested in
seeing what you have done.
Msg#4142 To:DIRK LESKO (Rcvd)
From:GARY COTA Date:05/06/88
Subject:TRASH
------------------------------------------------------------------------------
I vote for saving the old CLIPPER files off-line. I've found old routines
never die, they just get updated. I occasionally find an old dBASE II
routine that still provides a function once the code has been tweaked a
bit.
Msg#4144 To:DIRK LESKO (Rcvd)
From:KELLY STANONIK Date:05/06/88
Subject:LIBRARIES Parent Msg#4144
------------------------------------------------------------------------------
Dirk,
Here's a tech question for you: I've split a procedure file into
separate routines (not using extract, by the way, because I didn't know
about it at the time), compiled them separately, and created a library
out of them. THEN I compiled the master program using the library
instead of the full .OBJ file (of the procedure code) Here's the
thing--the resulting executable was 10k LARGER than the original, and I
know for a fact that I only used about 3/4ths of the routines in the
original procedure file. I know LIB pads each module, but REALLY!!!
Can you explain this one to me?
Msg#4145 To:DIRK LESKO (Rcvd)
From:CLIFF GREEN Date:05/06/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
(re: Mail Merge in Clipper)
Oh? Whacha got? Whatsit do? I'm working on a system for [what is
essentially] our Provost's office, merging a data file (faculty names and
data) with a paragraph file (different paragraphs and sentence chunks) to
be merged on demand into variable-content letters; i.e., each letter may
have a different mix of paragraphs and sentences, depending on the
content of the data in the faculty records. This stuff gets sent to the
Board of Trustees and the Dean, and is currently grinding the one person
who does them into the ground. Since she's a nice lady (and is willing
to put up with my occasional ranting and raving) I'm writing this thing
for her. Besides, it's an interesting problem.
Msg#4146 To:TIM CREAGH (Rcvd)
From:CLIFF GREEN Date:05/06/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
I'm not sure what you mean, but I'll print your msg and study it over the
wkend (I might even have an answer other than "dunno" when I'm done),
but- I saw SST at the Trenton fair, and am sure it'll do whatever you
want and then some. And, no, as long as you're learning, you're not
wasting time.
-cg
Msg#4147 To:JILL GOHR (Rcvd)
From:MARK NEIDORFF Date:05/06/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
OK Jill,
I'll dig BROWSE.COM out of some box of disks and give it a try. Dirk
also tells me that it will handle any file size. I stand corrected.
<< Mark >>
Msg#4148 To:MARK WOLLAM (Rcvd)
From:DIRK LESKO Date:05/06/88
Subject:(R)XTRACT Parent Msg#4122
------------------------------------------------------------------------------
That's a good idea, I will put together a source only version.
dLESKO
Msg#4149 To:TIM CREAGH (Rcvd)
From:DIRK LESKO Date:05/06/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
I just poop out merge files for most of the popular word processors. I am
of the belief that you leave to each program what it does best. I do not
try to maintain databases with MS Word, nor do I try to write letters
with Clipper. So I just built a simple to use rolodex type database
app which maintins the mmerge files. And it is doing rather nicely with
my clients.
dLESKO
Msg#4150 To:KELLY STANONIK (Rcvd)
From:DIRK LESKO Date:05/06/88
Subject:(R)LIBRARIES Parent Msg#4144
------------------------------------------------------------------------------
It would have to bethe way Clipper compiles it's procedures. If you have
100 procedures in one file, then Clipper will create one code segment
with about 20 bytes of code. However, if you have 100 procedures, Clipper
will create 100 code segmments of about 20 bytes each. There must have
been some other overhead in their too. But, for the most part. If you are
going to use most of the procedures that are in your procedure file, best
to leave them in one file. If you experiment with assembler, 100
procedures in one file, or 100 procedures in 100 files will create the
same size executable. 'C' will also generate a little xtra overshead if
you break out modules. But not too much.
dLESKO
Msg#4152 To:ALL
From:DIRK LESKO Date:05/06/88
Subject:XTRACT
------------------------------------------------------------------------------
Hi all, If you already hhave IDL and you want to check out XTRACT, youcan
download th source only file called XTRACT87.SRC. This file is only 7k.
It is an ARCfile, so it will still need to be unarced.
dLESKO
Msg#4153 To:STEVE STRALEY (Rcvd)
From:JOHN THORN Date:05/06/88
Subject:(R)R&R - LISTER Parent Msg#4022
------------------------------------------------------------------------------
Bob: I use that little piece of code Steve passed along all the time.
It's great for quick-and-dirty helps in a popup window, etc. Just be
sure you set the screen/window size to equal that of your margins (if
it's an ASCII file) or you'll have extra lf/cr all over the place.
- John
Msg#4154 To:JILL GOHR (Rcvd)
From:JOHN THORN Date:05/06/88
Subject:(R)DOSS Parent Msg#4048
------------------------------------------------------------------------------
Steve - Totally agree with Jill. Another (!) good job and extremely
useful! And...where can "I" get it??
Got the SST today! Super!
John
Msg#4155 To:ABE RICE
From:JOHN THORN Date:05/06/88
Subject:(R)JBCALC10 Parent Msg#4057
------------------------------------------------------------------------------
Abe: Why not just issue setcolor(var) after clearing/restoring the
pre-popcalc screen? Set key to procedure to do everything for you:
set key -9 to pcalc && function key 10
..... your menu code
* Procedure PCALC for doing the popup calculator
proc pcalc
save screen to temp
var = setcolor()
do xxxx && whatever jbcalc says to call
setcolor(var)
restore screen from temp
return
This may help. Let me know if you need something else.
John
Msg#4156 To:TIM CREAGH (Rcvd)
From:JOHN THORN Date:05/06/88
Subject:(R)IDL Parent Msg#4068
------------------------------------------------------------------------------
Tim: Keep in mind that Dirk's IDL is a LIBRARY. Steve's SST is
a bit different. Not really a library, if offers coding suggestions
for solutions. I recommend both, but for different reasons. Also,
Steve has complete applications (Report Writer, Word Processor) in
the Took Kit. BOTH are worth their weight in gold, but for different
reasons.
john
Msg#4159 To:TIM CREAGH (Rcvd)
From:STEVE STRALEY Date:05/07/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
Yes Tim, a mail merge capability is in the word-processor. Take a look
at pages 126-129 for some of the details. Also, look at (I think) Demo4
for an example you can work with right away. Take care and hope this
helps..
Steve
Msg#4160 To:KELLY STANONIK (Rcvd)
From:STEVE STRALEY Date:05/07/88
Subject:(R)CONTINUING Parent Msg#4040
------------------------------------------------------------------------------
Kelly, look at what I said... I haven't experienced any. I didn't say
there wasn't a possibility. For God sake, I wish people would read
carefully! Working at First Boston, our reports were small so there
wasn't any report over 35K. Additionally, since most of my products are
designed to help you, I never get into seeing the billions and billions
(sorry Carl Sagen) of possibilities a client may have. Only now do I
have just 2 clients and neither of them has a reporting need of that
magnitude. Their requirements are to upload information to the mainfram
using CLIRMA and only to spit out 1 line of paper telling if the
transaction made it.
So it all depends on our experiences and what life confronts us with. If
you must speak out on this issue... fine. Just remember, while you've
seen large reports... I've seen other perspectives which is why I write.
Just thought I'd add that perspective. take care,
Steve
Msg#4162 To:DAVE LOBEL
From:MARK WOLLAM Date:05/07/88
Subject:(R)SET RELATION Parent Msg#4162
------------------------------------------------------------------------------
Dave..
I don't know about RECNO()==0, but I have never had a problem getting
a field test ie... if ( empty(FIELD) ) to evaluate to True if there
was no parent-child relationship for that record.
However, DBEDIT gives me fits when I relate files and one of the child
records has no relation. Anybody know anything more about this. I
wanted to use it in the browse mode, but I gues it's work around time.
< Mark >
Msg#4163 To:STEVE STRALEY (Rcvd)
From:MARK WOLLAM Date:05/07/88
Subject:(R)CLIPPER LOAD SIZE Parent Msg#4163
------------------------------------------------------------------------------
Steve ...
First of all a little background on the way I program...
1 > Every menu option equates to a program
2 > Every program is composed of 1 or more subroutines
( Procedures )
3 > A procedure does one thing and 1 thing only
4 > A program or procedure has 1 entry and 1 exit point
5 > Similar programs are sectioned together...
ie: all programs dealing with reports are in one
overlay
6 > Functions that are specific to a program or related
programs are included where applicable
7 > The only thing in the link root is the startup, exit
and menu driver routines and those programs or
functions that are called across logical segments.
8 > Generic procedures are used where ever possible for
example I have bounce bar selection procedure that
can handle 13 paramaters.
Now to answer your questions...
Number of program files .PRG not procedures .... 75-100
Clip Files ....Very Few ( less than a dozen usually )
Overlays ..... I use SECTION and SECTION INTO and where I
think it does some good BEGIN .. SECTION ..BEGIN SECTION..
END ... END and so on.
All are compiled with -l
I don't use a function that is nothing more than a concatenation
of other functions... usually
In straight line code I usually use IF ... ELSE ... ENDIF
IF's that need to be evaluated within loops .. DO WHILE.. FOR..NEXT
are IF()
Currently using DOS 3.3
As far as your tip.. It works great. I wrote a generic function
that accepts 4 paramaters..
1 > F,L.M .. First Get, last get, somewhere in the middle
2 > Column to flash the arrow, get row from ROW() and depending
on the key pressed ROW()-1 or ROW()+1 get the flash turned
off
3 > Y,N mandatory entry
4 > Character expression to be evaluated for additional
validation, with the function expanding it as a macro
< Mark >
Msg#4165 To:ROBERT HEYMAN (Rcvd)
From:JOHN BRISTOR Date:05/07/88
Subject:(R)CONTINUING Parent Msg#4040
------------------------------------------------------------------------------
. I'm shocked also; it's hard to believe that Steve has never
experienced or seen the need for large reports (more than 64K). For a
screen display of large reports, I use to use a PD file browser called
Browse. It came with ASM code that made it linkable and all cursor keys
were functional. Thus the user could scan up & down, left & right, top
& bottom.
Msg#4166 To:MARK WOLLAM
From:RON CALLAHAN Date:05/07/88
Subject:(R)SET RELATION Parent Msg#4162
------------------------------------------------------------------------------
A TEST FOR EOF() WILL TELL YOU IF A CHILD RECORD IS AVAILABLE. THIS HAS
ALWAYS WORKED FOR ME.
Msg#4167 To:DIRK LESKO (Rcvd)
From:JILL GOHR Date:05/07/88
Subject:(R)XTRACT Parent Msg#4122
------------------------------------------------------------------------------
Or even combine all the obj files into one in order to protect
whatever came from IDL.
Msg#4168 To:STEVE STRALEY (Rcvd)
From:JILL GOHR Date:05/07/88
Subject:DOSS CONTENTS Parent Msg#4168
------------------------------------------------------------------------------
Steve - in regards to the high-level language section, selfishly I
would rather see all code, examples, etc. in Clipper. The reason
being that a lot of people (such as myself!) don't program in those
languages, and those that do could take the concepts and convert to
asm, c, etc., while I am not capable of converting in the other
direction! Publications, like Ref(Clipper) started with all source
in Clipper, but more and more, are producing in asm and c. As I
said, purely a selfish opinion on my part.
In another lite, modifications for situation specific requirements
and enhancements can be made by most people, as long as the source
is Clipper. I have both C and ASM compilers and use them for very
MINOR changes, but an attempt at a complex change, usually results
in interesting, but undesired results!! Eventually I can break a
complex piece of Clipper code down, but ASM and C, well ....
... Jill
Msg#4169 To:ALL
From:JILL GOHR Date:05/07/88
Subject:ACHOIC.ARC
------------------------------------------------------------------------------
Has anyone compiled the demo from ACHOIC.ARC? I get a good(?)
compile, but the program just dies when loading.
Msg#4170 To:MARK WOLLAM (Rcvd)
From:STEVE STRALEY Date:05/07/88
Subject:(R)CLIPPER LOAD SIZE Parent Msg#4163
------------------------------------------------------------------------------
Good news Mark. First, try NOT to use CLP files. If you were to
create a dummy .PRG file that you poured all of the .PRG's making up the
CLP files into, you'll note a reduction in symbol and code table sizes.
THis in turn will reduce the size of the .EXE. In my applications, when
I'm ready to deliver and if they are too large, I usually have just 3 or
4 .PRG's, no CLP files! Also try implied nesting of overlays rather
than the SECTION INTO command. It seems that PLINK86 takes more overhead
for this specific command rather than implied nested overlays. Hope this
helps and glad the tip helped. Take care,
Steve
Msg#4171 To:JOHN BRISTOR (Rcvd)
From:STEVE STRALEY Date:05/07/88
Subject:(R)CONTINUING Parent Msg#4040
------------------------------------------------------------------------------
Will somone please read the previous messages. I don't think I said I
don't see the need.. just that the clients and employers I've worked for
(NAntucket incluiding) never had them. For Pete's sake... listen people!
Thanx!
Steve
Msg#4172 To:JILL GOHR (Rcvd)
From:STEVE STRALEY Date:05/07/88
Subject:(R)DOSS CONTENTS Parent Msg#4168
------------------------------------------------------------------------------
Thanks for the public message. As you know, my philosophy is to agree
to keep most of the stuff in Clipper. Indeed, it took me a while to
learn C and I don't see too many consultants having that luxary of time
to learn it. So the focus of DOSS will always be in Clipper... pure
Clipper. On the other hand, I think quite 1/4 page snidbits on C, ASM,
and overlay logic is in order... especially since Clipper can interface
with them so nicely. Additionally, I'm working out the details for a
new book on learning C through experiences and understanding of Clipper.
Kindof like a primmer for C programming through the eys of Clipper. I
figured the best way to teach something is to give a base knowledge.
I'll keep you posted. Take care,
Steve
ps. I guess that was kinof promotional, but I've seen other reference
to otherthings, so what the heck... sorry for the slip!
Msg#4175 To:ALL
From:STEVE STRALEY Date:05/07/88
Subject:NEW ERROR
------------------------------------------------------------------------------
Just thought I'd let everyone know the latest inconsistency in OUR
favorite product. Consider the following code extracts:
whatkey = LASTKEY()
IF whatkey = 28
* Process
ELSEIF
ENDIF
This yields a type mismatch on the "IF whatkey = 28" within a UDF
processed by the MEMOEDIT() function. As soon as I change it to the
following:
whatkey = LASTKEY()
DO CASE
CASE whatkey = 28
* Process
OTHERWISE
ENDCASE
The thing works. Just thought you'd all like to know before you
start pulling out your hairs... like I did. Hope this type of extra
helps, and until I send out DOSS, I'll keep posting such goodies
here. Take care,
Steve
Msg#4176 To:STEVE STRALEY (Rcvd)
From:HARRY VANTASSELL Date:05/08/88
Subject:D.O.S.S COMMENTS Parent Msg#4176
------------------------------------------------------------------------------
Steve: I read your proposed newsletter "FROM D.O.S.S." and I gotta
comment that it is provocative and I do agree with your general
thoughts on the dBASE standards committee headed by Mr. Reinhardt.
.
You missed a golden opportunity to probe into why the ALLTRIM()
does require more EXE file space than does the LTRIM(TRIM()). You
could have pointed out that any of the ASM or C derived functions
in the EXTEND library call the EXTEND module (1634 bytes), but this
is done in exact accordance with all the wishes of the "... why
doesn't Clipper only link in the required modules" folk.
.
Yep, I too am a long time BRIEF user and fanatic. You could have
provided a Brief macro to globally change the 100 occurrences of
ALLTRIM() to LTRIM(TRIM()) in your SST prg files.
.
Were you just jesting when you stated, "While DBEDIT() maintains
its basic configuration from the Autumn 86 days, the major new
enhancement with this function is the ability to pass DBEDIT()
the name of a user defined function."? Surely you must know that
this passing of a UDF ability has been a part of DBEDIT() since it
first was first introduced into the language with the A'86 bug-fix
release in Nov '86.
.
Overall a thought provocative and enjoyable start. Have you thought
of being a columnist in DBA?
Msg#4178 To:HARRY VANTASSELL (Rcvd)
From:STEVE STRALEY Date:05/08/88
Subject:(R)D.O.S.S COMMENTS Parent Msg#4176
------------------------------------------------------------------------------
Thanks for the added comments. I felt that the "in-depth" stuff will be
in an added section called "advanced topics" where such issue like why
ALLTRIM() is large could be handled. As for DBEDIT(), remember Harry,
this newletter is for a wide range of subscribers and most of them,
unlike us, look only to the confines of the first manual... and some
still use Winter 85: I know, I get letters all of the time. As far as
writing Brief macros, that (I thought) rellay wasnt' the focus of the
review. I want to have a place where people can get general related
information on relative products without getting too technical. Kindof
like someone out there knowing a better text editor than EDLIN but isn't
sure of any name.
Thanks for the comments, and one thingI want to point out is that this
issue (rough in format) has 2 sections left out including letters and
comments: so your response to me would be perfect in the next
newletter...
As far as writing for DBA: NO WAY! I proposed a series of articles for
them a year ago and didn't want anything to do with Clipper programming.
I guess they avoid it because of REFERENCE(Clipper)... which I am a
columnist for. Thanks for the comments on my VIEWS sections: every
month I'll be taking a stab at some of the inconsistences within the
industry. And more important: as I start the seminars, I'll be
listening to better ways, more tricks and tips, and new ideas and they
will be recorded every other week in this (DOSS) forum.
Glad you enjoyed it. Take care,
Steve
Msg#4181 To:STEVE STRALEY (Rcvd)
From:JILL GOHR Date:05/08/88
Subject:(R)DOSS CONTENTS Parent Msg#4168
------------------------------------------------------------------------------
No apology needed ... besides I didn't see even a tiny flash of neon!!
Msg#4184 To:ALL
From:MARC SCHNAPP Date:05/08/88
Subject:INT'L USER GROUP
------------------------------------------------------------------------------
A great new BBS of interest to the entire Dbase
language community has just started up in NY. It's
the national BBS for the International Dbase Users
Group (IDBUG).
This organization seeks your participation and will be
publishing a monthly IDBUG Journal with such great
columnists as PL Olympia and Russell Freeland (of Data
Based Advisor fame). Wan t more? How about Steve
Straley, author of "Programming in Clipper" and the
Steve Straley ToolKit?
Check it out! (212) 869-3923
Msg#4185 To:JOE BOOTH (Rcvd)
From:ABE RICE Date:05/08/88
Subject:(R)POPUP CALCULATOR
------------------------------------------------------------------------------
Hi Joe,
I d/l jbcalc10, and with very minor changes was able to included
it into my summer 87 code. I would still be interested in seeing
others that have been done, so long as they do not require outside
libraries that I do not have (I only have IDL and SST).
Yours,
Abe
Msg#4187 To:ALL
From:ABE RICE Date:05/08/88
Subject:CLIPPER & NETWORKS Parent Msg#4187
------------------------------------------------------------------------------
To all,
I have two questions that relate to networks. (Although I'm using
3Com, this is a rather generic question.)
.
.
1. I would like to copy a file within clipper by exiting to DOS
and typing COPY <file> <destination>. This is much faster than the
Clipper COPY TO command. But in order to protect the integrity of
the file, I open it in Clipper and lock it. Problem: Since it is
opened in Clipper, DOS won't copy it. I get a file sharing error. ??
This also happens if I try using the Clipper COPY FILE command!
.
.
2. If one is updating a record with live indexes should one lock
the entire file since if someone else has the same file in use and
updates another record on the same file one persons index will
overwrite the others? Or does a change to the index file only affect
the record in question?
Tanks
Abe
Msg#4190 To:ABE RICE (Rcvd)
From:JOHN BRISTOR Date:05/09/88
Subject:(R)CLIPPER & NETWORKS Parent Msg#4187
------------------------------------------------------------------------------
. Abe, you might want to try opening the file with the low-level
file commands then copy that file to another handle or file name.
If you have IDL, the f_copy or f_copyf commands should work.
Msg#4191 To:ABE RICE
From:STEVE STRALEY Date:05/09/88
Subject:(R)DOSS
------------------------------------------------------------------------------
You a quite welcome Abe... It was my pleasure. Do you think tips like
that are worth printing (fascious question of course). Thanks again,
and keep turned to this bat chanel... oh no, too much TV... Take care,
Steve
Msg#4193 To:MARK NEIDORFF (Rcvd)
From:MARGIE SIEGEL Date:05/09/88
Subject:(R)MODEMS Parent Msg#1681
------------------------------------------------------------------------------
I would love to be part of a group contact to Nantucket. We are a very
large user of Clipper and have quite a few questions for them. Have you
gotten Summer '87? Have you gotten the updates? OY!
Msg#4197 To:STEVE STRALEY (Rcvd)
From:MARGIE SIEGEL Date:05/09/88
Subject:(R)UPCOMING RELEASES Parent Msg#2024
------------------------------------------------------------------------------
Could you repeat the name of your book? It sounds like I might be
interested in buying it!
Msg#4198 To:ROB HANNAH (Rcvd)
From:MARGIE SIEGEL Date:05/09/88
Subject:(R)CLIPPER S87 Parent Msg#3478
------------------------------------------------------------------------------
Documentation is not significantly better. Compile and link are
significantly faster though. I like the new SWITCH command to allow yhou
to compile and link each module separately and call them from your
progarm.
Msg#4199 To:MARGIE SIEGEL
From:STEVE STRALEY Date:05/09/88
Subject:(R)UPCOMING RELEASES Parent Msg#2024
------------------------------------------------------------------------------
The name is "Programming in Clipper" published by Addison-Wesley. The
second edition is off to them now for plates and final proof. That
edition should re-stock the bookshelves in June..July. Thanks for the
inquiry,
Steve
Msg#4203 To:ALL
From:MENACHEM BAZIAN Date:05/09/88
Subject:OVERLAYS Parent Msg#4203
------------------------------------------------------------------------------
Hi All,
I am programming an application that I believe (I am not 100% sure yet)
will be large enough to require overlays.
I have been dbase/clipper coding for over two years but this is my first
overlay situation.
Any hints out there as to how I can go about this?? Are there any special
coding requirements??
Can I place the overlays in .OVL files if I want (to make the program
transportable on 360K diskettes) ??
I would appreciate any suggestions.
BTW< I am using S' 87.
Reply here or on the Dbase Conference.
Menachem
Msg#4204 To:ALL
From:CHRISTOPHER EDGAR Date:05/09/88
Subject:MULTI DEMENTIONAL ARRAYS Parent Msg#4204
------------------------------------------------------------------------------
Does any one know of a quick & easy way to do multi-dementional arrays
(matricies) in S'87? I thought you could do it in QS, but I need to
incorporate into a small application. The simpler, the better. Thanx,
--Christopher
Msg#4206 To:CHRISTOPHER EDGAR (Rcvd)
From:DIRK LESKO Date:05/09/88
Subject:(R)MULTI DEMENTIONAL ARRA Parent Msg#4204
------------------------------------------------------------------------------
Nantucket has supplied the UDF in several publications. the following UDF
will imitate a multi dementional array.
DECLARE array_name[array_udf(5*3)]
*******
FUNCTION array_udf
parameters X,Y
return(x*y)
this simulates a 2dim array with 5*3 elements - 15 total. To access an
element, use the same array_udf() function as follows:
mem_var = array_name[array_udf(2*1)]
That will extract the 1st subscript of the second element.
dLESKo
Msg#4207 To:DIRK LESKO (Rcvd)
From:CLIFF GREEN Date:05/09/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
hmm. Lemmesee, I've got Word Perfect on that machine, but MSW on two of
the other machines in the office, so I guess the same algorithm ought
to be workable. Where are you (in case I can stop by), or if not, sure -
a description of the idea ought to work. I'm still toying with the idea
of doing it in Clipper, though (truth is, I set up this last month's
letters and reports for the BoT's in Word Perf., and it's perfectly
doable, just takes a bit more patience and hand-holding till the user
gets the idea).
Msg#4208 To:TIM CREAGH
From:CLIFF GREEN Date:05/09/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
Tim, there are a couple of ways to print a memo or stringvar. How have
you been trying to do it (i.e., with what kind of code)? I found two
possible solutions over the weekend: on on p. 3-40 of the S87 Change
Summary which uses MLCOUNT() and MEMOLINE(). However, my favorite uses
FWRITE() (see pp. 3-36 to 3-37 in the Change Sum). See the following code
fragment:
** My printer won't print the last line w/o a CRLF at the end
CRLF=CHR(13)+CHR(10)
OUTFILE=[FILEOUT] && Use the filename of your choice - just testing
MORE=.F. && presetting loop prompt memvar
MMO=.T. && set true if there's a memo for this record
CLEAR && self evident
USE VOL6 && put your .DBF fname here
PRN=4 && handle preassigned to STD LIST by DOS
GO TOP
DO WHILE .T.
CLEAR
IF LEN(TRIM(ARTSUMRY))#0 && ARTSUMRY is the memo field in VOL6
** do the edit, but use more reasonable margins than this
TXT=MEMOEDIT(ARTSUMRY,5,10,10,50,.T.)
REPLACE ARTSUMRY WITH TXT && stuff it back in .DBT
HARDTXT=HARDCR(TXT) && convert soft CR's
MMO=.T.
ELSE
? [NO MEMO DATA]
MMO=.F.
ENDIF
@ 15,10
WAIT [PRINT TO FILE? (Y/N)... ] TO FPRNT
IF FPRNT$[Yy]
MEMOWRIT(OUTFILE,HARDTXT) && print to file- no append
ENDIF
@ 15,10 CLEAR
WAIT [PRINT TO PRINTER? (Y/N)... ] TO PPRNT
IF PPRNT$[Yy]
** next line adds CRLF on last line if not already there (see
above)
HARDTXT=IIF(RIGHT(HARDTXT,2)=CRLF,HARDTXT,HARDTXT+CRLF)
FWRITE(PRN,HARDTXT) && AHA! This is where the action is!
ENDIF
WAIT [MORE? (Y/N)..... ] TO MORE
IF MORE$[Yy]
SKIP && Lala, this should be obvious by now
ELSE
EXIT
ENDIF
ENDDO
Msg#4211 To:MENACHEM BAZIAN (Rcvd)
From:TONY KIRK Date:05/09/88
Subject:(R)OVERLAYS Parent Msg#4203
------------------------------------------------------------------------------
I have this haunting feeling that others more qualified (Dirk, Steve,
etc.) will answer this question for you. I have, myself, been using
overlays for a pretty long while. It was almost a necessity when using
version 2 of R&R. Anyway, depending on what you get from others, I'd be
glad to discuss my experiences. I just _hate_ being "shown up" by these
guys, ya know?
-Tony
Msg#4212 To:CLIFF GREEN (Rcvd)
From:DIRK LESKO Date:05/09/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
I handle Word Perfect as well. The algorithm is very simpl. Just create
a text file delimited by ^R and ending in a ^E. If you can stop by, I am
in jersey City, just 5 minutes from the Holland tunnel. Let me know...
dLESKO
Msg#4213 To:CLIFF GREEN (Rcvd)
From:DIRK LESKO Date:05/09/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
You can also use the same code to print to a file or to the printer
without having to use an IF/ENDIF statement. DOS treats the printer just
liike a file, so you can use the 'PRN' or 'LPT1' filename to print
instead of to a file. Your code could be:
if <printflag>
memowrite("PRN", memo_var)
else
memowrite(<filename>, memo_var)
endif
memowrite will open the file 'PRN' which will then write the memo field
to the printer. This will also work with the fopen() function. Just do an
fopen("PRN") to open a channel to the printer. Then any text you write
with fwrite() that usees the handle returned by the fopen("PRN")
function will go to the printer.
dLESKO
Msg#4214 To:TONY KIRK (Rcvd)
From:DIRK LESKO Date:05/09/88
Subject:(R)OVERLAYS Parent Msg#4203
------------------------------------------------------------------------------
Who's showiing who up anyway????? I hhaven't used an overlay in more than
a year now. And I haven't used Plink in about a year and a half......
dLESKo
Msg#4215 To:ALL
From:DIRK LESKO Date:05/09/88
Subject:CONFERENCE Parent Msg#4215
------------------------------------------------------------------------------
Hi all, just thought you'd like to know that from now on, the contents of
this conference will be sent directly to Nantucket so that user needs
can be addressed more quickly. If you want to make sure that nantucket
views your thoughts/opinions/tricks, make sure thatyou post them iin a
public message since I will not be sending any private messages to them.
To start I will be sending them all the gripes and comments concerning
the new Summer87 compiler (Autumn is dead!! Long live Summer!) So, now we
have a direct connection here!! Let's make the most of it!
Thanks...
dLESKO
Msg#4217 To:DIRK LESKO (Rcvd)
From:TONY KIRK Date:05/09/88
Subject:(R)OVERLAYS Parent Msg#4203
------------------------------------------------------------------------------
Showing me up? Nah... I got burned kinda bad on CompuServe after
leaving some code fragments as an example/description. The message got
through okay, but then the messages were asking why the "program" I left
was written the way it was (remember, these were just fragments). Kinda
ticked my off and embarassed me at the same time (the forum messages are
public, you know). I tried to help someone and was embarassed by it.
-Tk
Msg#4218 To:DIRK LESKO (Rcvd)
From:TONY KIRK Date:05/09/88
Subject:(R)CONFERENCE Parent Msg#4215
------------------------------------------------------------------------------
Killer idea!
Msg#4220 To:JOHN BRISTOR (Rcvd)
From:ABE RICE Date:05/09/88
Subject:(R)CLIPPER & NETWORKS Parent Msg#4187
------------------------------------------------------------------------------
Hi
I should have mentioned that I cannot copy in the file in DOS (!
copy <> <>), so why would a lower level file function (that uses DOS
func calls) work any better?
Yours,
Abe
Msg#4224 To:DIRK LESKO (Rcvd)
From:HENRY ABELMAN Date:05/09/88
Subject:LIBRARY OVERHEAD
------------------------------------------------------------------------------
Thanks to XTRACT and my own ingenuity, I managed to put all of SST into
separate files - over 320. Well, the overhead was massive. First, the
LIB file increased from about 200K to almost 500k. Then TLINK blew a
gasket trying to load a simple demo
Msg#4225 To:MENACHEM BAZIAN (Rcvd)
From:MARK NEIDORFF Date:05/09/88
Subject:(R)OVERLAYS Parent Msg#4203
------------------------------------------------------------------------------
First, avoid overlays. That is if you want to keep your hair.
If you get real tight, change procedure and function names to 1 or 2
letters each. This helps. *tighten up all code. Keep memory variables
to a minimum.
But, if overlay you must, why don't you use PKARC to make the files self
extracting and small enough to fit on floppies. Don't laugh.
Information Builders (the makers of FOCUS and pcFU (oops) PCFOCUS {grin}
use PKXARC on their Report Writer for dBase.
Hope this little bit helps.
<< Mark >>
Msg#4227 To:DIRK LESKO (Rcvd)
From:MARK NEIDORFF Date:05/09/88
Subject:(R)CONFERENCE Parent Msg#4215
------------------------------------------------------------------------------
Send Nantucket EVERYTHING (except the dead horse, of course). They need
to know just what we ALL are experiencing both good and bad and worse.
<< Mark >>
Msg#4229 To:CLIFF GREEN (Rcvd)
From:MARK SEIDEN (SYSOP) Date:05/09/88
Subject:(R)TRASH Parent Msg#3976
------------------------------------------------------------------------------
Hi Cliff,
Well, if someone wants to do the leg work, I have no problem
seperating them into different directories. The one problem that I can
for see is that every upload must list which release it is for. It will
not take up anymore disk space since they are just text files.
In relation to keeping old versions, if they are used I have no
problem until disk space becomes tight again. But we are a little away
from that at this time.
Please let me know what everyone decides, and if it is more than one
directory, someone has to give me a list of all the breakdowns. Mark
Msg#4230 To:MARK NEIDORFF (Rcvd)
From:TONY KIRK Date:05/09/88
Subject:(R)MULTI DEMENTIONAL ARRA Parent Msg#4204
------------------------------------------------------------------------------
Nice!
Msg#4237 To:ABE RICE
From:JOHN BRISTOR Date:05/10/88
Subject:(R)CLIPPER & NETWORKS Parent Msg#4187
------------------------------------------------------------------------------
. I couldn't tell you why it should work any better, but using the
low level file functions for copying files has gotten me around several
file sharing problems in a network environment.
Msg#4240 To:DAVE LOBEL
From:JOE BOOTH Date:05/10/88
Subject:(R)SET RELATION Parent Msg#4132
------------------------------------------------------------------------------
I ran into a similar problem to what you are describing. I had an index
and a filter set up. No records in the related database matched the
filter, and it gave me an error complaining about the key not found. I
will try to document it better and upload the code sample.
Msg#4241 To:MARK WOLLAM (Rcvd)
From:JOE BOOTH Date:05/10/88
Subject:(R)PARAMETER TESTING
------------------------------------------------------------------------------
I know about not having to pass all the parameters. Another trick I use
is to test the type of a variable containing references to a work area.
I.E.
IF TYPE("param1") = "N"
SELECT (param1)
ELSE IF TYPE("param1") = "C"
SELECT ¶m1
ENDIF
I have written several UDF that I use frequently, and when I share them
with other people, I try to accomodate different people's tastes. I
always use CHARACTER work alias, but not everyone codes the same way.
Thanks for your comments
Msg#4242 To:TIM CREAGH (Rcvd)
From:ROB HANNAH Date:05/10/88
Subject:LOTUS DATA ENTRY Parent Msg#4242
------------------------------------------------------------------------------
I uploaded the file cl86-123.arc. Though written in Autumn 86 (and
Lattice C), it should be easy to recode for Summer 87. I trimmed as much
as I could from the code to make it easier to understand. Good luck!
ROB
Msg#4246 To:MARK NEIDORFF (Rcvd)
From:DIRK LESKO Date:05/10/88
Subject:(R)CONFERENCE Parent Msg#4215
------------------------------------------------------------------------------
The dead horse has been buried, and shall neer been seen nor heard from
again.....
dLESKO
Msg#4248 To:ALL
From:DIRK LESKO Date:05/10/88
Subject:CONFERENCE
------------------------------------------------------------------------------
I have sent off all the messages starting with the new Summer87 update
off to Nantucket for review. I think they will get the point on there
manual upgrade (to say the least).
dLESKO
Msg#4250 To:ALL
From:STEVE STRALEY Date:05/10/88
Subject:BETA Parent Msg#4250
------------------------------------------------------------------------------
In the next couple of months, I'll need to have a few GOOD volunteers
with the following requirements...
1> Owner of Clipper
2> Owner of SSTKit
3> Owner of at least a 286 machine
4> Familiar with the concepts in my previous book
5> WILL SERIOUSLY DEVOTE at least 1/2 PER DAY to being a beta test site
All SERIOUS inquiries, please send a PRIVATE message to me telling why
you want to be a beta site and where you are located in the country, and
years of Clipper expreience. I don't mean to sound curt, but I really
want people to work with me in the next 2 months to get my next vehicle
out on the production line. Please, only those with the time and energy
to volunteer, please write me.
Thanx,
Steve Straley
Msg#4251 To:ALL
From:HAWKINS DALE Date:05/10/88
Subject:RANDOM NUMBER GENERATOR Parent Msg#4251
------------------------------------------------------------------------------
I need random numbers. Has anyone seen a function that will give me a
random number in a Clipper program?
-- Hawkins
Msg#4253 To:ALL
From:MARC SCHNAPP Date:05/10/88
Subject:DEVELOPER'S CONFERENCE
------------------------------------------------------------------------------
If you are planning to go to the Clipper Developer's conference in LA
June 6-8-- you may be able to get a discount via NYMCUG. If you are a
membe_], please call Marc Schnapp at (718) 380-6175. I need a 3rd person
to obtain a 10% discount within the next day or so.
If you are NOT a member- here's a great way to join-- the discount is
roughly equivalent to the membership dues $50.
Msg#4254 To:DIRK LESKO (Rcvd)
From:KELLY STANONIK Date:05/10/88
Subject:(R)LIBRARIES Parent Msg#4144
------------------------------------------------------------------------------
Hmmm, that's interesting. You've given me some ideas.
Msg#4256 To:DIRK LESKO (Rcvd)
From:CLIFF GREEN Date:05/10/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
will let you know.
re: ^R and ^E, right, I found that in an arc file called MAILLIST, which
included some usable code (e.g., easily carved out of their code) to do
just what we've been talking about as far as creating the merge (data)
file is concerned. On the other hand, it'd be nice to have a reference
to what the other embedded WP codes are, too. (uh, on reflection, that
looks like spaghetti English -- bad form, you know.)
Msg#4257 To:ALL
From:JOHN DUKE Date:05/10/88
Subject:GENIFER
------------------------------------------------------------------------------
Has anyone out there gotten hold of the new version of GENIFER v2.0.
Supposedly will generate CLIPPER code now. If so any comments. Is it a
real significant release over 1.1 and more importantly does it handle s87
clipper, and does it do it well.
Msg#4258 To:DIRK LESKO (Rcvd)
From:CLIFF GREEN Date:05/10/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
I tried the memowrite("PRN",something) route, and must have bungled it,
cause it wouldn't write to my printer (the compiler and linker didn't
complain, though). Also, you shouldn't need to use FOPEN() on PRN, since
it's already opened for you by DOS. I just used the PRN=4 line to make
it look fancy and make the FWRITE(PRN,something) line more self-evident
to me (selfish, selfish <sigh>).
Msg#4259 To:MARK SEIDEN (SYSOP) (Rcvd)
From:CLIFF GREEN Date:05/10/88
Subject:(R)TRASH Parent Msg#3976
------------------------------------------------------------------------------
Mark,
if the vote goes FOR keeping a all the files listed in different
directories, I'll volunteer to help sift through it all and categorize.
If the vote is NAY, then so be it. Also, if it's AYE and disk space gets
tight (gonna happen sooner or later), then whoever categorizes the stuff
ought to also have guidelines for prioritizing so the more desirable
stuff is still accessible and the flotsam can be let go.
Anyone have any guidelines for sifting and prioritizing? Or is it
up to whoever does the job?
Should it come to it, let me know here, and we can work out how I
(or whoever) can rummage through all of it.
-cg
Msg#4260 To:TIM CREAGH
From:CLIFF GREEN Date:05/10/88
Subject:(R)OSG104.ARC Parent Msg#3907
------------------------------------------------------------------------------
Tim, be aware that Project X changed their phone number to 215-879-8225.
Also, I got OSG105 and just this afternoon started playing with it. Will
let you know if there's any point in using it. So far, it looks like
most other screen painters, though maybe not as nice as some. It only
puts out two general kinds of file: .OBJ code ("flat" or relocatable) or
a plain ascii image. At least WYSI (the "beta"/demo of UI)would give you
a .PRG file if you asked for it.
Msg#4262 To:HAWKINS DALE
From:DIRK LESKO Date:05/10/88
Subject:(R)RANDOM NUMBER GENERATO Parent Msg#4251
------------------------------------------------------------------------------
Yes Hawk.....can I call you that??? I do know of a random number
generator.....I just wrote one for you. Downlod the file RANDOM.ARC and
give it a looksee......
dLESKO
Msg#4263 To:DIRK LESKO (Rcvd)
From:TOM WYRICK Date:05/10/88
Subject:(R)STUFF
------------------------------------------------------------------------------
Thanks Dirk, I got it in the mail while I was on vacation - what a
surprise. I have not got to use it as yet - still reviewing the
functions, but should start this week.....
-Tom
Msg#4264 To:DIRK LESKO (Rcvd)
From:ALAN KOBB Date:05/10/88
Subject:(R)CONFERENCE Parent Msg#4215
------------------------------------------------------------------------------
Dirk,
Does that mean that someone at Nantuckett will be reading these
wonderful snippets of brilliance? Who are you sending them to?
--Alan--
Msg#4266 To:KELLY STANONIK (Rcvd)
From:ROBERT HEYMAN Date:05/10/88
Subject:(R)CONTINUING Parent Msg#4040
------------------------------------------------------------------------------
Gee...I'm almost sorry I started this 64K file size thread...
but....I was thinking along the same lines a Kelly re: IDL...
the view.com file I RUN out of clipper now is about 850 bytes..
something similar in assembler linked via IDL into clipper would
be kinda nice.
Rob
Msg#4267 To:DIRK LESKO (Rcvd)
From:ROBERT HEYMAN Date:05/10/88
Subject:(R)RANDOM NUMBER GENERATO Parent Msg#4251
------------------------------------------------------------------------------
What a guy! (grin)
Msg#4270 To:ROB HANNAH (Rcvd)
From:TIM CREAGH Date:05/10/88
Subject:(R)LOTUS DATA ENTRY Parent Msg#4242
------------------------------------------------------------------------------
Rob, I'll look at it tonight and let you know. Thank you for taking the
time to upload the file for me, this thing has been driving me crazy.
-tim-
Msg#4271 To:CLIFF GREEN (Rcvd)
From:MARK NEIDORFF Date:05/10/88
Subject:(R)TRASH Parent Msg#3976
------------------------------------------------------------------------------
Hi Cliff,
Kind of hard to decide. What looks like a junk file to one person may
be just the thing another person needs. I think that version priorities
are the only way we can possibly go.
<< Mark >>
Msg#4273 To:ALL
From:MARK WOLLAM Date:05/10/88
Subject:SET SOFTSEEK Parent Msg#4273
------------------------------------------------------------------------------
Has anyone experienced with clipper's new softseek command ( problems
that is )
Here is my test the DOESN'T WORK
file is indexed on DTOS(DATE_FIELD)
Known Records ... 01/04/88...01/06/88
set softseek on
searchkey = ctod('01/01/88')
seek searchkey
... returns EOF()
< Mark >
Msg#4274 To:ALAN KOBB (Rcvd)
From:DIRK LESKO Date:05/10/88
Subject:(R)CONFERENCE Parent Msg#4215
------------------------------------------------------------------------------
I've got an OK to ship thesemessages directly to the eyes of Ray Love.
While he does not have the time to call in and answer stuff, we will be
keeping each other up to date on matters. ANd I will definnately pass on
any info....
dLESKO
Msg#4278 To:MARK WOLLAM (Rcvd)
From:TONY KIRK Date:05/11/88
Subject:(R)SET SOFTSEEK Parent Msg#4273
------------------------------------------------------------------------------
Is the "ctod('01/01/01')" a typo? If not, maybe the difference in the
DTOS (index key) and the CTOD (seek value) functions is it.
Tk
Msg#4279 To:TONY KIRK (Rcvd)
From:MARK WOLLAM Date:05/11/88
Subject:(R)SET SOFTSEEK
------------------------------------------------------------------------------
Yes... its a typo code reads ctod('01/01/88')..
< Mark >
Msg#4281 To:MARK WOLLAM (Rcvd)
From:STEVE STRALEY Date:05/11/88
Subject:(R)SET SOFTSEEK Parent Msg#4273
------------------------------------------------------------------------------
Since you called me personally on this Mark, I thought I'd share it with
everyone else. No this doesn't work mainly because the date is outside
of the julian date library. This is accomplished with the DTOS()
function. And to my knowledge, SET SOFTSEEK only works with numbers and
dates. So since the date is converted to a string, it won't work. Hope
that helps...
STeve
Msg#4282 To:STEVE STRALEY (Rcvd)
From:CHRISTOPHER EDGAR Date:05/11/88
Subject:(R)MULTI DEMENTIONAL ARRA
------------------------------------------------------------------------------
Thanks a bunch, steve -- Christopher
Msg#4283 To:MARK NEIDORFF (Rcvd)
From:CHRISTOPHER EDGAR Date:05/11/88
Subject:(R)MULTI DEMENTIONAL ARRA
------------------------------------------------------------------------------
Thanks alot, mark -- I'll give it a try
-- Christopher
Msg#4285 To:TONY KIRK (Rcvd)
From:MENACHEM BAZIAN Date:05/11/88
Subject:(R)OVERLAYS Parent Msg#4203
------------------------------------------------------------------------------
Well, Tony, Anything u can give me will be appreciated. This my first try
with overlays.
>MB<
Msg#4286 To:TONY KIRK (Rcvd)
From:MENACHEM BAZIAN Date:05/11/88
Subject:(R)OVERLAYS Parent Msg#4203
------------------------------------------------------------------------------
Tony,
Different programmers will do the same thing different ways. To ask
someone "Why do it this way?" for reasons other than attempting to
understand the code, is unkind, to say the least. The "I can do it better
than you can" syndrome is very childish.
>MB<
Msg#4288 To:MARK NEIDORFF (Rcvd)
From:MENACHEM BAZIAN Date:05/11/88
Subject:(R)OVERLAYS Parent Msg#4203
------------------------------------------------------------------------------
Thanks Mark,
I am more concerned with overloading memory than Diskette space. If I
have to require the user to run it on a hard drive that is not too
terrible. After all, most businesses that use PC's have hard drives.
The need for overlays will probably be caused by the sixe of the code.
According to nantucket (This was with a' 86 so I don't know if it is
still applicable), if ur code is greater than 400K you'll probably need
overlays to get it all to fit in memory.
I think that I will break that 400K barrier without breaking a sweat on
this one.
>MB<
Msg#4289 To:HAWKINS DALE (Rcvd)
From:MENACHEM BAZIAN Date:05/11/88
Subject:(R)RANDOM NUMBER GENERATO Parent Msg#4251
------------------------------------------------------------------------------
Hawkins,
I had a similar situation. I can think of two solutions to ur problem
right off.
1. There is a file of UDF's here designed by Tom Rettig. it is an .lib
file and one of the functions is a RAND() function.
The only problem with that UDF library is that it is written for Clipper
A'86 and will not run with s'87. Maybe an upgrade has been written, but I
don't know.
2. Nantucket gave me a function for random numbers. It is really a pseudo
generator and you would have to come up with a timer seed of your own to
get it to runproperly. I will try to find the code for it and upload it.
(Or, just call nantucket and they will give it to you. It is just a
couple of lines.
There is one other solution, but I hate tp even mention it. Write a small
basic program that will generate a series of random numbers and write it
to an SDF file. Then read it into a database and select from the
database.
I hope that helps. I will try to find the code (and the name of TR's UDF
library).
Good Luck,
>MB<
P.s. I am curious as to what u need it for...
Msg#4291 To:ALL
From:ABE RICE Date:05/11/88
Subject:R&R AND IDL Parent Msg#4291
------------------------------------------------------------------------------
Hi
Just wanted to inform anyone using IDL and R&R that the clock()
function in IDL will conflict with the runtime of R&R.
Your will have to leave out clock() or get another program from
Concentric.
Hey Dirk, you think you can fix this?
Abe
Msg#4292 To:DIRK LESKO (Rcvd)
From:CHRISTOPHER EDGAR Date:05/11/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
Hi, Dirk...
I'm uploading a file called WPMERGE.ARC that will create WordPerfect
Secondary Merge files from dbase files. It's a pretty neat programin how
works - and it does work well. I agree you need to let programs do what
they do best. I especially like Wordperfect's ability to handel blank
lines in fields (wpmerge takes care of that too.) only problem (?) is
that it only works under the dbase interpreter. Let me know what you
think.
--Christopher
Msg#4294 To:TIM CREAGH (Rcvd)
From:CLIFF GREEN Date:05/11/88
Subject:(R)OSG104.ARC Parent Msg#3907
------------------------------------------------------------------------------
Oh yeah. I forgot to mention SCRIMAGE, by Russell Freeland. This one
has real possibilities, and will also put out .PRG code.
Msg#4296 To:ABE RICE
From:DIRK LESKO Date:05/11/88
Subject:(R)R&R AND IDL Parent Msg#4291
------------------------------------------------------------------------------
I am checking into it.
dLESKO
Msg#4297 To:CLIFF GREEN (Rcvd)
From:DIRK LESKO Date:05/11/88
Subject:(R)OSG104.ARC Parent Msg#3907
------------------------------------------------------------------------------
Scrimage also pumps out IDL screen memvars.....
Msg#4299 To:STEVE STRALEY (Rcvd)
From:MARK KASS Date:05/11/88
Subject:MASM 5.0 LINK Parent Msg#4250
------------------------------------------------------------------------------
I'm having a problem with MASM 5.0 Link and Summer '87. The obj files
link without any problem, but when I execute the thing I get a message of
"Packed file corrupted". Nantucket said to increase the segments from
256, which caused not problems with the old release of clipper, to 512.
It still produced the same error message - I finally quit when I
increased the segments to 1024 and it still bombed. Does anyone have
any suggestions ?
Mark
Msg#4303 To:MARK WOLLAM
From:TONY KIRK Date:05/12/88
Subject:(R)SET SOFTSEEK Parent Msg#4273
------------------------------------------------------------------------------
Mark... Sorry, that was MY typo! Anyway, what I was referring to was the
fact that the file is indexed on DTOS(date_field), while you are seeking
with CTOD('01/01/88'). The conflict, as I poorly attempted to explain,
could be in the CTOD vs DTOS. Indexing on DTOS produces a CHARacter key
while the CTOD produces a DATE value to seek. It seems as if Clipper
will choke on locating a CHARacter key with a SEEK <date>.
Is use SET SOFTSEEK in many of my functions in which the user is trying
to find a record. Using DBEDIT(), the user may press a function key
which then prompts the user for the value to seek. The function makes
sure that the INDEXKEY(0) and the seeked value are of the same type.
Also, I have had no problems using SET SOFTSEEK, regardless of the field
or key TYPE (C,N,D).
If it's getting real aggrivating, I'll upload my function. I also
realize that if the DTOS/CTOD conflict IS the problem, you'll quickly be
on your way without additional help. Speaking of help, I hope I did.
Tk
Msg#4305 To:ALL
From:JOE BOOTH Date:05/12/88
Subject:NO LINK Parent Msg#4305
------------------------------------------------------------------------------
I have ordered a product called NO-LINK from develop-ease in Georgia.
Supposively, this is a dynamic library which you program can access at
run-time. If this is true, there might be an alternative to overlays.
Once it arrives, and I test it, I will share some comments.
Msg#4306 To:STEVE STRALEY (Rcvd)
From:MARK WOLLAM Date:05/12/88
Subject:SOFTSEEK Parent Msg#4306
------------------------------------------------------------------------------
Steve...
Thank you for further explaining SOFTSEEK. However, it irks me to
no end, that I spent a considerable amount of time trying to
determine why it wasn't working since Nantucket's documentation of
the feature uses a character based example... to wit to woe..
SET SOFTSEEK ON
SEEK "Findit"
In addition, I called Nantucket to report what I thought was an
"anomoly" and to get further clarification, and was told it would
cost me $25.00 since I wasn't a curent support subscriber.
I left a rather scathing message on the source to them. The jist
of which was I had no problem with a "pay as you go" support
policy for general questions and help. However, when someone
calls to report what they perceive as a "bug" or need assistance
in working around a command of function limitation, they should
not be charged. After all, we have to pay for the call anyway
and all users will eventually benefit.
So much for my soapbox.
< Mark >
Msg#4308 To:MARK KASS (Rcvd)
From:STEVE STRALEY Date:05/12/88
Subject:(R)MASM 5.0 LINK Parent Msg#4250
------------------------------------------------------------------------------
I'll like to but that's a new error message to me. You may want to shoot
that one past the ASM king himself... see if Dirk knows.. I'd be
interested as well. Take care,
Steve
Msg#4311 To:MARK WOLLAM (Rcvd)
From:STEVE STRALEY Date:05/12/88
Subject:(R)SOFTSEEK Parent Msg#4306
------------------------------------------------------------------------------
No, I think your attitude is perfectly justified. I can't agree more.
How does one know something is a "bug" to Nantucekt or a "bug" to their
code. Personally, bug for bug, I think Nantucket out-does us on every
count. And because the product has a buggy reputation, this "charge as
you go" is BULLS**T. ( I know, some of you may not believe it's me saying
this... but it is...)
I don't know what is the answer. I'm working with Alan Rivinson and with
some of the local board to help the support problem, but that is one nice
thing whihc you have pointed out that comes with the Toolkit... a direct
link to me.. on Saturdays, Sundays, and evenings. Maybe, by working
with you guys, we can focus our grips, get over our problems, and make a
difference. I sure hope so.
Take care,
Steve
Msg#4315 To:JOE BOOTH (Rcvd)
From:ROB HANNAH Date:05/12/88
Subject:(R)NO LINK Parent Msg#4305
------------------------------------------------------------------------------
I got a brochure from them yesterday - sounds very good. I wouldn't
consider using it to bypass overlays, though. It would require a copy
for each user of the program. It sounds much better as a
psuedo-intrepretive environment for Clipper.
ROB
Msg#4320 To:MARK KASS (Rcvd)
From:DIRK LESKO Date:05/12/88
Subject:(R)MASM 5.0 LINK Parent Msg#4250
------------------------------------------------------------------------------
Try linking with the line:
LINK /NOP <file>,,,clipper
That should produce an unpacked .EXE, then you can |╩x\.M│use EXEPACK to
pack it. I have not had this problem myself, but if it persis, maybe I
can look further into it.
dLESKO
Msg#4321 To:ROB HANNAH (Rcvd)
From:MARK WOLLAM Date:05/12/88
Subject:(R)SET SOFTSEEK Parent Msg#4321
------------------------------------------------------------------------------
Rob..
I really don't know what the problem I am having is then.. Here is
the exact situation and the file has been indexed and reindexed to death.
DBF structure
FCLCODE C 4
FCLNUM N 6
FPOSTDATE D 8
FPAIDAMT N 9 2
FWRITEOFF N 9 2
FPAIDREF C 15
DBF is INDEXED as FOLLOWS
DTOS(FPOSTDATE)+FLCODE ... DTOS is used because 1 I need a string
date
... and 2 I have several other procedures
that
... access this file based on year and or
month
RECORDS
There are 1731 records in the file.. the FIRST FPOSTDATE for 1988
is 01/04/88 and there are 891 additional records for 1988
CODE section
.....
sele 1
use DBFfile index INDEXfile
set softseek on
Private StartDate,StopDate,Looking
store ctod(space(8)) to StartDate,StopDate
Looking = .t.
do while ( Looking )
.... some screen @ says...
@ 15,18 get StartDate
@ 16,18 get StopDate
read
if ( ! escape() )
.... Valididation procession
.... lets say StartDate = '01/01/88' and. StopDate = '01/15/88'
SearchDate = dtos(StartDate)
seek SearchDate
if ( ! eof() )
.... more processing
else
.... display not found message && ALWAYS END UP HERE
endif
else
Looking = .f.
endif
It actually makes no difference what dates I use. If the StartDate
entered
is in the file the seek performs normally, if it is not, EOF() is ALWAYS
returned.
Now here is code that DOES work using the same data with SOFTSEEK OFF
do while (.t.)
if ( StartDate > StopDate) )
exit ... display Not found message
else
seek dtos(StartDate)
if ( ! eof() )
...... WHEN StartDate = '01/04/88'
..... the correct record is found
else
StartDate = StartDate+1
endif
endif
enddo
I don't see anything wrong. BUT SOFTSEEK DOES NOT WORK IN THIS
SITUTATION.
< Mark >
Msg#4322 To:ALL
From:DIRK LESKO Date:05/12/88
Subject:CONFERENCE
------------------------------------------------------------------------------
HI all, Nantucket has recieved the first batch of÷Q┐FF░─E╟~on█╦{ messages
I have sent them and they are enthusiastic and hungry for more. So, we
now are a voice that is really being heard. Don't lose the opportunity to
get your suggestions, gripes and bugs uploaded here. We have a wonderful
opportunity to speck DIRECTLY to the development team. ALso, I will
include all suggestions for upcomingproducts or functions in the mailings
for you. So if there is something you've always wanted, nows the chance!
dLESKO
Msg#4323 To:ROBERT HEYMAN (Rcvd)
From:KELLY STANONIK Date:05/12/88
Subject:(R)CONTINUING Parent Msg#4040
------------------------------------------------------------------------------
It would be VERY nice, and I (for one) would be willing to pay extra for
it.
Msg#4324 To:ROB HANNAH (Rcvd)
From:KELLY STANONIK Date:05/12/88
Subject:(R)SET SOFTSEEK Parent Msg#4273
------------------------------------------------------------------------------
Even so, in an date index 05/30/83 comes before 01/01/88 and in a string
index it doesn't. If you want and index that will softseek on dates you
should use a date index (as Steve suggests).
Msg#4325 To:DIRK LESKO (Rcvd)
From:MARK WOLLAM Date:05/12/88
Subject:GETS Parent Msg#4325
------------------------------------------------------------------------------
dIRK...
I am hoping you can help me. I am working on a couple of companion
functions... lets call them PUSHGETS() and POPGETS(). I have all the
pieces I need to make them work except.... How many active gets are
there at any given point in time. If you happen to have this little
piece of information tucked away in vast knowledge base, I could
certainly make use of it...
Thanking you in advance
< Mark >
Msg#4327 To:MARK WOLLAM (Rcvd)
From:DIRK LESKO Date:05/12/88
Subject:(R)GETS Parent Msg#4325
------------------------------------------------------------------------------
That's one needle in the Clipper haystack I haven;'t found5o:1╢╙|...
Msg#4331 To:MARK WOLLAM
From:BILL ELLIOTT Date:05/13/88
Subject:(R)SET SOFTSEEK Parent Msg#4321
------------------------------------------------------------------------------
Mark,
I don't have a solution for you, but just to add the general
confusion ...
I created a program and database similar to your
example, and it works just as you expect yours should work.
Maybe all S87's aren't created equal. My program never hits
eof() unless it seeks a date greater than any on the database.
Maybe somebody else can solve the mystery.
Aloha,
Bill
Msg#4332 To:ALL
From:BILL ELLIOTT Date:05/13/88
Subject:ARRAYS & C Parent Msg#4332
------------------------------------------------------------------------------
A question for anyone about using Clipper and "C" to manipulate
arrays.
Is it possible to pass a numeric array (array of integers) to a C
function, perform math on and otherwise manipulate the array elements
in C, and when you return to Clipper have access to the original array
with all its new values?
I'm asking this question for a co-worker who has already talked to
Nantucket support. Nantucket apparently said: "No, not with numeric
arrays...". I made a few crude attempts to solve the problem and
failed.
I'm sure someone (probably many someones) on this board can solve
this problem, or confirm that it can't be done. If I see it here,
I'll believe it.
Thanks for any help you can offer,
Bill Elliott
Msg#4333 To:ALL
From:JOE BOOTH Date:05/13/88
Subject:CLIPPER WISH LIST Parent Msg#4333
------------------------------------------------------------------------------
Since Nantucket will be reading this board (Thank you, Dirk) I wish to
share some of my ideas.
1. A command to SAVE GETS TO <memfile>
and a RESTORE GETS FROM <memfile>
2. When using PROMPT/MENU TO, pressing the first letter of
a prompt, causes the menu to return that number. I think
that if SET CONFIRM is ON, then the pressing the first letter
should jump to the option, but not return unless ENTER is pushed
3. Array functions
AGETfills array with contants of current record)
AREP ( writes array back into database )
ATOT ( total of a numeric array )
ASAVE( save an array to disk )
AREST( restore an array from disk )
AMAX( maximum value in an array )
AMIN( minimum value in an array )
Substring ability add to sorting arrays
4. If Nantucket has any plans to ever provide windows, I would
like to know. With all the add on products, you can cheaply
obtain window libraries, but what kind of syntax might Nantucket
support.
5. DBEDIT() to support character strings rather than arrays if only
one field from the database is to be used.
6DBEDIT() to return a record number instead of a logical value
(Returning 0 would mean the user ESCaped out)
7. Functions for LREC() - While GOTO 1 will always go to physical
record one, I'd like to see a command or function like
GOTO LREC(1) or GOTO LREC(10), which would go to the logical
record number of the controlling index.
Just a few suggestions to a great product. Thanks Dirk for providing us
this opportunity.
Msg#4334 To:MARK WOLLAM
From:ROB HANNAH Date:05/13/88
Subject:(R)SET SOFTSEEK Parent Msg#4321
------------------------------------------------------------------------------
You wouldn't happen to have SET EXACT ON would you? That looks like the
problem. Clipper S87 has a 'feature' that renders set exact funky - if
exact is on and you seek a partial record, if a record exists which meets
the partial index you get it. Otherwise you get eof() (even with
softseek)!
Try turning off exact.
ROB
Msg#4335 To:KELLY STANONIK (Rcvd)
From:ROB HANNAH Date:05/13/88
Subject:(R)SET SOFTSEEK Parent Msg#4273
------------------------------------------------------------------------------
You should never use dtoc() in an index - that causes the situation you
described. Instead, use dtos(). It produces a character string of the
form yyyymmdd, which is the same as the date format in dbf files.
ROB
Msg#4337 To:BILL ELLIOTT (Rcvd)
From:ROB HANNAH Date:05/13/88
Subject:(R)ARRAYS & C Parent Msg#4332
------------------------------------------------------------------------------
Arrays (all types) are passed by reference. Under A86, you forced
passing by value by enclosing the parameter in parentheses - give that a
try. If that doesn't work, the only way to play with the data without
mucking with the original is to make a copy of it - and that's exactly
what passing by value does anyways.
ROB
Msg#4338 To:ALL
From:HARRY GILBERT Date:05/13/88
Subject:NANTUCKET LETTER Parent Msg#4338
------------------------------------------------------------------------------
Since Nantucket is receiving copies of our "mail", here's one to their
attention:
Dear Nantucket:
I have supported and used Clipper since Winter '85. My position is to
evaluate and recommend (and program) PC-based software. I work for the
largest data processing company in the world, supporting the larget
manufacturer in the world. (Guess who). In reviewing Clipper-compiled
products, I frequently talk with the vendor's programming staff.
Increasingly, they tell me their fears of the "bugginess" of Clipper, and
the problems with documentation and support. Also, they mention the
difficulty of supporting large applications (re: memory usage and control
of overlays). Sound familiar? More and more are giving me feedback that
they are planning to port their applications directly to C, or to Oracle
or Ingress-based systems. PLEASE - you are losing market potential by not
maintaining high quality of documentation, decent examples and
explanations of memory usage and overlay control. And you've got to watch
pre-mature release of products full of bugs! We're all getting leary, as
we look ahead to the next two upgrade cycles: SQL and OS/2. Do the
groundwork carefully, or you'll lose to the competition. Developers will
sacrifice bell-and-whistle features to get guaranteed bug-free
performance! Their reputation (and livelihood) depend on it!
Msg#4341 To:HARRY GILBERT
From:JIM KILLEEN Date:05/13/88
Subject:(R)NANTUCKET LETTER Parent Msg#4338
------------------------------------------------------------------------------
Harry,
Your letter to Nantucket was well stated! I'm sure you wrapped up the
feelings of a great many of us on this board. I find myself being very
defensive of this product (Clipper) since I use it extensively, but I
also find myself HAVING to be defensive of it a bit too frequently. I
have a strong desire to see Nantucket perform at a level we all know
their capable of. It's gotta' come together sooner or later, right?
By the way, I work for that "largest manufacturer in the world" you spoke
of. How is it working for "the largest data processing company in the
world"? We'll have to talk sometime. Take care.
Msg#4342 To:TONY KIRK (Rcvd)
From:MENACHEM BAZIAN Date:05/13/88
Subject:(R)OVERLAYS Parent Msg#4342
------------------------------------------------------------------------------
Tony,
It would help if I knew where to start. I don't. All I know is that I am
almost positive that I am gonna have to program for overlays.
Is there any special coding needed for overlays?? Or is the difference
just in the compiling and linking?
>MB<
Msg#4343 To:JOE BOOTH (Rcvd)
From:MENACHEM BAZIAN Date:05/13/88
Subject:(R)NO LINK Parent Msg#4305
------------------------------------------------------------------------------
Joe,
I am in a situation where I might need overlays...If this will take care
of it I AM INTERESTED.
Please let me know how it works.
>MB<
Msg#4344 To:STEVE STRALEY (Rcvd)
From:MENACHEM BAZIAN Date:05/13/88
Subject:UDF Parent Msg#4344
------------------------------------------------------------------------------
Steve,
I was wondering if SST Toolkit has a UDF or some such do-hickey which
will allow me to save an array to a disk file??? I spoke tp nantucket and
they suggested that I read the array into a .DBF and then it would be
saved but that defeats part of what I am trying to do.
Any help would be appreciated.
>MB<
P.S. Dirk, if you read this, the same question applied to IDL.
Msg#4345 To:CLIFF CORCORAN
From:KEVIN SAFFER Date:05/13/88
Subject:(R)ACCOUNTING PACKAGES Parent Msg#3537
------------------------------------------------------------------------------
Cliff,
I have used the accounting modules from SBT for several clients in the
past year. Although they are actually DBII programs traslated to DBIII
and Clipper, they have save me many hours of coding.
Msg#4348 To:DIRK LESKO (Rcvd)
From:CLIFF GREEN Date:05/13/88
Subject:(R)OSG104.ARC Parent Msg#3907
------------------------------------------------------------------------------
<blush> since I don't have IDL (grind, gnash) I'd can't comment on IDL
screen memvars. Do you want to give us a brief idea of what they are and
why we want them?
(there were a few things in SCRIMAGE which either were listed in the
menus but not available for one reason or other, or were available but
useless or unusable by me -- so I didn't check them out.)
Msg#4350 To:BILL ELLIOTT (Rcvd)
From:DIRK LESKO Date:05/13/88
Subject:(R)ARRAYS & C Parent Msg#4332
------------------------------------------------------------------------------
Accessing integer variables by reference either in an array, or a memvar
is not possible using the __parxx functions. You can only get the
variable by reference using a string array or variable.....
dLESKO
Msg#4351 To:JOE BOOTH (Rcvd)
From:DIRK LESKO Date:05/13/88
Subject:(R)CLIPPER WISH LIST Parent Msg#4333
------------------------------------------------------------------------------
The next iteration of Clipper will have window support (not MS
windows...)
dLESKo
Msg#4352 To:ROB HANNAH
From:DIRK LESKO Date:05/13/88
Subject:(R)ARRAYS & C Parent Msg#4332
------------------------------------------------------------------------------
arrays are passed by reference yes....But the elements of the array if
they are integer are gotten by value.....unless of cours it is a double.
Then you get a pointer to the memory location of the ieee format number.
SO maybe 6╝J½¬<÷║╗you can do it that way???
dlESKO
Msg#4353 To:MENACHEM BAZIAN (Rcvd)
From:DIRK LESKO Date:05/13/88
Subject:(R)UDF Parent Msg#4344
------------------------------------------------------------------------------
You don'y need IDL or any trinks to save an array to disk.....Just use
the fopen() and fwrite() and fread() functions to write out the
individual elements to a file.Do a loop, and fwrite() each element. If
they are integers, convert them to strings. When you read them back,
convert them back to integers with val(). It's easy.....
dLESKO
Msg#4354 To:CLIFF GREEN (Rcvd)
From:DIRK LESKO Date:05/13/88
Subject:(R)OSG104.ARC Parent Msg#3907
------------------------------------------------------------------------------
WHen you save a screen in Clipper, you usually say:
mem_var = savescreen═╡╬╠wejH¼D/2╖*(row,col,row,col)
That places the screens contents into a memvar that you can restore
later. What I did in IDL was to first:
save the screen, and record how big it is, and where it was saved from.
That way, restore screen knows exactly where to restore the screen
without you telling it where (unlike Clipper). I also create a special
function called init_scrn(). init_scrn() will create a screen variable
without putting any screen contents into it. IE, to create a blank
screen, you can say:
mem_var = init_scrn()
That does the same thing as save_scrn() but without putting anything in
the screen. Then you can:
title_scrn() - puts a title in the middlie in the first line
frame_scrn() - place a border around the screen (like the BOX comm)
puts_scrn() - write information to the mem_var as if it were a
real screen.
ANd you can control the colors of everything. Once you are finished
building the screen, just say:
rest_scrn(mem_var)
to display it. That will pop up the screen instantaneously. You can also
do partial screens this way to do windows.......
OK?
dLESKO
Msg#4355 To:ALL
From:JOHN REAM Date:05/13/88
Subject:ACCURACY BUG? Parent Msg#4355
------------------------------------------------------------------------------
Hi All,
I think that I have discovered a numerical accuracy bug in S87 that
I have not seen documented as of yet. Please correct me if I'm wrong.
Remember the days when Dbase and Basic had a problem with 1/10 # .1 ?
The result was more like .0999999999123??
I have a menu scrolling routine (much like the Lite-Bar programs) which
has worked fine for many applications. Now I'm on my first application
using S87 instead if A86 or W85. The menu line discriptions are stored
in field names such as MSG1, MSG2, etc. in a MENUS.DBF file. As the
client scrolls using the arrow keys the lite bar high lights that menu
option. This is pretty standard stuff. Anyway as the user scrolls up
or down I coded msgnum=msgnum+1
or msgnum=msgnum-1
Then I mtemp= "MSG" + ltrim(str(msgnum))
@ x,y say &mtemp
This has work fine up till now!
I'll have a case where msgnum was = 5 then upon an up arrow
msgnum=msgnum-1 will result in msgnum=4.0000000????
Therefore the ltrim(str(msgnum)) returns "4.00" . CRASH!
Yes, I know the workaround with round() but must I go through all my
programs and change code for all str(numvariable) instances?
Setting Decimals to Zero isn't pratical since my applications are
usually financial in nature.
Any suggestions or other programmer's insights would be appreciated.
I hate to regress back to S86 after becomming spoiled already.
I use the standard Plink86 and clipper Library from the Recent Update.
Thanks, John Ream
**************************************************************************
Msg#4356 To:ALL
From:MARK WOLLAM Date:05/13/88
Subject:VALID CLAUSE Parent Msg#4356
------------------------------------------------------------------------------
I may be the last one on the block to realize this... but ...
Was everyone aware that when you issue a PageDown to terminate
a full screen edit mode. any valids associated with any gets after
the current get at which the PageDown was issued are ignored even tho
the gets are properly read. I just had a customer call me mad as ......
because certain things didn't work. I knew I had attached valid clauses
to the pertinent gets, but he used page down rather then return 9 times.
< Mark >
Msg#4357 To:DIRK LESKO (Rcvd)
From:MARK WOLLAM Date:05/13/88
Subject:NANTUCKET Parent Msg#4357
------------------------------------------------------------------------------
Thank you dIRK for providing us this opportunity to communicate
with development staff at Nantucket.
Here a a few additions to the next release that I would like to see.
1. An INKEY() function that will return the ASCII VALUE, SCAN
CODE or BOTH
2. More flexability in controlling their internal keyboard buffer.
a. extract the entire contents of the buffer, read the buffer
a character at a time, more than just the next character
b. as companion to 1 above, the ability to stuff scan codes
3. True windowing support
4. As Joe and several others have mentioned the ability to save
and restore the GET stack is a real need and should have
been incorporated long before now
5. If OS/2 support IS NOT the next step, then they have to make
use of the memory. There is no reason extended can't be used
for more than index buffering. Perhaps the engine itself
could be optionally loaded into extended/expanded memory if
there is enough room.
6. ONE function that will tell us how many entries are in an index
7. The ability to include a param list on a set key
SET KEY XX TO PRG WITH A,B,C
8. True multi-demensional array support
9. Often times we create arrays much larger than we need because
the exact size needed is not immediatle known. Perhaps a function
called AJUST(<Array>) which automaticaaly delete any blank
entries starting at the bottom and adjust the array size
10. If memory management continues to be a problem, perhaps nantucket
could conduct an extensive user survey and prioitize functions and
commands. Those that are of limited or dubious value should
be created as separate objects, so that the developer could easily
remove them. Look at SET WRAP. Nice, but it can't be deleted
from the library since it is incorporated with other commands into
one object.
11. I fore one, rarely use the MENU TO MESSAGE anymore because of the
severe limitations in the MESSAGE portion. No independent color
support for one and not being able to have the message display
to the left or right of the highlighted PROMPT.
More important than any of the above, though, is the absolute
necessity that the next release be as bug free as possible. Maybe
they should reavaluate their alpha and beta sites. Perhaps the number
of sites should be increased.
< Mark >
Msg#4358 To:MENACHEM BAZIAN (Rcvd)
From:STEVE STRALEY Date:05/13/88
Subject:(R)UDF Parent Msg#4344
------------------------------------------------------------------------------
Yes Manachem, there is several Clipper utilities that allow arrays to be
saved to disk. Additionally, I wrote a section called "QUICK TRICKS"
which documents the find, how I arrived at the conclusion, and the
resulting code. You can ask one of the guys who has it already how it
works... I know Mr. Abe Rice has looked at that section in particular.
By the way: DON'T put the arrays in a .DBF... that's silly! But then
again, I looked up and saw who gave that advice... Take care, and if you
need the number of SSTKit... let me know. Take care,
Steve
Msg#4359 To:JIM KILLEEN (Rcvd)
From:STEVE STRALEY Date:05/13/88
Subject:(R)SST
------------------------------------------------------------------------------
Thank you VERY much. I humbly appreciate it. Yes, I think Joe King will
accept a Credit Card from General Motors... so long as they keep pumping
out cars. Just give Joe King a call at 212-599-2141 and he'll take care
of the rest for you. And to who ever is passing along the nice advice on
SSTKit... I personally thank them as well.
Again thanks, and hope to be talking with you real soon.. Welcome on
board (well, soon enough...). Take care,
Steve
Msg#4361 To:JOHN REAM (Rcvd)
From:DIRK LESKO Date:05/13/88
Subject:(R)ACCURACY BUG? Parent Msg#4355
------------------------------------------------------------------------------
WOuldn't it work if you said:
msgnum = int(msgnum-1)
try that....
dLESKO
Msg#4363 To:MARK WOLLAM (Rcvd)
From:DIRK LESKO Date:05/13/88
Subject:(R)NANTUCKET Parent Msg#4357
------------------------------------------------------------------------------
As soon as I have enough messages, I will donwloadd nch, do some cleaning
up, and Whooosh....I'll send them off... Kepp them coming in....
Tanx
dLESKO
Msg#4364 To:DIRK LESKO (Rcvd)
From:JOHN THORN Date:05/13/88
Subject:(R)CONFERENCE Parent Msg#4215
------------------------------------------------------------------------------
Thanks, Dirk! That will be a big help for us all!
- John
Msg#4366 To:HARRY GILBERT
From:JOHN THORN Date:05/13/88
Subject:(R)NANTUCKET LETTER Parent Msg#4338
------------------------------------------------------------------------------
Preach On, brother!!
Msg#4367 To:DIRK LESKO (Rcvd)
From:ROBERT HEYMAN Date:05/13/88
Subject:(R)CLIPPER WISH LIST Parent Msg#4333
------------------------------------------------------------------------------
Gee..it sure would be nice to see a Clipper version running under
MS Windows. Have fooled around with Omnis Quartz...not particularly
impressed...and the ads for Foxbase Mac make me green.
Rob
Msg#4369 To:ROB HANNAH (Rcvd)
From:MARK WOLLAM Date:05/13/88
Subject:(R) SOFTSEEK
------------------------------------------------------------------------------
Rob.... SET EXACT WAS OFF. Oh well, it doesn't really make any
difference. I got along without the command for 4 years. I guess I
can continue to do so... Tnaks for the thought though.
< Mark >
Msg#4370 To:ALL
From:MARK WOLLAM Date:05/13/88
Subject:(R) OVERLAYS Parent Msg#4370
------------------------------------------------------------------------------
I have been reading with interest the discussion about overlays, should
I.. Shouldn't I.... How to... what works best etc. Here are some
thoughts of mine and those of others that I have condensed.
1. Prgs compiled using a CLP file creates a larger object then
combining all the prgs into 1 file and then compiling that.
2. Using implied overlays does reduce the memory requirements
ie. BEGIN
FI FILE
END
as apposed to
BEGIN
SECTION FI FILE
END
3. Combining frequently used ASM code into 1 object using multiple
Far calls reduces the number of time clipper's extend code is
included.
4. Its takes experimentation to determine wether to go internal or
external on the overlays.. Increases/decrease can be dramatic
either way.
Now some things to watch for.
1. There is no problem in calling down the stack, ie.
BEGIN
FI FILE1
BEGIN
FI FILE2
Procedures from FILE1 can call PROCEDURES from FILE2, but you
may have a problem going the other way and you will almost always
get strange results calling and returning from parrallel sections.
2. You might experiment with placing all you one way calls deep in
a section, for example your reindex routines.
3. Be wary of initiating a function in an overlay
4. Use the SEARCH command in PLINK when functions call functions and
you won't need the external command.
Now, after all this... take it with a grain of salt.. there just
ideas and observations. and don't forget you can set the V param
in SET clipper. I have never had to exceed a V greater than 10K yet.
Msg#4371 To:ALL
From:MARK WOLLAM Date:05/13/88
Subject:BREEZE 3.0
------------------------------------------------------------------------------
Hi again...
Just received my update version 3.0 of Paul's Breeze Lib. Some
nice additions such as autmatic shadowing and the ability to multiple
windows to 1 disk file. As in the past, the full source code is
included. Until Clippers goes windows, I think this one of the
bettwe add ons on the market... give paul a call on his BBS
703-450-7864
< Mark >
Msg#4373 To:MARK WOLLAM (Rcvd)
From:STEVE STRALEY Date:05/14/88
Subject:(R) OVERLAYS Parent Msg#4370
------------------------------------------------------------------------------
Gee... I wonder where you got the idea of IMPLIED overlays? Take care,
Steve
Msg#4374 To:STEVE STRALEY (Rcvd)
From:TONY KIRK Date:05/14/88
Subject:(R) OVERLAYS Parent Msg#4370
------------------------------------------------------------------------------
Duhhh... wat's dem implied overlays you's talking 'bout?
(Sound dumb enough? <grin>...)
Tony
Msg#4375 To:MENACHEM BAZIAN
From:TONY KIRK Date:05/14/88
Subject:(R)OVERLAYS Parent Msg#4342
------------------------------------------------------------------------------
Well, let's see... First of all, I assume yours is a menu based system
and that there are several, separate, sub-menus/procedures. One of the
first things I did was separate all the functions (UDFs) that were used
system wide from the rest of the program. You don't necessarily have to
remove them, but you need to know which functions are needed by the
entire system. These UDFs will have to be in the main kernel of your
system. I put them in a library, all in one PRG to save space in the LIB
file.
Secondly, try to separate logically different sections of the program.
For instance, in one of my systems I have different overlays for each of
these: 1)Utilities - Pack, Reindex, SetDate, CreateIndex, Setup, etc.
2)MasterFile- Inventory, Vendors, Customers
3)Operations- Purchasing, Receiving, Sales, Returns
4)Reports - All the reports, printer or screen
These items can be separated in this "make-believe" system, because none
of the procs in MasterFile are needed in the Utilites, and none of the
Reports procs are needed by Operations, and so on.
The .LNK file would be:
FI MyMain
BEGIN
SECTION FI UtilProc
SECTION FI MastProc
SECTION FI OperProc
SECTION FI RepoProc
END
.... etc. etc.
Remember, you will "hit the wall" if you try to call a procedure/function
in one overlay section from another. One main thing to remember, though,
is that nothing in programming is concrete. I have found that different
sections in overlays tend to be of very different sizes. Sometimes, in
fact, it SAVES memory if I duplicate a UDF that is called by procs in two
overlay sections, if those sections are smaller and the larger sections
don't need that UDF (of course the UDF would have to have different names
in each case). In this way, you save memory by not having the UDF in the
kernel of your system.
Also remember that memory requirements for overlays are for the largest
of the overlay sections you have. In other words, using four overlays
with sizes of 10k, 15k, 20k, and 25k will result in 25k needed for the
overlay. And, if you can get the entire .EXE on a floppy, or if you wish
to create an .ARC file, internal overlays require less memory.
Read the manual section about overlays (12 times did it for me <grin>).
It may not be the clearest for programmers who have never needed/used
overlays, but combining it with info from the "good ol' BOSS" will start
shedding light on the subject.
Last, but not least, I am waiting to hear from Steve S. about these
"implied overlays". I've been using overlays, internal and external, for
a while, but that one's a new one for me.
I should be out of breath after this one <grin>. One thing I recommend
is experimentation. It will take a while, but you'll get it. Let me
know if I can help any more, that is if I helped THIS time.
-Tk
Msg#4376 To:DIRK LESKO (Rcvd)
From:JOHN DUKE Date:05/14/88
Subject:MSG TO NANTUCKET
------------------------------------------------------------------------------
One unique function I'd love to see included is a 'PSEUDO TEXT SEARCH'.
ie: The ability to search a memo field for a specific word or string. Now
I realize this is far beyond typical relational db programming, but since
I work for the leader in TEXT DB support, and I designed the current
code, I have found on numerous occasions a need for what would appear to
be a simple task. I've worked on it myself as time permits but an not at
all satisfied with the speed, and I've fallen into the 'pit' of trying to
produce an 'exact duplicate' functionality of what I've become so
accustomed to. As to many of the other msg i've read on needs, I must
admitt that while I am far from pleased with the documentation in the
clipper manual, I believe that users should take note that a db company
write manuals to explain functionality, not to exhaust every posibility
that might be programmed, and it is surely not meant to be a course of
study. If this is really what is needed I would suggest Nan, write a new
book, "primmer or maybe a advanced technical programming manual". By all
means though, I'd sure like to see QUALITY in the product. I've rarely
encountered any of the bugs i see reported here, but just the thought of
knowing i might has caused me on more then one occasion to
re-design/re-program some code just to be 'DA&&' sure I dont see any.
We'll thanks for the ear, I hope somethings comes from all this.
Msg#4377 To:STEVE STRALEY (Rcvd)
From:HAROLD HARRISON Date:05/14/88
Subject:SMALLER(EXE) Parent Msg#4377
------------------------------------------------------------------------------
Hello Steve,
I would like to ask you a couple of questions regarding
some things that you mentioned at the last NYMCUG meeting.
1) I'm running under DOS 3.2. I believe that you said
something about the autoexec.bat CLIPPER=F regarding using an
odd number of files. Or was it FILES= in Config.sys. Object was
to create a smaller .exe file. Please specify.
1a) Do you know anything about HANDLES.ARC available here.
Specificaly will it run under S87 2:00? Is there another relatively
painless way that I can open more files than 20--that is 15, under 3.2?
2) Also you mentioned a parameter for MS LINK 3.61. I jotted
down "/SP:1"; however, I don't see that paramater in the docs. Did
you say /SE or /ST?
Thanks for the consideration
Harold
Msg#4379 To:STEVE STRALEY (Rcvd)
From:MARK KASS Date:05/14/88
Subject:(R)MASM 5.0 LINK Parent Msg#4250
------------------------------------------------------------------------------
I'm not sure, but I think I figured out this problem. I've included the
library PROCLIP2 in the LINK statement, which I downloaded from here. I
think that I have a bad copy of the library. I'm going to download it
again, unarc it and try again.
Mark
Msg#4380 To:DIRK LESKO (Rcvd)
From:MARK KASS Date:05/14/88
Subject:(R)MASM 5.0 LINK Parent Msg#4250
------------------------------------------------------------------------------
Dirk
Thanks, I'm first going to try the link with a new copy of
PROCLIP2 and if that dosen't work, I'll try this method.
BTW, I just got IDL - it looks as good as I firgured it would.
Just one suggestion. When I open the package and read the documentation
(yes I go against all rules and read doumentation), I was concerned that
it as not for S'87. It wasn't until I read the README file that I found
that it was for S'87. Suggestion -- put a piece of paper in the manual
stating "For Clipper S'87 Only" !!
Thanks again
Mark
Msg#4382 To:TONY KIRK
From:STEVE STRALEY Date:05/14/88
Subject:(R) OVERLAYS Parent Msg#4370
------------------------------------------------------------------------------
As my friend Buggs would say, "Could be... could be..."
Steve
Msg#4383 To:TONY KIRK
From:STEVE STRALEY Date:05/14/88
Subject:(R)OVERLAYS Parent Msg#4342
------------------------------------------------------------------------------
Implied overlays means that you can nest the BEGIN AREA and END commands
to be many levels deep. Additionally, I would use the SECTION command at
all. It takes up to much room. A good example of an implied overlay is
as follows. Consider the following scenario: You need module C, and C
requires B in order to run... here's how I might overlay it...
BEGIN AREA
FI A
FI B
BEGIN AREA
FI C
END
END
This way, if C is needed, B is loaded. A and B share the same overlay
area. Another way to do it would be like this:
BEGIN AREA
FI A
END
BEGIN AREA
FI B
BEGIN AREA
FI C
END
END
There is a good example of an implied overlay in my book on page 135 and
following. You may want to go through it for a more clearer
understanding than just a few chicken scratches here. Hope that helps,
Steve
Msg#4384 To:HAROLD HARRISON (Rcvd)
From:STEVE STRALEY Date:05/14/88
Subject:(R)SMALLER(EXE) Parent Msg#4377
------------------------------------------------------------------------------
I got your message on the other board, but I'll answer it here as well.
Yes, I said "/SP:1" yes, it's not documented and I do not know all of
the ramifications so I suggest it with a word of warning to you. The
files command will ONLY work with DOS 3.3 or greater. Finally, I don't
know anything about HANDLES.ARC. Hope that helps...
Steve
Msg#4385 To:MARK KASS (Rcvd)
From:STEVE STRALEY Date:05/14/88
Subject:(R)BETA
------------------------------------------------------------------------------
THanks again... I'll keep you posted in the next couple of weeks. Right
now I'm getting ready for the Clipper conference and once that is over,
we'll start to work! Take care,
Steve
Msg#4388 To:BILL ELLIOTT (Rcvd)
From:HARRY VANTASSELL Date:05/14/88
Subject:(R)ARRAYS & C Parent Msg#4332
------------------------------------------------------------------------------
Bill: In response to your message 4332, YES it is possible to muck
about in Clipper and manipulate the array contents in ASM and 'C'
routines. See my files CLIPARRY.ARC and CLIPARY1.ARC here on the
BOSS. Be aware that the information is for A'86 and the 'C' array
structure has changed from a 22 byte to a 14 byte structure which
Nantucket will not help you understand. Once you have the pointer to
the array and if you know the structure, you can have your way with
the array. Since such mucking about is strictly a non-documented
thing, I strongly recommend that it not be done unless one feels
the need to use Symdeb or Code View on a daily basis. Its kinda
like making love while standing in a hammock, very challenging
but not the sorta thing most 'normal' folk wanta do all the time.
But then who is 'normal?'...
Msg#4389 To:DAVE LOBEL
From:CLIFF CORCORAN Date:05/14/88
Subject:(R)DEVL. PARTY (CONF)
------------------------------------------------------------------------------
Sure, sounds great. It is looking like a pretty good group is coming. I
have written down your number and will give you a call. I am in the midst
of a pretty good period of travel so be patient.
Regards CLiff
Msg#4390 To:MARK WOLLAM
From:DIRK LESKO Date:05/14/88
Subject:(R) OVERLAYS Parent Msg#4370
------------------------------------------------------------------------------
Clipper's EXTEND code only gets called in once if you happen to use it.
dLESKO
Msg#4391 To:HAROLD HARRISON (Rcvd)
From:DIRK LESKO Date:05/14/88
Subject:(R)SMALLER(EXE) Parent Msg#4377
------------------------------------------------------------------------------
HI Harold....The handles.ARC was written for Aut'86. If you have IDL, use
the set_handle() function to setup as many extra file handles you
need....
dLESKO
Msg#4392 To:MARK KASS (Rcvd)
From:DIRK LESKO Date:05/14/88
Subject:(R)MASM 5.0 LINK Parent Msg#4250
------------------------------------------------------------------------------
Suggestion heard, and duly noted. Thanks
dLESKO
Msg#4393 To:HARRY VANTASSELL (Rcvd)
From:DIRK LESKO Date:05/14/88
Subject:(R)ARRAYS & C Parent Msg#4332
------------------------------------------------------------------------------
Making Love in a Hammock?????......Oh...HA HA hA hA..>!!
dLESKo
Msg#4397 To:KENJI NAKANO (Rcvd)
From:JOHN BRISTOR Date:05/15/88
Subject:(R)CDOS 386 Parent Msg#4397
------------------------------------------------------------------------------
. CONUG - EAST 305-725-8978; Florida has changed some area codes so
you migh want to check if this number doesn't go through. The guy who
runs that BBS is an OEM for CDOS '386. Anything I can't answer , he can.
.
. What type of serial terminals are you using with CDOS' 386? Are you
familiar with the PIFED utility in CDOS'386? I have to use that utility
for my Clipper executable files occasional (mainly for comm port
communications.) But I haven't had any of the memory problems under CDOS
that you infer.
.
. If you could expand on your problems, I'd be happy to give whatever
help I can. JAB
Msg#4398 To:STEVE STRALEY (Rcvd)
From:HAROLD HARRISON Date:05/15/88
Subject:(R)SMALLER(EXE)
------------------------------------------------------------------------------
thanks Steve,
I figured that I would toss the questions up here too so as to
perhaps get a response from others regarding my question about handles.
Which was just an aside but related to the number of files that can be
opened with DOS 3.2....
harold
Msg#4399 To:MENACHEM BAZIAN
From:JILL GOHR Date:05/15/88
Subject:(R)UDF Parent Msg#4344
------------------------------------------------------------------------------
Tom Rettig's lib includes ARRREST() - restore from disk, and ARRSAVE() -
save to disk functions for arrays.
Msg#4402 To:ALL
From:MARK KASS Date:05/15/88
Subject:PROCLIP2.LIB Parent Msg#4402
------------------------------------------------------------------------------
If anyone has a good copy of this library will they please upload it.
The current file on this board PC2LIB.ARC hCRC errors that render the
library useless
Thanks
Mark
Msg#4404 To:HARRY VANTASSELL (Rcvd)
From:MARK WOLLAM Date:05/15/88
Subject:(R)ARRAYS & C
------------------------------------------------------------------------------
You mean I'm not "normal". What did I do with the number of my Analyist.
<Mark>
Msg#4406 To:MARK KASS (Rcvd)
From:MARK WOLLAM Date:05/15/88
Subject:(R)PROCLIP2.LIB
------------------------------------------------------------------------------
I'll upload one this evening. Buy the way you can also find it on
Darwin, Compuserve and the Silver Bullet.
< Mark >
Msg#4407 To:HARRY VANTASSELL (Rcvd)
From:BILL ELLIOTT Date:05/15/88
Subject:(R)ARRAYS & C Parent Msg#4332
------------------------------------------------------------------------------
If I was normal, I wouldn't think programming was fun.
Sorry to say I forgot about your array tips. I've got the files buried
somewhere on a floppy disk. But, for now I think I'll tell the
bright-eyed kid who I was asking the question for that it can't be done
-- at least not now. [I'm a not so bright kid who stayed home sick one
day, and while I was gone everyone drew straws to see who would get an
"interesting" project. Somebody drew the short straw, gave it to me, and
so -- I'm now a COBOL programmer. I will continue to visit this
conference to see what the modern world is doing with micros.]
Thanks for your reply, Bill E.
Msg#4408 To:DIRK LESKO (Rcvd)
From:BILL ELLIOTT Date:05/15/88
Subject:(R)ARRAYS & C Parent Msg#4332
------------------------------------------------------------------------------
We'll rethink our plan of attack.
Thanks for the info, Bill E.
Msg#4409 To:ROB HANNAH
From:BILL ELLIOTT Date:05/15/88
Subject:(R)ARRAYS & C Parent Msg#4332
------------------------------------------------------------------------------
I guess my question wasn't clear. In this case "mucking with the
original" is what we want to do. Anyway, judging by Dirk's reply, what
we want to do can't be done.
Thanks for your response, Bill E.
Msg#4412 To:BILL ELLIOTT (Rcvd)
From:DIRK LESKO Date:05/15/88
Subject:(R)ARRAYS & C Parent Msg#4332
------------------------------------------------------------------------------
I didn't mean that it can't be done at all, It just can't be done using
the __parxx functions that Nantucket supplied. You will have to dig out
the original pointers to the elements from Clipper internals. That is of
course a little dangerous because it WILL change in upcoming versions of
Clipper, so be cautious.
dLESKo
Msg#4413 To:ALL
From:ABE RICE Date:05/15/88
Subject:MEMOEDIT
------------------------------------------------------------------------------
Hi
Can anyone tell me whether one can use an external editor with memoedit()
within clipper?
Thanks
Msg#4414 To:MARK KASS (Rcvd)
From:MARK NEIDORFF Date:05/15/88
Subject:(R)PROCLIP2.LIB Parent Msg#4402
------------------------------------------------------------------------------
Hi Mark,
Did you leave a message for the SYSOP? He may be able to fix the
file. If not, I have the lib and will ul it under a different name. Let
me know what Mark (sysop) has to say.
<< Mark >>
Msg#4415 To:DIRK LESKO (Rcvd)
From:MARK NEIDORFF Date:05/15/88
Subject:IDL TO PRN Parent Msg#4415
------------------------------------------------------------------------------
Hi Drik,
I know a few days ago you left a message about using idl file
functions to send output to the pirnter. I can't find the messages, so
check me out. Won't handle = f_open(prn,1) do the trick to get the
handle for the printer?
Thanks,
<< Mark >>
Msg#4416 To:MARK NEIDORFF (Rcvd)
From:DIRK LESKO Date:05/15/88
Subject:(R)IDL TO PRN Parent Msg#4415
------------------------------------------------------------------------------
It should be handle = f_open("PRN",1). However, the std printer is
already open, just use handle 4.
dLESKO
Msg#4417 To:DIRK LESKO (Rcvd)
From:BILL ELLIOTT Date:05/16/88
Subject:(R)ARRAYS & C Parent Msg#4332
------------------------------------------------------------------------------
Understood. But, since my knowledge of C and assembly is
MINIMAL (and I had to sign over my copy of Clipper, and my
AT Clone to another programmer), I think I'll let this problem
lie dormant for a few months. Maybe by then somebody will have
solved it and published the tricks needed.
BTW. As it's been said before: thank's for running such an
informative conference and for your timely response.
Bill E.
Msg#4421 To:MENACHEM BAZIAN
From:JOE BOOTH Date:05/16/88
Subject:(R)NO LINK Parent Msg#4305
------------------------------------------------------------------------------
Got the product yesterday. Will let you know.
Msg#4423 To:DIRK LESKO (Rcvd)
From:JOE BOOTH Date:05/16/88
Subject:(R)CLIPPER WISH LIST Parent Msg#4333
------------------------------------------------------------------------------
Thanks!!!
Msg#4425 To:BILL ELLIOTT (Rcvd)
From:DIRK LESKO Date:05/16/88
Subject:(R)ARRAYS & C Parent Msg#4332
------------------------------------------------------------------------------
Thanks to you too....
dLESKo
Msg#4426 To:DIRK LESKO (Rcvd)
From:JOHN REAM Date:05/16/88
Subject:(R)ACCURACY BUG? Parent Msg#4355
------------------------------------------------------------------------------
Dirk,
Yes sure, I could add INT(numvar) or ROUN(numvar,0) , But my concern
is that I haven't had to do this before S87. Do I have to
go through all my existing code and add this for all INTERGER-INTERGER
calculations. I would hope (as always was) that
INTERGER-INTERGER=INTERGER. This works correctly in A-T and in A86, but
Not always in S87. Doesn't this seem unusual?
John Ream
Msg#4427 To:JOHN REAM (Rcvd)
From:DIRK LESKO Date:05/16/88
Subject:(R)ACCURACY BUG? Parent Msg#4355
------------------------------------------------------------------------------
Yes it does, I have had similiar experience myself where it worked
without the int() sometimes. It all depends on which way the language
rounds off to. I can't say if you have to change all the occirences
because each case is different. Some experimentation will have to be
done. If you can do some tests to note the differences, I can make sure
that your points are made at Nantucket.
dLESKO
Msg#4428 To:STEVE STRALEY (Rcvd)
From:STEVE DAVIES Date:05/16/88
Subject:SIDEKICK
------------------------------------------------------------------------------
Hello Steve
Just a quick question. I've been using Sidekick without exception
on dBASE and Clipper programs that are under 50K, and havent found
any problems yet. I did notice in your book that you mention not
to use certain editors which may insert formatting codes.
I did have problems with auto line wrap until I set the line
length to maximum (about 255 columns) using the Skinst program.
The ability to pop up the text file instantly is hard to live
without. Please let me know if there are any unforseen dangers
in my continuing to use this editor for small programs. I might
add also that it is necessary to set the max file size to 50,000
in Skinst also.
Thanks
Steve dAVIES
Msg#4431 To:DIRK LESKO (Rcvd)
From:HAROLD HARRISON Date:05/16/88
Subject:(R)SMALLER(EXE) Parent Msg#4377
------------------------------------------------------------------------------
gee thanks Mr. dL,
The funny thing is that I just got IDL, I looked for an
equivalent function, found HANDLES() and gave up when I did not
find it in the SEE ALSO:. Sometimes I'm rather impatient,
I guess...
But let me get this straight, I extract the SET_HANDLE() .obj
from the library, include it as an .obj when linking. Place a
SET_HANDLE(x) in the beginning of my source code. In autoexec put a
SET CLIPPER=Fx, in config.sys a FILES=x. And BINGO I can have the
x number of files open, e.g. max# of .ntx pluss??? (Must I also
list IDL.lib as a LIB when linking?)
Now that I have your attention, I'm looking for a way to set up
a PANIC key, and I believe that IDL might be the solution. What I
want to be able to do is: to set a key to immediately halt a programs
execution (particularly in a NON-WAIT state), that can force a branch
to another UDF or procedure. Oh say for example, from CLIPPER's debug,
a key pressed after a GO(on key) that would halt execution in order to
branch to my own UDF. INT3() may halt the excecution, but how would I
issue it before the running program gets to a wait state and then, for
that matter, will a RETURN continue from where interrupted?. I would
probably have to set up a way to continually scan the kbd buffer for
a given key. If there isn't a SCAN_KBD_FOR_X_THEN_BRANCH_TO() or
better yet ON_KEY_GOTO() type function in IDL (that I missed), perhaps
I could us an INTERRUPT() call. Although my expretise in assembler is,
shall I say, rather limited, I will look through DOS TECH REF. However,
I would really appreciate perhaps a pointer in the right direction?
HAROLD
Msg#4433 To:DIRK LESKO (Rcvd)
From:MIKE DRAPER Date:05/16/88
Subject:CLIPPER CONFERENCE Parent Msg#4433
------------------------------------------------------------------------------
I have been catching up on the Clipper stuff and am quite impressed.
Got started with dBASE years ago with the old bilge pump ad. I have been
following the array discussion. I developed a C array set of functions a
couple of years age and just updated it to S87. You might want to take a
look at C_ARRAY.ARC. I will try to contribute from time to time.
Msg#4435 To:CLIFF GREEN (Rcvd)
From:HAROLD HARRISON Date:05/16/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
Hello all among this thread....
Regarding this thread about a mailmerge, one of the first UDFs I
wrote in clipper did just that. It requires some setting up but it
works fine for me. Caution: there is no error checking, the parameters
(template and array) must be set up properly!
***
Template = memoread("nastyltr.tmp"), e.g.:
{DEADBEAT}
{BUCKS}
{COLLATERAL}
*
Yo {DEADBEAT},
If you don't pay me the ${BUCKS} you owe me, I'll take your
{COLLATERAL} and break your legs too.
Sincerly,
*
Vin (The Shins)
CHR(10)
**
SELECT A
USE CLIENTS
SET FILTER TO OVER90DAYS
GOTO TOP
OUTFILE = ""
DO WHILE .NOT. EOF()
MERGEARRAY[1] = A->NAME
MERGEARRAY[2] = ALLTRIM(STR(A->AMT_OWED,8,2))
MERGEARRAY[3] = A->VAULABLES
OUTFILE = OUTFILE + MERGE(TEMPLATE,MERGEARRAY)
SKIP
ENDDO
SET CONSOLE OFF
SET PRINT ON
? OUTFILE
************** MAIL MERGE ***********************
FUNCTION MERGE
PARAMETERS TMPL,F_ARRAY
CRLF = CHR(13)+CHR(10)
LTR = TMPL
CNT = 1
DO WHILE CNT <= LEN(F_ARRAY)
ST = AT("{",LTR)
FN = (AT("}",LTR) - ST) + 1
OUTFIELD = SUBSTR(LTR,ST,FN) && get the ReplaceName;
LTR = STRTRAN(LTR,OUTFIELD+CRLF,"",1,1) && dump the first occurence
LTR = STRTRAN(LTR,OUTFIELD,F_ARRAY[CNT]) && replace the rest with the
CNT = CNT + 1 && coresponding array string
ENDDO
RETURN LTR
*****
If this is of any use to anyone feel free....
Harold
Msg#4436 To:ALL
From:GUSTAVO GRUBBA Date:05/17/88
Subject:E000 Parent Msg#4436
------------------------------------------------------------------------------
Well, I got the update and went on trying taking that E000 out
of the Set Clipper statement. Gess what ? 22 files crosslinked
plus over one hundred more lost cluster in an uncountable chains.
One whole directory lost (it whas one of the cross linked files)
and all my ventura stuff dumped. So what, $ 65 bucks spent
on what ? Where is the new docs I supposely paid for ? Who is
going to pay for the damages ? Wasn't for the backup I did just
before trying ...
.
What next ?
Msg#4437 To:ALL
From:GUSTAVO GRUBBA Date:05/17/88
Subject:SET SOFTSEEK
------------------------------------------------------------------------------
I wrote down your code exactly the same way you presented and
found no problem at all. The only strange thing to me was that
Escape() function. I have no idea what is it. Does it changes
(I don't see why should) any file pointer ?
Any how, it worked the way you expected using the same Clipper
you did. The only difference, I used Lastkey() <> 27 for that.
.
Hoppe helped to get this even more confusing !?!
Msg#4438 To:ALL
From:GUSTAVO GRUBBA Date:05/17/88
Subject:WISH LIST
------------------------------------------------------------------------------
How about a function like lastrec() that would show only the
records that are NOT marked for deletion. Something like
lastdrec() ? Or even lastrec() under set deleted on ?
Msg#4440 To:CLIFF CORCORAN
From:MENACHEM BAZIAN Date:05/17/88
Subject:(R)ACCOUNTING PACKAGES Parent Msg#3537
------------------------------------------------------------------------------
Cliff,
I have had excellent experiences with a package called "Champion III".
I am an accountant and a consultant and I have been cal¡⌐rled upon to
make many suggestions as to accounting packages. In my opinion, champion
is perhaps the best on the market for the money.
Menachem
Msg#4441 To:DIRK LESKO (Rcvd)
From:MENACHEM BAZIAN Date:05/17/88
Subject:(R)UDF Parent Msg#4344
------------------------------------------------------------------------------
Now, why didnt I think of that???? Thanks a million dirk.
Menachem
Msg#4442 To:MARK WOLLAM
From:MENACHEM BAZIAN Date:05/17/88
Subject:(R)VALID CLAUSE Parent Msg#4356
------------------------------------------------------------------------------
Mark,
Yes, I noticed that when I was testing an application I wrote. I just
wrote some validation code to check for blank fields and that was that.
>MB<
Msg#4443 To:STEVE STRALEY (Rcvd)
From:MENACHEM BAZIAN Date:05/17/88
Subject:(R)UDF Parent Msg#4344
------------------------------------------------------------------------------
Steve,
Dirk gave me a good idea. Using fopen() and fwrite() I can do it.
I am interested in SSTkit. Can I get a list of the functions it has?? And
the number please....I think the time has come for me to break out of the
limitations in Clipper/Dbase.
>MB<
Msg#4444 To:HAROLD HARRISON (Rcvd)
From:DIRK LESKO Date:05/17/88
Subject:(R)SMALLER(EXE) Parent Msg#4377
------------------------------------------------------------------------------
You do not have to extract the set_handle.obj from the LIB file. Just
insert the IDLSTART.OBJ file into your link line, and then use
set_handle() as stated in the manual. The Aut'86 version used to have a
set_hand.obj and an _exit.obj. Now they are both in IDLSTART.OBJ. Doing
an ON KEY GOTO is almmost impossible with a UDF Library. Youo would have
to know all of Clipper's internal calling routines to be able to pull it
off. There is no such function in IDL, and I doubt that any add on
Library will have such a function since it requires proprietary knowledge
of Clipper.
dLESKO
Msg#4445 To:MIKE DRAPER (Rcvd)
From:DIRK LESKO Date:05/17/88
Subject:(R)CLIPPER CONFERENCE Parent Msg#4433
------------------------------------------------------------------------------
I will take a look at it....
dLESKO
Msg#4446 To:HAROLD HARRISON (Rcvd)
From:DIRK LESKO Date:05/17/88
Subject:(R)MMAIL MERGE Parent Msg#3905
------------------------------------------------------------------------------
Just a little note that R&R has a bit off merging capabilities that we
alll may have overlooked....
dLESKO
Msg#4447 To:ALL
From:ABE RICE Date:05/17/88
Subject:NETLIB Parent Msg#4447
------------------------------------------------------------------------------
Communication Horizons Netlib. A library with a few netorking
function some of which are not provided by Clipper, comes with no
source code, and an unbound manual. The library cost $100 about a
year ago. Now, to upgrade to summer 87 they are bilking you another
$100!! I think this is outrageous. Contrast this to:
IDL which contains 320+ function and its source code, a bound manual,
free upgrade to summer 87 (it may have been $30 for some).
SST which also comes with complete source code, a beautiful manual,
great support.
This is not meant as an advertisement for SST or IDL, just letting
some heat off. Hoping that perhaps others too will complain to Neil
Weicher who I have seen once on this board.
Msg#4453 To:MARK WOLLAM (Rcvd)
From:STEVE STRALEY Date:05/17/88
Subject:(R)PAGEDOWN
------------------------------------------------------------------------------
Thanks... GREAT TRICK... you see, these alot more to SST than just code.
I'm glad our discussion over "TRICKS" obviously put you in the right
frame of mind to solve it. Glad the idae of LASTKEY() = 3 also helped.
I guess being somewhat of a teacher AND listener helps. Like I said in
my message to you, I'll be out for the rest of the day ... computer is up
but voice is DOWN. Talk with ya soon, or leave me a message here.. I'll
check in later tonight... Take care,
Steve
Msg#4458 To:GUSTAVO GRUBBA
From:JON MELTZER Date:05/17/88
Subject:(R)E000 Parent Msg#4436
------------------------------------------------------------------------------
It's a feature ...
Msg#4459 To:ALL
From:LOU SEIGAL Date:05/17/88
Subject:INTERRUPT HELP Parent Msg#4459
------------------------------------------------------------------------------
I have an application that needs to interface to a mainframe. I am using
PCOX board and terminal emulation software. This gets installed as a
resident program before the Clipper application runs and uses interrupt
111 as its interface. You load registers and call the interrupt to
execute the terminal emulation functions (to send characters, etc.). I
am using Tom Rettig's Clipper Library and the ROMBIOS function to try
execute this. I am using the S87.LIB with S87 Clipper. I am loading all
of the registers as described in the Rettig documentation, "0000" for
registers that I don't want modified. I am having a lot of trouble
getting this to work. The machine hangs and requires a cold start. Does
anyone know if ROMBIOS works with INT 111? I've checked the assembler
source for this function and it seems like it should word, but I am not
an assembler guru by any means. I would appreciate any help on this.
Msg#4460 To:LOU SEIGAL
From:DIRK LESKO Date:05/17/88
Subject:(R)INTERRUPT HELP Parent Msg#4459
------------------------------------------------------------------------------
Lou, The IDL Library has a very easy to use INTERRUPT() functions that
works very much in line with Clipper. No loading ofregistersthat you
don't need. I can probably help you if you can be more specific.....
dLESKO
Msg#4463 To:JILL GOHR (Rcvd)
From:JOHN THORN Date:05/18/88
Subject:(R)UDF Parent Msg#4344
------------------------------------------------------------------------------
Suggest you also check out SST...some good stuff in there!!
Msg#4465 To:ABE RICE
From:RON CALLAHAN Date:05/18/88
Subject:(R)NETLIB Parent Msg#4447
------------------------------------------------------------------------------
I HAVE HAD MY PROBLEMS WITH THIS COMPANY ALSO. I RECEIVED AN ADD IN
THE MAIL WHICH MADE THE PRODUCT SOUND MOST INTERESTING. WHEN I CALLED
THE NEXT DAY I ASKED ABOUT SEVERAL FUNCTIONS WHICH WERE LISTED. BASED
ON THEIR ANSWERS, I ORDERED THE PRODUCT AND ASKED THAT IT BE SHIPPED
OVERNIGHT AT EXTRA EXPENSE. I WAS EXTREMELY UPSET TO FIND THAT THE
FUNCTIONS I NEEDED ( JOURNAL LOGGING) WERE NOT EVEN IN THE PACKAGE YET.
NEIL PROMISED TO SEND A CORRECTED VERSION SHORTLY BUT I HAVE NOT RECEIVED
IT YET. THIS WAS SIX WEEKS AGO.
I AM ADDING NEIL TO MY LIST WHICH INCLUDES MARTY AND BASIL AT WALLSOFT.
Msg#4468 To:JOHN THORN (Rcvd)
From:JILL GOHR Date:05/18/88
Subject:(R)UDF Parent Msg#4468
------------------------------------------------------------------------------
got it! just haven't had time to do anything more than skim. Steve also
pointed array inf out.
Thanks ... Jill
Msg#4473 To:JOHN BRISTOR (Rcvd)
From:KENJI NAKANO Date:05/18/88
Subject:(R)CDOS 386 Parent Msg#4397
------------------------------------------------------------------------------
The problem was related to the fact that I was not using the proper
emulation program on the serial end. Digital Research suggested P-Term,
and I have ordered it.
I am using a Zenith 386 and an EGA card in conjunction with CDOS and I am
encountering two curious phenomena. Number one, the display shimmers
constantly if I try to run ANY clipper compiled application immediately
after boot up. The work around for this is to run dBase III plus before
going into the Clipper application. This seems to write something to the
screen that makes Clipper happier. I can then run a non-shimmering
Clipper application. The other problem is that I can't get two Clipper
applications to run at the same time unless I disable the extended memory
in the 386 (with the LIMSIZE 0 command). I can run dBase III in 3 out of
the four windows fine, but a Clipper-compiled "Hello world" only works in
one until extended memory is disabled! Digital Research seems pretty
confused about this, but their hunch is the same as
mine--Clipper+CDOS+Zenith 386=trouble. Do you know of anyone using this
combination?
Thanks for your advice and help.
Msg#4475 To:RON CALLAHAN (Rcvd)
From:MARK WOLLAM Date:05/18/88
Subject:(R)NETLIB Parent Msg#4447
------------------------------------------------------------------------------
I ordered a copy of NETLIB specifically for the journalizing. In fact
when I called I double checked to make sure it was a part of the package.
Assured that it was, I placed my order. That was two weeks ago.
Knowing what I know now, I just might send if right back, assuming I ever
get it.
< Mark >
Msg#4476 To:ABE RICE
From:DIRK LESKO Date:05/18/88
Subject:(R)IDL
------------------------------------------------------------------------------
Abe, try this:
reg_ax("5D09")
interrupt("21")
You can retrieve values from the registers this way:
mem_var = reg_ax()
Easy enough??
dLESKO
Msg#4479 To:KENJI NAKANO (Rcvd)
From:JOHN BRISTOR Date:05/19/88
Subject:(R)CDOS 386 Parent Msg#4397
------------------------------------------------------------------------------
. RE: Screen 'Shimmering' problems with Clipper on CDOS386.
.
Have you tried linking the PCBIOS.OBJ file with your Clipper
Application? CDOS works best with programs that use the bios calls.
In fact if you want to run Clipper programs in the background and the
program does alot of screen writing, then it is probably best that you
link PCBIOS.OBJ with the rest of your object files. CDOS386 also has
a Setup option for the way the screen displays, you might want to tinker
with a few of those.
. I've had no problems running multiple Clipper applications in
CDOS. Your problems could be related to the Zenith 386. In fact, moving
my Novell Network applications to CDOS 386 was a breeze. You also might
want to purchase the CDOS 386 programmer's toolkit. With that product,
you can write inter-task communications for your clipper applications.
You can have several users running a Clipper Application on terminals
and the main console, meanwhile have a Clipper 'task' running
transparently in the background waiting for communication from the main
application. After receiving a message from another clipper program the
background Clipper task can begin some process. For instance, you could
have an inventory system, send a message to the background Clipper task,
that all new incomming shipments of inventory have been entered. The
background task can then automatically begin processing, then send
inventory updates to remote locations through a modem. And all of this
is done totally transparent to the user, they never have to instigate the
process; you just start the backgound task in an autoexec at boot time
and it could take care of alot of processes, it just sits and waits for
communications from other Clipper applications.
.
. Also are you familiar with the PIFED utility for installing
parameters into the .EXE files. Set BANKED memory to YES, SUSPEND OFF,
and set the maximum Memory needed. Also, do you really need LIM?
One other thing, if you experience some problems with printing, such as
spooler conflicts or conflicts with Word Perfect, you might want to try
printing your reports by copying them to the DOS FIle Handle for the
printer using low-level file commands. It can alleviate some problems
with other programs that try to control the printer, yet maintains
compatibility with MSDOS by not making references to CDOS's spooler.
Msg#4482 To:ALL
From:HAWKINS DALE Date:05/19/88
Subject:MOUSE DRIVERS Parent Msg#4482
------------------------------------------------------------------------------
Does anybody know of a good mouse driver for Clipper? There's one on
this board written by Scott Bao called BMOUSE, but it seems not to work
with S87. Poo.
Maybe someone clever would like to fix it?
-- Hawkins
Msg#4485 To:ABE RICE
From:DIRK LESKO Date:05/19/88
Subject:(R)INTERUPT
------------------------------------------------------------------------------
Only if you need to retrieve the value from the register. If the
interrupt returns a value in a register, that is the way to get it.
dLESKO
Msg#4486 To:JILL GOHR (Rcvd)
From:JOHN THORN Date:05/19/88
Subject:(R)UDF Parent Msg#4468
------------------------------------------------------------------------------
Jill: Steve's done us all a real favor in SST. It's sparked some of
my creative juices (just when they were running low!). You're right,
though, it does take alot of time to just browse everything that's
there!! Still learning while learning....
Msg#4487 To:HAWKINS DALE
From:JOHN THORN Date:05/19/88
Subject:(R)MOUSE DRIVERS Parent Msg#4482
------------------------------------------------------------------------------
There is one that Scott did as an update (believe it came from one of
the Nantucket Newsletters). Got it around here someplace...will upload
it when I find the hummer...
Msg#4488 To:HAWKINS DALE (Rcvd)
From:JOHN THORN Date:05/19/88
Subject:MOUSE DRIVERS Parent Msg#4488
------------------------------------------------------------------------------
I've located the file - uploaded it as BMOUSE87.ARC. This is from
Nantucket, also includes the ASM source code so you can adjust the
mouse sensitivity, etc.
Msg#4489 To:STEVE DAVIES (Rcvd)
From:STEVE STRALEY Date:05/19/88
Subject:(R)DBEDIT() Parent Msg#4489
------------------------------------------------------------------------------
The freezing of a field IS SIMPLE!!!! And it will be a topic of
discussion in my seminars and at the Clipper conference. Basically, the
array containg the names of the fields MUST contain the names of UDF's
which in turn will display what you want. Consider the following crude
extract:
DECLARE fields[3]
fields[1] = "PAN1()"
fields[2] = "PAN2()"
fields[3] = "PAN3()"
DBEDIT(10,10,20,70,fields)
*******
FUNCTION Pan1
RETURN(field_no1 + field_no2 + field_no3)
********
FUNCTION Pan2
RETURN(field_no1 + field_no4 + field_no5)
********
FUNCTION pan3
RETURN(field_no1 + field_no6 + field_no7)
You can get fancy and and text, DELETED(), and other goodies as well.
The thing I also do is add my FILL_OUT() function in my toolkit to this
so that all of the windows have the same sold width and it doesn't look
funky on the screen. Additionally, this trick gives ONE solid line of
information. What you have to do is make sure that the window area in
DBEDIT() is identicle to the maximum length of the RETURN() values.
Otheriwse, you'll get the same information in one screen. Hope this
makes sense and helps. The next time I'm on, I'll comment on the other
tip. It's good to know that David Morgan is passing this along to the
users. I offered, and may be taken up on, to fly out to Nantucket Tech
Support and offer some special training/tricks like this. I don't know,
but I think if I help them, then they in turn can help all of you. Maybe
I'm crazy, but it's a thought that MAY pan out. Take care,
Steve
ps... a little soliciting occured... forgive me...
sjs
Msg#4491 To:HAWKINS DALE
From:MARK NEIDORFF Date:05/19/88
Subject:(R)MOUSE DRIVERS Parent Msg#4482
------------------------------------------------------------------------------
Hawkins,
I just noticed BMOUSE87.ARC uploaded today. I'm going to download it.
It is supposed to be for S87.
<< Mark >>
Msg#4492 To:STEVE STRALEY (Rcvd)
From:STEVE DAVIES Date:05/19/88
Subject:(R)DBEDIT() Parent Msg#4489
------------------------------------------------------------------------------
Hello Steve
Thanks for the real fast response and great tips
.
I've played with a couple of the things I mentioned in my last
message to you and I get the feeling there isn't a whole lot
you can't do with DBEDIT().
.
I decided, rather than display a frozen field column, I could just
display the key field of the current record above in a status line.
I used the EXAMPLEP.PRG from S'87 and modified it, replacing the
RECNO()/LASTREC() display with my key field.
.
I want to thank you for the 'FROM DOSS' file about DBEDIT().
What I did was to load the first element in my fields array
with . . . "IF(DELETED(),[*],[ ])" You'd never know from
Nantucket's doc (as extensive as it is), that things like this
are even possible. (Is it reasonable to assume they didn't know ??)
.
Basically I have gotten this thing to work ok and I wanted you to know
that.
Steve
Msg#4494 To:STEVE DAVIES
From:STEVE STRALEY Date:05/20/88
Subject:(R)DBEDIT() Parent Msg#4489
------------------------------------------------------------------------------
You more than welcome. You're basically right about Nantucket NOT
knowing. You guys make money by using the product to help clients, I
maek money by testing the damn thing out and documenting your needs, they
make money from us. Funny how this world works... I'm glad you liked
the FROM DOSS file. We will start sending out the free issue in June
and start the subscriptions shortly thereafter. THanks again, and glad
you're back sailing again. Take care,
Steve
Msg#4495 To:ABE RICE
From:TIM CREAGH Date:05/20/88
Subject:(R)NETLIB Parent Msg#4447
------------------------------------------------------------------------------
I just ordered a small library for the LaserJet from a company by the
name of Mayflower Consulting. I haven't seen the library yet so I don't
know what there stuff is like but they are working on a Net Work Library
with what they say will do anything from within Clipper that you can do
from the prompt. Including Broadcast, Send and others. They told me the
price would be around $99.00 and it would be out next month. If your
interested I'll find the phone number and post a message to you.
-tim-
Msg#4497 To:JOHN THORN (Rcvd)
From:JILL GOHR Date:05/20/88
Subject:(R)UDF
------------------------------------------------------------------------------
John - always something new to learn ... guess that's why I love it so
much!
Msg#4503 To:DAVID WITT (Rcvd)
From:TIM CREAGH Date:05/20/88
Subject:PROGAMMING IN CLIPPER Parent Msg#4503
------------------------------------------------------------------------------
Dave, thanks for the tip on DC Reiters Scientific & Professional
Book Store. I called from San Diego and ordered Programming in
Clipper and they sent it out the same day. I'm looking forward
to reading it. If any one else is looking for Straley's book
they have 29, (28 now) copies left and they will send it out
immediately (took two days from Wash to SD). There phone number
is 202-223-3327
-tim-
Msg#4504 To:CLIFF GREEN (Rcvd)
From:TIM CREAGH Date:05/20/88
Subject:(R)MMAIL MERGE Parent Msg#4504
------------------------------------------------------------------------------
I'm polishing up my MMAIL MERGE code and was interested in what
you've done. I am trying to allow the end user to mark words for
BOLD and UNDERLINE etc. print. Have you had any experience with
using print enhancements?
-tim-
Msg#4506 To:HARRY VANTASSELL (Rcvd)
From:TIM CREAGH Date:05/20/88
Subject:(R) SPREADSHEET SIMULATIO
------------------------------------------------------------------------------
Harry I got your code and it was very enlightining. Thank you for
taking the time (and expense) to send it to me. I am trying to
incorporte your ideas into my sudo spreadsheet.
-tim-
Msg#4507 To:ROB HANNAH (Rcvd)
From:TIM CREAGH Date:05/20/88
Subject:LOTUS DATA ENTRY
------------------------------------------------------------------------------
Rob, thank you for the cl86-123 code. I have looked thru it
several times to try and understand what you have done. But some
of the code refers to procedures that are missing. Maybe you
didn't include them because they should be obvious but so far I
haven't been able to figure it out. I'm sure as I work thru the
code some more I'll figure out what's going on tho'.
-tim-
Msg#4508 To:CLIFF GREEN (Rcvd)
From:TIM CREAGH Date:05/20/88
Subject:(R)OSG105.ARC Parent Msg#4508
------------------------------------------------------------------------------
Cliff I got the newer version of OSG of the ProjectX BBS and made
some screens. When I linked the obj files only one out of 7 screen
worked?? Did you try using it, and if so did you have any success?
-tim-
Msg#4509 To:TIM CREAGH (Rcvd)
From:CLIFF GREEN Date:05/20/88
Subject:(R)MMAIL MERGE Parent Msg#4504
------------------------------------------------------------------------------
The only stuff I've done with print enhancements (so far) has been
non-conditional (read: hard coded) into the output code. So, for
example, I'd put in something like ul = CHR(27)+[&d0D] and then just
include it like this: ? ul+somethingtobeprinted. Likewise, I'd dl fonts
using !COPY \FONTS\HV100RPN.RM8/b PRN (or somesuch) and assign a font#,
then shuffle font#'s by using ? CHR(27)+[(#X] where # is the assigned
no. I suppose the same kind of thing can be done with any other kind of
escape code insertion... easiest would be just turning print modes on
and off (instead of allowing block formatting ala Word) at given points
in the text. If you're using the substitution method you described
earlier for merging, there's no reason why that can't be adapted for
print modes too (e.g., use a different delimiting char for print modes,
or just different fieldnames -- &name& translates to field_name NAME's
contents, and &compress& translates to CHR(27)+[&k2S] for a laserjet, ad
nauseam).
Msg#4510 To:TIM CREAGH (Rcvd)
From:CLIFF GREEN Date:05/20/88
Subject:(R)OSG105.ARC Parent Msg#4508
------------------------------------------------------------------------------
I very briefly looked at it (OSG) and toyed with it once or twice, and
decided (after letting it perk on the back burner for a while) that OSG
is not for me. Not that there's anything technically
wrong/bad/inadequate about it, but rather I don't think I feel
comfortable with it, and will use some of the other alternatives.
Msg#4511 To:ABE RICE
From:DIRK LESKO Date:05/20/88
Subject:(R)IDL INTERUPT
------------------------------------------------------------------------------
Right, I kept my own copy of the register contents. I spoke With Jeff at
R&R and I beleive you should have gotten a beta test version of the
swapper that will let you configure the Interrupts. It's up to them to
take care of the snafu..
dLESKO
Msg#4512 To:ALL
From:FRANK ROMANO Date:05/20/88
Subject:SET CATALOG
------------------------------------------------------------------------------
Could someone please give me an overview of the SET CATALOG function in
dBase. I have programmed almost exclusively in Clipper and never had the
occasion to use this. Thanks in advance...
--Frank--
Msg#4518 To:DIRK LESKO (Rcvd)
From:STEVE HILTON Date:05/21/88
Subject:MEMORY VARIABLES Parent Msg#4518
------------------------------------------------------------------------------
Dirk,
Do you or anyone else on this conf know how to access the internal
Clipper calls to determine how many and the information currently being
stored in memory variables?
I have a program which I need to be able to display all memvars and then
modify them on the fly. In answer to your obvious question, I do not
know what has been stored in memory because the routine allows the user
to create the memvars on their own from within the program.
Please let me know how I can call the Clipper memvar functions to
manipulate these stored variables.
Msg#4519 To:STEVE HILTON
From:DIRK LESKO Date:05/21/88
Subject:(R)MEMORY VARIABLES Parent Msg#4518
------------------------------------------------------------------------------
If you find out, let me know. I have been looking for the last six
months. All I know is where they are NOT. Have you called Nantucket????
(Not that they would help, but maybe just to bug em a little)
dLESKO
Msg#4520 To:CLIFF GREEN (Rcvd)
From:TIM CREAGH Date:05/22/88
Subject:(R)MMAIL MERGE Parent Msg#4504
------------------------------------------------------------------------------
I think what I'm going to have to do is to pull apart the strings and
look at each letter. Then when a "CODE" is found I can send the printer
and escape code etc.
-tim-
Msg#4521 To:CLIFF GREEN (Rcvd)
From:TIM CREAGH Date:05/22/88
Subject:(R)OSG105.ARC Parent Msg#4508
------------------------------------------------------------------------------
I think I'll keep playing around with OSG and see if I can get it to
work. I like the fact that it will cut down on my EXE size.
-tim-
Msg#4522 To:ABE RICE
From:TIM CREAGH Date:05/22/88
Subject:(R)NETWORKING
------------------------------------------------------------------------------
Abe the Company for that Network Library is Mayflower Consulting out of
Burlington, MA. The phone number is (617) 270-9000. I talked with them
friday and they told me that the library wouldn't be ready until June.
Hope this helps.
-tim-
Msg#4524 To:ALL
From:TONY KIRK Date:05/23/88
Subject:DBEDIT() Parent Msg#4524
------------------------------------------------------------------------------
Dirk, Steve, Jill, John, et al.
HELP! Does anybody know of peculiarities in DBEDIT()? Let me set it up:
No relations; active index.
Add a record, user wishes to abort, record is deleted. Then, a hot-key
procedure to DBEDIT() the file for the user to choose the records that
are available. This DBEDIT() displays the deleted record. WHY? This
occurs with SET EXCL ON and OFF.
Using Alt-D to bring up DEBUG verifies that the record is deleted, yet
the field is displayed. SEEK does not "find" the record. What could I
possibly be doing wrong? Is it me, or is it Clipper? Could it be a
buffer vs DBF discrepancy. If I close the file and re-open it BEFORE the
DBEDIT(), the deleted record is NOT diplayed, but that slows it down. Am
I lost, or what?
At a total loss,
-Tk
Msg#4525 To:JOHN THORN
From:HAWKINS DALE Date:05/23/88
Subject:(R)MOUSE DRIVERS Parent Msg#4488
------------------------------------------------------------------------------
Thanks. Mouse sensitivity was not adjustable in the
old version, which was a problem.
Boy, what service.
-- Hawkins
Msg#4526 To:STEVE STRALEY (Rcvd)
From:ROB HANNAH Date:05/23/88
Subject:(R)SMALLER(EXE) Parent Msg#4377
------------------------------------------------------------------------------
I just did a look / run with MS-LINK 3.65 (the one that comes with MSC
5.1) - no /SP to be found. Ah well.
I'm having no problems running MSC 5.1 w/ S87|2:00 Clipper and the
optimizations (/oailt) seem to be much better behaved. Mind you, I think
you should still stick to Nantucket's routines when given a choice -
don't malloc().
ROB
Msg#4527 To:TIM CREAGH (Rcvd)
From:CLIFF GREEN Date:05/23/88
Subject:(R)OSG105.ARC Parent Msg#4508
------------------------------------------------------------------------------
each to his own. (re: OSG)
Msg#4529 To:TONY KIRK (Rcvd)
From:STEVE STRALEY Date:05/23/88
Subject:(R)DBEDIT() Parent Msg#4524
------------------------------------------------------------------------------
I'd be glad to help, but like a doctor, I'm better seeing the patient
(the code). If you want, you can upload it here and I'll download it and
take an exact look. From that, I can also offer suggestions that may
help DBEDIT() work magic. Hope the offer helps... take care,
Steve
Msg#4530 To:ROB HANNAH (Rcvd)
From:STEVE STRALEY Date:05/23/88
Subject:(R)SMALLER(EXE) Parent Msg#4377
------------------------------------------------------------------------------
I didn't say it was documented... just try it! the switch again is:
/SP:1
Take care,
Steve
Msg#4531 To:TONY KIRK (Rcvd)
From:RON CALLAHAN Date:05/24/88
Subject:(R)DBEDIT() Parent Msg#4524
------------------------------------------------------------------------------
TONY:
Have you moved off the deleted record before rechecking. Clipper does
not accept a record as deleted until you have moved off with a skip +
or - or a GO TOP etc.
Msg#4532 To:STEVE STRALEY (Rcvd)
From:ROB HANNAH Date:05/24/88
Subject:(R)SMALLER(EXE) Parent Msg#4377
------------------------------------------------------------------------------
I did try it. I don't have the 3.61 link anymore and the 3.65 gives me a
fatal error 'unrecognized option'. Oh well.
ROB (teaches me to keep old copies lying around)
Msg#4533 To:RON CALLAHAN (Rcvd)
From:TONY KIRK Date:05/24/88
Subject:(R)DBEDIT() Parent Msg#4524
------------------------------------------------------------------------------
Ron,
Thanks. I just got that message from Dennis Dias on CompuServe. I
can't believe something so simple escaped me as it did. By the way, that
WAS the problem.
Tk
Msg#4534 To:STEVE STRALEY (Rcvd)
From:TONY KIRK Date:05/24/88
Subject:DBEDIT()
------------------------------------------------------------------------------
Steve,
If you didn't catch my message to Ron C., I figured it out with a lot
of help from Dennis Dias on CompuServe. Since the file DBEDITed remained
open, and the record pointer had NOT moved, the deleted record was
included in the display. I really can't believe that something so simple
got me hung up for DAYS! Thanks for the offer on the "DBEDIT() magic".
I was tempted to upload ANYTHING <grin> just to see what you had to offer
in the way of tips. Thanks again.
Tk
Msg#4539 To:ALL
From:PHILIP MORRIS Date:05/24/88
Subject:S87 BUG? Parent Msg#4539
------------------------------------------------------------------------------
I have run up against a perplexing problem with S87. I was
trying to open more than 15 files, so I added FILES=30
to my CONFIG.SYS file and SET CLIPPER=F30 to my AUTOEXEC.BAT file.
Everything seemed to work fine until I ended my program.
Then the system crashed requiring a cold boot (no . . alt
ctrl del did not work). After playing around with this
problem for a while, I decided to create a "Hello World"
program and try it. This program displays "Hello World" on
the monitor and ends. It crashes as well! The system I am
using is an 80286 clone running as a node on a
Novell network v2.0a. When I boot my machine as a standalone
PC (no anet3 program) the program runs fine!!! I played
around with the SET CLIPPER=FXX command and found that the
program runs fine until XX is greater than 20. I should
mention that all of my other programs run fine on the
network. I'm stumped!
Msg#4540 To:ABE RICE
From:DIRK LESKO Date:05/24/88
Subject:(R)IDL INTERUPT
------------------------------------------------------------------------------
Keep in mind that you are not actually changing he Ax register. Only My
copy of it. When you do the actual interrupt, the rgisters are loaded.
After the interrupt, I copy the register values to a data area so you can
retrievethem later.
R&R will have to fix the clock() problem since they created it. Their
runtime won't run if ANY program at all snags the clock or keyboard
interrupt. And that inclludes Sidekick, Polydesk etc....
dLESKO
Msg#4541 To:PHILIP MORRIS (Rcvd)
From:DIRK LESKO Date:05/24/88
Subject:(R)S87 BUG? Parent Msg#4539
------------------------------------------------------------------------------
Set Clipper=Fnnn requirs DOS 3.3.
dLESKo
Msg#4542 To:DIRK LESKO (Rcvd)
From:PHILIP MORRIS Date:05/24/88
Subject:(R)S87 BUG? Parent Msg#4539
------------------------------------------------------------------------------
I'm using Dos 3.3
Msg#4543 To:ROB HANNAH (Rcvd)
From:STEVE STRALEY Date:05/24/88
Subject:(R)SMALLER(EXE) Parent Msg#4377
------------------------------------------------------------------------------
Didn't you keep EVERYTHING when you were a kid. Didn't you parents say,
"Rob, you store EVERYTHING in your room. Why don't you throw some of
that stuff away!" Of course, we never did just in case we every should
ever NEED something. By the way... I think it's murphy law #12...
Take care,
Steve
ps. Joe has the banner to design and FROM DOSS will be mailed the first
of June. Hope you will enjoy it!
sjs
Msg#4547 To:DIRK LESKO (Rcvd)
From:HOWARD BALL Date:05/24/88
Subject:HI Parent Msg#4547
------------------------------------------------------------------------------
Finally made it to this board. Wanted to say thanks for your appearance
at our SIG. Hope you liked the column from our June newsletter. (It came
out early because of the presidential election.)
Howie
Msg#4548 To:ALL
From:HOWARD BALL Date:05/24/88
Subject:WESTCHESTER DB SIG Parent Msg#4548
------------------------------------------------------------------------------
▄▄▄ ▄▄▄ ▄▄▄▄▄ ▄▄▄ ▄▄▄▄ ▄▄▄ ▄▄▄ ▄▄▄▄▄
▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄
▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄
▄ ▄ ▄▄▄▄▄ ▄ ▄▄▄▄▄ ▄▄▄▄ ▄▄▄▄▄ ▄▄▄ ▄▄▄▄
▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄
▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄ ▄
▄▄▄ ▄ ▄ ▄ ▄ ▄ ▄▄▄▄ ▄ ▄ ▄▄▄ ▄▄▄▄▄
▄▄▄ ▄▄▄ ▄▄▄▄
▄ ▄ ▄ ▄
▄ ▄ ▄
▄▄▄ ▄ ▄ ▄▄
▄ ▄ ▄ ▄
▄ ▄ ▄ ▄ ▄
▄▄▄ ▄▄▄ ▄▄▄▄
Alias "The Mostly dBASE SIG"
sponsored by the Westchester PC Users' Group
will present
BASIL HOSMER and MARTIN RINEHART
of
Wallsoft Systems
with
UI/2
and a report on the IEEE status of the Standards Committee
(for standardization of a core Dbase like language)
Marty is the President of Wallsoft. Basil, the brilliant
programmer of UI and UI/2. UI was probably the first template
language program generator. In the new version (still in beta
testing) the template language has itself become more Dbase like.
UI/2 generates completes working systems of dBASE, Clipper, and
FoxBase code.
WHEN: May 26th, Thursday at 7:30 p.m.
WHERE: Pleasantville Campus, PACE UNIVERSITY
Miller Hall room 10
note: the U is closed this week. Use entrance # 3 and
loop around campus to the building.
Call me at work for more info if you need it: (914) 631-2101
COME JOIN US!
Howie
Msg#4550 To:PHILIP MORRIS
From:DIRK LESKO Date:05/24/88
Subject:(R)S87 BUG? Parent Msg#4539
------------------------------------------------------------------------------
It sounds screwy then. Have you spoken to Nantucket??? They run Novell
over there.
dLESKO
Msg#4551 To:HOWARD BALL
From:DIRK LESKO Date:05/24/88
Subject:(R)HI Parent Msg#4547
------------------------------------------------------------------------------
thank You. I recieved a newsletter tha said IDL wasn't read yet. It has
been shipping about 2 months now. Could you release another announcing
that??
Thanks.
dLESKO
Msg#4552 To:HOWARD BALL
From:RON CALLAHAN Date:05/25/88
Subject:(R)WESTCHESTER DB SIG Parent Msg#4548
------------------------------------------------------------------------------
Marty and Basil seem to spend more time traveling and pushing non-
existent products than they do developing these products. I to was
impressed whed UI first came out, but for some strange reason I never
saw any of these fantastic new templets that were to be pouring forth.
Later, lo and behold, I am notified that my new copy of UI is about to
be obsolete. If I want to stay on the bandwagon I have to send them
$100 for the soon to be released UI2. (If I don't send it, It will later
cost me $695.
I have yet to receive anything that resembles a true working beta version
of this fantastic product. (It still get letters telling me how great
it's going to be.)
At this point, UI2 rates right up there with Blade and Force III. How
much longer are we going to put up with this bulls..t.
Msg#4553 To:PHILIP MORRIS (Rcvd)
From:HARRY VANTASSELL Date:05/25/88
Subject:S'87 BUG? Parent Msg#4553
------------------------------------------------------------------------------
Hi Philip: re your 4539, you are caught between Nantucket and Novell.
I had the exact same problem, even down to the 'hello world' test and
that was in March. I contacted Ray Love at the mother ship and got
an answer that it was due to Novell's poor support of DOS 3.3 but no
help except a suggestion that I try a later version of the ANET3
shell and a statement that there was no shell fix for SFT ver 2.1,
plus names & phone number of several other folks who had experienced
the same problem. But now the good news - Nantucket didn't charge me
for that helpful <sic> advice, I did by exchanging fax messages.
.
Anyhow, I made a guess and wrote a patch for the Clipper library that
fixed my problem and sent it to Ray and offered to exchange rights to
the patch for a personal complimentary copy of Clipper - the offer
was refused a couple of months later when Nantucket's Rene Gentry
asked for permission to put the patch on the Clipper Source BBS. I
think their outa-pocket cost woulda been less than $25, and as a side
benefit, I would not be blabbing this story to the world! <smile>
.
Now to just get 20 Novell users to send me $20 and I can have my own
personal copy of Clipper and the world can have the patch. Oh yeah, I
was amazed to see the 'poor Novell DOS 3.3 support' problem persist
in the new S'87 library - thus guaranteeing that many folks will have
their large application fail on existing Novell networks, WoWee...
Msg#4555 To:RON CALLAHAN (Rcvd)
From:MENACHEM BAZIAN Date:05/25/88
Subject:(R)WESTCHESTER DB SIG Parent Msg#4548
------------------------------------------------------------------------------
Ron,
I am an avid UI user. I just received the beta of UI2 but havent used it
yet.
UI has saved me more programming time than I care to think about. It has
taken away the necessity of worrying about some of the garbage
programming and I have neen able to spend my time working on new concepts
and ideas.
I couldnt disagree with you more.
Lastly, I needed a special template. So I wrote it myself....
>MB<
Msg#4557 To:HARRY VANTASSELL (Rcvd)
From:PHILIP MORRIS Date:05/25/88
Subject:(R)S'87 BUG? Parent Msg#4553
------------------------------------------------------------------------------
Very Interesting! I downloaded a copy of a newer ANET3 shell for Dos 3.3
from the Novell bulletin board a few months back (V2.01-2) when I
upgraded to Dos 3.3. I'll check to see if there is a newer shell than
that. Thank you for taking the time to respond! I hope Nantucket reads
this and reconsiders your most generous offer. If not, count me in if
you can find 19 more Novell users! I need to be able to open more than 20
files and if Nantucket can't give it to me, then I'll get it where I can!
Msg#4558 To:STEVE STRALEY (Rcvd)
From:CLIFF CORCORAN Date:05/25/88
Subject:(R)SMALLER(EXE) Parent Msg#4377
------------------------------------------------------------------------------
Looking forward to From Doss. The conference in LA is right around the
corner. Are all your tips warmed up for the group? {Grin}. Folks at the
SanFran Clipper group are looking forward to your visit on the 27 of
June. The tool kit looks great and I have gleaned some pretty good ideas
already. See you in L.A.!
Regards CLiff
Msg#4559 To:RON CALLAHAN (Rcvd)
From:CLIFF CORCORAN Date:05/25/88
Subject:(R)WESTCHESTER DB SIG Parent Msg#4548
------------------------------------------------------------------------------
Humm, At least you got notice of UI2 . I did not (as yet).
Regards CLiff
Msg#4563 To:DIRK LESKO (Rcvd)
From:ROB HANNAH Date:05/25/88
Subject:(R)S87 BUG? Parent Msg#4539
------------------------------------------------------------------------------
I've been running into this problem for quite some time now - and nobody
is willing to take the blame. The culprit appears to be Clipper though.
It rears it's head under the following conditions:
DOS 3.3
Netware 2.0a (your shell should be at least 2.01-2 for dos3.3)
use of set clipper=Fnn in the environment
SOME network card / cpu combinations (Thomas Conrad won't work in
enhanced mode - will work in compat.)
The hang occurs in the plankton routine upon exiting clipper.
Workarounds: Upgrade to Netware 2.1 (I'll be rechecking this tomorrow)
Use handles2.arc instead of Fnn (I prefer Fnn if it will work)
If you have arcnet in enhanced mode, try moving to compatible mode
Try changing your base address on your network card / shell
The most plausible reason for this occurance I've heard to date seems to
be Clipper's mucking memory in / about the D0000h range when using the
Fnn stuff.
If you need any more help, call KWIBBLE @703-243-4820 - we're primarily a
LAN (Novell) board and a lot of techies call.
ROB
Msg#4564 To:STEVE STRALEY (Rcvd)
From:ROB HANNAH Date:05/25/88
Subject:(R)SMALLER(EXE) Parent Msg#4377
------------------------------------------------------------------------------
I still have 2 wisdom teeth - I really don't want to throw those away
just yet.
I'm really interested in talking with you some more about 'implied'
overlays and the section statement. How does implied overlaying work
given the following:
begin
section file a, b, c
section file d, e
section file f, g, h, i, j
end
Tanks...
ROB
ps. If you can, I'd like to talk w/ you - leave # or call me at
703-522-0820
Msg#4566 To:ALL
From:NEIL WEICHER Date:05/25/88
Subject:NETLIB UPDATE
------------------------------------------------------------------------------
We apologize to all NetLib purchasers who have been waiting for us
to deliver a complete package. Most of you have received the
package with a photocopy of the draft documentation and one or
more pieces of the package missing (NetLog journaling system, and
TTS interface, in particular).
As Burns said "The best laid plans...". Some technical problems
arose in the development of NetLog and TTS interface that we did
not forsee. Due to these problems, the delivery dates, which we
had confidently predicted, got blown away by about three months.
And since all of our technical efforts were going into finishing
the software, the rewrite of the documentation suffered, too.
In the interrim, we decided to ship out as much of NetLib as we
had available so that you could get your projects underway as
quickly as possible with Clipper-87. Possibly we should have
waited until everything was in place before we shipped anything,
but that would have made even more people unhappy than the way
we did it.
Anyway, you will be happy to know that all the pieces are finally
falling into place. By the end of May we will start shipping the
the complete system with the new documentation to all people who
have purchased NetLib (or updated NetLib) since 12/01/87. Please
keep in mind that it will take 3-4 weeks to send out all copies
so you won't necessarily receive yours immediately. However, if
time is critical, please let us know and we will try to expedite
your shipment.
In regards to the 30 day money back guarantee that NetLib comes
with: you can consider that the 30 day period begins when you
receive the updated package. You will not be penalized for our
tardiness.
We believe that once you see the new NetLib, you will feel that it
was truely worth the wait.
Thank you very much for your patience.
Neil Weicher
Communication Horizons
Msg#4567 To:MENACHEM BAZIAN (Rcvd)
From:RON CALLAHAN Date:05/26/88
Subject:(R)WESTCHESTER DB SIG Parent Msg#4548
------------------------------------------------------------------------------
My point is that I paid $300 dollars for a product that is being
dropped. I did not by the product to write templates. I bought the
product for the templates that were available and supposed to be forth-
coming. I find having to pay another $100 for a product that doesn't
exist and has been advertised by mail for over 6 months bordering on
criminal.
I also liked the original product, but Wallsoft has been extremly
over-zealous in their promise dates.
Msg#4569 To:ROB HANNAH (Rcvd)
From:RON LANDBERG Date:05/26/88
Subject:(R)S87 BUG? Parent Msg#4539
------------------------------------------------------------------------------
Rob, or anyone who knows:
Someone left a message about needing a patch to Novell 2.0a ANET3 if my
CLIPPER application open more than 40 files. I can't find the message
which included the patch.
Could anyone explain what's happning and, if possible, leave a copy of
the needed patch or indicate where it can be gotten from.
Thanks
Msg#4570 To:RON LANDBERG (Rcvd)
From:ROB HANNAH Date:05/26/88
Subject:(R)S87 BUG? Parent Msg#4539
------------------------------------------------------------------------------
First of all -
Make sure you are using a workstation shell version >= 2.01-2 - that's
supposed to have all of the DOS 3.3 support.
The reason anet3.com needs patching is that Novell thought that noone
would ever have any need to open more than 40 files. If you need to
increase it (who doesn't) do the following (I assume you are familiar
with debug):
-e 167
xxxx:0167 28.xx<cr>
w
q
Fill in the appropriate value in hex (we currently use 60 - 96 decimal).
ROB
Msg#4571 To:ALL
From:CHRISTOPHER EDGAR Date:05/26/88
Subject:S87 REPORT BUG?
------------------------------------------------------------------------------
Has Anyone had any trouble with the RL.EXE reports? I keep getting a
message that says "INVALID EXPRESSION IN .FRM" , but when I double check
I can't find anything wrong. I can edit the report format ok, but when I
come back to it again, not everything was saved as I entered it in the
first place. I've had to redefine the entire report 3 times already!
What's going on here? Thanks for any help.
--Christopher
Msg#4573 To:ALL
From:DIRK LESKO Date:05/26/88
Subject:RESPECT Parent Msg#4573
------------------------------------------------------------------------------
Hi all. I think we should take note that Neil Wiecher has left a message
addressing the recent problems in shipping the latest version of Netlib.
I think we should commend Neil for logging in to address the imporatant
issues you all raised here. It is worth noting that Neil's validation
onto the conference was pushed through so that he may address those
messages you left. He had called me on the matter, and he was validated
immediately. The reason I find this worth noting is that we ave come to
the point where we can say that we have begun to get some respect from
the community we comprise. Nantucket is reading our messages with great
interest, and I make notes on them as to what seems like real good
ideas.....and now, we have even gotten the attention of a company that
never logged on since they were invited. (I contacted Neil when I started
the conference so he could participate). It is refreshing to see that we
can, by means of intelligent 'conferencing' attract responses from those
who until late had seemed out of reach. I beleive that if we all speak
out enough, we will be heard. I will try and make sure that those parties
that need to do the hearing, hear. So, now I think I will make a call to
Wallsoft and see if I can get us a little more....respect. ANd i must say
again, Thank you Neil for calling in, and To our own Steve Straley who
had known from the start that this is a good place to meet people, make
friends, and advance their own products and services, thank you too.
So much for all thanks.....time to get back to work....
dLESKO
Msg#4574 To:ROB HANNAH (Rcvd)
From:STEVE STRALEY Date:05/27/88
Subject:(R)SMALLER(EXE) Parent Msg#4377
------------------------------------------------------------------------------
First, I try NOT to use the SECTION command. It takes too much overhead
on the load module. My seminars and other things (FROM DOSS) well
step-by-step go through these topics. I don't think a brief coverage on
here will do justice. I'll try to call before the conference, but I just
found out that I wrote 140 pages of stuff for it and it needs to be
formatted. Anyway, take care and if I don't get ahold of you, take care
and I'll talk with ya after the 9th. Take care,
Steve
Msg#4576 To:ALL
From:RON LANDBERG Date:05/27/88
Subject:S87&NOVELL OPEN FILES
------------------------------------------------------------------------------
> S87 locking up workstation upon exit:
> Can't open more than 40 files
My configuration: CLIPPER S`87 ; NOVELL 2.0a SFT1 with DCB
COMAPQ286 server ; Maxstor 1240 with Adaptec
Western Digital Ethernet Plus NICS
MSDOS 3.31 (with ANET3 patch required for DOS3.3)
PROBLEM 1: Upon exiting S87 application the workstation locks up,
requiring a cold boot to restart. This problem ONLY occurs if the
F parameter of the SET CLIPPER assignment is greater than 20 file
handles.
F=20 or less, the applications end cleanly whether from a RETURN, QUIT,
or the Continue choice (Y/N) when Clipper traps a DOS error. F=21 and
greater, the machine hangs up.
PROBLEM 2: Ignoring problem 1 above, I set F=85. Attempting to open the
41st file resulted in Clipper displaying the DOS error 4 (no handles
left)
It will not open more than 40 of my files. ( And, of course, since F is
set greater than 20, when the Clipper error message appears and I choose
NO
to the question whether to continue, the workstation locks up, etc.!!)
I know there has been discussions of these problems before. But I
haven't
seen the lockup problem traced to F greater than 20 and I haven't seen
that
the strange interrelationship of these two problems has been discussed.
Any help? Or am I just screwed?
P.S. Even with the config.sys file handles assignment lower than the F
parameter if the F paramater was set greater than 20, problem 1
still occurred. (I.e., in config.sys, FILES=20 and in SET
CLIPPER,
F set to 21). By removing the F parameter or reducing its value
to 20 or less, the problem was eliminated whether the config.sys
assignment was greater than 20 or not. This is very bizarre, since
the Clipper manual specifically states that Clipper uses the
LOWER of the value in config.sys and the F parameter.
In testing for problem 2, the config.sys FILES=85, the same as
the F parameter.
Msg#4578 To:ROB HANNAH (Rcvd)
From:RON LANDBERG Date:05/27/88
Subject:BOMB ON EXIT Parent Msg#4578
------------------------------------------------------------------------------
OK I reread all the messages on this subject. I made the change you
suggested in ANET3 and it works great! The 75 dbf and ntx files load like
a champ. Rob, you saved me from a fate worse than death -- having to
rewrite my entire code.
But as to the lockup on exiting with "F" parameter set greater than 20:
You had some suggestions, but since I don't know what's going on I don't
know what to do for my specific configuration ( I listed my configuration
in message # 4575 if you have a momnet to check and see if you have any
specific knowledge about my setup).?
Msg#4580 To:RON LANDBERG (Rcvd)
From:ROB HANNAH Date:05/27/88
Subject:(R)BOMB ON EXIT Parent Msg#4578
------------------------------------------------------------------------------
You ought to try handles2.arc - you don't need DOS 3.3 or Clipper's Fnnn
parameter when you use this. I tried uploading it, but was unable to for
some arcane reason.
ROB
Msg#4582 To:DIRK LESKO (Rcvd)
From:CLIFF CORCORAN Date:05/27/88
Subject:(R)RESPECT Parent Msg#4573
------------------------------------------------------------------------------
I had the good fortune to listen to Neils presentation re:netlib recently
at the Saf Fan Clipper group and enjoyed and learned from the time. Dirk,
you can't be more correct in saying that the conference is good both for
the users/developers AND the product suppliers. I like quite a few of us
capture the conference and refer back to the message strings. It amazes
me why more product suppliers don't visit here. I mean the free input
from a group such as this has got to help any one fine tune a product.
There are never enough beta testers.
Regards CLiff
Msg#4585 To:CLIFF CORCORAN (Rcvd)
From:RON CALLAHAN Date:05/27/88
Subject:(R)RESPECT Parent Msg#4573
------------------------------------------------------------------------------
I believe Neil is starting to get things together. He sent me the
latest update of Netlib by 2nd day UPS at his own expense. When I told
him that UPS had run over the package with a lift truck and ruined the
contents, I awoke the next morning to find Federal Express at my door
with another copy.
After looking over the package I think it might well be worth the money.
My apologies to Mr. W for my earlier comments. (At this time I have not
revisied my opinion of the Marty and Basil Show over at Wallsoft.)
Msg#4586 To:ROB HANNAH (Rcvd)
From:JOEL SHAPIRO Date:05/28/88
Subject:(R)BOMB ON EXIT Parent Msg#4578
------------------------------------------------------------------------------
Handles2.arc uploaded 05/27/88.
Msg#4587 To:ROB HANNAH (Rcvd)
From:RON LANDBERG Date:05/28/88
Subject:(R)BOMB ON EXIT Parent Msg#4578
------------------------------------------------------------------------------
> Lockup on exit from S87 application on Novell
First, thanks to Rob Hannah and others who brought this problem
to our attention. (Particularly, Rob, thanks for the patch to
open more than 40 files - it works like a champ).
As you may remember if you read my message of yesterday ( You
know, the hysterical message that my S87 Clipper application
locked up the workstsation upon exiting the Clipper application -
requiring a cold boot) the workstation would lock up if the "F"
parameter in the SET CLIPPER assignment was greater than 20.
I am no longer hysterical. Nantucket suggested changing the IRQ
on the Western Digital Ether Plus Cards from the factory setting
of 3 to 5. The problem is cured! With Rob's patch and the
changed IRQ, my application now loads and runs like it's supposed
to - with all 80 files open ! And then the application ends
correctly. Life is great!
Msg#4592 To:ALL
From:HOWARD KAPUSTEIN Date:05/28/88
Subject:CLIPPER TC
------------------------------------------------------------------------------
Hi all. I'm back to writing Clipper again. I've got a couple of
questions. I don't have the new Clipper yet (Spring) but will soon. I
know it's written in MS C and has better handling of C and Asm linking of
functions, but I have Turbo C 1.5. Is it compatible, and if so, what do I
need to do to link them together?
Msg#4595 To:TIM CREAGH
From:DAVID WITT Date:05/29/88
Subject:(R)NEWCOMMER Parent Msg#3883
------------------------------------------------------------------------------
Tim,
Glad to be of assistance and hope you were able to get a copy...Sorry it
took me so long to respond but I was in LA for three weeks and hadn't
called the boards...If Reiters wasn't able to help you let me know as
I'll be in DC on Thursday of this week and maybe I can dig one up for you
before I leave for the Clipper Conference next week...
DAVID
Msg#4598 To:ALL
From:J.CLAYTON GREER Date:05/30/88
Subject:STILL LOOKING FOR.. Parent Msg#4598
------------------------------------------------------------------------------
Hello,
I am looking for a fairly complete GL/AR/AP/Payroll program
written in dBASE III+ (of course) preferably PD/ShareWare
type of thing... I have looked at DB3-AR.ARC and DB3LEDGE.ARC
and PERSPAY1.ARC and some others but most either do not work
at ALL (missing files/missing .MEM's/bad syntax/incomplete DB2
conversions/etc...) or just kind of limp along trying to fix them
and not having too much luck.. I do what I think to be a lot of
dBASE programing.. But I do not know where to start on a accounting
package... and would prefer to re-write a shell..
I have looked at SBT and it is a little too much...(both in
capability and complexity for me).
Does anyone know if Champion III has source available ?
I am just getting started in a small business and do not
need that big of a system but I do need it to be fairly complete.
(Payroll is not really necessary at this time)
If there is anything out there... please let me know or
if you have any recommendations on commercial packages...
Thank you very much,
Clay
Msg#4599 To:ALL
From:RON LANDBERG Date:05/30/88
Subject:NEWFILE
------------------------------------------------------------------------------
But NEWFILE doesn't give you the option to go to the bottom of the list
of new files. Much better to use F;L;99 and then "B" after the first
screen to see just the newest listings.
Msg#4600 To:ALL
From:JILL GOHR Date:05/30/88
Subject:IDEAS Parent Msg#4600
------------------------------------------------------------------------------
Situation: must keep running total of labor hours.
1. Consists of 36 input fields:
13 for reg. time
13 for ovr time
13 for prem. time.
2. Subtotal fields (in hrs. and cost) for reg. ovr, and prem.
time.
3. Grand total fields for both cost and hrs.
4. 2 record types: labor and order
I currently have a udf that does the calculations and updates all
screen sub and grand totals when ANY field changes. Screen
updates occur as the record is updated and not after. It accounts
for user aborts, the user hitting PgDn without updating all fields
thru the VALID clause, etc,. The grand total for cost is is
updated in 2 places on the screen. This total cost is stored in
the order record, while all other figures are stored in the labor
record. This total is then used for other calculations, involving
6 other dbfs.
Problem: When the user pulls up the record, and wants to update
a field, they mentally add the new hrs to the hrs currently
displayed. If the field has 3 in it, and they want add 4 MORE
hrs, they enter 7.
The user now wants to be able to enter the new hrs, and have it
automatically added to the current value, and reflect the change
in all sub and grand totals. I still must account for user
aborts and VALID bypasses if all fields are not updated.
I'm looking for ideas ... the best I can come up with is keeping
2 arrays, 1 for the current hr. values, and the other for summing
new entries. I don't want to have check each of the 36 fields for
changes.
Thanks ... Jill
Msg#4602 To:JILL GOHR (Rcvd)
From:DIRK LESKO Date:05/30/88
Subject:(R)IDEAS Parent Msg#4600
------------------------------------------------------------------------------
Hi Jill, If the user wants to add or subtract a number from the current
field while editing in a read, you can do what I did, DO a set key to on
the '+' and '-' (PLUS and MINUS) keys. SET the minus key to a procedure
that pops up a box that asks for a number to subtract, and the plus key
asks for a number to add. Use the INPUT "" TO memvar command since you
are in a read already. (Make sure the variables you are reading are
public too) then, after the user enters the value to add and presses
return. SImply add the value to the memvar they are currently 'GETTING'.
Then you can KEYBOARD a chr(13) and return so that the new number is
displayed and they advance to the next field. Give you any ideas?
dLESKO
Msg#4603 To:PHILIP MORRIS
From:HOWARD MARKS Date:05/30/88
Subject:(R)S'87 BUG? Parent Msg#4553
------------------------------------------------------------------------------
count me in for the $20 also
Msg#4605 To:DIRK LESKO (Rcvd)
From:JILL GOHR Date:05/30/88
Subject:(R)IDEAS Parent Msg#4600
------------------------------------------------------------------------------
Thanks ... will give it a thought. I really don't want to pull up any
more windows, and really want all this to happen "behind the scenes",
you know - "transparent to the user".
Jill
Msg#4606 To:ALL
From:JILL GOHR Date:05/30/88
Subject:MEMOEDIT() Parent Msg#4606
------------------------------------------------------------------------------
Up to this point, I have avoided memo fields like the plague,
based on all the negative comments I've read. However ... I
finally decided to give them a shot, but can't find any good docs
on using them. So far all I've been able to do is pull up a
record, and add a memo field. So here goes ...
1. how do I test whether a memo field exists (is empty?) for a
given record. How I draw my screen will depend on whether the
record has a filled memo field or an empty one.
2. How do I go about setting up a help screen with all the
memoediting functions for the user? Everything I read says to
turn help off.
All help will be appreciated. Thanks ... Jill
Msg#4607 To:J.CLAYTON GREER (Rcvd)
From:STEVE STRALEY Date:05/30/88
Subject:(R)STILL LOOKING FOR.. Parent Msg#4598
------------------------------------------------------------------------------
I was VERY interested in your comment regarding an accounting package. I
can not be specific until AFTER the Clipper conference, but there will be
an answer to your prayers by the fourth quarter this year. Champion III
does have source code available, but they have just announced a move
towards dBASE IV and away from Clipper. Additionally, in my
professional opinion, I do not agree with an accounting method that
attacks the GL file always. Most accounting needs are performed in
batch-mode format and such a strain on a one-file master-file concept is
somewhat limiting. I feel SBT is WAY over-priced to get generic (and
fundamentally) dbASE II code. Account-mate is better but has some major
holes in some areas... and the code could be documented better. Finally,
I think that if SBT or SourceMate REALLY believed in their products, they
would come out with compiled versions as well. AGain, this is one
programmers opinion. Drop me a line in a couple of weeks and I'll be
exact in complete detail and will give you the ABSOLUTE perfect solution.
Take care,
Steve
Msg#4608 To:JILL GOHR (Rcvd)
From:STEVE STRALEY Date:05/30/88
Subject:(R)IDEAS Parent Msg#4600
------------------------------------------------------------------------------
Without knowing specifics, I sometimes pass the element by reference. If
it is an array value that we are talking about, it is still possible to
pass array values by reference. For example, a VALID UDF where you pass
the array value by reference, add to the old array value what you want,
stuff the keyboard with as many CHR(13) which forces ALL GETS to be
re-validated is just ONE way to accomplish this. There are a few other
tricks including based on the ROW() and COL() position, you can figure
out the GET you are one, then STUFF the KEYBOARD with CHR(24) for as many
down arrows you need. Hope that gives SOME ideas. Again, I'd really
show you some better ways if I saw the code... kindof like operating
knowing the disease without knowing the patient. Take care,
Steve
Msg#4609 To:JILL GOHR (Rcvd)
From:STEVE STRALEY Date:05/30/88
Subject:(R)MEMOEDIT() Parent Msg#4606
------------------------------------------------------------------------------
Jill. EMPTY() works on a memo field. Look in SST_1.PRG at the
function called KEYBOARD. In it will show you the various ways a
MOEMEDIT() function may be called INCLUDING within MEMOEDIT(). The
Word-processor (located in SST_4.PRG) calls the user-defined function
"KEYSTROKE" (Sorry about that, there is no KEYBOARD function... it's
called "KEYSTROKE"). If you want more examples of this, I can point them
out to you in specific text within the confines of either the DEMOs
within the Toolkit or WITHIN the ToolkiT itself. This is exactly WHY
there is such a tool: I can point to examples for you to add, subtract,
study and modify to your heart's content. Try to leave me a message
BEFORE Wednesday night... I'm off to California. Take care,
Steve
Msg#4611 To:JILL GOHR (Rcvd)
From:JOEL SHAPIRO Date:05/30/88
Subject:(R)MEMOEDIT() Parent Msg#4606
------------------------------------------------------------------------------
With regard to your # 2, I just pop a box across the top 7 lines of the
screen with the edit info. Most of the times my memo fields are fairly
short; 10 lines max. Yes, help is off.
Msg#4612 To:STEVE STRALEY (Rcvd)
From:JOEL SHAPIRO Date:05/30/88
Subject:(R)STILL LOOKING FOR.. Parent Msg#4598
------------------------------------------------------------------------------
Account Mate (by Sourcemate) is about to release a new version of their
AR and AP programs. You're right Steve, The documentation of their code
leaves me wanting. Of the 2; SBT and Accountmate, I've found AccountMate
to be better received by most clients.
It's hard to modify (took me 2 days to cut up the AR) but seems to work
reliably.
Msg#4615 To:JILL GOHR (Rcvd)
From:CLIFF CORCORAN Date:05/31/88
Subject:(R)MEMOEDIT() Parent Msg#4606
------------------------------------------------------------------------------
Jill;
I was also one who avoided the memo fields. Last week I found I could not
avoid them so here is what I have found so far. Remember I am at square
1.3 as far as memos are concerned. I use the memoedit as
mmemo=memoedit(field,t,l,b,r). SO far I am not using the udf's in the
memoedit but I suspect I will soon. When I pull up the record that has a
memo I do a
mmemo=memoedit(field,t,l,b,r,.F.) &&The .f. is to disallow editing.
IF LEN(mmemo)=0
* THe memo is empty
ENDIF
Hope the blind leading the blind helps.
Regards CLiff
Msg#4616 To:TIM CREAGH
From:DAVID WITT Date:05/31/88
Subject:(R)PROGAMMING IN CLIPPER Parent Msg#4503
------------------------------------------------------------------------------
Tim,
Glad to be of assistance. Reiters has the largest selection of books on
Computer languages I have ever seen, not even in the good ole Silicon
valley itself. If ever you need a book on just about any Scientific
subject I'd try them first, I go downtown in DC just to browse, they
have 3 rows of shelves just on dBASE and it's Supersets alone...just like
a little kid in a Candy store...
DAVID
Msg#4618 To:ALL
From:CLIFF CORCORAN Date:05/31/88
Subject:RREPORT WRITER Parent Msg#4618
------------------------------------------------------------------------------
I am playing with the new (Ver3) of Relational Report writer. I am
puzzled as to the best way to "save" some memory for this thing. It
'says' it only needs 25K but I have set clipper=r100 and still I get an
insufficient memory error. (Seems to be a rr error.) Has anyone had
better luck with this thing?
Regards CLiff
P.S.
I hope everyone is looking forward to L.A. next week. I sure am. {grin}
cc
Msg#4621 To:JILL GOHR (Rcvd)
From:DIRK LESKO Date:05/31/88
Subject:(R)MEMOEDIT() Parent Msg#4606
------------------------------------------------------------------------------
Sounds like one for the SST......
Msg#4622 To:CLIFF CORCORAN (Rcvd)
From:DIRK LESKO Date:05/31/88
Subject:(R)RREPORT WRITER Parent Msg#4618
------------------------------------------------------------------------------
Again.....R&R is using the 25k for their swapper program. if it doesn't
find at least 200k of available memory (which it probably never will) it
will literally SWAP your Clipper program out to disk and use that portion
of memory for it's overlays. However, if you are using ANY program that
intercepts either the keyboard (INT 8) or the timer (int 1c) then R&R
won't run. I've spoken to them about thins and they are in the process of
betaing a copy of the swapper that is configurable so that you can run
even if the interrupts are redirected. Until then R&R will refuse to run
if the iinterrupts are taken. There is no way around this except for
writng a small routine to save the timer and keyboard vectors somehow.
For IDL users, make sure you un_clock() and un_key() before running
R&R.....help at all???
dLESKO