home *** CD-ROM | disk | FTP | other *** search
- Program DBTEST;
-
- Uses TPCrt, Mulkey4, DBMENU;
-
- {$I DBTEST.TYP} {Now required by TACCESS}
-
- Var
- Test : TestRec; {Declare a buffer}
- Test_File : File_Type; {Declaration for Mulkey}
-
- begin
- FillChar(Test, SizeOf(Test), 0); {Blank the record}
- FillChar(Test_File, SizeOf(Test_File), 0);
-
- With Test_File do
- begin
- {**************************************}
- {For this next section, refer to the original Mulkey documentation}
-
- Name := 'Test';
- RecSize := SizeOf(Test);
- NUMBER_OF_KEYS := 1;
- With Key[1] Do
- Begin
- Offset := KEYOFFSET(Test, Test.Date);
- KEYLENGTH := SizeOf(Test.Date);
- EXTENSION := 'IX1';
- UNIQUE := False;
- UPSHIFT := True;
- KEYTYPE := KEY_STRING;
- End;
-
- {End of regular Mulkey Initialization}
- {**************************************}
- {Begin DBMENU Initialization}
-
- PromptAttribute := 3;
- GetAttribute := 2;
- DisplayAttribute := 1;
- HelpAttribute := 6;
- NumOfFields := 5; {only include the number of fields to read from the screen}
- With Field[1] Do
- Begin
- XCoord := 5; {Display Coordinates}
- YCoord := 10;
- FieldData := Ptr(Seg(Test.Date), Ofs(Test.Date)); {establish a pointer to the data}
- FieldType := Date_Field;
- FieldLength := SizeOf(Test.Date);
- LegalChars := '0123456789'; {See original Getfield docs}
- ScreenPrompt := 'Date 1 :';
- HelpPrompt := 'You can enter any number here';
- End;
- With Field[2] Do
- Begin
- XCoord := 5;
- YCoord := 11;
- FieldData := Ptr(Seg(Test.Date2), Ofs(Test.Date2));
- FieldType := Valid_Date_Field;
- FieldLength := SizeOf(Test.Date2);
- LegalChars := '0123456789';
- ScreenPrompt := 'Date :';
- HelpPrompt := 'Only dates between 01/01/1000 and 01/01/3000 can be entered';
- End;
- With Field[3] Do
- Begin
- XCoord := 5;
- YCoord := 12;
- FieldData := Ptr(Seg(Test.TestReal), Ofs(Test.TestReal));
- FieldType := Real_Field;
- FieldLength := SizeOf(Test.TestReal);
- LegalChars := '0123456789';
- ScreenPrompt := 'TestReal :';
- HelpPrompt := 'Enter a real number';
- End;
- With Field[4] Do
- Begin
- XCoord := 5;
- YCoord := 13;
- FieldData := Ptr(Seg(Test.TestInt), Ofs(Test.TestInt));
- FieldType := Integer_Field;
- FieldLength := SizeOf(Test.TestInt);
- LegalChars := '0123456789';
- ScreenPrompt := 'TestInt :';
- HelpPrompt := 'Enter an integer';
- End;
- With Field[5] Do
- Begin
- XCoord := 5;
- YCoord := 14;
- FieldData := Ptr(Seg(Test.TestStr), Ofs(Test.TestStr));
- FieldType := String_Field;
- FieldLength := SizeOf(Test.TestStr);
- LegalChars := '';
- ScreenPrompt := 'TestStr :';
- HelpPrompt := 'Enter any String';
- End;
- End;
- {End DBMenu initialization}
- {**************************************}
-
- ClrScr;
- Writeln('TestInt length is = ', SizeOf(Test.TestReal));
- repeat until keypressed;
- runmenu(Test_File, Test);
- ClrScr;
-
- end.