[UPDATE: Horizontal Add-on on version 2018.x or higher now have this turned on by default]
High level summary
During B1UP Startup step 2/5 takes a long time (5-20 sec depending on system). This is because at this step the SAP DI-API connection is created and connection is slow.
This experimental feature if turned on will not make the DI-API connection and instead use ADO.Net to collect it's data reducing the connection time (we see 200-300% startup time improvement but it will be different from system to system)
You can also see a YouTube version of this article here: https://youtu.be/1BKW3Tvr2OQ
Why is this feature experimental?
The reason this is experimental is because it a lot of internal changes in the core code of B1UP and instead of blindly just activating it for everyone (and in worst case fail in something mission critical) we have decided that we will make the feature something that you actively need to turn on. Our recommendation is to first try in a test-environment / demo laptops and if you are up for it then turn on at customers.
We have also made it experiment as it gives a few limitations (see below) and are not ready to commit if those are permanent or will be lifted over time.
What are the requirements before turning it on?
- That you are running SAP Business One One MSSQL (HANA is not supported yet)
- That you have provided DB Credentials in B1UP Main config and these credentials have full SELECT/INSERT/UPDATE/DELETE permissions
- Windows Administrator rights on the machine you wish to activate it for
What are the limitations
Currently, the feature has the following limitations:
- Only work on MSSQL [UPDATE: Also supported on HANA from B1UP 2017.09]
- If you turn this on then Exchange Rates can not be set during startup (Workaround is to use the B1UP server component which is the recommended way anyway) [UPDATE: We have found a workaround to this limitation. It will be part of the final 2017.07 release]
- Turning the feature on will disable all execution of plugins for the database (they will simply not run)
- it only works if SAP Legacy Cockpit is turned off
How to turn this on?
Assuming you have read all above (very important that you do) are here the steps to turn on the experimental feature:
- Install B1UP 2017.07 or higher (beta can be found here: www.boyum-it.com/sbo)
- Go to Administration > Add-ons > B1 Usability Package > B1 Usability Config and on the Option tab press the "Set Database Information" button and provide SQL Login info.
- On the windows desktop, right-click and choose "New" > "Text document"
- Give above new text document the following name "ENABLE_LAZY_DI_API_CONNECTION.txt"
- In windows go to folder "C:\Program Files (x86)\SAP\SAP Business One\AddOns\BOY\B1 Usability Package" (or "C:\Program Files\SAP\SAP Business One\AddOns\BOY\B1 Usability Package" if you are running 64 bit version)
- Drag the txt file you made on the desktop into the folder in step 5
- Start SAP Business One and B1UP (During this startup a DI-API connection will still happen)
- Restart SAP Business One and if everything above was done correctly you should experience the faster startup.
Q: Does this feature do anything that is not "Legal" in the SDK Certification (example raw SQL insert statements to SAP System tables)?
A: No, The system is built so if something need the DI-API (example creation of metadata) it will ad-hoc make the DI-API connection needed.