<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>PIPSで業務システムを作る</title>
	<atom:link href="http://jeis-kanoh.co.jp/gc/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://jeis-kanoh.co.jp/gc</link>
	<description>PIPSで業務システムを作る</description>
	<lastBuildDate>Wed, 10 Aug 2011 05:13:30 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>ＰＩＰＳプログラマー養成開始</title>
		<link>http://jeis-kanoh.co.jp/gc/?p=486</link>
		<comments>http://jeis-kanoh.co.jp/gc/?p=486#comments</comments>
		<pubDate>Wed, 10 Aug 2011 05:13:16 +0000</pubDate>
		<dc:creator>管理人</dc:creator>
				<category><![CDATA[活動報告]]></category>

		<guid isPermaLink="false">http://jeis-kanoh.co.jp/gc/?p=486</guid>
		<description><![CDATA[近況報告です。 ７月初旬より私の娘とその友人、２名にプログラミングを教え始めました。「即戦力」が求められているので、「ＰＩＰＳ」全体を教えるのではなく、「業務システム構築」をメインに週２回のペースで教えています。７月中は主要なコマンドの機能を説明しがてらオートプログラムの記述、およびその読み方をトレーニング、８月からシステム構築に移り、ＰＩＰＳそのものより、企業内の業務の流れを把握するための説明により多くの時間を割いて説明しています。 現在、自力で簡単な納品書から月次処理、得意先元帳、請求書に至るシステムを構築中。その手法は、自分で一からプログラミングするのではなく、既存のシステムのプログラムを読み、必要部分を抜き出してアレンジ、組み込む方式です。すでに書かれて動いているものを再度プログラミングする必要はなく、読んで理解できればその手法はいずれ身につくでしょう。 こうやってみるとそれを文章による記述で説明することの大変さをしみじみと感じます。いずれ再開する積もりではありますが。 コア部分が出来たら、様々な分野への応用に進む予定ですが、この進行具合だと９月末には実業務に使えるシステム構築が出来るようになると期待しています。]]></description>
			<content:encoded><![CDATA[<p>近況報告です。</p>
<p>７月初旬より私の娘とその友人、２名にプログラミングを教え始めました。「即戦力」が求められているので、「ＰＩＰＳ」全体を教えるのではなく、「業務システム構築」をメインに週２回のペースで教えています。７月中は主要なコマンドの機能を説明しがてらオートプログラムの記述、およびその読み方をトレーニング、８月からシステム構築に移り、ＰＩＰＳそのものより、企業内の業務の流れを把握するための説明により多くの時間を割いて説明しています。</p>
<p>現在、自力で簡単な納品書から月次処理、得意先元帳、請求書に至るシステムを構築中。その手法は、自分で一からプログラミングするのではなく、既存のシステムのプログラムを読み、必要部分を抜き出してアレンジ、組み込む方式です。すでに書かれて動いているものを再度プログラミングする必要はなく、読んで理解できればその手法はいずれ身につくでしょう。</p>
<p>こうやってみるとそれを文章による記述で説明することの大変さをしみじみと感じます。いずれ再開する積もりではありますが。</p>
<p>コア部分が出来たら、様々な分野への応用に進む予定ですが、この進行具合だと９月末には実業務に使えるシステム構築が出来るようになると期待しています。</p>
]]></content:encoded>
			<wfw:commentRss>http://jeis-kanoh.co.jp/gc/?feed=rss2&#038;p=486</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>簡単なamazon在庫管理システムを作った</title>
		<link>http://jeis-kanoh.co.jp/gc/?p=483</link>
		<comments>http://jeis-kanoh.co.jp/gc/?p=483#comments</comments>
		<pubDate>Thu, 30 Jun 2011 00:18:33 +0000</pubDate>
		<dc:creator>管理人</dc:creator>
				<category><![CDATA[活動報告]]></category>

		<guid isPermaLink="false">http://jeis-kanoh.co.jp/gc/?p=483</guid>
		<description><![CDATA[アマゾンを販売チャンネルとして利用する場合、アマゾンに商品を預け、直接出荷してもらう「フルフィルメント by Amazon」がとても便利なのだが、先方のシステムには当座の入出荷、現在庫を表示する機能しかない。出品者側としては全商品の納入、日々の販売数、在庫などをリアルタイムに把握するシステムが欲しい。そこで、PIPSでそれを作った。 方法は、出品商品マスターを作り、それに逐次納入数、販売数を入れた物を販売日記として蓄積していくだけ。あとはワンタッチで現在在庫数を出す。基準原価、販売価格、アマゾンのマージン（カテゴリーのよって異なる）を各商品ごとに入れておけば、期間販売量、総売上、粗利の計算もすぐに行える。 動かしてみたところ、即座に数日後在庫不足が予想される商品を発見、あわてて出荷準備を。]]></description>
			<content:encoded><![CDATA[<p>アマゾンを販売チャンネルとして利用する場合、アマゾンに商品を預け、直接出荷してもらう「フルフィルメント by Amazon」がとても便利なのだが、先方のシステムには当座の入出荷、現在庫を表示する機能しかない。出品者側としては全商品の納入、日々の販売数、在庫などをリアルタイムに把握するシステムが欲しい。そこで、PIPSでそれを作った。<br />
方法は、出品商品マスターを作り、それに逐次納入数、販売数を入れた物を販売日記として蓄積していくだけ。あとはワンタッチで現在在庫数を出す。基準原価、販売価格、アマゾンのマージン（カテゴリーのよって異なる）を各商品ごとに入れておけば、期間販売量、総売上、粗利の計算もすぐに行える。</p>
<p>動かしてみたところ、即座に数日後在庫不足が予想される商品を発見、あわてて出荷準備を。</p>
]]></content:encoded>
			<wfw:commentRss>http://jeis-kanoh.co.jp/gc/?feed=rss2&#038;p=483</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PIPS勉強会の活動を開始しました</title>
		<link>http://jeis-kanoh.co.jp/gc/?p=480</link>
		<comments>http://jeis-kanoh.co.jp/gc/?p=480#comments</comments>
		<pubDate>Mon, 20 Jun 2011 04:31:20 +0000</pubDate>
		<dc:creator>管理人</dc:creator>
				<category><![CDATA[活動報告]]></category>

		<guid isPermaLink="false">http://jeis-kanoh.co.jp/gc/?p=480</guid>
		<description><![CDATA[ＰＩＰＳを学び、普及活動を行いたいという有志の集まり、「ＰＩＰＳ勉強会」を始めました。将来はセミナーの開催やシステムを導入したいという企業に対する支援などを行っていきたいと考えています。今のところはどのような活動から始めていくか、組織と活動プログラムの検討段階です。展開は追ってご報告しようと思います。]]></description>
			<content:encoded><![CDATA[<p>ＰＩＰＳを学び、普及活動を行いたいという有志の集まり、「ＰＩＰＳ勉強会」を始めました。将来はセミナーの開催やシステムを導入したいという企業に対する支援などを行っていきたいと考えています。今のところはどのような活動から始めていくか、組織と活動プログラムの検討段階です。展開は追ってご報告しようと思います。</p>
]]></content:encoded>
			<wfw:commentRss>http://jeis-kanoh.co.jp/gc/?feed=rss2&#038;p=480</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>04 ＰＩＰＳの導入(08)</title>
		<link>http://jeis-kanoh.co.jp/gc/?p=448</link>
		<comments>http://jeis-kanoh.co.jp/gc/?p=448#comments</comments>
		<pubDate>Thu, 24 Mar 2011 07:09:54 +0000</pubDate>
		<dc:creator>管理人</dc:creator>
				<category><![CDATA[04 ＰＩＰＳの導入]]></category>

		<guid isPermaLink="false">http://jeis-kanoh.co.jp/gc/?p=448</guid>
		<description><![CDATA[表（データベース）の作成 (02) それではＰＩＰＳで簡単な住所録を作ってみよう。 先ず、データベースには各項目の長さが何文字と固定されている「固定長」型と、何文字でも自由に書き込める「可変長」型とがある。ＰＩＰＳは予め各項目に記入できる文字数を決めておく「固定長型」なので、記入する文字数を決定しておかなければならない。一例を挙げると、弊社の場合、次のような項目長でデータベースを作成している。桁数はいずれも半角である。 会社名（３２桁）、郵便番号（１０桁）、住所１（３２桁）、住所２（３２桁）、ｼﾞｭｳｼｮ（１０桁） この項目長になっているのは、社名、住所を伝票等に印刷した場合の収まりを考えてのことであるが、とりあえずこれで表を作ってみよう。 O;住所録;32;会社名;10;郵便番号;32;住所１;32;住所２;ｼﾞｭｳｼｮ;;ESC; これで画面上に「住所録」の表が出来た。とりあえずデータは入力は後回しにして、 MB;住所録; と入力する。 G;[HOME] で「ページタイトル」を見ると、「住所録」というバインダーが出来ており、その１ページ目にこの表が収納されている。]]></description>
			<content:encoded><![CDATA[<div>
<p id="internal-source-marker_0.47156009869650006">
<p><strong>表（データベース）の作成 (02)</strong></p>
<p>それではＰＩＰＳで簡単な住所録を作ってみよう。</p>
<p>先ず、データベースには各項目の長さが何文字と固定されている「固定長」型と、何文字でも自由に書き込める「可変長」型とがある。ＰＩＰＳは予め各項目に記入できる文字数を決めておく「固定長型」なので、記入する文字数を決定しておかなければならない。一例を挙げると、弊社の場合、次のような項目長でデータベースを作成している。桁数はいずれも半角である。</p>
<p>会社名（３２桁）、郵便番号（１０桁）、住所１（３２桁）、住所２（３２桁）、ｼﾞｭｳｼｮ（１０桁）</p>
<p>この項目長になっているのは、社名、住所を伝票等に印刷した場合の収まりを考えてのことであるが、とりあえずこれで表を作ってみよう。</p>
<p><strong>O;住所録;32;会社名;10;郵便番号;32;住所１;32;住所２;ｼﾞｭｳｼｮ;;ESC;</strong></p>
<p>これで画面上に「住所録」の表が出来た。とりあえずデータは入力は後回しにして、</p>
<p><strong>MB;住所録;</strong></p>
<p>と入力する。</p>
<p><strong>G;[HOME]</strong></p>
<p>で「ページタイトル」を見ると、「住所録」というバインダーが出来ており、その１ページ目にこの表が収納されている。</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://jeis-kanoh.co.jp/gc/?feed=rss2&#038;p=448</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>04 ＰＩＰＳの導入(07)</title>
		<link>http://jeis-kanoh.co.jp/gc/?p=438</link>
		<comments>http://jeis-kanoh.co.jp/gc/?p=438#comments</comments>
		<pubDate>Fri, 11 Mar 2011 05:18:07 +0000</pubDate>
		<dc:creator>管理人</dc:creator>
				<category><![CDATA[04 ＰＩＰＳの導入]]></category>

		<guid isPermaLink="false">http://jeis-kanoh.co.jp/gc/?p=438</guid>
		<description><![CDATA[表（データベース）の作成 (01） 業務システムで扱う一連のデータは、必ず何らかの分類に属する。たとえば取引先住所録、得先元帳、売上日記、受注票、見積書など。 これは視覚的には「表」として現され、同じ分類に属するデータの集合を「データベース」と呼ぶ。 一つのデータベースは、いくつかの項目から成り立っているのが普通だ。たとえば取引先住所録の場合、「取引先名」、「郵便番号」、「住所」、「電話番号」がその要素（項目）だろう。また、このデータをアイウエオ順に並べ替える必要があれば、「ｱﾃｻｷ」というカタカナ名称の項目を加えておけばこの項目を手がかりとして並べ替えが出来る。 これとは別に日々の売上を記録した「売上日記」を考えてみよう。この場合、必要な最低限の要素は、「日付」、「売先」、「商品名」、「単価」、「数量」、「合計金額」である。このとき、「売先」と、取引先住所録の「取引先名」は同じだ。住所録は一回入力すれば終わりだが、売上日記の「売先」は売り上げが発生する度に記入しなければならない。しかし、、毎度「○○株式会社」と入力していたのでは堪ったものではない。 コンピューターというのは融通の利かない機械で、人間なら許容するわずかの違い、たとえば一文字抜けた、仮名文字であるものをひらがなで書いた、などでも「まぁ、いいだろう」とはならない。だから、これを手入力していたら、集計時に同じ取引先に属する売上データが一つに纏まらない恐れが十分にある。ならば、取引先住所録との間に何らかの関連づけをして、毎回手入力する代わりに取引先住所録から売先名をコピーしてくれば安心である。そのためには取引先住所録の方に「取引先コード」という項目をもうけ、売上日記の方は「売先」の項目を「取引先コード」とし、単純な英文字や数字で記入するようにすれば、毎回「○○株式会社」と記入しなくても、必要なときにはそのコードを取引先住所録と参照して、その売先名を拾い出すことが出来る（逆に言えば、コードを間違えれば全く空欄になったり違う得意先が表示されるので、誤りが簡単に見分けられる）。 このように、同一の項目を含む、性質の異なったデータベース同士を「リレーショナルデータベース」という。また、この例の「取引先住所録」のように常に他のデータベースにから参照される元データを記録したデータベースを「○○マスター」と呼ぶ。通常業務システムではこのような「取引先住所録」を、「取引先マスター」と呼んでいる。 売上日記の「商品名」も、毎回記入していたのではとても煩雑だ。この対策として、予め「商品マスター」という、「商品コード（番号）」、「商品名」、「販売単価」を登録したデータベースを作っておけば、売上を計上するとき、「商品コード（番号）」さえ入力すれば、コンピューターに「商品マスター」を参照させて、必要なデータ、「商品名」、「販売単価」を抽出してくることが可能だ。 このため、この二つのマスターデータベースさえきちんと出来いれば、「取引先コード」、「商品コード」、「数量」の３点だけ記入すれば売上日記を、ひいては納品書を作ることが出来る。この様なことが簡単に、スピーディーにできるのが、コンピューターを利用する最大のメリットだ。]]></description>
			<content:encoded><![CDATA[<div>
<p id="internal-source-marker_0.47156009869650006">
<p><strong>表（データベース）の作成 (01）</strong></p>
<p>業務システムで扱う一連のデータは、必ず何らかの分類に属する。たとえば取引先住所録、得先元帳、売上日記、受注票、見積書など。<br />
これは視覚的には「表」として現され、同じ分類に属するデータの集合を「<strong>データベース</strong>」と呼ぶ。</p>
<p>一つのデータベースは、いくつかの項目から成り立っているのが普通だ。たとえば取引先住所録の場合、「取引先名」、「郵便番号」、「住所」、「電話番号」がその要素（項目）だろう。また、このデータをアイウエオ順に並べ替える必要があれば、「ｱﾃｻｷ」というカタカナ名称の項目を加えておけばこの項目を手がかりとして並べ替えが出来る。</p>
<p>これとは別に日々の売上を記録した「売上日記」を考えてみよう。この場合、必要な最低限の要素は、「日付」、「売先」、「商品名」、「単価」、「数量」、「合計金額」である。このとき、「売先」と、取引先住所録の「取引先名」は同じだ。住所録は一回入力すれば終わりだが、売上日記の「売先」は売り上げが発生する度に記入しなければならない。しかし、、毎度「○○株式会社」と入力していたのでは堪ったものではない。</p>
<p>コンピューターというのは融通の利かない機械で、人間なら許容するわずかの違い、たとえば一文字抜けた、仮名文字であるものをひらがなで書いた、などでも「まぁ、いいだろう」とはならない。だから、これを手入力していたら、集計時に同じ取引先に属する売上データが一つに纏まらない恐れが十分にある。ならば、取引先住所録との間に何らかの関連づけをして、毎回手入力する代わりに取引先住所録から売先名をコピーしてくれば安心である。そのためには取引先住所録の方に「取引先コード」という項目をもうけ、売上日記の方は「売先」の項目を「取引先コード」とし、単純な英文字や数字で記入するようにすれば、毎回「○○株式会社」と記入しなくても、必要なときにはそのコードを取引先住所録と参照して、その売先名を拾い出すことが出来る（逆に言えば、コードを間違えれば全く空欄になったり違う得意先が表示されるので、誤りが簡単に見分けられる）。</p>
<p>このように、同一の項目を含む、性質の異なったデータベース同士を「<strong>リレーショナルデータベース</strong>」という。また、この例の「取引先住所録」のように常に他のデータベースにから参照される元データを記録したデータベースを「○○マスター」と呼ぶ。通常業務システムではこのような「取引先住所録」を、「<strong>取引先マスター</strong>」と呼んでいる。</p>
<p>売上日記の「商品名」も、毎回記入していたのではとても煩雑だ。この対策として、予め「<strong>商品マスター</strong>」という、「商品コード（番号）」、「商品名」、「販売単価」を登録したデータベースを作っておけば、売上を計上するとき、「商品コード（番号）」さえ入力すれば、コンピューターに「商品マスター」を参照させて、必要なデータ、「商品名」、「販売単価」を抽出してくることが可能だ。</p>
<p>このため、この二つのマスターデータベースさえきちんと出来いれば、「取引先コード」、「商品コード」、「数量」の３点だけ記入すれば売上日記を、ひいては納品書を作ることが出来る。この様なことが簡単に、スピーディーにできるのが、コンピューターを利用する最大のメリットだ。
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://jeis-kanoh.co.jp/gc/?feed=rss2&#038;p=438</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>04 ＰＩＰＳの導入(06)</title>
		<link>http://jeis-kanoh.co.jp/gc/?p=414</link>
		<comments>http://jeis-kanoh.co.jp/gc/?p=414#comments</comments>
		<pubDate>Tue, 15 Feb 2011 06:41:23 +0000</pubDate>
		<dc:creator>管理人</dc:creator>
				<category><![CDATA[04 ＰＩＰＳの導入]]></category>

		<guid isPermaLink="false">http://jeis-kanoh.co.jp/gc/?p=414</guid>
		<description><![CDATA[ＰＩＰＳのファイル構造（ストーレージ） ＰＩＰＳのストーレージの構造を、 Windows のそれと比較して説明する。 Windows は「ドライブ」として表示されているハードディスクなどのメモリーに直接ファイルを登録するか、「フォールダー」を作ってその中にファイルを収容する。また、そのフォールダーを親とし、その中に入れ子式に子や孫のフォールダーを作り、それらに人間が視覚的にわかりやすいように分類してファイルを収納する。 ＰＩＰＳの場合、 Windows の「フォールダー」に相当するものを「キャビネット」、「ファイル」に相当するものを「バインダー」と呼ぶ。ファイルがバインダーとはちょっと変な感じだが、これはＰＩＰＳの用紙が「ルーズリーフ」だと考えると理解しやすい。Windows の場合の最小単位、「ファイル」は一枚のシート、あるいはキャンパスノートのように綴られたノートのイメージで、（Windows レベルでは）分割は不可能であるため、そのデータの一部を取り出して他のファイルに追加したりすることは出来ない。 ＰＩＰＳの最小単位は「ページ」で、これはバインダーに綴られる「ルーズリーフ用紙」に相当する。当然、バインダーに登録されたページはバラバラであるため、一部を取り出して他のバインダーに綴じたり、新しくバインダーを作ったりすることが出来る。「ＰＩＰＳで仕事をする」というイメージは、机の前の本棚（キャビネット）に並んだ、背表紙にデーターの種類別を書き込んだバインダーを必要に応じて取り出し、新しいページを綴じ込んだり、別のバインダーのデーターと付き合わせて新しい表を作ったり、こっちのページをあちらのバインダーに綴じ直したり、要するに今手作業でやっている事務処理作業をパソコン内で行うのに近い。ＰＩＰＳの良さは、手作業で行っていた処理をほとんどそのままに近い形で行えること、定型的な作業は一度「オートプログラム」として登録しさえすれば、二度やらなくても良いことだ。 キャビネットの作成 ＰＩＰＳを使用するときには、先ず、作業目的にあった「キャビネット」を設定しなければならない。これからそのキャビネットの作成、バインダーおよびページの扱いを実習してみよう。 ひとつのキャビネットに設定できる最大のページ数は ３２，０００ページであるが、必要なときに追加ができるので、最初は １，０００ページ程度を割り振っておけばよい。また、バインダーの登録可能数の初期設定値は５０（設定で変えることができる）である。 ＰＩＰＳの「キャビネット名」はＭＳＤＯＳを引きずっており、半角英数字８文字しか使用できない。また Windows のドライブ表記は「C：」であるのに対し、ＰＩＰＳは「C/」である。 もう一つ記憶しておかなければならないこと。それはキャビネットのコピーである。ＰＩＰＳのキャビネットは Windows 方式のマウスによるコピー＆ペーストはできない。必ずＰＩＰＳ内でＰＩＰＳのコマンドを用いてコピーを行わなければならない。 何となく分かったような分からないような状態になっていると思うが、実際に「キャビネット」を作ってみよう。 IN ; C ; C ; C / TRY ; 500 ; ; これで、Cドライブに「ＴＲＹ」という名称の、５００ページの容量があるキャビネットが登録された。 G ; とコマンドを入れ、「ＨＯＭＥ」 キーを押すと、「ページタイトル一覧」というウインドウが開いて、「ＴＲＹ」というキャビネットが出来ているのが分かる。 「ページタイトル一覧」ウインドウの、「詳細表示」にチェックを入れてみよう。ウインドウが左右に分割されて、「ＴＲＹ」キャビネットの目次が表示され、番号１に「ＭＥＭＯ」というバインダーが作成されているのが分かる。右側のスクロールバーをスクロールさせると、番号が５０まであるのが分かるだろう。この「ＴＲＹ」キャビネットには、バインダーが５０まで登録可能である。この登録可能バインダー数はキャビネット作成時に決定されてしまうので、もっと多く登録する必要があれば、キャビネット作成前にデフォルトの値を変更しておかねばならないが、ほとんどその必要がないので、デフォルトのまま作っておき、後ほどもし必要になればその時点でキャビネットを乗り換える方が楽である。 「ＴＲＹ」キャビネットの左のプラス表示をマウスでクリックしてみよう。「ＴＲＹ」の下に「ＭＥＭＯ」というバインダーが表示される。これはキャビネット作成時に自動的に作成されるページが登録されていない空のバインダーあるため、左にプラス表示がない。試しに「ＭＥＭＯ」をクリックすると、右側の詳細表示ウインドウが「ＭＥＭＯ」のページ目次に変わり、空っぽであることが分かる。 バインダーにページを設定する それではこの「ＭＥＭＯ」バインダーにページを登録してみよう。「ＥＳＣ」キーを数回押して一旦「ページタイトル一覧」ウインドウを閉じ、コマンドリクエスト状態に戻る。ページを登録するコマンドは「ＭＰ（メークページ）」である。 MP ; MEMO ; 10 ; ページを登録しなさい；（どこに？）；ＭＥＭＯバインダーに；（何ページ？）；１０（ページ）； という意味だ。 ごれで再びバインダーの状態を見てみよう。先ほどのように「Ｇ」コマンドで「ページタイトル一覧」を表示させると、バインダ「ＭＥＭＯ」のタイトルウインドウに１から１０の数字が入っている。これはＭＥＭＯバインダーに１０ページ登録する「スペース」が出来たことを示しており、ページタイトル欄が空欄になっているのは、そこにまだページが登録されていないことを示している。 [...]]]></description>
			<content:encoded><![CDATA[<div>
<p id="internal-source-marker_0.47156009869650006">
<p><strong>ＰＩＰＳのファイル構造（ストーレージ）</strong></p>
<p>ＰＩＰＳのストーレージの構造を、 Windows のそれと比較して説明する。</p>
<p>Windows は「ドライブ」として表示されているハードディスクなどのメモリーに直接ファイルを登録するか、「フォールダー」を作ってその中にファイルを収容する。また、そのフォールダーを親とし、その中に入れ子式に子や孫のフォールダーを作り、それらに人間が視覚的にわかりやすいように分類してファイルを収納する。<br />
ＰＩＰＳの場合、 Windows の「フォールダー」に相当するものを「キャビネット」、「ファイル」に相当するものを「バインダー」と呼ぶ。ファイルがバインダーとはちょっと変な感じだが、これはＰＩＰＳの用紙が「ルーズリーフ」だと考えると理解しやすい。Windows の場合の最小単位、「ファイル」は一枚のシート、あるいはキャンパスノートのように綴られたノートのイメージで、（Windows レベルでは）分割は不可能であるため、そのデータの一部を取り出して他のファイルに追加したりすることは出来ない。</p>
<p>ＰＩＰＳの最小単位は「ページ」で、これはバインダーに綴られる「ルーズリーフ用紙」に相当する。当然、バインダーに登録されたページはバラバラであるため、一部を取り出して他のバインダーに綴じたり、新しくバインダーを作ったりすることが出来る。「ＰＩＰＳで仕事をする」というイメージは、机の前の本棚（キャビネット）に並んだ、背表紙にデーターの種類別を書き込んだバインダーを必要に応じて取り出し、新しいページを綴じ込んだり、別のバインダーのデーターと付き合わせて新しい表を作ったり、こっちのページをあちらのバインダーに綴じ直したり、要するに今手作業でやっている事務処理作業をパソコン内で行うのに近い。ＰＩＰＳの良さは、手作業で行っていた処理をほとんどそのままに近い形で行えること、定型的な作業は一度「オートプログラム」として登録しさえすれば、二度やらなくても良いことだ。</p>
<p><strong>キャビネットの作成</strong></p>
<p>ＰＩＰＳを使用するときには、先ず、作業目的にあった「キャビネット」を設定しなければならない。これからそのキャビネットの作成、バインダーおよびページの扱いを実習してみよう。</p>
<p>ひとつのキャビネットに設定できる最大のページ数は ３２，０００ページであるが、必要なときに追加ができるので、最初は １，０００ページ程度を割り振っておけばよい。また、バインダーの登録可能数の初期設定値は５０（設定で変えることができる）である。<br />
ＰＩＰＳの「キャビネット名」はＭＳＤＯＳを引きずっており、半角英数字８文字しか使用できない。また Windows のドライブ表記は「C：」であるのに対し、ＰＩＰＳは「C/」である。<br />
もう一つ記憶しておかなければならないこと。それはキャビネットのコピーである。ＰＩＰＳのキャビネットは Windows 方式のマウスによるコピー＆ペーストはできない。必ずＰＩＰＳ内でＰＩＰＳのコマンドを用いてコピーを行わなければならない。</p>
<p>何となく分かったような分からないような状態になっていると思うが、実際に「キャビネット」を作ってみよう。</p>
<p><strong>IN ; C ; C ; C / TRY ; 500 ; ; </strong></p>
<p>これで、Cドライブに「ＴＲＹ」という名称の、５００ページの容量があるキャビネットが登録された。</p>
<p><strong>G ;</strong></p>
<p>とコマンドを入れ、「ＨＯＭＥ」 キーを押すと、「ページタイトル一覧」というウインドウが開いて、「ＴＲＹ」というキャビネットが出来ているのが分かる。</p>
<p><a href="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/02/cabinet_try.jpg"><img src="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/02/cabinet_try-500x389.jpg" alt="" title="cabinet_try" width="500" height="389" class="aligncenter size-medium wp-image-411" /></a></p>
<p>「ページタイトル一覧」ウインドウの、「詳細表示」にチェックを入れてみよう。ウインドウが左右に分割されて、「ＴＲＹ」キャビネットの目次が表示され、番号１に「ＭＥＭＯ」というバインダーが作成されているのが分かる。右側のスクロールバーをスクロールさせると、番号が５０まであるのが分かるだろう。この「ＴＲＹ」キャビネットには、バインダーが５０まで登録可能である。この登録可能バインダー数はキャビネット作成時に決定されてしまうので、もっと多く登録する必要があれば、キャビネット作成前にデフォルトの値を変更しておかねばならないが、ほとんどその必要がないので、デフォルトのまま作っておき、後ほどもし必要になればその時点でキャビネットを乗り換える方が楽である。<br />
「ＴＲＹ」キャビネットの左のプラス表示をマウスでクリックしてみよう。「ＴＲＹ」の下に「ＭＥＭＯ」というバインダーが表示される。これはキャビネット作成時に自動的に作成されるページが登録されていない空のバインダーあるため、左にプラス表示がない。試しに「ＭＥＭＯ」をクリックすると、右側の詳細表示ウインドウが「ＭＥＭＯ」のページ目次に変わり、空っぽであることが分かる。</p>
<p><a href="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/02/empty_binder.jpg"><img src="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/02/empty_binder-500x402.jpg" alt="" title="empty_binder" width="500" height="402" class="aligncenter size-medium wp-image-412" /></a></p>
<p><strong>バインダーにページを設定する</strong></p>
<p>それではこの「ＭＥＭＯ」バインダーにページを登録してみよう。「ＥＳＣ」キーを数回押して一旦「ページタイトル一覧」ウインドウを閉じ、コマンドリクエスト状態に戻る。ページを登録するコマンドは「ＭＰ（メークページ）」である。</p>
<p><strong>MP ; MEMO ; 10 ;</strong> </p>
<p>ページを登録しなさい；（どこに？）；ＭＥＭＯバインダーに；（何ページ？）；１０（ページ）；<br />
という意味だ。</p>
<p>ごれで再びバインダーの状態を見てみよう。先ほどのように「Ｇ」コマンドで「ページタイトル一覧」を表示させると、バインダ「ＭＥＭＯ」のタイトルウインドウに１から１０の数字が入っている。これはＭＥＭＯバインダーに１０ページ登録する「スペース」が出来たことを示しており、ページタイトル欄が空欄になっているのは、そこにまだページが登録されていないことを示している。</p>
<p><a href="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/02/MEMO-10P.jpg"><img src="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/02/MEMO-10P-500x403.jpg" alt="" title="MEMO-10P" width="500" height="403" class="aligncenter size-medium wp-image-413" /></a></p>
<p><strong>ページの書き込みと呼び出し</strong></p>
<p>それではここにデーターを収納してみよう。「ＥＳＣ」でコマンドリクエストに戻って、</p>
<p><strong>CT ; TEST ;</strong></p>
<p>と入力する。タイトルのないページは登録できないのでページに「ＴＥＳＴ」というタイトルを付けた。白紙だと登録されたどうか分からないので、「ＷＰ」コマンドで画面に適当に文字を入れる。そして、</p>
<p><strong>P ; C / TRY : MEMO / 1 ;</strong></p>
<p>と入力する。「ドライブＣの、ＴＲＹというキャビネットの、ＭＥＭＯというバインダーの１ページに（メイン画面の内容を）収納せよ。という意味である。そうするとＰＩＰＳウインドウの最下段に表示されていた「C/TRY:MEMO/0」が「C/TRY:MEMO/1」 に変わり、メイン画面の内容がＭＥＭＯというバインダーの１ページに収納されたことを示している。</p>
<p><strong>G ; [HOME] </strong></p>
<p>でページタイトル一覧を表示させると、分割ウインドウの左側、「ＭＥＭＯ」左側にプラスが表示され、右側の詳細表示には番号１のところにページタイトル「ＴＥＳＴ」が表示されている。ＭＥＭＯの前のプラスをマウスでクリックするとページが開き、ＴＥＳＴというタイトルが表示される。</p>
<p><a href="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/02/TEST_PAGE.jpg"><img src="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/02/TEST_PAGE-500x395.jpg" alt="" title="TEST_PAGE" width="500" height="395" class="aligncenter size-medium wp-image-419" /></a></p>
<p>ここで、そのバインダーに空きページがあるかないかは、詳細表示にしか表示されない、ということに注目しておこう。これは将来、文書形式のページではなく、表形式のバインダーを作った場合、空のページが含まれているバインダーはソートや条件検索が出来ない、という問題があるからだ。表バインダーのソートや条件検索をしようとした場合、エラーになるときは、先ず詳細ページを表示してこれを疑ってみる必要がある。</p>
<p>さてそれでは本当に「ＴＥＳＴ」というページがＭＥＭＯの１ページに書き込まれているか、確認してみよう。先ず「ＥＳＣ」でコマンドリクエストに戻り、「ＤＲ」コマンドを使ってメイン画面のデータを削除してしまう。２行書き込まれている場合は</p>
<p><strong>DR ; 1 , 2 ; Y ;</strong></p>
<p>だ。メイン画面が真っ白になったら、</p>
<p><strong>G ; MEMO / 1 ;</strong></p>
<p>「Ｇ」　はページを呼び出すコマンド。ＭＥＭＯの１ページを呼び出せ、と命令した。<br />
先ほどの文字がメイン画面に現れ、確かに収納されていることを示している。</p>
<p>ＰＩＰＳはオペレーターが命令しない限り、決して何かを判断したり、自動保存したりしない。だから、もしメイン画面で何かの作業をしたら、必ず「Ｐ」コマンドで、そのページを収納しておく必要がある。何処かのページを収納場所として指定した場合、もしそこにすでに何かが収納されている場合、「上書きしてよいか」を「タイトルが一致しているか、いないか、登録するか、しないか」で聞いてくる。通常は「ＥＮＴＥＲ」は「Ｙ」（上書きする）になる。このため、慣れてくると何の気無しに「ＥＮＴＥＲ」を２回続けて押して「しまった！」ということがあるので、注意したい。</p>
<p><strong>バインダーの作成</strong></p>
<p>現在は文書形式のページについて説明しているが、実際に使用するときはほとんど表形式のページで作業することになる。この場合、一つのバインダーの中に性質の違った他種類の表が混在することは好ましくないので、特別な目的のない限り、表ごとにバインダーを用意するが、とりあえずここでは「どうすればバインダーを作ることが出来るか」だけを実習してみよう。</p>
<p>先ず、先ほどの ＭＥＭＯ／１ に登録したページをメイン画面に呼び出す。その状態で、</p>
<p><strong>MB ; NUL ;</strong></p>
<p>とコマンドを入れる。「ＭＢ」（メークバインダー）はバインダーを作成するコマンドだ。「ＮＵＬ」は便宜的なバインダーの名称で何でも良い。これで</p>
<p><strong>G ; [HOME]</strong></p>
<p>と、ページタイトル一覧を表示させると、「ＭＥＭＯ」というバインダーの下に新しく「ＮＵＬ」というバインダーが出来、その1ページにメイン画面にあった「ＴＥＳＴ」という名前のページが登録されているのが分かるだろう。通常、バインダーを作成するには目的があるのだから、空のバインダーではなく、このように少なくとも１ページが登録されたバインダーになる。空のバインダーが生成されるのはキャビネットを作る時だけである。</p>
<p><a href="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/02/MAKE-BINDER.jpg"><img src="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/02/MAKE-BINDER-500x396.jpg" alt="MAKE-BINDER" title="MAKE-BINDER" width="500" height="396" class="aligncenter size-medium wp-image-431" /></a></p>
<p>*************************************************</p>
<p><strong>「IN」 （イニシアライズ）</strong><br />
キャビネットやソートページの作成、削除コマンド。キャビネットおよびソートページは必要に応じて拡張できる。大きくしすぎるとキャビネットのバックアップをするときに時間がかかるのでむやみに大きくしておく必要はない。</p>
<p>*************************************************</p>
<p><strong>「G」（ゲット）</strong><br />
ページの呼び出しコマンド。つづいて [HOME] キーを押すことで目次ウインドウが開く。キャンセルは[ESC] キーを押す。</p>
<p>*************************************************</p>
<p><strong>「MP」（メークページ）</strong><br />
ページの作成コマンド。「MP」は対象バインダーに「ページを登録できる空間」を確保する（実際のページは登録されない）。このコマンドで登録された「空間」は目次の詳細表示でしか確認できないので注意。</p>
<p>*************************************************</p>
<p><strong>「CT」（チェンジタイトル）</strong><br />
ページタイトルの変更コマンド。</p>
<p>*************************************************</p>
<p><strong>「P」（プット）</strong><br />
ページの登録コマンド。ＰＩＰＳは自動セーブのような動作を一切しない。画面で作業したものは必ず「P」コマンドで格納しなければならない。</p>
<p>*************************************************</p>
<p><strong>「MB」(メークバインダー)</strong><br />
新しくバインダーを作成するコマンド。バインダーの名前を入れると、メイン画面を1ページとしてバインダーを作成する。バインダーは手動で作成するだけでなく、ソートや検索の結果として自動的に作成されるものもある。</p>
<p>*************************************************</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://jeis-kanoh.co.jp/gc/?feed=rss2&#038;p=414</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>04 ＰＩＰＳの導入(05)</title>
		<link>http://jeis-kanoh.co.jp/gc/?p=404</link>
		<comments>http://jeis-kanoh.co.jp/gc/?p=404#comments</comments>
		<pubDate>Mon, 07 Feb 2011 02:54:30 +0000</pubDate>
		<dc:creator>管理人</dc:creator>
				<category><![CDATA[04 ＰＩＰＳの導入]]></category>

		<guid isPermaLink="false">http://jeis-kanoh.co.jp/gc/?p=404</guid>
		<description><![CDATA[紙帳票の検討 本、業務システムの構築は、データーの紙出力を前提としている。このため、予め使用する帳票のサイズとＰＩＰＳの画面（ページ）の対応について大雑把なことを述べておく。 使用する紙のサイズは、煩雑さを避けるため種類を最小限にしたい。現在使用でき、最も安価なのはＡ４サイズであるから、できる限りＡ４サイズの用紙を使用するのが常識的だ。ひるがえってＰＩＰＳでは表の横幅を最大１０２４桁までとることが可能であるが、あまり横幅の長い表も、扱いにくく非実用的である。 以前にも書いたようにＰＩＰＳにはフォントの考え方がない（文字サイズは一種類である）から、一定の用紙に印刷できる桁数と行数はおおむね決まっている（プリンターの印刷可能範囲によったり、ファイリング用に穴を開ける余白をどうとるかで多少の差異が出る）。Ａ４サイズの用紙を縦に使った場合、おおむね横桁数は１０５桁、縦は６４行、横に使った場合、横桁数は１７０桁、縦行数は４４行程度が実用的である。 必要な帳票を考えた場合、見積書などのフォームは、桁数よりも行数が多い方が視覚的にまとまったものが作りやすく、Ａ４縦サイズが常識的で受け入れられ易いであろう。また、納品書などの伝票類は、記載事項が少ないのでＡ５横（Ａ４の半分のサイズ）で十分だろう。 これに対し売上日記、仕入日記などの表は項目数から言って１００桁前後に納めるのは難しく、Ａ４用紙を横に使うと考えた方が楽である。必要であれば表を分割して、Ａ４横２枚に印刷して見開き２ページにすれば３００桁以上の表を印刷することができる。また、ＰＩＰＳは印刷時不要な項目を削除することが容易にできるので、紙に収まりが悪い場合は、不要な項目を削除して印刷するという手もあることを覚えておくといい。 ＰＩＰＳの印刷設定は、以前からの 「ＳＹＳＳＥＴ」 というコマンドを使って設定する方法と、Ｗｉｎｄｗｓ方式のマウスを使って行う方法があるが、どちらも用紙の縦、横の設定をプリンタードライバーの設定画面で行わなければならず、プログラムで記述できない。 ＰＩＰＳを運用していて起こりやすい印刷トラブル ＰＩＰＳは Ｗｉｎｄｗｓ 以前のプログラムであり、Ｗｉｎｄｗｓ への対応はされていても、かなりいい加減なところで開発が止まってしまったるため、 Ｗｉｎｄｗｓ との親和性は必ずしも良いとは言えない。これが集中的に現れるのが印刷で、旧来からのＰＩＰＳユーザー間ではこの問題についてしばしば議論されている。 運用開始時には全く問題がないのに、しばらく使っているとあるとき突然印刷が出来なく（ＰＩＰＳの印刷命令にプリンターが反応しなく）なったりすることがある。困ったことに全く同じ機種のパソコンでも個体差によって、起こる場合もあり、起こらない場合もある。また、起こったときにＰＩＰＳをインストールし直せば解消することもあり、またそれでも解消しないこともある。また、プリンターのドライバーを更新したり、プリンターの機種を変えると問題が解消することがある。もちろん全ての機種についての確認は出来ていないが、プリンタードライバーの癖や、プリンターとパソコンの相性に影響されることもあるようだ。 このトラブルが起こるもうひとつの可能性は、インストールされている他のソフトとの競合問題だ。これはＰＩＰＳ以外のソフトでも散見されることであり、パソコンにソフトをインストールする順番を変えるだけで結果が異なったりすることは良くあることだ。また、セキュリティー問題の回避のために送られてくる大量の修正プログラムでパソコンが変調を来す、ということも誰しもが経験していることだろう。ここまで来るとＰＩＰＳの範疇を超えてしまい、ここで論ずることの外になってしまう。 原因については色々議論があるだろうが、実務的には、要はそれが起こらないようにすればよいわけで、一番単純な解決策は（以前にも書いたように） Ｗｉｎｄｗｓ をクリーンインストールしたパソコンにＰＩＰＳのみをインストールし、（ネットにはつながずに）専用機として使用することだ。経験的に、これだと先ず問題が起こらない（この方法をとっている私の顧問先では一件も問題が起こっていない）。 また、プログラム記述上のプリン文でトラブルが起きることもあるので、本目的で印刷を行う場合はプリント文を一切使わす、シンプルなリスト命令（ページを印刷する）で行うことにしている。]]></description>
			<content:encoded><![CDATA[<div>
<p id="internal-source-marker_0.47156009869650006">
<p><strong>紙帳票の検討</strong></p>
<p>本、業務システムの構築は、データーの紙出力を前提としている。このため、予め使用する帳票のサイズとＰＩＰＳの画面（ページ）の対応について大雑把なことを述べておく。</p>
<p>使用する紙のサイズは、煩雑さを避けるため種類を最小限にしたい。現在使用でき、最も安価なのはＡ４サイズであるから、できる限りＡ４サイズの用紙を使用するのが常識的だ。ひるがえってＰＩＰＳでは表の横幅を最大１０２４桁までとることが可能であるが、あまり横幅の長い表も、扱いにくく非実用的である。</p>
<p>以前にも書いたようにＰＩＰＳにはフォントの考え方がない（文字サイズは一種類である）から、一定の用紙に印刷できる桁数と行数はおおむね決まっている（プリンターの印刷可能範囲によったり、ファイリング用に穴を開ける余白をどうとるかで多少の差異が出る）。Ａ４サイズの用紙を縦に使った場合、おおむね横桁数は１０５桁、縦は６４行、横に使った場合、横桁数は１７０桁、縦行数は４４行程度が実用的である。</p>
<p>必要な帳票を考えた場合、見積書などのフォームは、桁数よりも行数が多い方が視覚的にまとまったものが作りやすく、Ａ４縦サイズが常識的で受け入れられ易いであろう。また、納品書などの伝票類は、記載事項が少ないのでＡ５横（Ａ４の半分のサイズ）で十分だろう。<br />
これに対し売上日記、仕入日記などの表は項目数から言って１００桁前後に納めるのは難しく、Ａ４用紙を横に使うと考えた方が楽である。必要であれば表を分割して、Ａ４横２枚に印刷して見開き２ページにすれば３００桁以上の表を印刷することができる。また、ＰＩＰＳは印刷時不要な項目を削除することが容易にできるので、紙に収まりが悪い場合は、不要な項目を削除して印刷するという手もあることを覚えておくといい。</p>
<p>ＰＩＰＳの印刷設定は、以前からの 「ＳＹＳＳＥＴ」 というコマンドを使って設定する方法と、Ｗｉｎｄｗｓ方式のマウスを使って行う方法があるが、どちらも用紙の縦、横の設定をプリンタードライバーの設定画面で行わなければならず、プログラムで記述できない。</p>
<p><strong>ＰＩＰＳを運用していて起こりやすい印刷トラブル</strong></p>
<p>ＰＩＰＳは Ｗｉｎｄｗｓ 以前のプログラムであり、Ｗｉｎｄｗｓ への対応はされていても、かなりいい加減なところで開発が止まってしまったるため、 Ｗｉｎｄｗｓ との親和性は必ずしも良いとは言えない。これが集中的に現れるのが印刷で、旧来からのＰＩＰＳユーザー間ではこの問題についてしばしば議論されている。</p>
<p>運用開始時には全く問題がないのに、しばらく使っているとあるとき突然印刷が出来なく（ＰＩＰＳの印刷命令にプリンターが反応しなく）なったりすることがある。困ったことに全く同じ機種のパソコンでも個体差によって、起こる場合もあり、起こらない場合もある。また、起こったときにＰＩＰＳをインストールし直せば解消することもあり、またそれでも解消しないこともある。また、プリンターのドライバーを更新したり、プリンターの機種を変えると問題が解消することがある。もちろん全ての機種についての確認は出来ていないが、プリンタードライバーの癖や、プリンターとパソコンの相性に影響されることもあるようだ。</p>
<p>このトラブルが起こるもうひとつの可能性は、インストールされている他のソフトとの競合問題だ。これはＰＩＰＳ以外のソフトでも散見されることであり、パソコンにソフトをインストールする順番を変えるだけで結果が異なったりすることは良くあることだ。また、セキュリティー問題の回避のために送られてくる大量の修正プログラムでパソコンが変調を来す、ということも誰しもが経験していることだろう。ここまで来るとＰＩＰＳの範疇を超えてしまい、ここで論ずることの外になってしまう。</p>
<p>原因については色々議論があるだろうが、実務的には、要はそれが起こらないようにすればよいわけで、一番単純な解決策は（以前にも書いたように） Ｗｉｎｄｗｓ をクリーンインストールしたパソコンにＰＩＰＳのみをインストールし、（ネットにはつながずに）専用機として使用することだ。経験的に、これだと先ず問題が起こらない（この方法をとっている私の顧問先では一件も問題が起こっていない）。<br />
また、プログラム記述上のプリン文でトラブルが起きることもあるので、本目的で印刷を行う場合はプリント文を一切使わす、シンプルなリスト命令（ページを印刷する）で行うことにしている。</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://jeis-kanoh.co.jp/gc/?feed=rss2&#038;p=404</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>04 ＰＩＰＳの導入(04)</title>
		<link>http://jeis-kanoh.co.jp/gc/?p=389</link>
		<comments>http://jeis-kanoh.co.jp/gc/?p=389#comments</comments>
		<pubDate>Tue, 01 Feb 2011 07:04:20 +0000</pubDate>
		<dc:creator>管理人</dc:creator>
				<category><![CDATA[04 ＰＩＰＳの導入]]></category>

		<guid isPermaLink="false">http://jeis-kanoh.co.jp/gc/?p=389</guid>
		<description><![CDATA[PIPSにはメイン画面とサブ画面があり、メイン画面とサブ画面の間でデータの複写が可能である。]]></description>
			<content:encoded><![CDATA[<div>
<p id="internal-source-marker_0.47156009869650006">
<p><strong>画面　（メイン画面とサブ画面）</strong></p>
<p>ＰＩＰＳのウインドウの左上を見ると、 ThePIPS &#8211; [メイン:] と表示されている。[メイン:] とあるからには、　[サブ:] があるのではないか・・・。その通り。サブ画面がある。この、「二枚の画面」がＰＩＰＳの大変巧妙な仕組みであり、実は、ＰＩＰＳ自身がこの二つの画面を駆使して作業をしているのである。それでは「サブ画面」を表示させてみよう。</p>
<p>先ほどと同じように 「WP」 コマンドで画面に数行、文字を記入して、一旦 「ESC」 キーで抜ける。そしてコマンドラインに</p>
<p><strong>S ;</strong></p>
<p>を入力すると、画面から文字が消えてしまう。 「Ｓ」 はサブ画面を表示するコマンドではなく、「スワップ」 つまり、「メインとサブの画面を入れ替える」  コマンドで、画面が入れ替わったのだ。その証拠に、左上の画面表示はThePIPS &#8211; [メイン:] のままだ。これでは分かりにくいので、ウインドウ上部のメニューバーからマウスで　ウインドウ（Ｗ）　をクリックし、開いたサブメニューから  「サブ画面を開く」 をクリックすると、サブ画面が表示され、先ほどの文字が現れる。これではもう一つ分かりにくいから、再度同じメニューを開き、 「左右に分割して表示」 をクリックすると、メイン、サブ、両画面が左右に並んで表示される。先ほど記入した文字が 「サブ」 画面側にあるのが分かるだろう。先ほどのコマンド 「Ｓ」（スワップ） を何度か繰り返すと、文字がメインとサブの画面を移動し、メインとサブ画面が入れ替わるのがわかるだろう。</p>
<p>私が書いた通りにやっていると、サブ画面が左側に、メイン画面が右側に表示されているはずだ。しかし、「メイン画面が左、サブ画面が右だろう」 と、感覚的にこの配置に違和感がある場合は、「メイン」 のウインドウをマウスでワンクリックしてアクティブにし、その状態で再度 「左右に分割して表示」 をクリックすると、画面が左右入れ替わり、メインが左側に来る。</p>
<p><a href="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/02/mainsub1.jpg"><img src="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/02/mainsub1-500x256.jpg" alt="メイン画面とサブ画面" title="mainsub" width="500" height="256" class="aligncenter size-medium wp-image-396" /></a></p>
<p>そこでもう一度 「ＷＰ」 コマンドでメイン画面内にカーソルを出し、何か打ち込んで欲しい。先ほど英文字を入力したのであれば、わかりやすいように今度は数字が良いだろう。適当に入力したら 「ＥＳＣ」 で「指令を入力してください」 に戻り、「ＣＰＲ ； 」 を入力する。ここで、コマンドリクエストラインを見て欲しい。そこには 「対象行は？　（Ｓ指定可）」 と表示されている。この 「Ｓ指定可」 というのは、「サブ画面の行」 を意味している。メイン画面の行は、数字のみ入力するのに対し、サブ画面の行は、頭に 「Ｓ」 を付けて指定するのである。やってみよう。</p>
<p><strong>CPR ; 1,3 ; S1 ;</strong></p>
<p>メイン画面の１行目から３行目までがサブ画面の１行目にコピーされた。それまでサブ画面の１行目あったデータは、４行目に押し下げられている。このようにメイン画面とサブ画面の間でも行複写が出来る。また、サブ画面に対しては 「ＷＰ」 での自由記入や、「ＭＲ」 コマンドによる行移動もできる（但し 「ＤＲ」 コマンドは使用できない）。</p>
<p>こう書くとメイン画面とサブ画面はほとんど対等のように見えるが決してそうではなく、サブ場面はあくまでサブ画面であり、サブ画面の表に対してデータの記入を行うことは出来ず、サブ画面の内容を直接ファイルに書き込むことも出来ない。</p>
<p> メイン、サブ画面相互の行複写はプログラム記述時に非常に良く使用するので、その動作を理解しておいて欲しい。</p>
<p>*************************************************</p>
<p><strong>「Ｓ」　（スワップ）</strong><br />
メイン画面とサブ画面を入れ替えるコマンド。一つのページと別のページとの間でデーターのコピーアンドペーストを行うときに良く使用する。通常はサブ画面は見えていないが、「ＷＩＮ」 を実行することにより、可視となる。以前はディスプレイ画面に余裕がなかったためこれは余り実用できではなかったが、１６：９（１９２０×１０８０ピクセルなどの横長）ディスプレイが普及したため、サブ画面を見ながら操作することも楽に出来るようになった。プログラムの記述時に多用する。</p>
<p>*************************************************</p>
<p><strong>「WIN」 （ウインドウ）</strong><br />
上記プルダウンメニューから行った画面分割動作をキーボードから行うＰＩＰＳコマンドである。ただし、サブコマンドの表示がわかりにくく、この動作はマウスを使ってプルダウンメニューから行う方法がずっと便利だ。<br />
ＰＩＰＳのコマンドはそのほとんど全てを上のプルダウンメニューからも実行可能である。また、プリンターの設定など、Windows に関わる部分ではプルダウンメニューからしか行えない動作もある。</p>
<p>*************************************************</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://jeis-kanoh.co.jp/gc/?feed=rss2&#038;p=389</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>04 ＰＩＰＳの導入(03)</title>
		<link>http://jeis-kanoh.co.jp/gc/?p=370</link>
		<comments>http://jeis-kanoh.co.jp/gc/?p=370#comments</comments>
		<pubDate>Mon, 31 Jan 2011 02:20:00 +0000</pubDate>
		<dc:creator>管理人</dc:creator>
				<category><![CDATA[04 ＰＩＰＳの導入]]></category>

		<guid isPermaLink="false">http://jeis-kanoh.co.jp/gc/?p=370</guid>
		<description><![CDATA[文書形式画面への記入 画面に直接文字を記入するコマンドは 「ＷＰ」（ワープロ） である。ＰＩＰＳのエディター能力は低く、最小限と思った方がよい。 WP ; で、画面にプロンプト（カーソル）が現れる。ランダムな文字でよいから数行、打ち込んでみて欲しい。このモードではカーソルの移動にマウスも使える。また、マウスを右クリックすることで、編集処理のウインドウが開く。やりたいことをマウスで左クリックし、範囲を右クリックで指定する。正直に言って余り使い良くないし、その必要も薄いので、必要になったときに説明する。 ある程度入力が出来たら 「ＥＳＣ」 で抜けて欲しい。 プログラムを書くときには、処理の前後を入れ替えたり、類似した処理を繰り返したりすることが頻繁にある。このために行単位での挿入、削除や移動はよく行われる。そのためのコマンドをここにまとめておくので、現在の画面でその動作を確認すると良い。 行挿入（インサートロー）　　　　IR ; S ; (挿入したい場所の行番号) ; (挿入する行数) ; 行削除（デリートロー）　 　　　　DR ; (削除する行番号) ; Y ; 行移動（ムーヴロー）　　　　　　MR ; (移動したい行番号) ; (移動先の行番号) ; 行複写（コピーロー）　　　 　　　CPR ; (移動したい行番号) ; (移動先の行番号) ; 数を指定するときに使う 「,」(カンマ)と 「/」(スラッシュ) 行番号を指定するときなど、複数行を指定したい場合がある。そのとき、「,」 は連続を表し、「/」 は区切りを表す。 3 , 8 と書けば、３行目から８行目まで、という意味になり、 3 / 8 と書けば、３行目と８行目、という意味になる。もちろんこれらの混合、3,6/8,9 (３行目から６行目までと、８行目、９行目)も可能だ。また、 「ＭＲ」 [...]]]></description>
			<content:encoded><![CDATA[<div>
<p id="internal-source-marker_0.47156009869650006">
<p><strong>文書形式画面への記入</strong></p>
<p>画面に直接文字を記入するコマンドは 「ＷＰ」（ワープロ） である。ＰＩＰＳのエディター能力は低く、最小限と思った方がよい。</p>
<p><strong>WP ; </strong></p>
<p>で、画面にプロンプト（カーソル）が現れる。ランダムな文字でよいから数行、打ち込んでみて欲しい。このモードではカーソルの移動にマウスも使える。また、マウスを右クリックすることで、編集処理のウインドウが開く。やりたいことをマウスで左クリックし、範囲を右クリックで指定する。正直に言って余り使い良くないし、その必要も薄いので、必要になったときに説明する。<br />
ある程度入力が出来たら 「ＥＳＣ」 で抜けて欲しい。</p>
<p>プログラムを書くときには、処理の前後を入れ替えたり、類似した処理を繰り返したりすることが頻繁にある。このために行単位での挿入、削除や移動はよく行われる。そのためのコマンドをここにまとめておくので、現在の画面でその動作を確認すると良い。</p>
<p>行挿入（インサートロー）　　　　IR ; S ; (挿入したい場所の行番号) ; (挿入する行数) ;</p>
<p>行削除（デリートロー）　 　　　　DR ; (削除する行番号) ; Y ;</p>
<p>行移動（ムーヴロー）　　　　　　MR ; (移動したい行番号) ; (移動先の行番号) ;</p>
<p>行複写（コピーロー）　　　 　　　CPR ; (移動したい行番号) ; (移動先の行番号) ;</p>
<p><strong>数を指定するときに使う 「,」(カンマ)と  「/」(スラッシュ)</strong></p>
<p>行番号を指定するときなど、複数行を指定したい場合がある。そのとき、「,」 は連続を表し、「/」 は区切りを表す。</p>
<p><strong>3 , 8</strong></p>
<p>と書けば、３行目から８行目まで、という意味になり、</p>
<p><strong>3 / 8</strong></p>
<p>と書けば、３行目と８行目、という意味になる。もちろんこれらの混合、3,6/8,9 (３行目から６行目までと、８行目、９行目)も可能だ。また、 「ＭＲ」 コマンドで行を移動させる場合、指定された行は下に押し下げられ、上書きはされないから、そこに記されていたものが消失することはない。<br />
この 「,」 と 「/」 はデーター記入の際も多用されるので、記憶しておいて欲しい。</p>
<p>表形式の場合、ページの横幅は常に変更可能なので問題はないが、文書形式の場合は横幅の変更が出来ない。内容を書き始める前に横幅を決定しておかねばならないが、このために初期設定を１１０桁程度に指定してしまうと、表を作る度に横幅が足りず、いつも不便な思いをする。このため、初期設定は元のままにしておき、文書形式のページの巾を簡単に変更する小技を書いておこう。</p>
<p><strong>O ; NUL ; ; ESC ; SIZE ; 110 ; ; DR ; 1,18 ; ;</strong></p>
<p>これはもう、プログラムを書き始めていることになる。「O」 は「オリジナル表の作成」を指示するコマンドだ。続く 「NUL」 は「何もない」という意味だから、もし文書形式のページのタイトルが決まっていたら、ここに書く。そして、「ENTER」 を一つ入れると、勝手にサンプル表を作ってくれる。これで「表形式」のページが出来たわけだ。そこで 「SIZE」という「表の横幅の変更コマンド」を使ってページを必要な桁数に する。それからページの表の部分を削除してしまえば、文書形式のページが出来る。</p>
<p>*************************************************</p>
<p><strong>「WP」　（ワープロ）</strong><br />
キーボードから画面に直接文字を書き込むコマンド。「WP」 を実行すると画面にプロンプトが現れる。「WP」 は画面が文書形式でも表形式でも使用が可能である。記入が終わったら 「ESC」 キーでコマンドリクエスト状態に戻る。</p>
<p>*************************************************</p>
<p><strong>「IR」　（インサートロー）</strong><br />
行挿入コマンド。文書形式の場合は、カーソル（プロンプト）を行頭に持ってきて、（キーボードがインサートモードになっていれば）「ENTER」キーで行あけすればいいから余り意味がなく、表形式の途中行にデータを挿入するときに主に使う。しかしデータが数ページにわたるような表の場合、最終ページ以外は物理的に空けることが出来ないので、結局、最後のページにデータを追加して、並べ替えなどで（データを）挿入したい場所に持ってくるほかない。</p>
<p>*************************************************</p>
<p><strong>「DR」　（デリートロー）</strong><br />
行削除コマンド。前述のように 「,」 や 「/」 を使って複数行を一度に指定することが出来る。実行される前に指定行がリバース表示となり、確認を求める。</p>
<p>*************************************************<br />
<strong>「MR」　（ムーブロー）</strong><br />
行単位の移動コマンド。プログラムを記述している場合、処理手順を前後させるときなどに使う。異動先の行は押し下げられ、上書きはされない。これに引き替え、「ＷＰ」内のマウス右クリックによる「処理」、「ブロック編集」の、「ブロック複写」、「ブロック移動」は問答無用で上書きしてしまうので注意が必要。</p>
<p>*************************************************</p>
<p><strong>「CPR」　（コピーロー）</strong><br />
行単位の複写コマンド。「ＣＰＲ」を実行すると、コマンドリクエストラインに「対象行は？　（Ｓ指定可）」と表示される。この「Ｓ」はサブ画面のこと。つまり、メイン画面のデータ行をサブ画面に、またはその反対のコピーができる。このコマンドはプログラムを書くとき非常に多用するので、指先で覚えて欲しい。</p>
<p>*************************************************</p>
<p><strong>「O」　（オリジナルテーブル）</strong><br />
表形式のページを作るためのコマンド。「Ｏ」を実行すると、「タイトル」 の入力をリクエストされ、その後に順次表の桁数、項目を要求してくるので、予め項目と桁数は決めておかなければならない。ただし、桁数、項目は後でいくらでも変更出来るのでそれほど神経質になる必要はない。最後に 「ＥＮＴＥＲ」 を入れると作表モードからデータ入力モードに移行する。最初の桁数リクエストを無視して 「ＥＮＴＥＲ」 すると、勝手に小さな表を作ってくれる。</p>
<p>*************************************************</p>
<p><strong>「SIZE」　（サイズ）</strong><br />
ページの桁数を変更するコマンド。表形式のページにのみ使用可能。ＰＩＰＳのページはあまり広くない。これを出来る限り有効に使うためにページを横に拡げたり、縦に伸ばしたりする。また、印刷時、用紙にピッタリはいる表を作るときにも使う。桁の可変範囲は、３６桁から１０２４桁。当然ながら現在画面にある表の合計桁数より小さい値は指定できないし、指定した桁数に変更すると現在すでに使用している行数を割ってしまう場合ははじかれる。</p>
<p>*************************************************</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://jeis-kanoh.co.jp/gc/?feed=rss2&#038;p=370</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>04 ＰＩＰＳの導入(02)</title>
		<link>http://jeis-kanoh.co.jp/gc/?p=353</link>
		<comments>http://jeis-kanoh.co.jp/gc/?p=353#comments</comments>
		<pubDate>Sun, 30 Jan 2011 01:59:14 +0000</pubDate>
		<dc:creator>管理人</dc:creator>
				<category><![CDATA[04 ＰＩＰＳの導入]]></category>

		<guid isPermaLink="false">http://jeis-kanoh.co.jp/gc/?p=353</guid>
		<description><![CDATA[ＰＩＰＳのファイル構造　（その1　ページ） ＰＩＰＳはユニークなファイル構造を持っている。これは、見方によってはちょっと使い方が煩雑だが、逆に紙の帳票になじんだ者には分かり易い構造でもある。業務システムのプログラムを構築するに当たって、このＰＩＰＳのファイル構造を知悉し、縦横に使いこなせることが非常に重要な鍵となるので、プリントアウするなどして読みながら実際にＰＩＰＳを動かしてみて欲しい。 また、この項よりコマンドの説明を入れている。Ｂ－ＴＡＯ用紙のようなカード１枚に、一つの動作、一つのコマンドを記してファイルしていくと将来非常に役立つだろうと思う。 画面　（ページ） ＰＩＰＳを起動すると真っ白な画面が現れる。これを「メイン画面」と呼ぶ。左側に縦に数字が並んでいる。これは行数である。右側に出ているスクロールバーをマウスでドラッグして下にさげると（デフォルトの場合）５７行で止まる。 それでは横桁数はどれだけかというと、この状態では表示されていないので、次のようにして欲しい。 SET ; I ; M ; すると、「ＳＥＴ－表情報」が表示され、「（１）横桁数」 という所の 「現在値」 が 「２５０」（初期設定） になっている。つまり、表の横桁数は２５０桁である。 コマンドリクエストは、「設定項目番号は？　[ENTER]＝終了」 となっている。試しにここに 1 ; 150 ; とインプットしてみよう。「現在値」 が 「１５０」 に変わる。このままもう一度 [ENTER] キーを２回押して画面を閉じ、コマンドリクエストに END ; Y ; と入れる。これはＰＩＰＳの終了コマンドだ。この場合は [ENTER] を二度続けて入れると誤操作と認識されてはじかれる。必ず、「Ｙ」 を入れて確認しなければならい。 もう一度ＰＩＰＳを立ち上げる。同じ画面が立ち上がるが、今度は幅が縮まり、桁が伸びて９５桁になっているだろう。これが以前から顔を出しているＰＩＰＳの 「ページ」 のサイズだ。両方とも掛け算してみると 「１４２５０」 となる。つまり、ＰＩＰＳの１ページは半角文字で 約１４，２５０ 文字（設定桁数で行数が決まるため時として多少異なる）が書き込める面積がある、そして行と桁の関係はある程度（桁数にして３６～１０２４の範囲）可変である、ということが知れる。 ちなみに、このページの幅についてもう一つ知っておいた方がよいことがある。それは、 ページには、「文書形式」 と 「表形式」 の２つのモードがある ことだ。表形式の時はコマンドによって横桁数を変更できるが、文書形式のページは横桁数を変更できない。 ＰＩＰＳは常に表形式で作業するが、プログラムを記述するページだけは文書形式である。そして、プログラムの記述は（プログラムが正常に動かないときなど）往々にしてプリントアウトしたくなる。このため、プリントアウトするときの便宜を予め考えてプログラムを記述するページサイズを決めておく必要がある。 ＰＩＰＳにはフォントの考え方がなく、文字サイズは一定のため、印刷時の横桁数は決まっており、Ａ４用紙の横幅に入る桁数は１０５～１１０桁程度（プリンターの設定などによって多少異なる）である。このため、プログラムを記述するページの幅は１１０桁程度に設定することが多い。 この 「業務システム」 [...]]]></description>
			<content:encoded><![CDATA[<div>
<p id="internal-source-marker_0.47156009869650006">
<p><strong>ＰＩＰＳのファイル構造　（その1　ページ）</strong></p>
<p>ＰＩＰＳはユニークなファイル構造を持っている。これは、見方によってはちょっと使い方が煩雑だが、逆に紙の帳票になじんだ者には分かり易い構造でもある。業務システムのプログラムを構築するに当たって、このＰＩＰＳのファイル構造を知悉し、縦横に使いこなせることが非常に重要な鍵となるので、プリントアウするなどして読みながら実際にＰＩＰＳを動かしてみて欲しい。<br />
また、この項よりコマンドの説明を入れている。Ｂ－ＴＡＯ用紙のようなカード１枚に、一つの動作、一つのコマンドを記してファイルしていくと将来非常に役立つだろうと思う。</p>
<p><strong>画面　（ページ）</strong></p>
<p>ＰＩＰＳを起動すると真っ白な画面が現れる。これを「メイン画面」と呼ぶ。左側に縦に数字が並んでいる。これは行数である。右側に出ているスクロールバーをマウスでドラッグして下にさげると（デフォルトの場合）５７行で止まる。<br />
それでは横桁数はどれだけかというと、この状態では表示されていないので、次のようにして欲しい。</p>
<p><strong>SET ; I ; M ;</strong></p>
<p>すると、「ＳＥＴ－表情報」が表示され、「（１）横桁数」 という所の 「現在値」 が 「２５０」（初期設定） になっている。つまり、表の横桁数は２５０桁である。<br />
<a href="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/01/SET-I.jpg"><img src="http://jeis-kanoh.co.jp/gc/wp-content/uploads/2011/01/SET-I-500x305.jpg" alt="SET 指令表情報" title="SET-I" width="500" height="305" class="aligncenter size-medium wp-image-356" /></a></p>
<p>コマンドリクエストは、「設定項目番号は？　[ENTER]＝終了」 となっている。試しにここに</p>
<p><strong>1 ; 150 ;</strong></p>
<p>とインプットしてみよう。「現在値」 が 「１５０」 に変わる。このままもう一度 [ENTER] キーを２回押して画面を閉じ、コマンドリクエストに</p>
<p><strong>END ; Y ;</strong></p>
<p>と入れる。これはＰＩＰＳの終了コマンドだ。この場合は [ENTER] を二度続けて入れると誤操作と認識されてはじかれる。必ず、「Ｙ」 を入れて確認しなければならい。</p>
<p>もう一度ＰＩＰＳを立ち上げる。同じ画面が立ち上がるが、今度は幅が縮まり、桁が伸びて９５桁になっているだろう。これが以前から顔を出しているＰＩＰＳの 「ページ」 のサイズだ。両方とも掛け算してみると 「１４２５０」 となる。つまり、ＰＩＰＳの１ページは半角文字で 約１４，２５０ 文字（設定桁数で行数が決まるため時として多少異なる）が書き込める面積がある、そして行と桁の関係はある程度（桁数にして３６～１０２４の範囲）可変である、ということが知れる。</p>
<p>ちなみに、このページの幅についてもう一つ知っておいた方がよいことがある。それは、</p>
<p><strong>ページには、「文書形式」 と 「表形式」 の２つのモードがある</strong></p>
<p>ことだ。表形式の時はコマンドによって横桁数を変更できるが、文書形式のページは横桁数を変更できない。<br />
ＰＩＰＳは常に表形式で作業するが、プログラムを記述するページだけは文書形式である。そして、プログラムの記述は（プログラムが正常に動かないときなど）往々にしてプリントアウトしたくなる。このため、プリントアウトするときの便宜を予め考えてプログラムを記述するページサイズを決めておく必要がある。</p>
<p>ＰＩＰＳにはフォントの考え方がなく、文字サイズは一定のため、印刷時の横桁数は決まっており、Ａ４用紙の横幅に入る桁数は１０５～１１０桁程度（プリンターの設定などによって多少異なる）である。このため、プログラムを記述するページの幅は１１０桁程度に設定することが多い。</p>
<p>この 「業務システム」 の構築は、最初から結果を帳票としてプリントアウトすることが前提であるので、プリントアウトへの配慮も重要となるが、そのテクニックは時に応じて書いていくことにする。</p>
<p>*************************************************</p>
<p><strong>「END」</strong></p>
<p>ＰＩＰＳプログラムの終了コマンドである。この場合、誤入力防止のため、必ず確認メッセージ「Ｙ」を入力しなければならない。ウインドウの右肩、「X」でも終了できる。この場合は Windows のルールに従う。</p>
<p>*************************************************</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://jeis-kanoh.co.jp/gc/?feed=rss2&#038;p=353</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

