home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 5 / 05.iso / a / a085 / 1.ddi / CONDFND2.PRG < prev    next >
Encoding:
Text File  |  1994-01-11  |  10.1 KB  |  391 lines

  1. *⌐░⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐┤
  2. *⌐ª      Program: CONDFND2.PRG                                         ⌐ª
  3. *⌐ª     Function: ╠⌡╝■╝∞╦≈╖╢└²╢■                                       ⌐ª
  4. *⌐╕⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐╝
  5. SET SCOREBOARD OFF
  6. SET TALK OFF
  7. SET STATUS OFF
  8. SET SAFETY OFF
  9. SET DATE ANSI
  10. SET EXCLUSIVE  OFF
  11. PUBLIC CHOICE_D, MYWORD
  12. SET COLOR TO W/N
  13. CLEAR
  14. SET COLOR TO W/B,W/R
  15.  
  16. DDCON=SPACE(21)
  17. V1=SPACE(1)
  18. REC_NU=SPACE(3)   &&╖√║╧╝∞╦≈╠⌡╝■╡─╝╟┬╝╕÷╩²
  19. GIVE_UP=.F.
  20. C_C=""            &&╠⌡╝■
  21. N=0
  22. X1=3
  23. X2=X1+2
  24. Y1=6
  25. Y2=52
  26. @ 1,Y1 TO X2,Y2 CLEAR
  27. @ 1,Y1 TO X2,Y2 DOUB
  28. @ 3,7  SAY REPL(CHR(196),46)   &&'-'
  29. @ 3,6  SAY CHR(199)
  30. @ 3,52 SAY CHR(182)
  31. @ 2,8  SAY '       ╟δ ╤í ╘± ╧α ╣╪ ╡─ ▓Θ ╤» ╧ε ─┐      '
  32. DIMENSION CH(21,1)
  33. STORE 'N' TO ENDLOOP
  34. DO WHILE ENDLOOP<>'Y'
  35.    NOTENU=0
  36.    NOTE1=' '
  37.    NOTE2=' '
  38.    SET COLOR TO W/B,W/R
  39.    @ 0,55 TO 23,77 DOUB
  40.    @ 1,56 TO 22,76 CLEAR
  41.    @ 1,57 PROMPT ' 1.  ╨≥║┼         '
  42.    @ 2,57 PROMPT ' 2.  ╡Ñ╬╗         '
  43.    @ 3,57 PROMPT ' 3.  ▓┐├┼         '
  44.    @ 4,57 PROMPT ' 4.  ┤ª╩╥         '
  45.    @ 5,57 PROMPT ' 5.  ╨╒├√         '
  46.    @ 6,57 PROMPT ' 6.  ╨╘▒≡         '
  47.    @ 7,57 PROMPT ' 7.  ├±╫σ         '
  48.    @ 8,57 PROMPT ' 8.  ╝«╣ß         '
  49.    @ 9,57 PROMPT ' 9.  │÷╔·╚╒╞┌     '
  50.    @10,57 PROMPT ' A.  ╒■╓╬├µ├▓     '
  51.    @11,57 PROMPT ' B.  ╣ñ╫≈╩▒╝Σ     '
  52.    @12,57 PROMPT ' C.  ╣ñ╫╩╝╢▒≡     '
  53.    @13,57 PROMPT ' D.  ╨╨╒■╓░╬±     '
  54.    @14,57 PROMPT ' E.  ╫¿╥╡╓░╬±     '
  55.    @15,57 PROMPT ' F.  ╞└╢¿╩▒╝Σ     '
  56.    @16,57 PROMPT ' G.  ╞└╢¿╡Ñ╬╗     '
  57.    @17,57 PROMPT ' H.  ╬─╗»│╠╢╚     '
  58.    @18,57 PROMPT ' I.  ▒╧╥╡╩▒╝Σ     '
  59.    @19,57 PROMPT ' J.  ▒╧╥╡╘║╨ú     '
  60.    @20,57 PROMPT ' K.  ╦∙╤º╫¿╥╡     '
  61.    @21,57 PROMPT ' L.  ┤╙╩┬╣ñ╫≈     '
  62.    @22,57 PROMPT ' M.  ╦∙╤º═Γ╙∩     '
  63.    STORE 0 TO SEL
  64.    MENU TO SEL
  65. IF LASTKEY()=27
  66.    EXIT
  67. ENDIF
  68. STXT=""
  69. SWIND=""
  70. LOGI="="
  71.    DO CASE
  72.       CASE SEL=1
  73.            SNAME="........╨≥║┼:"
  74.            DBNAM="A1"
  75.       CASE SEL=2
  76.            SNAME="........╡Ñ╬╗:"
  77.            DBNAME="DICFIL02"
  78.            DBNAM="A2"
  79.       CASE SEL=3
  80.            SNAME="........▓┐├┼:"
  81.            DBNAME="DICFIL03"
  82.            DBNAM="A3"
  83.       CASE SEL=4
  84.            SNAME="........┤ª╩╥:"
  85.            DBNAME="DICFIL04"
  86.            DBNAM="A4"
  87.       CASE SEL=5
  88.            SNAME="........╨╒├√ "
  89.            DBNAM="A5"
  90.       CASE SEL=6
  91.            SNAME="........╨╘▒≡:"
  92.            NOTE1="   ╠ß╩╛: F ┤·▒φ'┼«'; M ┤·▒φ'─╨' "
  93.            NOTENU=1
  94.            DBNAM="A6"
  95.       CASE SEL=7
  96.            SNAME="........├±╫σ:"
  97.            DBNAME="DICFIL07"
  98.            DBNAM="A7"
  99.       CASE SEL=8
  100.            SNAME="........╝«╣ß:"
  101.            DBNAME="DICFIL08"
  102.            DBNAM="A8"
  103.       CASE SEL=9
  104.            SNAME="....│÷╔·╚╒╞┌:"
  105.            LOGI="D"
  106.            NOTENU=2
  107.            NOTE1="╠ß╩╛: > (=╗≥<) 56.08.21 ▒φ╩╛╘┌┤╦╚╒╥╘║≤"
  108.            NOTE2="(┤╦╚╒╗≥╥╘╟░);59.01.12-66.01.04╬¬╢■╚╒╓╨"
  109.            DBNAM="A9"
  110.       CASE SEL=10
  111.            SNAME="....╒■╓╬├µ├▓:"
  112.            DBNAME="DICFIL10"
  113.            DBNAM="A10"
  114.       CASE SEL=11
  115.            SNAME="....╣ñ╫≈╩▒╝Σ:"
  116.            NOTENU=2
  117.            NOTE1="╠ß╩╛: > (=╗≥<) 56.08.21 ▒φ╩╛╘┌┤╦╚╒╥╘║≤"
  118.            NOTE2="(┤╦╚╒╗≥╥╘╟░);59.01.12-66.01.04╬¬╢■╚╒╓╨"
  119.            DBNAM="A11"
  120.       CASE SEL=12
  121.            SNAME="....╣ñ╫╩╝╢▒≡:"
  122.            DBNAM="A12"
  123.       CASE SEL=13
  124.            SNAME="....╨╨╒■╓░╬±:"
  125.            DBNAME="DICFIL13"
  126.            DBNAM="A13"
  127.       CASE SEL=14
  128.            SNAME="....╫¿╥╡╓░╬±:"
  129.            DBNAME="DICFIL14"
  130.            DBNAM="A14"
  131.       CASE SEL=15
  132.            SNAME="....╞└╢¿╩▒╝Σ:"
  133.            LOGI="D"
  134.            NOTENU=2
  135.            NOTE1="╠ß╩╛: > (=╗≥<) 56.08.21 ▒φ╩╛╘┌┤╦╚╒╥╘║≤"
  136.            NOTE2="(┤╦╚╒╗≥╥╘╟░);59.01.12-66.01.04╬¬╢■╚╒╓╨"
  137.            DBNAM="A15"
  138.       CASE SEL=16
  139.            SNAME="....╞└╢¿╡Ñ╬╗:"
  140.            DBNAME="DICFIL16"
  141.            DBNAM="A16"
  142.       CASE SEL=17
  143.            SNAME="....╬─╗»│╠╢╚:"
  144.            DBNAME="DICFIL17"
  145.            DBNAM="A17"
  146.       CASE SEL=18
  147.            SNAME="....▒╧╥╡╩▒╝Σ:"
  148.            LOGI="D"
  149.            NOTENU=2
  150.            NOTE1="╠ß╩╛: > (=╗≥<) 56.08.21 ▒φ╩╛╘┌┤╦╚╒╥╘║≤"
  151.            NOTE2="(┤╦╚╒╗≥╥╘╟░);59.01.12-66.01.04╬¬╢■╚╒╓╨"
  152.            DBNAM="A18"
  153.       CASE SEL=19
  154.            SNAME="....▒╧╥╡╘║╨ú:"
  155.            DBNAME="DICFIL19"
  156.            DBNAM="A19"
  157.       CASE SEL=20
  158.            SNAME="....╦∙╤º╫¿╥╡:"
  159.            DBNAME="DICFIL20"
  160.            DBNAM="A20"
  161.       CASE SEL=21
  162.            SNAME="....┤╙╩┬╣ñ╫≈:"
  163.            DBNAME="DICFIL21"
  164.            DBNAM="A21"
  165.       CASE SEL=22
  166.            SNAME="....╦∙╤º═Γ╙∩:"
  167.            DBNAME="DICFIL22"
  168.            DBNAM="A22"
  169.    ENDCASE
  170.    **  ╠⌡╝■╣²╢α╡─┤ª└φ
  171.    IF N>12
  172.        ENDLOOP='Y'
  173.        WAIT  "  ╦∙╤í╠⌡╝■╣²╢α!   " WINDOW TIMEOUT 6
  174.    ENDIF
  175.    IF SEL<>1
  176.       A=1
  177.       DUP=.F.
  178.       DO WHILE A<N+1
  179.          O=SUBSTR(STR(100+A,3),2,2)
  180.          IF CSE&O=SEL
  181.             DUP=.T.
  182.             B=A    &&▒Ω╩╢╣Γ▒Ω╬╗╓├
  183.             BB=SUBSTR(STR(100+B,3),2,2)
  184.             A=N+1
  185.          ENDIF
  186.          A=A+1
  187.       ENDDO
  188.       **  ┼╨╢╧╓╪╕┤╤í╘±╠⌡╝■
  189.       IF .NOT. DUP
  190.          N=N+1
  191.          O=SUBSTR(STR(100+N,3),2,2)
  192.          X2=X2+1
  193.          C&O=N
  194.          CNA&O=SNAME
  195.          CDB&O=DBNAM
  196.          CLO&O=LOGI
  197.          CCLO&O=LOGI
  198.          CSE&O=SEL
  199.          CTX&O=STXT
  200.          CORI&O=SPACE(21)  &&╘¡╩╝╩Σ╚δ
  201.          CNONU&O=NOTENU
  202.          CNOTE1&O=NOTE1
  203.          CNOTE2&O=NOTE2
  204.          SET COLOR TO W/N
  205.          @ X1+N+1,0 CLEAR TO 24,53
  206.          SET COLOR TO W/B,W/R
  207.          @ X2-2,Y1 TO X2-1,Y2 CLEAR
  208.          @ 1,Y1 TO X2-1,Y2 DOUB
  209.          **  ╠⌡╝■╨≥║┼
  210.          IF N>9
  211.             M=O
  212.          ELSE
  213.             M=" "+SUBSTR(O,2,1)
  214.          ENDIF
  215.          @ X1+N,Y1+2 SAY "╠⌡╝■"+M+"  "+SNAME
  216.          SET COLOR TO W/N
  217.          **  ╫╓╡Σ┐Γ┤░αφ╡─┤ª└φ
  218.          IF CTX&O <> ' '
  219.             @ 24,60 SAY "PRESS CTRL+] "
  220.          ENDIF
  221.          **  ╞┴─╗╧┬▓┐╡─╠ß╩╛
  222.          IF CNONU&O<>0
  223.             @ 21,4 to 22+cnonu&o,52 doub
  224.             @ 22,6 SAY CNOTE1&O
  225.             IF CNONU&O=2
  226.                @ 23,6 SAY CNOTE2&O
  227.             ENDIF
  228.          ENDIF
  229.  
  230.          SET COLO TO W/B,W/R
  231.          @ X1+N,Y1+23 GET CORI&O PICT "XXXXXXXXXXXXXXXXXXXXX"
  232.          READ
  233.          CVA&O=CORI&O
  234.          D1&O='00.00.00'     && ╚╒╞┌╨═╩²╛▌╡─┤ª└φ
  235.          D2&O='00.00.00'
  236.          IF CCLO&O="D"
  237.             CHE=O
  238.             DO DATE_CHE WITH N
  239.             IF GIVE_UP
  240.                RETURN
  241.             ELSE
  242.                SET COLO TO W/N
  243.                @ 24,6 SAY REPL(CHR(196),46)   &&'-'
  244.             ENDIF
  245.          ENDIF
  246.       **  ╓╪╕┤╤í╘±╡─┤ª└φ
  247.       ELSE
  248.          SET COLOR TO W/N
  249.          @ 21,0 CLEAR TO 24,53
  250.          IF CTX&BB<>' '
  251.             @ 24,60 SAY "PRESS CTRL+] "
  252.          ENDIF
  253.          IF CNONU&BB<>0
  254.             @ 21,4 to 22+cnonu&bb,52 doub
  255.             @ 22,6 SAY CNOTE1&BB
  256.             IF CNONU&BB=2
  257.                @ 23,6 SAY CNOTE2&BB
  258.             ENDIF
  259.          ENDIF
  260.          SET COLOR TO W/B,W/R
  261.          @ X1+B,Y1+23 GET CORI&BB PICT "XXXXXXXXXXXXXXXXXXXXX"
  262.          READ
  263.          CVA&BB=CORI&BB
  264.          **  ╚╒╞┌╨═╩²╛▌╡─┤ª└φ
  265.          IF CCLO&BB="D"
  266.             CHE=BB
  267.             DO DATE_CHE WITH B
  268.             IF GIVE_UP
  269.                RETURN
  270.             ELSE
  271.                SET COLO TO W/N
  272.                @ 24,6 SAY REPL(CHR(196),46)   &&'-'
  273.             ENDIF
  274.          ENDIF
  275.       ENDIF   &&.NOT. DUP
  276.       **  └√╙├╫╓╡Σ┐Γ┤░αφ
  277.       KEYV=READKEY()
  278.       IF KEYV=33 .OR. KEYV=289
  279.          SET COLOR TO W/N
  280.          @ 0,55 CLEAR TO 23,77
  281.          IF .NOT. DUP .AND. CTX&O<>' '
  282.             DO GETWORD                    && ╡»│÷╫╓╡Σ┐Γ┤░αφ
  283.             CORI&O=MYWORD
  284.             @ X1+N,Y1+23 GET CORI&O
  285.             READ
  286.             CVA&O=CORI&O
  287.          ELSE
  288.             IF CTX&BB<>' '
  289.                DO DRAW WITH CTX&BB
  290.                SET COLO TO W/B,W/R
  291.                CORI&BB=CHOICE_D
  292.                @ X1+B,Y1+23 GET CORI&BB
  293.                READ
  294.                CVA&BB=CORI&BB
  295.             ENDIF
  296.          ENDIF
  297.       ENDIF
  298.       SET COLOR TO W/N
  299.       @ 24,60 CLEAR TO 24,79
  300.    ENDIF      &&SEL<>1
  301. ENDDO         &&ENDLOOP<>"N"
  302. ***╨▐╕─▓Θ╤»╠⌡╝■
  303. ASK="N"
  304. @ 24,10 SAY "╩╟ ╖± ╨Φ ╥¬ ╨▐ ╕─ ▓Θ ╤» ╠⌡ ╝■(Y/N)" GET ASK
  305. READ
  306. SET COLOR TO W/N
  307. IF UPPER(ASK)="Y"
  308.    CLEAR
  309.    SET COLOR TO W/B,W/RB
  310.    @ 1,Y1 TO X2-1,Y2 DOUB
  311.    @ 2,7 SAY "       ╟δ ╨▐ ╕─ ╧α ╣╪ ╡─ ▓Θ ╤» ╧ε ─┐         "
  312.    @ 3,7 SAY REPL(CHR(196),45)   &&'-'
  313.    A=1
  314.    DO WHILE A<N+1
  315.       SET COLOR TO W/B,W/RB
  316.       AO=SUBSTR(STR(100+A,3),2,2)
  317.       **  ╠⌡╝■╨≥║┼
  318.       IF A>9
  319.          M=AO
  320.       ELSE
  321.          M=" "+SUBSTR(AO,2,1)
  322.       ENDIF
  323.       SET COLO TO W/N
  324.       @ 21,0 CLEAR TO 24,53
  325.       IF CNONU&AO<>0
  326.          @ 21,4 to cnonu&ao,52 doub
  327.          @ 22,6 SAY CNOTE1&AO
  328.          IF CNONU&AO=2
  329.             @ 23,6 SAY CNOTE2&AO
  330.          ENDIF
  331.       ENDIF
  332.       SET COLO TO W/B,W/RB
  333.       @ X1+A,Y1+1 SAY " ╠⌡╝■"+M+"  "+CNA&AO
  334.       @ X1+A,Y1+23 GET CORI&AO
  335.       READ
  336.       **  ╚╒╞┌╨═╩²╛▌╡─┤ª└φ
  337.       IF CCLO&AO="D"
  338.          CHE=AO
  339.          DO DATE_CHEC WITH A
  340.          IF GIVE_UP
  341.             RETURN
  342.          ELSE
  343.             SET COLO TO W/N
  344.             @ 24,6 SAY REPL(CHR(196),46)   &&'-'
  345.          ENDIF
  346.       ENDIF
  347.       A=A+1
  348.    ENDDO
  349.    A=1
  350.    DO WHILE A<N+1
  351.       AO=SUBSTR(STR(100+A,3),2,2)
  352.       CVA&AO=CORI&AO
  353.       A=A+1
  354.    ENDDO
  355.    SET COLO TO W/N
  356.    CLEAR
  357. ENDIF
  358. C_C1=""
  359. A=1
  360. DO WHILE A<N+1&& .AND. A<10===================
  361.    AO=SUBSTR(STR(100+A,3),2,2)
  362.    IF CLO&AO="N"            &&╣ñ╫╩╡─┤ª└φ
  363.        CVAA=TRIM(CVA&AO)
  364.        C_TEMP=IIF(LEN(CVAA)<>0,"&CDB&AO &CVAA .AND.","")
  365.    ELSE
  366.        IF CCLO&AO<>"D"          &&╖╟╚╒╞┌╨═╩²╛▌╡─┤ª└φ
  367.           CVAA=TRIM(CVA&AO)
  368.           C_TEMP=IIF(LEN(CVAA)<>0,"&CDB&AO &CLO&AO '&CVAA'.AND.","")
  369.        ELSE
  370.           NOK="DTOC(&CDB&AO)"
  371.           OOK=TRIM(CORI&AO)
  372.           C_TEMP=IIF(LEN(OOK)<>0,"&NOK >= '&D1&AO' .AND. &NOK &CLO&AO '&D2&AO' .AND.","")
  373.        ENDIF
  374.    ENDIF
  375.    C_C1="&C_C1"+"&C_TEMP"
  376.    A=A+1
  377. ENDDO
  378. ***╚Ñ╡⌠"╠⌡╝■-C_C"║≤├µ╡─ .AND.
  379. LENC=LEN(C_C1)
  380. IF RIGHT(C_C1,5)=".AND."
  381.    C_C=SUBSTR(C_C1,1,LENC-5)
  382. ENDIF
  383. IF LEN(C_C)<>0
  384.    WAIT C_C WINDOW
  385.    CLEAR
  386. ENDIF
  387. SET COLO TO W/N
  388. CLEAR
  389. SET COLOR TO W/B
  390. RETURN
  391.