home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 5 / 05.iso / a / a120 / 1.ddi / API / LIBHDR.C < prev    next >
Encoding:
C/C++ Source or Header  |  1992-06-24  |  2.4 KB  |  81 lines

  1. /*------------------------------------------------------------------*/
  2. /* LIBHDR.C                                                         */
  3. /*------------------------------------------------------------------*/
  4. /* API ▒`  ªí : 1. chktype()   ( in libhdr.c )                      */
  5. /*              2. nextweek()  ( in libhdr.c )
  6. /* API ¿τ╝╞└] : libhdr.plb                                          */
  7. /* ⌐IÑsñΦªí   : SET LIBRARY TO LIBHDR                               */
  8. /*------------------------------------------------------------------*/
  9. #include <pro_ext.h>
  10. extern far chktype();
  11. extern far nextweek();
  12. /*----------------------------------------------------*/
  13. /* ▒`ªí chktype() »α░≈╛▀┼τ¿Σ░╤╝╞ñº╕Ω«╞½¼║A¿├╢╟ª^ñ@¡╙  */
  14. /* ñσªrªΩ¬φÑ▄¿Σ½¼║A                                   */
  15. /*----------------------------------------------------*/
  16.  
  17. /* ½┼ºi¿τ╝╞, ª▄⌐≤⌐╥╗▌ñº░╤╝╞½hÑ╤ FoxPro ╢╟╗╝╣L¿╙       */
  18. void far chktype(ParamBlk FAR *parm)
  19. {
  20.       char buffer[2];  /* ╡▓¬Gñº╝╚«╔ª∞╕m */
  21.  
  22.       /* ▒q buffer ññ├¼¿·░╤╝╞¬║╕Ω«╞½¼║A */
  23.       buffer[0] = parm->p[0].loc.l_type;
  24.  
  25.       /* ¿╧Ñ╬ _RetChar() ╢╟ª^ñºªrªΩÑ▓╢╖ÑH NULL ╡▓º└ */
  26.       buffer[1] = '\0';
  27.  
  28.       /* ▒N╡▓¬G╢╟ª^╡╣ FoxPro */
  29.       _RetChar(buffer);
  30.  
  31.       /* ▓{ªb¬≡ª^ª▄ FoxPro */
  32.       return;
  33. }
  34.  
  35. /*-----------------------------------------------------------------*/
  36. /* nextweek() ▒`ªí»α░≈▒╡ª¼ñ@¡╙ñΘ┤┴ñ╬ñ@¡╙Ñi┐∩╛▄⌐╩ñº╢g╝╞(╣w│]¡╚¼░ 1) */
  37. /* ¿├╢╟ª^ñ@╢g⌐╬½ⁿ⌐w╢g╝╞½ßñºñΘ┤┴¡╚                                  */
  38. /*-----------------------------------------------------------------*/
  39.  
  40. /* ╝╨╖╟¿τ╝╞½┼ºi */
  41. void far nextweek(ParamBlk FAR *parm)
  42. {
  43.       double date;
  44.       Value result;
  45.  
  46.       /* ├¼¿·░_⌐lñΘ┤┴ */
  47.       date = parm->p[0].val.ev_real;
  48.       if (parm->pCount == 1)   /* Ñuª│ñ@¡╙░╤╝╞ */
  49.              date = date + 7;
  50.       else
  51.              date = date + parm->p[1].val.ev_long*7;
  52.  
  53.       _MemFill(&result,0,sizeof(result));
  54.  
  55.       /* ▒N╡▓¬G¡╚ñº╕Ω«╞½¼║A│]⌐wª¿ñΘ┤┴ */
  56.       result.ev_type = 'D';
  57.  
  58.       /* ▒╡╡█│]⌐w╢╟ª^ñºñΘ┤┴ */
  59.       result.ev_real = date;
  60.  
  61.       /* ▓{ªb▒N╡▓¬G¡╚╢╟ª^ */
  62.       _RetVal(&result);
  63.  
  64.       /* ▓{ªbº┌¡╠¬≡ª^ª▄ FoxPro */
  65.       return;
  66. }
  67.  
  68. FoxInfo myFoxInfo[] = {
  69.         {"CHKTYPE",chktype,1,"?"},
  70.         {"NEXTWEEK",nextweek,2,"D,.I"}
  71. };
  72.  
  73.  
  74.  
  75.  
  76. FoxTable _FoxTable = {
  77.          (FoxTable FAR *)0,
  78.          sizeof(myFoxInfo) / sizeof(FoxInfo),
  79.          myFoxInfo
  80. };
  81.