home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Simtel MSDOS 1992 June
/
SIMTEL_0692.cdr
/
msdos
/
turbo_c
/
turbbook.arc
/
ORDENT.C
< prev
next >
Wrap
Text File
|
1987-08-20
|
2KB
|
96 lines
/* ---------- ordent.c ----------- */
#include <dos.h>
#include <stdio.h>
#include <string.h>
#include "twindow.h"
struct {
char name [26];
char addr [26];
char city [26];
char state [3];
char zip [6];
char amt [6];
char dt [7];
char phone [11];
} rcd;
char msk25 [] = "_________________________";
char mskamt [] = "___.__";
char mskdate [] = "__/__/__";
char mskphone [] = "(___) ___-____";
#define mskst msk25+23
#define mskzip msk25+20
int validate_state(char *, int);
void help_date(char *);
/*page*/
void ordent()
{
WINDOW *wnd;
FIELD *fld;
wnd = establish_window(10, 5, 15, 50);
set_title(wnd, " Order Entry ");
set_colors(wnd, ALL, BLUE, AQUA, BRIGHT);
set_colors(wnd, ACCENT, WHITE, BLACK, DIM);
display_window(wnd);
wprompt(wnd, 5, 2, "Name:");
wprompt(wnd, 5, 3, "Address:");
wprompt(wnd, 5, 4, "City:");
wprompt(wnd, 5, 5, "State:");
wprompt(wnd, 18, 5, "Zip:");
wprompt(wnd, 5, 10, "Phone:");
wprompt(wnd, 5, 7, "Amount:");
wprompt(wnd, 5, 8, "Date:");
init_template(wnd);
fld = establish_field(wnd, 15, 2, msk25, rcd.name, 'a');
field_window(fld,"name ", 40, 1);
fld = establish_field(wnd, 15, 3, msk25, rcd.addr, 'a');
field_window(fld,"address ", 40, 2);
fld = establish_field(wnd, 15, 4, msk25, rcd.city, 'a');
field_window(fld,"address ", 40, 3);
fld = establish_field(wnd, 15, 5, mskst, rcd.state, 'A');
field_validate(fld, validate_state);
field_window(fld,"state ", 40, 4);
fld = establish_field(wnd, 23, 5, mskzip, rcd.zip, 'Z');
field_window(fld,"address ", 40, 4);
fld = establish_field(wnd,15,10,mskphone,rcd.phone, 'N');
field_window(fld,"phone ", 40, 9);
fld = establish_field(wnd, 15, 7, mskamt, rcd.amt, 'C');
field_window(fld,"amount ", 40, 8);
fld = establish_field(wnd, 15, 8, mskdate, rcd.dt, 'D');
field_help(fld, help_date);
clear_template(wnd);
data_entry(wnd);
delete_window(wnd);
}
/* ----- validate the state that is entered ------ */
int validate_state(bf, key)
char *bf;
{
static char *states [] =
{" ","VA","NC","SC","GA","FL",0};
char **st = states;
while (*st)
if (strcmp(*st++, bf) == 0)
return OK;
error_message("Invalid State");
return ERROR;
}
/* ----- provide today's date -------- */
void help_date(bf)
char *bf;
{
struct date dat;
getdate(&dat);
sprintf(bf, "%02d%02d%02d",
dat.da_day, dat.da_mon, dat.da_year % 100);
}