1. 소개
컴퓨터 LAN 및 광범위한 지역 네트워크의 출현으로 네트워크 제품 (소프트웨어 및 하드웨어 포함)의 품질이 지속적으로 개선되었습니다. 소프트웨어 엔지니어링 방법, 다양한 컴퓨터 네트워크 관리 시스템이 점점 더 완전 해지고 있습니다. 관광 명소를위한 마이크로 컴퓨터 발권 시스템은 컴퓨터 기술과 네트워크 기술의 조합의 산물입니다. 편리하고 빠른 쿼리 및 통계를 통해 관리자는 경치 좋은 지점의 비즈니스 조건을 정확하게 파악하고 티켓 영업 담당자를 감독하고 관리하고 정확하고 신뢰할 수있는 의사 결정 기반을 제공 할 수 있습니다. 티켓 판매 효율성 및 관리 수준의 관광 명소 수준을 성공적으로 개선하여 수동 티켓 판매 상황을 끝내므로 새로운 지능형 티켓 판매 단계가 시작되었습니다.
이 기사는 Delphi 4.0을 개발 언어로, Microsoft SQL Server 6.5를 백엔드로 실행하는 Windows NT 4.0에서 실행되는 관광 명소를위한 마이크로 컴퓨터 발권 시스템의 개발 방법을 소개합니다. 이 시스템은 주요, 중간 및 소규모 관광 명소를위한 발권 시스템의 자동화 된 관리에 적합하며 강력한 실용적인 프로모션 및 응용 프로그램 가치가 있습니다.
2. 전체 시스템 솔루션 설계
마이크로 컴퓨터 티켓팅 시스템은 스타 토폴로지 LAN 구조를 채택하며 서버, 허브, 컴퓨터 및 프린터로 구성됩니다 (그림 1 참조). 서버에서 데이터베이스 및 시스템 관리 프로그램을 실행하여 쿼리, 통계, 보고서 인쇄 및 시스템 유지 관리와 같은 기능을 실현합니다. 각 티켓 마이크로 컴퓨터 및 해당 프린터는 티켓 창에 배치되며, 티켓팅 프로그램은 인터페이스 입력, 티켓 인쇄 및 티켓 영업 사원 개인 정보 쿼리 및 통계의 기능을 완료하기 위해 실행됩니다.
발권 시스템의 경우 프린터의 속도와 네트워크를 통한 데이터 전송 속도는 매우 중요한 지표입니다. 예를 들어, 성수기에는 약 20,000 명의 사람들이 매일 방문하여 3 개의 마이크로 컴퓨터가 티켓을 판매해야하며 대부분의 방문객은 동시에 집중되어 있습니다. 아침과 오후 2시 사이에 ~ 3시 사이에, 관광객의 대기 시간을 줄이고 티켓 판매 속도를 높이는 것은 마이크로 컴퓨터 티켓 판매 시스템에서 해결 해야하는 문제입니다. 티켓 판매 속도에 영향을 미치는 두 가지 요소가 있습니다. 하나는 하드웨어 프린터의 인쇄 속도이며, 다른 하나는 인쇄 프로그램이 인쇄를 시작하고 데이터를 전송하는 속도입니다. 실제 테스트 후 Epson Stylus Color 850 Color Inkjet 프린터는 A4 용지에서 8 페이지/분의 인쇄 속도를 가지고있어 요구 사항을 충족시킬 수 있습니다.
프로그램 측면에서 인쇄 속도 요구 사항을 충족시키기 위해 Delphi 4.0은 테스트 및 신중한 선택 후 프로그래밍 언어로 사용되는 것으로 결정되었습니다. Delphi는 강력한 객체 Pascal 언어를 빠르고 편리한 RAD를 결합합니다 빠르며 가장 빠른 디버깅 및 편집 프로그래밍 언어 중 하나입니다. 티켓을 인쇄 할 때는 Printers.canvas.textout (x : inter; y : integer; const text : string)과 같은 델파이 클래스 프린터에서 다양한 절차와 기능을 직접 호출하고 빠른 인쇄를 달성하십시오 프로그램 인쇄 속도의 문제.
시스템은 데이터베이스로 SQL SEVER를 선택하여 클라이언트/서버 관계형 데이터 관리 시스템 (RDBMS)이 시스템의 네트워크 전송 요구 사항을 충족 할 수 있습니다. Delphi에서 데이터베이스 액세스는 BDE (데이터베이스 엔진) 및 ODBC를 통해 수행 할 수 있거나 ADO를 통해 직접 데이터베이스 액세스를 수행 할 수 있습니다.
또한 전체 프로그래밍 에서이 시스템을 사용하는 운영자가 고르지 않은 품질이고 컴퓨터 작동 수준이 상대적으로 낮다는 점을 고려할 때 관련 작업은 가능한 한 간단해야하며 가능한 한 적은 정보를 입력해야합니다. 드롭 다운 상자와 선택 상자. 오류를 피하십시오. 이 시스템의 운영자는 관광객 수 (성인 및 어린이 또는 학생)와 차량 수만 입력하면됩니다. 프로그램이 시작될 때 요금과 같은 다른 정보는 컴퓨터에서 자동으로 발생합니다. .
3. 시스템 소프트웨어의 전반적인 설계
1. 데이터베이스 테이블 디자인
시스템 데이터베이스에는 소매 티켓 정보 테이블, 비밀번호 테이블, 운영자 정보 테이블, 요금 정보 테이블 및 통계 쿼리를 위해 구축 된 뷰가 포함되어 있습니다. 소매 티켓 정보 테이블을 예로 들어 보면 테이블의 구조가 소개됩니다. 필드 정의는 표 1에 나와 있습니다.
일련 번호 : 티켓 판매자의 식별자, 임의 번호 및 마이크로 컴퓨터 티켓 시작부터 티켓 수로 구성됩니다. 예를 들어, GK006662는 식별 번호 g, 임의 번호 K 및 티켓 6662nd의 티켓 판매자를 나타냅니다.
환불 아니오 :이 필드는 유효한 지 여부를 식별하는 데 사용됩니다.
2. 소프트웨어 구조 설계
시스템 소프트웨어 설계는 모듈 식 프로그래밍 아이디어를 따라 위에서 아래로 정밀한 단계를 추구합니다. 시스템 프로그램은 시스템 관리 모듈과 발권 모듈로 구성됩니다. 발권 모듈은 발권 마이크로 컴퓨터에서 실행되며 시스템 관리 모듈은 서버에서 실행됩니다.
4. 시스템의 주요 기능적 특성 및 구현 방법
주요 시스템 모듈 : 로그인 및 비밀번호 입력 모듈; 다음은 각 모듈의 기능과 주요 부품의 구현에 대해 설명합니다.
1. 로그인 및 비밀번호 입력 모듈
로그인 및 비밀번호 입력 모듈은 운영자의 권한을 제한하는 데 사용됩니다. 인터페이스. 입력이 세 번 실패하면 프로그램이 자동으로 종료됩니다. 또한 발권 모듈에서 해당 운영자의 이름은 비밀번호에 따라 발권 정보를 연산자와 연관시켜야합니다. 해당 운영자 기능은 다음과 같이 입력 비밀번호를 기반으로 데이터베이스에서 얻습니다. 여기서 handletbl은 비밀번호 테이블 이름, ID, 핸드 이름 및 핸드 레코드가 숫자, 운영자 이름 및 운영자 암호를 나타내는 테이블의 필드입니다.
함수 tformpswd.gethenlename (코드 : String) : String;
var 이름 : 문자열;
시작하다
이름 : = '';
query2.close;
query2.sql.clear;
query2.disablecontrols;
query2.sql.add ( 'handletbl의 handlecode');
query2.open;
if query2.locate ( 'handlecode', code, [])
시작하다
이름 : = query2.fieldByName ( 'handlename'). Asstring;
끝;
query2.close;
결과 : = 이름;
끝;
2. 시스템 기본 인터페이스 입력 모듈
시스템의 주요 인터페이스 입력 모듈은 티켓 판매 정보를 입력하고 표시하는 데 사용되며 정보 및 티켓 가격에 따라 총 관광객 수와 티켓 가격을 자동으로 계산합니다. 이 모듈에서 운영자는 관광객 수만 입력하고 "OK"를 눌러 총 가격을 자동으로 계산하고 표시하고 "인쇄"를 눌러 티켓을 인쇄해야합니다. A 및 B와 같은 정수 데이터 이외의 다른 문자를 실수로 입력하는 것을 방지하기 위해 프로그램 오류로 이어지는 판단 조건은 데이터 입력이 필요한 테디 위치 위치에서 프로그램에서 설정되고 정수 데이터 만 입력이 허용됩니다.
3. 통계 및 쿼리, 인쇄 모듈 보고서
통계 및 쿼리 및 보고서 인쇄 모듈은 티켓 판매 정보의 통계 및 쿼리를 실현하는 데 사용됩니다. 날짜 및 기타 정보를 설정하고 보고서 인쇄를 생성 할 수 있습니다. 통계 및 쿼리는 임베디드 SQL 쿼리 언어로 구현되며 보고서는 Delphi의 빠른 보고서 구성 요소의 Qreport 구성 요소 그룹에서 다양한 컨트롤을 사용합니다.
4. 티켓 인쇄 모듈
티켓 인쇄 모듈은 티켓의 인쇄 기능을 인식합니다. 티켓 인쇄에서 출력 위치는 빠른 인쇄를 위해서는 프린터 프로세스와 기능이 인쇄 중에 직접 호출됩니다.
인쇄 과정은 다음과 같습니다.
절차 printmsg (Thesyqo, Totalpeople, Adultnum, Childnum, Totalcar, Bigcar, Middlecar, Minicar, Totalmoney, Prtdate : String);
시작하다
printer.canvas.font.charset : = gb2312_charset;
프린터 .Begindoc;
프린터 .PageHeight;
printer.pagewidth;
printer.canvas.font.size : = 14; // 글꼴 설정
… // 사용자의 요구에 따라 인쇄 할 내용 삽입
printer.canvas.textout (x+2370, y, thesyqo); // 컨텐츠 인쇄
프린터 enddoc;
끝;
5. 환불 관리 모듈
실제 티켓 판매 프로세스에는 컴퓨터 인쇄물이 판매 한 티켓이 여러 가지 이유로 투여되는 상황이 포함되며, 환불이 발생하면 운영자의 티켓 판매 금액이 데이터베이스 쿼리 결과와 일치하지 않아야합니다. 이 현상을 해결하기 위해 환불 관리 모듈이 추가되었습니다.