BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
JCFCA
Calcite | Level 5

Hello,

 

I have the error writed in subject when i want to add a new add-in in SAS Enterprise Guide 4. I saw some old topics who talk about this error but i didn't find a proper anwser.

 

Context : I have to maintain an old add-in writed some years ago and when i just want to change a label, rebuild DLL and then add it in SAS EG4 i got this error. All i do is to change a label and generate a new solution in Visual Studio. I tried to change the framework version (from .NET 2.0 to 4) but nothing change.

 

Thanks in advance for your help.

1 ACCEPTED SOLUTION

Accepted Solutions
AlanC
Barite | Level 11

An interface is a contract. If you implement an interface, you are expected to implement all of its parts. Here is a very basic example using pseudocode:

 

interface IEGTask

{

     public void Finalize()

}

 

class MyCustomTask : IEGTask <==  Since MyCustomTask uses the IEGTask interface it must implement the Finalize method

 

I don't know what your custom task does or how it works. if you open the class file where the error is happening, in Visual Studio, you can hover on the interface and say implement interface. Interface names always start with the letter I. You are missing one of them and, therefore, you are not following the contract. Interfaces say 'you agree to do x'. 

 

What happened is that the interfaces have been updated in EG and additional methods have been added. You are now out of interface contract compliance on your custom task.

 

https://github.com/savian-net

View solution in original post

3 REPLIES 3
AlanC
Barite | Level 11

An interface is a contract. If you implement an interface, you are expected to implement all of its parts. Here is a very basic example using pseudocode:

 

interface IEGTask

{

     public void Finalize()

}

 

class MyCustomTask : IEGTask <==  Since MyCustomTask uses the IEGTask interface it must implement the Finalize method

 

I don't know what your custom task does or how it works. if you open the class file where the error is happening, in Visual Studio, you can hover on the interface and say implement interface. Interface names always start with the letter I. You are missing one of them and, therefore, you are not following the contract. Interfaces say 'you agree to do x'. 

 

What happened is that the interfaces have been updated in EG and additional methods have been added. You are now out of interface contract compliance on your custom task.

 

https://github.com/savian-net
JCFCA
Calcite | Level 5

Thank you for your reply now i understand why this error occured.

However, i can't understand why the original dll works well but not the modified dll (who don't have any error in Visual Studio, usually when all method from an interface are not in the class, VS at least warned us or the compilation will fail, here nothing wrong happen).

AlanC
Barite | Level 11

Make sure you are using the same dlls for EG. Check the versions. I can't debug it but I would suspect the dlls. 

https://github.com/savian-net

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

SAS Enterprise Guide vs. SAS Studio

What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 3 replies
  • 528 views
  • 2 likes
  • 2 in conversation