PowerBuilder 8 (5) PowerBuilder Client/Server Jaguar Server Jaguar Server Connection Cache Thin Client Internet Connection Pooling EAServer Connection Cache Connection Cache Connection Cache Connection Cache Pooling Pooling Session Pooling Instance Pooling Connection Pooling A Sybase Sybase A A 6 A Sybase B B 6 12 A B A
B Sybase Connection Pooling Connection Cache EAServer Connection Pooling Pooling Connection Cache Connection Cache Jaguar Server client server Connection Cache Jaguar Server Jaguar Server Connection Cache Jaguar Server Connection Cache Connection Cache connection Connection Cache Connection Cache Connection Cache Connection Cache Connection Cache Jaguar Server Jaguar Manager Connection Cache Connection Connection Cache
1. Jaguar Manager Jaguar Server Jaguar Manager Jaguar Server Installed Connection Caches 2. 1 Install Connection Cache Create and Install a New Connection Cache Connection Cache 1 Jaguar Manager Connection Cache 3. Connection Cache OK Connection Cache General Driver Cache Connection Cache Connection Cache Connection Cache Connection Cache Connection Cache 1. General 2 General Connection Cache
Connection Cache 2 Connection Cache General (1) Description Connection Cache 255 (2) Server Name Connection Cache (3) User Name & Password Ping Refresh (1) Ping Connection Cache Ping Connection Cache (2) Refresh Connection Cache Connection Cache Refresh
2. Driver 3 Driver Connection Cache ODBC JDBC Client Library OCI 3 Connection Cache Driver (1) ODBC ODBC (2) Client Library Sybase PowerBuilder Native Driver ODBC Driver Interface Sybase client Sybase client Open Client (3) JDBC JDBC Java Java
(4) OCI Oracle Client Librar Connection Cache Oracle Oracle Connection Cache OCI Oracle 7.x Oracle 8.x Driver 1 (Connection Library) Client Library 11.0 ODBC JDBC OCI 7.x OCI 8.x 3.Cache libjct.dll (NT) libjct_r.so (Solaris) odbc32.dll (NT) libodbc.so (Solaris) (DLL or Class Name) ODBC-JDBC sun.jdbc.odbc.jdbcodbcdriver ociw32.dll oci.dll 1 Connection Cache 4 Cache Connection Cache Cache
4 Connection Cache Cache (1) Enable Cache-by-name Connection Cache (2) Enable Connection Sanity Check Connection Cache Connection Cache Jaguar Server debug (3) Number of Connections in Cache Connection Pool (4) Service Name Sybase jconnect Sybase DirectConnect Gateway Service Name Sybase DirectConnect Gateway Connection Cache Connection Cache 5 Connection Cache Properties Connection Cache
5 Connection Cache Connection Cache Jaguar Transaction PowerBuilder Connection Cache ODBC Connection Cache ODBC PowerBuidler 8 Connection Cache 1. PowerBuilder 8 New PB Object EAServer Component Wizard PowerBuilder n_odbc Power Script Target Target EAServer Component Power Script Target Jaguar 2. 2 PowerBuilder n_odbc
Application Name Interface Option PowerBuilder Object Name db.pbl Implement New Interface n_ odbc EAServer Component Name n_ odbc Choose EAServer Profile Specify Package Name Component Type Instance Pooling Option Component Timeout Transaction Support Option Auto Demarcation/Deactivation Interface Options Other Options Project Object Dynamic Library Options localhost Jaguar Server Package ( Jaguar Server) Package Standard Component Supported Requires Transaction Include unreferenced objects in Consolidated PBD 2 n_ odbc 3. n_ odbc n_ odbc Transaction Instance Variable Instance Variable Transaction Instance Variable PowerBuilder Transaction SQLCA Errorlogging Jaguar Server Error log file 1. Protected: 2. Transaction itr_trans 3. ErrorLogging erl_log 4. n_ odbc
Activate event 1. //Connect to EAS Demo DB V4 2. integer li_return 3. 4. IF NOT IsValid (itr_trans) THEN 5. itr_trans=create transaction 6. END IF 7. 8. itr_trans.dbms= ODBC 9. itr_trans.autocommit = False 10. itr_trans.dbparm= UseContextObject= Yes,CacheName= EASDemo DB 11. CONNECT USING itr_trans; 12. 13. IF itr_trans.sqlcode<>0 THEN 14. erl_log.getcontextservice("errorlogging", erl_log) 15. erl_log.log ( ClassName( ) + cannot get a + database & 16. connection.~r~n + & 17. SQLDBCode + String(itr_trans.SQLDBCode) + ~r~n + & 18. SQLErrText + itr_trans.sqlerrtext + ~r~n ) 19. ELSE 20. li_return=1 21. END IF 22. 23. Return li_return IF Transaction Instance Variable Transaction Transaction DBMS ODBC Transaction DBParm DBParm UseContextObject Yes n_odbc
TransactionServer Connection Cache CacheName n_odbc Connection Cache Transaction CONNECT USING itr_trans; 3. Transaction itr_trans n_odbc Deactivate event itr_trans instance 1. DISCONNECT USING itr_trans; 2. DESTROY itr_trans Open Client Connection Cache Sybase ODBC Connection Cache PowerBuilder 8 EAServer Component Wizard 6-5 Jaguar n_sybase n_sybase Transaction ErrorLogging 1. Protected: 2. Transaction itr_trans 3. ErrorLogging erl_log Activate event Connection Cache SYJ PSD2 Sybase ASE 1. // Connect to PSD2 2. integer li_return 3. 4. itr_trans.dbms = "SYJ" 5. itr_trans.autocommit = False 6. itr_trans.dbparm = "UseContextObject= Yes,CacheName= PSD2_Native " 7. CONNECT USING itr_trans;
8. 9. IF itr_trans.sqlcode<>0 THEN 10. erl_log.getcontextservice("errorlogging", erl_log) 11. erl_log.log ( ClassName( ) + cannot get a + database & 12. connection.~r~n + & 13. SQLDBCode + String(itr_trans.SQLDBCode) + ~r~n + & 14. SQLErrText + itr_trans.sqlerrtext + ~r~n ) 15. ELSE 16. li_return=1 17. END IF 18. 19. Return li_return ODBC DBMS SYJ Native Driver Sybase ASE Connection Cache PSD2_Native Jaguar Server Connection Pool ODBC Jaguar Server Errorlog file PowerBuilder Native Driver Sybase SYJ SYC Sybase Native Driver SYC Jaguar Server PowerBuilder SYC OCI Connection Cache Oracle Sybase Jaguar Server Oracle Native Driver OCI Jaguar Oracle OCI Connection Cache PowerBuilder Oracle PowerBuilder 8 n_oracle OCI_Native Oracle n_oracle Transaction Errorlogging ODBC Sybase Native Driver
Activate event OCI O8 Oracle Connection Cache OCI_Native Oracle 8.x 1. // Connect to O8 2. integer li_return 3. 4. itr_trans.dbms = "O84" 5. itr_trans.autocommit = False 6. itr_trans.dbparm = " UseContextObject= Yes,CacheName= O8_Native " 7. CONNECT USING itr_trans; 8. 9. IF itr_trans.sqlcode<>0 THEN 10. erl_log.getcontextservice("errorlogging", erl_log) 11. erl_log.log ( ClassName( ) + cannot get a + database & 12. connection.~r~n + & 13. SQLDBCode + String(itr_trans.SQLDBCode) + ~r~n + & 14. SQLErrText + itr_trans.sqlerrtext + ~r~n ) 15. ELSE 16. li_return=1 17. END IF 18. 19. Return li_return Sybase Native Driver Transaction Oracle Native Driver DBMS Oracle Connection Cache Jaguar Server Connection Pool Oracle JDBC Connection Cache Java JDBC PowerBuilder
JDBC JDBC Connection Cache PowerBuilder JDB Sybase JDBC jconnect 3. Connection Cache EAS Demo DB V4 ASA JDBC Connection Cache Server Name General jdbc:sybase:tds:localhost:2638 User Name General Dba Password General sql DLL or Class Name Driver com.sybase.jdbc2.jdbc.sybdriver JDBC Cache Properties Cache Enable cache-by-name access 3 JDBC Connection Cache PowerBuilder n_jdbc JDBC PowerBuidler ODBC Native Driver DBParm Transaction Errorlogging Activate event JDBC n_jdbc Activate event 1. integer li_return 2. itr_trans.dbms = "JDB" 3. itr_trans.autocommit = False 4. itr_trans.dbparm ="UseContextObject='Yes',CacheName='JDB',JavaVM='Sun1.2'" 5. CONNECT USING itr_trans; 6. 7. IF itr_trans.sqlcode<>0 THEN 8. erl_log.getcontextservice("errorlogging", erl_log) 9. erl_log.log ( ClassName( ) + cannot get a + database & 10. connection.~r~n + & 11. SQLDBCode + String(itr_trans.SQLDBCode) + ~r~n + & 12. SQLErrText + itr_trans.sqlerrtext + ~r~n ) 13. ELSE
14. li_return=1 15. END IF 16. 17. Return li_return JDBC PowerBuilder DBParm DBParm UseContextObject CacheName Java Virtual Machine JDK1.2 Java Virtual Machine 4 DBParm JavaVM='Sun1.2' Connection Cache Connection Cache Connection Cache Connection Cache