Jump to Alchemy

Fujitsu NetCOBOL for Windows

NetCOBOL for Windows contains tools and utilities covering the full spectrum of COBOL programming needs. The tables below list key features and benefits for each of these components.

Key Features of NetCOBOL
NetCOBOL Compiler
Object-oriented COBOL
Debugging
Data Tools
Web Support
Oracle® Web Cartridge
Building Web Applications
Integrating with Visual Basic
Data Access Options

Key Features of NetCOBOL

New in: Feature Summary Detail of Feature Benefit of Feature
+V4 COBOL for Windows

 

GUI design.

Integrates with other languages and tools (e.g. ActiveX, Visual Basic®, Excel)

Lets you use the application-supporting power of COBOL, seamlessly integrated with other Windows components.

Use existing COBOL skills to create up-to-date interfaces and applications.

 

+V5, V6 Web support for CGI, ISAPI, SAF, ASPs calling COBOL, plus Web Application Wizard.

V5

V6

V6

V6

Multi-threaded execution

Unicode support

COM/DCOM COBOL Objects enabling tight integration with any COM/DCOM system.

Supports Microsoft Transaction Server (MTS)

V10.1  

Support added for Windows versions:

  • Windows Server 2008 R2
  • Windows 7
  • x64 support in NetCOBOL for Windows x64 edition (regular edition runs as 32 bit apps in x64 environments using WOW64)
Lets you develop your applications for the latest Windows platforms.
  Access to data Access most popular databases such as SQL Server™, Oracle®, Informix®, Sybase®, and any ODBC compliant database. Access your company's data without complex database conversions.
 
+V4 Complete development environment

Development suite of tools cover:

Project management

Configuration management

Window and report WYSIWYG design

Class browsing

Text editing

Data file maintenance

Debugging

ALL your critical COBOL development needs are met in a single package. You don't need to mix and match from different suppliers – just install the Fujitsu product package and get going.
V9 Eclipse development environment As an alternative to the standard NetCOBOL for Windows development environment, you can use the Eclipse development environment. Lets you take advantage of the evolving features being developed by Eclipse Foundation members.
"+Vn" in the "New in:" column indicates a feature that contains new or improved elements as well as existing elements. When "+Vn" is in Italics, it refers to the italicized detail items. The number n indicates the release in which the new feature was introduced.

NetCOBOL Compiler

New in: Feature Summary Detail of Feature Benefit of Feature

+V4

 

 

 

 

 

Syntax support

NetCOBOL supports:

Object-Oriented COBOL

COBOL 68, 74, 85, 89 addendum

X/OPEN® COBOL

IBM® VS COBOL II

IBM® OS/VS COBOL

Micro Focus® COBOL™

You can use your favorite COBOL programming language dialect.

You can use your existing COBOL code.

 

 

V7   Supports a special register SORT-CORE-SIZE to for specifying the amount of memory to be used in PowerBSORT sort/merge operations Gives greater program control of sort/merge operations.
+V4   CBL_ Routines Provides greater compatibility with Micro Focus COBOL programs.
+V4.2   Underscore "_" in user-defined words
" "
+V4.2   78-level named literals
" "
V6  

SCREEN SECTION CONTROL clause.

" "
V6   Calculator-style input of numbers for SCREEN SECTION ACCEPTs (behavior configured at run-time using the screen definition file).. Convenient, intuitive input of numeric data for your users.
+V4.2   Invoke case-sensitive program names You can work with languages that are case sensitive (such as C).
V5 +V6   TYPE and TYPEDEF, including a STRONG TYPDEF to check matches of group items.

You can ensure that different data items referring to the same data structures have identical definitions.

V5

 

Define external names for programs, classes and methods using the "AS literal" phrase.

V6   STORED-CHAR-LENGTH function added to return the length of a string ignoring trailing spaces. Simple coding of frequently used calculation.
V6   For fixed format source files, the compiler ignores characters in column 81 and beyond to ensure source synchronizes with debugger. Consistent debugging results for those using fixed format source.
V6   COB_ICON_TITLE call added to configure the titles in main, screen and console windows. Greater control of application appearance.
V8   BINARY-CHAR, BINARY-SHORT, BINARY-LONG, and BINARY-DOUBLE integer numeric data types. Facilitates sharing integer numeric data with other languages.
V8   Hexadecimal numeric literal (H”xx”) Provides a numeric literal that can be specified in hex and greater compatibility with Micro Focus COBOL programs.
V8   ADVANCING phrase in WRITE statements for line sequential files Provides greater compatibility with Micro Focus COBOL programs.
V8   You can write simple COBOL programs to process deadlocks that occur with linked databases by using the USE FOR DEADLOCK procedures and calling the Deadlock Exit subroutine Allows you to cope with database deadlocks within your code.
V10   NATIONAL data upgraded to support UTF-16 instead of UCS-2. Keeps Unicode support current with latest standards.
V10   DISPLAY-OF function replaces national characters with alphanumeric characters. Provides function for converting data from UTF-16 to UTF-8 Unicode format.
V10   NATIONAL-OF function replaces alphanumeric characters with national characters. Provides function for converting data from UTF-8 to UTF-16 Unicode format.
V10   STRING statement enhanced to string data into CSV (comma separated values) format. Simplifies use of comma separated values (CSV) files that provide a useful way of interchanging data with Microsoft Excel and other CSV-supporting packages.
V10   UNSTRING statement enhanced to unstring data from CSV format into separate fields. Simplifies use of comma separated values (CSV) files that provide a useful way of interchanging data with Microsoft Excel and other CSV-supporting packages.
V10   BMP class condition added to check that characters in a data item are part of the Unicode Basic Multilingual Plane (the first 65,536 code points in the Unicode standard. Helps programs ensure that Unicode data will be handled properly.
V10   COB_ALLOC_MEMORY and COB_FREE_MEMORY calls added with support for thread/process-sensitive dynamic memory allocation. Provides support for more advanced programming methods.
V10   COB_EXIT_PROCESS call added which forcibly ends a CALLed process and all of its threads. Helps in situations where a critical error has been detected and only the COBOL runtime system can engineer a safe return to the calling program.
V10   SYNCHRONIZED supported on group items. Convenient extension when you want all items in a group to be synchronized to natural boundaries.
  Compiler Options Numerous compiler options control compiler behavior and code generation. Provides control of compiler output and behavior.
V8   ASCOMP5 option causes USAGE BINARY, USAGE COMP, or USAGE COMPUTATIONAL items to be treated as if they were defined with USAGE COMP-5. Helps improve the performance of some programs or make their data exchangeable with programs using other languages or vendors.
V8   INITVALUE option allows you to specify the default initial value for data items that do not have a VALUE phrase Provides compatibility with other COBOLs that have initialized storage differently from NetCOBOL. Lets you be sure how storage is being initialized.
V8   The compiler provides listings containing information on data areas by specifying the MAP option. Provides more information that is useful when debugging programs.
V9   SSOUT option extended to allow data to be appended to an existing file when DISPLAY statement output is directed to a file. Provides option of maintaining a cumulative log of DISPLAY statement output over multiple program executions.
V10   SCS option (‘source code set”) gives ability to specify the code set of the COBOL source file – ANSI code page (ACP) or UTF-8. Source code can be in ASCII (ACP) or Unicode (UTF-8).
V10   RCS option (“runtime code set”) enhanced to include UTF-16 in both big-endian and little-endian forms as the code set to be used at runtime for National character items. Maintains compatibility with the latest Unicode standards, aiding support of foreign language alphabets.
  Runtime Environment Variables Numerous runtime environment variables support configuration of runtime-specific information such as filename mappings, directing messages, debug options, print file control etc. Allows configuration of details that are best determined at run time.
V8   You can configure the date retrieved by COBOL applications in ACCEPT … FROM DATE statements and the CURRENT-DATE function, by using the @CBR_JOBDATE environment variable. Lets you set the date to be used by the program independent of the machine date.
V8   Automated functions are provided for concatenating files and appending to existing files, by using the MOD and CONCAT options in the file-identifier environment variable. Provides more options for handling files.
V8   You can specify the severity code at which runtime messages are output. Makes it possible to output the level of messages appropriate to your operating environment.
V10  

@CBR_FILE_BOM_READ specifies different ways of handling the Unicode byte order mark (BOM) in Line Sequential files. Options are:

  • ensure the BOM in the line sequential file and program definition match
  • treat the BOM as part of the data
  • do either of the above depending on whether or not the file contains a BOM.
Gives you greater control when handling Unicode text files.
V10   @CBR_CSV_OVERFLOW_MESSAGE allows suppression of overflow messages when STRINGing or UNSTRINGing CSV records. If you know you may encounter overflow conditions and do not want error messages displayed, option allows you to suppress those messages.
V10   @CBR_CSV_TYPE specifies which CSV variation should be used when the TYPE is not specified in the STRING statement. Four variations of use of double quotes are provided. Allows you to tailor the CSV output to match your target CSV-receiving product.
V10   Options that accept IP addresses can take IPv4 and IPv6 formats. Greater flexibility in using IP addresses.
V10   @CBR_FILE_DUP_CLOSE lets you specify whether a CLOSE on a never-opened or already-closed file succeeds or fails. Useful option if migrating applications that have relied on one or other behavior in the past.
V10   @CBR_SSIN_FILE that allows for predictable isolated access to an input file from multiple threads of control using ACCEPT to access that same input file. Avoids thread encountering an error of no data because of thread execution order.
 
V7 Parameter Checking For internal programs checks the conformance of parameters between calling and called programs. Provides automated checking in an area in which tracking bugs can be difficult.
V8   Extended to check for conformance of parameters when calling external programs.  
 

V5

 

Configurable library extensions The extensions of COBOL source libraries can be configured using the LIBEXT compiler option. Greater flexibility in naming source files.
  RDBMS access

You can use embedded SQL to access the following databases:

  • SQL Server
  • Oracle
  • Informix
  • Sybase
  • Any ODBC-compliant database
Access your company's data without complex database conversions.
V4.2   Extensive setup instructions  
V5   Literal values can be defined for parameters in ODBC stored procedures.  
V6   Group items can be used as host variables. (Host variables no longer need to be at the 01 level)  

V6

 

Provides an ODBC cursor library that provides positional UPDATE and DELETE whether or not the data source supports these features.

 
V7   Performance of interfacing to ODBC databases improved. Faster application execution when using ODBC.
V8   USE FOR DEADLOCK procedures let you escape from deadlock situations. Provides a programmatic route for handling deadlocks.
V9   CURSOR close on database commit supported  
    Varbinary data can be extracted from SQL into PIC X fields  
    When calling a SQL stored procedure in COBOL, you can specify indicator variables for the parameters to detect NULL values being passed back from the procedure  
    The return value from a stored procedure is made available in the SQLERRD item.  
V10   REDEFINES supported in SQL host variables. Helpful when you want to redefine host variables or migrate code from other COBOL vendors who support this feature.
  COBOL File Handling Supports all COBOL file types (sequential, line sequential, relative and indexed). Provides fast, reliable file handling. You can rely on the integrity of your data and give great response times to your users.
V6   @CBR_TRAILING_BLANK_RECORD environment variable provides option to remove trailing blanks from line sequential records. Less space occupied by line sequential files.
V6   Maximum indexed file size increased to 3.4GB for BSAM files. Greater storage capacity for large applications.

V7

 

Maximum sequential and line sequential file sizes for BSAM files increased to the maximum file size allowed by the operating system.

You can create sequential and line sequential files as large as you like.
V10   Dummy files supported. This feature allows programs to be written that reference files that don’t actually exist. Useful during development phases.
V10 ACCEPT/DISPLAY support

Support enhanced with the following features:

  • Supports dummy files when input/output directed from/to a file
  • FROM or UPON use of CONSOLE overrides SYSIN/SYSOUT specification

Error output if a multithreaded ACCEPT is executed and there is no input data available from a file.

Useful during development phases.
V4 OLE server access

OLE server support is built into a special class supplied with OO COBOL. It includes the ability to:

Invoke OLE server methods

Get and Set OLE server properties

Get and Set OLE arrays

Integrate (into your applications) functions from application tools (such as Excel) that provide OLE Servers.
  Integrates with VB and other languages

NetCOBOL and Visual Basic can be combined so that:

COBOL programs call VB routines

VB routines call COBOL programs

COBOL and VB debuggers can run concurrently.

You have the flexibility to use COBOL business handling in VB applications and VB interface handling in COBOL applications.

Having both debuggers working concurrently reduces the guesswork for mixed-language debugging.

V8   COBOL programs can share external data items with C program external variables of the same name. Provides another option for sharing data between applications.
V5 Event log Run-time error messages and application messages can be written to an event log. Improved tracking of application events - particularly important in multi-threaded code.
  Print support

Combine PowerFORM overlays (pre-printed forms substitute) with regular print files.

Control print features from within the program - e.g. paper type, orientation, fonts, and point sizes.

Regular COBOL print reports can be given improved presentations with little or no coding changes.
V5   Regular print files can be printed double-sided under program control.  
V5   Greater control of binding margin direction, binding margin width, and origin of printing (uses VALID/INVALID function).  

V6

 

Supports use of a font number table, allowing print files to use any number of fonts.

 
  Project Manager "Programming Staff" from earlier versions has been enhanced and renamed "Project Manager". It includes:

After defining your project structure (how programs and source files are related), Project Manager takes care of dependencies – for example which programs need to be recompiled when you change a particular source file. You can focus on programming.

Configuration management helps you control developments across your team.

 

V7  

Tree View and List Views (all/editable files) of project (application) structure.

COBOL sensitive editor.

   

Compile, link, debug, build, execute, sensitive to any changes to sources or objects.

V4  

Integrated with OO tools.

Customizable menus.

V4   Includes easy movement of projects from folder to folder.
V4.2   C run-time library option
V5   Supports creation of CORBA client and server applications through Interstage add-on.
V6  

Interstage Object Director supported by both COBOL85 and OOCOBOL.
Interstage Transaction Director supported.

V5 +V6

 

Supports invocation of precompilers, with invocation details configurable across multiple source files.

V5   New Run-time Environment Setup tool incorporated (so the Run-time Environment Setup dialog is no longer displayed when applications start executing)
V6   Build multiple projects Simplified updating/management of related projects.
V6   Compiler picks up options (such as copy library folders) from environment variables. Allows several projects to share the same options.
V6   Project Manager accepts any extension for COBOL source files. Greater flexibility in constructing projects.
V6   Able to specify EXE and DLL version number information. Helps your users to track your program versions.
V7   Provides Properties dialog for setting project properties, including a comment/description Easier handling of project properties.
V7   Contains links and functions to support development of applications for/on a remote platform such as Solaris. (Requires NetCOBOL for Solaris V7) Provides the convenience of Windows tools for developing Solaris applications.
V9 Eclipse Alternative development environment, NetCOBOL Studio, provided based on Eclipse. Extensible development environment particularly useful for those who like the Eclipse IDE.
V10   Build function in NetCOBOL Studio supports the use of a pre-compiler. Enables compilation of COBOL programs that use syntax extensions that can be handled by pre-compilers.
V10.1   Supports remote development and debugging of applications on x64 platforms (NetCOBOL for Windows x64 and NetCOBOL for Linux x64). Convenient support for multiple target environments from a single client development environment.
+V7

Documentation Full documentation set provided online.
Integrated Documentation Viewer gives access to all online documentation from a single point - whether in PDF, HTML, or Windows Help format.
Easy access to extensive COBOL and product information.
V7   PDF documentation format enhanced and put into 8.5 x 11 page size. Makes for easier printing of selected pages.

"+Vn" in the "New in:" column indicates a feature that contains new or improved elements as well as existing
elements. When "+Vn" is in Italics, it refers to the italicized detail items. The number n indicates the release in which the new feature was introduced.

 

Object-oriented COBOL

New in: Feature Summary Detail of Feature Benefit of Feature
V4 OO programming

OO COBOL syntax, run-time support, and development tools (see below) are built into NetCOBOL. OO features supported:

Class/Object models

Information hiding (data encapsulation, object properties)

Modularization (methods, including prototype methods)

Single and multiple inheritance

Context-dependent functions (polymorphism)

Conformance checking

Static and dynamic binding

Garbage collection

Persistent object support techniques

Exception handling

If you are using OO design techniques, OO COBOL gives you a viable means of implementing those designs.

Continue to use your COBOL expertise while transitioning to the latest OO design techniques.

V4.2   Base class object termination method  
V5   SQL statements in Class definitions  
V5   Exception procedures in *OLE class  
V5   New special class added *COB-BINDTABLE for notifying other classes of variable values.  
V5   Reference to object properties not limited to MOVE and SET statements.  
V5   Indirect reference class.  
V5   Cross reference class  
V5   Object reference definition of self-class  
V5   ANY LENGTH - variable length parameters can be used in the linkage section of Method definitions.  
V5   PROCEDURE DIVISION RAISING - part of exception handling added.  
V6   Supports early binding Improves program performance.
V6   COBOL reserved words can be used as property names in other COM objects. Greater flexibility in connecting to other objects.
V6   Create COM/DCOM objects. Opens door to integrating with many application supporting technologies such as ASP and MTS.
V6   Create Microsoft Transaction Server (MTS) applications. You can conveniently add transaction support to your applications using a proven technology.
V6
+V7
  Java Adapter Class Generator enables invocation of Java objects. Supports JDK 1.4. Adds Java objects to the your COBOL toolset.
V4 Class browser

The Class Browser:

Lets you view all disclosed (released) classes.

Shows properties and methods for all classes.

Shows method interfaces.

Shows inheritance relationships between classes.

Helps you reuse code by helping you find and understand existing classes.
V4 Project browser

The Project Browser:

Lets you view source and class relationships within development projects.

Shows properties and methods used by all sources.

Shows inheritance relationships between classes within the project.

Helps you understand and manage OO project code – both standard and class format code.
V4 Introduction to OO Chapters have been added to the COBOL User’s Guide which give an excellent introduction to the OO concepts and features. Learn OO concepts quickly in a familiar context (COBOL).
V4 OO Support in PowerCOBOL

Syntax used for referencing PowerCOBOL properties and invoking PowerCOBOL methods closely follows the OO COBOL syntax.

OO COBOL classes can be built into PowerCOBOL applications.

PowerCOBOL leads you naturally into OO thinking both in programming and interface design.
"+Vn" in the "New in:" column indicates a feature that contains new or improved elements as well as existing
elements. When "+Vn" is in Italics, it refers to the italicized detail items. The number n indicates the release in which the new feature was introduced.

Debugging

New in: Feature Summary Detail of Feature Benefit of Feature
  Full execution control

The COBOL debugger provides:

Simple breakpoints

Conditional breakpoints

Break after n executions

Break on change of data items

Step statements – over subroutines

Step into subroutines

Run program:

to cursor position

to next program

to specified verb

Change current execution location

Animated execution (automatic, speed-controlled, step)

Fast resolution of bugs requires that you have many options on controlling program execution.

For example, if a problem occurs at the 1000th record in a file, you need a way to break execution at the 1000th iteration – the Fujitsu debugger gives you this degree of control.

V6   Interception of exceptions before MTS or ISAPI acts on the exceptions. Useful in the cases when MTS or ISAPI cause the exceptions - enables you to identify the location of the error in the COBOL code.
  Data query and update

View data values

Update data values

Watch data values while programs execute

Checking and monitoring data values is an essential part of debugging.
V4 Datatips Hover mouse pointer over data items to see the data value displayed beside the item. You can check data values quickly, in the context of source, using a minimum of screen "real estate".
  Program status

Call stack

Helps you maintain the context of your debugging focus.
+V5   Loaded program list or complete object program list if compiler LIST option used.

V5

 

Thread list

  Colorable source

Configure colors to indicate source line states such as breakpoints set, lines executed, current position.

Configure colors for reserved words and comments.

Helps you focus on the critical aspects for your debugging session.
  Automated debugging Record, store and execute sequences of frequently used debug commands, or complete debug sessions.

For bugs that are deep in the logic or execution sequence, automated debugging gets you to the point of interest with the minimum of effort.

Storing frequently used sequences of commands helps you become more productive.

  Execution history

Trace execution path forwards or backwards

Count number of times statements are executed

Helps you understand how execution arrived at a particular point, and hence speeds your resolution of a problem.
V5 See original SQL code Use the INSDBINF command to ensure that SQL precompilation inserts line number information so that the debugger shows the original source code. More effective debugging by viewing the original SQL source code.

V4

Attach to running applications

By specifying a run-time environment variable the debugger can be started whenever COBOL code is invoked.

Greatly simplifies the process of debugging COBOL code when invoked from another language or process.

V5 Just-in-Time Debugging Debugger can be started when an application or run-time error occurs. Protection violations or run-time errors can be analyzed as soon as they happen, saving much time in trying to reproduce the exact conditions to create the problem.
V5 COBOL Error Report Diagnostic information can be written to a file when a run-time or application error occurs. (Does not require Debugger to be running) More diagnostic information available when errors occur in system test or production applications.
V6  

Contents of information files added (CBR, Entry, ODBC, Printer, and Logical Destination), plus contents of the Command Line.

Stack summary information and stack dump added.

 
V8   COBOL program line numbers are included in runtime messages. Makes it easier to locate errors.
V6 Other Debugging Features Debugger automatically recognizes setting of the ALPHAL option. Speeds debugging of applications that do not use the default ALPHAL setting.
V6   System can optionally check the run-time system's memory at start and end of the procedure division. Lets you identify any programs that are corrupting the run-time system's memory, speeding resolution of these typically hard-to-crack problems.
V6   System can optionally check that calling and called programs are using the same linkage convention. Saves hours of debugging to identify this "simple" error.

"+Vn" in the "New in:" column indicates a feature that contains new or improved elements as well as existing
elements. When "+Vn" is in Italics, it refers to the italicized detail items. The number n indicates the release in which the new feature was introduced.

Data Tools

New in: Feature Summary Detail of Feature Benefit of Feature
  COBOL File Utility

File maintenance utility providing:

Conversion between text and sequential file formats.

Loading of all file formats from variable length record sequential files.

Unloading of all file formats to variable length record sequential files.

Browsing of all file formats.

Printing of all file formats.

Record editing for all file formats.

Adding records to all file formats.

Sorting all file formats.

Displaying indexed file record and key information.

Recovery of indexed files.

Reorganization of indexed files.

Copying, deleting and moving files.

Helps you perform the various file maintenance functions without having to write special programs.

V5

 

Invocable from the command line and as subroutines.

  Data Editor

Data Editor provides:

Field-sensitive data file editing.

Functions to insert, append, add, copy, delete and restore records.

Tabular or record-by-record b of the data.

Viewing of selected files only.

Character or hexadecimal editing of data.

Lets you see and edit data in the same field-by-field format your COBOL programs use.
V5   Files created with BINARY(BYTE) supported.
V5   Support for variable length records in indexed files.
V5   Record key definition information for indexed files viewable from record and table views.
V5   Table view data can be printed.
V5   Table view supports searching for character or hexadecimal values, and locating fields by name.
V5   Files in the root folder can be edited.
V6   Handling data files greater than 1 GigaByte (using BSAM)
V6   Populating data items automatically when records are inserted, appended, copied or replaced.
V6   Supports Unicode data.
V7   Import data to or export data from XML data files. Useful transfer/editing of data between COBOL and XML data files.
V7   Supports character data in the Replace function Natural entry of data.
V7   Handles binary data files. Useful for editing unstructured files.

 

Data Converter

Data Converter provides:

File organization conversions.

Conversions to/from CSV (Comma Separated Values) formats.

Record layout conversions.

Character-set conversions (e.g. EBCDIC to ASCII).

Field by field input/output mapping.

A conversion wizard for guidance through the complexities of file conversions.

Automates the tasks of updating file formats (e.g. when fields need to be added or extended) and lets you transfer data to/from spreadsheets or databases via the CSV format.
V5   Now supports up to 1000 items.  
V5   Invoke converter from a batch file command.  
V6   Handling data files greater than 1 GigaByte (using BSAM).  
V6   Supports Unicode Data.  
V7   Supports conversions between XML data files and other supported file formats. Provides connection between COBOL data and XML data.
V7   Create Document Type Definition (DTD) files, used with XML and matching COPY libraries from the Layout Definition File. Aids communication of data across the Web
"+Vn" in the "New in:" column indicates a feature that contains new or improved elements as well as existing elements. When "+Vn" is in Italics, it refers to the italicized detail items. The number n indicates the release in which the new feature was introduced.

Web Support

New in: Feature Summary Detail of Feature Benefit of Feature
V8 Parameter sanitizing Sanitizing is supported in the Web programming subroutines. Makes it possible to counter cross-site scripting vulnerabilities of Web applications.

 

CGI support

NetCOBOL CGI (Common Gateway Interface) is a set of subroutines that support the creation of CGI scripts in COBOL.

Makes it possible to provide web interfaces to existing COBOL server applications.

Use COBOL expertise to create Web applications.

V5 ISAPI support NetCOBOL ISAPI (Internet Server Application Programming Interface) is a set of subroutines that support the creation of Internet Server applications in COBOL.(Requires the Server Run-time, packaged as part of the Enterprise Edition, to create distributable applications) Use COBOL applications or expertise to create new Web-based applications.
V6 SAF support NetCOBOL SAF (Server Application Functions) Subroutines is a set of subroutines that support the creation of Netscape internet server applications in COBOL.
(Requires the Server Run-time, packaged as part of the Enterprise Edition, to create distributable applications)
Use COBOL applications or expertise to create new Web-based applications.
V6 Client Session Management Both the ISAPI and SAF support routines provide client session management functions. Lets you keep track of clients who generate a sequence of related inputs.
V6 File Uploading Both the ISAPI and SAF support routines provide file uploading functions. Add file uploading to your COBOL Web application abilities.
+V4 Prototype HTML
(Web page for processing output results)

NetCOBOL CGI includes a prototype HTML feature so that:

The basic output HTML can be designed using web authoring tools.

Variable parts of the output HTML can be set at run-time.

COBOL code can focus on the variable parts.

Saves effort in coding – you do not have to output HTML line-by-line.
V6   Supports a repeating construct so that tables can be constructed dynamically in the prototype HTML.  
V6 Development Support Web Application Wizard provides quick/guided generation of proforma COBOL Web application code. Saves time remembering structures for the different Web support routines - all this work is done for you.
V6

Active Server Pages (ASP)

Support of COM/DCOM objects makes COBOL a viable language to be invoked from Active Server Pages.(Requires the Server Run-time, packaged as part of the Enterprise Edition, to create distributable applications)

Lets you take advantage of your COBOL code in this popular Web page technology.
V7 XML Data Transfer Data Converter and Data Editor tools support the conversion of data between COBOL and XML data files. Aids communication of data across the Web

"+Vn" in the "New in:" column indicates a feature that contains new or improved elements as well as existing elements. When "+Vn" is in Italics, it refers to the italicized detail items. The number n indicates the release in which the new feature was introduced.

Oracle Web Cartridge

New in: Feature Summary Detail of Feature Benefit of Feature
V4 Integrated with Oracle's Web Application Server The Web Application Server is at the heart of Oracle’s Network Computing Architecture, an end-to-end, cross-platform infrastructure for developing and deploying object-based, network-centric applications across a networked economy. Fujitsu built the COBOL cartridge that is used in Oracle’s Web Application Server. Cartridges are reusable software components that serve as the key element of the Network Computing Architecture. The COBOL cartridge provides Internet support for NetCOBOL applications. Gives the option of integrating your COBOL applications with Oracle's Web Server.

"+Vn" in the "New in:" column indicates a feature that contains new or improved elements as well as existing elements. When "+Vn" is in Italics, it refers to the italicized detail items. The number n indicates the release in which the new feature was introduced.

Building Web Applications

COBOL on the Internet? You bet! With NetCOBOL's Internet support packages you can enable your applications for the web using a simple set of function calls.

Note that you will need the Enterprise Edition to distribute applications that use ASP, ISAPI and the Server (i.e. multi-threaded) run-time.

Web Support from Active Server Pages (ASP) By creating COM or DCOM objects using NetCOBOL you can invoke COBOL code directly from Active Server Pages. This way you can quickly use existing code and/or skills to create or enhance the highly used ASPs.

Web Support with CGI, ISAPI and SAF NetCOBOL comes with support packages for COBOL CGI (Common Gateway Interface), COBOL ISAPI (Internet Server Application Programming Interface) and COBOL SAF (Server Application Functions for Netscape Enterprise Server). These packages contain a set of subroutines that can be called from COBOL programs running on Internet servers. These subroutines make it possible for the COBOL programs to act as CGI scripts, ISAPI or NSAPI (Netscape Server Application Programming Interface) extensions - accepting input from Internet clients, performing normal COBOL logic and data processing, constructing variable HTML output, and sending the output back to the client, optionally requesting further input.

CGI, ISAPI and SAF Subroutines The subroutines are simple and straightforward to use, yet cover all the functions required for CGI, ISAPI and SAF programming, namely:

  • Retrieve values entered,
  • Output HTML line-by-line or in blocks, and
  • Execute commands.

The routines are compatible so that CGI applications can be converted into ISAPI or SAF applications with only a few minor modifications (required because of the different ways CGI, ISAPI and SAF work).

Prototype HTML

A key feature of the subroutines is the "Prototype HTML" concept. In this you create the bulk of your output HTML using normal HTML authoring tools, then place "//COBOL//" variable marker strings in the HTML. At execution time you use some of the subroutine calls to replace the variable marker strings with the actual text or HTML to be output. The subroutines do the work of transmitting the HTML to the client through CGI, ISAPI or SAF. You also have the option of assembling several Prototype HTML files to create a single output page

Benefits of Prototype HTML

The benefits of Prototype HTML are that:

  • You do not build a lot of HTML intelligence into your COBOL programs,
  • You do not have to have a lot of HTML expertise yourself, and
  • The amount of code required to output HTML is reduced.

Debugging Web Programs

As you can see from the above screen capture, debugging CGI scripts, Internet Server applications, Netscape Enterprise Server applications, or ASP supporting code, is just like debugging any other COBOL program. You use the "attach debugger" feature to bring up the debugger when the COBOL code is invoked on the server, then step through the code as it receives, processes and responds to the Web parameter input. (Note that Internet server products generally need configuration to allow the COBOL server session to interact with a user.)

Create Web-based Applications

The NetCOBOL Internet support packages and the "prototype HTML" feature make it easy to build dynamic web sites with the power of COBOL. Database access and business logic can all be done in familiar COBOL.

Integrating with Visual Basic

You can seamlessly and transparently connect to a variety of Microsoft tools with the NetCOBOL suite of products including Access™, ActiveX®, COM/DCOM, SQL Server, Transaction Server, and Visual Basic®. And you can access DLLs you create in NetCOBOL from any of Microsoft’s development languages.

NetCOBOL’s support of Transaction Server and COM/DCOM architecture lets your COBOL logic run as part of the client code, the local server code, or the remote server code. You can still embed SQL statements in your COBOL code, but with our extended ODBC support, you can now access even more databases than ever before.

Using NetCOBOL with Visual Basic allows you to access COBOL logic from Visual Basic, where you can make dynamic calls to COBOL. Passing data between Visual Basic and NetCOBOL is easy. You can also use Visual Basic to add GUIs to your COBOL applications. A particularly useful feature is that you can debug your Visual Basic and COBOL code at the same time. The debuggers run in separate windows so you can watch the execution flow as it switches between the two languages.

For more information about NetCOBOL and Visual Basic, you can access the following white paper: Best of GUI. Best of COBOL. Accessing COBOL Programs from Visual Basic. (This file is a 218 kb PDF. If you would like to download it rather than view it in your browser, please right click on the link and select "Save As" and download it to your computer).

Data Access Options

In today's application environment an organization's data can be stored in a wide variety of databases, spreadsheets or file systems. NetCOBOL provides support for a large number of databases and data access techniques so that your applications can access the data they require.

Data Access Using the COBOL File System

NetCOBOL supports the full range of COBOL files*:

  • Sequential
  • Line Sequential
  • Relative
  • Indexed

*For both fixed and variable length formats.

The Data Converter tool extends this range by supporting conversion to and from CSV format (Comma Separated Values - a data exchange format supported by most spreadsheets and databases), and conversion to and from EBCDIC, giving the option of using mainframe-based files.

Data Access Using Embedded SQL

NetCOBOL supports embedded SQL ("EXEC SQL ...") connecting to the following databases:

Data Access Using ODBC

ODBC databases can be accessed using:

  • Embedded SQL (indicated above)
  • The PowerCOBOL ODBC control

Data Access Using OLE

NetCOBOL supplies a special OLE class along with a mapping of COBOL data types to OLE data types. This makes accessing OLE data from COBOL applications a straightforward process.

Data Access Using DDE

The DDE control in PowerCOBOL and its supporting methods makes available the data from any application that provides a DDE server.

Data Access Using Microsoft's ActiveX Data Objects (ADO)

The ADODataSource control in PowerCOBOL provides access to the many properties, methods and events supplied in Microsoft's ActiveX Data Objects. These objects can greatly enhance what you can do with ODBC databases.

Data Access Using the Excel Connection

The ExcelConnection control in PowerCOBOL provides specific methods of accessing and updating Microsoft Excel data.