DB347003 with 1474 on DBNAMEs and subschema mapping
search cancel

DB347003 with 1474 on DBNAMEs and subschema mapping

book

Article ID: 14652

calendar_today

Updated On:

Products

IDMS IDMS - Database

Issue/Introduction

The following error messages are observed:

DBNAME *DEFAULT MATCH ON SUBSCHEMA IS OPTIONAL
SUBSCHEMA ABC????? MAPS TO ABC????? USING DBNAME AB1

and

DBNAME AB1 MATCH ON SUBSCHEMA IS OPTIONAL
SEGMENT RECAB101 180 BIND count
SUBSCHEMA ABC????? MAPS TO ABC????1

When doing a BIND RUN-UNIT with the subschema ABC01014 and no DBNAME, the expectation is that the search should match the default statement, find it and map to dbname AB1. With DBNAME AB1, the mapping should change the subschema name to ABC01011.

But no, the subschema name remains ABC01014 and the result is the 1474

DB347003 V1850 T736 ABC01014 subschema not found

By changing the *DEFAULT specification to this:

DBNAME *DEFAULT MATCH ON SUBSCHEMA IS OPTIONAL
SUBSCHEMA ABC????? MAPS TO ABC????1 USING DBNAME AB1

the problem is corrected.

Does this mean that when the matches operates with the default DBNAME, the MAPS statement in the DBNAME is not in effect? 

Environment

Release: All supported releases.

Resolution

It is working correctly. IDMS only does the subschema matches at the first level that it finds. With no DBNAME specified that is the default specified on the DBTABLE level. If a DBNAME is specified on the BIND RUN-UNIT then the translation from that DBNAME should be applied.