Feed aggregator

APEX Connect 2017 – Day 3

Yann Neuhaus - Fri, 2017-05-12 02:04

For the last conference day, after the Keynote about “JavaScript: The next Language YOU should learn” by Dan McGhan , I decided to attend presentations on following topics:
– Upgrade your APEX app with zero downtime by using EBR
– Understand and make use of CSS(3)
– Best Practices for APEX Administrators
– APEX Version Control and Team Working
– Database Cloud Services with APEX
– Date, Time, Calendar and Co with APEX
I also got the chance to have a 1:1 talk with Marc Sewtz to expose some wishes about APEX and talk about some customer issue.

JavaScript programming language
JavaScript allows asynchronous programming: main thread can make calls to asynchronous API which return there result via an event/callback queue.
When the web browser parses the page to be rendered the DOM tree is built. That build process is stopped whenever JavaScript is found, until the JavaScript execution is completed. That means the JavaScript can only address the the element that where already put into the DOM tree, not the full page. That explains why people would want to put the JavaScripts at the bottom of the page definition.
Fortunately, there is the JQuery DOM manipulation library which allows developer to abstract from that constraint.
What you also need to keep about JavaScript is:
– functions are the first class
– functions provide scope and closure
In APEX you can make use of JavaScript for AJAX calls by using apex.server.process.
JavaScript is definitely a language that APEX developer should master beside PL/SQL to embrace customer requirements.

Upgrade your APEX app with zero downtime by using EBR:
EBR (Edition Based Redefinition) is a tool in the Oracle database to support online application upgrades.
You can find details about EBR in following Oracle documentation: Technet Edition Based Redefinition
EBR allows you to have your DB looking like 2 DBs, each identified in the normal way by a service (Just like 2 CDBs in the same CDB).
Hot rollover will be enabled by using a traffic director (load balancer).
This introduces end user session to application version affinity.
In APEX you need to create a copy of your application with the changes for the new version. The application version switch is managed with APEX_UTIL.SET_EDITION setting the value of the current application in the APPLICATION_PREFERENCES table.

Understand and make use of CSS(3):
CSS defines the layout design. The basic structure is: selector { attribute : value }
There are numerous selectors which can be combined. Also pseudo classes and elements can be used as reference.
You need to be careful about the cascading order, some strong rules are set to define them. The “!important” tag which overrules should be used as less as possible.
The definition of objects to be rendered is based on the Box Model (Margin – Border – Padding – Content).
There are 2 levels for the definitions:
– Block
– Inline (mainly for the text)
Positions also have multiple definition references:
– static
– relative
– fixed
– absolute
Media queries will allow the definitions for responsive design.
You can verify if some elements your want to use are supported by your web browser by checking the following web site:
http://www.caniuse.com/
I can also recommend you to visit W3C site: https://www.w3schools.com/css/

Best Practices for APEX Administrators:
Following best practice rules were presented based on presenter’s experience:
– Create a dedicated folder to store the APEX installation package (e.g. under the Oracle “product” folder)
– Create a dedicated tablespace for APEX
– Put every worspace on it’s own schema with dedicated tablespace
– Build your own workspace delivery system
– Restrict access workspace administration
– Use a version dedicated folder instead of /i/
– Rename ords.war based on application using it
– Setup automated export and backup of the workspaces and applications
– When patching also keep a copy of the full install package
– Manage downtimes during update operations (only required while sql is running)
– Set ACLs to give only required acces

APEX Version Control and Team Working:
There are different ways to manage team work and version control for APEX development, but none are identical to what is done for other programming languages due to the way APEX works.
What is common in the exposed ways is that the development cycle is about 3 weeks and there is always a Development, an integration, a test and a production environment. Code related to the database (DML, packages, …) is stored and managed with a version control system like GitHub and APEX application exported and pushed to the version control system on a daily basis.
Some people use CI (Continuous Integration) engine to generate a VM with the full test environment from the committed development work.
To manage the deployment of selective features developed you need to use conditional build.
There are different way to export/import APEX applications:
– ApexExport java class
– “apex export” and “apximp” in SQLcl
– “Application Archive” packaged application
– manual export/import
Oracle provides some white paper describing best practices to manage APEX development process:
http://www.oracle.com/technetwork/developer-tools/apex/learnmore/apex-life-cycle-management-wp-3030229.pdf

Database Cloud Services with APEX:
The requirements were about the setup of a private cloud to host about 200TB of data over 300000 schemas.
In order to be able to properly manage the infrastructure following tolls have been created in APEX:
– DB service portal (request management, password reset, reporting, cost tracking, approvals,…)
– DB metadata manager (reporting, interfacing, measurement of space, cpu, aso)
– DB service automation (order management, log management, messaging, maintenance management)
This allowed to raise customer satisfaction, enhance DBA efficiency and metadata maintenance.

Date, Time, Calendar and Co with APEX:
Dates can be represented in different ways in the Oracle DB:
– DATE
– TIMESTAMP
– TIMESTAMP WITH TIME ZONE
– TIMESTAMP WITH LOCAL TIME ZONE
If you dump those data types you will see the details of there implementation and how the Oracle DB stores them.
If you subtract a number to a DATE it will return a decimal number and if you add a number to a DATE you get a DATE.
There are function to manipulate dates like ADD_MONTHS (for DATE) and INTERVAL (for TIMESTAMP).
The EXTRACT function allows to get specific elements of a timestamp.
APEX items are always of VARCHAR2 type, so any date manipulation with implicitly use TO_CHAR and TO_DATE conversion.
The date format is to be set in the APEX application globalization parameters. Most of those parameters map to the DB NLS values by default.
In APEX 5.1 there were some additions to the Calendar like:
– ability to define Dynamic Actions
– JavaScript initialization on parameters
– …
I would recommend to play with the Calendar Sample application to see all new capabilities.

Enjoy APEX!

 

Cet article APEX Connect 2017 – Day 3 est apparu en premier sur Blog dbi services.

A select from a view is much much slower than the same SELECT directly from a view creation query

Tom Kyte - Thu, 2017-05-11 17:26
<code>Hi, Tom, A developer complains the gradually slowness in his query from a view. But query was run much faster from the same logic without using the view. Basically using the same SELECT logic directly from the view creation script, it is muc...
Categories: DBA Blogs

database opening error of unnamed datafile

Tom Kyte - Thu, 2017-05-11 17:26
Dear Sir, I recover my database from my backup files manually by simple copy paste command in redhat linux. Now my database is opening till mount stage only. Whenever i try to come in open stage it shows an error of to use resetlogs or noreset...
Categories: DBA Blogs

Reference Partitioning - Child Partition_name issue.

Tom Kyte - Thu, 2017-05-11 17:26
Hi, This is the scenario: Consider Parent_table that is list partitioned based on dept_no - with partition_name specified as 'P_Dept_no'. Parent_table -> Child_table_1 (reference_partitioned based on Parent_Table) -> Child_table_2 (reference_par...
Categories: DBA Blogs

UTL_HTTP POST with filename

Tom Kyte - Thu, 2017-05-11 17:26
Tom, I am trying to POST the webservice all using UTL_HTTP function with the file from pl/sql procedures. The same processed working from Curl scripts. PL/SQL : <code> DECLARE req utl_http.req; resp utl_http.resp; l_value VARCHAR2(10...
Categories: DBA Blogs

Extract Value From XML

Tom Kyte - Thu, 2017-05-11 17:26
Hi Team, I need to create a stored procedure which will take below mentioned XML as an input and display the ITEMNO using DBMS_OUTPUT_PUT_LINE statement. <code> INPUT XML: <column name="EVENTINFO" type="xml-fragment"> <ORDER type="xm...
Categories: DBA Blogs

ORA-12535: TNS: operation timed ORA-609 opiodr aborting process

Tom Kyte - Thu, 2017-05-11 17:26
ORA-12535: TNS: operation timed along with this ORA-609 opiodr aborting process as the secondary error.While this error is occurring tnsping takes longer than expected and SQLPLUS / also is taking too much time ,ping using the IP is working fine ...
Categories: DBA Blogs

Exchange Partition and data loss

Tom Kyte - Thu, 2017-05-11 17:26
Assumption: 1) INSERTS are continuously applied on table A Requirement: Need to exchange partition with another table but do not want to loose any data ( I am fine with the "ORA-00054: resource busy and acquire with NOWAIT specified or timeout ...
Categories: DBA Blogs

ORA-12154 Error Connecting to A Database Using ODBC (ONLY) (Using SQLPlus It connects Just Fine)

Tom Kyte - Thu, 2017-05-11 17:26
I am trying to setup an ODBC connection on Linux. I have create the following odbcinst.ini file. <code> [OracleODBC-12.1] Description = Oracle ODBC driver for Oracle Driver = /u01/app/oracle/product/12.2.0/client_1/lib/libsqora.so.12.1 FileUs...
Categories: DBA Blogs

Calling PL/SQL packaged stored procedure from Java with TABLE OF RECORD

Tom Kyte - Thu, 2017-05-11 17:26
Dear Oracle Masters, I am trying to call an Oracle packaged stored procedure that has a formal input parameter of TABLE OF RECORD type. There are plenty of examples of calling a SP with either a RECORD or TABLE type but not both. I also want to ta...
Categories: DBA Blogs

Oracle Utilities Work And Asset Management V2.2.0.0.0 Released

Anthony Shorten - Thu, 2017-05-11 16:14

Oracle Utilities Work And Asset Management (WAM) V2.2.0.0.0 has been released and is available from Oracle Delivery Cloud. This version is also based upon Oracle Utilities Application Framework V4.3.0.4.0 (also known as 4.3 SP4).

Included in this release are usability enhancements, an update to the Esri GIS Integration, Preventive Maintenance Event processing, and Construction Work Management.  

With these new additions we are now able to support the full asset lifecycle, from design and construction to retirement, opening up the gas and electric distribution market.  Construction Work Management adds the final piece to the Asset Lifecycle process.

  • Asset Performance Management - The Asset Performance Management features have been enhanced to offer new ways to calculate Asset Health Index scores and to set up Preventive Maintenance triggers based on the Asset Health Index.   We also offer integration points for third party predictive maintenance products to affect the Asset Health Index.
  • Compatible Units - Compatible Units are job standards that can be used to provide consistency and assistance when creating work designs.  Compatible Units can be created for either internal resources or for contractors.
  • Construction Work Design - Work Designs are critical to utility distribution companies.  The work design process leverages the compatible units to quickly scope and estimate the costs of work.  You are able to create multiple versions to designs to compare various construction options such as overhead or underground work.  You can also create design versions to compare contractor work.  When you pick a design to execute, you are able to easily transition the work design into a work package without having to create new work orders from scratch.
  • Construction Work Orders - Construction work orders differ from regular work orders because we are creating new assets rather than maintaining existing assets.  A construction work order also manages Construction Work in Progress (CWIP) accounting to ensure the work in progress is accounted for correctly.  The closeout process allows you to create new WAM assets to start their lifecycle in WAM and also creates the fixed asset property unit data to feed the corporate accounting system.
  • "As Built" Reconciliation - One of the big challenges for organizations is the reconciliation of the work design to the actual construction.  The actual construction work often diverges from the estimate due to the wide variety of variables that occur on a project.  WAM v2.2 offers a full reconciliation process to allow you to revise the values of assets, move costs between construction and maintenance accounts, review and adjust property unit valuation, and provides support for mass asset valuations.
  • PM Event Processing -  You can now package up a group of work templates into a PM Event and trigger that event as a group rather than one work template at a time.  This can be used for outage work or any repetitive work that requires multiple work orders to be created.

  • Esri GIS Integration - The user experience of the Esri GIS Integration was completely revised to provide a more intuitive experience.  Esri mapviewer components are directly integrated into the Work and Asset Management product.  Customers can publish any map component as an Esri Web Map and enroll that Web Map into WAM.  This includes feature layer maps as well as any thematic maps or metrics that customers choose to publish.

Esri Integration

 

SQL Server 2017: Python server

Yann Neuhaus - Thu, 2017-05-11 08:17

After my article SQL Server 2017: first steps with Python Service, I write this article about my first test with the Python Server feature in SQL Server 2017.

The installation is very simple, in the features Selection window, you have in the Shared Features, you have a Machine Learning Server (Standalone) with R and Python.
I check Python to install the Python Server and here we go.
Python_srv01
Like for the Python services, you need to accept “Consent to install Python”
Python_srv02
Don’t forget to give access to Internet to your server. If not, the installation failed and you have this message:
Python_srv03
With Internet, the installation is successful.
Python_srv06
At the end of the installation, I open the summary file to analyze what is installed.
I find feature parameters for the script installation for the Python Server:

  • SQL_SHARED_AA for the Machine Learning Server (Standalone) – AA is for ADVANCED ANALYTICS
  • SQL_SHARED_MPY for Python

Python_srv07
At this point, I have a Python Server but, now, what is a Python Server?
On my server, I open the search and tape Python as keyword…
Python_srv08
No result found… Ok. Old method, go to the folder and search manually.
I go directly in the folder “C:\Program Files\Microsoft SQL Server\140” and I see a folder “PYTHON_SERVER”:
Python_srv09
I open the folder “PYTHON_SERVER” and see three executables:

  • Uninstall-Anaconda: to uninstall the python server
  • Python: Command Console to execute Python code
  • Pythonw: Command Console to execute Python code without Window

Python_srv10
To Test the Python server, I run the executable python (to have a cmd window) and use the same example as my article for the Python service.
The Python query is:

Import pip
Installed_packages = pip.get_installed_distributions()
Installed_packages_list = sorted([“%s %s” % (i.key, i.version) for I in Installed_packages])
Print(Installed_packages_list)
Len(Installed_packages_list)

Python_srv11
As you can see in the picture, the same 125 packages as for the Python Service are installed on the Python Server.
:idea: Let yourself be tempted

 

Cet article SQL Server 2017: Python server est apparu en premier sur Blog dbi services.

Emerson Adopts Oracle HCM Cloud Suite to Unify its Global Workforce

Oracle Press Releases - Thu, 2017-05-11 07:00
Press Release
Emerson Adopts Oracle HCM Cloud Suite to Unify its Global Workforce Global technology and engineering solutions company implements Oracle HCM Cloud to achieve a holistic view of its 80,000 employees

Redwood Shores, Calif.—May 11, 2017

Oracle today announced that Emerson, a global technology and engineering solutions company, has adopted Oracle Human Capital Management (HCM) Cloud to gain an in-depth view into its global employee base. The full Oracle HCM Cloud suite implementation for Emerson includes: Core HR, Payroll, Performance Management, Goal Management, Career Development, Talent Review & Succession Management and Workforce Compensation. The data analytics delivered by Oracle HCM Cloud will enable Emerson to support the complexities of a varied and shifting workforce as it transforms its business model from traditional manufacturing to a value-added, solutions provider.

To better assess and manage changes across its global workforce, Emerson needed a single global human resources solution that could align common global HR processes, support local compliance needs across 100 countries and engage its workforce. By seamlessly integrating Oracle HCM Cloud with its existing deployments of Oracle E-Business Suite and Oracle Enterprise Resource Planning (ERP) Cloud, Emerson can leverage powerful data analytics to identify and address HR trends and issues, such as recruitment and turnover.

“At Emerson, we pride ourselves in delivering the latest technologies to improve the processes and performance of our industrial, commercial and residential customers. In that same vein, we also aim to empower our employees by giving them easy access to the latest innovations,” said Jim Rhodes, vice president of human resources information systems at Emerson. “With Oracle HCM Cloud, we will be able to proactively support employees worldwide with truly integrated solutions for everything from performance and payroll to recruiting and employee records.”

Emerson’s previous on-premises solution was unable to provide a complete view of its employee base and required technical specialists to manage and maintain the system. With Oracle HCM Cloud, Emerson expects to drive efficiencies across its global business by taking advantage of in-house digital deployment services to provide unified, timely and accurate reports. Oracle HCM Cloud also delivers high-level data security features relevant for the management of sensitive employee information.

“When organizations are able to quickly and easily gain actionable insights into their global employee base they can improve both the employee and customer experience,” said Gretchen Alarcon, group vice president, HCM Product Strategy at Oracle. “Oracle HCM Cloud will enable Emerson to uncover valuable business insights that will ultimately help its transition to a value-added manufacturer.”

Emerson plans on implementing the Oracle HCM Cloud in a three-phase approach and will work with an Oracle implementation partner and Oracle Customer Support for trusted, secure and comprehensive support throughout the implementation process.

Additional Information

To learn more about Oracle HCM Cloud, follow @OracleHCM on Twitter or Facebook, or read the Modern HR in the Cloud blog.

 
Contact Info
Jennifer Yamamoto
Oracle
+1.916.761.9555
jennifer.yamamoto@oracle.com
About Emerson

Emerson (NYSE: EMR), headquartered in St. Louis, Missouri (USA), is a global technology and engineering company providing innovative solutions for customers in industrial, commercial, and residential markets. Our Emerson Automation Solutions business helps process, hybrid, and discrete manufacturers maximize production, protect personnel and the environment while optimizing their energy and operating costs. Our Emerson Commercial and Residential Solutions business helps ensure human comfort and health, protect food quality and safety, advance energy efficiency, and create sustainable infrastructure. For more information visit Emerson.com.

About Oracle

The Oracle Cloud delivers hundreds of SaaS applications and enterprise-class PaaS and IaaS services to customers in more than 195 countries while processing 55 billion transactions a day. For more information about Oracle (NYSE:ORCL), please visit us at http://cloud.oracle.com.

Trademarks

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Safe Harbor

The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle Corporation.

Talk to a Press Contact

Jennifer Yamamoto

  • +1.916.761.9555

Emerson Adopts Oracle HCM Cloud Suite to Unify its Global Workforce

Oracle Press Releases - Thu, 2017-05-11 07:00
Press Release
Emerson Adopts Oracle HCM Cloud Suite to Unify its Global Workforce Global technology and engineering solutions company implements Oracle HCM Cloud to achieve a holistic view of its 80,000 employees

Redwood Shores, Calif. —May 11, 2017

Oracle today announced that Emerson, a global technology and engineering solutions company, has adopted Oracle Human Capital Management (HCM) Cloud to gain an in-depth view into its global employee base. The full Oracle HCM Cloud suite implementation for Emerson includes: Core HR, Payroll, Performance Management, Goal Management, Career Development, Talent Review & Succession Management and Workforce Compensation. The data analytics delivered by Oracle HCM Cloud will enable Emerson to support the complexities of a varied and shifting workforce as it transforms its business model from traditional manufacturing to a value-added, solutions provider.

To better assess and manage changes across its global workforce, Emerson needed a single global human resources solution that could align common global HR processes, support local compliance needs across 100 countries and engage its workforce. By seamlessly integrating Oracle HCM Cloud with its existing deployments of Oracle E-Business Suite and Oracle Enterprise Resource Planning (ERP) Cloud, Emerson can leverage powerful data analytics to identify and address HR trends and issues, such as recruitment and turnover.

“At Emerson, we pride ourselves in delivering the latest technologies to improve the processes and performance of our industrial, commercial and residential customers. In that same vein, we also aim to empower our employees by giving them easy access to the latest innovations,” said Jim Rhodes, vice president of human resources information systems at Emerson. “With Oracle HCM Cloud, we will be able to proactively support employees worldwide with truly integrated solutions for everything from performance and payroll to recruiting and employee records.”

Emerson’s previous on-premises solution was unable to provide a complete view of its employee base and required technical specialists to manage and maintain the system. With Oracle HCM Cloud, Emerson expects to drive efficiencies across its global business by taking advantage of in-house digital deployment services to provide unified, timely and accurate reports. Oracle HCM Cloud also delivers high-level data security features relevant for the management of sensitive employee information.

“When organizations are able to quickly and easily gain actionable insights into their global employee base they can improve both the employee and customer experience,” said Gretchen Alarcon, group vice president, HCM Product Strategy at Oracle. “Oracle HCM Cloud will enable Emerson to uncover valuable business insights that will ultimately help its transition to a value-added manufacturer.”

Emerson plans on implementing the Oracle HCM Cloud in a three-phase approach and will work with an Oracle implementation partner and Oracle Customer Support for trusted, secure and comprehensive support throughout the implementation process. 

 
Contact Info
Jennifer Yamamoto
Oracle
+1.916.761.9555
jennifer.yamamoto@oracle.com
Additional Information

To learn more about Oracle HCM Cloud, follow @OracleHCM on Twitter or Facebook, or read the Modern HR in the Cloud blog

About Emerson Emerson (NYSE: EMR), headquartered in St. Louis, Missouri (USA), is a global technology and engineering company providing innovative solutions for customers in industrial, commercial, and residential markets. Our Emerson Automation Solutions business helps process, hybrid, and discrete manufacturers maximize production, protect personnel and the environment while optimizing their energy and operating costs. Our Emerson Commercial and Residential Solutions business helps ensure human comfort and health, protect food quality and safety, advance energy efficiency, and create sustainable infrastructure. For more information visit Emerson.com.

About Oracle

The Oracle Cloud delivers hundreds of SaaS applications and enterprise-class PaaS and IaaS services to customers in more than 195 countries while processing 55 billion transactions a day. For more information about Oracle (NYSE:ORCL), please visit us at http://cloud.oracle.com.

Trademarks

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Safe Harbor

The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle Corporation.

Talk to a Press Contact

Jennifer Yamamoto

  • +1.916.761.9555

Reminder: Upgrade Microsoft Vista Desktops

Steven Chan - Thu, 2017-05-11 02:00
Vista logoMicrosoft ended support for Windows Vista on April 11, 2017.  The official support dates are published here:  

Windows Vista is certified for desktop clients accessing the E-Business Suite today.  Our general policy is that we support certified third-party products as long as the third-party vendor supports them.  When the third-party vendor retires a product, we consider that to be an historical certification for EBS.

What can EBS customers expect after April 2017?

After Microsoft desupports Vista in April 2017:

  • Oracle Support will continue to assist, where possible, in investigating issues that involve Windows Vista.
  • Oracle's ability to assist may be limited due to limited access to PCs running Windows Vista.
  • Oracle will continue to provide access to existing EBS patches for Windows Vista.
  • Oracle will provide new EBS patches only for issues that can be reproduced on later operating system configurations that Microsoft is actively supporting (e.g. Windows 7, Windows 10)

What should EBS customers do?

Oracle strongly recommends that E-Business Suite customers upgrade their desktops from Windows Vista to the latest certified equivalents.  As of today, those are Windows 7, 8.1, and 10

Related Articles

Categories: APPS Blogs

Oracle is hanging after few days (intermittent) and cannot connect as user sys even with prelim option and lsnrctl do not work too

Tom Kyte - Wed, 2017-05-10 23:06
I have several clients that is having this intermittent issue where Oracle just hang. Only solution is stop and start the win DB service and sometimes it needs to be done twice. When the DB is hanging both CPU and memory are good. I tried co...
Categories: DBA Blogs

Object No Longer Exists - Non DDL Issue

Tom Kyte - Wed, 2017-05-10 23:06
We have partitioned tables (with indexes) with about 12 million records in each partition. We transfer data to non-partitioned (no indexes) table, perform calculations, and move data back to partitioned table when finished. These are all parallel INS...
Categories: DBA Blogs

expdp with same schema

Tom Kyte - Wed, 2017-05-10 23:06
I have export schema of production (CPG_PROD) now i want to restore on development server where i have alredy CPG_PROD schema. Now i want to restore production CPG_PROD On development but same name is already there so How can i import the produc...
Categories: DBA Blogs

ORA-01400: cannot insert NULL into ( blob )

Tom Kyte - Wed, 2017-05-10 23:06
Hello Tom, I have table with two column, this is sql code : CREATE TABLE AVR_xml ( x_xml NUMBER(10) GENERATED BY DEFAULT ON NULL AS IDENTITY NOT NULL, xml BLOB NOT NULL ) STORAGE (INITIAL 101204K NEXT 9200K) TABLESPACE "EX_DBS" ...
Categories: DBA Blogs

APEX Connect 2017 – Day 2

Yann Neuhaus - Wed, 2017-05-10 15:48

After the Keynote about “Oracle Application Express – Ahead of it’s time. Leading the way forward” by Joel Kallmann (Director of Software Development for APEX) and some overall presentation about Development with APEX 5.1, I decided to attend presentations on following topics oriented towards tools to make developer’s life easier:
– APEX OOS Tools and helper
– Useful APEX plugins
– LESS is more
– JavaScript Debugging and Tuning
– Introduction to Oracle JET

Oracle Application Express – Ahead of it’s time. Leading the way forward:
In 2008 APEX was already matching the definition of cloud given by the NIST (National Institute of Standards and Technology) and even matching the definition of PaaS in 2002: APEX was ahead of it’s time!
APEX allows to increase productivity and consistency, reducing complexity due to it’s declarative framework setup. It’s therefore to be seen as lowcode development environment: https://apex.oracle.com/lowcode/
What is impressive about APEX is that a packaged app written in 2008 is still able to run on apex.oracle.com today.
It’s the most used development platform within Oracle for running there internal business.
There is now an online APEX curriculum available for free on Oracle academy: APEX on Oracle academy
Oracle database free services online will be launched, replacing apex.oracle.com.

Upcoming features in APEX 5.2:
The next version of APEX may contain features like:
– Blueprint wizard: allows to integrate features from existing packaged apps in your on application declaratively
– Improved packaged apps
– Update of JET and JQuery versions
– Enhancements in Page designer:
-* Dialogs/pop-overs
-* Client side dialogs
-* Adaptive UI based on preference options declaratively enabled/disabled
-* Removal of legacy component view
– Enhancements on JET Charts:
-* New Gantt chart
-* New pyramid report
-* New Box Plot
-* New interactive report and websheet charts
-* Removal of 32k limit of data visualization
– Improved interactive grids
-* Flexible row height
-* Group by view
-* Pivot view
-* Region button position
-* Printing
-* Subscription
-* Computation
-* Required filtering
-* Complex filtering and highlighting
-* No stretch columns
-* Copy down facility
-* API documentation
-* Migration for interactive reports
– Improved REST services
-* Declarative support of REST services
-* REST services as data source for APEX components
-* Simple access to Cloud services
-* ORDS remote SQL data access
-* SQL execution on remote DB
All very nice and promising features :-)

APEX OOS Tools and helper::
Oracle Open Source Tools and other useful Open Source projects can be found in GitHub within different repositories.
Most famous OOS tools for APEX developers are:
– oracle-db-tools
– oraclejet
– db-sample-schemas
– node-dboracle
– docker-images
Link to oracle GitHub: https://github.com/oracle
Beside that to Open Source community provides various other tools for APEX developers:
– oxar (automated installation of full development environment)https://github.com/OraOpenSource/OXAR
– docker images https://github.com/Dani3lSun/docker-db-apex-dev
– Logger https://github.com/OraOpenSource/Logger
– APEX Diff (comparison of application exports based on JSON using node.js and sqlcl) https://github.com/OraOpenSource/apex-diff
– APEX Client extension https://github.com/OraOpenSource/apex-frontend-boost
– PL/SQL libraries like Alexandria https://github.com/mortenbra/alexandria-plsql-utils
– APEX backup scripts https://github.com/OraOpenSource/apexbackup
There is a lot out there to make you life easier. Enjoy them!
Thanks a lot to all contributors!

Useful APEX plugins::
APEX is a very nice development framework but it sometimes needs more than what is provided by Oracle.
Fortunately APEX allows to write extensions to fill-in the gap: plug-ins
There are many to be found on apex.world
Here is an non exhaustive list of useful plug-ins that were presented at APEX connect:
– select2 https://select2.github.io/
– Date range (based on JS moment library) http://apex.pretius.com/apex/f?p=105:DATERANGE:::NO:::
– Help text tooltip http://apex.pretius.com/apex/f?p=105:HELPTEXT:::NO:::
– Dropzone (for multiple file upload) https://github.com/Dani3lSun/apex-plugin-dropzone
– Excel to collections http://www.apex-plugin.com/oracle-apex-plugins/process-type-plugin/excel2collections_271.html
– Enhanced notification http://apex.pretius.com/apex/f?p=105:NOTIFICATIONS:::NO:::
– Nested reports http://apex.pretius.com/apex/f?p=105:NESTED_REPORTS:::NO:::
Thanks to all developers who provide those plug-ins and make APEX be even more enjoyable!

LESS is more::
What is LESS?
LESS is a CSS pre-processor which allows to use variable, mix-ins and nested rules to facilitate the rules CSS management.
It’s already in use in APEXso that you can leverage thattool to adjust your application to your Corporate identity guidelines.
The Theme roller of APEX 5.x make use of it, but the core.css of APEX is not modified that way.
I would suggest you to visit following website if you are interested in who LESS works:
http://lesscss.org/

JavaScript Debugging and Tuning::
APEX makes use of JQuery.
In some cases you might run into performance issues while loading or using your application pages.
Here are some tips and tricks to optimize JavaScript in your application based on experience.
– Use the right selector to reducing searches in the DOM (from the most to the less selective: id, element, class, attribute, pseudo)
– Use loops the right way (arrays can help)
– Use variables to reduce DOM access
– Use detach function to have an “offline” DOM and reduce the cost of parsing and accessing the DOM
– In some case native JavaScript is faster than JQuery
There are tools to help you measure the performance of your page:
– jsperf.com
– ESBench.com
– Chrome Canary developer tools
When it comes about page load performance, the size of your JavaScript library file is key. This can be reduced using tools like uglifyJS.
For Debugging and Logging purpose you can make use of the client console.log or even better the APEX.debug wrapper on it. Unfortunately those logs are only visible on the client console during runtime. One option to centralize them would be to write the result of the logs into a DB table using AJAX. Also stacktrace.js is of help as it captures the user context which can then be put with the logs to better understand the issue.
Ultimately REST service could also be an alternative to send back the logs to the DB.

Introduction to Oracle JET:
Oracle JET: JavaScript Extension Toolkit
It supports multilingual and follows W3C standards.
A JET module is always made of at least 2 parts:
– JavaScript file (view Models)
– HTML file (views)
When using JET modules you always have to take care of the required libraries/modules (dependencies).
APEX only makes use of the JET Charts for now.
I can only recommend to visit the Oracle web page on that subject:
http://www.oracle.com/webfolder/technetwork/jet/index.html/

 

Cet article APEX Connect 2017 – Day 2 est apparu en premier sur Blog dbi services.

Pages

Subscribe to Oracle FAQ aggregator