| 1 | IBDFBKS4 ;ALB/AAS - Create form spec file for scanning ; 6-JUN-95 | 
|---|
| 2 | ;;3.0;AUTOMATED INFO COLLECTION SYS;**3,25**;APR 24, 1997 | 
|---|
| 3 | ; | 
|---|
| 4 | RECOMP ;Recompiles all form specs for paper keyboard | 
|---|
| 5 | N QZZ | 
|---|
| 6 | S QZZ=0 F  S QZZ=$O(^IBD(359.2,QZZ)) Q:'QZZ  D SCAN^IBDFBKS(QZZ) | 
|---|
| 7 | Q | 
|---|
| 8 | ; | 
|---|
| 9 | FIELDS ; | 
|---|
| 10 | S FLD=1 F  S FLD=$O(@FIELDS@(PAGE,FLD)) Q:'FLD  D | 
|---|
| 11 | .N DATATP S DATATP=$G(@FIELDS@(PAGE,FLD,"DATATYPE")) | 
|---|
| 12 | .I DATATP="" D  Q | 
|---|
| 13 | ..S (LBEGIN,LEND,QUIT)=0 | 
|---|
| 14 | ..S LBEGIN=FLD F  S FLD=$O(@FIELDS@(PAGE,FLD)) Q:QUIT  D  Q:QUIT | 
|---|
| 15 | ...I LEND=0,$S(FLD="":1,1:$G(@FIELDS@(PAGE,FLD,"DATATYPE"))'="") S FLD=LBEGIN D ONEBUB S QUIT=1 Q | 
|---|
| 16 | ...I FLD="",LEND>LBEGIN D LOOP(LBEGIN,LEND) S FLD=LEND,QUIT=1 Q | 
|---|
| 17 | ...I $G(@FIELDS@(PAGE,FLD,"DATATYPE"))'="" D LOOP(LBEGIN,LEND) S FLD=LEND,QUIT=1 Q | 
|---|
| 18 | ...S LEND=FLD | 
|---|
| 19 | ...Q | 
|---|
| 20 | .; | 
|---|
| 21 | .I DATATP'="" D | 
|---|
| 22 | ..N TOSTRING | 
|---|
| 23 | ..S TOSTRING=$S($G(@FIELDS@(PAGE,FLD,"START")):"narrative",1:"str") | 
|---|
| 24 | ..; | 
|---|
| 25 | ..D BLDARY^IBDFBKS(" "_TOSTRING_"=\""\"";") | 
|---|
| 26 | ..; | 
|---|
| 27 | ..I DATATP="ALPHA" D BLDARY^IBDFBKS(" if (GETSTATUS("_FLD_")==FIELD_OK) "_TOSTRING_"=STRIP(GETAVALUE("_FLD_"));") Q | 
|---|
| 28 | ..; | 
|---|
| 29 | ..I DATATP="FLOAT" D BLDARY^IBDFBKS(" if (GETSTATUS("_FLD_")==FIELD_OK) "_TOSTRING_"=STRIP(FTOA(GETFVALUE("_FLD_")));") Q | 
|---|
| 30 | ..; | 
|---|
| 31 | ..I DATATP="INT" D BLDARY^IBDFBKS(" if (GETSTATUS("_FLD_")==FIELD_OK) "_TOSTRING_"=STRIP(ITOA(GETIVALUE("_FLD_")));")  Q | 
|---|
| 32 | ..; | 
|---|
| 33 | ..I DATATP="DATE" D BLDARY^IBDFBKS(" if (GETSTATUS("_FLD_")==FIELD_OK) "_TOSTRING_"=STRIP(DTOA(GETIVALUE("_FLD_")));") Q | 
|---|
| 34 | ..; | 
|---|
| 35 | ..I DATATP="TIME" D BLDARY^IBDFBKS(" if (GETSTATUS("_FLD_")==FIELD_OK) "_TOSTRING_"=STRIP(TTOA(GETIVALUE("_FLD_")));") Q | 
|---|
| 36 | ..; | 
|---|
| 37 | ..;D BLDARY^IBDFBKS(" "_TOSTRING_"=STRFIELDS("_FLD_","_FLD_");") Q | 
|---|
| 38 | .; | 
|---|
| 39 | .I $G(@FIELDS@(PAGE,FLD,"MULT")),'$G(@FIELDS@(PAGE,FLD,"START")) D BLDARY^IBDFBKS(" if (str!=\""\"") narrative=STRIP(STRCAT(STRCAT(narrative,\"" \""),str));") | 
|---|
| 40 | .; | 
|---|
| 41 | .I '$G(@FIELDS@(PAGE,FLD,"MULT")) D | 
|---|
| 42 | ..D BLDARY^IBDFBKS(" if (str != \""\"") {") | 
|---|
| 43 | ..D BLDARY^IBDFBKS("   Data=Add;") | 
|---|
| 44 | ..I @FIELDS@(PAGE,FLD)'="" D BLDARY^IBDFBKS("   Data=STRCAT(Data,\"""_@FIELDS@(PAGE,FLD)_"\"");") | 
|---|
| 45 | ..D BLDARY^IBDFBKS("   Data=STRCAT(Data,str);") | 
|---|
| 46 | ..D BLDARY^IBDFBKS("   Data=STRCAT(Data,\"",\"");") | 
|---|
| 47 | ..D BLDARY^IBDFBKS("   if (ddechan != 0) result=DDEEXEC(ddechan,Data);}") | 
|---|
| 48 | ..D BLDARY^IBDFBKS("   ") | 
|---|
| 49 | .; | 
|---|
| 50 | .I $G(@FIELDS@(PAGE,FLD,"END")) D | 
|---|
| 51 | ..D BLDARY^IBDFBKS("    if (narrative!=\""\"") {") | 
|---|
| 52 | ..D BLDARY^IBDFBKS("   Data=Add;") | 
|---|
| 53 | ..I @FIELDS@(PAGE,FLD)'="" D BLDARY^IBDFBKS("   Data=STRCAT(Data,\"""_@FIELDS@(PAGE,FLD)_"\"");") | 
|---|
| 54 | ..D BLDARY^IBDFBKS("   Data=STRCAT(Data,narrative);") | 
|---|
| 55 | ..I $P($G(@FIELDS@(PAGE,FLD)),":")'="H" D BLDARY^IBDFBKS("   Data=STRCAT(Add,str);") | 
|---|
| 56 | ..D BLDARY^IBDFBKS("   Data=STRCAT(Data,\"",\"");") | 
|---|
| 57 | ..D BLDARY^IBDFBKS("   if (ddechan != 0) result=DDEEXEC(ddechan,Data);}") | 
|---|
| 58 | FIELDSQ Q | 
|---|
| 59 | ; | 
|---|
| 60 | ONEBUB ; -- for a single bubble field | 
|---|
| 61 | D BLDARY^IBDFBKS(" str=STRFIELDS("_FLD_","_FLD_");") | 
|---|
| 62 | D BLDARY^IBDFBKS(" if (str!=\""\"") {") | 
|---|
| 63 | I @FIELDS@(PAGE,FLD)'="" D BLDARY^IBDFBKS("   Data=STRCAT(Data,\"""_@FIELDS@(PAGE,FLD)_"\"");") | 
|---|
| 64 | D BLDARY^IBDFBKS("      Data=STRCAT(Add,str);") | 
|---|
| 65 | D BLDARY^IBDFBKS("      Data=STRCAT(Data,\"",\"");") | 
|---|
| 66 | D BLDARY^IBDFBKS("      if (ddechan != 0) result=DDEEXEC(ddechan,Data);}") | 
|---|
| 67 | Q | 
|---|
| 68 | ; | 
|---|
| 69 | LOOP(LBEGIN,LEND) ; -- Loop through fields instead of one by one | 
|---|
| 70 | D BLDARY^IBDFBKS("  ") | 
|---|
| 71 | D BLDARY^IBDFBKS(" loop="_LBEGIN_";") | 
|---|
| 72 | D BLDARY^IBDFBKS(" while (loop < "_(LEND+1)_"){") | 
|---|
| 73 | D BLDARY^IBDFBKS("   str=STRFIELDS(loop,loop);") | 
|---|
| 74 | D BLDARY^IBDFBKS("   if (str!=\""\"") {") | 
|---|
| 75 | D BLDARY^IBDFBKS("      Data=STRCAT(Add,str);") | 
|---|
| 76 | D BLDARY^IBDFBKS("      Data=STRCAT(Data,\"",\"");") | 
|---|
| 77 | D BLDARY^IBDFBKS("      if (ddechan != 0) result=DDEEXEC(ddechan,Data);}") | 
|---|
| 78 | D BLDARY^IBDFBKS("   loop=loop+1;") | 
|---|
| 79 | D BLDARY^IBDFBKS(" if (loop > "_LEND_") break;}") | 
|---|
| 80 | D BLDARY^IBDFBKS("  ") | 
|---|
| 81 | Q | 
|---|
| 82 | ; | 
|---|
| 83 | ;;loop=9; | 
|---|
| 84 | ;;while (loop < 51){ | 
|---|
| 85 | ;;    str=STRFIELDS(loop,loop); | 
|---|
| 86 | ;;    if (str!=\"\") { | 
|---|
| 87 | ;;      Data=STRCAT(Data,str); | 
|---|
| 88 | ;;      Data=STRCAT(Data,RS);} | 
|---|
| 89 | ;;   loop=loop+1; | 
|---|
| 90 | ;;   if (loop > 51) break; | 
|---|
| 91 | ;;   } | 
|---|
| 92 | ;; | 
|---|
| 93 | ;;\'SHOW(Data); | 
|---|
| 94 | DATA1 ;;    Data = STRCAT(\"FORMTYPE=153\", RS); | 
|---|
| 95 | ;;    Data = STRCAT(Data, \"FORMID=\"); | 
|---|
| 96 | ;;    Data = STRCAT(Data, ITOA(GETIVALUE(7))); | 
|---|
| 97 | ;;    Data = STRCAT(Data,RS); | 
|---|
| 98 | ;;    Data = STRCAT(Data,\"PAGE=1\"); | 
|---|
| 99 | ;;    Data = STRCAT(Data,RS); | 
|---|
| 100 | ;;    Data = STRCAT(Data, \"DATA=\"); | 
|---|
| 101 | ;;    Data = STRCAT(Data,RS); | 
|---|
| 102 | ;; | 
|---|