Data Management

BIM-EDIT Source Program Editor

Platform: z/VSE

BIM-EDIT offers a whole range of commands, such as FOR, BACK, UP, NEXT and DEL, that function exactly as they do in other online editors. You'll find that the line command areas also work the same and that the screen layout is remarkably similar. However, BIM-EDIT differs by avoiding many design problems, providing a superior design.


Ease of Use

BIM-EDIT provides a far more useful function list feature than that provided with ICCF and other editors. Displays created by commands such as LIB have a line command area. If the member you want to perform some action against is displayed on the screen, you can enter any one of a number of commands in the line command area associated with the member. For example, you can edit, list, alter, submit, or execute the member in this manner. Note that BIM-EDIT does not preclude you from entering normal command line commands in such a situation. If the desired member is not on the screen, you may choose to simply enter the command line command to perform the desired action. ICCF precludes this, thus significantly diminishing the utility of its function list feature, since you can have command line support or function list support, but not both.

BIM-EDIT's LP (List POWER) sessions are significantly easier to use than other online editors. For example, in ICCF, when editing a member, to scroll forward to the next screen you enter FOR but when viewing a POWER job, to scroll forward you enter /SKIP. In fact, ICCF has a completely different set of commands for processing LP sessions. With BIM-EDIT, you use the same commands in an LP session that you'd use in an EDIT session. To scroll forward, simply enter FOR. Apart from ICCF's syntax problems, ICCF's LP session performance is clearly inadequate. With BIM-EDIT, response is as fast in a LP session as it is in an EDIT session.

BIM-EDIT maintains all groups and sessions on a circular chain, whether they are EDIT, LP, etc. BIM-EDIT's approach allows you to "rotate" through this circular chain. The ROTATE and GROUP commands are provided for this purpose. By use of the ROT +/- and the GRP +/- commands, you can easily switch between up to 99 concurrent sessions, divided between up to 9 groups. The groups can be rotated to using the GRP command, sessions within a group are rotated to using the ROT command. A good use for this feature is switching between a compiler listing and its associated source member.

BIM-EDIT provides a split-screen facility. Its big advantage here over ICCF is that two different session types can be displayed on the screen. The obvious use is having the compiler listing on one half and the associated source on the other. BIM-EDIT provides LIST sessions that function the same way as EDIT sessions except that updates are prohibited. Even the line command area is provided. ICCF also provides LIST sessions, but they don't function the same way as the EDIT sessions.

BIM-EDIT supports the ICCF line area commands. For example, you could delete 25 lines by entering D25 in the line command area. However, BIM-EDIT also provides the bracket form of the commands, so instead of entering D25, you could enter DD on the first line to be deleted and DD on the last line to be deleted. The first and last line need not be on the same screen, so you can enter the first (or last) command and scroll forward (or backward) and enter the other command.

BIM-EDIT allows any number of libraries to be defined. ICCF requires you to define the maximum number of libraries at the time the file is formatted. BIM-EDIT libraries are assigned an alphanumeric name up to 16 characters in length, allowing you to symbolically name your libraries. ICCF libraries are only assigned a number.

BIM-EDIT allows any number of members in a library, without loss of efficiency. ICCF recommends small libraries, because of performance problems with large libraries. BIM-EDIT always maintains and displays members in an alphabetical order. ICCF places a member name in the first available directory slot, with members displayed in their slot location order. BIM-EDIT members are assigned an alphanumeric name of up to 16 characters in length. ICCF restricts member names to eight characters in length.

BIM-EDIT allows you to access a member from a library without necessarily being attached to it. This is done by prefixing the member name with the library name and a period. For example, if you are attached to library ACCT-PAY, and you'd like to edit member OMREXIO in library OM20F, enter: => ed om20f.omrexio. ICCF provides no comparable facility.

BIM-EDIT allows you to logoff anytime, even when you're editing a member. When you logon, you're at the exact point you were at when you logged off. The edit session is still intact. In fact, BIM-EDIT's entire environment is preserved at logoff time, and restored at logon. Even PF keys retain their settings. With ICCF, all sessions must be ended. No attempt is made to preserve the environment.

When logged on through CICS, BIM-EDIT allows you to START, XCTL or LINK to other CICS programs. If the command entered on the command line matches an entry in a user-specified transaction table, the START, XCTL or LINK occurs. The entire command line is passed as data to the program. The program can in turn transfer control back to BIM-EDIT, bypassing the normal logon procedure. ICCF provides no comparable facility.

BIM-EDIT does not have multiple modes, at least not in the ICCF sense. If you're editing a member, you can still, for example, purge a POWER job. Additionally, commands do not have prefixes. With ICCF, you enter /PURGE. With BIM-EDIT, you simply enter PURGE.

BIM-EDIT allows lines to be up to 253 characters in length. ICCF lines are always 80 characters.

BIM-EDIT supports 3270 CRT models two, three, four and five. BIM-EDIT even has a command for switching between the default screen size and the alternate screen size. ICCF claims to support all models. In fact, they treat a model five screen as if it was a model two screen. BIM-EDIT actually allows you to edit up to 124 characters per line on a model five screen.


Source Control

BIM-EDIT provides a source control facility known as the "checkout/checkin" facility. A member can be "checked out" from a library and placed in another library. The original member is marked as being checked out and by whom. Other users are prevented from editing or checking out the original member until it has been "checked in." ICCF provides no comparable facility. This "checkout/checkin" facility can be extended further by activating BIM-EDIT's "Archive Facility." This facility will maintain a preset number of generations of each member as they are checked in to their original libraries. You can recover a module to any of its previous generations, either from the generation library or an archive backup tape.

BIM-EDIT provides a source control facility known as member auditing. If member auditing is set on, a sequential list of updates is maintained. If, for any reason, you need to know what updates occurred against a member, the audit trail can be viewed online. If you need to restore a member to its status prior to certain updates, the AUDITRL command reverses updates based upon the audit trail. ICCF provides no comparable facility.

BIM-EDIT provides a source control facility known as member stamping. If member stamping is set on, as a line is added or updated it is "stamped" with user ID, date and the update type. If you need to know what lines have been added or updated, the stamp information can be viewed either online or in printed form. ICCF provides a stamping feature, but the design is flawed. The stamp information is stored in columns 73-80 of each line. This presents three problems. First of all, integrity of the information cannot be assured because columns 73-80 can be updated by normal editing commands. Second, columns 73-80 become unavailable for other uses. Third, because of inadequate space (eight columns), the full date cannot be stored. The month and day are stored, but not the year. BIM-EDIT resolves all of the above problems by storing the stamp external to the line text. The stamp information is always intact. Columns 73-80 are available for other uses. The complete date is stored.

BIM-EDIT provides a source control facility known as purge control. If purge control is active, when a member is purged a copy of the member is placed in a special purge library. If you happen to inadvertently purge a member, the member can be recovered from the purge library. Periodically, the members in the purge library are written to tape and/or purged. ICCF provides no comparable facility.

BIM-EDIT edits a work copy of a member, never the permanent copy. The work copy becomes a permanent copy only when the SAVE command is issued. If an inadvertent error is made, the command END NOSAVE will end the edit session without affecting the permanent copy. ICCF edits the member directly. If you enter D99 instead of D9, there is no way to reverse the extra deletes.



BIM-EDIT's library security system is straightforward. After users and libraries are defined, you define the level of access that a given user is to have to a particular library. Six access levels are provided, ranging from very restrictive to the permissive. Any number of user/library security relationships can be defined. You can also define a default access level for a library. The default access level is used whenever an explicit user/library security relationship is not defined.

ICCF's approach to POWER queue security is rather awkward, and tends not to get used for that reason. In BIM-EDIT, the security is provided by an exit routine. The standard exit routine provided with BIM-EDIT can be used or it can be replaced with a custom version. BIM-EDIT passes a copy of the POWER queue record to the exit routine. The exit routine can then either authorize access to the queue record or deny access, depending upon the contents of the queue record and the user requesting access. The standard exit routine, as distributed with BIM-EDIT, provides the option of allowing access only to queue records where the POWER user field begins with the BIM-EDIT logon ID.


Performance / Efficiency

BIM-EDIT's virtual storage requirement is significantly less than ICCF's. A typical BIM-EDIT site with 30 users logged on can function quite nicely with a total virtual storage requirement of 800,000 bytes. A similar ICCF site may have as much as four million bytes allocated. Further, under SP 2.1, BIM-EDIT can be set up to run in a different address space than the CICS system it is serving (if any). In this environment, the virtual storage requirement within the CICS partition/address space is negligible. The implementation also allows BIM-EDIT to service more than one CICS concurrently without extra virtual storage requirements.

BIM-EDIT will consume significantly less CPU cycles than ICCF. Expect a reduction of at least 50%. Further, BIM-EDIT will initiate less I/O's than ICCF. Again, expect a reduction of at least 50%. The reduction in CPU usage and I/O activity translates into faster response times for users. Given identical environments, virtually all operations yield faster response times under BIM-EDIT than under ICCF.

BIM-EDIT always stores text in a compressed format. You don't have to do anything to compress a member. It's a totally transparent feature. ICCF, on the other hand, requires users to enter the SQUEEZE command. The member is then unavailable until it has been expanded.

BIM-EDIT compresses outbound screen data to the maximum possible extent. A sequence of characters which matches those already present on the screen is not sent, and repeating characters are compressed using the 3270 repeat-to-address command. For a typical program edit session screen, this can result in dramatic transmission time reduction. ICCF performs no screen transmission compression.



BIM-EDIT can be accessed in a number of different ways: through one or multiple CICSs, directly through VTAM, through a batch utility job stream, through the system console, through a TCP/IP FTP interface, through a BIM-FAQS product or through a user-written program calling BIM-EDIT interface routines. BIM-EDIT's flexibility here extends far beyond ICCF's. For example, if you have a production CICS and a test CICS, you can access the same BIM-EDIT system through either CICS. You can also log on to BIM-EDIT directly through VTAM. This can be done whether or not any CICS systems are active.

BIM-EDIT provides fast, automatic recovery after computer or other failure. ICCF, on the other hand, makes a bad situation worse by requiring a lengthy batch utility to analyze its library before the restart can continue.

BIM-EDIT allows round-the-clock update access to its library, even while it is being backed up. This includes editing of members. ICCF disables all operations while backup is running. BIM-EDIT also allows batch update jobs to function while online BIM-EDIT is in use. ICCF rejects batch update operations while its online system is active.

BIM-EDIT normally does not require backup/restore condense jobs. ICCF does. With ICCF, performance significantly deteriorates as member records become physically non-contiguous. Lines in a BIM-EDIT member are always physically contiguous.

BIM-EDIT batch has access to virtually all of the commands available online. You can even submit jobs from a BIM-EDIT batch job.


Procedure Processor

ICCF distinguishes between procedures and macros. Each has its own set of rules and constraints. BIM-EDIT makes no such distinction, a simplification in itself.

A BIM-EDIT procedure can be invoked at any time and in any environment. For example, you can invoke a procedure while editing a member. You can even invoke a procedure while running BIM-EDIT in batch. On the other hand, ICCF places restrictions on when a macro or a procedure can be invoked. For example, an ICCF procedure cannot be invoked while editing a member. You can invoke a macro, but macros are quite limited compared with procedures. Neither a procedure nor a macro can be invoked in batch.

BIM-EDIT procedures can in turn invoke other BIM-EDIT procedures. In contrast, ICCF macro can invoke an ICCF procedure, but a procedure cannot invoke another procedure.

BIM-EDIT parameters are easy to retrieve and process. BIM-EDIT provides the PARSE command specifically for this. ICCF provides no comparable facility. Parsing the parameters can be a substantial part of a typical ICCF procedure. A BIM-EDIT procedure does it with one command.

BIM-EDIT procedures can interact with the user on a full-screen basis through the MAPF command. ICCF allows only single line control through its TYPE and READ commands.


Electronic Mail

BIM-EDIT provides a full-function electronic mail system. Either full documents or single-line messages can be sent from one user to another. As soon as a message is sent, the intended recipient is advised of outstanding mail by a highlighted indicator on the information line of his screen. The intended recipient then issues a command to display the message.

Each user logically has three groups of messages: those that have been received but not opened, opened but not purged and sent but not opened by the intended recipient. The LIBQ command displays a list of all messages residing in the three groups.

The "electronic mail" can be very useful when submitting compilations or assemblies. A batch utility step can be added to the end of the compilation or assembly to test for errors. If errors are found a mail message can be sent to the user that submitted the job alerting the user of the fact that an error occurred. By using this feature the users do not have to view the output of the compilation or assembly to determine whether there were any errors.





Data Sheet

Available Downloads