Firstly, please do not post multiple copies of the same question. You seem
to have posted this four times.
> My primary concern in a conversion would beour 100 or so B-
> correlatives which are written in SMA-standard style (as a B-
> correlative, not a SUBR). I have been told that you only
> support SUBRs.
>
> 1) Is that true?
>
> 2) If so, do you have any plans for supporting B-correlatives in the
> near future?
QM is based on the "Information style" model but has options for closer
compatibility with Pick style systems. There is basic support for
correlatives but we do not provide everything that is found in Pick systems
as much of this can be better implemented using alternative constructs that
have evolved over the years.
B-correlatives are not supported by QM. As far as I can see, they are also
not supported by the U2 products which are reported to be the current market
leading multivalue database environments.
This is not to say that we would not consider implementing B-correlatives if
there was a good case to do it.
My current thoughts are that our triggers provide everything that can be
done by a B-correlative and much more.
> 3) Does anyone else out there share this problem?
None of our existing users has raised this issue before. Indeed, until your
posting today, we had never heard of B-correlatives. We have tracked down
some documentation and it appears that this construct is only relevant to
the Pick Update Processor.
QM is not a clone of any other system and never will be. We do not have the
Update Processor in its Pick form and hence B-correlatives probably do not
fit into the QM model.
The Pick Systems Reference Manual appears to have a slightly different
description of B-correlatives, suggesting that they can be used to define
the link between two files without the Update Processor involvement. In this
situation, take a look at our L-type records that define the relationship
between files and, in the extreme, can totally remove the need for
T-conversions or TRANS() functions.
> 4) Do you realize that B-correlatives can be used as conversions
> as well as correlatives, thus are callable on the BREAK line and
> allow manipulations for averaging, percentages of one column
> against another, and much, much, more, which SUBRs do not?
I would be interested to see some examples of this so that we can determine
whether there is a need for a new mechanism in QM. I-type expressions almost
certainly provide this.
> 5) Do you realize they can be called within F- and A-correlatives as
> conversions?
Again, use of triggers would seem to remove the problem.
> 6) Do you realize that other database vendors support both types: B-
> correlatives and SUBRs?
Some but not all. The multivalue products fall into two distinct groups;
Information style and Pick style. I will probably stir up a lot of comments
from this but our view is that Pick style systems have largely not moved
forwards but have retained constructs that are akin to assembler programming
whereas Information style products had taken advantage of new technologies
and moved forwards. You reference use of SUBRs but our preference would be
for use of I-type dictionary records.
Since QM was released as a commercial product in 2001, we have received many
comments regarding the model followed by QM. Some of these have been from
Pick users who have reluctantly moved forwards to the world of D/I type
dictionary records, paragraphs instead of Procs, etc and eventually become
strong supporters of the QM model. We support A/S dictionary items and Procs
only to ease migration, strongly recommending that developers then slowly
move to the newer technologies after the initial migration is complete.
> 7) Is there support out there for the idea of supporting both?
Yours is the first request and I suspect that there are better ways to do
it. We wil lwatch for other responses in this thread.
> 8) Maybe those who would need them have already decided against
> converting due to being discouraged at the prospects of the financial
> and temporal impracticality of such a conversion. Is anyone out there
> aware of such companies?
We are not aware of any. In addition, there is no point in migrating if all
you are looking for is a clone of your current system. Migration should be
considered as an opportunity to move forwards. It will always require some
changes but no one has ever suggested to us that the costs are an issue.
> It would take at least a year, maybe more, to convert all of our B-
> correlatives and not having them would destroy much of our reporting
> capability on my software offering. We have other things that need
> doing besides just working on B-correlatives.
Would it really take a year? Based on your "100 or so", that's a couple of
days each. I find that hard to believe. A trigger routine to perform the
equivalent of a B-correlative as described in the documentation we have
found should take no more than a few minutes to write. Furthermore, you
probably have the same B-correlative action defined in several places
whereas a trigger is a one-off description of the action to be performed
that affects every access to the file.
> From what I have heard about QM, I would dearly like us to climb
> on the bandwagon but the conversion would virtually eliminate any
> chance of keeping business going. We are a small company and
> need to grow and do not have the resources to spend a lot of time
> in a conversion like this. Support for SMA-style B-correlatives could
> make conversion to QM a possibility for us.
I think that you need to take a closer look at alternative solutions to your
problem that already exist within QM. No migration is ever totally painless
but the gains once you have completed it can be enormous.
One of the other things that we have done to make it easier to migrate
whilst still developing within your existing environment is that we have
produced a simple pre-processor that adds support in D3 (etc) for the
conditional compilation constructs found in the newer multivalue products.
It is thus possible to maintain a single source stream that contains both
the D3 and QM variants of the application, removing the horrors of divergent
sources.
Please let us take this forward to ensure that QM is the right path for you.
I believe that we probably already have an alternative to the B-correlative.
If you disagree, please provide some more detail of how you use them.
Martin Phillips
Ladybridge Systems Ltd
17b Coldstream Lane, Hardingstone, Northampton, NN4 6DB
+44-(0)1604-709200
> I think John is inquiring about the "B correlative" as implemented on
> mvBase, which is a BASIC CALL from a dictionary. I actually did the
> initial implementation of this for General Automation and can send you
> my original documentation.
This would be much appreciated.
Thanks.