15.01.2013 Views

Xz77gt

Xz77gt

Xz77gt

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

field or '0' will allow you to<br />

overwrite new data into it. If<br />

you made a mistake selecting<br />

thefield,Ewill let you exit back<br />

to choose another field.<br />

Next on the EDIT menu is<br />

SEARCH and REPLACE.Thisisa<br />

very powerful feature using<br />

fully all the SEARCH routines in<br />

the program. After selecting<br />

the field you wish to search,<br />

type in the search data. The<br />

String must be prefixed with<br />

character to indicate which<br />

type of search is to be done.<br />

The sixdifferenttypesarelisted<br />

at the top of the screen (for<br />

information on these see the<br />

documentation on for the<br />

search option).<br />

If scan string is used it can<br />

be made to insert data in a<br />

number of records e.g. to insert<br />

a middle name into MARK<br />

ANTHONY you would type;<br />

Search data ?@ANTHONY<br />

Replace data?ANDREW<br />

ANTHONY<br />

The name ANDREW would<br />

then be inserted at every<br />

occurrence of this name, but<br />

be careful since the routine<br />

searches for the fi rst<br />

occurrence of the string within<br />

a field, Le. if you wanted to<br />

insert my middle name DANIEL<br />

into GARETH THOMAS you<br />

could not use the shortened<br />

version e.g.<br />

Search data?@TH<br />

Replace data?DANIEL TH<br />

since the result would be<br />

GAREDANIEL TH THOMAS<br />

because TH occurs twice in my<br />

name, instead you would have<br />

to type the whole e.g.<br />

Search data?gTHOMAS<br />

Replace data?DANIEL THOMAS<br />

Search and Delete is similar<br />

in operation and replace. If you<br />

select any of the search options<br />

apart from '@' scan string the<br />

whole fi eld will be deleted.<br />

Using scan string can enable<br />

you to delete from inside a<br />

string e.g. to delete my middle<br />

name;<br />

Search data? @ DANIEL<br />

Note the space before DANIEL,<br />

since otherwise the result<br />

would be CARETHTHOMAS<br />

because the new string is<br />

reassembled around the<br />

position of the old one and<br />

their are two spaces around the<br />

old one.<br />

SUB 4400:60TO 2640<br />

2760 REM DELETE FIELD<br />

HOMEPIGOSUB 9800<br />

2906 GET 68:IF 68=<br />

2770 IF 6$N<br />

1 ER)N":GOSUB 4400<br />

DITHEN 160TO 2640<br />

A2780 S IF ( 6$0 D<br />

2781<br />

, 1 REM OVERWRITE FIELD-CAL<br />

0 L INPUT S/R WITH EDIT FLA<br />

1 6 SET SAVE MAIN VARIABL<br />

THEN ES<br />

2790 2 7GOSUB 5 29701ECACIRCNER<br />

0 1120160SUB 2000<br />

2800 IF ISN"THEN AS(D,ER)N<br />

1<br />

2810 RCNEC:GOSUB 4400<br />

:60TO 2640<br />

1 TURN<br />

N2907<br />

IF 610<br />

1 12910<br />

PRINPECLEARY<br />

THEN Y :SYS AT,9,14:PRINT R E<br />

1 1ESPC,SD,SE,SL,SE,ST,SI,SN,<br />

THEN 8SG,SPC3$<br />

8<br />

22911 9REM 0MOVE<br />

RECORDS DOWN<br />

6 TO DELETE BLOCK<br />

2920 FOR 0N07+1 TO RC-1<br />

FOR FNO TO FD<br />

:Al(F,OF-1+(0-0T))=AliF,DI<br />

!NEXT:NEXT<br />

2930 RENRC-M-OFWIRETURN<br />

2940 1<br />

2830 SYS AT,0,24:PRINT 2950 REM DELETE DATA ON SCRE<br />

1 RVSON,SPC6,WHITE,SPC3,SU<br />

EC7, RE YOU SURE7ESPC4,C7,<br />

EN FOR OVERWRITE<br />

2970 LIN":FOR LN1 TO LENCAS<br />

SPC12,HOME1<br />

2840 GET GIF 6$N<br />

1 TURN<br />

N2860<br />

IF 6$0<br />

1 12870<br />

SYS AT,0,24:PRINT'EC7<br />

THEN Y1<br />

RYSON,SPC8,WHITE,SPC5,SU<br />

R E<br />

1 ELETING DATA.. ESPC4,C7<br />

THEN 1SPC4,HOME/<br />

22871 8REM 4MOVE<br />

RECORDS ABOVE<br />

0<br />

DELETED ONE DOWN<br />

2880 FOR CNER TO RC<br />

:FOR FNO TO FD<br />

:A1(F,C)NAliF,C41/1NEXT<br />

INEXTIRCNRC-IRETURN<br />

2881<br />

2882 REM BLOCK DELETE S/R<br />

iD,ERHILSNLO"INEXT<br />

:GOSUB 2995:PRINT L$<br />

:RETURN<br />

2975<br />

2976 REM S/R TO HIGHLIGHT<br />

CURRENT FIELD TO EDIT<br />

2980 GOSUB 29951PRINT<br />

1 'AS(D,ER)IRETURN<br />

ERVSON1<br />

2985 USUB 2995:PRINT A$(D<br />

1<br />

2890 SYS AT,5,6:INPUT'ESDI<br />

ELETE FROM-<br />

1:IF<br />

DF(1 OR DFAC-2 THEN<br />

0F 2890<br />

2895 ERNDF:M$N<br />

1 SPC9,WHITE,SPC,SURE YOU<br />

ERYSON,C7 SUREEY/WESPC,C7,SPC10,<br />

1<br />

HOMEMGOSUB 9800<br />

:60SUB 4390<br />

2896 EET GSIIF 6$N<br />

1 .N"ECLEARY:60TO 2890<br />

N2897<br />

IF 5$0<br />

1 12900<br />

PRINT<br />

THEN Y"THEN<br />

1 1SYS AT,5,101INPUTIESD1<br />

P R<br />

2ECLEAR ELETE 8 9 6<br />

Y :IF DT(NDF OR DI)RC-1 THE<br />

N 2900<br />

2902 ERNDT:SOSUB 9800<br />

:GOSUB 4390<br />

2903 GET GS:IF ESNWTHEN PR<br />

INT<br />

2904 1IF<br />

6$0<br />

12905<br />

EC SYS AT,0,24:PRINT<br />

Y1<br />

ERVSON,C7,SPC,WHITE,SPC,<br />

LE<br />

1 SD10 ARYOU<br />

WISH THE DELETE<br />

THEN 1TO<br />

60 AHEAD<br />

2 191<br />

0<br />

3 00 ESPC,C7,S<br />

TO PC,<br />

2<br />

ER):RETURN<br />

3040 ITSNLEFTWS,1)<br />

:LNNLECSSI-IISSNRIGHTItS<br />

$,LN1:GOSUB 3599<br />

3050 IF CPS:"THEN 3000<br />

3060 PRINT TABEIOPEDOWN2,S111<br />

EPLACING—ESPC,DOWN31<br />

1FOR DN1 TO LENICPSI<br />

IPNASCiMIDS(CPS,D,1))<br />

3070 IF IT$0<br />

1 PINIS:GOTO 3092<br />

83075<br />

REM CHECK LENGTH OF STR<br />

1 ING DOES NOT EXCEED FIELD<br />

THEN<br />

LENGTH<br />

A3000 lIF i LENiAS(SI, S I<br />

, P1)-LPLENtIWNVALE8$0,<br />

SIHTHEN 3091<br />

3090 PRINT TAB(3)<br />

1 ESPC,SS1TRIN6 TOO LONG<br />

EUMI IN?' 1 1<br />

2990 SYS AT,0,24:PRINT"EC7,<br />

1 RVSON,SPC,WHITEWI-ESDI<br />

ELETEESPC,C7,SPC,WHITE,<br />

SPC1F3-ESONERWRITESPC,<br />

C7,SPC,WHITE,SPC)F5-[SE)<br />

XIT(SPC,C7,SPC2,HOME)<br />

:GOTO 1 3092<br />

3091 ACSI,P)NLEFICASiSI,P/<br />

1GOS<br />

PS-IMPRIGHTSEASESI<br />

UB<br />

ILENiAS(S1<br />

9 8<br />

3092 N, 1NEXTIGOSUB<br />

0 0 98001RETURN<br />

3093 P))- EFNIIISNO6OSUB 4350<br />

(PS-1+1.Ni<br />

IINPUT<br />

I1IELD<br />

N0.(-1 TO EXIWOI<br />

EDOW :IF SIN-1 THEN RETURN<br />

3094 N2 IF 5I(1 OR SI)FD+1 THEN<br />

I<br />

3093<br />

3095 RIGHT SINSI-1:INPUT<br />

1 2,SF] RIGHT2,SEEARCH DATA<br />

EDOWN2, 1:IF<br />

SIN"THEN 3093<br />

3096 0$ ITSNLEFTS(9,1)<br />

:LNNLEN(SS)-119NRIGHTSiS<br />

2991 REM CURSOR SET SIR<br />

2995 SYS ATM:L(13(1,0)1-3,<br />

YAL(BC0<br />

2996 I 1<br />

2997 D)-61RE REM SEARCH & REPLACE<br />

TURN<br />

S/11<br />

3000 EFN ISNO:GOSUB 4350<br />

:INPUT<br />

1IELD<br />

WO.(-1 TO EXIT)"01<br />

EDOW :IF SIN-1 THEN RETURN<br />

3010 N,RIG IF SI(1 OR SI>F0+1 THEN<br />

HT2,S<br />

3000<br />

3020<br />

N<br />

SSN"ISINSI-1<br />

:SYS AT,2,16:INPUT<br />

1EARCH<br />

DATA<br />

ESS1 1:IF<br />

Ste<br />

3025 0$ 1SYS<br />

AT,2,18:PRINT<br />

1 THEN EPLACE DATA<br />

ESRI 371 :SYS 0AT,15,18:POKE<br />

251,0<br />

3026 01XN181Y REM 0CALL<br />

INPUT ROUTINE<br />

224 TO MAKE SURE DATA CONFOR<br />

MS TO FIELD TYPE<br />

3030 POKE 252,VAL(B$(3,61))<br />

:POKE 253,VAL(LEFTSEBS(4,<br />

SII,1))00SU8 2020<br />

3031 REM CALL SEARCH SiR<br />

20<br />

$,LN)00SUB 3599<br />

:IF CP$<br />

3097 01 PRINT TAB(9)IEDOWN2,<br />

RVSON,SPC,SIDELETING—<br />

THEN<br />

3':FOR 0 ON1 9 TO LENiCPSI<br />

3:PNASCEMIDS(CPS,D,1))<br />

3098 IF IT$0<br />

1 P/N":NEXTIRETURN<br />

13099<br />

ASiSI,P/NLEFTS(ACSI,PI<br />

1o<br />

PS-1)4111MACSI,PI,PPLN,<br />

THEN LENCASiSI,P I:NEXTIRETURN<br />

3100 A tPRINPECLEAR,WHITE, i S I<br />

,<br />

DOWN3,RIGHT2,SP3RESSO<br />

:PRINT TABE5PIDOWN211<br />

-ESPC,ST10 VIEW A RECORD.<br />

3101 PRINT TA8(3)<br />

1 -ESPC,S110 VIEW ALL RECO<br />

EDOWN2I2<br />

RDS.<br />

13<br />

-ESPC,SENIT.<br />

3102 :PRI GET GS:IF 6S=<br />

1 NT 20<br />

23103<br />

TA IF 6$<br />

10<br />

3104 Bi5 IF 6$0<br />

THEN 33105<br />

1 I<br />

PRINT 3 1<br />

1<br />

1<br />

THEN CCLEAR 1 ED<br />

R1THEN OW E T<br />

U3 N2] R1 0N<br />

2

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!