× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



rob@xxxxxxxxx wrote:
<<SNIP>>

I am wondering if this would save significant space for those
special year end saves that you almost never use the data from
OMITOBJ((*ALL *LF))
if it was available. Apparently IBM only allows you to specify
*FILE and does not allow you to specify object "attribute".

How many would omit LF's if this capability were available?

We used to have one application that had all their LF's (and
only their LF's) begin with 'Z'.

A saved logical file is little more than its one *FILE object plus each of its *FMT [record format] and *MEM [database member] objects. The vast majority of space will almost always be in the Access Path [the *QDDSI] objects which are saved as part of the physical data members if\when the ACCPTH(*YES) is requested; i.e. those larger objects are never saved as part of SAVOBJ of the keyed LF, even though the storage for the the index is attributed to the logical file object in DSPOBJD size. As such, being able to omit the logicals would atypically offer significant value in saving space on media, instead saving mostly in the number of [small] objects. The naming convention enabling omission via the OMITOBJ or inclusion via the FILEMBR to then effect *NONE for members of the saved logicals could be used to limit the storage space requirements on the media. Depending on the complexity of the database relations, the biggest & more worthwhile saving [versus space] might be in the expense for ordering the /DBF network/ for the save; i.e. without any LFs, ordering the files on the save [dependent logical files\members after their physical data members] is essentially moot.

Rather than extending the generic save *object* feature to enable a by-attribute omission or selection, which would probably have little value outside of database *FILE object saves [probably more often to exclude non-DBF], an effective database-only save API [and/or command] would IMO be the better option. I contemplated that approach and even did some initial coding once [by using the save object API], with the intention of providing a low-storage and better selection of what was to be saved; primarily to enable a SAVDBF of a /database network/ so as to avoid the need to explain what was required to effect that. I had also made changes to the DB save to enable a no-data save [extending an OS-only DB-save feature] to get all of the definitional data for the members without actually omitting the members, but that would have needed integration into the object-save feature for the equivalent of FILEMBR((generic* *NODATA)) to activate the database-save feature. The intent was serviceability, to help get data file objects [without data; especially when considered too sensitive] from customer systems, rather than to enable some non-DR save capabilities; without that, *NONE for the physical files was done in selecting FILEMBR, so the actual member definition would not be retrieved such that ADDPFM was required in the lab.

Regards, Chuck

As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.