Go to Home Page
Questions?
Call 1-800-572-5517
 
  Go to Home Page  
  See all products
  See price schedules
  See manuals, tutorials, articles
  Download a free 30-day trial
  See user testimonials
  About Pacific Systems Group
 
 
SMF Tools
  See SMF Record Layouts
  See Sample SMF Reports
  Learn How to Export SMF Data
  Download Free SMF Reporting Software (30 days)
 
One of the greatest SMF record parsing programming languages I've ever seen. Chief, Large Systems Services Branch, NIH
  Choose Spectrum Writer to add 4GL to your product
  Free 60-Page Book (PDF) - How to Make an SMF Report
Spectrum DCOLLECT Reporter - the 4GL DCOLLECT Report Writer.

Spectrum SMF Writer - the 4GL SMF Report Writer.

SMF Type 94 Record - Subtype 2

This table shows the record layout for type 94 SMF records
(IBM Tape Library Dataserver Statistics).

List of other SMF record layouts available.
List of sample SMF reports.

Purpose: The system-managed tape library accumulates statistics over the period of one hour. These statistics represent the activity of the IBM Tape Library Dataserver that results from all hosts attached to the library.

At the end of the hour, the system calculates composite statistics about the activity of all devices in the library and writes an SMF type 94 record.

The information in the SMF type 94 record represents:

  • Current Information Represents: the value of the statistic at the point the record is written.
  • Summary of the Last Hour Information: Represents statistics over the most recent hour for which composite statistics have been calculated.

For a VTS library, when microcode level F/C 4001 is installed and Outboard Policy Management is enabled, a new SMF94 record will be recorded. The new record is an SMF94 subtype=2, and will be recorded in addition to the existing SMF94 subtype=1. The SMF94 subtype=2 record is used to record Volume Pool Statistics.

The existing subtype=1 is also changed. When F/C 4001 is installed and Outboard Policy Management is enabled, some existing statistics will not be reported. The unreported fields will contain binary zero. Existing field SMF94HSF in subtype=1 records will contain the value 2 when F/C 4001 is installed and Outboard Policy Management is enabled.

It's easy to report on SMF 94 data! (Jump to sample reports)

SMF Spectrum Writer
We have a low-cost 4GL report writer especially for SMF files. It's called Spectrum SMF Writer.

Spectrum SMF Writer handles the difficult SMF record parsing for you automatically. You just specify which fields you want to see.

Spectrum SMF Writer also converts the arcane date and time fields and reformats them into an attractive report.

Plus, Spectrum SMF Writer can export SMF data as comma delimited files to use on your PC.
 
Try It FREE Now!

SMF Type 94 Record -- IBM Tape Library Dataserver Statistics
Offset
(Dec.)
Offset
(Hex)
NameLengthFormatDescription
Self-defining Section - Subtype 2
This section contains the triplet fields (offset/length/number), that locate the other sections on the record. The mapping macro resides in SYS1.MACLIB.
00SMF94S2_
LEN
2binary
Record length.
22SMF94S2_
SEG
2binary
Segment descriptor.
44SMF94S2_
FLG
1binary
System indicator: Bit Meaning When Set 0-3 Reserved. 4 Subsystem name follows. 5 Subtypes utilized. 6-7 Reserved.
55SMF94S2_
RTY
1binary
Record type 94 — Subtype 2
66SMF94S2_
TME
4binary
Time since midnight, in hundredths of a second, when the record was moved into the SMF buffer.
10ASMF94S2_
DTE
4packed
Date when the record was moved into the SMF buffer, in the form 0cyydddF.
14ESMF94S2_
SID
4EBCDIC
System identification (from SMFPRMxx parmlib member).
1812SMF94S2_
WID
4EBCDIC
Subsystem identification, worktype indicator.
2216SMF94S2_
STP
2binary
Record subtype ‘02’ — Volume pooling statistics
Product Section
(Offset from beginning of record: SMF94S2_POF)
2418SMF94S2_
SDL
4binary
Self-defining section length
281CSMF94S2_
POF
4binary
Offset to product section
3220SMF94S2_
PLN
2binary
Length of product section
3422SMF94S2_
PON
2binary
Number of product sections
3624SMF94S2_
HOF
4binary
Offset to header section
4028SMF94S2_
HLN
2binary
Length of header section
422ASMF94S2_
HON
2binary
Number of header sections
442CSMF94S2_
SOF
4binary
Offset to statistics section
4830SMF94S2_
SLN
2binary
Length of statistics section
5032SMF94S2_
SON
2binary
Number of statistics sections
Format Section
(Offset from beginning of record: SMF94S2_HOF)
00SMF94S2_
TYP
2binary
Subtype for type 94 record.
22SMF94S2_
RVN
2EBCDIC
Record version number C’01’.
44SMF94S2_
PNM
8EBCDIC
Product name ’fmid ’.
12CSMF94S2_
MVS
8EBCDIC
MVS operating system name.
Volume Pool Statistics (VPS) Section
(Offset from beginning of record: SMF94S2_SOF)
00--32binary
Reserved (set to zero).
Volume Pool Statistics (VPS) Array Section
(Offset from beginning of record: SMF94S2_SOF + 48)
00--14binary
VPS Message Header data
14ESMF94S2_
HHI
2binary
Hour Index. The hour index is incremented once each hour by the library manager. It is used to prevent duplicate logged statistics from the same one hour period from being counted twice. The hour index for volume pooling statistics is the same as reported for library statistical data calculated for the same hour.
1610SMF94S2_
LRTD
10EBCDIC
Last Reconcile Time and Date. This 10 EBCDIC character field contains the last time and date a reconcile was automatically completed by the VTS. Some of the statistical fields are calculated at this point.
261ASMF94S2_
MNVP
2binary
Maximum number of volume pools allowed in the partition This 2 byte hexadecimal field contains the maximum number of volume pools allowed in the partition. The number begins with 1. This field is used by the host to determine if there are more than 16 volume pools which would require additional requests for statistical data.
281C--1binary
Reserved (set to X’00’).
291DSMF94S2_
VPSET
1binary
Volume Pool Set. This byte specifies which set of volume pools are being reported, based on the set requested in the preceding request. If the set specified is 0, the first 16 volume pools are reported, if 1, the next 16 and so on.
301E--2binary
Reserved (set to X’00’).
3220--1binary
Reserved (set to X’00’).
3321SMF94S2_
BPMIO
1binary
Common Scratch Pool Media Identifier 0. This one byte field contains the identifier for the media type associated with the following common scratch pool volume count. The following are the defined values for this field: Value Description X'00' No media type configured. X'10' 3590 ‘J’ media X'11' 3590 ‘K’ media
3422SMF94S2_
BPSVCO
2binary
Common Scratch Pool Stacked Volume Count - Media Identifier 0 (Hourly Snapshot) This two byte field contains the number of scratch stacked volumes, of a type identified by Media Identifier 0, assigned to the common volume pool. The number is updated periodically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour. Physical volumes are assigned to the common scratch pool upon entry into the library or when returned from being borrowed by another pool.
3624--1binary
Reserved (set to X’00’).
3725SMF94S2_
BPMI1
1binary
Common Scratch Pool Media Identifier 1 This one byte field contains the identifier for the media type associated with the following common scratch pool volume count. See the Common Scratch Pool Media Identifier 0 field for the values defined for this field.
3826SMF94S2_
BPSVC1
2binary
Common Scratch Pool Stacked Volume Count - Media Identifier 1 (Hourly Snapshot) This two byte field contains the number of scratch stacked volumes, of a type identified by Media Identifier 1, assigned to the common volume pool. The number is updated periodically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour. Physical volumes are assigned to the common scratch pool upon entry into the library or when returned from being borrowed by another pool.
4028--1binary
Reserved (set to X'00'
4129SMF94S2_
BPMI2
1binary
Common Scratch Pool Media Identifier 2 This one byte field contains the identifier for the media type associated with the following common scratch pool volume count. See the Common Scratch Pool Media Identifier 0 field for the values defined for this field.
422ASMF94S2_
BPSVC2
2binary
Common Scratch Pool Stacked Volume Count - Media Identifier 2 (Hourly Snapshot) This two byte field contains the number of scratch stacked volumes, of a type identified by Media Identifier 2, assigned to the common volume pool. The number is updated periodically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour. Physical volumes are assigned to the common scratch pool upon entry into the library or when returned from being borrowed by another pool.
442C--1binary
Reserved (set to X’00’).
452DSMF94S2_
BPMI3
1binary
Common Scratch Pool Media Identifier 3 This one byte field contains the identifier for the media type associated with the following common scratch pool volume count. See the Common Scratch Pool Media Identifier 0 field for the values defined for this field.
462ESMF94S2_
SVC3
2binary
Common Scratch Pool Stacked Volume Count - Media ID 3 (Hourly Snapshot) This two byte field contains the number of scratch stacked volumes, of a type identified by Media Identifier 3, assigned to the common volume pool. The number is updated periodically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour. Physical volumes are assigned to the common scratch pool upon entry into the library or when returned from being borrowed by another pool.
4830SMF94S2_
ARRAY
1792binary
Volume Pool Statistics array. Each entry contains information about the usage and characteristics of a volume pool. Each entry in the array is 112 bytes long and is mapped by SMF94S2_ARRAY_ENTRY. Up to 16 array entries may be present. SMF94S2_MNVP contains the maximum number of pools in the library partition. When there are more than 16 pools, additional Volume Pool Statistics sections will be recorded. The number of Volume Pool Statistics sections is indicated by SMF94S2_SON in the self-defining section.
00--1binary
Reserved (set to X'00'
11SMF94S2_
VPN
1binary
Pool Number. This one byte field contains the volume pool number. Pools are numbered starting with 1.
22--2binary
Reserved (set to X'00'
44SMF94S2_
ALVIP
4binary
Active logical volumes in pool (Hourly Snapshot) This four byte field contains the number of logical volume images resident in the volume pool. The number is updated dynamically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour. To be considered resident in a pool, the logical volume must be on one of the physical volumes assigned to the pool. Cache resident only volumes, although assigned to the pool, are not included. Programming Note: This field may indicate a larger number of active logical volumes then is expected in a pool because it contain old versions of a logical volume’s image after its been reused, modified, or deleted since the last reconcile was completed. Reconcile removes the database references for old versions of logical volume images so that they are no longer included in the count.
88SMF94S2_
ADIVP
4binary
Active data in volume pool (Hourly Snapshot). This four byte field contains the number of MBytes of logical volume image data managed by the virtual tape server in the volume pool. The number is updated dynamically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour. To be considered resident in a pool, the logical volume must be on one of the physical volumes assigned to the pool. Cache resident only volumes, although assigned to the pool, are not included. It is accumulated in bytes and reported in an integral multiple of 1,048,576 bytes (1 MByte). Notes: 1. This field may indicate a larger count of active data then is expected in a pool because it contain old versions of a logical volume’s image after its been reused, modified, or deleted since the last reconcile was completed. Reconcile removes the database references for old versions of logical volume images so that their contents are no longer included in the count. 2. This field does not include the volumes that are currently mounted. Only volumes that have been premigrated are included in the count.
12CSMF94S2_
DWTPLH
4binary
Data written to the pool in the last hour This four byte field contains the number of MBytes premigrated from the tape volume cache to the pool during the last hour. Only the data for logical volumes that have completed premigration when statistics were calculated at the end of the last hour are included in this value. The value is reset and a new count begins after statistics are calculated. The count is accumulated in bytes and reported in an integral multiple of 1,048,576 bytes (1 MByte).
1610SMF94S2_
PDCI
1binary
Pool Device Class Identifier. This one byte field contains the device class identifier for the volume pool. The following are the defined values for this field: Value Description X'00' There is no device class configured. X'11' 3590 Model B1A X'13' 3590 Model E1A X'14' 3590 Model H1A
1711SMF94S2_
MI0
1binary
Media Identifier 0 This one byte field contains the identifier for one of two media compatible with the device class for the pool. Refer to the definition of the Common Scratch Pool Media Identifier 0 field for the values defined for this field.
1812SMF94S2_
PSSSVC0
2binary
Pool Static Scratch Stacked Volume Count - Media Identifier 0 (Hourly Snapshot) This two byte field contains the number of media identifier 0 volumes that were statically assigned to the volume pool and are in scratch status. The number is updated periodically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour.
2014SMF94S2_
PSPSVC0
2binary
Pool Static Private Stacked Volume Count - Media Identifier 0 (Hourly Snapshot) This two byte field contains the number of media identifier 0 volumes that are statically assigned to the volume pool and contain active data. This includes volumes that have been marked full or those that are in the process of being filled. The number is updated periodically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour.
2216SMF94S2_
PBSSVC0
2binary
Pool Borrowed Scratch Stacked Volume Count - Media Identifier 0 (Hourly Snapshot) This two byte field contains the number of media identifier 0 volumes that were assigned to the volume pool through borrowing and are in scratch status. The number is updated periodically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour.
2418SMF94S2_
PBPSVC0
2binary
Pool Borrowed Private Stacked Volume Count - Media Identifier 0 (Hourly Snapshot) This two byte field contains the number of media identifier 0 volumes that are assigned to the volume pool through borrowing that contain active data. This includes volumes that have been marked full or those that are in the process of being filled. The number is updated periodically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour.
261A--1binary
Reserved (set to X'00'
271BSMF94S2_
MI1
1binary
Media Identifier 1. This one byte field contains the identifier for one of two media compatible with the device class for the pool. Refer to the definition of the Common Scratch Pool Media Identifier 0 field for the values defined for this field.
281CSMF94S2_
PSSSVC1
2binary
Pool Static Scratch Stacked Volume Count - Media Identifier 1 (Hourly Snapshot) This two byte field contains the number of media identifier 1 volumes that were statically assigned to the volume pool and are in scratch status. The number is updated periodically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour.
301ESMF94S2_
PSPSVC1
2binary
Pool Static Private Stacked Volume Count - Media Identifier 1 (Hourly Snapshot) This two byte field contains the number of media identifier 1 volumes that are statically assigned to the volume pool and contain active data. This includes volumes that have been marked full or those that are in the process of being filled. The number is updated periodically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour.
3220SMF94S2_
PBSSVC1
2binary
Pool Borrowed Scratch Stacked Volume Count - Media Identifier 1 (Hourly Snapshot) This two byte field contains the number of media identifier 1 volumes that were assigned to the volume pool through borrowing and are in scratch status. The number is updated periodically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour.
3422SMF94S2_
PBPSVC1
2binary
Pool Borrowed Private Stacked Volume Count - Media Identifier 1 (Hourly Snapshot) This two byte field contains the number of media identifier 1 volumes that were assigned to the volume pool through borrowing that contain active data. This includes volumes that have been marked full or those that are in the process of being filled. The number is updated periodically within the VTS and the reported value is the snapshot of that count when statistics are calculated at the end of the last hour.
3624--4binary
Reserved (set to X'00'
4028SMF94S2_
AAORD
2binary
Average age of residual data (as of the last reconcile). This two byte field contains the average age, in days, of the residual data that resides on the stacked volumes assigned to the pool at the completion of the last reconcile. Statically assigned and borrowed volumes are included in this calculation. A physical volume has residual data on it if it is not full. This value is calculated based on the date a volume transitions to not full and the current date. When a logical volume’s image on a physical volume no longer represents the most current version of the volume, after a reconcile, it has been removed from the database that manages the physical volumes and it is considered residual data.
422ASMF94S2_
MAORD
2binary
Maximum age of residual data (as of the last reconcile). This two byte field contains the maximum age, in days, of the residual data that resides on the stacked volumes assigned to the pool at the completion of the last reconcile. Statically assigned and borrowed volumes are included in this calculation. A physical volume has residual data on it if it is not full. This value is calculated based on the date a volume transitions to not full and the current date. When a logical volume’s image on a physical volume no longer represents the most current version of the volume, after a reconcile, it has been removed from the database that manages the physical volumes and it is considered residual data.
442CSMF94S2_
AAOFPSV
2binary
Average age of the full private stacked volumes (as of the last reconcile). This two byte field contains the average age, in days, of the private stacked volumes in the volume pool at the completion of the last reconcile. Statically assigned and borrowed volumes are included in this calculation. The age of a volume is measured from when the volume is marked as full until it is reclaimed.
462ESMF94S2_
MAOFPSV
2binary
Maximum age of the full private stacked volumes (as of the last reconcile). This two byte field contains the maximum age, in days, of the private stacked volumes in the volume pool at the completion of the last reconcile. Statically assigned and borrowed volumes are included in this calculation. The age of a volume is measured from when the volume is marked as full until it is reclaimed.
4830--1binary
Reserved (set to X'00'
4931SMF94S2_
VPRTP
1binary
Volume pool reclaim threshold percentage (Current value). This one byte field contains the current reclaim threshold percentage set for the volume pool.
5032SMF94S2_
ADD00
2binary
0-5% Active Data Distribution The next twenty, two byte fields report the number of full private stacked volumes in the volume pool that contain active data by the percentage (5% granularity) of active data remaining on the volumes. The numbers are updated periodically within the VTS and the reported value is the snapshot taken when statistics are calculated at the end of the last hour. The percentage of active data is relative to the amount of data on a stacked volume when it was filled.
5234SMF94S2_
ADD05
2binary
>5-10% active data
5436SMF94S2_
ADD10
2binary
>10-15% active data
5638SMF94S2_
ADD15
2binary
>15-20% active data
583ASMF94S2_
ADD20
2binary
>20-25% active data
603CSMF94S2_
ADD25
2binary
>25-30% active data
623ESMF94S2_
ADD30
2binary
>30-35% active data
6440SMF94S2_
ADD35
2binary
>35-40% active data
6642SMF94S2_
ADD40
2binary
>40-45% active data
6844SMF94S2_
ADD45
2binary
>45-50% active data
7046SMF94S2_
ADD50
2binary
>50-55% active data
7248SMF94S2_
ADD55
2binary
>550-60% active data
744ASMF94S2_
ADD60
2binary
>60-65% active data
764CSMF94S2_
ADD65
2binary
>65-70% active data
784ESMF94S2_
ADD70
2binary
>70-75% active data
8050SMF94S2_
ADD75
2binary
>75-80% active data
8252SMF94S2_
ADD80
2binary
>80-85% active data
8454SMF94S2_
ADD85
2binary
>85-90% active data
8656SMF94S2_
ADD90
2binary
>90-95% active data
8858SMF94S2_
ADD95
2binary
>95-100% active data
905ASMF94S2_
PPP
1binary
Physical Pool Properties. This field contains the current settings of the pool’s management controls when statistics were calculated at the end of the last hour.
915B--1binary
Reserved (set to X'00'
925CSMF94S2_
RPN
1binary
Reclamation Pool. This one byte field contains the pool number to be used for the target for data that is reclaimed. Pools are numbered starting with 1.
935D--3binary
Reserved (set to X'00'
9660--15binary
Reserved (set to X'00')

The table above is based on the description provided by IBM in its "MVS Systems Management Facilities (SMF)" manual.

Sample Report from SMF 94 Records (IFCID=1)
Showing Tape Library System Statistics


The sample SMF report below was created with Spectrum SMF Writer, the low-cost 4GL SMF report writer. It reads as input the SMF file and selects just the type 94 subtype 1 tape library ststem records. (See SMF 94 record layout.) It selects the record for the hourly statistics for 11AM and prints various statistics for that hour.

All of this with just a few simple 4GL statements!
Why not install a Spectrum SMF Writer trial right now and start making your own SMF reports!

These Spectrum SMF Writer Statements:


OPTION: HDGSEP('/') /* CHANGE DEFAULT SEPERATOR CHAR */
OPTION: STCKADJ(0)  /* DON'T CONVERT STCK TIMES TO GMT */

INPUT: SMF94

TITLE: 'HOURLY TAPE STATISTICS FROM SMF 94 RECORDS FOR: 11AM'

INC: SMF94RTY = 94  AND  SMF94STP = 1
       AND SMF94HHI = 11

COMPUTE: SMF94ADV0-10 =
             WHEN(SMF942OF <> 0) ASSIGN(SMF94ADV05 + SMF94ADV10)
COMPUTE: SMF94ADV10-20 =
             WHEN(SMF942OF <> 0) ASSIGN(SMF94ADV15 + SMF94ADV20)
COMPUTE: SMF94ADV20-30 =
             WHEN(SMF942OF <> 0) ASSIGN(SMF94ADV25 + SMF94ADV30)
COMPUTE: SMF94ADV30-40 =
             WHEN(SMF942OF <> 0) ASSIGN(SMF94ADV35 + SMF94ADV40)
COMPUTE: SMF94ADV40-50 =
             WHEN(SMF942OF <> 0) ASSIGN(SMF94ADV45 + SMF94ADV50)
COMPUTE: SMF94ADV50-100 =
             WHEN(SMF942OF <> 0) ASSIGN(SMF94ADV55 + SMF94ADV60
                                     +  SMF94ADV65 + SMF94ADV70
                                     +  SMF94ADV75 + SMF94ADV80
                                     +  SMF94ADV85 + SMF94ADV90
                                     +  SMF94ADV95 + SMF94ADV00)

COMPUTE: THRES  = WHEN(SMF942OF <> 0) ASSIGN(SMF94THRES)
COMPUTE: SRTCT  = WHEN(SMF942OF <> 0) ASSIGN(SMF94SRTCT)
COMPUTE: PRICT  = WHEN(SMF942OF <> 0) ASSIGN(SMF94PRICT)
COMPUTE: MTVCA  = WHEN(SMF942OF <> 0) ASSIGN(SMF94MTVCA)

COL: SMF94DTE('SMF DATE')  SMF94TME('SMF TIME')
     SMF94HHI(4 'HOUR' NOACC)
     SMF94LM1(6 'MAX/DRIVES')
     SMF94MTO(6 BIZ 'TOTAL/MOUNTS/PENDING')
     SMF94DTO(6 BIZ 'TOTAL/DISMOUNTS/PENDING')
     SMF94MT3(6 BIZ 'AVG/MOUNT/TIME')
     SMF94DT3(6 BIZ 'AVG/DISMOUNT/TIME')
     SMF94ADV10-20(6 BIZ 'VOLS/10-20%/ACTIVE')
     SMF94ADV20-30(6 BIZ 'VOLS/20-30%/ACTIVE')
     SMF94ADV30-40(6 BIZ 'VOLS/30-40%/ACTIVE')
     SMF94ADV40-50(6 BIZ 'VOLS/40-50%/ACTIVE')
     SMF94ADV50-100(6 BIZ 'VOLS/50-100%/ACTIVE')
     THRES(7 BIZ 'RECLAIM/THRESH/PERCENT')
     SRTCT(7 BIZ 'SCRATH/STACKED/VOL CNT')
     PRICT(7 BIZ 'PRIVATE/SCRATCH/VOL CNT')
     MTVCA(7 BIZ 'MAX TAPE/VOLUME/CACHE/AGE')

 

Produce This SMF Report:


                                     HOURLY TAPE STATISTICS FROM SMF 94 RECORDS FOR: 11AM
                                                                                                                        MAX TAPE
                                 TOTAL  TOTAL   AVG    AVG    VOLS   VOLS   VOLS   VOLS   VOLS  RECLAIM SCRATH  PRIVATE  VOLUME
                           MAX   MOUNTS DISMOU MOUNT  DISMOU 10-20% 20-30% 30-40% 40-50% 50-100 THRESH  STACKED SCRATCH   CACHE
SMF DATE  SMF TIME   HOUR DRIVES PENDIN PENDIN  TIME   TIME  ACTIVE ACTIVE ACTIVE ACTIVE ACTIVE PERCENT VOL CNT VOL CNT    AGE
________ ___________ ____ ______ ______ ______ ______ ______ ______ ______ ______ ______ ______ _______ _______ _______ ________

11/02/07 12:18:29.88   11     15     37     32     73     66                    1     74    252      40     275     329    4,099

*** GRAND TOTAL (     1 ITEM)
                              15     37     32     73     66                    1     74    252      40     275     329    4,099

See other sample SMF reports.

Copyright 2024.
Pacific Systems Group.
All rights reserved.


Spectrum Writer 4GL - the economical alternative to SAS, Easytrieve, DYL-280...

Home | Products | Prices | Documentation | 30-Day Trials | Customer Reviews | Company | FAQ | Sample Reports | SMF Records
Send Your Comments or Questions