Skip to Content
0

XSA Access to Remote Classic Schema

Jan 30 at 09:10 AM

143

avatar image

Hi,

I am new to XSA and trying to access a remote classic schema. For this I am basically following Thomas Jung in the openSAP course and the instructions given in the hands on excercises https://open.sap.com/courses/hana6/items/5axhluGf3iferf1bBWsyKg.

I created a user provided service, which seems to be ok (see screen shots). However when trying to build a hdbgrants or hdbview File refering to the synonym then there are error messages indicating missing user <schemaname>#OO and missing schema <schemaname>#DI (my schema is called “GBIMASTER” (see screenshots).

I know these are names of technical user and schemas which belong to a “normal” XSA database container. So my suspicion is that these should be created for the remote classic schema when creating the user provided service.

My questions: Is this suspicion correct? How can I check if my user provided service is defined correct?

I am using HXE 20 SPS02 on GCP.

Thanks for your answers

Klaus

useroomissing.png (18.6 kB)
cups01.png (12.4 kB)
cups02.png (22.2 kB)
10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

3 Answers

Best Answer
Lucia Subatin
Feb 16 at 03:58 AM
0

The definition of the db module in the yaml file is missing the requirement to the hdi-container (it only references the user-provided service) and I'm not sure if the cross_schema_gbimaster is cut form the picture, but it may also be missing the service-name parameter (where the value is CROSS_SCHEMA_GBIMASTER according to your xs cups command). Once you add the two requirements to the database module (hdi-db and CROSS_SCHEMA_GBIMASTER), you will need to add TARGET_CONTAINER or you'll get a build error.

There is an example of this here (except for steps 4 to 6, which I will spin into another tutorial when I have the chance): https://www.sap.com/developer/tutorials/xsa-create-user-provided-anonymous-service.html

Also, make sure that you do have role called GBIMASTER::external_access_g. I also advise against using namespaces.

Show 1 Share
10 |10000 characters needed characters left characters exceeded

Thanks Lucia, this solves the problem!

In the end I followed this https://blogs.sap.com/2017/01/07/synonyms-in-hana-xs-advanced-accessing-objects-in-an-external-schema/

Obviously I did not read section 4 carefully enough...

Thanks for your support.

Best regards

Klaus

0
Klaus Freyburger
Feb 02 at 07:02 AM
-1

The system did not accept the third picture in the other reply (for whatever reason). So here it is


errormessage.jpg (47.2 kB)
Share
10 |10000 characters needed characters left characters exceeded
Lucia Subatin
Jan 31 at 03:15 AM
0

Hi, Klaus,

It looks like you are using port 39015 and should be 39013 for that version on GCP and the development space pointing at the SYSTEMDB, which could explain the error "invalid schema name" . As for your assumptions, I'm not sure I understand them correctly. Those users are for HDI containers, you will not see them automatically generated for your plain/classic schema (that's what the user-provided service is for).

Cheers,

Lucia.

Show 3 Share
10 |10000 characters needed characters left characters exceeded

Hi Lucia,

thanks for your answer. I am using space development pointing to tenant DB HXE which has port 39015. In this tenant there is schema GBIMASTER which I am trying to access. So my assumtion was port 39015 (like here: https://blogs.sap.com/2017/01/07/synonyms-in-hana-xs-advanced-accessing-objects-in-an-external-schema/)

(When trying to use port 39013 I got a message of missing schema GBIMASTER; so my impression is system is looking for schema in SYSTEMDB. And when creating the scheme GBIMASTER in SYSTEMDB I get the same error message as above of missing user GBIMASTER#OO)

So which is the correct port in my case?

Thanks

Klaus

0

Hi, Klaus, 39015 is correct. GBIMASTER is both the name of the schema for your hdi container and the plain schema? Can you share the contents of the yaml file please?

0

Hi Lucia,

no my hdi container is called db, schema XXX002, User XXX002_1##OO exists in tenant. GBIMASTER is just the name of the plain schema. I did the yaml and the hdbgrants files according to this blog https://blogs.sap.com/2017/01/07/synonyms-in-hana-xs-advanced-accessing-objects-in-an-external-schema/. Attached the yaml file, hdbgrants and the current error message when trying to build the hdbgrants (Different from the screen shot above I changed the user of the user-provided service to SYSTEM,just to be on the safe side.)

Many thanks for your support! Klaus

yaml.png (30.5 kB)
hbdbgrants.png (17.5 kB)
0