AddOn installer

Hello,
I am trying to create an installer for my add-on. I've seen the B1DE Professional Installer and I belive I can use it what it has generated and modify it according to my needs. But, I need to create some tables, user defined tables and user defined fields in the database that is requiesting the install. Do I do that in the Install method and how (I know how to create tables and userdefined tables, I just don't know how can you find out in which database)?
Thank you,
Irina

Hi Irina,
I think the usual method is to build this functionality in to the add-on itself rather than the installer. If you built it in to the installer, it would be difficult to install the add-on on a site with multiple companies and particularly on a site where a new company is created after the add-on was installed.
There are probably a few ways to do this but here's the way I see implemented most often in third-party and SAP add-ons:
1) You install the add-on as normal (ie using the standard ard and exe files in Add-on Administration)
2) When you start the add-on, the add-on will perform a check to see if all the required UDFs and UDTs exist in the current company.
3) If fields are missing, automatically create them. Personally I'd prefer the add-on to prompt me before this action takes place (but most add-ons just go ahead and create the fields without prompting )
4) Once all UDFs and UDTs have been created, the add-on works as normal.
The add-on perfoms the check every time it is started but, after the first time, all objects are found so this step is skipped.
Kind Regards,
Owen

Similar Messages

  • SAP Business one 9.0 AddOn installer error

    Hi Experts,
    I have upgrade my SAP B1 from 8.82 to 9.0 PL 5. I have an addon also which is I compile with 9.0 DLLs. it is working fine if I direct connect by visual studio 2010 to any client 32-bit or 64 bit. But When I make an .ard file using B1DE 2.2.6 . it gives me error '"BadImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)". I use the following steps for make an addon.
    1. Run Addon Installer Wizard and follow all steps.
    2. Change Compile -Advance Compile option -Any CPU.
    3  Rebuild again project.
    4. Rebuild ard file by clicking on batch file
    Please suggest where is the gap. It tried to install on both client 32 bit or 64 bit, but it gives me above error.
    Thanks
    Regards
    Jitender

    hi Kerremans,
    Thanks for you quick reply.
    I try to compile my installer with 86x .Now it gives a new error EndInstallEx return -2. Please what is this new error.
    Thanks
    Regards

  • AddOn installer for C# in SAP 2004

    Hi,
    I have a question. Is there an AddOn Installer for C# in SAP 2004? Or do I have to write it by myself?
    Regards,
    Hmg

    Hi Szymon,
    You can use B1DE package you can donwload for free from SDN. It will create an installer in Vb.NET but it is very easy to adapt the code to C#.
    Regards
    Trinidad.

  • B1DE (AddOn Installer) for 64 bit server

    Hi All,
    I have a problem. One of my client has a 64 bit server. AddOn installation created with B1DE for SAP 2007 doesn't work on that server. After running SAP AddOn is trying to install, and then there is an error. Is there any way to create AddOn installation files that work on 64 bit server?
    Regards
    Hmg

    Both Robin and Owen are right... You need to run your code as forced 32 bit.
    The reason is the following:
    - A default project in Visual Studio is compiled as "Any CPU"
       - Any CPU means that you code will be executed as 32bit on a 32bit machine, and 64bit on a 64bit machine.
       - The Any CPU option is great for pure .NET (since all parts of it can run 32bit and 64bit)
       - In case of the SAP SDK and the AddonInstaller.dll, these are COM-based unmanaged code
          - If such unmanage code is not written to work with 64 bit, problems like yours can occur (this happens not only for SAP SDK... Tons of API out there have the same problems)
    - If you change the Any CPU option to the x86 option, you will force 64 bit mashines to run your code in "simulated" 32bit (Don't worry.. it is quite fast and gives no problems)
    We are you this with our 64 bit customers and without any problems...
    Lastly, if you wish to know more about this please hear the following podcast that describes the issue in detail (A good listen): http://www.dotnetrocks.com/default.aspx?showNum=341
    /Rasmus

  • Addon Installer exception

    hey
    i am still a rooky in sbo and SAp in general.
    i am creating the addon:blanket agreement that i find in the SDK help center
    well the module blanket is running correctly.
    but when i create the addon installer and try to run t  get the exception(from french):"the object instance is not assigned to an object".
    i now the meaning of message but i dont how to solve it.
    if you have any idea pls let me know thank you

    This the script of my installer hope sombody can help.
    ps:when i check the install directory after the failer of the installation i foun the blanketagreement temp file.
    'the addon intallation script
    Public Class Form1
        Inherits System.Windows.Forms.Form
    #Region " Code généré par le Concepteur Windows Form "
        Public Sub New()
            MyBase.New()
            'Cet appel est requis par le Concepteur Windows Form.
            InitializeComponent()
            'Ajoutez une initialisation quelconque après l'appel InitializeComponent()
        End Sub
        'La méthode substituée Dispose du formulaire pour nettoyer la liste des composants.
        Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
            If disposing Then
                If Not (components Is Nothing) Then
                    components.Dispose()
                End If
            End If
            MyBase.Dispose(disposing)
        End Sub
        'Requis par le Concepteur Windows Form
        Private components As System.ComponentModel.IContainer
        'REMARQUE : la procédure suivante est requise par le Concepteur Windows Form
        'Elle peut être modifiée en utilisant le Concepteur Windows Form. 
        'Ne la modifiez pas en utilisant l'éditeur de code.
        Friend WithEvents Label1 As System.Windows.Forms.Label
        Friend WithEvents Label2 As System.Windows.Forms.Label
        Friend WithEvents chkDefaultFolder As System.Windows.Forms.CheckBox
        Friend WithEvents txtDest As System.Windows.Forms.TextBox
        Friend WithEvents chkRestart As System.Windows.Forms.CheckBox
        Friend WithEvents cmdInstall As System.Windows.Forms.Button
        <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
            Me.Label1 = New System.Windows.Forms.Label
            Me.Label2 = New System.Windows.Forms.Label
            Me.txtDest = New System.Windows.Forms.TextBox
            Me.chkDefaultFolder = New System.Windows.Forms.CheckBox
            Me.chkRestart = New System.Windows.Forms.CheckBox
            Me.cmdInstall = New System.Windows.Forms.Button
            Me.SuspendLayout()
            'Label1
            Me.Label1.Location = New System.Drawing.Point(88, 24)
            Me.Label1.Name = "Label1"
            Me.Label1.Size = New System.Drawing.Size(200, 23)
            Me.Label1.TabIndex = 0
            Me.Label1.Text = "Blanket Addon Installer"
            'Label2
            Me.Label2.Location = New System.Drawing.Point(8, 80)
            Me.Label2.Name = "Label2"
            Me.Label2.Size = New System.Drawing.Size(200, 23)
            Me.Label2.TabIndex = 1
            Me.Label2.Text = "Installation Folder"
            'txtDest
            Me.txtDest.Location = New System.Drawing.Point(8, 120)
            Me.txtDest.Name = "txtDest"
            Me.txtDest.Size = New System.Drawing.Size(288, 20)
            Me.txtDest.TabIndex = 2
            Me.txtDest.Text = "TextBox1"
            'chkDefaultFolder
            Me.chkDefaultFolder.Location = New System.Drawing.Point(8, 160)
            Me.chkDefaultFolder.Name = "chkDefaultFolder"
            Me.chkDefaultFolder.TabIndex = 3
            Me.chkDefaultFolder.Text = "CheckBox1"
            'chkRestart
            Me.chkRestart.Location = New System.Drawing.Point(8, 184)
            Me.chkRestart.Name = "chkRestart"
            Me.chkRestart.TabIndex = 4
            Me.chkRestart.Text = "CheckBox2"
            'cmdInstall
            Me.cmdInstall.Location = New System.Drawing.Point(112, 224)
            Me.cmdInstall.Name = "cmdInstall"
            Me.cmdInstall.TabIndex = 5
            Me.cmdInstall.Text = "Button1"
            'Form1
            Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
            Me.ClientSize = New System.Drawing.Size(320, 270)
            Me.Controls.Add(Me.cmdInstall)
            Me.Controls.Add(Me.chkRestart)
            Me.Controls.Add(Me.chkDefaultFolder)
            Me.Controls.Add(Me.txtDest)
            Me.Controls.Add(Me.Label2)
            Me.Controls.Add(Me.Label1)
            Me.Name = "Form1"
            Me.Text = "SAP Business One"
            Me.ResumeLayout(False)
        End Sub
    #End Region
        Friend WithEvents FileWatcher As New System.IO.FileSystemWatcher
        'EndInstall - Signals SBO that the installation is complete.
        Declare Function EndInstall Lib "AddOnInstallAPI.dll" () As Int32
        'SetAddOnFolder - Use it if you want to change the installation folder.
        Declare Function SetAddOnFolder Lib "AddOnInstallAPI.dll" (ByVal srrPath As String) As Int32
        'RestartNeeded - Use it if your installation requires a restart, it will cause B1 application to close itself after the installation is complete.
        Declare Function RestartNeeded Lib "AddOnInstallAPI.dll" () As Int32
        Private strDll As String ' The path of "AddOnInstallAPI.dll"
        Private strDest As String ' Installation target path
        Private bFileCreated As Boolean ' True if the file was created
        Private Sub ExtractFile(ByVal path As String)
            Dim AddonExeFile As IO.FileStream
            Dim thisExe As System.Reflection.Assembly
            thisExe = System.Reflection.Assembly.GetExecutingAssembly()
            Dim file As System.IO.Stream
            file = thisExe.GetManifestResourceStream("AddOn.BalnketAgreement.exe")
            ' Create a tmp file first. After the file is extracted change the
            ' extension to exe.
            AddonExeFile = IO.File.Create(path & "BlanketAgreement.tmp")
            Dim buffer() As Byte
            ReDim buffer(file.Length)
            file.Read(buffer, 0, file.Length)
            AddonExeFile.Write(buffer, 0, file.Length)
            AddonExeFile.Close()
            ' Change file extension to exe
            Try
                IO.File.Move(path & "BlanketAgreement.tmp", path & "BlanketAgreement.exe")
            Catch
                IO.File.Delete(path & "BlanketAgreement.tmp")
                IO.File.Move(path & "BlanketAgreement.tmp", path & "BlanketAgreement.exe")
            End Try
        End Sub
        Private Sub Install()
            Environment.CurrentDirectory = strDll ' For Dll function calls will work
            If chkDefaultFolder.Checked = False Then ' Change the installation folder
                SetAddOnFolder(txtDest.Text)
                strDest = txtDest.Text
            End If
            If Not (IO.Directory.Exists(strDest)) Then
                IO.Directory.CreateDirectory(strDest) ' Create installation folder
            End If
            FileWatcher.Path = strDest
            FileWatcher.EnableRaisingEvents = True
            ExtractFile(strDest) ' Extract add-on to installation folder
            While bFileCreated = False
                Application.DoEvents()
                'Do not continue running until the file is copied...
            End While
            If chkRestart.Checked Then
                RestartNeeded() ' Inform B1 that restart is needed
            End If
            EndInstall() ' Inform B1 that the installation has ended
            MessageBox.Show("Finished Installing", "Installation ended", MessageBoxButtons.OK, MessageBoxIcon.Information)
            Windows.Forms.Application.Exit() ' Exit the installer
        End Sub
        Private Sub frmInstall_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            ' The command line parameters, separated by '|' will be broken to this array
            Dim strCmdLineElements(2) As String
            Dim strCmdLine As String     ' The whole command line
            Dim NumOfParams As Integer   'The number of parameters in the command line (should be 2)
            NumOfParams = Environment.GetCommandLineArgs.Length
            If NumOfParams = 2 Then
                strCmdLine = Environment.GetCommandLineArgs.GetValue(1)
                strCmdLineElements = strCmdLine.Split("|")
                ' Get the installation destination folder
                strDest = strCmdLineElements.GetValue(0)
                txtDest.Text = strDest
                ' Get the "AddOnInstallAPI.dll" path
                strDll = strCmdLineElements.GetValue(1)
                strDll = strDll.Remove((strDll.Length - 19), 19)   ' Only the path is needed
            Else
                MessageBox.Show("This installer must be run from Sap Business One", "Incorrect installation", MessageBoxButtons.OK, MessageBoxIcon.Exclamation)
                Windows.Forms.Application.Exit()
            End If
        End Sub
        Private Sub chkDefaultFolder_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkDefaultFolder.CheckedChanged
            txtDest.Enabled = Not (chkDefaultFolder.Checked)
        End Sub
        Private Sub FileWatcher_Renamed(ByVal sender As Object, ByVal e As System.IO.RenamedEventArgs) Handles FileWatcher.Renamed
            bFileCreated = True
            FileWatcher.EnableRaisingEvents = False
        End Sub
        Private Sub cmdInstall_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdInstall.Click
            Install()
        End Sub
    End Class
    thanks for your help.

  • Digitale Signatur für AddOn-Installer falsch

    Hallo zusammen,
    ich hab einen AddOn erstellt. Beim istallieren kriege ich eine Meldung: "Digitale Signatur für AddOn-Installer falsch".
    Woran kann das denn liegen?
    Gruß
    Alexnader

    Hallo Alexander,
    Welcher Lizenztyp wird fuer das Add-on benutzt?
    Siehe Hinweis [871572|https://websmp230.sap-ag.de/sap(bD1lbiZjPTAwMSZ3PTU4ODAwMDAr)/bc/bsp/spn/smb_searchnotes/display.htm?note_langu=E&note_numm=871572].
    Viele Gruesse
    Mario Schoenberg

  • AddOn Installation Failed On Terminal Server

    Hello All,
    I have created a addon in SAP B1 2007 B and when i am trying to installed the addon on the Windows 2008 Terminal Server
    so that the client can log on to the AddOn through terminal server .But the addon is not getting installed and throwing an
    error " AddOn Installation Failed  " and "Failed to Initialised the AddOn".
    Thanks & Regards
    Amit

    Amit,
    Are you logged on as Administrator on the Terminal Server and are you installing the add-on?  Windows Server 2008 is supported as of 2007B  PL09.  Are you at least at this PL level?
    Eddy

  • Error during Addon Installation Index was outside the bounds of array

    Hi  wen im trying to install addon on x64 2003 server its throwing me error
    Customer library
    "Error during Addon Installation Index was outside the bounds of array."
    "Error(-2) at EndInstallEx(False) at the end of the addon installation"
    Please provide me a solution for this.
    Thanks
    Rekha

    Hi Rekha,
    You may check this: Add-on Installer Issue
    Is this your add-on or SAP add-on? If it is 3rd party add-on, post it to the other forum
    Thanks,
    Gordon

  • UI addon installation

    Hello,
    I would like to install sap fiori on our ECC6 EHP6 system, but I'm stuck with installation of UI addon.
    Tx SAINT requires stack.xml for addon installation, but I cannot get it.
    I tried to follow this note 1666368 - Installing UI add-on 1.0 for SAP NetWeaver
    ,but there is no more MOPZ transaction in solman 7.1, this is what is written in note:
    In the "Select Add-Ons" section of transaction MOPZ, select the product version "UI add-on 1.0 for SAP NetWeaver".
    I don't know where I can find Select Add-Ons section, all I can do is maintenance (SPS installation) or EHP7 installation...
    Could you help me out?
    Regards,
    Martin

    Hello,
    my system is on NW 7.31:
    I found this KB article: 1834030 - Targeted instance ... is incompatible with NW 7.3!
    ...which should solve my issue, but it did not help.
    My CR/CIM versions are latest (updated last friday):
    Landscape verification was done few minutes ago with no error:
    So I withdraw-ed old maintenance transaction, created new one, but it ended with exactly same list of error messages...
    Have no clue how to proceed...

  • Error : "Wrong Digital Signature for Addon Installer"

    I'm having some problems at the time of installing any kind of addon in sap B1
    Everytime I'm having an error -
    "Wrong Digital Signature for Addon Installer"
    even when I'm adding SCREEN PAINTER

    Hi
    This error could be cause by a versioning or corrupted installation:
    1. For the version please check if you have another add-on installed with the same version like 2.1.2 (try to change it add-on file and try again)
    You can also try to change the add-on installation order (in case of you have another add-ons installed).
    2. If checking the version does not help please check those notes on How to clean client after corrupt installation of addon and also Re-registering the UI.                                                                               
    808354 UI Server is not loaded with SAP Business One client        
    819501 How to clean client after corrupt installation of addon     
    Paulo Calado
    SAP Business One Forums Team

  • Restrict Customised Addon Installation (Usage)

    Hi All,
    I have done the development for our one of the clients requirements. We are going to install the same in the client location. Actually we want to restrict the addon installation to only one server i.e., subsequently that addon shouldnt be used by some other company, it could be even their sister concern.
    Is there any way to restrict the addon installation? Is there any way to do through coding without getting SAP Licencing?
    Please clarify.
    Regards,
    SAPB1Use.

    Hi János,
    I feel your solution will work well. And one more clarification. I thought of giving the same Addon to other companys who are in Same Industry. But I want to restrict their use for 15 days only. I can capture the Addon Installation Date & I can compare the same with the Current date. By this logic, I could control.
    But actually, I want to restrict 2nd installation of Addon in the same server. How I can go ahead with that. I have one logic in mind, please tell me that will work or not.
    I will capture the System name in any of the system table while installing the Addon for the first time. In the 2nd installation, I will cross check the System Name. If it exists, I want to restrict the installation.
    My query is that, where can I restrict whether in installation of Addon or while opening the Customised screen.
    Please clarify.
    Regards,
    SAPB1Use

  • Restrict Customised Addon Installation

    Hi All,
    I have done the development for our one of the clients requirements. We are going to install the same in the client location. Actually we want to restrict the addon installation to only one server i.e., subsequently that addon shouldnt be used by some other company, it could be even their sister concern.
    Is there any way to restrict the addon installation? Is there any way to do through coding without getting SAP Licencing?
    Please clarify.
    Regards,
    SAPB1Use.

    Hi SAP B1 Use....
    Such kind of qusetion you should ask in SAP Business One SDK Forum.'
    There you get the right and quick answer.
    This forum is related to Functional side......
    Thanks & Regards,
    Rahul

  • IS_RETAIL Addon Installation

    Hi,
    I have installed SAP ERP 6.0 SR2 system.
    We need IS_RETAIL component on this same system.
    Is it possible to do addon installation IS_RETAIL on this server??
    If possible please let me know the steps.
    Thanks
    Amit

    Amit,
    Below thread may help you
    IS-RETAIL
    IS- RETAIL
    IS  RETAIL
    Thanks
    Sushil

  • Custom AddOn installation error on Windows Server 2008 64 bits

    Hi All,
    We have developed an AddOn that our client is currently testing on several Windows XP machines.
    My client requested to install it also on a Windows Serer 2008 64bits machine, so we have compiled it (both the AddOn and the Setup Installer) to x64 bits with Visual Studio 2005.
    However when we try to install it on the server and inside the SBO, we get the following error:
       An attempt was made to load a program with an incorrect format (Exception HRESULT 0x8007000B)
    The problem is that both EXE files (addon and installer) are in fact in x64 bit format because we get the standard error when we run with an 32bit machine (xxxx is not a valid Win32 application).
    Does anybody know how to solve this problem?
    Regards
    Manuel Dias

    Hi Manuel,
    This topic did come up in the forum, many a times by now, find the below links to the same.
    [Re: 64 bit windows (Exception from HRESULT: 0x8007000B)|Re: 64 bit windows (Exception from HRESULT: 0x8007000B)]
    [ Re: 64 Bit Programming SAP Add-ons|Re: 64 Bit Programming SAP Add-ons]
    HTH,
    Siju Dasan

  • TDS Addon Installation Error

    Hi,
    When iam installing TDS Addon 1.36 it's showing error
    message like Add-in TDS: Add on installation failed because
    another version is already installed. please ensure that the
    version number is higher than the version prasently installed.
    I checked in Add and remove ther is no TDS Addon and i
    removed here C:\Program Files\SAP\SAP Business
    One\AddOns in this TDS Folder and
    can i remove Addon Install.SBO And Addon
    LocalReistration.Sbo Files in C:\Program Files\SAP\SAP
    Business One here it will solve ?
    Regds,
    Samapth kumar devunuri.
    Teamwork is the ability to work together toward a common vision

    hi,
      there is already a new version for TDS Add-on which has come up. You can get that, and there is no problem in installing and its good too.You can contact Harish Kumar from Citixsys to get your new version.

  • Addon Installer on Vista

    Hi,
    I have developed an Addon for SBO2007 in VS .NET with VB. I packaged my solution with the standard SDK Installer. Then i tried to install it on my Vista Client and got the B1 System message "Installation Failed". When i try to install it on the W2k3 Server it works fine.
    Now my question: could this be a .NET Versions related thing?
    Note: I'm admin on my Vista machine and have turned UAC off.

    Hi,
    This is probably a .NET Versions related thing.  What .NET version do you have on your Vista?  Make sure you have matched version with your add-on.
    Thanks,
    Gordon

Maybe you are looking for

  • I don't see my I cloud on my phone, but I said that I wanted it when I got my update.  Where do I find it on my phone?

    Where do I go on my I phone to see i Cloud?  I thought I asked to have everything automatically backed up to i Cloud when I updated to the 7.02 version. Why don't I see it on my phone?  Someone that has an i phone told me that i Cloud would send me a

  • Word 2003 - Acrobat menus disappear for some (not all) documents

    I have a user who is having a very bizarre issue with Word 2003 and Acrobat 9 Pro Extended.  When he opens some Word documents, the PDF menus disappear.  They are immediately restored when he closes the document or creates a new document.  We've trie

  • Camera Raw 8.4 problems

    I'm unable to append metadata to files in Bridge CS6 since updating to Camera Raw 8.4. Existing metadata is also being stripped from previously worked on .CR2 files. Also preview images from .RAF files no longer load when they used to before. Is ther

  • Camera Profile

    Creative Cloud 2014 Windows 7 Pro 64-bit XRite Color Checker Passport Nikon P7800 I create Camera Profiles (.DCP files) using XRite Color Checker Passport. Adobe Camera Raw (ACR) looks for user generated Camera Profiles in folder C:\Users\john\AppDat

  • Transfer of Address Book, Mail, Bookmarks (From Tiger)

    Hi Gang I'm finally thinking about going with Leopard. Although I've been quite satisfied with Tiger, but I hear constantly that Leopard will run smoother, even on an older 1.8 G5 Single Processor? Anyway, about backing up my old mail, bookmarks, and