cancel
Showing results for 
Search instead for 
Did you mean: 

Certification

Former Member
0 Kudos

Hi all:

My company wants to certificate an Add-On, and i've seen that it can't have stores procedures. I only use SP's for doing SELECT's not for INSERT's or UPDATE's.

I don't want to put t-sql code and vb.net code together.

Any solution for this issue?

Thanks in advance

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Raul,

Besides all what is said by the others, it exists a way to fullfill your needs, and staying Inside the rules edicted by SAP: create a separate database (I personally name it just like the one that I want to extend and I add the suffix _EXTENS) then you create in it synonyms for all the standards tables (except CINF) and views from the regular database.

WHat I also do, is to link the B1 database to the _EXTENS one, thru the TN (the original TN calls a copy in the _EXTENS one, which do all the job and returns the eventual error).

The only trick is to update the synonyms when you add new objects... I have a standard stored procedure for this.

Regards,

Eric

Former Member
0 Kudos

Hi Raúl,

The only stored procedure that is supposed to be allowed is the SBO_SP_Transaction notification. I suppose you know it, and its not what you need. The theory says that if you need thouse kind of tools, you should create a new database to store them.

BUT I know some certified tools, that creates tables within the company database.

Regards,

Ibai Peñ

Former Member
0 Kudos

Hi Ibai:

I don't understand your last sentence. Are you telling me that i can store the SP code in a user table and call it using a SELECT? My intention is avoid SQL INJECTION, so i only want to write de name of the SP nothing of

T-SQL.

I thik is a good solution what you said of a new databsae, but i only have 3 SP's.

Former Member
0 Kudos

The last sentence only means that SAP is allowing CREATE TABLE, INSERT or UPDATE sqls (on the SBO_SP_TransactionNotification) for some AddOns or tools , while SAP says that is not allowed.

I mean I think they will not let you using this 3 SPs in the same database, if you want to certify your addon. But they did certify some AddOns with this stuff.

Regards,

Ibai Peñ

former_member185703
Active Contributor
0 Kudos

Maybe there's a difference between "this" and "this" - I don't understand your first sentence, Ibai - especially I can't figure out what you mean with your remark regarding SBO_SP_...?

Please let me clarify:

1) Adding or using stored procedures / functions etc. is not allowed within the SAP Business One company databases; it is recommended not to use them at all, but - just to show some flexibility - it is not forbidden to use them in a separate database.

2) Adding own custom tables - non-SAP Business One User-Defined tables (UDTs) is allowed - though not recommended (ideally all changes in DB structure should be performed through DI API); please use your namespace also for these tables.

3) INSERT / UPDATE / DELETE are not forbidden for plain UDTs or custom tables; they are not allowed to manipulate SAP Business One data!

Again, ideally the capabilities of DI API objects should be used preferrably (of course except the Recordset object as far as such statements are concerned)!

I hope that clarifies some confusion.

Regards,

Frank

Former Member
0 Kudos

Hi Frank,

I´m sorry not to speak clear. I don´t want to point anybody, I suppose you understand.

My sentence is about the second point. It´s the first time I hear that adding own tables is allowed.

1- Is there any official document that explains this?

2- Could you clarify what´s the difference - in SAP terms- between a custom table and a SP?

I´m very interested on this issue too.

Thanks for the attention.

Ibai Peñ

simone_pastorin
Participant
0 Kudos

Hi Ibai,

I think the answer to your first question is here:

Anyway I'm disappointed I can't create functions or stored procedure that don't affect B1 tables or UDO tables.

Regars

Johan_H
Active Contributor
0 Kudos

Hi Raúl,

How about a simple user table to store your queries ?

You could even encrypt the query texts if you like, and simply add a decryption method to your code.

Regards,

Johan

Former Member
0 Kudos

Hi Johan,

Extra query to the database and extra work (programming and execution)...

But besides my proposition one of the best ways to do.

Regards,

Eric

Johan_H
Active Contributor
0 Kudos

Hi Eric,

Yep, I suggested it because creating an own database may raise MS SQL Server licensing questions.

Regards,

Johan