¥¼§I²{À³(¥I)²¼¾Ú
½d³ò¿ï¾Ü |
¼t°Ó±Æ§Ç |
¥ª¥k±²¶ |
ì©lµ{¦¡
ì©lÀɡа_©l /*---------( FSACR072.C )---------*/ #include "W_FSAC.H" #define SX 20 /*¥ª¤º®Ø */ #define SY 10 /*¤W¤º®Ø */ #define SC 36 /*¤º®Ø¼e, ¦h¤Ö¦æ */ /*-----------------------------------------------------------------*/ #define PrHEAD UPrint("#%S-------- ¦C¦L:%M------ ",ChainKi(Ki),Day); \ UPrint("=============================================================================================================="); \ UPrint(" ¬ì ¥Ø ¦W ºÙ §I²{¤é´Á ¤ä²¼¸¹½X ¶U¤èª÷ÃB ¦Xpª÷ÃB ²Öpª÷ÃB ºK n ¶Ç²¼¸¹"); \ UPrint("-------------------- -------- -------- ----------- ----------- ----------- ------------------------- ------"); #define PrSTYLE1 "%S------------------ %M------ %S------ %f,-------- %f,-------- %f,-------- %S----------------------- %S----" #define PrSTYLE0 "%S------------------ %M------ %S------ %f,-------- %S----------------------- %S----" #define PrSPILT UPrint("¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w¢w"); #define PrNULL #define PrSUMUP #define PrSUM #define PrNEXT #define PrEND #define PrDATA1 s,Buf.CYM,Buf.RM,Buf.AMT,Sum,Total,&Buf.RM[8],Buf.KEY #define PrDATA0 s,Buf.CYM,Buf.RM,Buf.AMT, &Buf.RM[8],Buf.KEY /*-----------------------------------------------------------------*/ struct { char KEY[7+6+1]; /*²¼¾Ú+§I²{*/ long IP[2]; /*0ɤè²Ä´Xµ§,1¤è²Ä´Xµ§(±q²Ä1ºâ°_,0ªí¥ÜµL)*/ char AC[3]; /*2141+©ú²Ó*/ char BNO[3]; /*±b¸¹*/ } WORK; void ShowData(); void RmError(int i); char *ChainKi(char KI); /*================================================================*/ FSACF001_T ACF001; FSACF011_T ACF011,Buf,*ptr; double Sum,Total; char Ki; long Sw,Count; /* ¦P¤@¬ì¥Ø¦³´Xµ§*/ int A,B; char *Table="\ \ ¥¼§I²{À³(¥I)²¼¾Ú \ ================================== \ §I²{´Á¶¡: -------- ¨ì: -------- \ ±Æ§Ç¤è¦¡: ¨Ì ---------- ±Æ§Ç \ \ ¸ê®Æ¿é¥X¸Ë¸m¡G-------- \ "; /*===========================================================================*/ void main() { USetBXYN(Table,SX,SY,SC); OPEN_ACF001; OPEN_ACF011; ACF001Tx(); NamS=GET_NAME; while(1) { Ki='1'; #include <RPT1.H> if(Field==1) UReadM(BXN(1),&Sday,0,V_WUSR,V_READ); if(Field==2) UReadM(BXN(2),&Eday,0,V_WUSR,V_READ); if(Field==3){ UReadTog(BXN(3),&Ki,V_TOG,"12",ChainKi('1'),ChainKi('2')); UShowSL( BXN(3),ChainKi(Ki),V_WUSR); } #include <RPT2.H> /*±ø¥ó³]©w§¹²¦*/ /*------------------------------------------------------------------*/ Ugd_Open("ÀÉ ®× ³B ²z ¤¤ ½Ð µy Ô ....."); OPEN_WORK; READ1(ACF011) { if(memcmp(p->AC,"2141",4)!=0) continue; /*À³¥I¬ì¥Ø*/ if(UMidDate(Sday,p->CYM,Eday)==OFF) continue; /*¤é´Á½d³ò*/ /* if(p->AC[4]<=SPACE) continue; */ /*n©ú²Ó*/ memset(&WORK,NULL,sizeof(WORK)); USprint(WORK.KEY,"%S-----%M----",p->RM,p->CYM); /*²¼¾Ú+¤é´Á*/ Ufk_Read(WORKK,&WORK,NULL); if(p->DC=='D') I=0; else I=1; /*0=ɤè,1=¶U¤è*/ if(WORK.IP[I]>0){ ptr=p; RmError(I); } /*À³ªÅ¥Õ,§_«h«½Æ,¿ù*/ WORK.IP[I] = L+1; /*°O¿ý²Ä´Xµ§*/ if(WORK.IP[0]!=0L && WORK.IP[1]!=0L) /*¦³É,¦³¶U,ªí¥Ü¤w¹ï¨R±¼*/ { Ufk_Del(WORKK,&WORK); continue; } /*¹ï¨R*/ memcpy(WORK.AC,&p->AC[4],3); /*·s¸ê®Æ*/ memcpy(WORK.BNO,&p->RM[8],3); Ufk_Write(WORKK,&WORK); } READ2 Ufk_Flush(WORKK); /*------------------------------------------------------------------*/ Sp=Usp_Open(); lseek(WORKK->ffd,0L,SEEK_SET); for(L=0; ; L++) { if(read(WORKK->ffd,&WORK,sizeof(WORK)) < 1) break; if(WORK.KEY[0]<=SPACE) continue; if(WORK.IP[0]!=0L) continue; if(Ki=='1') USprint(BufS,"%S-%S----",WORK.AC,&WORK.KEY[7]); else USprint(BufS,"%S----%S-",&WORK.KEY[7],WORK.BNO); Usp_InsIp(Sp,BufS,L); } Ugd_Close(); /*------------------------------------------------------------------*/ Ugd_Open("¦C¦L¤¤ Ctr_F7:µ²§ô¦C¦L"); while(RetKey!=ESC) { if(Usp_GetIp(Sp,&L)==OFF) break; lseek(WORKK->ffd,L*sizeof(WORK),SEEK_SET); read(WORKK->ffd,&WORK,sizeof(WORK)); L = WORK.IP[1]-1; lseek(ACF011K->ffd,L*sizeof(ACF011),SEEK_SET); read(ACF011K->ffd,&ACF011,sizeof(ACF011)); if(Buf.KEY[0]>SPACE) { if(Ki=='1') Sw = memcmp(ACF011.AC,Buf.AC,7); else /* ¤é´Á & ±b¸¹ */ { A = UHowDate(ACF011.CYM) - UHowDate(Buf.CYM); B = memcmp(&ACF011.RM[8],&Buf.RM[8],3); Sw = (A || B); } ShowData(); /*¦C¦L¦s¦bbufferùتº¸ê®Æ*/ } Buf=ACF011; /*¥ý¦s¦bbufferùؼȤ£¦L¥X*/ Count ++; if(Psf=='S' && K0>=22){ UWait(OFF,"Esc:«·s¿ï¾Ü ¥ô¤@ÁäÄ~Äò"); UCls(); K0=0; } if(Psf=='P' && K0>=K1){ fprintf(Stream,"%c",12); K0=0; } } ShowLast(); LineReturn(ON); Ufk_Close(WORKK); Usp_Close(Sp); /*nclose¨Ñ¤U¤@LOOP¨Ï¥Î*/ } } /*===========================================================================*/ void ShowHead() { #ifdef HP-5L /*1998/8/27*/ LockItemHead(2,"~I",NamS,"~Z2W1G2X16"); #else LockItemHead(2,"~IZ2G2",NamS,"~Z1"); #endif PrHEAD /*¦C¦L¼ÐÀY*/ } /*===========================================================================*/ void ShowData() { char s[32]; Sum += Buf.AMT; Total += Buf.AMT; Utx_GetS(Tx,s,Buf.AC,8); if(Count>1 && Ki=='1') s[0]=NULL; if(Sw!=0) /*¦L¦Xp,²Öp*/ { UPrint(PrSTYLE1,PrDATA1); /*¦C¦L¤@¦C¸ê®Æ*/ PrSPILT /*¦C¦L¤À¹j½u */ Sum = 0f; Count = 0; } else UPrint(PrSTYLE0,PrDATA0); /*¤£¦L¦Xp,²Öp*/ } /*===========================================================================*/ ShowLast() { if(Buf.KEY[0]>SPACE){ Sw=ON; ShowData(); } /*±N³Ì«á¦bbufferùتº¸ê®Æ¦L¥X*/ Count = Sum = Total = 0f; memset(&Buf,NULL,sizeof(Buf)); } /*===========================================================================*/ void RmError(int i) { FSACF011_T F011; long ip; ip=tell(ACF011K->ffd); lseek(ACF011K->ffd,(WORK.IP[i]-1)*sizeof(F011),SEEK_SET); read(ACF011K->ffd,&F011,sizeof(F011)); UWait(ON,"¶Ç²¼: %S---- »P %S---- ªº¤ä²¼¸¹½X %S----- «ÂÐ",F011.KEY,ptr->KEY,ptr->RM); lseek(ACF011K->ffd,ip,SEEK_SET); } /*================================================================*/ char *ChainKi(char KI) { switch(KI) { case '1': return "¼t°Ó§O"; case '2': return "§I²{¤é§O"; default : return " "; } } ì©lÀɡе²§ô
Byron Wey¡@¡@Oct.21.1998