× 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.



AFaIK the records\rows of the TABLE can still be read, though there is no support to include the _data_ from any columns of a non-supported data type in the buffer, since the data would have been omitted by use of the undocumented open option(s). This is the effectively identical means [open options] by which OPNDBF, CPYF, and RUNQRY as non-SQL interfaces can access those columns of a non-supported data type, for which the data is presented as "*POINTER".

Another reference:
http://forums.systeminetwork.com/isnetforums/archive/index.php/t-53655.html
"josys36 03-18-2009, 01:31 PM
Well I was able to get this to work.

In order to use the _Ropen API there is a undocumented parm that will support the use of LOB fields. The parm is lobptrs=Y."

Bruce's post, referenced in the quoted text, suggests that "undocumented=unsupported".

Regardless, opening a database file member to determine the number of records\rows in the physical database file member is probably one of the least desirable implementations, for a number of reasons.

kwds: CPF428A rc1

Regards, Chuck

On 02-Nov-2011 10:59 , Erik Olsson wrote:
You can't read a table containing BLOBs for instance, but you can
however open it using _Ropen and then you could use the feedback
API to get the number of records.

Look up a mail to this list from November 2010, particularly Bruce
Vining's answer:
http://archive.midrange.com/c400-l/201011/msg00013.html

2011/11/2 Jevgeni Astanovski<Jevgeni.Astanovski@xxxxxxxxxxxx>:

Such an unexpected situation.
Had a program that for certain reason needed to know number of
records in a physical file.
Definitely there are many ways to do that.
I did it like this:

.....
if ((fp1 = _Ropen(argv[1], "rr")) == NULL)
{
.... error message ....
return(0) ;
}
fb1 = _Ropnfbk (fp1);
_Rclose(fp1) ;
......

After that fb1->num_records contains a number of records in the
file argv[1].
Worked fine with all needed files but 3. For them open fails.
Looked inside - they contain either BLOB or CLOB fields of size ca
1MB.

Googled for a while but failed to find if it is possible to work
with tables containing BLOB/CLOB fields from ILE/C without using
embedded SQL.

Any idea?



As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

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.