Method |
Comment |
Functions for SAP connections
|
boolean simpleRfcConnect(String p_instance, String p_loginmode) |
Establish connection to the SAP system |
boolean simpleRfcClose() |
Close connection to the SAP system |
Functions for BAPI/RFC functions |
boolean simpleRfcFunctionLoad(String p_function) |
Load BAPI/RFC function |
boolean simpleRfcFunctionExecute(boolean p_commit) |
Execute BAPI/RFC function |
boolean simpleRfcFunctionClose(boolean p_commit) |
End BAPI/RFC function |
Functions for accessing function module parameters |
boolean simpleRfcSetFocusImportParameter(String p_parameter) |
Focus on import parameter |
boolean simpleRfcSetFocusImportStructure(String p_structure) |
Focus on import structure |
boolean simpleRfcSetFocusImportTable(String p_table) |
Focus on import table |
boolean simpleRfcSetFocusExportParameter(String p_parameter) |
Focus on export parameter |
boolean simpleRfcSetFocusExportStructure(String p_structure) |
Focus on export structure |
boolean simpleRfcSetFocusExportTable(String p_table) |
Focus on export table |
boolean simpleRfcSetFocusTable(String p_table) |
Focus on table from table parameter |
Functions for accessing tables and structures |
boolean simpleRfcSetFocusStructureField(String p_fieldname) |
Focus on field from the current structure |
boolean simpleRfcSetFocusTableField(String p_fieldname) |
Focus on field from the current table (rows) |
int simpleRfcTableGetCount() |
Get number of table rows in the current table |
Vector simpleRfcTableGetEntries() |
All table rows in the current table as a quantity |
boolean simpleRfcTableSetLine(Integer p_index) |
Focus on a row in the current table |
boolean simpleRfcTableAddLine() |
Add a row to the current table |
Access to parameters/single values |
boolean simpleRfcSetParameterValue(String p_value) |
Set the value of the current parameter/field as a string |
boolean simpleRfcSetParameterValue(double p_value) |
Set the value of the current parameter/field as a double |
String simpleRfcGetParameterValue() |
Get the value of the current parameter as a string |
Misc. functions |
void simpleRfcErrorReset() |
Reset error messages |
String simpleRfcErrorGet() |
Get last error message as a string |
String simpleRfcTrigger(String p_instance, String p_loginmode, String p_function, String p_parameter) |
Call a special RFC module that receives the value of "p_parameter"
in the parameter "INPUT". If a parameter "RESULT" is found, a
result will be returned.
|
Method | Comment |
Functions for SAP connections |
boolean SAPConnectionCheck(String p_instance, String p_loginmode, boolean p_connect) |
Checks an existing connection to the SAP system "p_instance" in the
login mode "p_loginmode". If "p_connect = true" you are not connected
yet, a connection will be established.
|
boolean SAPConnectionSystemClose(String p_instance) |
Close a connection to the SAP system "p_instance" |
boolean SAPConnectionUserClose(String p_instance) |
Close a connection to the SAP system "p_instance" of the user |
boolean SAPConnectionSystemConnect(String p_instance) |
Create a connection to the SAP system "p_instance" |
boolean SAPConnectWithUserPassword(String p_instance, String p_user,String p_password) |
Create a user connection to the SAP system "p_instance" with username and password |
Functions for personalization functions |
void SAPUserLoginSetToken(String p_instance, String p_user, String p_token, String p_method) |
Set the login information via a token for an SAP system manually.
The token (e.g. SSO ticket) contains the parameter "p_token".
Depending on the token type, the parameter "p_method" also needs
to be set (e.g. "MYSAPSSO2" for SSO ticket)
|
void SAPUserLoginSetUserPassword(String p_instance, String p_user, String p_password) |
Set the login information username/password or a user from the current sessions manually |
boolean SAPUserLoginDelete(String p_instance) |
Reset the login information for a user (e.g. SSO ticket information, for user switch) |
String ssoPrepare(String p_instance, String p_loginmode, ServerBridgeRequest p_request, boolean p_mapurl) |
Integrating this function in Velocity enables you to use the SAP interface
of the utilizing page. SSO initializations are performed and SSO JavaScript
functions are made available, for example. The parameter "p_request"
expects the transfer of the Velocity $Request object. The mapping of
SAP URLS is controlled using the flag "p_mapurl"
|
public String ssoIncludeURL(String p_url, String p_width, String p_height, boolean p_mapurl) |
Using this function in Velocity integrates an SAP web interface as an iFrame.
The call requires the function "ssoPrepare" on the same page
to be able to use the necessary JavaScript functions
(e.g. set SAP ticket, initialize URL mapping).
The URL mapping is activated via the active flag "p_mapurl".
|
public String ssoIXLoginUserPasswordSession(Session p_session, String p_user, String p_password, String p_domain, String p_method) |
This function enables you to log in to the Intrexx portal via
an Intrexx page (anonymously). Once the login is successful, a
session ID will be returned.
|
public void ssoMapUrlDeleteCache() |
Deletes the cache of URL mappings (requires administrative changes) |
Method |
Comment |
function biasap_start_transaction_url(p_instance, p_loginmode, p_transaction, p_extra, p_skip, p_url) |
Starts the SAPGUI for the specified SAP data source as a transaction
in the given login mode (usually "user"). Additional parameters (e.g.
fields to be populated) are defined in "p_extra". The start screen
can be skipped with "p_skip = "true"". The flag "p_url" controls whether
the portal URL needs to be evaluated (e.g. different SAP router strings).
To do this, the page needs to have been initiated with "ssoPrepare"
in Velocity.
|
function biasap_start_transaction(p_instance, p_loginmode, p_transaction, p_extra, p_skip) |
Like the function "biasap_start_transaction_url" but without URL evaluation |
function biasap_start_report_url(p_instance, p_loginmode, p_report, p_variant, p_url) |
Starts a report in the specified SAP system with or without variants.
The flag "p_url" controls the adjusting of the path to the
SAP system via the portal URL. |
function biasap_start_report(p_instance, p_loginmode, p_report, p_variant) |
Like the function "biasap_start_report_url" but without URL evaluation |
function biasap_set_cookie( name, value, expires, path, domain, secure ) |
Set a cookie (e.g. for SSO) |
function biasap_get_cookie( name ) |
Get a cookie |
function biasap_delete_cookie( name, path, domain ) |
Delete a cookie |
function biasap_set_ticket(p_message, p_cancel_on_error) |
Set the SSO ticket for SAP web interfaces. If identifying a
valid SSO token is not possible and an error message is available
via "p_message", this error message will be displayed. The parameter
"p_cancel_on_error" controls whether a defective ticket should cancel
the processing of the script and also subsequent scripts (e.g. for buttons).
This means the SAP web interface will not be displayed of the ticket
is erroneous.
|
function biasap_call_sapurl(p_button, p_url) |
Calls from button an SAP web interface and can be used
in button events (e.g. onclick).
"p_button" contains a reference to the button.
The URL to the SAP site may already have been defined as an
external link destination. "p_url" would overwrite this destination.
Placeholders (e.g. "<sapserver>"),
which were triggered by a previous "ssoPrepare()"
can be used in the URL.
|
Method |
Comment |
boolean ociInit(Session p_session, ServerBridgeRequest p_request, String p_loginmethod) |
This method initializes the SAP OCI functions of the Connector for SAP Business Suite.
This method is intended for integration on a view page (Velocity).
The current session and the request are transferred. The third parameter
defines which authentication method should be used. A login to the portal
is performed with the transferred parameters and the received
parameters are checked for validity for SAP OCI.
The result is boolean. If the value is "true", then the login was
successful. If the value was "false", then either the login was
incorrect or the transferred parameters are not valid for SAP OCI.
|
boolean ociCheck() |
This function checks whether a valid SAP OCI session is active.
Use this function to, for example, adjust link destinations in the application
if the application is not used for SAP OCI scenarios.
|
String ociStatus() |
This function returns an HTML text that contains the current OCI information.
The function can be used to present technical OCI information quickly.
|
String ociGetInfo(String p_info) |
With this function, a specific value can be identified from the OCI data.
With "$!GSAP.ociGetInfo("vendor")" for example, the vendor number
can be read and used as a suggested value for edit fields.
Possible values for "p_info" are:
- sapuser
Technical name of the logged-in SAP user
- login
Login name for the portal
- domain
Login domain for the portal
- customer
Customer number of the purchaser at the vendor
- vendor
Supplier number at the vendor
- oci_version
OCI version
- opi_version
OPI version
|
String ociCheckout(String p_instance) |
This function is required for the last page where the basket
needs to be compiled and sent to the SAP system. Using this, specific
functions for the SAP OCI interface are provided automatically (
e.g. JavaScripts, initializations). A configured SAP data source
is expected as the parameter. In systems without a linked SAP
system, "sapoci" should be entered here.
|
Method |
Comment |
sapoci_set_returnurl(p_button) |
Sets the return address after sending.
A button is expected to be transferred.
|
sapoci_addItemMain(row, quantity, unit, articleid, description) |
Generates the most important transfer data for a basket item (of the line "row") |
sapoci_addItemField(row, name, value) |
Generates more data for a basket item. In "name", the
technical name of the OCI specification is expected (e.g. "VENDORMAT") |
sapoci_addLongText(row, value) |
Generates a longtext at the position |
sapoci_addFormField(name, value) |
Generates a another transfer field stating the technical name |
sapoci_send() |
Send the data packet to the caller. It is possible to intercept errors
with try...catch |
* is automatically intalled in the portal directory via the SAP Connector API method
"install(boolean p_check, boolean p_full_log)".
The following expert attributes are to some extent automatically set by selecting the
datahandler and can be adjusted later. Some of the parameters are optional
and cause specific behaviors.
Attribute |
Data type |
Level* |
Use |
bia-timezone |
String |
DS, DG |
Adjust the timezone for time stamp fields. SAP systems often run in the CET timezone,
Intrexx in UTC on the server. This causes displacements when
times are being displayed. However, it is better to define the
timezone in the configuration of the data source (attribute in the file
sap.cfg).
|
bia-loginuser |
String |
DG |
Login mode
for the SAP access (<system>|<user>|<mixed>)
|
bia-handler |
String |
DG |
Handler for the SAP access (e.g. "GENERIC_VIEW", "DEVELOPER_API")
|
bia-variant |
String |
DG |
Variant of the SAP handler (e.g. "DEFAULT"). Can be used for a divergent
identification of the SAP datahandler
|
bia-param1...bia-param5 |
String |
DG |
Option to transfer controlling parameters to the SAP handler. The
values are available in the CONTROL structure in the SAP datahandler.
|
bia-abapdebug |
String |
DG |
Option to activate the debugging for the pertaining external data group only.
"true" activates the debugging. SAP debugging is only possible if the portal
is on your own computer and SAPGUI is installed.
|
bia-forcefilter |
Boolean |
DG |
When accessing tables, you can define that data should only be identified
if a filter is not active with this parameter (active = "true").
This prevents hidden tables from being accessed in the SAP system
in conjunction with dynamic filters.
|
bia-trace |
Boolean |
DG |
Activates the trace for this data group. Extended messages for this will
be provided in the logfile in doing so.
|
bia-requiredbl |
Boolean |
DG |
Contains a specification of which version of the Business Logic is required
to avoid errors in advanced (use of new features).
|
bia-simplekey |
Boolean |
DG |
For SAP data groups with complex keys (e.g. VBAP), only a count from
1...n is used as the key for simplification reasons. A link to a details
page is not possible here. However, this option can simplify access to
cells within a free layout table.
|
bia-usecache |
Boolean |
DG |
If this option is acitvated, the data will be cached on the server.
If the data in the SAP system is changed, the old data will still be displayed
in the portal. The option is especially well-suited for customizing tables
that are used as references (performance). The server-side cache
can be reset by closing the connection to SAP.
|
bia-newrec_getdetail |
Boolean |
DG |
This option is only relevant in the datahandlers for the Developer API.
The SAP API method "Get_Detail" is not usually requested for new
datasets. However, this can be forced with this option to preallocate
values from SAP.
|
bia-newrec_delrecid |
Boolean |
DG |
This option is also only relevant within the Developer API. New datasets are
generally given the ID -1 by Intrexx. With this option, this default
key is deleted. In SAP it would then be requestable with "if iv_key eq space".
|
bia-nolangtab |
Boolean |
DG |
As an alternative to the corresponding bia-variant, this option activates
that the text table is not determined automatically in SAP.
This allows problem cases such as the table MARA to be displayed
in the portal with reasonable effort.
|
bia-htmloutput |
Boolean |
DG |
This option activates that specific data is transferred as HTML code instead
of normal text. This option is, for example, used in the datahandler
"Generic Report" to transfer an SAP report in the SAP-typical colors.
|
bia-singleline |
Boolean |
DG |
This option activates the transfer of longer texts as longtext
instead of multiple lines. This option is used in the datahandler
"Generic Report". The report is therefore not transferred in lines
and needs to be presented as a free layout table. A string field
contains the entire report with this option.
|
bia-numkeylen |
Integer |
DG, DF |
This option activates an automatic mapping of SAP-typical numberical keys.
Via the defined length, the logic of the Connector for SAP Business Suite knows
that this field needs to be completed with leading zeroes when transferrring
to SAP (alphanumerical keys are an exception). These fields are presented
without the leading zeroes in the portal. If this option is implemented
at the data group level, the key is automaticall treated as a numerical
SAP ID.
|
bia-timefield |
String |
DF |
This option tries to solve the problem that time stamps
usually are not used in SAP but separate fields for date and time instead.
Whereas Intrexx uses time stamps and additionally can present these as
"date only" or "time only". Using this option, the data field
from the SAP system is informed as to which SAP field contains the
corresponding time. The SAP date field becomes the time stamp in doing so
and can be used as such (e.g. in calendar controls). When presenting times,
the time is often displaced (e.g. 2h). This is because the SAP server and
the portal run in different timezones (CET vs UTC). That is way, the SAP
timezone can be configured in the data source or via bia-timezone.
This function should also work the other way round (writing time stamps to
two separate SAP fields). The field for the SAP date is key here as well.
The corresponding time field may need to be available on the pages (hidden),
however.
|
bia-mapcodefield |
Boolean |
DF |
Encodings are often used in SAP systems (typical characters 1...6 fields; e.g. VBAK-VBTYP).
These are transferred as text - meaning as SAP code - and cannot be used
by the user therefore. There is of course the option to connect the
corresponding customizing table in a language-dependent manner as a reference.
However, this can be very complex in some circumstances.
A simple option is available: the datahandler "Generic View" tries
to identify suitable texts from the configured search help or other SAP mechanisms.
This approach cannot be used everywhere (e.g. in more complex search
helps with multiple keys).
|
bia-mapurl |
Boolean |
DF |
With this option, URLS can be mapped whilst taking the portal URL
into account. This is required for hiding the real URL on the SAP
systems (calling archived documents), for example.
An internal access can be mapped from "sapsystem.internesicht.net"
to "archiv.externesicht.com" as soon as the user uses the
exernal access to the Intrexx portal.
|
bia-maptouppercase |
Boolean |
DF |
Makes the value upper-case. Useful in SAP matchcode fields. |
bia-maptolowercase |
Boolean |
DF |
Makes the value lower-case. |
The following table contains an overview of the most important transactions
in conjunction with the Intrexx portal. These transactions are not
available to all users in some cases (insufficient permissions).
Category |
Transaction code |
Use |
Tables/Views |
SE16 |
Data browser: Display table content |
|
SE11 |
Dictionary: Display technical information about dictionary objects (e.g. Tables, Views) |
SAP configuration |
SPRO |
Implementation guideline: Central SAP customizing |
|
SM30 |
Table maintenance of configuration tables |
|
SM59 |
Maintain RFC destinations: Configure access to external systems |
|
SICF |
Internet connectivity: Released services |
Debugging |
ST22 |
Dump analysis: Debugging after cancellations |
|
SM21 |
System log: Debugging for system problems |
|
SLG1 |
Application log: Protocols for many applications |
|
SMQ1, SMQ2, SM58 |
Data exchange with external systems with qRFC and tRFC |
Users and permissions |
SU01 | User maintenance |
|
SU21 |
Maintenance of permission objects: Generate with the function "SAP_ALL" among others |
|
PFCG |
Roles and permissions |
|
ST01 |
Permissions trace |
|
SM04 |
Logged-in users |
|
SMGW |
Logged-in remote systems |
Development |
SE80 |
ABAP workbench: Central development transaction |
|
SE38, SA38 |
ABAP reports: Development and initiation |
|
SE37 |
Function modules/BAPI: Develop, test |
|
BAPI |
BAPI browser |
|
SWO1 |
SAP BusinessObjects |