|
|
DataMuseum.dkPresents historical artifacts from the history of: CP/M |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CP/M Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 8960 (0x2300)
Types: TextFile
Names: »PRINTKIT.PRG«
└─⟦71c82d5c0⟧ Bits:30004214 LISTAID - Partslist management system
└─⟦this⟧ »PRINTKIT.PRG«
└─⟦9ce0f2175⟧ Bits:30004308/disk3.imd Listaid database backup
└─⟦this⟧ »PRINTKIT.PRG«
*******************************************************************************
*DESIGN NIF/ASD/SEPTEMBER 1985
*******************************************************************************
*
*PROCEDURE PRINTKIT CALLED FROM PFIL
GO TOP
SET TALK OFF
SET FORMAT TO PRINT
EJECT
STORE CHR(30)-CHR(31) TO MHEADW
@ 1,1 SAY MHEADW
SET FORMAT TO SCREEN
ERASE
STORE N TO SOTS
@ 10,10 SAY 'PLEASE ADJUST TO TOP OF FORM'
@ 12,10 SAY 'DO YOU WANT SOTKITS APPENDED (Y/N)? ' GET SOTS
READ
@ 12,10 SAY 'PRINTING KIT-LIST '
SET FORMAT TO PRINT
SET MARGIN TO 1
STORE 63 TO RIGHT
*******************************************************************************
*OUTPUT REPORTHEADER
@ 8,1 SAY 'DATE: '+DATO
@ 10,1 SAY '****************************************************************'
@ 11,1 SAY '** **'
@ 12,1 SAY '** KITLIST **'
@ 13,1 SAY '** **'
@ 14,1 SAY '** UNIT: '+UNITNAME+' CONFIGURATION_FILE: '+CONFIGNAME
@ 14,RIGHT SAY '**'
@ 15,1 SAY '**------------------------------------------------------------**'
@ 16,1 SAY '** **'
@ 17,1 SAY '** COMPONENTS CONTAINED IN FILE: '+OPERDBF
@ 17,RIGHT SAY '**'
@ 18,1 SAY '** **'
@ 19,1 SAY '****************************************************************'
@ 20,1 SAY PRINTCTR
*******************************************************************************
RELEASE RIGHT,MHEADW
STORE CHR(149) TO HY
STORE HY+HY+HY+HY+HY TO LINE
STORE LINE+LINE+LINE+LINE+LINE+LINE+HY TO LINE31
STORE CHR(152)+LINE+CHR(145)+LINE+CHR(145)+LINE31+CHR(145) TO TOPLINE
STORE TOPLINE+$(LINE31,1,15)+CHR(145)+$(LINE31,1,12)+CHR(145) TO TOPLINE
STORE TOPLINE+$(LINE31,1,24)+CHR(153) TO TOPLINE
STORE CHR(147)+LINE+CHR(143)+LINE+CHR(143)+LINE31+CHR(143) TO MIDLINE
STORE MIDLINE+$(LINE31,1,15)+CHR(143)+$(LINE31,1,12)+CHR(143) TO MIDLINE
STORE MIDLINE+$(LINE31,1,24)+CHR(146) TO MIDLINE
STORE CHR(154)+LINE+CHR(144)+LINE+CHR(144)+LINE31+CHR(144) TO BOTLINE
STORE BOTLINE+$(LINE31,1,15)+CHR(144)+$(LINE31,1,12)+CHR(144) TO BOTLINE
STORE BOTLINE+$(LINE31,1,24)+CHR(155) TO BOTLINE
STORE CHR(150) TO I
STORE I+'ITEM '+I+' QTY.'+I+' DESCRIPTION '+I TO COLH1
STORE COLH1+' LOT NUMBER '+I+' IDENTIFIKAT'+I TO COLH1
STORE COLH1+' REMARKS '+I TO COLH1
STORE I+' NO. '+I+' MGD.'+I+' BESKRIVELSE '+I TO COLH2
STORE COLH2+' DATOKODE '+I+' (IKR/ETC.) '+I TO COLH2
STORE COLH2+' BEMÆRKNINGER '+I TO COLH2
STORE I+' '+I+' '+I+' '+I TO BROW
STORE BROW+' '+I+' '+I TO BROW
STORE BROW+' '+I TO BROW
STORE I+' '+I+' '+I TO TAIL
STORE TAIL+' '+I TO TAIL
RELEASE HY,LINE,LINE31
SET MARGIN TO 5
EJECT
STORE 43 TO ROWTRESH
STORE PINIT TO PAGE
STORE LEN(TOPLINE)-30 TO RIGHT
DO WHILE .NOT.EOF
STORE 1 TO COLUMN
@ 5,1 SAY HEAD1L USING 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
@ 5,RIGHT SAY HEAD1R USING 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
@ 6,1 SAY HEAD2L USING 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
@ 6,RIGHT SAY HEAD2R USING 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
@ 7,1 SAY HEAD3L USING 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
IF PAGE>0
@ 7,RIGHT SAY ' PAGE '+STR(PAGE,2)
ELSE
@ 7,RIGHT SAY ' PAGE '
ENDIF
STORE 9 TO ROW
@ ROW,COLUMN SAY TOPLINE
STORE ROW+1 TO ROW
@ ROW,COLUMN SAY COLH1
STORE ROW+1 TO ROW
@ ROW,COLUMN SAY COLH2
STORE ROW+1 TO ROW
@ ROW,COLUMN SAY MIDLINE
STORE ROW+1 TO ROW
@ ROW,COLUMN SAY MIDLINE
STORE ROW+1 TO ROW
@ ROW,COLUMN SAY BROW
STORE ROW+1 TO ROW
STORE 1 TO ITEM
STORE 0 TO ENDPOS
DO WHILE (ROWTRESH-ROW>(ENDPOS/24)+5).AND..NOT.EOF
STORE 0 TO LASTPOS
STORE @('.',REF:DES) TO ENDPOS
IF ENDPOS=0.AND.'$'$REF:DES
STORE @('$',REF:DES) TO ENDPOS
STORE T TO CHAIN
ELSE
STORE F TO CHAIN
ENDIF
STORE I+' '+STR(ITEM,1)+'. '+I+STR(COUNTER,5)+I TO PRINTSTR1
STORE ITEM+1 TO ITEM
DO WHILE LASTPOS<=ENDPOS
STORE $(REF:DES,LASTPOS+1,30) TO PRINTSTR2
IF LASTPOS+30<ENDPOS
STORE @(',',$(PRINTSTR2,24,7)) TO CURPOS
STORE LASTPOS+23+CURPOS TO LASTPOS
STORE CHR(27)+CHR(67)+$(PRINTSTR2,1,23+CURPOS)+CHR(27)+CHR(68);
TO PRINTSTR2
ELSE
IF CHAIN
STORE @('$',PRINTSTR2) TO MERG
STORE $(PRINTSTR2,1,MERG-1)-',' TO PRINTSTR2
SKIP
STORE @('$',REF:DES) TO ENDPOS
IF ENDPOS=0
STORE F TO CHAIN
STORE @('.',REF:DES) TO ENDPOS
STORE 0 TO LASTPOS
ENDIF
ELSE
STORE ENDPOS+1 TO LASTPOS
ENDIF
STORE CHR(27)+CHR(67)+PRINTSTR2+CHR(27)+CHR(68) TO PRINTSTR2
ENDIF
STORE PRINTSTR1+PRINTSTR2 TO PRINTSTR
@ ROW,1 SAY PRINTSTR
@ ROW,47 SAY TAIL
STORE I+' '+I+' '+I TO PRINTSTR1
STORE ROW+1 TO ROW
ENDDO
@ ROW,1 SAY PRINTSTR1
@ ROW,14 SAY MAIN:CHAR
@ ROW,45 SAY TAIL
STORE ROW+1 TO ROW
@ ROW,1 SAY PRINTSTR1 USING 'XXXXXXXXXXXXX'
@ ROW,14 SAY SPEC:CODE USING 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
@ ROW,45 SAY TAIL
STORE ROW+1 TO ROW
@ ROW,1 SAY PRINTSTR1 USING 'XXXXXXXXXXXXX'
STORE GEN:NAME+' '+CVALUE+' '+TOLERANCE+' '+RATED:VOLT TO PRINTVAR
@ ROW,14 SAY PRINTVAR USING 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
@ ROW,45 SAY TAIL
STORE ROW+1 TO ROW
@ ROW,1 SAY BROW
STORE ROW+1 TO ROW
@ ROW,1 SAY MIDLINE
STORE ROW+1 TO ROW
SKIP
IF $(REF:CODE,1,1)$'CDS'
GO BOTTOM
SKIP
ENDIF
ENDDO
DO WHILE ROW<ROWTRESH
@ ROW,1 SAY BROW
STORE ROW+1 TO ROW
ENDDO
@ ROW,1 SAY BOTLINE
STORE ROW+1 TO ROW
@ ROW,1 SAY BOTT1
STORE ROW+1 TO ROW
@ ROW,1 SAY BOTT2
STORE ROW+1 TO ROW
@ ROW,1 SAY BOTT3
IF PAGE>0
STORE PAGE+1 TO PAGE
ENDIF
ENDDO
*******************************************************************************
*RETURN
SET FORMAT TO SCREEN
IF SOTS
STORE OPERDBF TO MPLL
STORE 'MISING SOT-FILES: ' TO MISSING
GO TOP
LOCATE FOR $(REF:CODE,1,3)='SOT'
STORE @('.',OPERDBF) TO PLACE
STORE $(OPERDBF,1,PLACE) TO MSOURCE
RELEASE PLACE
STORE 0 TO OLDNR
DO WHILE #>OLDNR
STORE # TO OLDNR
IF $(REF:CODE,1,3)='SOT'
STORE 'LISTING OF SELECT_ON_TEST-KIT: '+REF:CODE TO HEADING
*CALL PRINTSOT
SET EXACT ON
STORE REF:CODE TO MSOT
DELETE FOR REF:CODE=MSOT
GO OLDNR
STORE $(REF:CODE,4,2) TO MSOT
IF RANK(MSOT)=RANK(' ').OR.RANK(MSOT)=RANK('0')
STORE $(MSOT,2,1) TO MSOT
ENDIF
STORE MSOURCE-'S'-MSOT TO MSOTNAME
*CHECK IF SOT FILE EXISTS, IF IT DOES NOT TELL IT AND PROCCED
IF FILE(MSOTNAME)
USE PLL_STRU
COPY STRU TO SOTPLL
USE SOTPLL
APPEND FROM &MSOTNAME
REPLACE ALL REF:DES WITH 'SOT'-MSOT
STORE 'PLL' TO MDBASE
*INITIALIZE OPERDBF FOR COMPLETE
STORE 'SOTPLL.DBF' TO OPERDBF
DO COMPLETE
DO CONVERT
USE SOTPLL
*INITIALIZE HEADER FOR PRINTSOT
STORE T TO CALL
SET FORMAT TO PRINT
DO PRINTSOT
SET FORMAT TO SCREEN
ELSE
STORE MISSING+MSOTNAME TO MISSING
ENDIF
ENDIF
USE &MPLL
LOCATE FOR $(REF:CODE,1,3)='SOT'.AND..NOT.*
ENDDO
IF '.'$MISSING
SET FORMAT TO PRINT
EJECT
@ 10,1 SAY MISSING
ENDIF
RECALL ALL
ENDIF
RELEASE ALL LIKE PRINTSTR*
RELEASE TOPLINE
RELEASE MIDLINE
RELEASE BOTLINE
RELEASE ROW,COLUMN,PAGE,ROWTRESH,HEADING,OLDNR,TAIL
RETURN
«eof»