cancel
Showing results for 
Search instead for 
Did you mean: 

"/DMO/AGENCY_D" is not a suitable draft persistency for "/DMO/R_AGENCYTP"

MartinKnechtel
Product and Topic Expert
Product and Topic Expert
0 Kudos

I am in Learning Journey "Acquiring Core ABAP Skills", Unit 7 "Database Updates Using Business Objects", last exercise "Modifying Data Using EML" (link)

[Update 2023-11-15: without me running anything, just freshly launching Eclipse and ADT, I see the syntax error already. Inserting Screenshot below.]

AGENCY_D.png

 

 

 

 

On execution I receive the following error. Looks like it has nothing to with my code. Is this because on Trial the ABAP Platform instance is shared and sb. could have broken the /DMO/R_AGENCYTYP?

"/DMO/AGENCY_D" is not a suitable draft persistency for "/DMO/R_AGENCY
TP" (there is a type mismatch in field "/DMO/ZZSLOGANZAG").

I use a BTP Trial account in US East (link)

My implementation code looks very similar to the code presented in the demo in that chapter and I cannot see why it should not be working. Here is my implementation.

METHOD if_oo_adt_classrun~main.

DATA update_tab TYPE TABLE FOR UPDATE /DMO/R_AgencyTP.

update_tab = VALUE #( ( agencyID = '070002' Name = 'Fligh High Martin' ) ).

MODIFY ENTITIES OF /DMO/R_AgencyTP
ENTITY /DMO/Agency
UPDATE FIELDS ( name )
WITH update_tab.

COMMIT ENTITIES.

out->write( `written to DB. Now check for updates.` ).

ENDMETHOD.

Accepted Solutions (0)

Answers (5)

Answers (5)

Andre_Fischer
Product and Topic Expert
Product and Topic Expert

The flight sample app is imported into the trial systems using the software management component apps after these systems have been setup.  

I checked the package and found that the import did not work correctly. The root cause is currently investigated. 

The namespace /DMO/ has been set to read only for these systems in order to stabilize the source code of the samples since the trial systems are shared systems and we do want to prevent that the sample code is being changed.

 

MartinKnechtel
Product and Topic Expert
Product and Topic Expert
0 Kudos
Thx @Andre_Fischer, please let me know when the root cause is found and import was successful. I will then tag your response as being the "Accepted Solution".
MartinKnechtel
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi @Andre_Fischer has the root cause been found already?
Clemens_Mannert
Product and Topic Expert
Product and Topic Expert

Hi @MartinKnechtel , 

This error indicates a mismatch between the CDS view entity /DMO/R_AgencyTP and the related draft table /DMO/AGENCY_D. 

Those objects lie in the  /DMO/ namespace. They were imported into your BTP trial instance from a git repository and I am sure, the objects were consistent when imported.

The simplest explanation is,  that another user changed CDS view entity /DMO/R_AgencyTP (that's what you assumed already). In particular, the user must have changed the type of field ZZSLOGANZAG,  which is part of a demo extension of business object /DMO/R_AgencyTP. 

Unfortunately, I was not able to access your BTP trial instance myself.  

What you can do to try and fix this issue:

  1. Navigate to the behavior definition /DMO/R_AgencyTP (as for the screenshot).
  2. In the code row with the error, place the cursor on /DMO/AGENCY_D and press Ctrl + 1. 
  3. Execute the quickfix that adjusts the draft table /DMO/AGENCY_D 

Let me know if this fixes the issue.

Regards,

Clemens 

MartinKnechtel
Product and Topic Expert
Product and Topic Expert

Thanks Clemens! I am missing the permissions to do that:


The system and namespace change option set for this SAP System does not allow any changes to be made to object TABL /DMO/AGENCY_D.

System Response

Editing is terminated, the object can only be displayed.

Procedure

If you want to edit the object TABL /DMO/AGENCY_D in this SAP System, have your system administator set the SAP System to "modifiable" for this object.

This can affect the modifiability of the namespace /DMO/ or the namespaces that correspond to the pattern /DMO/, as well as the global setting of the system change option.

The system changeoption is set using the Transport Organizer tools (Transaction SE03). Expand the Administration node and execute the program Set system change option. The options are described there.



quickfix_1.pngquickfix_2.png

Margit_Wagner
Product and Topic Expert
Product and Topic Expert

Hi @MartinKnechtel 
We have received your request, our expert who will analyses the problem and revert to you.
Kind regards
Margit

 

SThib0169
Discoverer
Hi, any update on the issue ? I am facing the same one and looking for a solution.
Margit_Wagner
Product and Topic Expert
Product and Topic Expert
0 Kudos
MartinKnechtel
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi @SThib0169 I checked as well yesterday and the problem still exists.
onFlow
Explorer
0 Kudos

I tried to do the quick fix, but I don't have the necessary rights.

Clemens_Mannert
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi onFlow,

I wasn't aware that BTP trial users are not authorized to apply this fix. In that case, I'm afraid, there is nothing I can do to help you, SAP Learning cannot assume any responsibility for the consistency of /DMO/-objects in BTP Trail systems. Please contact the BTP Trial System support and ask them to do one of the following:

  1. Apply the fix as described in your ABAP instance
  2. Refresh the /DMO/ content in your ABAP instance from ABAP Git
  3. Transfer your user to a newer BTP Trial instance

If your company holds a Learning Hub licence, you can book a hands-on practice system for the Acquiring Core ABAP Skills learning journey (see here for details). In those systems, the /DMO/ objects are consistent. There you will also find the /LRN/ objects, which are mentioned in the exercises and which are not available on BTP trial.

Regards,
Clemens Mannert   

RenanSalazar
Newcomer
0 Kudos

This issue still happens 04/04/2024: 

@Margit_Wagner or @Andre_Fischer some update? 

Thank you!