Customised SAP AddOn
Our teams has been developing and installing Customised SAP AddOns on client sites for testing.
However, we always encounter 2 common problems:
(a) "Another version of the program has been installed" - when trying to uninstall from SAP B1 AddOn Administration.
I notice there is SAP Notes that suggest removing 'AddOnsInstall.sbo' and 'AddOnsLocalRegistration.sbo' . However, this solution requires reinstalling all AddOns after the removal.
Is there a particular reason this happen that we can include in our program as a fix?
(b) Sometimes, after uninstalling from SAP Business One, we still see that the AddOns hangging in Control Panel--> Add/Remove Program. If we try to uninstall the AddOn from Add/Remove Program, we receive an error "Object reference not set to an instance".
Any advice on this?
Hi,
For the first one, instead of deleting the files, open them with the notepad, and delete the XML nodes regarding your addon.
I think this would solve the second too, but I´m not 100% sure. If not, have a look at the SARI table in the SBO-Common database.
Hope helps,
Ibai Peñ
Similar Messages
-
Hi Basis Experts,
Can any one tell me How to uninstall a SAP addon/component?
Appreciate your time and help
Thanks
CGPrince,
That is what i thought. I think there should be a way to uninstall the addon/component.
I was trying to figure out this and could'nt find any document or procedure to do this.
Thanks
CG -
Error when installing SAP Addons
Hi all,
When i am installing a SAP addon i got the following error:
"Error: -1603 Fatal error during installation. Consult Windows Installer Help (Msi.chm) or MSDN for more information."
Can somebody how to fix this problem.
Thanks in advance,
ChiefI solved it what you need to do is: To clean the temp directory.
Via Start - Run - %temp%.
Greetz,
Chief -
Pre-requisite before going for training to customise sap business one.
what are the pre requisite before going for training to customise sap business one according to our requirements...I am going for training on SAP business one to Germany
Hi
In SAP B1 there is only 3 Modules.
1 Technical Basic Knowldege in Programming in Visual Studio
2 Accounting
3 Logistics
2 & 3 are Functional Consultant. Basic Knowledge in Business Management is Enough.
SAP B1 is easy to learn and Understand.
You can Manage. Well
Regards
Srini -
Hi,
While installing any of the SAP Addon like Outlook Integration or EFM Format its generating a dmp file. Can anyone sugget what can be done.
Following message is prompted while installing the Addon:
Application has a problem
Diagonistic file "C:\Documents and Settings\Administrator\Local Settings\Application Data\SAP\SAP Business One\SAP Business One_20110524174113.dmp was created. Please contact support and attach the diagonistic file.
LizaHi Liza,
Welcome to SDN !!!!!!!
On version you are installing ? Patch ?
On which OS ?
Thanks
Kevin -
Customise Sap Report -- Add logo and change report layout
Hi All,
I have a requirement to amend sap standard report to add logo and change layout, could some one pls point me to teh right direction. Should we .1 Create a new smartfrom if yes -- how to to create smartfroms
2. Should we create new Zreport...3. Is Adobe Interactive forms any good---- cld you please share the steps to create Adobe Ine Form 4. is sap script any good way in my situation
Thanks
SmithChanges to SAP Standard are always a bit tricky, specially if we are talking about legal reports. If the standard report uses smartform, you can change the standard form without needing a SSCR key, so no need to create a Z report or smartform even, but like every change on SAP Standard, if further changes are made by SAP through Support packages you will always have to replicate them yourself everytime this happens. I would suggest creating a new Z report by copy of standard and new Z smartform, that way you can always recurr to the standard and see what was changed and then replicate them in you Z reports.
To create smartform, go to TCode smarforms and you can create one by copy of an existing smartform.
Adobe Interactive forms is more complex then smartforms and unless the standard uses a print form, i would not suggest you creating one as it will envolve a bit more knowledge. -
Layout problem for Customised SAP Script ZQM_QCERT_01
hey guys,
i need to generate a customised layout for QM_QCERT_01 used in QC21 tcode.
I had copied QM_QCERT_01 INTO ZQM_QCERT_01 but after making changes in the HEADER,the table goes to second page and the alignment of all the fileds in table also gets changed. What should i do in this regard ??
Pls reply ,,,,<removed by moderator>
Thanks in Advance,
Ajay
Edited by: Thomas Zloch on Nov 21, 2011 11:52 AMWith the information you provided, I think the easiest thing to do is to create a new copy. Or then you could check the differences by comparing the old and new smartform.
-
Hi I'm trying to create an add using the SAP B1 AddOnInstaller .Net wizard however i follow the instructions and after i click finish to create the project, it opens up a program called Add-On registration Data generator. why does it do this? what is it for? and how do i use it?
Thanks Matt.Matthew,
Please look at the SAP Business One SDK Help Center documentation and specifically at the "Package and Deployment" sections as this will give you an overview of packaging your add-on.
HTH,
Eddy -
Error in customised SAP script for F-58
Hi experts,
I'm facing one strange error.
While doing F-58 transaction along with any Z-sapscript , the values are getting populated into fields of table REGUH (Settlement data from payment program).
One field REGUH-ZADNR (Payee's Address Number) the value coming as 'XXXXXXXXXX'.
while processing this value ...It results in runtime error as "CONVT_NO_NUMBER"
Unable to interpret "XXXXXXXXXX" as a number.
What could be the reason.
Any useful inputs on this will be rewared points.
Thanks
Lakshmiraj AWell it is actually the functional guys task. For the payment run transaction F110 they have to do many configurations to maintain the payee, bank, cheque lot, company details etc. So better ask them to check the configuration of payment run, in that check if the payee has the correct address.
Hope it helps.
Please inspire by rewarding points.
FY -
Error While Starting XL Reporter Addon on SAP Business One Server
Hi Everyone,
I have got the following error message while starting XL Reporter Addon on SAP Business One Server:-
1. "Unable to Connect SAP Business One, Connection string is not valid [66000-84]. The user is not licensed."
2. "Addon does not have a License"
while license is installed on this machine.Hi,
Try these below steps:
In Business One from the main menu go to Administration -> License -> License Administration.
Select the user you wish to connect to the XL reporter.
Assign the user the SAP AddOn License.
JimM -
ADDON在连接SBO的时候,怎么可以实现单一绑定SBO呢?以避免同时开启多个SAP的时候,ADDON开启多个,但是只在最后开启的SAP,或者第一个开启的SAP出现,也就是有没有方式使得
Set SBO_Application = SboGuiApi.GetApplication(X) 中的X能自动修改,而不是:
Set SBO_Application = SboGuiApi.GetApplication(-1)
或
Set SBO_Application = SboGuiApi.GetApplication(0)Dear Matrix hu,
UI API 的ADD-ON 是通过Connection String 连接到当前运行的B1客户端的:
'// connect to a running SBO Application
SboGuiApi.Connect sConnectionString
SboGuiApi.GetApplication() 只是得到当前运行B1的一个运行实例,并不能用来区分多个B1客户端。
Best Regards
Jane Jing
SAP Business One Forums team -
SAP system hang when start the addon.
Dear Expert,
I just upgrade one of the SAP B1 server from 2007A to SAP B1 8.8 PL15, everything going smooth both server and clients.
Except one client (new laptop with Win 7 Pro x86), this laptop fail to start the addon.
Others clients with same specs Win 7 Pro have no problem to start addon.
Addon started manually.
After click start button for that addon, the system hang. If without the addon system working fine.
If anyone have ideas to check much appreciate and thanks in advance.
Regards,
MatHi Bala,
I did try your steps, but no luck. System still hang when start the addon.
But, I can start SAP addon , example i try Screen Painter, and can start successfully. Only our addon cannot start.
I'm not suspect our addon because others client working smooth, even the server also working fine.
I did re-install DIAPI, even re-install SAP client a few time, but still fail to start addon (delete SAP client folder before install).
Any one face this problem?
Regards,
mat
Edited by: Mat Mat on Apr 21, 2011 10:43 AM -
How to add check box in SAP B1 grid controls..
hi all,
Anyone know how to add check box in SAP grid control?
It will be great if you could show me some sample code.
thanks.
regards,
sohchHi Sohch,
1. First of all you should define the Column in a matrix as it_CHECK_BOX. Like
oColumns = oMatrix.Columns
oColumn = oColumns.Add("chk_YesNo", SAPbouiCOM.BoFormItemTypes.it_CHECK_BOX)
oColumn.TitleObject.Caption = "YesNo"
oColumn.Width = 60
oColumn.Editable = True
2. Bind it with a DBDataSource as defined
oColumn = oColumns.Item("chk_YesNo")
oColumn.DataBind.Bind("UDTable", "U_YesNo")
3. Make Sure that the value that is being put into the Database is either 'Y' or 'N'.
Hope this Helps
Rizwan Hafeez
Team Lead
SAP Addon Development Section
Abacus Consulting - Pakistan -
Table Creation taking a lot of time in SAP 2007...
I have an SAP Addon which is created in SAP2005...Right now i changed the code to SAP 2007...But the Problem i am facing is, it takes a lot of time to created the usertabels thorugh SAP 2007 code...Around 5 minutes it takes....But i created the usertables through SAP 2005 less than 2 minutes....I ahve to create 18 usertables thorugh this code....
can anyone help me to solve this issue.. as well as i want to know whether any change is there in codes in SAP 2005 or SAP 2007.for creating Usertables....
My Code:
Private Sub AddUserTable(ByVal Name As String, ByVal Description As String, ByVal Type As SAPbobsCOM.BoUTBTableType)
Try
oUserTablesMD = oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oUserTables)
If oUserTablesMD.GetByKey(Name) = False Then
oUserTablesMD.TableName = Name
oUserTablesMD.TableDescription = Description
oUserTablesMD.TableType = Type
lRetCode = oUserTablesMD.Add
If lRetCode 0 Then
'oCompany.GetLastError(lRetCode, sErrMsg)
'MsgBox(sErrMsg)
End If
End If
Catch ex As Exception
'pEve_Application.StatusBar.SetText(ex.Message, SAPbouiCOM.BoMessageTime.bmt_Short, SAPbouiCOM.BoStatusBarMessageType.smt_Error)
Finally
System.Runtime.InteropServices.Marshal.ReleaseComObject(oUserTablesMD)
End Try
End Sub
Waiting for Positive Reply...
Thanks
HariHi hari,
I suggest you create you user tables, fields, keys, permissions through XML.
Here's a sample:
<?xml version="1.0" encoding="UTF-16"?>
<BOM>
<BO>
<AdmInfo>
<Object>153</Object>
</AdmInfo>
<OUTB>
<row>
<TableName>TABLE_ID</TableName>
<Descr>TABLE_DESCRIPTION</Descr>
<ObjectType>1</ObjectType>
</row>
</OUTB>
</BO>
<BO>
<AdmInfo>
<Object>152</Object>
</AdmInfo>
<CUFD>
<row>
<TableID>@TABLE_ID</TableID>
<AliasID>FIELD_NAME</AliasID>
<Descr>FIELD_DESCRIPTION</Descr>
<TypeID>A</TypeID>
<EditType></EditType>
<Dflt></Dflt>
<EditSize>100</EditSize>
</row>
</CUFD>
<UFD1>
</UFD1>
</BO>
</BOM>
If you have already created the fields before (through code or through B1 UI), you can query the OUTB, CUFD and UFD1 tables to check what values you need to put in the XML file.
You can use the following function to process a single XML file with the definition of tables, fields, keys and permissions.
Public Function LoadBDFromXML(ByRef oCompany As SAPbobsCOM.Company, ByRef oApplication As SAPbouiCOM.Application, _
ByRef Directory As String, ByRef FileName As String) As Boolean
Dim sXmlFileName As String
Dim iElementCount As Long
Dim iCounter As Long
LoadBDFromXML = False
Try
'// Inicializar a barra de progresso, caso seja nada.
If BarraDeProgresso Is Nothing Then
BarraDeProgresso = oApplication.StatusBar.CreateProgressBar(UpdatingDB, 1, False)
End If
sXmlFileName = Directory & "" & FileName
iElementCount = oCompany.GetXMLelementCount(sXmlFileName)
BarraDeProgresso.Maximum = iElementCount
BarraDeProgresso.Value = 0
For iCounter = 0 To iElementCount - 1
oCompany.XmlExportType = BoXmlExportTypes.xet_ExportImportMode
Select Case oCompany.GetXMLobjectType(sXmlFileName, iCounter)
'// Tabela de Utilizador
Case BoObjectTypes.oUserTables
Dim oTable As SAPbobsCOM.UserTablesMD = oCompany.GetBusinessObjectFromXML(sXmlFileName, iCounter)
Try
BarraDeProgresso.Value += 1
BarraDeProgresso.Text = "UDT: " & oTable.TableDescription
If oTable.Add <> 0 Then
oApplication.MessageBox(TranslateStr(oApplication, ErrAddUDT) & vbCrLf & _
TranslateStr(oApplication, Error_) & oCompany.GetLastErrorCode.ToString & ", " & _
oCompany.GetLastErrorDescription & vbCrLf & TranslateStr(oApplication, Element) & _
iCounter & ", " & oTable.TableDescription)
Exit Function
End If
Catch ex As Exception
oApplication.MessageBox(TranslateStr(oApplication, Error_) & _
TranslateStr(oApplication, ErrUDT) & ", " & ex.ToString)
Finally
System.Runtime.InteropServices.Marshal.ReleaseComObject(oTable)
oTable = Nothing
GC.Collect()
End Try
'// Campos de Utilizador
Case BoObjectTypes.oUserFields
Dim oFields As SAPbobsCOM.UserFieldsMD = oCompany.GetBusinessObjectFromXML(sXmlFileName, iCounter)
Try
BarraDeProgresso.Value += 1
BarraDeProgresso.Text = "UDF: " & oFields.TableName & "." & oFields.Name & " - " & oFields.Description
If oFields.Add <> 0 Then
oApplication.MessageBox(TranslateStr(oApplication, ErrAddUDF) & vbCrLf & _
TranslateStr(oApplication, Error_) & oCompany.GetLastErrorCode.ToString & ", " & _
oCompany.GetLastErrorDescription & vbCrLf & TranslateStr(oApplication, Element) & _
iCounter & ", " & oFields.Name)
Exit Function
End If
Catch ex As Exception
oApplication.MessageBox(TranslateStr(oApplication, Error_) & _
TranslateStr(oApplication, ErrUDF) & ", " & ex.ToString)
Finally
System.Runtime.InteropServices.Marshal.ReleaseComObject(oFields)
oFields = Nothing
GC.Collect()
End Try
'// Chaves de Utilizador
Case BoObjectTypes.oUserKeys
Dim oKeys As SAPbobsCOM.UserKeysMD = oCompany.GetBusinessObjectFromXML(sXmlFileName, iCounter)
Try
BarraDeProgresso.Value += 1
BarraDeProgresso.Text = "UDKey: " & oKeys.KeyName & "(" & oKeys.TableName & ")"
If oKeys.Add <> 0 Then
oApplication.MessageBox(TranslateStr(oApplication, ErrAddUDK) & vbCrLf & _
TranslateStr(oApplication, Error_) & oCompany.GetLastErrorCode.ToString & ", " & _
oCompany.GetLastErrorDescription & vbCrLf & TranslateStr(oApplication, Element) & _
iCounter & ", " & oKeys.KeyName)
Exit Function
End If
Catch ex As Exception
oApplication.MessageBox(TranslateStr(oApplication, Error_) & _
TranslateStr(oApplication, ErrUDK) & ", " & ex.ToString)
Finally
System.Runtime.InteropServices.Marshal.ReleaseComObject(oKeys)
oKeys = Nothing
GC.Collect()
End Try
'// Árvore de Autorizações
Case BoObjectTypes.oUserPermissionTree
Dim Tree As SAPbobsCOM.UserPermissionTree = oCompany.GetBusinessObjectFromXML(sXmlFileName, iCounter)
Try
BarraDeProgresso.Value += 1
BarraDeProgresso.Text = PermTree & Tree.Name
If Tree.Add <> 0 Then
oApplication.MessageBox(TranslateStr(oApplication, ErrAddUPT) & vbCrLf & _
TranslateStr(oApplication, Error_) & oCompany.GetLastErrorCode.ToString & ", " & _
oCompany.GetLastErrorDescription & vbCrLf & TranslateStr(oApplication, Element) & _
iCounter & ", " & Tree.Name)
Exit Function
End If
Catch ex As Exception
oApplication.MessageBox(TranslateStr(oApplication, Error_) & _
TranslateStr(oApplication, ErrUPT) & ", " & ex.ToString)
Finally
System.Runtime.InteropServices.Marshal.ReleaseComObject(Tree)
Tree = Nothing
GC.Collect()
End Try
'// Objectos de Utilizador
Case BoObjectTypes.oUserObjectsMD
Dim oUDO As SAPbobsCOM.UserObjectsMD = oCompany.GetBusinessObjectFromXML(sXmlFileName, iCounter)
Try
BarraDeProgresso.Value += 1
BarraDeProgresso.Text = "UDO: " & oUDO.Code & "(" & oUDO.Name & ")"
If oUDO.Add <> 0 Then
oApplication.MessageBox(TranslateStr(oApplication, ErrAddUDO) & vbCrLf & _
TranslateStr(oApplication, Error_) & oCompany.GetLastErrorCode.ToString & ", " & _
oCompany.GetLastErrorDescription & vbCrLf & TranslateStr(oApplication, Element) & _
iCounter & ", " & oUDO.Name)
Exit Function
End If
Catch ex As Exception
oApplication.MessageBox(TranslateStr(oApplication, Error_) & _
TranslateStr(oApplication, ErrUDO) & ", " & ex.ToString)
Finally
System.Runtime.InteropServices.Marshal.ReleaseComObject(oUDO)
oUDO = Nothing
GC.Collect()
End Try
End Select
Next iCounter
If Not BarraDeProgresso Is Nothing Then
BarraDeProgresso.Stop()
BarraDeProgresso = Nothing
End If
LoadBDFromXML = True
Catch ex As Exception
If oCompany.InTransaction = True Then oCompany.EndTransaction(BoWfTransOpt.wf_RollBack)
oApplication.MessageBox("LoadBDFromXML(" & FileName & "): " & oCompany.GetLastErrorCode.ToString & ", " & ex.ToString)
End Try
End Function
Note: BarraDeProgresso is my progress bar.
You can also register UDO's through XML, but I prefer to do it by code.
Regards,
Vítor Vieira -
How we can use the stored procedures in sap b one -pld,
HI , actualli i m a fresher in PLD and want to add a new field in preiview ofr which we have to bind the data using stored procedure which is the inbuilt given option for the properties of any field (in contents).Is anyone help me egarding this .
then pls mail me the solution at:[email protected]
byeHi Premraj,
PLD only supports User Defined Queries generated through the Query Wizard or the Query Generator in the Reports Module of SAP B1. Though I would personally recommend NOT to use Stored Procedures since they are not supported by B1 solution certification guidelines. Instead take a look at PLD Tutorials available on the SDN Site and formulate a query accordingly.
Regards
Rizwan Hafeez
Team Lead
SAP Addon Development Section
Abacus Consulting - Pakistan
Maybe you are looking for
-
Insert Opportunity - Product Revenue Child using WS2 - SBL-EAI-04316 error
Hello, I´ve got the following error message trying to insert a product revenue child object to opportunity using WS2. Fehler beim Übertragen der Daten ins CRM on Demand! Tue Apr 26 08:06:21 CEST 2011 :: Fehler bei der Verarbeitung von Argument (Error
-
AirPort to Linksys WRT54G w/WPA
So it's the holidays and I'm at my mother's house, where someone set up a wireless network through a Linksys WRT54G. Through her computer we printed up the router's security info, but the network seems to be carefully hidden--nothing shows up under t
-
Receivables question: AR invoices/credit memos between Supplier Sites
I'm trying to solution a client requirement of having the ability to transfer AR invoices/credit memos between supplier sites of the same supplier. Is this possible or is there a comparable workaround available in Receivables R12? Thanks, Chris
-
I've searched all the forums but haven't found a solution yet. My color swatches have lost the RGB colors in photoshop CS3. I've checked all the normal solutions, like color settings, tried the fly out menu settings, etc and found all to be set cor
-
Hi, Please guide me how to take Financial Report (11.1.1.3) Backup? Thank You EP