netcobol for linux v7.2 使用手引書 - 富士通のソフト...

817
J2UZ-4000-01 NetCOBOL for Linux V7.2 使用手引書

Upload: dangdieu

Post on 10-Mar-2018

582 views

Category:

Documents


19 download

TRANSCRIPT

  • J2UZ-4000-01

    NetCOBOL for Linux V7.2

  • i

    LinuxNetCOBOLCOBOL

    COBOL

    COBOLCOBOL

    NetCOBOLCOBOL

    COBOL

    OS

    1

    2

    COBOL

    3

    COBOL

    4

    COBOL

    5

    6

    7

    8

    9

    10 ACCEPTDISPLAY

    ACCEPTDISPLAY

    11 SORTMERGE

    SORTMERGE()

    12

    13

  • ii

    14

    15

    16

    17

    18 Unicode

    UnicodeCOBOL

    19

    20 Web

    COBOLWeb

    21 CORBA

    COBOLCORBA/

    22 (ODBC)

    ODBC

    23

    24

    25

    UNIXWindows

    A

    COBOL

    B

    C

    COBOL

    D

    COBOL

    E

    F

    G COBOL

    COBOL

    H

  • iii

    I

    J

    K ld

    COBOLld

    L make

    COBOLmake

    M

    N

    1

    COBOL 24

    COBOL 512

    1316

    2324

    COBOL

    LinuxNetCOBOL Web

    LinuxCOBOL Web

    LinuxCOBOL

    Linux

    LinuxMeFt

    LinuxMeFt/Web

    WindowsFORM

    WindowsFORM

    WindowsPowerFORM

    Interstage Application Server CORBA

    Interstage Application Server

    OS

    COBOL

    []

    $ Bourne

    % C

  • iv

    PROGRAM-ID. .

    PROGRAM-ID. SAMPLE1.

    { |}

    { }1

    _()

    [ ] [ ]

    COBOL

    Interstage Application ServerInterstage

    InterstageV4INTERSTAGE

    1 COBOL J2X0-5600-01

    2 NetCOBOL J2UZ-4000-01

    LinuxLinus Torvalds

    UNIX

    X Window System

    Red HatRPMRed HatRed Hat, Inc.

    2004 1

    2004 1

    All Rights Reserved,Copyright(C) 2003-2004

  • v

    COBOL(COnference on DAta SYstems Languages)

    COBOLCOBOL

    COBOL

    FLOW-MATIC(),Programming for the Univac(R) I and II, Data

    Automation Systems, 1958,1959,.

    IBM Commercial Translator, F28-8013,IBM 1959,.

    FACT, 27A5260-2760,1960,.

  • vi

  • vii

    1 ......................................................................................... 1 1.1 ......................................................................................... 2 1.1.1 COBOL.............................................................................. 2 1.1.2 ......................................... 2

    1.2 ..................................................................................... 4 1.2.1 ................................................................................. 4

    1.3 ..................................................................................... 6 2 ........................................................................... 9 2.1 ...................................................................... 10 2.1.1 .................................................................. 10 2.1.2 ........................................................................ 11

    2.2 ............................................................................ 12 2.3 .................................................................................. 13

    3 .................................................................... 15 3.1 ................................................................................ 16 3.1.1 ................................................................ 16 3.1.2 ................................................................................ 17 3.1.3 (COPY).............................................. 18 3.1.4 ...................................... 20 3.1.5 .......................................... 21 3.1.6 COBOL................................................................... 21

    3.2 .................................................................... 26 3.2.1 .................................................................................... 26 3.2.2 .............................................................. 26 3.2.3 .................................................. 29 3.2.4 ............................................ 30 3.2.5 ........................................ 30

    3.3 cobol............................................................................... 32 3.3.1 .................................................................. 32 3.3.2 ................................................................ 37 3.3.3 cobol................................................................... 38

    4 ............................................................................ 41 4.1 .............................................................................. 42 4.1.1 ................................................................................ 42 4.1.2 ...................................................................... 43 4.1.3 .............................................................. 48

    4.2 .................................................................................... 52 4.2.1 .................................................................... 52 4.2.2 .............................................................. 52 4.2.3 ........................................................ 53

    4.3 .............................................................. 55 4.4 .............................................................................. 56 4.5 .................................................................................... 57

    5 ........................................................................ 65 5.1 .......................................................................... 66 5.2 TRACE........................................................................... 68 5.2.1 ...................................................................... 68

  • viii

    5.2.2 ............................................................................ 68 5.2.3 ................................................................................ 70

    5.3 CHECK........................................................................... 71 5.3.1 ...................................................................... 71 5.3.2 .......................................................................... 71 5.3.3 CHECK....................................................................... 73 5.3.4 ................................................................................ 77

    5.4 COUNT........................................................................... 79 5.4.1 ...................................................................... 79 5.4.2 COUNT............................................................................... 79 5.4.3 COUNT................................................. 83 5.4.4 ................................................................................ 83

    6 ................................................................................ 85 6.1 .............................................................................. 86 6.1.1 .................................................................... 86 6.1.2 .......................................................................... 88 6.1.3 ...................................................................... 89

    6.2 .................................................................. 91 6.2.1 ................................................................ 91 6.2.2 ...................................................... 92 6.2.3 ................................................................ 94

    6.3 ........................................................................ 96 6.3.1 ...................................................................... 96 6.3.2 ............................................................ 96 6.3.3 ...................................................................... 97 6.3.4 ................................................................................ 99

    6.4 ....................................................................... 100 6.4.1 ..................................................................... 100 6.4.2 ........................................................... 102 6.4.3 ..................................................................... 102

    6.5 ....................................................................... 108 6.5.1 ..................................................................... 108 6.5.2 ........................................................... 110 6.5.3 ..................................................................... 111

    6.6 ........................................................................... 117 6.6.1 AT END............................................................................. 117 6.6.2 INVALID KEY........................................................................ 117 6.6.3 FILE STATUS.......................................................................... 117 6.6.4 ......................................................................... 118 6.6.5 ................................................... 118

    6.7 ......................................................................... 120 6.7.1 ....................................................................... 120 6.7.2 ..................................................................... 123 6.7.3 ..................................................................... 124

    6.8 ....................................................................... 128 6.8.1 ..................................................................... 130 6.8.2 ................................................................... 131 6.8.3 ............................................................. 132 6.8.4 COBOL.......................................................... 133

    7 ................................................................................... 135 7.1 ............................................................................. 136 7.1.1 ....................................................................... 136

  • ix

    7.1.2 ............................................................................... 138 7.1.3 ............................................................................... 138 7.1.4 ......................................................................... 142 7.1.5 ....................................................................... 145 7.1.6 FCB.................................................................................... 149 7.1.7 ............................................................. 151 7.1.8 ............................................................................. 152 7.1.9 ....................................................................... 152 7.1.10 .......................................................................... 155 7.1.11 /................................................... 156 7.1.12 ...................................................................... 156 7.1.13 .............................................................. 157 7.1.14 I/S........................................................... 158 7.1.15 Unicode(UTF-8)............................................................ 162

    7.2 ............................................................... 164 7.2.1 ................................................................................... 164 7.2.2 ....................................................................... 164 7.2.3 ............................................................... 166 7.2.4 ....................................................................... 166

    7.3 FCB...................................................... 168 7.3.1 ................................................................................... 168 7.3.2 ....................................................................... 169 7.3.3 ............................................................... 171 7.3.4 ....................................................................... 171

    7.4 ....................................................... 174 7.4.1 ................................................................................... 174 7.4.2 ....................................................................... 178 7.4.3 ............................................................... 181 7.4.4 ....................................................................... 181

    7.5 ()............................................................. 183 7.5.1 ................................................................................... 183 7.5.2 ............................................................................... 184 7.5.3 ....................................................................... 184 7.5.4 ....................................................................... 186 7.5.5 ............................................................... 188 7.5.6 ............................................................. 188 7.5.7 ....................................................................... 189

    8 ......................................................................... 191 8.1 ................................................................... 192 8.2 ()............................................................... 193 8.2.1 ................................................................................... 193 8.2.2 ............................................................................... 193 8.2.3 ............................................................................... 194 8.2.4 ....................................................................... 194 8.2.5 ....................................................................... 196 8.2.6 ............................................................... 199 8.2.7 ........................................................... 199 8.2.8 ....................................................................... 200

    9 ........................................... 201 9.1 ........................................................................... 202 9.1.1 COBOL.................................................................... 202 9.1.2 ..................................................................... 205

  • x

    9.2 COBOLCOBOL............................................... 211 9.2.1 ............................................................................. 211 9.2.2 ............................................................................... 211 9.2.3 ........................................................... 211 9.2.4 ....................................................................... 211 9.2.5 ........................................................................... 213 9.2.6 ............................................................................. 215 9.2.7 ......................................................................... 216 9.2.8 ............................................................................... 217

    9.3 C.................................................................. 219 9.3.1 COBOLC........................................... 219 9.3.2 CCOBOL........................................... 222 9.3.3 ......................................................................... 224 9.3.4 ....................................................................... 226 9.3.5 ............................................................................... 228

    10 ACCEPTDISPLAY........................................................... 231 10.1 .................................................................................. 232 10.1.1 .................................................................................. 232 10.1.2 .............................................................. 232 10.1.3 (stdin/stdout).................................... 233 10.1.4 (stderr)...................................... 234 10.1.5 .............................................................. 235 10.1.6 ............................................................ 237

    10.2 .................................................................... 239 10.2.1 .................................................................................. 239 10.2.2 ...................................................................... 239 10.2.3 .............................................................. 241 10.2.4 ...................................................................... 241

    10.3 ........................................................................ 242 10.3.1 .................................................................................. 242 10.3.2 ...................................................................... 242 10.3.3 .............................................................. 244 10.3.4 ...................................................................... 244

    11 SORTMERGE............................................... 245 11.1 .................................................................. 246 11.2 ............................................................................ 247 11.2.1 ...................................................................... 247 11.2.2 ...................................................................... 247 11.2.3 .............................................................. 250 11.2.4 ...................................................................... 250

    11.3 ............................................................................ 251 11.3.1 ...................................................................... 251 11.3.2 ...................................................................... 252 11.3.3 .............................................................. 254 11.3.4 ...................................................................... 254

    12 .................................................... 255 12.1 SD.............................................................................. 256 12.2 ...................................................................... 257 12.2.1 .................................................................................. 257 12.2.2 ...................................................................... 257 12.2.3 .............................................................. 258 12.2.4 ...................................................................... 258

  • xi

    12.3 ADDRLENG................................................................ 259 12.3.1 .................................................................................. 259 12.3.2 ...................................................................... 259 12.3.3 .............................................................. 259 12.3.4 ...................................................................... 259

    12.4 PERFORM........................................................... 260 12.4.1 .................................................................................. 260 12.4.2 ...................................................................... 260 12.4.3 .............................................................. 260 12.4.4 ...................................................................... 260

    13 .......................................................... 261 13.1 .............................................................. 262 13.1.1 .................................................................. 262 13.1.2 ............................................................ 262 13.1.3 .......................................................................... 262 13.1.4 .......................................................................... 263 13.1.5 ................................................................ 264

    13.2 .......................................................... 266 13.2.1 .................................................................. 266 13.2.2 .................................................. 267 13.2.3 ...................................................................... 268 13.2.4 .................................................................................. 268 13.2.5 ........................................................................ 271

    13.3 ................................................................ 273 14 ...................................... 275 14.1 ................................................................................ 276 14.1.1 ............................................................................ 276 14.1.2 ........................................................................ 278 14.1.3 ...................................................................... 279 14.1.4 .......................................................................... 281

    14.2 ............................................................ 284 14.2.1 ...................................................................... 284 14.2.2 .................................................................... 288

    14.3 ...................................................................................... 290 14.3.1 ...................................................................... 290 14.3.2 FJBASE.......................................................................... 293 14.3.3 ...................................................................... 295

    14.4 ...................................................................................... 297 14.4.1 ............................................................................ 297 14.4.2 .................................................... 299 14.4.3 ............................................ 300

    14.5 ................................................................................ 302 14.5.1 .............................................................. 302 14.5.2 .......................................................... 303

    14.6 ............................................................................ 305 14.6.1 .................................................................... 305 14.6.2 .............................................................. 305 14.6.3 SUPER....................................................... 308 14.6.4 SELF........................................................ 308

    14.7 .......................................................................... 311 14.7.1 PROTOTYPE............................................................... 311 14.7.2 .............................................................................. 313

  • xii

    14.7.3 ............................................................................ 314 14.7.4 .................................................................... 316 14.7.5 PROPERTY............................................................................ 317 14.7.6 .................................................. 321 14.7.7 ........................................................................ 322 14.7.8 ........................................................................ 324

    15 .................................. 331 15.1 .................................................................................. 332 15.1.1 .................................................................................. 332 15.1.2 ...................................................................... 332 15.1.3 RAISE......................................................................... 333 15.1.4 RAISINGEXIT............................................................. 334

    15.2 C++..................................................................... 336 15.2.1 .................................................................................. 336 15.2.2 C++......................................................................... 336 15.2.3 C++......................................................................... 336 15.2.4 C++............................................................... 339 15.2.5 COBOL....................................................................... 341 15.2.6 .................................................................... 341

    15.3 ...................................................................... 345 15.3.1 .............................................................. 345 15.3.2 .................................................................................. 345 15.3.3 ........................................................................ 345 15.3.4 ...................................................... 346 15.3.5 /............................................................... 349 15.3.6 ............................................................................ 351

    15.4 ANY LENGTH...................................................... 353 15.4.1 .................................................................... 353 15.4.2 ANY LENGTH.................................................................... 354

    16 .................................................... 357 16.1 .............................................. 358 16.2 .................................................................................. 359 16.3 .............................................................................. 360 16.4 ...................................................................... 361 16.5 ............................................................................ 363 16.5.1 .................................................................. 363 16.5.2 .................................................................. 363

    16.6 .................................................................................. 369 16.6.1 ........................................................ 369 16.6.2 ........................................................ 373

    16.7 ................................................................................ 376 16.7.1 .............................................................. 376 16.7.2 ...................................................... 380 16.7.3 ............................................ 380 16.7.4 ........................................................ 380

    16.8 .............................................................................. 384 16.9 .......................................................................... 385 16.9.1 ................................................................ 385 16.9.2 .................................................. 385

    17 ............................................................................ 391 17.1 ...................................................................................... 392 17.1.1 .................................................................................. 392

  • xiii

    17.2 .................................................................. 393 17.2.1 .......................................................................... 393 17.2.2 .................................................. 393 17.2.3 .................................................................. 394

    17.3 COBOL..................................................................... 396 17.3.1 .................................................................... 396 17.3.2 ........................................ 398

    17.4 .................................................................... 406 17.4.1 ............................................................................ 406 17.4.2 .............................................................................. 406 17.4.3 COBOL................................................................... 408

    17.5 ............................................................................ 414 17.5.1 .................................................................... 414 17.5.2 ...................................................................... 414 17.5.3 ........................................................................ 417 17.5.4 DISPLAYACCEPT......................................................... 417 17.5.5 .............................................. 420 17.5.6 ............................................................ 420 17.5.7 ........................................................................ 420 17.5.8 (ODBC).............................................. 421 17.5.9 .................................................. 422

    17.6 .......................................................................... 423 17.6.1 ...................................................................... 423 17.6.2 (ODBC).............................................. 430 17.6.3 CCOBOL............................ 433 17.6.4 .............................................. 437

    17.7 .................................................................... 444 17.7.1 .......................................................................... 444 17.7.2 .................................................................................. 445 17.7.3 .................................... 446

    17.8 ............................................ 447 17.8.1 ........................................................ 447 17.8.2 .................................................... 447

    17.9 .............................................................. 451 17.9.1 .............................................................. 451 17.9.2 ........................................................ 453 17.9.3 .......................................................................... 455

    18 Unicode................................................................................... 457 18.1 ...................................................................................... 458 18.2 Unicode............................................................................... 459 18.3 .................................................................................. 461 18.4 Unicode....................................................................... 462 18.4.1 .................................................................................. 462 18.4.2 .............................................................................. 462 18.4.3 .............................................................................. 463 18.4.4 ........................................................................ 463

    18.5 Unicode............................................................. 465 18.5.1 ................................................................ 465 18.5.2 ...................................................................... 465 18.5.3 .............................................................................. 465

    18.6 .................................................................... 466 18.6.1 ...................................................................... 466

  • xiv

    18.6.2 .............................................................................. 466 18.6.3 .......................................................................... 466 18.6.4 .................................................................................. 467 18.6.5 .................................................................................. 468 18.6.6 ACCEPT/DISPLAY...................................................................... 468 18.6.7 COBOL......................................................................... 469

    18.7 ............................................................................ 473 18.7.1 .......................................................... 473 18.7.2 ...................................................................... 473

    18.8 .............................................................................. 474 18.8.1 FORM/MeFt............................................................................. 474 18.8.2 .......................................................................... 474 18.8.3 .............................................................................. 474 18.8.4 Web............................................................................... 475 18.8.5 ODBC.................................................. 475

    19 .................................................................................. 477 19.1 ................................................................................ 478 19.2 ...................................................................... 479 19.2.1 .................................................................................. 479 19.2.2 ........................................................................ 480 19.2.3 ...................................................................... 480 19.2.4 .................................................................. 480 19.2.5 .......................................................... 481 19.2.6 .................................................................... 482 19.2.7 .......................................................... 482 19.2.8 .................................................................... 482 19.2.9 .................................................................................. 483 19.2.10 ................................................................... 485 19.2.11 ............................................................................. 485 19.2.12 ................................................................................. 488 19.2.13 ................................................................... 495 19.2.14 ................................................... 497

    20 Web................................................................................... 499 21 CORBA..................................................................... 501 21.1 CORBA............................................................................... 502 21.2 .................................................................................. 503

    22 (ODBC)........................................................ 505 22.1 ...................................................................................... 506 22.1.1 COBOL................................................................. 506 22.1.2 SQL................................................................. 507

    22.2 .......................................................................... 509 22.2.1 ................................................................ 509 22.2.2 ................................................................ 510 22.2.3 ................................................................ 510

    22.3 ................................................................................ 512 22.3.1 .................................................................. 512 22.3.2 .......................................................................... 513 22.3.3 .......................................................................... 519 22.3.4 .......................................................................... 519 22.3.5 .......................................................................... 520 22.3.6 SQL............................................................................... 520 22.3.7 .................................................................... 524

  • xv

    22.3.8 ...................................................... 525 22.4 .......................................................................... 528 22.4.1 ................................................ 528 22.4.2 SQL............................................................... 535 22.4.3 SQLERRD....................................................... 536 22.4.4 FOR............................................................... 536

    22.5 .............................................................. 540 22.5.1 .............................................................. 540 22.5.2 ........................................................ 540

    22.6 .......................... 541 22.6.1 .................................................................. 541 22.6.2 .................................... 541 22.6.3 .................................. 543

    22.7 .................................................................. 546 22.8 .......................................................................... 547 22.8.1 ........................................................................ 547 22.8.2 ODBC.......................................................... 553 22.8.3 ODBC.................................................... 553 22.8.4 .......................................... 553

    22.9 SQL............................................................... 555 22.10 SQL.............................................................. 561 22.11 ODBC................................................................. 562 22.12 SQLSTATE/SQLCODE/SQLMSG.................................................................. 564 22.13 ODBC............................................................. 566 22.13.1 SQL.............................................................. 566 22.13.2 SQL........................................................ 567 22.13.3 SQL........................................................ 567 22.13.4 SQL........................................................ 568

    23 .................................................................... 569 23.1 ............................................................................ 570 23.2 ............................................................................ 571 23.2.1 ................................................................ 571 23.2.2 .................................................................................. 572 23.2.3 ................................................................................ 572

    23.3 ............................................................................ 573 23.3.1 .................................................................... 573 23.3.2 svd........................................................................... 573 23.3.3 .............................................................................. 575

    23.4 ............................................................................ 576 23.5 ............................................................................ 577 23.5.1 .................................. 577 23.5.2 ........................................................ 577 23.5.3 .............................................................. 577 23.5.4 ...................................................................... 578 23.5.5 .................................................................. 578 23.5.6 .............................................................. 579 23.5.7 ................................................................ 580 23.5.8 ................................................................ 580 23.5.9 .................................................... 580 23.5.10 ................................................... 580 23.5.11 ............................................... 581

    23.6 ...................................................................... 583

  • xvi

    23.6.1 ............................................................ 583 23.6.2 ........................................................ 586 23.6.3 ............................................................ 586 23.6.4 .............................................................. 588 23.6.5 ........................................................ 590

    23.7 ............................................................................ 591 23.7.1 ........................................................ 592 23.7.2 .............................................................. 594

    23.8 Interstage.................................. 598 23.8.1 .................................................................................. 598 23.8.2 .............................................................................. 598 23.8.3 .............................................................................. 599

    23.9 .......................................................................... 601 23.9.1 .............................................................................. 601 23.9.2 .................................................................. 602 23.9.3 .................................................................... 609 23.9.4 UNIX...................................................................... 627

    23.10 ................................................................................. 628 24 .................................................................... 631 24.1 ...................................................................................... 632 24.2 .............................................................. 633 24.2.1 .............................................................................. 633 24.2.2 .................................................................... 633

    24.3 .................................................................... 637 24.3.1 .................................................................................. 637 24.3.2 ................................................................................ 638 24.3.3 ............................................................................ 639 24.3.4 .................................................................................. 640 24.3.5 .................................................................................. 643 24.3.6 .................................................................................. 645 24.3.7 .................................................................................. 646 24.3.8 ................................................................................ 646

    25 .......................................................................... 649 25.1 ............................................................................ 650 25.1.1 .................................................................... 650 25.1.2 .................................................................... 650

    25.2 .......................................................................... 653 A ............................................................................. 655 A.1 ......................................................................... 655 A.2 ................................................................... 656 A.2.1 ALPHAL ()............................................................... 656 A.2.2 ASCOMP5 (2).......................................................... 657 A.2.3 BINARY (2)................................................................ 657 A.2.4 CHECK (CHECK)......................................................... 658 A.2.5 CODECHK ().............................................. 659 A.2.6 CONF ()......................................... 659 A.2.7 COPY ()............................................................... 660 A.2.8 COUNT (COUNT)......................................................... 660 A.2.9 CREATE ()............................................................ 660 A.2.10 CURRENCY ()...................................................... 661 A.2.11 DLOAD ()......................................................... 661 A.2.12 DUPCHAR ............................................................ 661

  • xvii

    A.2.13 EQUALS (SORT).......................................... 662 A.2.14 FLAG ()........................................................ 662 A.2.15 FLAGSW (COBOL)....................... 663 A.2.16 INITVALUE (VALUE)....................................... 663 A.2.17 KANA ().............................................................. 663 A.2.18 LANGLVL (ANSI COBOL)....................................................... 664 A.2.19 LINECOUNT (1).......................................... 664 A.2.20 LINESIZE (1)............................................. 664 A.2.21 MAIN (/)............................................... 665 A.2.22 MESSAGE ()................... 665 A.2.23 MODE (ACCEPT).......................................................... 665 A.2.24 NAME ()................................ 666 A.2.25 NCW ()................................................. 666 A.2.26 NSPCOMP ()................................................. 667 A.2.27 NUMBER ()........................................ 667 A.2.28 OBJECT ().................................................. 668 A.2.29 OPTIMIZE ().......................................................... 668 A.2.30 QUOTE/APOST (QUOTE).................................................... 669 A.2.31 RSV ()................................................................... 669 A.2.32 SDS (10)............................................. 670 A.2.33 SHREXT ()....................... 670 A.2.34 SMSIZE (PowerSORT)......................................... 670 A.2.35 SOURCE ().......................................... 671 A.2.36 SQLGRP (SQL).................................................... 671 A.2.37 SRF ()................................................................... 672 A.2.38 SSIN (ACCEPT)...................................................... 672 A.2.39 SSOUT (DISPLAY).................................................... 672 A.2.40 STD1 ().................................................. 673 A.2.41 TAB ()..................................................................... 673 A.2.42 TEST ().................................................... 674 A.2.43 THREAD ()................................... 674 A.2.44 TRACE (TRACE)........................................................ 674 A.2.45 TRUNC ()........................................................... 675 A.2.46 ZWB (10)......................................... 676

    A.3 ............................................... 676 A.4 ............................... 676

    B ............................................................................. 679 C ................................................................................. 683 C.1 ............................................................................... 683 C.2 ............................................................................... 683 C.3 ............................................................................... 684 C.4 ........................................................................... 684 C.5 PERFORM.......................................................................... 685 C.6 ............................................................................. 685 C.7 ........................................................................... 685 C.8 ..................................................................... 685

    D ........................................................................... 687 D.1 ....................................................................... 687 D.2 ......................................................... 689 D.3 CURRENT-DATE....................................................... 689 D.4 ................................................................. 690 D.5 ............................................................................. 691

  • xviii

    E ............................................................................... 693 F ......................................................................... 699 F.1 ........................................................................... 699 F.2 ................................................................................. 699 F.3 ......................................................................... 699 F.4 ................................................................. 699

    G COBOL................................................................ 701 G.1 Web.................................................................................... 701 G.2 ....................................................................... 701 G.3 ......................................................... 701 G.3.1 ID............................................................. 702 G.3.2 ID............................................................. 702

    G.4 ........................................................... 702 G.4.1 ............................................................. 702 G.4.2 ............................................................. 703 G.4.3 ............................................................. 704

    G.5 (COBOL16)...................... 705 G.5.1 mbston16s.............................................................................. 705 G.5.2 n16stombs.............................................................................. 707

    G.6 ................................................................... 709 H ......................................................... 711 H.1 ............................................................... 711 H.2 ................................................... 712

    I ........................................................................... 713 I.1 ................................................................................... 713 I.1.1 Oracle............................................................................. 713 I.1.2 Symfoware.......................................................................... 714

    I.2 SQL............................................................ 714 I.2.1 SQL.............................................................. 716

    J ............................................................................. 719 J.1 ....................................................................... 719 J.1.1 ................................................................................... 719 J.1.2 ............................................. 719 J.1.3 ................................................................. 720

    J.2 ..................................................................... 721 J.2.1 ....................................................................... 721 J.2.2 ................................................................... 721

    K ld................................................................................. 723 K.1 ................................................................................... 723 K.2 ld......................................................................... 724 K.2.1 cobol................................................ 724 K.2.2 ld................................................. 725

    L make......................................................................... 727 L.1 make....................................................................... 727 L.2 Makefile......................................................................... 727 L.2.1 ....................................................................... 727 L.2.2 COBOL.................................................................... 728 L.2.3 ............................................... 728 L.2.4 Makefile............................................................... 731 L.2.5 Makefile..................................................................... 731

    M ............................................................................. 733 M.1 cobol.................................................................. 733

  • xix

    M.2 ........................................................................... 735 M.3 ........................................................................... 735 M.4 COBOL.................................................. 774

    N ............................................................................... 779 N.1 ................................................................................. 779 N.2 ........................................................... 779 N.3 ......................................................... 780 N.4 Web.................................................................. 780 N.5 ........................................................................... 780

    ............................................................................................. 781

  • xx

  • 1

    1.1

    1.2

    1.3

  • 1

    2

    1.1

    1.1.1 COBOL

    COBOL

    (SD)

    COBOLCOBOL

    ()

    COBOL Web

    : Web

    1.1.2

    1-1

    1-1

    COBOL COBOL

    COBOL COBOL

    COBOL COBOL

    COBOL COBOL

    COBOL COBOLCOBOLCOBOL

  • 1.1

    3

    FORM()

    COBOL COBOLCOBOL(

    COBOL)

    COBOL COBOLCOBOLCOBOL

    23

    COBOL COBOLCOBOL

  • 1

    4

    1.2

    1-1 COBOL

    1-1 COBOL

    FORMFORMWindows

    1.2.1

    1-2

    1-2

    FORM ()

    (PowerFORM)

    FORM ()

    MeFt

  • 1.2

    5

    MeFt/Web WWW

    : FORMFORMWindows

    FORM FORMCOBOL

    FORM

    (PowerFORM)WindowsOS

    FORM FORMCOBOL

    FORM

    MeFt MeFtMeFt

    MeFt/Web MeFt/WebWebMeFt

    WWW

    MeFt/WebNetCOBOL

  • 1

    6

    1.3

    1-3

    1-3

    COBOL COBOL cob

    cobol

    -----

    COBOL COBOL cbl -----

    FORM

    MeFt

    MeFt/Web

    smd

    pmd

    pxd

    -----

    FORM

    MeFt

    ovd -----

    HTML

    WEB html

    htm

    -----

    Makefile Make

    cobmkmf Mk -----

    COBOL

    cbi -----

    .rep

    rep -----

    .o o -----

    lib

    .so

    so -----

    (a.out)

    out

    exe

    -----

    lst -----

    COBOL txt -----

    COBOL seq -----

    COBOL rel -----

    COBOL idx -----

    COBOL

    COBOL.CBR

    (

    CBR -----

    --- prtinffile

    --- fonttable

    FCB 1

    (4

    )

    --- FCB1

    --- ciinf

    ODBC

    --- odbcinf

    --- -----

    ()

    .trc

    trc -----

  • 1.3

    7

    ()

    .tro

    tro -----

    COUNT COUNT --- -----

    ()

    MeFt/Web --- meftwrc

    MeFt --- meftprc

    .svd

    svd -----

    cobdebug.i

    ni

    --- -----

    ()

    *.log log -----

    *.cvr cvr -----

    *.smp smp -----

  • 1

    8

  • 2

    2.1

    2.2

    2.3

  • 2

    10

    2.1

    COBOL()

    2.1.1

    1COBOL

    COBOL

    COBOL

    1 (16)

    ()

    2 (7)

    3 A(811)

    811ACOBOL

    7701

    4 B(12)

    12BCOBOL7701

    5 ()

    []

    TAB(ASCII X09)TAB

    1

  • 2.1

    11

    2.1.2

    COBOLCOPY

    vi

    .cbl

    []

  • 2

    12

    2.2

    COBOLCOBOL

    1

    SRF

    A.2.37 SRF ()

    180

    1251

    10251

  • 2.3

    13

    2.3

    @OPTIONS, ...

    @OPTIONS8

    @OPTIONS

    (,)

    000100 @OPTIONS MAIN,APOST

    000200 IDENTIFICATION DIVISION.

    000300 PROGRAM-ID. PROG1.

    :

    008000 END PROGRAM PROG1.

    @OPTIONS

    A

  • 2

    14

  • 3

    3.1

    3.2

    3.3 cobol

  • 3

    16

    3.1

    COBOL

    3.1.1

    3.1.1.1 COBOLOPTS()

    3.1.1.2 COBCOPY()

    3.1.1.3 COB_COPYNAME()

    3.1.1.4 COB_LIBSUFFIX()

    3.1.1.5 SMED_SUFFIX()

    3.1.1.6 FORMLIB()

    3.1.1.7 COB_REPIN()

    3.1.1.1 COBOLOPTS()

    cobol

    3.1.1.2 COBCOPY()

    []3.3.1.10 -I ()

    3.1.1.3 COB_COPYNAME()

    COPY

    Upper

    Lower

    Default

    . Default

    COPY

    COB_COPYNAME

    3.1.1.4 COB_LIBSUFFIX()

  • 3.1

    17

    3.1.1.5 SMED_SUFFIX()

    3.1.1.6 FORMLIB()

    []3.3.1.13 -m ()

    3.1.1.7 COB_REPIN()

    []3.3.1.15 -R ()

    3.1.2

    4

    cobol

    cobolcobol

    cobolld

    cobolldmake

    cobol

    ld

    cobolCOBOL

    PATH

    LD_LIBRARY_PATH

    cobol cobol

    ld

    cobol

    cobolcobol

    3.3 cobol

    $ cobol -dy -M -o P1 P1.cob

    I,1.

    P1.cob()

    P1.o() P1()

    -dy () -M()

    -o()

  • 3

    18

    cobolcobol cobol

    cobolcobol

    cobolcobol

    $ cobol -c -M P1.cob ()

    I,1.

    $ cobol -dy -o P1 P1.o ()

    cobol ()

    P1.cob()

    P1.o()

    -M() -c()

    cobol ()

    P1.o()

    P1()

    -dy () -o()

    cobolld cobolld

    ldK ld

    I, WE

    MakeMakefilecobolE

    MakeMake

    3.1.3 (COPY)

    COPY

    COPYCOPY

    ()

    COPY

    COPY

    COBOL

    IN/OFCOPY

    1. cobol

  • 3.1

    19

    -I

    2. COBCOPYCOBCOPY

    3.1.1.2 COBCOPY()

    IN/OFCOPY

    IN/OF

    COB_COPYNAME

    (Default)COB_COPYNAME3.1.1.3

    COB_COPYNAME()

    cobol

    COPY A.

    $ cobol -dy -M -o P1 P1.cob

    I,1.

    P1.cob() A.cbl ()

    P1.o() P1()

    -dy () -M()

    -o()

    COPY A.

    $ cobol -dy -M -o P1 -I/home/COBOL P1.cob

    I,1.

    $ COBCOPY=/home/COBOL ; export COBCOPY

    $ cobol -dy -M -o P1 P1.cob

    I,1.

    P1.cob() /home/COBOL/A.cbl ()

    P1.o() P1()

    -dy () -M()

    -o() -I()

    COPY A OF B.

    $ B=/home/COBOL ; export B

    $ cobol -M -o P1 P1.cob

    I,1.

    P1.cob() /home/COBOL/A.cbl ()

    P1.o() P1()

    -M() -o()

    ALPHAL/NOALPHAL

    []

  • 3

    20

    COPY a.

    ALPHALA.cbl

    NOALPHALa.cbl

    3.1.4

    3.2.2

    []

    P1,P2,P3

    P1P2P3

    P2,P3

    $ cobol -c P2.cob P3.cob [1]

    I

    I

    I,2.

    $ cobol -dn -M -o P1 P1.cob P2.o P3.o [2]

    I,1.

    [1]

    P2.cob P3.cob()

    P2.o P3.o()

    -c()

    [2]

    P1.cob() P2.o P3.o()

    P1()

    -dn () -M()

    -o()

    $ cobol -dy -shared -o libP2.so P2.cob [1]

    I,1.

    $ cobol -dy -shared -o libP3.so P3.cob [2]

    I,1.

    $ cobol -dy -M -o P1 L. -lP2 -lP3 P1.cob [3]

    I,1.

    [1] [2]

    P2.cob P3.cob()

  • 3.1

    21

    P2.o P3.o()

    libP2.so libP3.so()

    -dy ()

    -G or shared()

    -o()

    [3]

    P1.cob()

    libP2.so libP3.so()

    P1()

    -dy () -M()

    -o() -L()

    -l()

    3.1.5

    -Dt-Dt

    -dd

    svd

    $ cobol -M -o P1 -Dt P1.cob

    I,1.

    P1.cob()

    P1.o() P1()

    P1.svd()

    -M() -o()

    -Dt ()

    3.1.6 COBOL

    cobolCOBOL

    3.1.6.1 COBOL

    COBOL

    3-1 cobol

    (*.cob)

    (*.o)

    (*.cbl)

    (*.smd/*.pmd/*.pxd)

    (/*.lst)

    (*.rep)

    (lib*.so)

    (/a.out)

    (*.svd)

  • 3

    22

    ()

    3-1 cobol

    .cob

    (1)

    ----

    ----

    (

    )

    .o

    (2)

    -do

    .cbl

    (3)

    -I

    .smd

    .pmd

    .pxd

    (4)

    -m

    .lst

    -P

    -R

    .rep

    -dr

    -l

    lib

    .so

    (5)

    -shared

    -shared

    -o

    (a.out )

    -shared

    -o

    .svd

    (6)

    -Dt

    -Dt

    -dd

    -i

    1:

    COB,CBL,COBOL

    lst

    rep

    2: cob,cblcobolcob,cbl

    cobolo

    o

    3: cblCOB_LIBSUFFIX

    None

  • 3.1

    23

    COB_LIBSUFFIXcbl,cob,cobol

    []3.1.1.4 COB_LIBSUFFIX()

    $ COB_LIBSUFFIX = ; export COB_LIBSUFFIX

    4: smdSMED_SUFFIX

    None

    SMED_SUFFIXpmd,pxd,smd

    []3.1.1.5 SMED_SUFFIX()

    $ SMED_SUFFIX = ; export SMED_SUFFIX

    5:

    6: cob,cblcobolcob,cbl

    cobolsvd

    svd

    3.1.6.2 COBOL

    COBOL

    -P

    $ cobol -M -o P1 -PP1.lst P1.cob

    I,1.

    P1.cob()

    P1.o() P1()

    P1.lst ()

    cobol-WC

    MESSAGEMESSAGE

    -P

    $ cobol -M -o sample1 -Psample1.lst -WC,"MESSAGE,LINESIZE(80)" sample1.cob

    I,1.

    sample1.cob ()

    sample1.o () sample1 ()

    sample1.lst()

  • 3

    24

    MAIN,MESSAGE,LINESIZE(80)

    ALPHAL(ALL) LANGLVL(85) SDS

    BINARY(WORD,MLBON) LINECOUNT(60) SHREXT

    NOCHECK LINESIZE(80) NOSOURCE

    CODECHK NOLIST SRF(VAR,VAR)

    NOCONF MAIN SSIN(SYSIN)

    NOCOPY MESSAGE SSOUT(SYSOUT)

    NOCOUNT NONAME STD1(JIS2)

    CREATE(OBJ) NCW(STD) NOSYSEXT

    CURRENCY(\) NSPCOMP(NSP) TAB(8)

    NODLOAD NONUMBER NOTEST

    NOEQUALS OBJECT THREAD(SINGLE)

    FLAG(I) OPTIMIZE NOTRACE

    NOFLAGSW QUOTE NOTRUNC

    KANA(EUC) RSV(ALL) NOXREF

    NOLALIGN NOSAI ZWB

    (SAMPLE1)

    JMN2503I-S 63 'A'

    []

    [1]

  • 3.1

    25

    [COPY-] []

    COPY

    COPY

    11

    *

    #

    [2]

    ANK

    30

    [3]

    A CALLINVOKE

    D

    P PERFORM

    R

    S

    ** **

    = sample1.cob

    = 20000330() 125813 (GMT+9.00)

    = 65

    = 1692

    = 456

    = 1

    = 0.17

    = I

  • 3

    26

    3.2

    3.2.1

    COBOL

    COBOL

    C

    cobol

    ldld

    3.2.2

    3-1

    3-1

  • 3.2

    27

    LD_LIBRARY_PATH

    LD_LIBRARY_PATH

    COBOL

  • 3

    28

    CALL CALL

    3-2 CALL//

    CALL

    DLOADA

    3-2 CALL//

    CALL

    CALL "" NODLOAD

    CALL "" NODLOAD

    CALL ----

    CALL ""

    CALL

    DLOAD

    CALL "" DLOAD

    CANCEL CANCEL

    CANCELCANCEL

    3-3 CANCELCANCEL

    3-3 CANCEL

    CANCEL

    9.2.7

  • 3.2

    29

    3.2.3

    P1,P2,P3

    P1P2P3

    P2,P3

    cobol

    $ cobol -c P2.cob P3.cob [1]

    I

    I

    I,2.

    $ cobol -dn -M -o P1 P1.cob P2.o P3.o [2]

    I,1.

    [1]

    P2.cob P3.cob()

    P2.o P3.o()

    -c()

    [2]

    P1.cob() P2.o P3.o()

    P1()

    -dn () -M()

    -o()

    $ cobol -c P2.cob P3.cob [1]

    I

    I

    I,2.

    $ ar r libP0.a P2.o P3.o [2]

    $ cobol -dn -M -o P1 -lP0 P1.cob [3]

    I,1.

    [1]

    P2.cob P3.cob()

    P2.o P3.o()

    -c()

    [2]

    P2.o P3.o()

    libP0.a ()

    r ()

    [3]

    P1.cob() libP0.a()

    P1()

    -dn () -M()

    -o() -l()

    ld

    ldK.2.2 ld

  • 3

    30

    3.2.4

    P1,P2,P3

    P1P2P3

    P2,P3

    P2,P3

    $ cobol -dy -shared -o libP2.so P2.cob [1]

    I,1.

    $ cobol -dy shared -o libP3.so P3.cob [2]

    I,1.

    $ cobol -dy -M -o P1 L. -lP2 -lP3 P1.cob [3]

    I,1.

    [1]

    P2.cob()

    libP2.so()

    [2]

    P3.cob()

    libP3.so()

    [3]

    P1.cob() libP2.so libP3.so()

    P1()

    P2,P3

    $ cobol -dy -shared -o libP0.so P2.cob P3.cob [1]

    I

    I

    I,2.

    $ cobol -dy -M -o P1 L. -lP0 P1.cob [2]

    I,1.

    [1]

    P2.cob P3.cob()

    libP0.so()

    [2]

    P1.cob() libP0.so()

    P1()

    ld

    ldK.2.2 ld

    3.2.5

    P1,P2,P3

  • 3.2

    31

    P1P2P3

    P2,P3

    COBOL

    COBOL

    4.1.3

    libCALL.so

    P2,P3

    $ cobol -dy -shared -o libP2.so P2.cob [1]

    I,1.

    $ cobol -dy -shared -o libP3.so P3.cob [2]

    I,1.

    $ cobol -dy -M -o P1 -WC,"DLOAD" P1.cob [3]

    I,1.

    [1]

    P2.cob()

    libP2.so()

    [2]

    P3.cob()

    libP3.so()

    [3]

    P1.cob()

    P1()

    ld

    ldK.2.2 ld

    P2P3

    CBR_ENTRYFILE

    CANCEL

    9

  • 3

    32

    3.3 cobol

    cobol

    cobol

    $ cobol [] ...

    TAB

    COBOLOPTS

    COBOLOPTScobol

    $ COBOLOPTS="-Dt -WC,LINESIZE(80),MESSAGE" ; export COBOLOPTS

    $ cobol -M p1.cob

    cobol

    $ cobol -Dt -WC,"LINESIZE(80),MESSAGE" -M p1.cob

    COBOL3.3.1

    3.3.2

    ()

    ()

    3.3.1

    cobol

    3.3.1.5 -dr ()

    3.3.1.10 -I ()

    3.3.1.13 -m ()

    3.3.1.15 -R ()

    3.3.1.9 -dp ()

    3.3.1.14 -P ()

  • 3.3 cobol

    33

    3.3.1.8 -do ()

    3.3.1.12 -M ()

    3.3.1.16 -Tm ()

    3.3.1.2 -Dc (COUNT )

    3.3.1.7 -dd ()

    3.3.1.3 -Dk (CHECK)

    3.3.1.4 -Dr (TRACE)

    3.3.1.6 -Dt ()

    3.3.1.1 -c ()

    3.3.1.11 -i ()

    3.3.1.17 -WC ()

    []

    3.3.1.1 -c ()

    -c

    3.3.1.2 -Dc (COUNT )

    -Dc

    COUNT-DcCOUNT5.4 COUNT

    -DcCOUNT

    -Dc

    []

    -DcCOUNT

    A.2.8 COUNT (COUNT)

    3.3.1.3 -Dk (CHECK)

    -Dk

    CHECKCHECK5.3 CHECK

  • 3

    34

    -Dk

    -Dk

    []

    -DkCHECK

    5.3 CHECK

    3.3.1.4 -Dr (TRACE)

    -Dr

    TRACETRACE5.2 TRACE

    -Dr

    -Dr

    []

    -DrTRACE

    5.2 TRACE

    3.3.1.5 -dr ()

    -dr

    -dr

    -dr

    -dr

    3.3.1.6 -Dt ()

    -Dt

    23

    []

    -DtTEST

    23

    3.3.1.7 -dd ()

    -dd

    -dd

  • 3.3 cobol

    35

    -dd-Dt

    3.3.1.8 -do ()

    -do

    -do

    3.3.1.9 -dp ()

    -dp

    -dp

    -dp-P

    3.3.1.10 -I ()

    -I

    COPYCOPY

    -I

    3.3.1.11 -i ()

    -i

    ()

    -WC

    MESSAGE,NUMBER,OPTIMIZE

    3.3.1.12 -M ()

    -M

    []

    -MMAIN

    A.2.21 MAIN (/)

  • 3

    36

    3.3.1.13 -m ()

    -m

    IN/OF XMDLIBCOPY

    -m

    3.3.1.14 -P ()

    -P

    3.1.6.2 COBOL-P

    .lst

    (-)

    -dp:

    -dp

    -dp:

    a) -P:

    b) -P(-):

    3.3.1.15 -R ()

    -R

    -R

    -R-R

    3.3.1.16 -Tm ()

    -Tm

    17

    []

    -TmTHREAD(MULTI)

  • 3.3 cobol

    37

    3.3.1.17 -WC ()

    -WC,""

    COBOL

    (,)

    A

    1.

    2. cobol-WC

    3. COBOLOPTS-WC

    4. cobol

    5. COBOLOPTS

    6. cobol-i

    3.3.2

    cobol

    3.3.2.1 -dy/-dn ()

    3.3.2.2 -G/-shared ()

    3.3.2.3 -L ()

    3.3.2.4 -l ()

    3.3.2.5 -o ()

    3.3.2.6 -Tm ()

    3.3.2.7 -Wl ()

    3.3.2.1 -dy/-dn ()

    -dy

    -dn

    (-dn)

    (-dy)-dy

    3.3.2.2 G/-shared ()

    -shared

    -G

  • 3

    38

    -G-shared

    3.3.2.3 -L ()

    -L

    3.3.2.4 -l ()

    -l

    COBOL

    lib.so

    lib.a

    cobol-L

    3.3.2.5 -o ()

    -o

    -oa.out

    -olib.so

    3.3.2.6 -Tm ()

    -Tm

    17

    3.3.2.7 -Wl ()

    -Wl,""

    ld

    ldK ld

    ld

    3.3.3 cobol

    cobol

  • 3.3 cobol

    39

    I

    W

    0

    E 1

    S 2

    U 3

    cobolcobolld

    ldld

    cobol

  • 3

    40

  • 4

    COBOL

    4.1

    4.2

    4.3

    4.4

    4.5

  • 4

    42

    4.1

    4.1.1

    COBOL

    E

    E

    COBOL

    COBOLSYS,CBRCOB

    COBOL

    CBR_CBRFILE

    CBR_CBRINFO

    GOPT

    CBR_ENTRYFILE

    LD_LIBRARY_PATH

    []9

    CBR_INPUT_BUFFERING

    CBR_CLOSE_SYNC

    CBR_TRAILING_BLANK_RECORD

    []6

    SQL ODBC_INF(ODBC)

    []22 (ODBC)

    MEFTDIR

    FCBDIR

    CBR_PRT_INF

    CBR_FCB_NAME

  • 4.1

    43

    FOVLDIR

    CBR_LP_OPTION

    CBR_PRINTFONTTABLE

    CBR_PRT_UTF8_CONVERT

    []7

    BSORT_TMPDIR

    []11 SORTMERGE

    CBR_CI_INF

    CBR_CI_CLG

    []19

    SSINSSOUT

    []10 ACCEPTDISPLAY

    CBR_CLASSINFFILE

    CBR_INSTANCEBLOCK

    []16

    CBR_THREAD_TIMEOUT

    CBR_SYMFOWARE_THREAD

    CBR_SYSERR_EXTEND

    []17

    SYSCOUNT

    CBR_TRACE_FILE

    []5

    CBR_ATTACH_TOOL

    []23

    CBR_CODE_CHECK

    LANG

    LC_ALL

    []J

    CBR_FUNCTION_NATIONAL

    []D

    CBR_MESSOUTFILE

    TMPDIR

    4.1.2

  • 4

    44

    a.

    b.

    c.

    d. ()

    COBOL

    COBOL

    a.b.

    a.b.

    4.1.2.1

    4.1.2.2

    1

    4.1.2.3

    COBOL

    "COBOL.CBR"

    "COBOL.CBR"

    COBOL.CBR

    CBR_CBRFILEE

    -CBR4.2

  • 4.1

    45

    4.1.2.3.1

    ; [1]

    = [2]

    :

    2

    []

    [1]

    [2]

    ;()

    ; Environment

    CBR_CBRINFO=YES

    4.1.2.3.2

    1. COBOL.CBR

    2. COBOL.CBR

    3. CBR_CBRFILE

    COBOL

    []

  • 4

    46

    /home/usr1 a.out

    TEST.CBR CBR_CBRFILE

    COBOL.CBR

    1. /home/usr1/apl01/COBOL.CBR

    2. /home/usr1/lib01/COBOL.CBR

    3. /home/usr1/cbr/TEST.CBR

    $ PATH=/home/usr1/apl01:$PATH

    $ export PATH

    $ LD_LIBRARY_PATH=/home/usr1/lib01:$LD_LIBRARY_PATH

    $ export LD_LIBRARY_PATH

    $ CBR_CBRFILE=/home/usr1/cbr/TEST.CBR

    $ export CBR_CBRFILE

    $ a.out

    1. /home/usr1/apl01/COBOL.CBR

    2. 1. /home/usr1/lib01/COBOL.CBR

    3. 2./home/usr1/cbr/TEST.CBR

    COBOL

    COBOL

    COBOL.CBR

    COBOL.CBR

    COBOL.CBR

    COBOL.CBR

    ----

  • 4.1

    47

    4.1.2.3.3

    COBOL.CBR

    COBOL

    1. COBOL()()

    COBOL.CBR

    ()

    2. COBOL.CBRCOBOL

    COBOL.CBR

    COBOL()

    COBOL.CBR

    COBOL()COBOL.CBR

    ()

    COBOL.CBR

    ()

    libA.so libB.so libY.so libZ.so

    COBOL.C BR COBOL.C BR

    () ()

    ()

    (libA.so,libB.so)COBOL.CBR1

    11COBOL.CBR

    2

    2COBOL.CBR2

    COBOLCOBOL()

    COBOL.CBR

    COBOL()

    COBOL

    ()COBOL.CBR

    COBOL.CBR

  • 4

    48

    COBOL()()COBOL.CBR

    ()1COBOL

    ()()1

    COBOL.CBR()

    4.1.2.3.4

    CBR_CBRINFO=YES

    []E

    4.1.2.4

    []4.2.3

    4.1.3

    lib.so

    CBR_ENTRYFILE

    ENTRY

    [ENTRY] [1]

    []

    [1]

    ENTRY

    4.1.3.1

    =

    LD_LIBRARY_PATH

    so

  • 4.1

    49

    []

    []

    CBR_ENTRYFILE=FILE

    FILE

    [ENTRY]

    B=libB.so

    C=libC.so

    D=libD.so

    []

    lib.so

    []

  • 4

    50

    []

    CBR_ENTRYFILE=FILE

    FILE

    [ENTRY]

    B1=libB.so

    B2=libB.so

    B3=libB.so

    C1=libC.so

    C2=libC.so

    C3=libC.so

    []

    CANCEL

    B1B2B3CANCEL

    libB.soC1C2C3CANCEL

    libC.so

  • 4.1

    51

    4.1.3.2

    =

    ENTRY

    ENTRY

    []

    []

    CBR_ENTRYFILE=FILE

    FILE

    [ENTRY]

    B=libB.so

    C=libC.so

    B1=B

    C1=C

  • 4

    52

    4.2

    COBOL

    4.2.1

    ()

    COBOL

    10.2

    COBOL

    $ [] [-CBL ] [-CBR ]

    -CBR-CBL

    ()

    []

    $ PROG1 A B C,D

    ABC,D

    []

    $ PROG1 "A B C,D"

    A B C,D

    -CBL

    4.2.2

    []

    $ PROG1 -CBL r20 c20

    r20c20

    -CBR

    4.2.3

    []

    $ PROG1 -CBR abc.ini

    abc.ini

    4.2.2

    COBOL

    COBOL

    -CBL

    GOPT

  • 4.2

    53

    $ GOPT=;export GOPT

    4-1

    (,)

    4-1

    [r]

    [c | noc]

    [s]

    PowerSORT [smsizek]

    4.2.2.1 [r] ()

    TRACE

    1999999-Dr

    TRACE

    []3.3.1.4 -Dr (TRACE)A.2.44 TRACE (TRACE)

    4.2.2.2 [c | noc] ()

    CHECK

    09999990

    CHECKnoc-Dk

    CHECK

    []3.3.1.3 -Dk (CHECK)A.2.4 CHECK (CHECK)

    4.2.2.3 [s] ()

    COBOLSWITCH-0SWITCH-7

    8SWITCH-0SWITCH-1

    SWITCH-701

    s00000000SWITCH-8

    SWITCH-8SWITCH-0SWITCH-8SWITCH-1

    SWITCH-7

    4.2.2.4 [smsizek] (PowerSORT)

    SORTMERGEPowerSORT

    PowerSORT

    BSORT_PRIME.memory_size

    PowerSORT

    SMSIZE()SORT-CORE-SIZE

    SORT-CORE-SIZE

    smsizeSMSIZE()

    4.2.3

    COBOL

    -CBR

    -CBR

  • 4

    54

    []

    a.out -CBR abc.init

    abc.init

  • 4.3

    55

    4.3

    CBR_MESSOUTFILE

    SYSERRDISPLAY

    InterstageNetscape Application Server

    CBR_MESSOUTFILE

    []

    $ CBR_MESSOUTFILEerrmsg.log; export CBR_MESSOUTFILE

    errmsg.log

    CBR_MESSOUTFILE

  • 4

    56

    4.4

    STOP RUNEXIT PROGRAMCOBOL

    PROGRAM-STATUSCOBOL

    PROGRAM-STATUSPIC S9(9) COMP-5COBOL

    COBOL

    [COBOL]

    IDENTIFICATION DIVISION.

    PROGRAM-ID. PROG1.

    ENVIRONMENT DIVISION.

    CONFIGURATION SECTION.

    SPECIAL-NAMES.

    ARGUMENT-VALUE IS .

    DATA DIVISION.

    WORKING-STORAGE SECTION.

    01 PIC X.

    PROCEDURE DIVISION.

    ACCEPT FROM .

    IF >= "0" AND

  • 4.5

    57

    4.5

    COBOL COBOL

    []

    Borne shell

    $ ulimit -s

    C shell

    % limit stacksize

    []

    16384(Kbyte)

    Borne shell

    $ ulimit -s 16384

    C shell

    % limit stacksize 16384

    COBOL

    []

    1M (1 + 2 ) + (1 + 2 )

    (=1,048,576 )

    []

    n (n=12)

    a) () 250

    b) RETURNING

    c) (CALLINVOKEUSING

    - 6) 4

    m /

    (m=12)

    a) () 600

    b) 200

  • 4

    58

    c)

    d) (USING 4 + RETURNING

    )

    e) PERFORM 50 PERFORM

    f) (CALLINVOKEUSING

    - 6) 4

  • 4.5

    59

    1

    PGM01

    CALL "PGM02".

    CLS01

    MTHD01

    CLS02

    FACTORY

    WORKING-STORAGE SECTION.

    01 WCT PIC S9(8) BINARY.

    01 WCT2 PIC S9(8) BINARY.

    01 .

    02 OCCURS 50.

    03 1 PIC X(10).

    02 OCCURS 50.

    03 2 PIC X(10).

    PERFORM n TIMES

    :

    END-PERFORM.

    FACTORY

    FILE SECTION.

    FD FILE1.

    01 RC01 PIC X(500).

    WORKING-STORAGE SECTION.

    01 PRM01 PIC S9(18) BINARY.

    01 WRC1 PIC X(200).

    INVOKE SELF "MTHD02"

    USING PRM01.

    WORKING-STORAGE SECTION.

    01 PRM02 PIC S9(18) BINARY.

    01 RTNDT PIC S9(18) BINARY.

    INVOKE CLS02 "MTHD03"

    USING PRM02

    RETURNING RTNDT.

    MTHD02

    MTHD03

    PMG02

    INVOKE CLS01 "MTHD01"

    USING PRM01

    RETURNING RTNARA.

    PRM01 PIC S9(9) BINARY

    RTNARA PIC S9(18) BINARY

  • 4

    60

    PGM()

    PGM01

    PGM 500

    PGM02

    PGM 500

    CLS()

    CLS01

    METHOD(1)

    () 600

    USING 4

    RETURNING 8

    200

    700

    INVOKE 50

    METHOD(2)

    () 600

    USING 4

    8

    INVOKE 50

    CLS02

    METHOD(3)

    () 600

    USING 4

    RETURNING 8

    1,000

    PERFORM 50

    4,886

  • 4.5

    61

    2

    PGM01

    CALL "PGM02".

    CLS01

    MTHD01

    [A]

    FACTORY

    FILE SECTION.

    FD FILE1.

    01 RC01 PIC X(15000).

    FD FILE2.

    01 RC02 PIC X(15000).

    WORKING-STORAGE SECTION.

    01 PRM01 PIC S9(18) BINARY.

    01 WRC1 PIC X(15000).

    01 WRC2 PIC X(15000).

    INVOKE SELF "MTHD02"

    USING PRM01.

    FILE SECTION.

    FD FILE1.

    01 RC01 PIC X(15000).

    WORKING-STORAGE SECTION.

    01 PRM02 PIC S9(18) BINARY.

    01 RTNDT PIC S9(18) BINARY.

    01 1.

    02 1 OCCURS 50.

    03 1 OCCURS 30.

    04 1 PIC X(100).

    INVOKE CLS02 "MTHD03"

    USING PRM02

    RETURNING RTNDT.

    MTHD02

    PMG02

    INVOKE CLS01 "MTHD01"

    USING PRM01

    RETURNING RTNARA.

    PRM01 PIC S9(9) BINARY

    RTNARA PIC S9(18) BINARY

  • 4

    62

    [ A ]

    CLS02

    MTHD03

    FACTORY

    WORKING-STORAGE SECTION.

    01 WCT PIC S9(8) BINARY.

    01 WCT2 PIC S9(8) BINARY.

    01 2.

    02 2 OCCURS 100.

    03 2 OCCURS 100.

    04 2 PIC X(50).

    01 3.

    02 3 OCCURS 100.

    03 3 OCCURS 100.

    04 3 PIC X(30).

    01 PRM01 PIC X(10).

    01 WDATA PIC S9(18) BINARY.

    PERFORM n TIMES

    :

    :

    END-PERFORM.

    INVOKE SELF "MTHD04"

    USING PRM01

    RETURNING WDATA.

    WORKING-STORAGE SECTION.

    01 RTNDT PIC S9(18) BINARY.

    01 MT04D PIC X(20000).

    CALL "PGM03".

    CALL "PGM04".

    CALL "PGM05".

    MTHD04

    PMG05

    PMG04

    PMG03

  • 4.5

    63

    PGM()

    PGM01

    PGM 500

    PGM02

    PGM 500

    PGM03

    PGM 500

    PGM04

    PGM 500

    PGM05

    PGM 500

    CLS()

    CLS01

    METHOD(1)

    () 600

    USING 4

    RETURNING 8

    400

    60,000

    INVOKE 50

    METHOD(2)

    () 600

    USING 4

    400

    165,000

    INVOKE 50

    CLS02

    METHOD(3)

    () 600

    USING 4

    RETURNING 8

    800,000

    PERFORM 50

    INVOKE 50

    METHOD(4)

    () 600

    USING 4

    RETURNING 8

    20,000

    PERFORM 50

    CALL 300

    1,051,290

  • 4

    64

    COBOL COBOL

    []

    []

    EXTERNAL

    ()

  • 5

    a.

    DISPLAY

    COBOL

    b.

    c. ()COBOL

    COBOL

    (TEST)

    (OPTIMIZE)(NOOPTIMIZE)

    a.COBOLb.c.

    b.c.

    23

    5.1

    5.2 TRACE

    5.3 CHECK

    5.4 COUNT

  • 5

    66

    5.1

    COBOL(TRACE)

    (CHECK)

    COBOL(COUNT)

    COBOL

    5-1

    5-1

    TRACE

    TRACE

    CHECK

    OCCURS DEPENDING ON

    CHECK

    COUNT

    COUNT

    TRACECOUNT

  • 5.1

    67

    [.]

    NUMBER[COPY-]NONUMBER

    11

    123

  • 5

    68

    5.2 TRACE

    TRACECOBOL

    TRACE

    5.2.1

    TRACE

    5.2.2

    TRACECOBOL

    -DrTRACE

    200TRACE

    TRACECOBOL

    r

    trc

  • 5.2 TRACE

    69

    /home/xx/PROG1

    ()

    /home/xx/PROG1.trc

    trc

    trctro

    CBR_TRACE_FILE =

    CBR_TRACE_FILEtrc

    NetCOBOL DEBUG INFORMATION DATE 2000-04-06 TIME

    10:10:32

    PID=00000123 [1]

    TRACE INFORMATION

    [2] [3] [4] [5] [6]

    1 () TID=00000099

    2 [7]1100.1 TID=00000099

    3 1200.1 TID=00000099

    4 1300.1 TID=00000099

    5 [8] 1300.2 [9] [5]

    6 []

    7 2100.1 TID=00000099

    8 2200.1 TID=00000099

    9 JMPnnnnI-x xxxxxxxxx xx xxxxxxxxx. [10]

    []

    [1] ID(16 8)

    [2] (10 10)

    [3]

    [4]

    [5]

    [6] ID(16 8)

    [7] /

    [8]

  • 5

    70

    [9]

    [10]

    M.3

    5.2.3

    TRACE

    TRACE-DrTRACE

    COBOL

    TRACECOBOL

    TRACE

    TRACE

    NOTRACE

    0

  • 5.3 CHECK

    71

    5.3 CHECK

    CHECK

    CHECK

    5.3.1

    CHECK

    5.3.2

    CHECK

    ()

    CHECKE

    U

    M.3

    CHECK(PRM)

    CHECK

  • 5

    72

    JMN3333I-S

    CALLUSINGPROCEDURE DIVISIONUSING

    JMN3334I-S

    CALLUSINGRETURNING@2@@1@

    PROCEDURE DIVISIONUSINGRETURNING@3@

    @1@:

    @2@:

    @3@:

    USAGE OBJECT REFERENCE

    FACTORYONLY

    JMN3335I-S

    CALLUSINGRETURNING@2@@1@

    PROCEDURE DIVISIONUSINGRETURNING@3@

    @1@:

    @2@:

    @3@:

    JMN3414I-S

    @1@CALLRETURNING@1@PROCEDURE

    DIVISIONRETURNING

    @1@:

    RETURNING

    JMN3508I-S

    @1@CALLRETURNING@1@PROCEDURE

    DIVISIONRETURNING

    @1@:

    RETURNING

    JMP0812I-E/U

    [PID:xxxxxxxx TID:xxxxxxxx] CALL'$1' PGM=.

    LINE=.

    $1:

    $15-2 JMP0812I-E/U$1

  • 5.3 CHECK

    73

    5-2 JMP0812I-E/U$1

    $1

    USING PARAMETER NUMBER USING

    USING nTH PARAMETER

    (nTH = 1ST, 2ND, 3RD, 4TH...)

    USING n

    RETURNING PARAMETER RETURNING

    CHECKCHECK

    COBOL

    -Dk

    1c

    nocCHECK

    5.3.3 CHECK

    CHECK

    CHECK(BOUND)CHECK(ALL)

    000500 77 PIC S9(4).

    000600 01 .

    000700 02 OCCURS 10 TIMES INDEXED BY .

    000800 03 PIC 9(5).

    :

    001100 MOVE 15 TO .

    001200 ADD 1 TO ().

    001300 SET TO 0.

    001400 SUBTRACT 1 FROM ().

    :

    ADD/SUBTRACT

    JMP0820I-E/U [PID:XXXXXXXX TID:XXXXXXXX] .

    PGM=A. LINE=1200.1. OPD=

    JMP0820I-E/U [PID:XXXXXXXX TID:XXXXXXXX] .

    PGM=A. LINE=1400.1. OPD=

    CHECK(BOUND)CHECK(ALL)

    000500 77 PIC X(12).

    000600 77 PIC X(12).

    000700 77 PIC 9(4) BINARY.

    :

    001100 MOVE 10 TO .

    001200 MOVE (1:) TO (4:

    ).

    :

  • 5

    74

    1200MOVE

    JMP0821I-E/U [PID:XXXXXXXX TID:XXXXXXXX] .

    PGM=A. LINE=1200.1. OPD=.

    OCCURS DEPENDING ON CHECK(BOUND)CHECK(ALL)

    000500 77 PIC S9(4).

    000600 77 PIC S9(4).

    000700 01 .

    000800 02 OCCURS 1 TO 10 TIMES DEPENDING ON .

    000900 03 PIC X(5).

    :

    001100 MOVE 5 TO .

    001200 MOVE 25 TO .

    001300 MOVE "ABCDE" TO ().

    :

    1200MOVE

    JMP0822I-E/U [PID:XXXXXXXX TID:XXXXXXXX] ODO.

    PGM=A. LINE=1200.1. OPD=. ODO=.

    CHECK(NUMERIC)CHECK(ALL)

    000500 01 PIC X(4) VALUE "ABCD".

    000600 01 REDEFINES PIC S9(4).

    000700 01 PIC S9(4).

    :

    001500 MOVE TO .

    :

    MOVE

    JMP0828I-E/U [PID:XXXXXXXX TID:XXXXXXXX] .

    PGM=A. LINE=1500. OPD=.

    CHECK(NUMERIC)CHECK(ALL)

    000600 01 PIC S9(8) BINARY VALUE 1234.

    000700 01 PIC S9(4) BINARY VALUE 0.

    000800 01 PIC S9(4) BINARY VALUE 0.

    :

    001500 COMPUTE = / .

    :

    COMPUTE

    JMP0829I-E/U [PID:XXXXXXXX TID:XXXXXXXX] .

    PGM=A. LINE=1500. OPD=

    A

    CHECK(ICONF)CHECK(ALL)

  • 5.3 CHECK

    75

    000010 PROGRAM-ID. A.

    :

    000030 01 PRM-01 PIC X(9).

    000040 01 OBJ-U USAGE IS OBJECT REFERENCE.

    :

    000060 SET OBJ-U TO B.

    000070 INVOKE OBJ-U "C" USING BY REFERENCE PRM-01.

    :

    B/C

    000010 CLASS-ID. B.

    :

    000030 FACTORY.

    000040 PROCEDURE DIVISION.

    :

    000060 METHOD-ID. C.

    :

    000080 LINKAGE SECTION.

    000090 01 PRM-01 PIC 9(9) PACKED-DECIMAL.

    000100 PROCEDURE DIVISION USING PRM-01.

    :

    AINVOKE

    JMP0810I-E/U [PID:XXXXXXXX TID:XXXXXXXX] 'C' USING

    .

    PARAMETER=1. PGM=