|目次|前ページ|次ページ| ───────────────────────────────────── ■サンプルルーチン(直接印刷)の解説 copyright エスアイエム ───────────────────────────────────── ◆サンプルルーチン(直接印刷) ───────────────────────────────────── ZSIMSAMP ZSIMSAMP ;;;レイアウト[30-nov-2001]/for CACHE(DSM-J)/ ;;;S.Mizuno/ on ESC-vcom++/小数点サポート/LaserShot用/ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; レイアウト ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; W !!,"***<<< レイアウト >>>***",! S $ZT="TRAP^ZSIMSAMP" ;;; ;;;;;;;;;;[30-nov-2001];;;;;;;;;;; N %DEVICE S %DEVICE=0 ;;;$ZV[02-may-2001];;; D ;;;[30-nov-2001];;; .U 0:WIDTH=0 Q ;;;cache;;; .;;;;;;U 0:0 ;;;msm;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; D OPEN ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S CRLF=$C(13)_$C(10) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S setstr=$$WpInit^ZSIMLP1() ;;;<<標準的な初期化処理>>;;; D FONT ;;;フォント指定情報ダウンロード;;;;;; S setstr=$$WpOpen^ZSIMLP1() ;;;<<標準的なオープン処理>> ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S PATN=1,BIAS=1 D LAYOUT ;;;spool write test;;; S PATN=2,BIAS=0 D LAYOUT ;;;spool write test;;; S YYY=30.5 D SPLIT ;;; S PATN=3,BIAS=0 D LAYOUT ;;;spool write test;;; S YYY=61 D SPLIT ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; D DISGDI ;;;グラフィックス描画を禁止;;; --> <esc>[...G のシーケンスを画面モードに戻す ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S setstr=$$WpClose^ZSIMLP1() ;;;<<標準的なクローズ処理>> S setstr=$$WpTerm^ZSIMLP1() ;;;<<標準的な終了処理>>;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; D CLOSE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; W !!,"***<<< レイアウト 終了>>>***",! Q LAYOUT ;;; D BIAS ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; D FOPEN ;;;フォントオープン;;; D FCLOSE ;;;フォントクローズ;;; D ENAGDI ;;;グラフィックス描画を可能に;;; --> <esc>[...G のシーケンスを印刷モードに設定 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S setstr=$$WpMainF^ZSIMLP1() ;;;<<<メインフォント印字モードに切替>>> --> 印刷位置を決定する際の行桁はこのサイズで決定されます S dmy=$$WpWrite^ZSIMLP1(setstr) ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;S LREC=$C(27)_"[1;1H" ;;;set print position (x,y)=>(1,1);;; ;S setstr=LREC ;;; ;S dmy=$$WpWrite^ZSIMLP1(setstr) ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;S LREC=$C(27)_"[1;1H" ;;;set print position (x,y)=>(1,1);;; ;F J=1:1:30 S LREC=LREC_$C(27)_"["_J_"H"_"#"_J_"#" ;;;line scale;;; ;S dmy=$$WpWrite^ZSIMLP1(LREC) ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;S LREC=$C(27)_"[1;1H" ;;;set print position (x,y)=>(1,1);;; ;F J=31:1:60 S LREC=LREC_$C(27)_"["_J_"H"_"#"_J_"#" ;;;line scale;;; ;S dmy=$$WpWrite^ZSIMLP1(LREC) ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;S LREC=$C(27)_"[1;1H" ;;;set print position (x,y)=>(1,1);;; ;F J=61:1:90 S LREC=LREC_$C(27)_"["_J_"H"_"#"_J_"#" ;;;line scale;;; ;S dmy=$$WpWrite^ZSIMLP1(LREC) ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;S LREC=$C(27)_"[1;1H" ;;;set print position (x,y)=>(1,1);;; ;F J=91:1:120 S LREC=LREC_$C(27)_"["_J_"H"_"#"_J_"#" ;;;line scale;;; ;S dmy=$$WpWrite^ZSIMLP1(LREC) ;;; --> 以上のコメント化された部分は、印刷位置を決定する際に必要な 現在の解像度でメインフォント時、最高何行,何桁印字可能かを 印刷します ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; D DATAOUT ;;; D PREPRNT ;;; D SMALL ;;; D LARGE ;;; D GOUKEI ;;; D KEISEN ;;; S BAR="1008922140" D NW7 ;;;バーコード印刷(NW-7);;; ;;;;;S BAR=$TR($J("1008922140",12)," ","0") D JAN12DG ;;;バーコード印刷(JAN12);;; I PATN'=1 S BAR="20061890-ABCDEFGHIJKLMNOP" D CODE39 ;;; D ;;;閉じ穴;;; .S xc=4,yc=1+Yb,xr=2,yr=1 D CIRCLE ;;; .S xc=4,yc=26+Yb,xr=2,yr=1 D CIRCLE ;;; --> 以上の部分は、小さな円を描画します ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MAINFONT ;;;<<<メインフォント印字モードに切替>>> S setstr=$$WpMainF^ZSIMLP1() ;;;printer Main Font;;; S dmy=$$WpWrite^ZSIMLP1(setstr) ;;; Q --> 以下は、メインフォントのサイズで印刷位置の行桁を指定します LOCATE ;;;(X,Y);;;印刷位置指定;;; S setstr=$$WpXYPos^ZSIMLP1(X,Y,0,0) ;;;printer Main Font;;; S dmy=$$WpWrite^ZSIMLP1(setstr) ;;; Q --> 以下は、直接プリンタに出力します WRITE ;;;スプラーに書き込み;;; S dmy=$$WpWrite^ZSIMLP1(STR) ;;; Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; --> 以下は、3つのボックスの描画位置パラメタを設定 BIAS ;;; D ;;; .I PATN=1 S Xb=20,Yb=1.5,XR=4 Q ;;;上部/左部の空白(マージン);;; .I PATN=2 S Xb=20,Yb=1.5+30.5,XR=4 Q ;;;上部/左部の空白(マージン);;; .I PATN=3 S Xb=20,Yb=1.5+61,XR=4 Q ;;;上部/左部の空白(マージン);;; S Ydecimal=.5,Ysmall=.2 ;;;罫線/小文字のY座標(小数点指定)[09-apr-2001];;; S Yhin=.2 Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; DATAOUT ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; D MAINFONT ;;;<<<メインフォント印字モードに切替>>> ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=2+Xb,Y=1+Yb D LOCATE S STR="99999999" D WRITE ;;;コード;;; S X=12+Xb,Y=1+Yb D LOCATE S STR="XXXXXXXX" D WRITE ;;;コード;;; S X=92+Xb,Y=1+Yb D LOCATE S STR="9999999999" D WRITE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=12+Xb,Y=2+Yb D LOCATE S STR="" D WRITE ;;;;;; S X=92+Xb,Y=2+Yb D LOCATE S STR="2001.99.99" D WRITE ;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=6+Xb,Y=3+Yb D LOCATE S STR="NNNNNNNNNNNNNNNNNNNN" D WRITE S X=6+Xb,Y=4+Yb D LOCATE S STR="NNNNNNNNN 様" D WRITE S X=6+Xb,Y=5+Yb D LOCATE S STR="NNNNNNNNNNNNNNNNNNNN" D WRITE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+6+Xb,Y=6+Yb D LOCATE S STR="〒999-9999" D WRITE ;;;POST;;; S X=XR+18+Xb,Y=6+Yb D LOCATE S STR="999-99-9999" D WRITE ;;;TEL;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+6+Xb,Y=7+Yb D LOCATE S STR="NNNNNNNNNNNNNNNNN" D WRITE S X=XR+6+Xb,Y=8+Yb D LOCATE S STR="NNNNNNNNNNNNNNNNNNNN" D WRITE S X=XR+6+Xb,Y=9+Yb D LOCATE S STR="NNNNNNNNNNNNNNNNNNNN" D WRITE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+43+Xb,Y=10+Yb D LOCATE S STR="999999-XXXXXXXXXXXXXXXX" D WRITE ;;;;;; S X=XR+9+Xb,Y=10+Yb D LOCATE S STR="XXXXXXXXXXXXXXXXXXXXXXX" D WRITE ;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; D ;;;[16-apr-2001];;; .I PATN=1 D Q ..S X=XR+72+Xb,Y=7+Yb D LOCATE S STR="NNNNNNNNN" D WRITE .D Q ..S X=XR+60+Xb,Y=3+Yb D LOCATE S STR="〒999-9999" D WRITE ;;;;;; ..S X=XR+60+Xb,Y=4+Yb D LOCATE S STR="NNNNNNNNNNNN" D WRITE ..S X=XR+66+Xb,Y=5+Yb D LOCATE S STR="NNNNNNNNN" D WRITE ..S X=XR+64+Xb,Y=6+Yb D LOCATE S STR="099-999-9999" D WRITE ;;;TEL;;; ..S X=XR+85+Xb,Y=6+Yb D LOCATE S STR="099-999-9999" D WRITE ;;;FAX;;; ..S X=XR+85+Xb,Y=7+Yb D LOCATE S STR="NNNNNNN" D WRITE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+75+Xb,Y=10+Yb D LOCATE S STR="2001.99.99" D WRITE ;;;;;; S X=XR+92+Xb,Y=10+Yb D LOCATE S STR="9999999" D WRITE ;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+2+Xb,Y=12+Yb+Yhin D LOCATE S STR="NNNNNNN" D WRITE S X=XR+2+Xb,Y=13+Yb+Yhin D LOCATE S STR="NNNNNNN" D WRITE S X=XR+2+Xb,Y=14+Yb+Yhin D LOCATE S STR="NNNNNNN" D WRITE S X=XR+2+Xb,Y=15+Yb+Yhin D LOCATE S STR=$TR($J("",30)," ","N") D WRITE S X=XR+2+Xb,Y=16+Yb+Yhin D LOCATE S STR=$TR($J("",30)," ","N") D WRITE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+67+Xb,Y=12+Yb+Yhin D LOCATE S STR=" Z" D WRITE S X=XR+67+Xb,Y=13+Yb+Yhin D LOCATE S STR=" Z,ZZZ" D WRITE S X=XR+67+Xb,Y=14+Yb+Yhin D LOCATE S STR=" ZZZ" D WRITE S X=XR+67+Xb,Y=15+Yb+Yhin D LOCATE S STR=" ZZ" D WRITE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+74+Xb,Y=12+Yb+Yhin D LOCATE S STR=" " D WRITE S X=XR+74+Xb,Y=15+Yb+Yhin D LOCATE S STR=" NNNN" D WRITE S X=XR+74+Xb,Y=16+Yb+Yhin D LOCATE S STR=" NNNN" D WRITE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+87+Xb,Y=12+Yb+Yhin D LOCATE S STR=" 99,999" D WRITE S X=XR+87+Xb,Y=13+Yb+Yhin D LOCATE S STR=" " D WRITE S X=XR+87+Xb,Y=14+Yb+Yhin D LOCATE S STR=" 99,999" D WRITE S X=XR+87+Xb,Y=15+Yb+Yhin D LOCATE S STR=" 9,999" D WRITE S X=XR+87+Xb,Y=16+Yb+Yhin D LOCATE S STR=" 999" D WRITE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+9+Xb,Y=18+Yb D LOCATE S STR="XXXXXXXXX" D WRITE ;;;????;;; S X=XR+24+Xb,Y=18+Yb D LOCATE S STR="XXXXXXXXXXXXXXXXXX" D WRITE ;;;????;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+5+Xb,Y=20+Yb D LOCATE S STR="NNNNNNNNNNNNNNN" D WRITE S X=XR+5+Xb,Y=21+Yb D LOCATE S STR="NNNNNNNNNNNNNNNNNNNN" D WRITE S X=XR+5+Xb,Y=22+Yb D LOCATE S STR="NNNNNNNNNNNNNNNNNNNN" D WRITE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+5+Xb,Y=23+Yb D LOCATE S STR="〒XXX-XXXX" D WRITE ;;;POST;;; S X=XR+16+Xb,Y=23+Yb D LOCATE S STR="XXXX-XXXX-XXXX" D WRITE ;;;TEL;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+5+Xb,Y=24+Yb D LOCATE S STR="NNNNNNNNNNNNNNNNNNNN" D WRITE S X=XR+5+Xb,Y=25+Yb D LOCATE S STR="NNNNNNNNNNNNNNNNNNNN" D WRITE S X=XR+5+Xb,Y=26+Yb D LOCATE S STR="NNNNNNNNNNNNNNNNNNNN" D WRITE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; I PATN=3 D ;;; .S X=XR+62+Xb,Y=21+Yb D LOCATE S STR="NNNNNNNNNNNNNNN" D WRITE .S X=XR+57+Xb,Y=22+Yb D LOCATE S STR="NNNNNNNNNNNNNNN" D WRITE .S X=XR+57+Xb,Y=23+Yb D LOCATE S STR="NNNNNNNNNNNNNNN" D WRITE .S X=XR+57+Xb,Y=24+Yb D LOCATE S STR="NNNNNNNNNNNNNNN" D WRITE .S X=XR+57+Xb,Y=25+Yb D LOCATE S STR="NNNNNNNNNNNNNNN" D WRITE ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; I PATN=1 S X=XR+87+Xb,Y=26+Yb D LOCATE S STR="NNNN" D WRITE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+69+Xb,Y=18+Yb+Ysmall D LOCATE S STR="合 計" D WRITE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; I PATN=1 D ;;; .S HBR=9 .S STR=$$WpFSelect^ZSIMLP1(5) D WRITE ;;;<<<副フォント印字モードに切替>>>;;; .S X=5+HBR,Y=8+Yb D LOCATE S STR="NNNN" D WRITE ;;; .S X=5+HBR,Y=10+Yb D LOCATE S STR="NNNN" D WRITE ;;; .S X=3+HBR,Y=12+Yb D LOCATE S STR="NNNN" D WRITE ;;; .S X=3+HBR,Y=14+Yb D LOCATE S STR="NNNN" D WRITE ;;; .S X=3+HBR,Y=16+Yb D LOCATE S STR="NNNN" D WRITE ;;; .S X=3+HBR,Y=18+Yb D LOCATE S STR="NNNN" D WRITE .S X=3+HBR,Y=20+Yb D LOCATE S STR="XXXXXX" D WRITE .S X=5+HBR,Y=22+Yb D LOCATE S STR="NNNN" D WRITE .S X=5+HBR,Y=23+Yb D LOCATE S STR="NNNN" D WRITE .S X=5+HBR,Y=24+Yb D LOCATE S STR="NNNN" D WRITE .S X=2+HBR,Y=25+Yb D LOCATE S STR="NN" D WRITE ;;; .S X=7+HBR,Y=25+Yb D LOCATE S STR="NN" D WRITE ;;; .S X=11+HBR,Y=25+Yb D LOCATE S STR="NN" D WRITE ;;; .S X=5+HBR,Y=26+Yb D LOCATE S STR="9999" D WRITE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Q PREPRNT ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S STR=$$WpFSelect^ZSIMLP1(1) D WRITE ;;;<<<副フォント印字モードに切替>>>;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+2+Xb,Y=20+Yb+Ysmall D LOCATE S STR="X" D WRITE ;;; S X=XR+2+Xb,Y=22+Yb+Ysmall D LOCATE S STR="X" D WRITE ;;; S X=XR+2+Xb,Y=24+Yb+Ysmall D LOCATE S STR="X" D WRITE ;;; S X=XR+2+Xb,Y=26+Yb+Ysmall D LOCATE S STR="X" D WRITE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; I PATN=3 D ;;; .S X=XR+54+Xb,Y=20+Yb+Ysmall D LOCATE S STR="X" D WRITE ;;; .S X=XR+54+Xb,Y=22+Yb+Ysmall D LOCATE S STR="X" D WRITE ;;; .S X=XR+54+Xb,Y=24+Yb+Ysmall D LOCATE S STR="X" D WRITE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+15+Xb,Y=11+Yb+Ysmall D LOCATE S STR="X" D WRITE ;;; S X=XR+35+Xb,Y=11+Yb+Ysmall D LOCATE S STR="X" D WRITE ;;; S X=XR+67+Xb,Y=11+Yb+Ysmall D LOCATE S STR=" XX" D WRITE ;;; S X=XR+76+Xb,Y=11+Yb+Ysmall D LOCATE S STR="X X" D WRITE ;;; S X=XR+90+Xb,Y=11+Yb+Ysmall D LOCATE S STR="X X" D WRITE ;;; I PATN=1 D ;;; .S X=12,Y=7+Yb+Ysmall D LOCATE S STR="XXXXXXX" D WRITE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+2+Xb,Y=18+Yb+Ysmall D LOCATE S STR=" XXXX" D WRITE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SMALL ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S STR=$$WpFSelect^ZSIMLP1(2) D WRITE ;;;<<<副フォント印字モードに切替>>>;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=88+Xb,Y=1+Yb+Ysmall D LOCATE S STR=" No." D WRITE ;;; S X=88+Xb,Y=2+Yb+Ysmall D LOCATE S STR="DATE" D WRITE ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; I PATN'=1 D ;;; .S X=XR+60+Xb,Y=6+Yb+Ysmall D LOCATE S STR="TEL" D WRITE ;;; .S X=XR+81+Xb,Y=6+Yb+Ysmall D LOCATE S STR="FAX" D WRITE ;;; .S X=XR+81+Xb,Y=7+Yb+Ysmall D LOCATE S STR="XXXX" D WRITE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+36+Xb,Y=10+Yb+Ysmall D LOCATE S STR="XXXXXXX" D WRITE ;;; S X=XR+2+Xb,Y=10+Yb+Ysmall D LOCATE S STR="XXXXXX" D WRITE ;;; S X=XR+70+Xb,Y=10+Yb+Ysmall D LOCATE S STR="DATE" D WRITE ;; S X=XR+87+Xb,Y=10+Yb+Ysmall D LOCATE S STR="XXXXX" D WRITE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; I PATN=3 D ;;; .S X=XR+57+Xb,Y=20+Yb+Ysmall D LOCATE S STR="XXXXXXXXXXX" D WRITE ;;; .S X=XR+57+Xb,Y=21+Yb+Ysmall D LOCATE S STR="XXXXXX" D WRITE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; I PATN=1 D ;;; .S X=XR+74+Xb,Y=22+Yb D LOCATE S STR="XXXXX" D WRITE ;;; .S X=XR+52+Xb,Y=26+Yb+Ysmall D LOCATE S STR="XXXXXXXXXXXXXXX" D WRITE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Q LARGE ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S STR=$$WpFSelect^ZSIMLP1(3) D WRITE ;;;<<<副フォント印字モードに切替>>>;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; --> 通常、納品書とか請求書をイメージしています D ;;; .I PATN=1 S X=37+Xb,Y=0.5+Yb D LOCATE S STR=" N N 書" D WRITE Q ;;; .I PATN=2 S X=37+Xb,Y=0.5+Yb D LOCATE S STR=" N N 書" D WRITE Q ;;; .I PATN=3 S X=37+Xb,Y=0.5+Yb D LOCATE S STR=" N N 書" D WRITE Q ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Q GOUKEI ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S STR=$$WpFSelect^ZSIMLP1(4) D WRITE ;;;<<<副フォント印字モードに切替>>>;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; S X=XR+82+Xb,Y=18+Yb-.2 D LOCATE S STR="-ZZZ,ZZZ,ZZZ" D WRITE ;;;合計;;; Q KEISEN ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; D BOX1 ;;;ボックスの描画;;; D BOX2 ;;;ボックスの描画;;; D BOX3 ;;;ボックスの描画;;; D BOX4 ;;;ボックスの描画;;; D BOX5 ;;;ボックスの描画;;; D BOX11 ;;;ボックスの描画;;; D BOX12 ;;;ボックスの描画;;; D BOX13 ;;;ボックスの描画;;; D BOX14 ;;;ボックスの描画;;; D BOX21 ;;;ボックスの描画;;; D BOX22 ;;;ボックスの描画;;; D BOX31 ;;;ボックスの描画;;; D BOX32 ;;;ボックスの描画;;; D BOX33 ;;;ボックスの描画;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; D HLINE1 ;;;直線の描画;;; D VLINE1 ;;;直線の描画;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;罫線は行の中央に引くので0.5行分を増減する;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BOX1 ;;;BOLD=線の太さ;;; S x1=XR+1.5+Xb,y1=11.1+Yb,x2=XR+99.5+Xb,y2=17+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=10 D BOX Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BOX2 ;;; S x1=XR+66.5+Xb,y1=18+Yb-Ydecimal,x2=XR+79.5+Xb,y2=19+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=10 D BOX Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BOX3 ;;; S x1=XR+79.5+Xb,y1=18+Yb-Ydecimal,x2=XR+99.5+Xb,y2=19+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=10 D BOX Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BOX11 ;;; S x1=1.5+Xb,y1=1+Yb-.4,x2=10.5+Xb,y2=2+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D BOX Q BOX12 ;;; S x1=68.5+Xb,y1=1+Yb-.4,x2=71.5+Xb,y2=2+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D BOX Q BOX13 ;;; S x1=73.5+Xb,y1=1+Yb-.4,x2=76.5+Xb,y2=2+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D BOX Q BOX14 ;;; S x1=76.5+Xb,y1=1+Yb-.4,x2=79.5+Xb,y2=2+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D BOX Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BOX21 ;;; I PATN'=1 Q ;;; S x1=XR+66.5+Xb,y1=3.3+Yb,x2=XR+99.5+Xb,y2=5+Yb S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=3 D BOX Q BOX22 ;;; I PATN'=1 Q ;;; S x1=XR+66.5+Xb,y1=5+Yb,x2=XR+99.5+Xb,y2=6.7+Yb S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=3 D BOX Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BOX31 ;;; S x1=XR+1.5+Xb,y1=18+Yb-Ydecimal,x2=XR+8.5+Xb,y2=19+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D BOX Q BOX32 ;;; S x1=XR+8.5+Xb,y1=18+Yb-Ydecimal,x2=XR+23.5+Xb,y2=19+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D BOX Q BOX33 ;;; S x1=XR+23.5+Xb,y1=18+Yb-Ydecimal,x2=XR+66.5+Xb,y2=19+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D BOX Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BOX4 ;;; I PATN'=1 Q ;;; S x1=XR+70.5+Xb,y1=22+Yb-Ydecimal,x2=XR+84.5+Xb,y2=27+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D BOX Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BOX5 ;;; I PATN'=1 Q ;;; S x1=10.5,y1=7+Yb,x2=24.5,y2=8+Yb S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D BOX S x1=10.5,y1=8+Yb,x2=24.5,y2=27+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D BOX Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; HLINE1 ;;;直線(水平線)の描画;;; S x1=XR+1.5+Xb,y1=12+Yb,x2=XR+99.5+Xb,y2=12+Yb S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D LINE Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; VLINE1 ;;;直線(垂直線)の描画;;; S x1=XR+66.5+Xb,y1=11.1+Yb,x2=XR+66.5+Xb,y2=17+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D LINE S x1=XR+73.5+Xb,y1=11.1+Yb,x2=XR+73.5+Xb,y2=17+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D LINE S x1=XR+86.5+Xb,y1=11.1+Yb,x2=XR+86.5+Xb,y2=17+Yb+Ydecimal S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=5 D LINE Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SPLIT ;;;直線(水平線)の描画;;; S x1=1,y1=YYY,x2=150,y2=YYY S dotx1=0,doty1=0,dotx2=0,doty2=0,BOLD=3 D LINE Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; LINE ;;;直線の描画;;; S p1=0 ;;;パレット番号;;; S p3=1 ;;;ペンスタイル有り;;; S p4=0 ;;;実線;;; S p5=BOLD ;;;太さ;;; S STR=$$WpLine^ZSIMLP1(x1,y1,x2,y2,dotx1,doty1,dotx2,doty2,p1,p3,p4,p5) ;;;直線 D WRITE ;;;Draw escape;;; Q BOX ;;;ボックスの描画;;; S p1=0 ;;;パレット番号;;; S p3=1 ;;;ペンスタイル有り;;; S p4=0 ;;;実線;;; S p5=BOLD ;;;太さ;;; S STR=$$WpBox^ZSIMLP1(x1,y1,x2,y2,dotx1,doty1,dotx2,doty2,p1,p3,p4,p5) ;;;直線 D WRITE ;;;Draw escape;;; Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; CIRCLE ;;; S (dotxc,dotyc,dotxr,dotyr)=0 ;;; S p1=0 ;;;パレット番号;;; S p2=2 ;;;塗りつぶし指定;;; S p3=5 ;;;色/タイル番号/ハッチ番号;;; S p4=0 ;;;ハッチパタンの時の色;;; S STR=$$WpCircle^ZSIMLP0(xc,yc,xr,yr,dotxc,dotyc,dotxr,dotyr,p1,p2,p3,p4) D WRITE ;;;Draw escape;;; Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; OPEN ; W $$WpInitDlg^ZSIMLP1("$1$3$$$$$600$","") ;;;[18-apr-2001];;; Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; NW7 ;;;BAR->バーコード印刷(NW-7);;; S setstr=$$WpPutNW7^ZSIMLP1(BAR,8,9+Yb,0,0) S dmy=$$WpWrite^ZSIMLP1(setstr) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;S BAR="a"_BAR_"a" ;;;S n=2 D SPACING ;;;バーコード文字列印刷;;; ;;;S setstr=$$WpPutSmall^ZSIMLP1(BAR,2,9+Yb,0,0) ;;;S dmy=$$WpWrite^ZSIMLP1(setstr) Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; CODE39 ;;; S setstr=$$WpPut39^ZSIMLP1(BAR,18,-.5+Yb,0,0) S dmy=$$WpWrite^ZSIMLP1(setstr) Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; JAN12DG ;;;JAN-CDOE;;; S setstr=$$WpPutJAN^ZSIMLP1(BAR,4+Xb,32+Yb,0,0) S dmy=$$WpWrite^ZSIMLP1(setstr) Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SPACING ;;;(BAR,n)->BAR;;; S w="",w1="" F J=1:1:$L(BAR) S w1=$E(BAR,J) S w=w_w1 S:J'=$L(BAR) w=w_$S(J=$L(BAR):"",1:$J("",n)) S BAR=w Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; CLOSE ; Q FONT ;;;フォント指定情報ダウンロード;;; ;;;;;;;;;;;;;メインフォント;;;;;;;;;;;;;;; ;;;;S LogFont="MS 明朝/96/0/0/0/400/0/0/0/128/3/2/1/49/" S LogFont="MS 明朝/76/0/0/0/400/0/0/0/128/3/2/1/49/" S dmy=$$WpDownLD^ZSIMLP1(0,LogFont) ;;; S dmy=$$WpPonBf^ZSIMLP1(dmy) ;;; ;;;;;;;;;;;;;副フォント;;;;;;;;;;;;;;; S LogFont="MS 明朝/54/0/0/0/400/0/0/0/128/3/2/1/17/" S dmy=$$WpDownLD^ZSIMLP1(1,LogFont) ;;; S dmy=$$WpPonBf^ZSIMLP1(dmy) ;;; S LogFont="MS 明朝/48/0/0/0/400/0/0/0/128/3/2/1/17/" S dmy=$$WpDownLD^ZSIMLP1(2,LogFont) ;;; S dmy=$$WpPonBf^ZSIMLP1(dmy) ;;; S LogFont="MS 明朝/128/0/0/0/800/0/0/0/128/3/2/1/17/" S dmy=$$WpDownLD^ZSIMLP1(3,LogFont) ;;; S dmy=$$WpPonBf^ZSIMLP1(dmy) ;;; S LogFont="MS ゴシック/96/0/0/0/800/0/0/0/128/3/2/1/17/" S dmy=$$WpDownLD^ZSIMLP1(4,LogFont) ;;; S dmy=$$WpPonBf^ZSIMLP1(dmy) ;;; S LogFont="MS 明朝/64/0/0/0/800/0/0/0/128/3/2/1/17/" S dmy=$$WpDownLD^ZSIMLP1(5,LogFont) ;;; S dmy=$$WpPonBf^ZSIMLP1(dmy) ;;; ;;;;;;;;;;;;;Sub Font download;;;;;;;;;;;;;;; S LogFont="CN-CODE39/128/0/2700/2700/400/0/0/0/0/3/2/1/2/" S dmy=$$WpDownLD^ZSIMLP1(55,LogFont) ;;; S dmy=$$WpPonBf^ZSIMLP1(dmy) ;;; S LogFont="CN-JANCODE/-256/0/0/0/400/0/0/0/0/3/2/1/2/" S dmy=$$WpDownLD^ZSIMLP1(54,LogFont) ;;; S dmy=$$WpPonBf^ZSIMLP1(dmy) ;;; S LogFont="CN-NW7/-192/0/2700/2700/400/0/0/0/0/3/2/1/2/" S dmy=$$WpDownLD^ZSIMLP1(53,LogFont) ;;; S dmy=$$WpPonBf^ZSIMLP1(dmy) ;;; S LogFont="MS 明朝/-48/0/2700/2700/400/0/0/0/128/3/2/1/17/" S dmy=$$WpDownLD^ZSIMLP1(52,LogFont) ;;; S dmy=$$WpPonBf^ZSIMLP1(dmy) ;;; S LogFont="CN-CODE39 OCR/128/0/2700/2700/400/0/0/0/0/3/2/1/2/" S dmy=$$WpDownLD^ZSIMLP1(51,LogFont) ;;; S dmy=$$WpPonBf^ZSIMLP1(dmy) ;;; ;;;;;;;;;;;;;Sub Font download;;;;;;;;;;;;;;; Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; FOPEN ;;;フォントオープン;;; S setstr="" S dmy=$$WpFOpen^ZSIMLP1(1) ;;; S setstr=setstr_dmy S dmy=$$WpFOpen^ZSIMLP1(2) ;;; S setstr=setstr_dmy S dmy=$$WpFOpen^ZSIMLP1(3) ;;; S setstr=setstr_dmy S dmy=$$WpFOpen^ZSIMLP1(4) ;;; S setstr=setstr_dmy S dmy=$$WpFOpen^ZSIMLP1(5) ;;; S setstr=setstr_dmy S dmy=$$WpPonAf^ZSIMLP1(setstr) ;;; Q ENAGDI ;;;プリンタグラフィックス描画可能;;; S dmy=$$WpGDIEna^ZSIMLP1() ;;; S dmy=$$WpPonAf^ZSIMLP1(dmy) ;;; Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; FCLOSE ;;;フォントクローズ;;; S setstr="" S dmy=$$WpFClose^ZSIMLP1(1) ;;; S setstr=setstr_dmy S dmy=$$WpFClose^ZSIMLP1(2) ;;; S setstr=setstr_dmy S dmy=$$WpFClose^ZSIMLP1(3) ;;; S setstr=setstr_dmy S dmy=$$WpFClose^ZSIMLP1(4) ;;; S setstr=setstr_dmy S dmy=$$WpFClose^ZSIMLP1(5) ;;; S setstr=setstr_dmy S dmy=$$WpPoffBf^ZSIMLP1(setstr) ;;; Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; DISGDI ;;;画面グラフィックス描画;;; S dmy=$$WpGDIDis^ZSIMLP1() ;;; S dmy=$$WpPoffBf^ZSIMLP1(dmy) ;;; Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; TRAP ;--- TRAP --- W $C(27)_"[4i" ;;;Screen mode;;; W !,"$ZE=",$ZE ;;; ;;;;;;;;;;[30-nov-2001];;;;;;;;;;; N %DEVICE S %DEVICE=0 ;;;$ZV[02-may-2001];;; D ;;;[30-nov-2001];;; .U 0:WIDTH=0 Q ;;;cache;;; .;;;;;;U 0:0 ;;;msm;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Q ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ───────────────────────────────────── ───────────────────────────────────── 11-1 |目次|前ページ|次ページ|