sáng kiến kinh nghiệm - ghép và chuyển tập tin

22 298 0
sáng kiến kinh nghiệm - ghép và chuyển tập tin

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF GHẫP HAI TP TIN *.DBF THNH TP TIN TH BA *.DBF A . PHN M U qun lý hc sinh bng mỏy tớnh, nh trng chỳng tụi s dng phn ln trờn FoxPro. Hai tp tin qun lý c bn l KHOI*.DBF v HK*.DBF ( Chng hn : Hc k 1 qun lý hc sinh Khi 10 cú hai tp tin KHOI10.DBF v HK110.DBF ) : Trong ú tp tin KHOI*.DBF lu tr lý lch hc sinh v tp tin HK*.DBF lu tr im s ca hc sinh hc k 1 hoc hc k 2 ca mt khi. Hai tp tin ny cú s records bng nhau v liờn kt vi nhau qua MAHS. Sau khi cú kt qu thi hc k, nh trng cú yờu cu chn ra cỏc i tng hc sinh nh : hc sinh gii hoc yu b mụn no ú cụng vic c thc hin nhanh chúng trờn tp tin d liu, khụng phi lp trỡnh, chỳng tụi s dng chng trỡnh Ghộp hai tp tin *.DBF vo vic ghộp hai tp tin ny li vi nhau cú c mt tp tin th ba, tp tin ny va lu tr lý lch hc sinh va lu tr im s trong mt hc k ca hc sinh. Chng trỡnh Ghộp hai tp tin *.DBF c chỳng tụi vit vo cui thỏng 8 nm 1995, khi m mỏy tớnh trng chỳng tụi b Virus, cỏc d liu Tuyn Sinh 10 trờn cng mỏy 386 b mt sch, ch cũn lu tr trờn cỏc a d phũng 1M4 v ch cú th c cỏc d liu ny trờn Foxproln v trờn cỏc a mm. Yờu cu chia lp Khi 10 vo u nm hc gn k, buc chỳng tụi phi ghộp hai tp tin THISINH.DBF v NHAPDIEM.DBF thnh mt tp tin cú c s d liu qun lý. V t ú chng trỡnh Ghộp hai tp tin *.DBF ó giỳp chỳng tụi vt qua khú khn ang gp phi. Ngoi vic qun lý hc sinh trờn FoxPro, mt s d liu cũn c nhp trờn Excel, vic qun lý d liu trờn bng tớnh Excel giỳp chỳng tụi d sa cha, d copy hoc ct, dỏn cỏc mu tin. Excel h tr chỳng tụi trong vic Sort d liu cú th chn ra cỏc i tng hc sinh theo yờu cu ca nh trng. Vo thỏng 7 nm 1998, chỳng tụi nhp d liu xột tuyn hc sinh 10 bng Excel. n thỏng 8 nm 1998 chỳng tụi cn chuyn d liu ny sang s dng cỏc chng trỡnh qun lý hc sinh ó c vit sn t nhiu nm trc ú trờn Foxpro. Khú khn m Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF chỳng tụi vng phi l khi Save tp tin *.XLS vi kiu *.DBF thỡ cỏc Fonts 2 bytes ca VNI khụng c gi nguyờn m b chuyn sang mt s ký t l. khc phc tỡnh trng ny chỳng tụi phi Save tp tin *.XLS sang tp tin *.TXT , ri t tp tin *.TXT chỳng tụi dựng chng trỡnh Chuyn tp tin *.XLS thnh tp tin *.DBF to tp tin *.DBF v t ú chng trỡnh ny ra i. Sau nhiu nm s dng khụng gp li, chỳng tụi xin hõn hnh c gii thiu hai chng trỡnh ny, vi hy vng rng, cú th h tr phn nh vic qun lý hc sinh bng Foxpro m mt s trng ang s dng. Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF A. Chng trỡnh 1 : GHẫP HAI TP TIN *.DBF THNH TP TIN TH BA *.DBF I.Hng dn s dng : Hai tp tin *.DBF phi cú cựng records v ch cú duy nht mt Field cú tờn chung ( nh MAHS chng hn ), Field ny dựng ghộp hai tp tin nờn phi cú chung d liu liờn kt (Relation). Khi yờu cu m tp tin *.DBF th nht bn phi m tp tin ch trc, sau ú bn m tp tin *.DBF th hai. Khi yờu cu cho tờn tp tin xut, bn nhp tờn tp tin th ba l tp tin ghộp ca hai tp tin ó c chn trc ú. II.S lc thut toỏn ca chng trỡnh ghộp hai tp tin *.DBF thnh tp tin th ba *.DBF: M tp tin *.DBF (TT1.DBF) th nht SELE 1 v m tp tin *.DBF (TT2.DBF) th hai SELE 2. COPY STRUCTURE EXTENDED tp tin TT1.DBF n TAM1.DBF SELE 1 v tp tin TT2.DBF n TAM2.DBF SELE 2 . M TAM1.DBF, mang d liu t TAM2.DBF vo TAM1.DBF v tỡm hai records ging nhau xúa record th hai ( nh MAHS chng hn ). Khi ú cỏc records Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF trong TAM1.DBF theo th t l tờn cỏc fields ca TT1.DBF v TT2.DBF ( khụng cú 2 records cú FIELD_NAME trựng nhau ). M tp tin *.DBF (TT1.DBF) th nht SELE 1 v m tp tin *.DBF (TT2.DBF) th hai SELE 2 v sp xp 2 tp tin ny theo Field cú tờn chung ( nh MAHS chng hn ). Sau ú chộp TT1.DBF (cú sp xp theo mó chung) n TAM3.DBF v chộp TT2.DBF (cú sp xp theo mó chung) n TAM4.DBF. To tp tin xut ( tp tin &KQ) t tp tin cú cu trỳc c bit TAM1.DBF v m tp tin &KQ, chộp d liu t tp tin TAM3.DBF vo &KQ. SELE 1 m &KQ v SELE 2 m TAM4.DBF. Sau ú ly tun t cỏc records ca TAM4.DBF chộp vo &KQ. M &KQ v cho bn kim tra bng lnh Brow. III. Chng trỡnh ghộp hai tp tin *.DBF thnh tp tin th ba *.DBF : * PROGRAM : GHEP2DBF.PRG (GHẫP 2 FILES *.DBF) * NGUOI VIET : PHAM VAN LUAT * NGAY VIET : 24 & 25/08/1995 * DON VI : DOC BINH KIEU * Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF SET TALK OFF SET SAFE OFF SET CONS OFF CLEA SELE 1 @10,12 SAY "HAY MO TAP TIN THU NHAT DE KET NOI " WAIT WIND" AN PHIM BAT KY DE TIEP TUC" USE? @11,11 SAY " BAN DA MO TAP TIN THU NHAT : " +ALLT(DBF()) STOR LEFT(DBF(),RAT("\",DBF()))+SPACE(10) TO KQ STOR DBF() TO FILE1 SELE 2 @12,12 SAY "HAY MO TAP TIN THU HAI DE KET NOI " WAIT WIND" AN PHIM BAT KY DE TIEP TUC" Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF USE? @13,11 SAY " BAN DA MO TAP TIN THU HAI : " +ALLT(DBF()) STOR DBF() TO FILE2 @14,12 SAY 'CHO TAP TIN XUAT ' GET KQ READ CLOS ALL SET DEFA TO LEFT(DBF(),RAT("\",DBF())) * BUOC 1 : CHUAN BI DOC CAC FIELDS FILE THU 2 : SELE 2 USE &FILE2 SOFI=FCOU() DIME TENF(SOFI) FOR I=1 TO SOFI TENF(I)=FIEL(I) Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF ENDFOR * BUOC 2 : DOC CAC FIELDS FILE THU 2 RA FILE TAM2: STORE LEFT(DBF(),RAT("\",DBF()))+"TAM2.DBF" TO TAM2 COPY STRU EXTE TO &TAM2 * BUOC 3 : DOC CAC FIELDS FILE THU 1 RA FILE TAM1: SELE 1 USE &FILE1 STORE LEFT(DBF(),RAT("\",DBF()))+"TAM1.DBF" TO TAM1 COPY STRU EXTE TO &TAM1 USE &TAM1 SOFA=RECC() * BUOC 4 : CHEP CAC RECORDS FILE TAM2 VAO TAM1 : APPE FROM &TAM2 Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF * BUOC 5 : KIEM TRA HAI RECORDS GIONG NHAU DE XOA 1 RECORD O TAM2 : FOR KIEMTRA=1 TO SOFA GO KIEMTRA KT=FIELD_NAME LOCA FOR (FIELD_NAME=KT).AND.(RECN()<>KIEMTRA) IF FOUND() GO KIEMTRA STORE KT TO KTHK DELE ENDIF ENDFOR PACK * BUOC 6 : SAP XEP FILE1 V FIEL2 THEO MA CHUNG V CHEP DU LIEU DA SAP XEP DEN TAM3.DBF VA TAM4.DBF Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF SELE 2 USE &FILE2 STORE LEFT(DBF(),RAT("\",DBF()))+"SX2.IDX" TO SX2 INDE ON &KTHK TO &SX2 STORE LEFT(DBF(),RAT("\",DBF()))+"TAM4.DBF" TO TAM4 COPY TO &TAM4 USE &TAM4 SELE 1 USE &FILE1 STORE LEFT(DBF(),RAT("\",DBF()))+"SX1.IDX" TO SX1 INDE ON &KTHK TO &SX1 STORE LEFT(DBF(),RAT("\",DBF()))+"TAM3.DBF" TO TAM3 COPY TO &TAM3 * BUOC 7 : TAO FILE GHEP : Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF CREA &KQ FROM &TAM1 USE &KQ * BUOC 8 : CHEP CAC RECORDS O FILE1 VAO FILE XUAT : APPE FROM &TAM3 * BUOC 9 : CHEP CAC RECORDS O FILE2 VAO FILE XUAT : FOR I=1 TO SOFI STT=0 STOR TENF(I) TO LUAT FOR T=1 TO RECC() SELE 2 GO T TAM=&LUAT SELE 1 GO T [...]... ON SET SAFE ON RETURN Chửụng trỡnh : B 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF Chng trỡnh 2 : Chuyn tp tin *.XLS thnh tp tin *.DBF (XLSTODBF.PRG) I Hng dn s dng : Tp tin *.XLS trc ht bn Save As di dng *.TXT v bn phi nh tờn cỏc Fields trong tp tin ny nhp trong lỳc chy chng trỡnh Chuyn tp tin *.XLS thnh tp tin *.DBF (XLSTODBF.PRG) Sau ú bn cho chy chng trỡnh XLSTODBF.PRG... phớm, kiu cỏc fields (Field_Type) mc nh l C rng cỏc field ( Fiel_Len) mc nh l 40 To tp tin TAM2.DBF t tp tin TAM1.DBF v m tp tin TAM2.DBF Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF Sele 1 m tp tin THU.DBF, ct mi records theo tng Field ca THU.DBF v chộp vo tp tin TAM2.DBF SELE 2 record tng ng sau lnh APPEND BLANK Quỏ trỡnh lp li cho n khi con tr... CLOS ALL Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF CLEA FILENGUON= "C:\"+SPACE(30) FILEXUAT= "C:\"+SPACE(30) * BUOC 1 : NGI S DNG NHP TấN TP TIN *.TXT CN CHUYN THNH TP TIN *.DBF V NHP TấN TP TIN *.DBF CN XUT : @10,12 SAY " CHO BIET TAP TIN *.TXT CAN CHUYEN THANH *.DBF" GET FILENGUON @11,12 SAY " CHO BIET TAP TIN *.DBF CAN XUAT " GET FILEXUAT READ STOR...Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF REPL &LUAT WITH TAM ENDFOR ENDFOR * BUOC 10 : CHO BAN XEM FILE XUAT : CLOS ALL USE &KQ BROW * BUOC 11 : TRA LAI MOI TRUONG CLOSE ALL ERASE &TAM1 ERASE &TAM2 ERASE &TAM3 ERASE &TAM4 ERASE &SX1 Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF ERASE &SX2 SET TALK ON... vo record cui cựng ca tp tin TAM2.DBF Cui cựng l chộp d liu t tp tin TAM2.DBF n tp tin *.DBF m bn t tờn lỳc u tiờn chy chng trỡnh XLSTODBF.PRG bi lnh COPY TO III Chng trỡnh XLSTODBF.PRG: * PROGRAM : XLSTODBF.PRG (Chuyn tp tin *.XLS thnh tp tin *.DBF) * NGUOI VIET : PHAM VAN LUAT * NGAY VIET : Thỏng 08/1998 * DON VI : DOC BINH KIEU * - SET SAFE OFF SET TALK... Fields tng ng Vỡ l d liu kiu *.TXT nờn tm thi chỳng tụi cho tp tin *.DBF cú Field_Type l Character v Field_Len l 40 nờn mun s dng tp tin ny, bn phi sa li cu trỳc File (MODIFY STRUCTURE) nh ý bn Tp tin h tr chng trỡnh ny cú tờn THU.DBF cú cu trỳc : Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF Field Field Name Type 1 TACH Character Width Dec Index... ENDFOR SKIP ENDDO SELE 2 Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF COPY TO &FIELXUAT * BUOC 4 : TR LI MễI TRNG : CLOSE ALL ERASE C:\SKKN\TAM1.DBF ERASE C:\SKKN\TAM2.DBF SET TALK ON SET SAFE ON SET CONS ON RETURN Chửụng trỡnh : C 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF XC MINH CA CC GIO VIấN Cể S DNG CC CHNG TRèNH... hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF USE C:\SKKN\TAM1.DBF ZAP FOR I=1 TO DEM+1 APPE BLANK REPL FIELD_NAME WITH TENFIEL(I) REPL FIELD_TYPE WITH "C" REPL FIELD_LEN WITH 40 ENDFOR CREA C:\SKKN\TAM2 FROM C:\SKKN\TAM1 * CHEP TU FILE *.TXT SANG *.DBF : SELE 1 USE C:\SKKN\THU SELE 2 USE C:\SKKN\TAM2 Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS... chng trỡnh 255 XLSTODBF.PRG bn hóy to trc tp tin THU.DBF trong th mc ca bn v sa li ng dn ( ng dn ca chng trỡnh l C:\SKKN) ca chng trỡnh XLSTODBF.PRG II S lc thut toỏn ca chng trỡnh XLSTODBF.PRG: M tp tin THU.DBF Chộp d liu n THU.DBF t tp tin *.TXT bi lnh APPEND FROM *.TXT DELIMITED m s ký t TAB ( mó 9 bờn bng ASCII ) + 1 l s fields ca tp tin *.DBF To tp tin TAM1.DBF bi lnh COPY STRUCTURE EXTENDED,... Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF SELE 1 GO TOP DO WHILE !EOF() A="" SOLAN=0 SELE 2 APPE BLANK SELE 1 FOR I=1 TO LEN(ALLT(TACH)) IF SUBS(ALLT(TACH),I,1)" A=A+SUBS(ALLT(TACH),I,1) CHUOI=A ELSE SOLAN=SOLAN+1 " Chửụng trỡnh : 1) Gheựp hai taọp tin *.DBF vaứ 2) Chuyeồn taọp tin *.XLS thaứnh taọp tin *.DBF CHUOI=A SELE 2 STOR FIEL(SOLAN) TO TEN REPL &TEN WITH CHUOI . tụi phi Save tp tin *.XLS sang tp tin *.TXT , ri t tp tin *.TXT chỳng tụi dựng chng trỡnh Chuyn tp tin *.XLS thnh tp tin *.DBF to tp tin *.DBF v t ú. cu m tp tin *.DBF th nht bn phi m tp tin ch trc, sau ú bn m tp tin *.DBF th hai. Khi yờu cu cho tờn tp tin xut, bn nhp tờn tp tin th ba l tp tin ghộp

Ngày đăng: 14/03/2014, 09:07

Hình ảnh liên quan

 Đếm số ký tự TAB ( mã 9 bên bảng ASCII ) +1 là số fields của tập tin *.DBF - sáng kiến kinh nghiệm - ghép và chuyển tập tin

m.

số ký tự TAB ( mã 9 bên bảng ASCII ) +1 là số fields của tập tin *.DBF Xem tại trang 14 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan