Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 21 Next »

On this page:

Summary: CAST AIP 8.3.16 introduces a number of features and changes as listed below. To view the impacts of these changes on analysis results, see: Changes in results post upgrade.

CAST Extension Downloader

Some changes have been made to switch downloads to the "next generation" CAST Extend service (https://extendng.castsoftware.com). This new CAST Extend service is a replacement for the existing CAST Extend Service which will be phased out in due course. Note that to use https://extendng.castsoftware.com, you will need to register a new account (https://extendng.castsoftware.com/register) - accounts from the existing CAST Extend service have not been transferred.

Installing CAST AIP ≥ 8.3.16 from scratch

When installing CAST AIP ≥ 8.3.16 from scratch when no previous release of CAST AIP exists, the following servers will be pre-configured for extension downloads:

Note that you can manually add the URL of the existing CAST Extend service if you prefer to use it, however, you should bear in mind that this service will be phased out in due course.


CAST Database Extractor

The CAST Database Extractor now supports:

  • (by reference) the extraction of schemas on Oracle 18c and above in line with Oracle's updated release cycle, however the extractor will handle the schemas as Oracle 12c schemas and no new syntax or features introduced in these newer releases is supported. 
  • Case sensitive passwords (introduced in Oracle 12c R2).

SAP / ABAP rules

"CX_ROOT" should not be used in TRY .. CATCH.. ENDTRY block (8412) 

The parent technical criterion for this rule was incorrectly set to 61020: Programming Practices - Modularity and OO Encapsulation Conformity, but it has been changed to 61014: Programming Practices - Error and Exception Handling. See also Changes in results post upgrade - 8.3.16.

Source code bookmarks implemented

Bookmarks indicating the position of violations in the source code have been implemented for the following SAP/ABAP rules:

  • Avoid Artifacts with High Depth of Nested Subqueries (7130)
  • Avoid using BREAK or BREAK-POINT statement (7524)
  • Never use the ON CHANGE OF statement (7528)
  • Avoid "SELECT *" or "SELECT SINGLE *" queries (7530)
  • Avoid nested SELECT ... ENDSELECT statements (7532)
  • Avoid using AT events in combination of LOOP AT .... WHERE constructs (7536)
  • Avoid using SELECT ... INTO CORRESPONDING FIELDS OF (7538)
  • Avoid using SELECT ... ENDSELECT statement (7544)
  • Avoid using "ORDER BY" in SELECTS (7592)
  • Avoid using "SELECT DISTINCT", use DELETE-ADJACENT (7594)
  • Avoid using SELECT ... ENDSELECT statement on XXL tables (7666) 
  • Avoid using EXIT statement in Include (7672)
  • Avoid empty catch blocks (7788)
  • Avoid Artifacts with Group By (7806)
  • Avoid Artifacts with SQL statement including subqueries (7808)
  • Avoid Artifacts with a Complex SELECT Clause (7810)
  • Never use SQL queries with a cartesian product (7820)
  • Avoid Artifacts with queries on more than 4 Tables (7822)
  • Avoid using Native SQL (7882)
  • Avoid SQL queries that no index can support (7902)

Dynamic Links rule files

Dynamic Links rule files now function with SAP BusinessObjects and SAP PowerBuilder analysis results.

Changes to the structure of the Dashboard and Analysis Services schemas

Some changes have been made to the structure of the Dashboard and Analysis Service schemas to reduce the potential size of the Dashboard Service schema tables DSS_LINKS and DSS_LINK_INFO:

Data (links with IDs from 11000 to 11006) related to CAST Transaction Configuration Center data functions and transactions that was previously stored in these two tables will now be stored in a new table called FP_LINK_INFO. This table now contains all object details of transactions/data functions. It has exactly the same structure as DSS_LINK_INFO:

SNAPSHOT_IDthe snapshot id
PREVIOUS_OBJECT_IDdata function or transaction
LINK_TYPE_IDbetween 11000 and 11006
NEXT_OBJECT_IDdetail object of a transaction/data function

Impact on Analysis Services schema

Details of transactions and data functions are now sent to a new table called DSS_FPLINKS (previously DSS_LINKS was used).

Transfer from Analysis to Dashboard Service schema

The links in DSS_FPLINKS in the Analysis Service schema are sent to the Dashboard Service schema via a new table called DSS_IN_FPLINKS (previously DSS_IN_LINKS was used).

Impact on Dashboard Services schema

The data related to details of transactions and data functions are now stored in a new table called FP_LINK_INFO (previously DSS_LINK_INFO was used).

Upgrade and impact

This change is handled by the CAST upgrade process and does not require any manual steps. All occurences of link_type_id between 11000 and 11006 will be:

  • Moved from DSS_LINK_INFO to FP_LINK_INFO
  • Removed from both DSS_LINK_INFO and DSS_LINKS

If you have custom scripts that fetch data from any of the existing tables, please ensure that you update these scripts yourself.

MAINFRAME new feature.

IBM MQSeries.

From 8.3.16, Mainframe analyzer support the publisher/subsrcirber mode and point to point mode for IBM MQSeries.

Two type implementation:

  • Point to Point: MOVE MQOT-Q TO MQOD-OBJECTTYPE:

    In point-to-point, message producers are called senders and message consumers are calledreceivers. Senders produce messages to a queue, and receivers asynchronously consume messages from that queue.

    For point-to-point to work, connected applications need to know the name of the queue through which they interact.

    A queue could have a single receiver or be scaled to many, in which case each message is only consumed by one receiver, distributing the workload across them all.

    This style of messaging is built around the concept of message queues, and around the processing of messages by a single consumer.


  • Publisher/Subscriber MOVE MQOT-TOPIC-Q TO MQOD-OBJECTTYPE:

    The producer of a message is known as a publisher, and message consumers are known as subscribers. The publishing and subscribing applications within the infrastructure agree on the name of a topic. For a consumer to signal that they want to receive messages on that topic, they create a subscription to it.

    Any message published to a topic will be delivered to all the subscriptions, so every subscriber gets a copy. There could be many publishers and many subscribers to each topic, MQ handles the delivery of messages between all of them.


Example Publisher/Subscriber:

Publisher a topic:

01 OBJECT-DESCRIPTOR.
	COPY CMQODV.
MOVE MQOT-TOPIC TO MQOD-OBJECTTYPE.
MOVE MQOD-VERSION-4 TO MQOD-VERSION.
MOVE ‘Fruit/Vegetal’ TO TARGET-TOPIC.
SET MQOD-OBJECTSTRING-VSPTR TO ADDRESS OF TARGET-TOPIC.
MOVE 18 TO MQOD-OBJECTSTRING-VSLENGTH.

...
DD MQOO-OUTPUT
        MQOO-FAIL-IF-QUIESCING GIVING OPTIONS.

CALL 'MQOPEN' USING HCONN,
              OBJECT-DESCRIPTOR,
              OPTIONS,
              Q-HANDLE,
			  MQCC, 
			  REASON.


CALL 'MQPUT' USING HCONN, 
			Q-HANDLE, 
			MESSAGE-DESCRIPTOR, 
			PMOPTIONS, 
			BUFFER-LENGTH, 
			BUFFER, 
			MQCC, 
			REASON. 



Subscriber a topic

01 SUB-DESCRIPTOR.
	COPY CMQSDV.
ADD MQSO-CREATE MQSO-MANAGED MQSO-FAIL-IF-QUIESCING
									GIVING MQSD-OPTIONS.
MOVE ‘Vegetal/Meal’ TO TARGET-TOPIC.
SET MQSD-OBJECTSTRING-VSPTR TO ADDRESS OF TARGET-TOPIC.
MOVE 18 TO MQSD-OBJECTSTRING-VSLENGTH.

...
CALL 'MQSUB' USING HCONN,
			SUB-DESCRIPTOR,
			Q-HANDLE,
			SUB-HANDLE,
			MQCC,
			REASON.

CALL 'MQGET' USING HCONN,
			Q-HANDLE,
			MESSAGE-DESCRIPTOR,
			GMOPTIONS,
			BUFFER-LENGTH,
			BUFFER,
			DATA-LENGTH,
			MQCC,
			REASON.





Result in enlighten:


The link is created by WebServiceLinker from 1.6.8-funcrel. 


  • No labels