Knowledgebase
Knowledgebase : Appeon > DataBase Connection
How does the DB connection work with Appeon?
The DB connection is through a connection pool from the application
server connecting to the DB. The transaction object is mapped to a
connection pool.
The driver used depends on whether the customer has installed the
.NET or Java version of Appeon. In Java it is JDBC, and in .NET it is
native.
You can predefine all the database connections in the Appeon AEM
connection cache first and then dynamically map the transactions to a
different connection cache. For details, refer to the pdf attached.
Also, if necessary, you can go to AEM console | Connection Cache and
turn on the dynamic database connection. Once the settings are on, the
transaction's LogPass and LogID will be directly supported and it will
allow the end user to change their own username and password.
How does the pooling interacts with the global variables? Does it
keep it or reject it on each user logging?
On the web, each user will create their own session, so all
variables, parameters only exist and affect his own session.
In ADT (Appeon Developer Toolkit) We only support ODBC driver on ADT
(Appeon Developer Toolkit). It is used to deploy some information to
Appeon Server.
However, in production environment Appeon Server uses JDBC driver to
connect to the database, the same way that PB does.
You can use the following ways to switch the driver of the ASA
database to connect to ASA 11 or 12.
STEP1. Backup and delete the files below in the
C:\inetpub\wwwroot\appeon\AEM\bin.
iAnywhere.Data.SQLAnywhere.dll
Server.dll
code.key
STEP2. Saveas those files
iAnywhere.Data.SQLAnywhere_12.dll
Server_asa12.dll
code_asa12.key
into the files below.
iAnywhere.Data.SQLAnywhere.dll
Server.dll
code.key
If this solution doesn't work, please save as the below files and try
a...
When the application is running from PowerBuilder in c/s, it generates
a connection for every client to the database, but in Appeon it uses
the connection pool, meaning that it reuses the connections that it
creates.
If we use temporary tables which are supposed to be created by each
session of Oracle, is there a possibility that some records a user
makes in one temporary table can interfere in another user's process
when he is using the same temporary table ?
Appeon for .NET version:
Appeon can be ...
You can set dynamic database connection of connection cache property
in the AEM. (setting: AEM cpnsole>server properties> connection
cache>add connection cache)
Click ''ON'' for ''Dynamic Database Connection''.
Then use the transaction.logid and logpass to login the database.
Appeon Mobile supports both Online and Offline Modes. The offline
access feature will be available in Appeon Mobile 1.5 . Offline will
require you to purchase Mobilink from Sybase.
If offline capability is required, then some data must be temporarily
cached on the device. Appeon Mobile gives the developer full control
and transparency over the data caching and synchronization.
We provide APIs allowing developers to decide what data to cache, what
sync strategy to use, etc.
To create a connection cache to connect to your DB, you must go in
AEM and map it to the transaction object in AEM > Application
Properties > Transaction Objects > [your application].
For more information please refer to Appeon Help - Appeon Server
Configuration Guide for .NET/J2EE - AEM User Guide - Server - resource
- Connection cache
I attempt to connect oracle from Appeon gives 'attempt to load Oracle
client library thre badimageformatexcption, this problem will occur
when running in 64 bit mode with 32 bit oracle component installed"
I have enabled 32 bit application in IIS appeon application pool, yet
the problem persist
The reason why this issue occurs is that the Oracle client doesn't
match with the Appeon server you installed, which means if your Appeon
server installed is 32 bit (64 bit) then you need to use 32 bit (64
bit...
Appeon 2013 support ASE native drivers.
Before migrating to a greater version of your DB please upgrade your
version on the DB test server and run some test with Appeon to try to
connect to the DB. If there is no problem you can upgrade the product
database server.
For the Appeon Developer, you don't need to change the configuration
of the DB setting. You don't need to re-deploy it if the configuration
is changed while re-deploying the application. However you need to
change the configuration if the DB type is changed.
In the AEM you need ...
We recommend have the Appeon Server and the DB server in the same LAN
to avoid performance issues
Regarding the Data Source not being displayed issue, please refer to
the solution in the Appeon Help> Appeon Server Configuration Guide for
J2EE> Database Connection Setup> Setting up Appeon Server data
sources\connection caches> Setting up data source for WebSphere>
Required configurations when global security is on.
We have deployed an application to AEM server. Under Transaction
Objects in AEM, I see the SQLCA transaction object, but I cannot test
it or update it because our Connection Cache dropdown list is empty.
If I try to add a new transaction object, or update/test an existing
one, I get an error message of 'Please select a connection cache'. Why
are the Data Sources that are defined in the application server
console not being displayed in the Connection Cache dropdown list?
Please resolve it by referring ...
We have several transaction on current PB application and use INI
file to determine which database is selected from user.
Is "Connection Cache" mandatory to connect database ?
If it is, How can we change database server dynamically ? ( We have
different physical Database Server )
Is it possible to change all transaction parameters Dynamically by
PowerBuilder Script (using INI) with "Connection Cache" ?
Can we use only the INI file without "Connection Cache" like
PowerBuilder ?
You cannot use INI file ...
Below are the parameters of the transaction object:
SQLCA.DBMS = "OLE DB" //This property corresponds to the Connection
Type of Connection Cache.
SQLCA.LogPass = "appeon" // This property corresponds to the password
of Connection Cache. And if you set dynamic database connection of
connection cache property is on in the Appeon for .NET version, Appeon
can support Logid and logpass of transaction property. For example,
sqlca.logid = sle_1.text; sqlca.logpass=sle_2.text.
SQLCA.LogId = "sa" // This proper...
Appeon supporting multi-threaded query means that several clients can
concurrently access to database using different database connections
from the connection pool.
This mean the same connection handle will not be used at the same
time.
In other words, the thread will get one of the idle connection from
the connection pool when accessing to the database, this connection
being used cannot be used by other client unless it is freed up by the
current client.
The ODBC driver doesn't support to set the Minimum Connection Pool
Size and Maximum Connection Pool Size, but other drivers like 'SQL
Anywhere Native Driver' can support to set the Minimum Connection Pool
Size and Maximum Connection Pool Size.
Appeon product adopts the way "connection pool + short connection" to
handle the database connection, for the other drivers like 'SQL
Anywhere Native Driver' the Appeon server would create N (Minimum
Connection Pool Size) connections in the connection cache pool...
SQLite is only supported as offline database. It cannot be configured
in data source. You need to configure it in
Appeon Developer > Configure > [your application profile] > Offline
Settings > Local DB Settings. Please refer to:
http://www.appeon.com/support/documents/appeon_online_help/2.0/appeon_mobile_offline_tutorials/ch03s03.html
[http://www.appeon.com/support/documents/appeon_online_help/2.0/appeon_mobile_offline_tutorials/ch03s03.html]
How can I find Oracle's session ID regarding Appeon session ID and/or
Appeon transaction ID ?
Please use Dynamic Database Connection to make sure each client uses a
different DB user to connect to the database. And then you can
determine by using the DB user.
Here is the explanation regarding Dynamic Database Connection:
Select whether to enable dynamic database connection.
When it is on, the LogID and LogPass of the Transaction object will be
used to connect to the database; when it is off, the us...
Help Desk by Novalys