Professional Documents
Culture Documents
Jbase Va Lap Trinh Inforbasic
Jbase Va Lap Trinh Inforbasic
- Sao lu d liu:
COPY FROM source TO dest dataSource,dataDest
Sao lu mt bn ghi t mt bng hoc mt file t mt th mc
COPY FROM source TO dest ALL
Sao lu ton b d liu t mt bng hoc ton b file t mt th mc
Source Bng ngun hoc th mc ngun
Dest Th mc ch
dataSource file ngun hoc ID ca bn ghi ngun
dataDest file ch hoc ID ca bn ghi ch
Ch : Nu copy t mt ngun vo chnh n th khng cn TO dest
- Xa ton b d liu trong mt bng hoc trong mt th mc
CLEAR.FILE tn_bng (hoc tn th mc )
2. Son tho v bin dch chng trnh
- Trong jbase s dng JED (JBASE EDITOR) son tho chng trnh
- Khi ng JED: Vo REFLEXTION chn N
jsh coretest ~ -->
- Son tho: JED tn_th_mc tn_chng_trnh
V d: jsh coretest ~ -->JED
IT.BP
TEST
- Bin dch : EB.COMPILE tn_th_mc tn_chng trnh
V d: jsh coretest ~ -->EB.COMPILE
IT.BP TEST
Bin dch nhiu chng trnh:
SELECT IT.BP
> EB.COMPILE IT.BP
- Mt s lnh hay dng:
FS: Lu chng trnh
FI :Lu v thot chng trnh
EX hoc Ctrl + X:Thot, khng lu
nEnter: Nhy xung dng n
DE hoc Ctrl +D +D: Xa dng
CB :Copy khi nh du v pase vo v tr con tr hin thi
CB n :Copy khi nh du v pase vo v tr con tr hin thi n ln
DB : Xa khi nh du
MB : Chuyn khi nh du ti v tr con tr
Ctrl + K: Xa t v tr con tr n ht dng
Ctrl + L: Chn hng
Ctrl + T : Copy k t trn xung hng di
Ctrl +G : nh du khi
Ctrl +V : nh dng code
IF <DK> THEN
{ TAP LENH }
END
Dng 3:
IF <DK> THEN
{ TAP LENH }
END
ELSE
{ LENH }
Dng 4:
IF <DK> THEN
{ TAP LENH }
END
ELSE
{ TAP LENH }
END
Dng 5:
Dng 1:
Dng 2:
- Vng lp REPEAT
LOOP
< LENH 1>
WHILE <DK>
< LENH 2>
REPEAT
Thc hin lnh LENH 1 , kim tra iu kin DK, nu tha mn iu kin th thc
hin lnh LENH 2
- REMOVE bin FROM mng SETTING pos: Ly d liu ca phn t trong
mng v tr v bin, v tr ca phn t s nh du cho ln gi sau, pos=0 nu c n
phn t cui cng ca mng v khc 0 nu cha c n phn t cui.
- Cu lnh BREAK: Thot khi vng lp gn nht
- Cu lnh CONTINUE: Quay tr li vng lp t v tr t lnh
- Cu lnh GOSUB nhn: Nhy ti nhn sau khi kt thc th tc nhn th tr con
tr v v tr ngay sau lnh GOSUB
- Cu lnh GOTO nhn: Nhy ti nhn v khng quay v v tr c
d. Cc ton t:
- Ton t cng: +
- Ton t tr : - Ton t nhn: *
- Ton t chia: /
- Ton t ni chui: :
e. ch thch : dng du * u dng
2.Mt s hm hay dng :
CRT CHUI: in CHUI ra mn hnh
LEN(CHUI): Tr v di ca CHUI
COUNT(CHUI,CHUI_1): m s ln xut hin ca CHUI_1 c
trong CHUI
5
Li gii:
SUBROUTINE CUS.INFOR.YOURNAME
$INSERT I_COMMON
$INSERT I_EQUATE
$INSERT I_F.CUSTOMER
*kHOI TAO
GOSUB INIT
*MO FILE
GOSUB OPENFILE
*XU LY LAY DU LIEU
GOSUB PROCESS
RETURN
INIT:
FN.CUS='F.CUSTOMER'
F.CUS=''
Y.CUS.ID=100175
RETURN
OPENFILE:
CALL OPF(FN.CUS,F.CUS)
RETURN
PROCESS:
CALL F.READ(FN.CUS,Y.CUS.ID,R.CUS,F.CUS,CUS.ERR)
*lay gia tri cua cac truong
Y.MNEMONIC=R.CUS<EB.CUS.MNEMONIC>
Y.NAME= R.CUS<EB.CUS.SHORT.NAME,1>
Y.ADD= R.CUS<EB.CUS.STREET,1>
Y.PHONE= R.CUS<EB.CUS.LOCAL.REF,44>
Y.CUSTOMID= R.CUS< EB.CUS.LOCAL.REF,12,1>
*IN RA
Y.DATA=Y.CUS.ID:*:Y.MNEMONIC:*:Y.NAME:*:Y.ADD:*:Y.PHONE:*:Y.C
USTOMID
CRT Y.DATA
RETURN
END
INPUT:
+ SEL.CMD :cu lnh select
OUTPUT:
+ SEL.LIST: Mng tr v cha cc ID ca bn ghi
+ NO.OF.REC: S bn ghi c tr v
+ RET.CODE: m li
Bi tp v d: Vit mt subroutine in ra mn hnh cc thng tin v 10 khch hng .Thng
tin in ra c nh dng sau:
M khch hng * tn khch hng * a ch * in thoi * s chng minh th nhn dn.
Li gii:
SUBROUTINE CUS.INFOR.YOURNAME
$INSERT I_COMMON
$INSERT I_EQUATE
$INSERT I_F.CUSTOMER
*kHOI TAO
GOSUB INIT
*MO FILE
GOSUB OPENFILE
*XU LY LAY DU LIEU
GOSUB PROCESS
RETURN
INIT:
FN.CUS='F.CUSTOMER'
F.CUS=''
Y.CUS.ID=
I=0
RETURN
OPENFILE:
CALL OPF(FN.CUS,F.CUS)
RETURN
PROCESS:
SEL.CMD=SELECT :FN.CUS
CALL EB.READLIST(SEL.CMD,SEL.LIST,'',NO.OF.REC,RET.CODE)
LOOP
END
CALL F.READ(FN.CUS,Y.CUS.ID,R.CUS,F.CUS,CUS.ERR)
*lay gia tri cua cac truong
Y.MNEMONIC=R.CUS<EB.CUS.MNEMONIC>
Y.NAME= R.CUS<EB.CUS.SHORT.NAME,1>
Y.ADD= R.CUS<EB.CUS.STREET,1>
Y.PHONE= R.CUS<EB.CUS.LOCAL.REF,44>
Y.CUSTOMID= R.CUS< EB.CUS.LOCAL.REF,12,1>
*IN RA
Y.DATA=Y.CUS.ID:*:Y.MNEMONIC:*:Y.NAME:*:Y.ADD:*:Y.PHONE:
*:Y.CUSTOMID
CRT Y.DATA
I++
IF I>9 THEN BREAK
REPEAT
RETURN
M file
OPENSEQ FILE.DIR,FILE.NAME TO FILE.POINTER ELSE
CREATE FILE.POINTER ELSE
CRT "KHONG TAO DUOC FILE "
STOP
END
END
Ghi file
i. Ghi :
WRITESEQ y.data TO FILE.POINTER ELSE
CRT "LOI GHI FILE"
END
ii.Ghi chn:
WRITESEQ y.data APPEND TO FILE.POINTER ELSE
CRT "LOI GHI FILE"
END
ng file
CLOSESEQ FILE.POINTER
Li gii:
SUBROUTINE WRITE.FILE.YOURNAME(Y.FILE.DIR,Y.FILE.NAME,Y.OPTION,Y.DATA)
CLOSESEQ FILE.POINTER
RETURN
END
b) c file:
M file:
OPEN FILE.DIR TO R.RERULT ELSE
CRT "KHONG MO DUOC FILE"
END
c file
READ R.LINE FROM R.RERULT,FILE.NAME ELSE CRT ERROR"
ng file
CLOSE R.RERULT
Bi tp v d: Vit mt SUBROUTINE c file text c nhiu hng v in ra mn hnh tng
hng ca file.
Li gii:
SUBROUTINE READ.FILE.YOURNAME
OPEN IT.BP TO R.RERULT ELSE
CRT "KHONG MO DUOC FILE"
END
READ R.LINE FROM R.RERULT,TEST.TXT ELSE CRT ERROR"
11
LOOP
CLOSE R.RERULT
RETURN
END
12