Thanks, Bill.
I am thinking of upgrading my skills, and SQL, VB6 seems to be the route
I
will probably need to go. Guess I am leaning toward either VB Express and
SQL, or VB .Net. I don't care about "overkill" - who knows what may be
needed next? I am looking for a reasonable "cost" to the old company, as
they would still need to purchase all new computers, or GOOD used XP
computers, wiped and re-loaded.
My problem - my poor brain doesn't seem to be able to "get it", like I
used to. Any good pointers to VB Express/VB.NET and use with SQL
database?
The programmers here access several types of databases with C#.NET, or
whatever it is called - not VB.NET. I have lots of simple code to look at
-
not much that truly works with databases.
How would I go about writing a code converter?
Thanks, all, for what you have provided!
Randy Reimers
"William (Bill) Vaughn" <billva@[EMAIL PROTECTED]
> wrote in message
news:%23APEV2BvHHA.1212@[EMAIL PROTECTED]
> Randy,
> Been there. I've been working with BASIC languages since the
paper-tape
> days (before the audio cassette Kansas-city standard days). Before you
go
> launching of on a conversion project, it might be wise to ask a few
> questions.
> Do you plan to upgrade your skills at the same time or simply get
your
> applications to work on a new OS? If this is the case, you should be
> investigating technology that is not already obsolete (perhaps not as
aged
> as Thoroughbred Basic). For example the JET database engine (while still
> in wide use) is really obsolete. The DAO interface used to access it has
> not been fixed/tuned/repaired for many years. While some would say the
SQL
> Server Express is overkill, there are some advantages to using it
> (especially when you're thinking about learning new skills). And, I
would
> agree. SQL Express is overkill for some applications, but SQL Server
> Compact is not. This engine is not new and has been recently re-licensed
> and re-engineered (somewhat) to work on a Windows platform. It's light,
> fast and more secure than JET without the problems of clutter-removal
> typical of JET.
> As to the language, VB6 is also very widely used and rightly so.
> However, it has been replaced with a more modern OO language that
(again)
> if you're interested in upgrading your skills would be a better choice.
> Both SQL Server Compact and Visual Basic (Express) are free downloads
> and get you up to speed technically. It might be a fun project to write
a
> code converter to migrate your source code to VB.NET.
>
> hth
>
> --
> William (Bill) Vaughn
> Author, Mentor, Consultant
> Microsoft MVP
> INETA Speaker
> www.betav.com/blog/billva
> www.betav.com
> Please reply only to the newsgroup so that others can benefit.
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
> __________________________________
> Visit www.hitchhikerguides.net to get more information on my latest
books:
> Hitchhiker's Guide to Visual Studio and SQL Server (7th Edition) and
> Hitchhiker's Guide to SQL Server 2005 Compact Edition
>
>
-----------------------------------------------------------------------------------------------------------------------
> "Randy Reimers" <rreimers.nul@[EMAIL PROTECTED]
> wrote in message
> news:%23MBDBOHrHHA.4984@[EMAIL PROTECTED]
>> (Hope I'm posting this correctly, otherwise - sorry!, don't know what
>> else to do)
>> I wrote a set of programs "many" years ago, running in a type of basic,
>> called "Thoroughbred Basic", a type of business basic. I need to
>> re-write it, bring it kicking and screaming to run on Windows XP. This
>> is for a video rental place, tracks movie and game rentals, customers,
>> employee transactions, reservations, does re****ts,..... and on.
>> I know some of Visual Basic - I now write VB scripts for work. Can
>> anyone help with suggestions, as to converting this to a new language?
>> What may be easiest for me? And, what type of database engine would be
>> best? SQL, Access, flat files, I don't know enough.
>> This does NOT run under Windows, Linux, or any "new" OS - but I can
>> ex****t all the files, and programs to DOS. They currently are running
on
>> 20-30 286 or 386 computers - not a misprint - OLD! Not networked, not
>> neccessary. The data files it uses are called "Direct" and "Sort". I
>> have about 90 programs, a few are overlays, most are stand-alone, 25-30
>> are just for re****ting purposes. It can stay character based - no need
>> for fancy screens or pix.
>>
>> Here is a sample:
>> 0010 REM "RENTAL/MEMBER****P SYSTEM TOP HALF AND SUBMENU"
>> 0020 REM "PROGRAM VID-AA"
>> 0030 REM 06/07/99
>>
>>
>> 0050 BEGIN
>> 0060 PRECISION 2
>> 0070 SETERR 09000
>> 0080 DIM B$(80,"-"),B1$(80,"_"),B2$(80,"<"),S$(80," ");
>> IF FID(0)="T0" THEN
>> DIM B2$(80,CHR(205))
>> 0090 DEF FNA$(X$)=X$(1,2)+"/"+X$(3,2)+"/"+X$(5,2)
>> 0100 DEF FNC$(X$)=X$(3,2)+"/"+X$(5,2)+"/"+X$(1,2)
>> 0110 DEF FND$(X$)="("+X$(1,3)+") "+X$(4,3)+"-"+X$(7,4)
>> 0120 DEF FNE$(X$)=X$(1,2)+X$(4,2)+X$(7,2)
>> 0130 DEF FNF$(X$)=X$(5,2)+X$(1,4)
>> 0140 DEF FNZ$(X$)=X$(1,POS(" "=X$+" ")-1)
>> 0150 OPEN (6) "CONTRO"
>> 0160 READ (6,KEY="001") *,N1$,*,A0$,A1$,A2$
>> 0170 READ (6,KEY="TODAY") Z9$,Z8$
>> 0180 LET E1$="";
>> READ (6,KEY="RENT"+FID(0),DOM=00200) E1$,T
>> 0190 REMOVE (6,KEY="RENT"+FID(0)) ;
>> IF T<>TIM THEN
>> LET E1$=""
>> 0200 IOLIST
>> M0$(1,250),M(0),M(1),M(2),M(3),M(4),M(5),M(6),M(7),M(8),M(9),M
>> (10),M(11),M(12),M(13),M(14),M(15),M(16)
>>
>> 0210 REM "OPEN FILES"
>>
>> 0220 OPEN (1) "VID01"
>> 0230 OPEN (2) "VIDST"
>> 0240 OPEN (3) "VIN01"
>> 0250 OPEN (4) "PHONEY"
>> 0260 OPEN (5) "VIV02"
>> 0270 OPEN (8) "IDSRT"
>> 0280 OPEN (9) "VIN02"
>> 0290 OPEN (10) "VIN03"
>> 0300 OPEN (11) "RSVST"
>> 0310 OPEN (12) "VINST"
>> 0320 OPEN (14) "VIN04"
>>
>> 0330 REM "PAINT SCREEN"
>>
>> 0340 LET N3$=FNZ$(N1$)+" - MEMBER****P SYSTEM"
>> 0350 LET Y$=FNF$(FNE$(Z9$)),Y=NUM(Y$(3,2))-6
>> 0360 IF Y<1 THEN
>> LET
>> Y$(1,2)=STR(NUM(Y$(1,2))-1:"00"),Y$(3,2)=STR(NUM(Y$(3,2))+6:"0
>> 0")
>> ELSE
>> LET Y$(3,2)=STR(Y:"00")
>> 0370 PRINT
>> 'CS','SB',@[EMAIL PROTECTED]
(36-INT(LEN(N3$)/2),0),N3$,'BG',@[EMAIL PROTECTED]
(0,1),B2$,'EG','SF'
>>
>> 0380 PRINT 'SB',@[EMAIL PROTECTED]
(0,2),"NUMBER",@[EMAIL PROTECTED]
(15,2),"LAST
NAME",@[EMAIL PROTECTED]
(50,2),"INVOICE
>> #",@[EMAIL PROTECTED]
(
>> 0,3),"COMMENTS",@[EMAIL PROTECTED]
(65,3),"LAST
>> TIME",@[EMAIL PROTECTED]
(56,4),"HARDWARE",@[EMAIL PROTECTED]
(0,4),"
>> NAME",@[EMAIL PROTECTED]
(35,4),"DL#",@[EMAIL PROTECTED]
(42,5),"VCR
>> OWNER?",@[EMAIL PROTECTED]
(55,5),"MAILING?",@[EMAIL PROTECTED]
(6
>>
>> 6,5),"TYPE",@[EMAIL PROTECTED]
(0,5),"ADDRESS",@[EMAIL PROTECTED]
(0,6),"ADDRESS",@[EMAIL PROTECTED]
(42,6),"JOINED",
>> @[EMAIL PROTECTED]
(58,6),"LAST ACTIVITY",@[EMAIL PROTECTED]
(0,7),"ZIP",@[EMAIL PROTECTED]
(18,7),"CARRIER
>> ROUTE",@[EMAIL PROTECTED]
(
>> 42,7),"MTD",@[EMAIL PROTECTED]
(51,7),"YTD",@[EMAIL PROTECTED]
(61,7),"HOLD",@[EMAIL PROTECTED]
(0,8),"PHONE
>> HM",@[EMAIL PROTECTED]
(24
>>
>> ,8),"WK",@[EMAIL PROTECTED]
(42,8),"#LT",@[EMAIL PROTECTED]
(50,8),"#FREE",@[EMAIL PROTECTED]
(60,8),"#MP",@[EMAIL PROTECTED]
(0,10),"T
>> OT
>> $$",@[EMAIL PROTECTED]
(16,10),"IG",@[EMAIL PROTECTED]
(25,10),"IM",@[EMAIL PROTECTED]
(34,10),"IU",@[EMAIL PROTECTED]
(43,10),"IV",
>> @[EMAIL PROTECTED]
(52,10),"IX",@[EMAIL PROTECTED]
(62,10),"UNPAID
>> FEE",'BG',@[EMAIL PROTECTED]
(0,9),B2$,@[EMAIL PROTECTED]
(0,11),B2$
>> ,'EG','SF'
>>
>> 0390 REM "IOLISTS"
>>
>> 0400 IOLIST
>> 'LD','LD','LD','LD','LD','LD','LD','LD','LD','LD','LD','LD','L
>> D','LD'
>>
>> 0410 REM "EXTRA SETUP"
>>
>> 0420 LET M5$="##0",M6$="####.00-",M7$="###.00-"
>> 0430 READ (6,KEY="DUEDATE") D1$;
>> LET D4$=D1$,D2$=D1$
>> 0440 READ (6,KEY="STORENUM",DOM=00441) R8
>> 0450 DIM Z5$(36);
>> READ (6,KEY="DZIP",DOM=00451) Z5$(1,9)
>> 0460 READ (6,KEY="DACODE",DOM=00461) Z5$(10,3)
>> 0470 READ (6,KEY="DAADDR",DOM=00471) Z5$(13,24)
>> 0480 LET D5$=S$(1,6);
>> READ (6,KEY="HANDOUT",DOM=00490) D5$,D6$
>>
>> 0490 REM "SOLICIT MEMBER NUMBER"
>>
>> 0500 IF E1$<>"" THEN
>> LET E0$=E1$(1,3);
>> IF E1$(1,3)<>S$(1,3) THEN
>> GOTO 00520
>>
>> 0510 GOSUB 02430;
>> IF E0$="" THEN
>> GOTO 00010
>>
>> 0520 PRINT @[EMAIL PROTECTED]
(7,2),B1$(1,6);
>> IF E1$<>"" THEN
>> PRINT @[EMAIL PROTECTED]
(7,2),'SB',E1$(4,6),'SF'
>> 0530 DIM M0$(250),M(16);
>> LET M0$(222,1)=STR(R8:"0"),M0$(147,6)=FNE$(Z9$)
>> 0540 LET G$="**",M0$(210,3)=E0$(1,3)
>> 0550 PRINT @[EMAIL PROTECTED]
(0,23),"F1=I.D. NUMBER",@[EMAIL PROTECTED]
(0,22),"ENTER MEMBER #,
CR=LAST
>> NAME,
>> F2=PHONE SEARCH, F3=NEXT NEW CUSTOMER #, F4=END",;
>> INPUT (0,ERR=00550) @[EMAIL PROTECTED]
(7,2),Q$,@[EMAIL PROTECTED]
(0,23),'CL',@[EMAIL PROTECTED]
(0,22),'CL',
>> 0560 IF CTL=1 THEN
>> GOTO 01240
>> 0570 IF CTL=2 THEN
>> GOTO 01360
>>
>> 0580 LET X=NUM(Q$,ERR=00590);
>> IF LEN(Q$)=7 OR LEN(Q$)=10 THEN
>> LET G$=Q$;
>> GOTO 01370
>> 0590 IF Q$="T" THEN
>> READ (6,KEY="TEMPNUM",DOM=00600) P5;
>> LET P5=P5+1,Q1$=STR(P5:"T00000");
>> READ (1,KEY=Q1$,DOM=00690) ;
>> WRITE (6,KEY="TEMPNUM") P5;
>> GOTO 00590
>> 0600 IF Q$="END" OR CTL=4 THEN
>> GOTO 09110
>> 0610 IF CTL=3 THEN
>> READ (6,KEY="NXTCUS",DOM=00620) P5;
>> LET P5=P5+1,Q$=STR(P5:"#####0");
>> WRITE (6,KEY="NXTCUS") P5;
>> READ (1,KEY=Q$,DOM=00680) ;
>> GOTO 00610
>> 0620 IF Q$="" AND E1$<>"" THEN
>> LET Q$=E1$(4,6);
>> GOTO 00710
>> 0630 IF Q$="" THEN
>> PRINT @[EMAIL PROTECTED]
(7,2),S$(1,6);
>> GOTO 01070
>>
>> 0640 FOR I=1 TO LEN(Q$)
>> 0650 IF POS(Q$(I,1)<"!")<>0 OR POS(Q$(I,1)>"z")<>0 THEN
>> EXITTO 00540
>>
>> 0660 NEXT I
>> 0670 IF LEN(Q$)>6 THEN
>> GOTO 00550
>>
>> 0680 LET Q$=S$(1,6-LEN(Q$))+Q$
>> 0690 IF Q$="T" THEN
>> LET Q$=Q1$
>> 0700 PRINT @[EMAIL PROTECTED]
(7,2),Q$
>> 0710 LET M0$(1,6)=Q$
>> 0720 READ (1,KEY=M0$(1,6),DOM=01490) IOL=00200
>> 0730 GOSUB 00740;
>> GOTO 00850
>> 0740 IF M0$(238,1)=" " THEN
>> LET X7$=S$(1,7)
>> ELSE
>> LET X7$="*NOF*";
>> CLOSE (7) ;
>> OPEN (7) "MEMTY";
>> READ (7,KEY=M0$(238,1),DOM=00750) X7$;
>> LET X7$=X7$(2)
>> 0750 LET X7$=X7$+S$(1,10)
>> 0760 IF M0$(153,1)=" " THEN
>> LET X8$=S$(1,11)
>> ELSE
>> LET X8$="NOT ON FILE";
>> CLOSE (7) ;
>> OPEN (7) "VSYH";
>> READ (7,KEY=M0$(153,1),DOM=00770) X8$;
>> LET X8$=X8$(2)
>> 0770 LET X5$=S$(1,14);
>> IF M0$(112,10)<>S$(1,10) THEN
>> LET X5$=FND$(M0$(112,10))
>> 0780 LET X6$=S$(1,14);
>> IF M0$(122,10)<>S$(1,10) THEN
>> LET X6$=FND$(M0$(122,10))
>> 0790 IF M0$(215,6)=S$(1,6) THEN
>> LET X3$="NONE"
>> ELSE
>> LET X3$=FNA$(M0$(215,6))
>>
>
>


|