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



Never mind, I know the answer to that: CPF320A is thrown when you try to remove the member. In fact the error message says that an SQL INDEX, among other file types, must have exactly one member. Maybe they need to rebuild their index.

Mark Murphy
STAR BASE Consulting, Inc.
mmurphy@xxxxxxxxxxxxxxx


-----"Mark Murphy/STAR BASE Consulting Inc." <mmurphy@xxxxxxxxxxxxxxx> wrote: -----
To: Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxx>
From: "Mark Murphy/STAR BASE Consulting Inc." <mmurphy@xxxxxxxxxxxxxxx>
Date: 08/27/2013 09:30AM
Subject: Re: Weird situation with a customer's SQL INDEX

What happens if you remove the member from the SQL INDEX you created?

Mark Murphy
STAR BASE Consulting, Inc.
mmurphy@xxxxxxxxxxxxxxx


-----"James H. H. Lampert" <jamesl@xxxxxxxxxxxxxxxxx> wrote: -----
To: Midrange Systems Technical Discussion <midrange-l@xxxxxxxxxxxx>
From: "James H. H. Lampert" <jamesl@xxxxxxxxxxxxxxxxx>
Date: 08/26/2013 07:51PM
Subject: Weird situation with a customer's SQL INDEX

One of our customers reported a logical file that our QuestView
application could not open (and throws a fatal exception trying). They
sent us a (presumably dummy version of) the logical and its based-on
physical, and I was able to duplicate the problem with no difficulty at all.

It turns out that the logical in question is an SQL INDEX, apparently
from either JDE World or (more likely) E1, and when QuestView digs out
its meta-data, QDBRTVFD returns a large negative number as the
displacement to the join-spec array, and then (not surprisingly) blows
up trying to resolve a pointer to it (I think we only looked it up for
completeness sake, because we're not actually using it!).

Given that we don't actually use the join-spec array, I commented out
the code that attempts to resolve a pointer to it, and sure enough, it
opens . . . to a completely empty file.

I then created an SQL INDEX on one of our files. It opens just fine, so
I did a bit more digging:

When I look at the "problem" index in DSPFD, I notice that:
Maximum members . . . . . . . . . . : MAXMBRS 1
Number of triggers . . . . . . . . : 0
Number of members . . . . . . . . . : 0

and when I look at the database relations for its based-on physical, I
get conflicting results: the "problem" index shows up in DSPDBR, but it
doesn't show up in QuestView's DBR screen (based on the QDBLDBR API).

By contrast, when I look at the index I created, I get:
Maximum members . . . . . . . . . . : MAXMBRS 1
Number of triggers . . . . . . . . : 0
Number of members . . . . . . . . . : 1

and the index shows up just fine in both DSPDBR for the based-on
physical, and in the QuestView DBR screen.

That tells me there's probably something very funky with the "problem"
index. But what would cause an SQL INDEZ to show up as having no
members, and to show up in DSPDBR on the based-on physical, but not in
the QDBLDBR API?

--
JHHL

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.