• 検索結果がありません。

COBOL手続きの編集

ドキュメント内 NetCOBOL for .NET 応用編 (ページ 30-46)

5.5 データアクセスプログラムの作成

5.5.4 COBOL手続きの編集

次 に 、 追 加 し た プ ロ グ ラ ム を コ ー テ ィ ン グ し ま す 。 作 成 す る プ ロ グ ラ ム は 次 の3本 で す 。

9 S YA I N . C O B 9 S Y O H I N . C O B 9 Z A I K O . C O B

5.5 データアクセスプログラムの作成 

„ S YA I N . C O B

(社 員 テ ー ブ ル に ア ク セ ス し 、 認 証 を 行 う)    

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  

*   プ ロ グ ラ ム 名   :   S Y A I N  

*   概 要       :   社 員 テ ー ブ ル に ア ク セ ス し 認 証 を 行 う 。  

*  

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *     I D E N T I F I C A T I O N   D I V I S I O N .  

  P R O G R A M - I D .   S Y A I N .    E N V I R O N M E N T   D I V I S I O N .    C O N F I G U R A T I O N   S E C T I O N .     S P E C I A L - N A M E S .  

  R E P O S I T O R Y .     D A T A   D I V I S I O N .     F I L E   S E C T I O N .  

  W O R K I N G - S T O R A G E   S E C T I O N .  

* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =  

*     ホ ス ト 変 数 宣 言  

* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =         E X E C   S Q L   B E G I N   D E C L A R E   S E C T I O N   E N D - E X E C .  

  0 1   S Q L S T A T E       P I C   X ( 5 ) .     0 1   S Q L M S G       P I C   X ( 1 2 8 ) .      

  0 1   S Y A P F - R E C .  

      0 2     S Y A C D       P I C   S 9 ( 9 )   C O M P - 5 .         0 2     S Y A N A       P I C   N ( 2 0 ) .  

      0 2     P A S S       P I C   N ( 6 ) .  

      0 2     B U S Y O       P I C   S 9 ( 9 )   C O M P - 5 .         0 2     S D A T E       P I C   S 9 ( 9 )   C O M P - 5 .         0 2     S N A M E       P I C   N ( 2 0 ) .  

 

  0 1     S - S Y A C D       P I C   S 9 ( 9 )   C O M P - 5 .  

      E X E C   S Q L   E N D   D E C L A R E   S E C T I O N   E N D - E X E C .          

  C O P Y   M S G T B L .    

  L I N K A G E       S E C T I O N .     0 1     P - E m p l o y e e C o d e       P I C   N ( 0 6 ) .       0 1     P - P a s s w o r d       P I C   N ( 0 6 ) .       0 1     P - M s g       P I C   N ( 2 0 ) .       0 1     R - R e t u r n C o d e       B I N A R Y - L O N G .     P R O C E D U R E   D I V I S I O N   U S I N G  

      P - E m p l o y e e C o d e       * > 社 員 コ ー ド         P - P a s s w o r d       * > パ ス ワ ー ド         P - M s g       * > メ ッ セ ー ジ         R E T U R N I N G  

      R - R e t u r n C o d e .   * > 戻 り 値 ( エ ラ ー コ ー ド )    

      P E R F O R M   M A I N - S E C .         P E R F O R M   E N D - S E C .         E X I T   P R O G R A M .    

  M A I N - S E C   S E C T I O N .  

*         レ コ ー ド が な か っ た 場 合 の 動 作           E X E C   S Q L  

      W H E N E V E R   N O T   F O U N D   G O   T O   : P - N O T F O U N D         E N D - E X E C .  

 

*         D B 接 続  

      E X E C   S Q L   C O N N E C T   T O   D E F A U L T   E N D - E X E C .  

5.5 データアクセスプログラムの作成 

*       S Q L 実 行         E X E C   S Q L  

      S E L E C T   S Y A C D ,   P A S S  

      I N T O   : S Y A C D ,   : P A S S   F R O M   S Y A P F         W H E R E   S Y A C D   =   : S - S Y A C D  

      E N D - E X E C  

*       パ ス ワ ー ド 比 較  

      I F   S Q L S T A T E   =   " 0 0 0 0 0 "   A N D         P A S S   =   P - P a s s w o r d   T H E N         M O V E   0   T O   R - R e t u r n C o d e         E L S E  

      M O V E   3   T O   R - R e t u r n C o d e         E N D - I F  

      E N D - I F .    

  E N D - S E C   S E C T I O N .  

*         D B ク ロ ー ズ  

      E X E C   S Q L   D I S C O N N E C T   D E F A U L T   E N D - E X E C .  

*         メ ッ セ ー ジ 設 定  

      I F   R - R e t u r n C o d e   >   1   T H E N  

      M O V E   M S G - D S P ( R - R e t u r n C o d e )   T O   P - M s g         E N D - I F .  

 

  N O T F O U N D - S E C   S E C T I O N .     P - N O T F O U N D .  

*         社 員 コ ー ド が 見 つ か ら な か っ た 場 合 の 処 理         M O V E   2   T O   R - R e t u r n C o d e .  

      P E R F O R M   E N D - S E C .     E N D   P R O G R A M   S Y A I N .  

*         接 続 確 認  

      I F   S Q L S T A T E   =   " 0 0 0 0 0 "   O R   S Q L S T A T E   =   " 0 1 0 0 0 "   T H E N         M O V E   F U N C T I O N   D I S P L A Y - O F ( P - E m p l o y e e C o d e )         T O   S - S Y A C D  

 

5.5 データアクセスプログラムの作成 

„ S Y O H I N . C O B

(商 品 テ ー ブ ル に ア ク セ ス し 、 商 品 レ コ ー ド の 取 得 を 行 う)

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  

*   プ ロ グ ラ ム 名   :   S Y O H I N  

*   概 要       :   商 品 テ ー ブ ル に ア ク セ ス し 、  

*       商 品 レ コ ー ド の 取 得 を 行 う 。  

*  

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *     I D E N T I F I C A T I O N   D I V I S I O N .  

  P R O G R A M - I D .   S Y O H I N .     E N V I R O N M E N T   D I V I S I O N .     C O N F I G U R A T I O N   S E C T I O N .     S P E C I A L - N A M E S .  

  R E P O S I T O R Y .  

  I N P U T - O U T P U T   S E C T I O N .     D A T A   D I V I S I O N .  

  W O R K I N G - S T O R A G E   S E C T I O N .  

* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =  

*     ホ ス ト 変 数 宣 言  

* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =         E X E C   S Q L   B E G I N   D E C L A R E   S E C T I O N   E N D - E X E C .  

  0 1   S Q L S T A T E       P I C   X ( 5 ) .     0 1   S Q L M S G       P I C   X ( 1 2 8 ) .      

  0 1   S Y O P F - R E C .  

      0 2     S Y O C D       P I C   S 9 ( 9 )   C O M P - 5 .         0 2     S Y O N A       P I C   N ( 2 0 ) .  

      0 2     B A I K A       P I C   S 9 ( 9 )   C O M P - 5 .         0 2     G E N K A       P I C   S 9 ( 9 )   C O M P - 5 .    

  0 1     S - S Y O C D       P I C   S 9 ( 9 )   C O M P - 5 .  

      E X E C   S Q L   E N D   D E C L A R E   S E C T I O N   E N D - E X E C .        

  C O P Y   M S G T B L .      

  L I N K A G E       S E C T I O N .     0 1     P - S Y O H I N R E C .  

      0 2     P - S Y O C D       P I C   9 ( 5 ) .         0 2     P - S Y O N A       P I C   N ( 2 0 ) .         0 2     P - B A I K A       P I C   9 ( 8 ) .         0 2     P - G E N K A       P I C   9 ( 8 ) .       0 1     P - M s g       P I C   N ( 2 0 ) .     0 1     R - R e t u r n C o d e       B I N A R Y - L O N G .     P R O C E D U R E   D I V I S I O N   U S I N G  

      P - S Y O H I N R E C       * > 商 品 レ コ ー ド         P - M s g       * > メ ッ セ ー ジ         R E T U R N I N G  

      R - R e t u r n C o d e .   * > 戻 り 値 ( エ ラ ー コ ー ド )    

      P E R F O R M   M A I N - S E C .         P E R F O R M   E N D - S E C .         E X I T   P R O G R A M .    

  M A I N - S E C   S E C T I O N .  

*         レ コ ー ド が な か っ た 場 合 の 動 作           E X E C   S Q L  

      W H E N E V E R   N O T   F O U N D   G O   T O   : P - N O T F O U N D         E N D - E X E C .  

 

*         D B 接 続  

      E X E C   S Q L   C O N N E C T   T O   D E F A U L T   E N D - E X E C .  

5.5 データアクセスプログラムの作成 

*         接 続 確 認  

      I F   S Q L S T A T E   =   " 0 0 0 0 0 "   O R   S Q L S T A T E   =   " 0 1 0 0 0 "   T H E N         M O V E   P - S Y O C D   O F   P - S Y O H I N R E C   T O   S - S Y O C D  

       

*       S Q L 実 行         E X E C   S Q L  

      S E L E C T   S Y O C D ,   S Y O N A ,   B A I K A ,   G E N K A  

      I N T O   : S Y O C D ,   : S Y O N A ,   : B A I K A ,   : G E N K A         F R O M   S Y O P F   W H E R E   S Y O C D   =   : S - S Y O C D         E N D - E X E C  

 

*       取 得 デ ー タ の 転 記  

      I F   S Q L S T A T E   =   " 0 0 0 0 0 "   T H E N         M O V E   S Y O C D   T O   P - S Y O C D         M O V E   S Y O N A   T O   P - S Y O N A         M O V E   B A I K A   T O   P - B A I K A         M O V E   G E N K A   T O   P - G E N K A         E N D - I F  

      E N D - I F .    

  E N D - S E C   S E C T I O N .  

*         D B ク ロ ー ズ  

      E X E C   S Q L   D I S C O N N E C T   D E F A U L T   E N D - E X E C .  

*         メ ッ セ ー ジ 設 定  

      I F   R - R e t u r n C o d e   >   1   T H E N  

      M O V E   M S G - D S P ( R - R e t u r n C o d e )   T O   P - M s g         E N D - I F .  

   N O T F O U N D - S E C   S E C T I O N .     P - N O T F O U N D .  

*         商 品 コ ー ド が 見 つ か ら な か っ た 場 合 の 処 理         M O V E   5   T O   R - R e t u r n C o d e .  

      P E R F O R M   E N D - S E C .     E N D   P R O G R A M   S Y O H I N .  

„ Z A I K O . C O B

(入 出 庫 テ ー ブ ル か ら 入 出 庫 明 細 を 取 得 す る)

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  

*   プ ロ グ ラ ム 名   :   Z A I K O  

*   概 要       :   入 出 庫 テ ー ブ ル か ら 入 出 庫 明 細 を 取 得 す る 。  

*  

* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *     I D E N T I F I C A T I O N   D I V I S I O N .  

  P R O G R A M - I D .   Z A I K O .     E N V I R O N M E N T   D I V I S I O N .     C O N F I G U R A T I O N   S E C T I O N .     S P E C I A L - N A M E S .  

  R E P O S I T O R Y .  

  I N P U T - O U T P U T   S E C T I O N .    

  D A T A   D I V I S I O N .     F I L E   S E C T I O N .  

  W O R K I N G - S T O R A G E   S E C T I O N .  

5.5 データアクセスプログラムの作成 

* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =  

*     ホ ス ト 変 数 宣 言  

* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =         E X E C   S Q L   B E G I N   D E C L A R E   S E C T I O N   E N D - E X E C .  

  0 1   S Q L S T A T E       P I C   X ( 5 ) .     0 1   S Q L M S G       P I C   X ( 1 2 8 ) .      

  0 1   S Y O I O P F - R E C .  

      0 2     I O D A T E       P I C   S 9 ( 9 )   C O M P - 5 .         0 2     S Y O C D       P I C   S 9 ( 9 )   C O M P - 5 .         0 2     N O D A T E       P I C   S 9 ( 9 )   C O M P - 5 .         0 2     S Y U B A N       P I C   S 9 ( 9 )   C O M P - 5 .         0 2     T U B A N       P I C   S 9 ( 9 )   C O M P - 5 .         0 2     K U B U N       P I C   S 9 ( 9 )   C O M P - 5 .         0 2     I O S U       P I C   S 9 ( 9 )   C O M P - 5 .    

  0 1     S - S I O D A T E         P I C   S 9 ( 9 )   C O M P - 5 .     0 1     S - E I O D A T E         P I C   S 9 ( 9 )   C O M P - 5 .     0 1     S - S Y O C D       P I C   S 9 ( 9 )   C O M P - 5 .  

      E X E C   S Q L   E N D   D E C L A R E   S E C T I O N   E N D - E X E C .     0 1     W - I O D A T E       P I C   9 ( 8 ) .  

 

  0 1     W - D E N P Y O .  

      0 3     W - S Y U B A N       P I C   9 ( 8 ) .         0 3     W - T U B A N         P I C   9 ( 4 ) .  

 * - - - コ ー ド テ ー ブ ル - - -         0 1     S - C O D E .  

      0 3     S - T A N K A       P I C     X ( 4 )     V A L U E   " 0 0 0 1 " .         0 3     S - G E N K A       P I C     X ( 4 )     V A L U E   " 0 0 0 2 " .         0 3     S - M U K A       P I C     X ( 4 )     V A L U E   " 0 0 0 3 " .         0 3     S - N Y U K O       P I C     X ( 4 )     V A L U E   " 0 0 0 1 " .         0 3     S - S Y U K O       P I C     X ( 4 )     V A L U E   " 0 0 0 2 " .  

*  

      0 3     S - T A N G E N       P I C     X ( 4 )     V A L U E   " 0 0 0 0 " .         0 3     S - N Y U S Y U       P I C     X ( 4 )     V A L U E   " 0 0 0 0 " .          

* - - - 伝 票 区 分 コ ー ド テ ー ブ ル - - -         0 1     K U B U N - A R E A .  

*         0 1 〜 1 0   * *  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C "       " .  

*         1 1 〜 2 0   * *  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 売 上       売 訂     " .  

*         2 1 〜 3 0   * *  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 売 返       売 訂     " .  

*         3 1 〜 4 0   * *  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 仕 入 送 仕 状 仕 加 仕 浮 借 浮 仕 委 仕 値 増 仕 訂     " .  

*         4 1 〜 5 0   * *  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 仕 返 送 返 状 返 加 返 浮 返 浮 戻 委 戻 値 引 仕 訂     " .  

*         5 1 〜 6 0   * *  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 貸 出 持 出 社 出 預 出 持 越 展 出 振 出 他 出 出 訂     " .  

5.5 データアクセスプログラムの作成 

*         6 1 〜 7 0   * *  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 貸 戻 持 戻 社 戻 預 戻 持 戻 展 戻 振 入 他 入 入 訂     " .  

*         7 0 〜 8 0   * *  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 返 出 振 出       " .  

*         8 1 〜 9 0   * *  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 返 入 振 入       他 入 入 訂 " .  

*         9 1 〜 1 0 0 * *  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C "       " .         0 1   K U B U N - T B L   R E D E F I N E S     K U B U N - A R E A .  

      0 3     K U B U N - I D       O C C U R S   1 0 0   T I M E S .         0 5     F I L L E R       P I C     N ( 0 2 ) .    

  0 1     F I L E - S T S - A R E A .  

      0 3     F I L E - S T S 1       P I C     X ( 0 2 ) .         0 3     F I L E - S T S 2       P I C     X ( 0 6 ) .        

* - - - フ ラ グ 関 連 - - -         0 1     F L G - A R E A .  

      0 3     E N D - F L G       P I C     X ( 0 3 ) .         0 3     M E I S A I - F L G       P I C     X ( 0 3 ) .    

* - - - プ ロ グ ラ ム 作 業 領 域 - - -         0 1     W - A R E A .  

      0 3     W - K E Y .  

      0 5     W - Y       P I C     9 ( 0 4 ) .         0 5     W - M       P I C     9 ( 0 2 ) .         0 5     W - S Y O C D       P I C     9 ( 0 5 ) .         0 3     W - I O Y M D .  

      0 5     W - I O Y       P I C     9 ( 0 4 ) .         0 5     W - I O M       P I C     9 ( 0 2 ) .         0 5     W - I O D       P I C     9 ( 0 2 ) .         0 3     W - R E C C N T       P I C     9 ( 0 3 ) .    

  C O P Y   M S G T B L .        

  0 1     L I N E M A X       P I C   9 ( 0 3 )   V A L U E   1 0 .     L I N K A G E   S E C T I O N .  

  C O P Y   I O D E T A I L .      

  0 1   P - S t a r t       B I N A R Y - S H O R T .     0 1   P - C n t       P I C   9 ( 0 3 ) .     0 1   P - N e x t       P I C   9 ( 0 1 ) .     0 1   P - M s g       P I C   N ( 2 0 ) .       0 1   R - R e t u r n C o d e       B I N A R Y - L O N G .     P R O C E D U R E   D I V I S I O N   U S I N G  

      M - A R E A       * > 明 細 領 域         P - S t a r t       * > 開 始 行         P - C n t       * > 件 数  

      P - N e x t       * > 次 の レ コ ー ド が あ る か         * > ど う か ( あ る 場 合 は 1 )         P - M s g       * > メ ッ セ ー ジ  

      R E T U R N I N G  

      R - R e t u r n C o d e .   * > 戻 り 値 ( エ ラ ー コ ー ド )  

5.5 データアクセスプログラムの作成 

      P E R F O R M   I N I T - S E C .

      I F   R - R e t u r n C o d e   =   0   T H E N         P E R F O R M   M A I N - S E C         E N D - I F .  

      P E R F O R M   E N D - S E C .         E X I T   P R O G R A M .      

* - - -     I N I T - S E C   S E C T I O N .  

      M O V E   0   T O   R - R e t u r n C o d e         M O V E   S P A C E   T O   M E I S A I - F L G .         M O V E   S P A C E   T O   E N D - F L G .          

      M O V E   0   T O   W - R E C C N T .         M O V E   0   T O   P - C n t .          

* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =  

*     カ ー ソ ル を 宣 言 し ま す  

* = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =         E X E C   S Q L  

      D E C L A R E   C U R 1   C U R S O R   F O R   S E L E C T   *   F R O M   S Y O I O P F         W H E R E   ( I O D A T E   B E T W E E N   : S - S I O D A T E  

      A N D   : S - E I O D A T E )   A N D   S Y O C D   =   : S - S Y O C D           E N D - E X E C .  

       

*         D B 接 続  

      E X E C   S Q L   C O N N E C T   T O   D E F A U L T   E N D - E X E C .  

*         接 続 確 認  

      I F   S Q L S T A T E   N O T   =   " 0 0 0 0 0 "   A N D         S Q L S T A T E   N O T   =   " 0 1 0 0 0 "   T H E N         M O V E   9   T O   R - R e t u r n C o d e  

      M O V E   M S G - D S P ( R - R e t u r n C o d e )   T O   P - M s g         E X I T   P R O G R A M  

      E N D - I F .  

* - - - 入 出 庫 レ コ ー ド の 検 索 条 件 - - -         M O V E         M - S Y O C D     T O         S - S Y O C D .         M O V E         M - Y       T O         W - I O Y .         M O V E         M - M       T O         W - I O M .         M O V E         1       T O         W - I O D .         M O V E         W - I O Y M D     T O         W - I O D A T E .         M O V E         W - I O D A T E   T O         S - S I O D A T E .         M O V E         3 1       T O         W - I O D .         M O V E         W - I O Y M D     T O         W - I O D A T E .         M O V E         W - I O D A T E   T O         S - E I O D A T E .    

* - - -     E N D - S E C   S E C T I O N .  

*         D B ク ロ ー ズ  

      E X E C   S Q L   D I S C O N N E C T   D E F A U L T   E N D - E X E C .  

*         メ ッ セ ー ジ 設 定  

      I F   R - R e t u r n C o d e   >   1   T H E N  

      M O V E   M S G - D S P ( R - R e t u r n C o d e )   T O   P - M s g         E N D - I F .    

 

5.5 データアクセスプログラムの作成 

* - - -     F E T C H - S E C   S E C T I O N .  

*         フ ェ ッ チ  

      E X E C   S Q L   F E T C H   C U R 1   I N T O   : S Y O I O P F - R E C   E N D - E X E C .         I F   S Q L S T A T E   =   " 0 0 0 0 0 "   T H E N  

*       読 込 件 数 カ ウ ン ト ア ッ プ             C O M P U T E   W - R E C C N T   =   W - R E C C N T   +   1         E L S E  

*       レ コ ー ド が な い 場 合 の 動 作             I F   S Q L S T A T E   =   " 0 2 0 0 0 "   T H E N         M O V E   " E N D "   T O   M E I S A I - F L G         E L S E  

      M O V E   " E R R "   T O   E N D - F L G         E N D - I F  

      E N D - I F .      

* - - -     M A I N - S E C   S E C T I O N .  

*         カ ー ソ ル オ ー プ ン  

      E X E C   S Q L   O P E N   C U R 1   E N D - E X E C .         P E R F O R M   F E T C H - S E C .  

*         ル ー プ  

      P E R F O R M   U N T I L   ( E N D - F L G   =   " E R R " )   O R         ( M E I S A I - F L G   =   " E N D " )   O R         ( M E I S A I - F L G   =   " M A X " )         I F   W - R E C C N T   > =   P - S t a r t   T H E N         C O M P U T E   P - C n t   =   P - C n t   +   1         P E R F O R M   C O D E - S E C  

      E N D - I F  

*       明 細 行 数 を 越 え た ら 終 了         I F   P - C n t   > =   L I N E M A X   T H E N         M O V E   " M A X "   T O   M E I S A I - F L G  

*       最 後 に 1 件 読 ん で 次 の 行 が あ る か 確 認 す る         E N D - I F  

      P E R F O R M   F E T C H - S E C         E N D - P E R F O R M .  

*         カ ー ソ ル ク ロ ー ズ  

      E X E C   S Q L   C L O S E   C U R 1   E N D - E X E C .    

      I F   M E I S A I - F L G   =   " M A X "   T H E N         M O V E   1   T O   P - N e x t  

      E N D - I F  

      I F   M E I S A I - F L G   =   " E N D "   A N D   P - C n t   =   0   T H E N  

      * > 商 品 コ ー ド は あ っ た が 、 該 当 す る 年 月 の レ コ ー ド な し         M O V E   8   T O   R - R e t u r n C o d e  

      E N D - I F .    

* - - -     C O D E - S E C   S E C T I O N .  

*         区 分 コ ー ド 処 理    

      E V A L U A T E   K U B U N   O F   S Y O I O P F - R E C      

      W H E N         Z E R O         C O N T I N U E      

*         * * *   納 品 系 処 理 区 分 ( 1 1 〜 2 9 )         W H E N         1 1     T H R U     1 9  

      E V A L U A T E       K U B U N   O F   S Y O I O P F - R E C         W H E N         1 1  

      M O V E         S - T A N K A     T O         S - T A N G E N         M O V E         S - S Y U K O     T O         S - N Y U S Y U  

5.5 データアクセスプログラムの作成 

      W H E N         1 9

      M O V E         S - M U K A       T O         S - T A N G E N         M O V E         S - S Y U K O     T O         S - N Y U S Y U         E N D - E V A L U A T E  

   

      W H E N         2 1     T H R U     2 9  

      E V A L U A T E         K U B U N   O F   S Y O I O P F - R E C         W H E N         2 1  

      M O V E         S - T A N K A     T O         S - T A N G E N         M O V E         S - N Y U K O     T O         S - N Y U S Y U         W H E N         O T H E R  

      M O V E         S - M U K A       T O         S - T A N G E N         M O V E         S - N Y U K O     T O         S - N Y U S Y U         E N D - E V A L U A T E  

   

*         * * * 仕 入 系 処 理 区 分 ( 3 1 〜 4 9 )         W H E N         3 1     T H R U     3 9  

      E V A L U A T E       K U B U N   O F   S Y O I O P F - R E C         W H E N         3 9  

      M O V E         S - M U K A       T O         S - T A N G E N         M O V E         S - N Y U K O     T O         S - N Y U S Y U         W H E N         O T H E R  

      M O V E         S - G E N K A     T O         S - T A N G E N         M O V E         S - N Y U K O     T O         S - N Y U S Y U         E N D - E V A L U A T E  

   

      W H E N         4 1     T H R U     4 9  

      E V A L U A T E         K U B U N   O F   S Y O I O P F - R E C         W H E N         4 9  

      M O V E         S - M U K A       T O         S - T A N G E N         M O V E         S - S Y U K O     T O         S - N Y U S Y U         W H E N         O T H E R  

      M O V E         S - G E N K A     T O         S - T A N G E N         M O V E         S - S Y U K O     T O         S - N Y U S Y U         E N D - E V A L U A T E  

   

*         * * *   社 内 良 品 系 処 理 区 分 ( 5 1 〜 6 9 )         W H E N         5 1     T H R U     5 9  

      E V A L U A T E         K U B U N   O F   S Y O I O P F - R E C         W H E N         5 1  

      M O V E         S - T A N K A     T O         S - T A N G E N         M O V E         S - S Y U K O     T O         S - N Y U S Y U         W H E N         5 2  

      M O V E         S - T A N K A     T O         S - T A N G E N         M O V E         S - S Y U K O     T O         S - N Y U S Y U         W H E N         5 9  

      M O V E         S - M U K A       T O         S - T A N G E N         M O V E         S - S Y U K O     T O         S - N Y U S Y U         W H E N         O T H E R  

      M O V E         S - T A N K A     T O         S - T A N G E N         M O V E         S - S Y U K O     T O         S - N Y U S Y U         E N D - E V A L U A T E  

*  

      W H E N         6 1     T H R U     6 9  

      E V A L U A T E         K U B U N   O F   S Y O I O P F - R E C         W H E N         6 1  

      M O V E         S - T A N K A     T O         S - T A N G E N         M O V E         S - N Y U K O     T O         S - N Y U S Y U  

5.5 データアクセスプログラムの作成 

      W H E N         6 2

      M O V E         S - T A N K A     T O         S - T A N G E N         M O V E         S - N Y U K O     T O         S - N Y U S Y U         W H E N         6 9  

      M O V E         S - M U K A       T O         S - T A N G E N         M O V E         S - N Y U K O     T O         S - N Y U S Y U         W H E N         O T H E R  

      M O V E         S - T A N K A     T O         S - T A N G E N         M O V E         S - N Y U K O     T O         S - N Y U S Y U         E N D - E V A L U A T E  

   

*         * * * 社 外 不 良 品 系 処 理 区 分 ( 7 1 〜 8 9 )         W H E N         7 1     T H R U     7 9  

      E V A L U A T E         K U B U N   O F   S Y O I O P F - R E C         W H E N         7 1     T H R U     7 2  

      M O V E         S - T A N K A     T O         S - T A N G E N         M O V E         S - S Y U K O     T O         S - N Y U S Y U         W H E N         7 9  

      M O V E         S - M U K A       T O         S - T A N G E N         M O V E         S - S Y U K O     T O         S - N Y U S Y U         W H E N         O T H E R  

      M O V E         S - T A N K A     T O         S - T A N G E N         M O V E         S - S Y U K O     T O         S - N Y U S Y U         E N D - E V A L U A T E  

*        W H E N         8 1     T H R U     8 9  

      E V A L U A T E         K U B U N   O F   S Y O I O P F - R E C         W H E N         8 1     T H R U     8 2  

      M O V E         S - T A N K A     T O         S - T A N G E N         M O V E         S - N Y U K O     T O         S - N Y U S Y U         W H E N         8 9  

      M O V E         S - M U K A       T O         S - T A N G E N         M O V E         S - N Y U K O     T O         S - N Y U S Y U         W H E N         O T H E R  

      M O V E         S - T A N K A     T O         S - T A N G E N         M O V E         S - N Y U K O     T O         S - N Y U S Y U         E N D - E V A L U A T E  

      E N D - E V A L U A T E      

      M O V E   I O D A T E   O F   S Y O I O P F - R E C   T O   M - N O D A T E ( P - C n t )         M O V E   S Y U B A N   O F   S Y O I O P F - R E C   T O   W - S Y U B A N  

      M O V E   T U B A N   O F   S Y O I O P F - R E C     T O   W - T U B A N  

      M O V E   W - D E N P Y O       T O   M - D E N B A N ( P - C n t )         M O V E   K U B U N   O F   S Y O I O P F - R E C     T O   M - K U B U N ( P - C n t )         M O V E   K U B U N - I D ( K U B U N   O F   S Y O I O P F - R E C )  

      T O   M - K U B U N N ( P - C n t )    

      E V A L U A T E   S - T A N G E N         W H E N   S - T A N K A  

      M O V E   M - T A N K A     T O   M - K A K A K U ( P - C n t )         W H E N   S - G E N K A  

      M O V E   M - G E N K A     T O   M - K A K A K U ( P - C n t )         W H E N   S - M U K A  

      M O V E   0       T O   M - K A K A K U ( P - C n t )         E N D - E V A L U A T E  

 

5.5 データアクセスプログラムの作成 

      I F   S - N Y U S Y U   =   S - N Y U K O   T H E N

      M O V E   I O S U   O F   S Y O I O P F - R E C   T O   M - I S U ( P - C n t )         E L S E  

      M O V E   I O S U   O F   S Y O I O P F - R E C   T O   M - O S U ( P - C n t )         E N D - I F  

  E N D   P R O G R A M   Z A I K O .  

¾ 手 順2

手 順1の プ ロ グ ラ ム で 使 用 す る 登 録 集 を コ ー デ ィ ン グ し ま す 。 作 成 す る 登 録 集 は 、 次 の2本 で す 。

9 I O D E TA I L . C B L 9 M S G T B L . C B L

ソ リ ュ ー シ ョ ン エ ク ス プ ロ ー ラ よ り[ St o c k L i b r a r y ]の[登 録 集 フ ァ イ ル]フ ォ ル ダ を 右 ク リ ッ ク し 、[追 加] - [新 し い 項 目 の 追 加]で 表 示 さ れ る ダ イ ア ロ グ ボ ッ ク ス 内 で[テ ン プ レ ー ト]よ り 「 登 録 集 」 を 選 択 し 、 フ ァ イ ル 名 を 入 力 し て く だ さ い 。

2 本 の 登 録 集 を 、 次 の よ う に コ ー デ ィ ン グ し ま す 。

„ I O D E TA I L . C B L   0 1     M - A R E A .  

      0 3     M - Y       P I C     9 ( 0 4 ) .         0 3     M - M       P I C     9 ( 0 2 ) .         0 3     M - S Y O C D       P I C     9 ( 0 5 ) .         0 3     M - T A N K A       P I C     9 ( 0 8 ) .         0 3     M - G E N K A       P I C     9 ( 0 8 ) .         * > 明 細 1 0 レ コ ー ド  

      0 3     M - D E N P Y O   O C C U R S   1 0 .  

      0 5     M - N O D A T E       P I C     9 ( 0 8 ) .         0 5     M - D E N B A N       P I C     9 ( 1 2 ) .         0 5     M - K U B U N       P I C     9 ( 0 2 ) .         0 5     M - K U B U N N       P I C     N ( 0 2 ) .         0 5     M - K A K A K U       P I C     9 ( 0 8 ) .         0 5     M - I S U       P I C     9 ( 0 6 ) .         0 5     M - O S U       P I C     9 ( 0 6 ) .  

5.5 データアクセスプログラムの作成 

„ M S G T B L . C B L

以 上 で 、 ク ラ ス ラ イ ブ ラ リ( St o c k L i b r a r y )を 構 成 す る フ ァ イ ル の 編 集 は 完 了 で す 。

* メ ッ セ ー ジ テ ー ブ ル -  -  -  0 1 -  -  M S G - A R E A . - 

*         N O . 0 1  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C "       " .  

*         N O . 0 2  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 社 員 コ ー ド に 、 間 違 い が あ り ま す       " .  

*         N O . 0 3  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " パ ス ワ ー ド に 、 間 違 い が あ り ま す       " .  

*         N O . 0 4  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 年 月 の 値 に 誤 り が あ り ま す       " .  

*         N O . 0 5  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 商 品 コ ー ド に 、 間 違 い が あ り ま す 。         " .  

*         N O . 0 6  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 前 頁 は あ り ま せ ん       " .  

*         N O . 0 7  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 次 頁 は あ り ま せ ん       " .  

*         N O . 0 8  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " 該 当 の 入 出 庫 明 細 が あ り ま せ ん       " .  

*         N O . 0 9  

      0 3     F I L L E R       P I C     N ( 2 0 )   V A L U E         N C " デ ー タ ベ ー ス に ア ク セ ス で き ま せ ん         " .  

* - -      

      0 1   M S G - T B L       R E D E F I N E S     M S G - A R E A .         0 3     M S G - D S P   O C C U R S   9   T I M E S .  

      0 5     F I L L E R       P I C   N ( 2 0 ) .    

¾ 手 順3

手 順1、2で 作 成 し た ク ラ ス ラ イ ブ ラ リ( St o c k L i b r a r y )の 動 作 を 検 証 す る た め 、 そ れ ぞ れ の サ ブ ル ー チ ン を 呼 び 出 す コ ン ソ ー ル ア プ リ ケ ー シ ョ ン を 別 々 の ソ リ ュ ー シ ョ ン で 作 成 し ま す 。 作 成 す る コ ン ソ ー ル ア プ リ ケ ー シ ョ ン は 次 の3本 で す 。

9 Te s t S YA I N . c o b ( Te s t S YA I N . c o b p r o j ) 9 Te s t S Y O H I N ( Te s t S Y O H I N . c o b p r o j ) 9 Te s t Z A I K O ( Te s t Z A I K O . c o b p r o j )

5.5 データアクセスプログラムの作成 

コ ン ソ ー ル ア プ リ ケ ー シ ョ ン の プ ロ ジ ェ ク ト 作 成 手 順 に つ い て は 、 第 2章 の[ 2 . 4 . 3 プ ロ ジ ェ ク ト の 作 成]を 参 考 に 作 成 し 、 次 の ソ ー ス リ ス ト を も と に コ ー デ ィ ン グ を 行 っ て く だ さ い 。

„ Te s t S YA I N . c o b

  I D E N T I F I C A T I O N   D I V I S I O N .

  P R O G R A M - I D .   P r o g r a m 1   A S   " T e s t S Y A I N . P r o g r a m 1 " .     E N V I R O N M E N T   D I V I S I O N .  

  C O N F I G U R A T I O N   S E C T I O N .     S P E C I A L - N A M E S .  

  R E P O S I T O R Y .     D A T A   D I V I S I O N .  

  W O R K I N G - S T O R A G E   S E C T I O N .  

  0 1     W K - E m p l o y e e C o d e       P I C   N ( 0 6 ) .     0 1     W K - P a s s w o r d       P I C   N ( 0 6 ) .     0 1     W K - M s g       P I C   N ( 2 0 ) .     0 1     W K - R e t u r n C o d e       B I N A R Y - L O N G .     P R O C E D U R E   D I V I S I O N .  

*         社 員 コ ー ド と パ ス ワ ー ド の 設 定  

      M O V E   N C " 2 0 0 0 0 7 "   T O   W K - E m p l o y e e C o d e .         M O V E   N C " 2 0 0 0 0 7 "   T O   W K - P a s s w o r d .    

      D I S P L A Y   " 社 員 コ ー ド : "     W K - E m p l o y e e C o d e         "   パ ス ワ ー ド : "   W K - P a s s w o r d         " で 認 証 を 行 い ま す 。 "    

*         認 証 用 の S Y A I N プ ロ グ ラ ム 呼 び 出 し  

      C A L L   " S Y A I N "   U S I N G   W K - E m p l o y e e C o d e   W K - P a s s w o r d         W K - M s g  

      R E T U R N I N G   W K - R e t u r n C o d e .         I F   W K - R e t u r n C o d e     =     0   T H E N  

*       認 証 O K  

      D I S P L A Y   " 認 証 に 成 功 し ま し た "  

      E L S E  

      D I S P L A Y   " 認 証 に 失 敗 し ま し た :   "   W K - M s g         E N D - I F  

  E N D   P R O G R A M   P r o g r a m 1 .    

„ Te s t S Y O H I N . C O B

  I D E N T I F I C A T I O N   D I V I S I O N .

  P R O G R A M - I D .   P r o g r a m 1   A S   " T e s t S Y O H I N . P r o g r a m 1 " .     E N V I R O N M E N T   D I V I S I O N .  

  C O N F I G U R A T I O N   S E C T I O N .     S P E C I A L - N A M E S .  

  R E P O S I T O R Y .     D A T A   D I V I S I O N .  

  W O R K I N G - S T O R A G E   S E C T I O N .     0 1     商 品 レ コ ー ド .  

      0 2     商 品 コ ー ド     P I C   9 ( 5 ) .         0 2     商 品 名       P I C   N ( 2 0 ) .         0 2     売 価       P I C   9 ( 8 ) .         0 2     原 価       P I C   9 ( 8 ) .  

5.5 データアクセスプログラムの作成 

  0 1   W - M s g       P I C   N ( 2 0 ) .   0 1   W - R e t u r n C o d e       B I N A R Y - L O N G .     P R O C E D U R E   D I V I S I O N .  

*         商 品 コ ー ド 設 定  

      M O V E   1 0 0 2 4   T O   商 品 コ ー ド .  

      D I S P L A Y   " 商 品 コ ー ド : "   商 品 コ ー ド         "   の 情 報 を 検 索 し ま す 。 "    

*         商 品 レ コ ー ド 検 索      

      C A L L   " S Y O H I N "   U S I N G   商 品 レ コ ー ド   W - M s g         R E T U R N I N G   W - R e t u r n C o d e .          

      D I S P L A Y   商 品 コ ー ド   "   "   商 品 名   "   "   売 価   "   "   原 価     E N D   P R O G R A M   P r o g r a m 1 .  

„ Te s t Z A I K O . c o b

  I D E N T I F I C A T I O N   D I V I S I O N .

  P R O G R A M - I D .   P r o g r a m 1   A S   " T e s t Z A I K O . P r o g r a m 1 " .     E N V I R O N M E N T   D I V I S I O N .  

  C O N F I G U R A T I O N   S E C T I O N .     S P E C I A L - N A M E S .  

  R E P O S I T O R Y .     D A T A   D I V I S I O N .  

  W O R K I N G - S T O R A G E   S E C T I O N .     C O P Y   I O D E T A I L .  

  0 1   W - M s g       P I C   N ( 2 0 ) .     0 1   W - N e x t       P I C   9 ( 0 1 ) .     0 1   W - R e t u r n C o d e       B I N A R Y - L O N G .     0 1   W - C n t       P I C   9 ( 0 3 ) .       0 1   W - S t a r t       B I N A R Y - S H O R T .     0 1   W - I D X       B I N A R Y - L O N G .     P R O C E D U R E   D I V I S I O N .  

      I N I T I A L I Z E   M - A R E A          

*         商 品 コ ー ド 設 定  

      M O V E   1 0 0 2 4   T O   M - S Y O C D .  

*         日 付 設 定  

      M O V E   2 0 0 4   T O   M - Y .         M O V E   4   T O   M - M .  

*         開 始 位 置  

      M O V E   1   T O   W - S t a r t .  

      D I S P L A Y   M - Y   " 年 "   M - M   " 月   商 品 コ ー ド : "   M - S Y O C D         " の 入 出 庫 情 報 を 検 索 し ま す 。 "  

*         入 出 庫 検 索  

      C A L L   " Z A I K O "   U S I N G   M - A R E A   W - S t a r t         W - C n t   W - N e x t   W - M s g         R E T U R N I N G   W - R e t u r n C o d e .    

      P E R F O R M   V A R Y I N G   W - I D X     F R O M   1   B Y   1         U N T I L   W - I D X   >   1 0  

      D I S P L A Y   M - N O D A T E ( W - I D X )   "   "   M - D E N B A N ( W - I D X )         "   "   M - K U B U N ( W - I D X )     "   "   M - K U B U N N ( W - I D X )         "   "   M - I S U ( W - I D X )         "   "   M - O S U ( W - I D X )         E N D - P E R F O R M .  

  E N D   P R O G R A M   P r o g r a m 1 .    

5.5 データアクセスプログラムの作成 

¾ 手 順4

手 順3で 作 成 し た 各 コ ン ソ ー ル ア プ リ ケ ー シ ョ ン の ソ リ ュ ー シ ョ ン に 手 順2で 作 成 し た ク ラ ス ラ イ ブ ラ リ( St o c k L i b r a r y )の プ ロ ジ ェ ク ト を 追 加 し 、 コ ン ソ ー ル ア プ リ ケ ー シ ョ ン か ら ク ラ ス ラ イ ブ ラ リ を 呼 び 出 せ る よ う 、 さ ら に[参 照 設 定]に 追 加 し ま す 。

[ソ リ ュ ー シ ョ ン エ ク ス プ ロ ー ラ]よ り ソ リ ュ ー シ ョ ン を 右 ク リ ッ ク し 、

[追 加] - [既 存 の プ ロ ジ ェ ク ト]を 選 択 し 、[既 存 プ ロ ジ ェ ク ト の 追 加]ダ

イ ア ロ グ ボ ッ ク ス よ り 「St o c k L i b r a r y. c o b p r o j」 を 選 択 し ま す 。 下 図 は 、 プ ロ ジ ェ ク ト の 追 加 イ メ ー ジ で す 。

次 に 、 ク ラ ス ラ イ ブ ラ リ( St o c k L i b r a r y )の 参 照 設 定 を 、 各 コ ン ソ ー ル ア プ リ ケ ー シ ョ ン で 行 い ま す 。

下 図 の よ う に 、[ソ リ ュ ー シ ョ ン エ ク ス プ ロ ー ラ]よ り 、 コ ン ソ ー ル ア プ リ ケ ー シ ョ ン の プ ロ ジ ェ ク ト(例 :Te x t S Y O H I N . c o b p r o j )内 の[参 照 設 定]フ ォ ル ダ を 右 ク リ ッ ク し 、[参 照 の 追 加]を 選 択 し ま す 。 手 順 に 従 っ て 追 加 し て く だ さ い 。

5.5 データアクセスプログラムの作成 

2

「TestSYAIN」プロジェクト の[参照設定]フォルダを 右クリックし[参照の追加]

を選択

[プロジェクト]タブ を開き [StockLibrary] を選択

参照設定に[StockLibrary] が 追加される

図 5 . 5 . 4   ク ラ ス ラ イ ブ ラ リ ( S t o c k L i b r a r y ) の 参 照 設 定 手 順  

ドキュメント内 NetCOBOL for .NET 応用編 (ページ 30-46)

関連したドキュメント