| 1 | IBCEFG70 ; ALB/TMP - OUTPUT FORMATTER GENERIC SCREEN PROCESSING; 02-APR-96 | 
|---|
| 2 | ;;Version 2.0 ; INTEGRATED BILLING ;**52**; 21-MAR-94 | 
|---|
| 3 | ; | 
|---|
| 4 | SCRN(IBFORM,IBXIEN) ; Build screen display for form IBFORM and entry IBXIEN | 
|---|
| 5 | N Z,Z0,Z1,Z2,LAST,IBGRP | 
|---|
| 6 | D CLEAR^VALM1 | 
|---|
| 7 | S LAST=$O(^TMP("IBXEDIT",$J,""),-1),IBGRP="" | 
|---|
| 8 | F  D  Q:IBGRP="" | 
|---|
| 9 | .F Z=1:1 Q:$O(^TMP("IBXDATA",$J,1,1,Z-1))=""  W ! D:$D(^TMP("IBXDATA",$J,1,1,Z)) | 
|---|
| 10 | ..S Z0="" F  S Z0=$O(^TMP("IBXDATA",$J,1,1,Z,Z0)) Q:Z0=""  W ?Z0,^(Z0) | 
|---|
| 11 | .F Z=Z:1:$S($P($G(^IBE(353,IBFORM,2)),U,3):$P(^(2),U,3)-1,1:19) W ! | 
|---|
| 12 | .W !,"<RET> or '^' to QUIT  or 1-",LAST," to EDIT: " | 
|---|
| 13 | .R IBGRP:DTIME | 
|---|
| 14 | .I "^"[IBGRP S IBGRP="" Q | 
|---|
| 15 | .I 'IBGRP!(IBGRP>LAST) W:IBGRP'="?" *7 D HELP S IBGRP="REASK" Q | 
|---|
| 16 | .D EDIT(IBGRP,IBFORM,IBXIEN) | 
|---|
| 17 | Q | 
|---|
| 18 | ; | 
|---|
| 19 | EDIT(IBGRP,IBFORM,IBXIEN) ; Generic edit fields on a screen form IBFORM | 
|---|
| 20 | ;Loop here to read the group to edit (IBGRP) | 
|---|
| 21 | ; IBXIEN = entry number | 
|---|
| 22 | N Z,DR,DA,DIE,FLDS,Z0 | 
|---|
| 23 | F Z=1:1:$L(IBGRP,",") S Z0=$P(IBGRP,",",Z) D:IBGRP'="" | 
|---|
| 24 | .I IBGRP'["-" S FLDS(+IBGRP)="" Q | 
|---|
| 25 | .F Z1=+IBGRP:1:$P(IBGRP,"-",2) S FLDS(Z1)="" | 
|---|
| 26 | S DR="" | 
|---|
| 27 | S IBGRP="" F  S IBGRP=$O(FLDS(IBGRP)) Q:'IBGRP  S Z=0 F  S Z=$O(^TMP("IBXEDIT",$J,IBGRP,Z)) Q:'Z  S DR=DR_$S($L(DR):";",1:"")_^(Z) | 
|---|
| 28 | I $L(DR) S DIE=+$G(^IBE(353,IBFORM,2)),DA=IBXIEN D ^DIE | 
|---|
| 29 | D CLEAR^VALM1 | 
|---|
| 30 | Q | 
|---|
| 31 | ; | 
|---|
| 32 | HELP ; Help for group prompt | 
|---|
| 33 | N X,I | 
|---|
| 34 | W !,"Enter '^' to stop the display and edit of data, or enter" | 
|---|
| 35 | W !,"the field group number(s) you wish to edit using commas and dashes as",!,"delimiters.  The elements that are editable are assigned a group number",!,"enclosed in brackets ""[]"" while those without group numbers are not." | 
|---|
| 36 | W ! F I=$Y:1:20 W ! | 
|---|
| 37 | S Z="PRESS <RETURN> KEY to RETURN to SCREEN " R X:DTIME | 
|---|
| 38 | Q | 
|---|