Expand my Community achievements bar.

SOLVED

Delete attributes from native schema

Avatar

Level 3

Hello, i would like to know if i can delete an attribute from a native schema of AdobeCampaign. I need to delete some but i dont know how does it will affect neolane or the DB. I will also need to know how to do it .

thanks

1 Accepted Solution

Avatar

Correct answer by
Employee

To delete an existing attribute on factory schemas follow the steps outlined here

  • Extend the scehma
  • Define the same attribute again in this extended schema (name must match) and then define _operation="delete"
  • Save the schema and update database structure.

<attribute name="registrationToken" _operation="delete"/>

Should you do this?

I would not recommend it as you never know what can break in the system when deletion of an attribute happens.

Regards,
Vipul

View solution in original post

17 Replies

Avatar

Correct answer by
Employee

To delete an existing attribute on factory schemas follow the steps outlined here

  • Extend the scehma
  • Define the same attribute again in this extended schema (name must match) and then define _operation="delete"
  • Save the schema and update database structure.

<attribute name="registrationToken" _operation="delete"/>

Should you do this?

I would not recommend it as you never know what can break in the system when deletion of an attribute happens.

Regards,
Vipul

Avatar

Level 10

I support Vipuls approach.

@OP what are you trying to achieve by deleting OOTB attributes?

Avatar

Level 3

im trying to delete some attributes of mobile app in a native schema, but i cant achieve that.

i tried to use  <attribute name="registrationToken" _operation="delete"/>  but i cant update in the DB

Avatar

Level 10

Why do you need to delete it? this is required for push notifications to work.

Avatar

Level 3

i dont need them in my new instance for now. thats why i want to delete them.

Avatar

Level 10

There are hundreds of fields that are not used most of the time on Adobe Campaign and will probably never get populated, just ignore them. You may end up breaking some kind of relationship between tables or get errors on the console as these fields are referenced by input forms and other features.

Avatar

Level 3

its not the correct answer, I dont know why you tag it as correct.....

Avatar

Level 10

Hi,

This is the most advisable answer that you'll get from anyone, including from Adobe. You can also try what Vipul suggested but doing so is not advised.

That's why it is marked as the right answer.

Florent

Avatar

Level 3

Trying what Vipul suggested is not posible , database doesnt allow to update  the push delete_operations atributes in the schema.

David_garcia gaves an advice not an answer to the problem.

Im waiting for Adobe's answer, thanks.

Have a nice day.

Avatar

Level 10

Hi again,

Adobe's answer is the same one David's suggested, and the same that Vipul, who is very familiar with dealing with such issues as part of our Customer Care organization, suggested.

As for Vipul's suggestion, did you correctly perform all the steps he mentioned, including extending the schema (not modifying the schema itself)?

Florent

Avatar

Level 1

Hi Vipul,

What if we have mistakenly extended factory schema using the same namespace 'nms'.

Do you think we can delete only the extended part using the above mentioned command?

Thanks

Kapil

Avatar

Level 4

Hi Kapil,

_operation="delete" attribute is used to delete the columns in the schema.  When we extended the OOTB recipient schema with the same nms:  namespace , it will override the existing schema and hides the schema definition but the structure remains unchanged. We too had the same issue, to restore the schema we need to replace the schema definition from any other instance and save it .

Thanks & Regards,
Prem Kumar Ganesan

Avatar

Former Community Member

Hi Prem,

Could you please elaborate the steps on how to restore the schema from other instance?

I tried it and when I hit the Regenerate Schema option it gives the below error -

1526986_pastedImage_0.png

Thanks & Regards,

Sadaf

Avatar

Level 4

Hi sadafali​,

If your instance is hosted in Adobe data centers , please raise adobe support ticket to restore the schema . If its on-prem or hybrid model, follow the below steps to restore your OOTB schema . Ensure this operation should be performed only by Expert users .

1. Under configurations-- Data Schemas -- Right click on the schema whichever you want to replace and click delete. Refresh the folder and ensure the schema is deleted .

2. Click on  'New' button, select create a New table, give the name, label of the deleted schema and click next .

3. Now in the edit schema window just delete the auto generated schema definition code starting from <srcSchema....>  to  </srcSchema>

4.Copy the deleted schema definition starting <srcSchema....>  <attributes...> </srcSchema> from other instance, paste it in the edit window and click save .

5. Now try to open the replaced OOTB schema and verify whether its shows a warning as "factory configured - object should not be edited".

Thanks,

Prem Kumar Ganesan

Avatar

Level 2

Hi Prem,

I am facing issues with editing any schema in my Adobe Sandbox server. Issue seems with nms:seedMember schema which is corrupted somehow. Now I am not able to regenerate to repair it. It is always throwing error like -

xtk-170030 empty value is not valid as a key for element srcSchema of document type Source schema of entities (xtk:srcShema)

Can you suggest something here. Thanks a lot in Advance.

Cheers!

Avatar

Level 1

Thx Prem!  This info was just what I needed!!