2/1/2022

Mbs Xojo

  1. Xojo Mbs Listbox
  2. Mbs Xojo Conference
  3. Xojo Mbs Htmlviewer
  4. Mbs Xojo To Mp3

MBS Xojo Plugins 21.1 (English) 23:12 minutes: Installing a Xojo Web App Server (English) 28:19 minutes: MBS Plugin Installation Win (English) 22:03 minutes: MBS Plugin Installation Mac (English) 25:17 minutes: XDC 2020 MBS Plugins Presentation (English) 38:59 minutes: MBS Plugins @ MBS 2019 (English) 42:28 minutes.

  • Jan 27, 2021 The MBS Xojo Plugins in version 21.0 offers also some new features for Apple users.
  • MBS Xojo Plugins 21.1 Let us show you a few of the new example projects included with the 21.1 version of our Xojo Plugins. All movies Watch on YouTube Xojo211.m4v (319M).
  • Xojo and JavaScript – A Perfect Combination Published February 3, 2020 by Stefanie Juchmes In the newest version of the MBS Xojo Plugin 10.0 we offer functions for the use of JavaScript in your Xojo solutions. If you have a problem that you want to solve, you don’t have to reinvent the wheel again and again.

If you work with large companies, you’ve most likely heard of SAP, a widely used enterprise software solution. With the RFC classes of the MBS Xojo Plugin you can build RFC (Remote Function Call) interfaces so that Xojo apps can communicate with SAP systems. I’ve done this to SAP R/3 and SAP S/4 HANA. The MBS plugin covers the libraries of the SAP NetWeaver RFC SDK 7.50.

The SAP interface has four steps:

  1. Determine the path to the SAP library
  2. Build a connection to the SAP system
  3. Transfer data to the SAP system
  4. Receive data from the SAP system

Connect the SAP System

Your SAP user must have the authority for RFC connections. If so, you must know some data of your SAP logon to connect to an SAP system, such as:

  • host name – a name or an IP address (ashost)
  • router string
  • system number (sysnr)
  • client (client)
  • language (lang)
  • user (user)
  • password (passwd)

At first you must set the path to the SAP libraries. In Windows you have some DLL’s around SAPNWRFC.DLL and on macOS you have some DYLIB’s around LIBSAPNWRFC.DYLIB.

I’ve copied the SAP libraries with the Xojo build settings into the application resource folders.

If the setting of the LibPath fails then send the error message:

And if the LibPath is set you can do the logon as second step:

Please note if you have a router string you must build the host name (ashost) with a concatenation of router string and host name like this:

If the connection fails you will get the reason with:

Calling an SAP Function Module

If you are calling a SAP Function Module you will export key values to SAP and you will receive data or i.e. error messages. To understand the import and export parameters you must look out of the SAP function module in the surrounding world.

This example calls the SAP function module RFC_READ_TABLE. With this standard RFC module you can get the content of a database table and/or the SAP data dictionary description of this table.

Exporting key values to SAP

For exporting the key values to the SAP function module you must load a functions description and create a data container for executing the function module.

The function module RFC_READ_TABLE has two parameters:

  • the name of the table as import parameter: QUERY_TABLE
  • the select options of the where clause as tables parameter: OPTIONS

You must consider that the maximum length of a where clause for the table OPTIONS is 72 digits. If the where clause length is greater than 72 you must split the clause to several lines. The clause must look like this “(MATNR = ‘1234’ AND WERKS = ‘1000’) OR (MATNR = ‘3456’ AND WERKS = ‘1000’)”.

And now you can execute the function module into the backend system:

Receiving data from SAP

The function module RFC_READ_TABLE returns now to tables parameters:

  • FIELDS – contains the SAP data dictionary description of the returned table
  • DATA – contains the data found for the transferred where clauses

If the TableFields.RowCount = 0 then the returned table contains no data. To get the content of a returned table you must loop like this:

Error Handling

To catch an exception, you should code into your method something like this:

Interpretation of Returned Data

If you want to get after the INVOKE the returned data you will have

  • a table or
  • a structure or
  • a field

If you have a table you will get a certain field with:

If you have a structure you will get a certain field with:

If you have a field you will get the data with:

Using the above techniques with the MBS plugin, your Xojo apps can now access information contained in SAP.

Michael Eckert studied economics from 1982-1986 and has been employed at T-Systems as a software architect since 1989. Michael has worked with ERP systems for 34 years, until 1998 with PL/1, since 1998 with ABAP in SAP R/3 and SAP S/4 HANA. He’s been developing with Xojo for about 9 years.

Platforms to show: AllMacWindowsLinuxCross-Platform

XLBookMBS.AddCustomNumFormat(customNumFormat as string) as Integer
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Adds a new custom number format to the workbook.
Notes: The format string customNumFormat indicates how to format and render the numeric value of a cell. See custom format strings guidelines (in FAQ). Returns the custom format identifier. It's used in XLFormatMBS.NumFormat. Returns 0 if error occurs. Get error info with XLBookMBS.ErrorMessage property.

Some examples using this method:

XLBookMBS.AddFont(initFont as XLFontMBS = nil) as XLFontMBS
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Adds a new font to the workbook, initial parameters can be copied from other font.
Notes:
Returns nil if error occurs.
The initFont can be from another book.
XLBookMBS.AddFormat(initFormat as XLFormatMBS = nil) as XLFormatMBS
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Adds a new format to the workbook, initial parameters can be copied from other format.
Example:
Notes:
Returns nil if error occurs.
The initFormat can be from another book.
XLBookMBS.AddPicture(path as folderitem) as Integer
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Adds a picture to the workbook.
Notes: Returns a picture identifier. Supports BMP, DIB, PNG, JPG and WMF picture formats. Use picture identifier with XLSheetMBS.setPicture(). Returns -1 if error occurs. Get error info with XLBookMBS.ErrorMessage property.

See also:

XLBookMBS.AddPicture(path as string) as Integer
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Adds a picture to the workbook.
Notes: Returns a picture identifier. Supports BMP, DIB, PNG, JPG and WMF picture formats. Use picture identifier with XLSheetMBS.setPicture(). Returns -1 if error occurs. Get error info with XLBookMBS.ErrorMessage property.

See also:

XLBookMBS.AddPictureData(data as string) as Integer
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Adds a picture to the workbook from memory buffer:
Notes: Returns a picture identifier. Use picture identifier with XLSheetMBS.setPicture(). Returns -1 if error occurs. Get error info with XLBookMBS.ErrorMessage property.
XLBookMBS.AddRichString as XLRichStringMBS
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin20.2✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Creates a new rich string to be used in the book.
XLBookMBS.AddSheet(name as string = ', initSheet as XLSheetMBS = nil) as XLSheetMBS
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Adds a new sheet to this book, returns the sheet.
Notes:
Use initSheet parameter if you wish to copy an existing sheet.
Returns NULL if error occurs. Get error info with XLBookMBS.ErrorMessage property.

Some examples using this method:

XLBookMBS.AddStyledText(StyledText as StyledText) as XLRichStringMBS
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin20.2✅ Yes✅ Yes✅ Yes❌ NoDesktop, Console & Web
Function: Adds styled text to the book to later assign to a cell.
Notes: We convert attributes like bold, italic, underline, color, font name and size.
XLBookMBS.BookVersion as Integer
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin13.0✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Returns the version number of this book.
Example:
Notes: Version number is encoded as hex number with major version, minor version and bugfix.
XLBookMBS.Constructor(xml as boolean = false)
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Creates a new XLBookMBS object.
Notes: xml: If true, creates a book in xlsx format (xml), else one in xls format (binary).
XLBookMBS.CopyContent(dest as XLBookMBS, Options as XLCopyOptionsMBS = nil)
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin15.1✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Copies all content from one book to other book.
Notes:
The plugin loops through all sheets and creates matching sheets on new book.
Formats and fonts are created on the fly.
MbsThis allows you to convert from XLS to XLSX or back.
Please report if something is not copied. Of course plugin can only copy what libXL supports, so stuff like movies or diagrams are not copied.

Some examples using this method:

XLBookMBS.CustomNumFormat(fmt as Integer) as string
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Returns a custom format string for specified custom format identifier fmt.
Notes: See custom format string guidelines (in FAQ). Returns NULL if error occurs. Get error info with XLBookMBS.ErrorMessage property.
XLBookMBS.DefaultFont(byref fontSize as Integer) as string
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Returns a default font name and size for this workbook.
Notes: Returns ' if error occurs. Get error info with XLBookMBS.ErrorMessage property.
XLBookMBS.DelSheet(index as Integer) as boolean
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Deletes a sheet with specified index.
Notes: Returns false if error occurs. Get error info with XLBookMBS.ErrorMessage property.
XLBookMBS.Font(index as Integer) as XLFontMBSMbs xojo test
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Returns a font with defined index.
Notes: Index must be less than return value of fontCount method.
XLBookMBS.FontCount as Integer
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Returns a number of fonts in this book.
XLBookMBS.Fonts as XLFontMBS()
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Returns array with all defined fonts.
Mbs XojoXLBookMBS.Format(index as Integer) as XLFormatMBS
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Returns a format with defined index.
Notes: Index must be less than return value of formatCount method.
XLBookMBS.FormatCount as Integer
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Returns a number of formats in this book.
XLBookMBS.Formats as XLFormatMBS()
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Returns array with all defined formats.
XLBookMBS.InsertSheet(index as Integer, name as string = ', initSheet as XLSheetMBS = nil) as XLSheetMBS
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Inserts a new sheet to this book at position index, returns the sheet.
Notes: Use initSheet parameter if you wish to copy an existing sheet. Returns NULL if error occurs. Get error info with XLBookMBS.ErrorMessage property.
XLBookMBS.Load(path as folderitem) as boolean
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Loads a xls-file into memory.
Notes:
Returns false if error occurs. Get error info with XLBookMBS.ErrorMessage property.
With the constructor of the XLBookMBS object you decide if you want to load XML format or older binary format. If the format of the book object doesn't match the file, it will fail.
Loading a file into the book object clears existing formats, sheets and fonts from previous book. You can recreate the ones you need or search them in the existing formats, fonts or sheets.

See also:

XLBookMBS.Load(path as string) as boolean

Xojo Mbs Listbox

TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin11.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Loads a xls-file into memory. Mbs
Notes:
Returns false if error occurs. Get error info with XLBookMBS.ErrorMessage property.
With the constructor of the XLBookMBS object you decide if you want to load XML format or older binary format. If the format of the book object doesn't match the file, it will fail.
Loading a file into the book object clears existing formats, sheets and fonts from previous book. You can recreate the ones you need or search them in the existing formats, fonts or sheets.

See also:

XLBookMBS.LoadMT(path as folderitem) as boolean
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin17.5✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Loads from file.
Notes:
Same as the other method without MT in name, except:
The work is performed on a preemptive thread, so this function does not block the application and can yield time to other Xojo threads. Must be called in a Xojo thread to enjoy benefits. If called in main thread will block, but keep other background threads running.

See also:

XLBookMBS.LoadMT(path as string) as boolean
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin17.5✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Loads from file.
Notes:
Same as the other method without MT in name, except:
The work is performed on a preemptive thread, so this function does not block the application and can yield time to other Xojo threads. Must be called in a Xojo thread to enjoy benefits. If called in main thread will block, but keep other background threads running.

See also:

XLBookMBS.LoadPartially(path as folderitem, sheetIndex as Integer, firstRow as Integer, lastRow as Integer) as boolean
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin17.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Loads a file only with specified sheet index and row range into memory.
Notes: Returns false if error occurs or true on success.. Get error info with errorMessage function.

Mbs Xojo Conference

See also:

XLBookMBS.LoadPartially(path as string, sheetIndex as Integer, firstRow as Integer, lastRow as Integer) as boolean
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin17.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Loads a file only with specified sheet index and row range into memory.
Notes: Returns false if error occurs or true on success.. Get error info with errorMessage function.

See also:

XLBookMBS.LoadPartiallyUsingTempFile(path as folderitem, sheetIndex as Integer, firstRow as Integer, lastRow as Integer, TempFile as folderitem) as boolean
TypeTopicPluginVersionmacOSWindowsLinuxiOSTargets
methodXLMBS XL Plugin17.3✅ Yes✅ Yes✅ Yes✅ YesAll
Function: Loads a file only with specified sheet index and row range into memory.
Notes:

Xojo Mbs Htmlviewer


Specify a temporary file for reducing memory consumption.
Returns false if error occurs or true on success.. Get error info with errorMessage function.

See also:

Mbs Xojo To Mp3

The items on this page are in the following plugins: MBS XL Plugin.