ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203...

28
North America & LATAM EMEA (HQ) Asia Pacific 70 Main Street, Suite 203 Peterborough NH 03458 USA 1-603-371-9074 1-800-676-4709 (toll free) [email protected] 55 Rue Adrastée – Parc Altaïs 74650 Chavanod/Annecy France +33 450 578 396 [email protected] c/o Pramex Intl Ltd 1 Austin Rd West Intl Commerce Centre 7107B 71/F Tsim Sha Tsui HONG KONG Yau Ma Tei Hong Kong [email protected] Upgrade Guide ARCAD Version 10.09.xx Publication Date: September, 2018 Prepared by the ARCAD Documentation Team

Transcript of ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203...

Page 1: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

North America & LATAM EMEA (HQ) Asia Pacific70 Main Street, Suite 203Peterborough NH 03458USA1-603-371-90741-800-676-4709 (toll free)[email protected]

55 Rue Adrastée – Parc Altaïs74650 Chavanod/AnnecyFrance

+33 450 578 [email protected]

c/o Pramex Intl Ltd1 Austin Rd West Intl Commerce Centre7107B 71/F Tsim Sha Tsui HONG KONGYau Ma Tei Hong Kong

[email protected]

Upgrade GuideARCADVersion 10.09.xx

Publication Date: September, 2018

Prepared by the ARCAD Documentation Team

Page 2: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide |

Copyright © 1992-2018 by ARCAD. All rights reserved.

The following terms are names owned by International Business Machines Corporation in the United States, othercountries, or both: AS/400®, ClearCase, ClearQuest®, DB2, DB2 Connect™, DB2 Universal Database™, ibm.com,IBM i, iSeries, System i, OS/400, Rational®, SP2, Service Pack, WebSphere. Java and all names based on Java areowned by Oracle Corp. in the United States, other countries, or both. Eclipse is a registered trademark of EclipseFoundation, Inc. Other names of companies, products or services are the property of their respective owners.

Page 2 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 3: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxContact ARCAD | Upgrade Guide

Contact ARCAD

Headquartered in France at the foot of the Alps, ARCAD offers global services and has offices and partnersall over the world. ARCAD partners with leading-edge companies throughout the world to ensure you havethe local support you need and best-of-breed contacts for all of your softwaremanagement solutions. Ourglobal partners are located strategically around the globe to offer full services, close to home.

Visit our website to Contact Us and find out more about our company and partners!

ARCAD guarantees consultant support 24 hours a day, 5 days a week (24/5) to registered members. Callsreceived are redirected to a central systemwhich, according to the hour, puts you in contact with aconsultant in or near your timezone.

The Customer Portal is intended for current and potential customers that have full or trial versions ofARCAD software. If you already use or are interested in using an ARCAD product, the portal lets you viewall of your current licenses and generate your own temporary license keys for most ARCAD products. Itgrants you access to the ARCAD product knowledge base (FAQ, new releases, fixes, etc.) as well as theRelease Notes and current documentation. Do you have a request for change or have you encountered abug? Log into the Helpdesk and create a ticket.

Country Address Contact

FranceARCAD Software (HQ)55 Rue Adrastée74650 Chavanod

+33 4 50 57 83 96 or Fax +33 4 50 57 52 [email protected]@arcadsoftware.com

USAARCAD Software Inc.70 Main Street, Suite 203Peterborough, NH 03458

+1 (603) 371-9074 or +1 (800) [email protected]@arcadsoftware.com

Germany

ARCAD Software Deutschland GmbHc/o Pramex International GmbHIm Trutz, Frankfurt 55,60322 Frankfurt am Main

Hong Kong

ARCAD Software Asiac/o Pramex Intl Ltd1 Austin Rd West Intl Commerce Centre7107B 71/F Tsim Sha Tsui HKYau Ma Tei

+852 3618 [email protected]@arcadsoftware.com

China

ARCAD Software Products Private LimitedOffice E05, 31st floorAgile Center26 Huaxia Road, Zhejiang New Town, Tianhe

+86 (020)22324643+86 (020)22324649

India D-280/281/282, Vibhuti KhandOpposite Urdu Academy, Gomti Nagar, Lucknow

Table 1: Contact ARCAD

Page 3 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 4: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | Contents

Contents

Contact ARCAD 3

Contents 4

Preface 5

1 Update from v10.xx.xx to ≥10.08.xx 61.1 Overview 61.2 Preparation 61.3 Updating the ARCAD Server 61.4 Updating clients and plug-ins 71.5 Testing 71.6 Rolling back an update 7

2 Upgrade from v8 to v10.xx 82.1 Installation 82.2 Understanding ARCAD v10 audit results 112.3 Migrating licenses from v8 to v10 122.4 Datamigration 122.4.1 Clear old and temp data 12

2.4.2 Run the DB migration 13

2.5 Macro conversion 142.5.1 Conversion 14

2.5.2 Macros with SQL 17

2.5.3 Macros with call commands 19

2.6 Customized programs 202.6.1 Types of customizations 20

2.6.2 Unicode conversion 20

2.6.2.1 Preparation 21

2.7 Testing and avoiding conflicts 222.7.1 Version library 22

2.7.2 ARRPLOBJ naming conflict 22

2.7.3 Distribution 23

2.8 Final v10 update 242.8.1 Preparation 24

2.8.2 Process 24

2.8.3 Post update 25

3 Upgrade from v8 to v9 273.1 Test of migration database from v8 to v9 273.2 Pre-check before the real/livemigration 273.3 Real/livemigration 28

Page 4 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 5: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxPreface | Upgrade Guide

Preface

Document purpose

Please read this entire document before planning your upgrade.

This guide serves as a way to prepare for upgrades but is not exhaustive. Always check with tech supportfor any additional instructions and a current list of patches before proceeding. If you are upgrading duringnon-business hours you can make arrangements for direct support for this process.

In order to completely understand the notions in this document, you should have sufficient knowledge ofthe various functions available in the ARCAD product suite.

This guide covers the steps to upgrade ARCAD:

l to v10.08.02 by upgrading your current version directlyl from v8 to v10l from v8 to v9

Publication record

Productversion

Documentversion Publication date Update record

≥ 10.09.xx 1.1 September,2018 No functional changes.

10.08.10 1.0 June, 2018Initial Publication. This document brings togetherthree individual upgrade documents to centralize theupgrade processes for ARCAD core products.

Table 2: ARCAD Upgrade Guide publication record

Related Documentation

ARCAD Compatibility Sheet

ARCAD Installation Guide

ARCAD Sever Configuration Guide

ARCAD SSL Configuration Guide

Page 5 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 6: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | 1 Update from v10.xx.xx to ≥10.08.xx

1 Update from v10.xx.xx to ≥10.08.xx

1.1 Overview

Preparation is key for a successful update with no impact to productivity. Because upgrading fromv10.06.xx (or earlier) to v10.08.xx is a big step there are a number of different elements that must beupdated.

After the server update, developers using RDi will also have to update their plug-ins. Also, due toparameter changes, any interfaces you have from ARCAD, interfaces you may have developed yourselfusing ARCAD APIs, and additional ARCAD Clients (studios) will need to be updated.

If you have a highly complex implementation with interfaces and multiple ARCADmodules, you may wantto refer to the option for testing in a parallel copy of ARCAD v10.08.02. If you have any concerns aboutcompatibility please contact support and they will find out what the requirements for anything specific.

ARCAD v10.08.02 is compatible with:

l ≥RDi 9.6.xl ≥IBM i OS 7.1

1.2 Preparation

When planning the cumulative, the actual runtime of the process will vary depending on the span betweenyour current version and the cumulative version, because the number of changes will increase. The speedof your server can also play a role.

There can be no locks on theARCAD_PRD and ARCAD_ENG ARCAD libraries, so the ARCAD subsystemmust be shutdown and no one should be using ARCAD through any interface. You can use the WRKOBJLCKcommand to ensure that these libraries are not locked. Once the cumulative and any patches are applied,then functional testing should commence to identify any issues that could possibly be unique to yourworkflow.

1.3 Updating the ARCAD Server

The update in place can be done from an optical disc or SAVF on the IFS.

The update process is the same as the installation process detailed in the ARCAD Installation Guide exceptfor one difference: when installing from the SAVF you will not have to worry about the ARCINST processsince that library and functions should already be on your server from the previous installation.

During a cumulative ARCAD uses ARCAD to update itself and you can see the updates in the transfer log.This is important for rollback options.

Support may also supply patches to the release if issues have been discovered too late to be incorporatedinto the GA (General Availability) packaging. Contact support for a current list of patches prior to applyingthe cumulative. Patches will be shipped as SAVFs that restore to a patch-specific library and are appliedpost-cumulative with the RCVFIX command.

Page 6 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 7: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xx1 Update from v10.xx.xx to ≥10.08.xx | Upgrade Guide

1.4 Updating clients and plug-ins

Client installers will also perform an update. Run the appropriate setupxxx.exe. If you are using theObserver Documentation plug-in, you must also run the ARCAD Home core_setup.exe.

The update process is detailed in the ARCAD Installation Guide.

TipChange the perspective to RSE to prevent locking any preferences thatmay need to be updated and start RDi with Run as Admin. ARCAD willrarely change the name of a plug-in in a cumulative, but if it has beenchanged, it’s recommended to uninstall the plug-ins and reinstallation fromscratch. Contact support if you are on a very old version of ARCAD.

1.5 Testing

Testing should be done throughout the update cycle. Ideally, there should be a set of test objects thatincorporate one of each type commonly used at your site. The idea is to test key functions so any issuesdiscovered later can be worked around, or will not be blocking issues until a patch is supplied.

1.6 Rolling back an update

Always plan the testing process in a short time frame from the cumulative update so rollback is viable ifissues are discovered.

When doing a significant update it’s a good idea to save the ARCAD_ENG and ARCAD_PRD libraries intoSAVFs. If you place the SAVFs in theARCAD_NET library, they will be deleted by the ARCAD cleanup job in10 days if you forget about them. This also verifies there are no locks on them before the update. TheARCAD cleanup job will delete those archived ARCAD objects out of ARRPLOBJ the very next time it runs.If you perform the cumulative update and have testing planned the next day, you may want to hold thescheduled job to allow for rollback.

Both rollback techniques, using SAVFs and using ARCAD to roll itself back, involve replacing the file datawith the previous data. It should be sufficient to test ARCAD functions with test objects. If you perform thecumulative over the weekend then use ARCAD for live actions, and then rollback, ARCAD will not have data(object history, checkout records, records of versions created) because the ARCAD data set will date frombefore the cumulative update was applied.

Server rollback can be done by renaming the updated ARCAD_PRD and ARCAD_ENG and restoring thesaved libraries. You can also restore using the transfer log and a time-span criteria. If you applied patches,the patchesmust be rolled back first and then the cumulative update.

Client/plugin rollback can only be accomplished by uninstalling the client/plugins and installing the previousversion. Be sure you have the previous version available to install before starting the update.

Page 7 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 8: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | 2 Upgrade from v8 to v10.xx

2 Upgrade from v8 to v10.xx

2.1 Installation

To install ARCAD v10 on IBM i alongside ARCAD v8, first download the ARCAD v10 server install from theFTP. Contact support to retrieve the information required to access the version to install.

Once you have downloaded the .iso you can burn it to DVD or mount it via a virtual optical drive.

Using the profile QSECOFR or similar, initiate the installation with the LODRUN [optical drive name]command

You will see the response below as it restores the install library ARC10ST.

When that is complete you be presented with the install interface that indicates there is already a library outthere with the default name ARCAD_XXX by highlighting the first line in red.

Page 8 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 9: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xx2 Upgrade from v8 to v10.xx | Upgrade Guide

Select option 4 to modify the name of the instance which will change library name.

Specify the 10 for the instance value and hit enter

You will be back on the install interface which will indicate the new library names and you are ready tosubmit the job with option 1

Page 9 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 10: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | 2 Upgrade from v8 to v10.xx

Once you take option 1 and hit enter the install will prompt you for install parameters and you can submitto any specific JOBQ or JOBD etc

Enter on that panel will submit the job.

Page 10 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 11: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xx2 Upgrade from v8 to v10.xx | Upgrade Guide

Once the install is complete you will have 2 separate installs of ARCAD that will co-exist without conflictduring the testing of v10, as long as you’re careful.

2.2 Understanding ARCAD v10 audit results

The audit you ran before any migration generates information about potential issues you will have duringmigration. You should have received a spreadsheet containing the output so you can use this to determineany problems or space requirements during themigrations. In the spreadsheet there aremultipleworksheets with the name on the tab.

Content of these worksheets:

l LSTCHROVER: Version chronology problem after transfer from SBCS into Unicode.l LSTMACCVT: v8-v9 conversion results of themacro-commands. This list contains all retrieved macro-commands, and especially those with a v9 conversion error (status = ‘Abn’). Thesemacro-commandswith conversion error must be checked and modified.

l LSTMACUNK: List of macro-commands not found in the restore library of the SAVF sent by thecustomer.

l LST_CFG: List of configuration information.l LSTOPNSRC: List of customized programs.l LSTOPTFLT: List of warnings after the conversion of list filters, version options, list options and useroptions.

l LSTMACCALL: List of macro-commands containing programs calls (use of the CALL command).l LSTMACSQL: List of macro-commands containing SQL queries (use of AEXCSQL, RUNSQLSTM,STRQMQRY commands).

l LSTCVTFIL: List of all files from ARCAD_PRD with their size.

The lists in red contain errors that must be analyzed before themigration to v10.

The lists in orange contain elements that must be analyzed before themigration to v10.

The lists in blue contain elements that must be verified after the installation of v10.

Page 11 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 12: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | 2 Upgrade from v8 to v10.xx

The lists in green contain only information.

2.3 Migrating licenses from v8 to v10

The licenses from ARCAD v8 will work in ARCAD v10 but the names of the products are slightly different.See below for themapping.

2.4 Data migration

The next step is to migrate data from v8 to v10. This process copies the data from v8 to v10 withoutaffecting v8. Please use the following steps:

2.4.1 Clear old and temp data

Clear old and temp data to reduce copy time.

SBMJOB CMD(CLRXREF NBMIN(2) RGZDB(*YES))

Step 1 Clean up the ARDILPF1 and ARDILQF1 files (temporary info for prototypes definition in /COPY ofILE programs in versions):

l DELETE FROM ARCAD_PRD/ARDILQF1 WHERE ILQ_APPID = ' '

Page 12 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 13: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xx2 Upgrade from v8 to v10.xx | Upgrade Guide

l DELETE FROM ARCAD_PRD/ARDILQF1 WHERE ILQ_VERS IN (SELECT VRVERS FROMARCAD_PRD/ARMVERF1 WHERE VRMRFD <> 0 AND VRVERS < ‘versionnumber’ ANDVRAPP = ‘appId’) AND ILQ_APPID = ‘appId’

l DELETE FROM ARCAD_PRD/ARDILPF1 WHERE ILP_APPID = ' '

l DELETE FROM ARCAD_PRD/ARDILPF1 WHERE ILP_VERS IN (SELECT VRVERS FROMARCAD_PRD/ARMVERF1 WHERE VRMRFD <> 0 AND VRVERS < ‘versionnumber’ ANDVRAPP = ‘appid’) AND ILP_APPID = ‘appId’

appId = Application Id

versionnumber = reference version - 5 (we keep info for the last 5 closed versions)

Step 2 Clean up the ARMMOQF1 (temporary info for DB2 components in versions):

l DELETE FROM ARCAD_PRD/ARMMOQF1 WHERE MOQ_APP = ' '

l DELETE FROM ARCAD_PRD/ARMMOQF1 WHERE MOQ_VERS IN (SELECT VRVERS FROMARCAD_PRD/ARMVERF1 WHERE VRMRFD <> 0 AND VRVERS < ‘versionnumber’ ANDVRAPP = ‘appid’) AND MOQ_APP = ‘appId’

Step 3 Reorganize these 3 files (ARDILPF1, ARDILQF1 and ARMMOQF1) after clean-up: RGZPFM

Step 4 Check the referential constraints for the ARCAD_PRD library using one of the following way:

l ACHKPFCST LIB(ARCAD_PRD) (if you use an v08.15.00 or higher)l WRKPFCST FILE(ARCAD_PRD/*ALL) TYPE(*CHKPND)

NoteIf you have some constraints in check pending, please solve itbefore themigration

Step 5 Check if the IBM Cross References are correct:

l RCLDBXREF OPTION(*CHECK) LIB(*ERR)

NoteIf an ARCAD library is in the resulting message, run RCLDBXREFOPTION(*FIX) LIB(ARCAD_PRD)

2.4.2 Run the DB migration

l CHGSYSLIBL ARCAD_ENG *REMOVE

l CHGSYSLIBL ARC10_ENG *ADD

l Be sure the initial LIBL, Current library and system LIBL are set to *CURRENT on the submit jobcommand.

l SBMJOB CMD(ACVTARCDBF FROMLIB1(ARCAD_PRD) FROMLIB2(ARCAD_ENG) TOLIB(ARC10_PRD) CRTFILE(*YES) DEPLGL(*YES))

Check the databasemigration results: ADSPCVTLOG

You can enter the new c10 instance of ARCAD by qualifying the command ARC10_ENG/ARCAD and verifydata migration by looking at the repository or version list.

Page 13 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 14: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | 2 Upgrade from v8 to v10.xx

2.5 Macro conversion

Once the data is migrated the next step is to convert themacros you have customized in v8 to the v10format. One of the changes in v10 is that the commands all had an A added in front of them as well as fieldsand files were changed. The conversion goes through and changes all the command references and filesand field references. Themacro engine was enhanced as well so parameters have gone from two characterto 10 characters and naming conventions have been instituted such that an internal parmmust start withW and an entry parmmust start with P. Themacro conversion process takes the v8 macro and updates itinto a new library and attempts to parse through and adjust to all the changes. It generally does a great jobbut it can miss internal parms and it has an issue with SQL used in macros. When the conversion completesit identifies thosemacros that had issues with conversions. One of results in the upgrade audit is all macrosthat contain SQL. There is also a list of macros that CALL programs, again requiring careful review becauseof parameter and program name changes. See sections on those below.

2.5.1 Conversion

The best practice for macro conversion is to create a new library to convert to for testing purposes forexample ARCAD_MC10. You can either identify individualmacros to convert, or make a list of all v8 macrosand convert themwith a batch job. To convert an individualmacro use the command:

ACVTMACCMD MACRO(ARCAD_ENG/[macro]) TOMACRO(ARCAD_MC10/*FROMMAC) EDIT(*NO)CHKOBJREF(*NO)

If you wanted to do amass conversion you could:

l Create the list of existing macro-commands:

ACRTOBJLST LIB(ARCAD_ENG) TYPE(*CMD) USRDFNATR(MACRO) TOLIST(ARCAD_MC10/LSTMAC) OMTLSTMAC(*NO)

l Convert the existing macro-commands:

SBMJOB CMD(AEXCLST LIST(ARCAD_MC10/LSTMAC) CMD(ACVTMACCMD MACRO(ARCAD_ENG/&LOBJ) TOMACRO(ARCAD_MC10/*FROMMAC) EDIT(*NO) CHKOBJREF(*NO)))

l Check and fix each converted macro-command in ARCAD_MC10.

You have to identify each macro you use for checking for errors and subsequent testing. In themacroheader you can see the last execution date to verify if a macro is actively used.

To check for errors or work on specific errors enter themacro with a 2 and use F22 to verify. In this scenariowhere the converted macros live in an alternate library you want to enter your v10 version of ARCAD anduse the command:

AWRKMACCMD MACRO(ARCAD_MC10/*ALL)

Page 14 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 15: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xx2 Upgrade from v8 to v10.xx | Upgrade Guide

Then take a 2 on amacro to edit and use F22 to interactively validate themacro and you’ll be presented withthe error panel:

Either no errors or a list

When you F3 to exit it brings you into themacro with all the lines with errors highlighted in red

Page 15 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 16: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | 2 Upgrade from v8 to v10.xx

If you drill into a line with a 2 the error is shown specifically at the bottom of the panel

Every time you go into amacro to edit when leaving editing themacro is checked again and the error listcomes up. Use F8 to truly exit.

Page 16 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 17: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xx2 Upgrade from v8 to v10.xx | Upgrade Guide

2.5.2 Macros with SQL

Macros that have SQL statements in themmust be checked very carefully as the SQL syntax is NOTchecked by ARCAD’s macro validation process. Review themacros listed in the LSTMACSQL worksheetcarefully. Each entry is a line in amacro that executes SQL. The conversion does try to change all theARCAD file and field names referenced in the SQL statement, but the parser can be confused by SQLsyntax. Since the field types and lengths have changed that might also cause issues with an SQL statementthat would need to be resolved. This would be especially true of any non-ARCAD tables are used, like worktables.

Below are some examples of SQL.

Here we see a line with SQL, note that SQL statements are often quite long and get truncated in thedisplay. F20 will show a full page line.

Page 17 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 18: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | 2 Upgrade from v8 to v10.xx

As an example here is an SQL statement from v8

AREXCSQL SQLSTM('insert into &LS/RPTCHKOUT (LSNOM, LSAPP, LSVERS, LSZSL2, LSOBJ,LSTYP, LSZSEL, LSATR, LSDATM, LSTXT, LSTTYP, LSLIB) SELECT LKAPP, LKAPP, LKFVER,LKSRCF, LKSRCM, LKTYPE, LKPGMR , '' '', LKDATE , LKREFR , ''O'', LKSRCL FROMarmlckf1 WHERE LKapp = ''&AP''')

Page 18 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 19: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xx2 Upgrade from v8 to v10.xx | Upgrade Guide

This is the same statement converted to v10, again manual remediation can be necessary depending onhow the parser fared during the conversion.

AEXCSQL SQLSTM('insert into &ALSTLIB/RPTCHKOUT (LST_JZSEL3, LST_CApp, LST_CVer,LST_JZSel2, LST_JObj, LST_CType, LST_JZSel1, LST_CAtr, LST_TDATE, LST_CTxt, LST_CEltTy, LST_JLib) SELECT LCK_CAPP, LCK_CAPP, LCK_CFMVER, LCK_JSRCF, LCK_JOBJ,LCK_CTYPE, LCK_JPGMR, '' '', LCK_TDATE, LCK_TCRTT, ''O'', LCK_JLIB FROMAARMLCKF1 WHERE LCK_CAPP = ''&AAPP''')

Remember that files normally had an A appended to the v8 name but not always. Additionally all fieldnames changed.

2.5.3 Macros with call commands

LSTMACCALL is a list of all macro entries that use the CALL command. If an ARCAD program is called thenthe conversion should adjust the program name and parameters appropriately. This should still be doublechecked. If it’s a custom program that will also reference ARCAD artifacts then the custom programwillneed to be adjusted for ARCAD’s new files, fields and program names and as such could very well have itsparameters changed. The conversion will not take into account changes that will bemade to calledprograms after themacro conversion.

In this example we see a call made in v8 to generate a temporary library

In this example here is the same line automatically converted to v10 with Unicode parameters.

Page 19 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 20: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | 2 Upgrade from v8 to v10.xx

2.6 Customized programs

2.6.1 Types of customizations

There are 2 types of customized programs, those that ARCAD ships in the ARxxxxxx source files inARCAD_PRD and those that are created from scratch with unique names. The ones that ARCAD ships arecalled or can be called from ARCAD ’s normal functions and have a different name in v10. The programsunique to your installation can be called from amacro, or an exit point by customizing the commanddefaults.

If a customized program calls other ARCAD command or programs and/or it accesses ARCAD files then itwill most likely have to be converted to Unicode along with updating any parameters. The process is thesame for both types. So the steps are to fix the codemanually and then use the ARCAD Unicodeconversion process for correct functionality.

2.6.2 Unicode conversion

It is required that the program successfully compile before conversion can be performed by ARCAD’sprocess. So the first step is change parameters. Here is a list of v8 parameters:

DCL VAR(&APPID) TYPE(*CHAR) LEN(3)DCL VAR(&TSTID) TYPE(*CHAR) LEN(1)DCL VAR(&VERS) TYPE(*CHAR) LEN(8)DCL VAR(&OBJ) TYPE(*CHAR) LEN(10)DCL VAR(&LIB) TYPE(*CHAR) LEN(10)DCL VAR(&OBJTYP) TYPE(*CHAR) LEN(7)DCL VAR(&SRCFIL) TYPE(*CHAR) LEN(10)DCL VAR(&SRCLIB) TYPE(*CHAR) LEN(10)DCL VAR(&SRCTYP) TYPE(*CHAR) LEN(10)DCL VAR(&CPLTYP) TYPE(*CHAR) LEN(7)

Here is the same list converted to the v10 format, note that each parameter length has been doubled tosupport Unicode format and the parameter name is following a naming convention to support the Unicodeconversion

DCL VAR(&W_CAPP) TYPE(*CHAR) LEN(20)DCL VAR(&W_CENV) TYPE(*CHAR) LEN(20)DCL VAR(&W_CVER) TYPE(*CHAR) LEN(16)DCL VAR(&W_JOBJ) TYPE(*CHAR) LEN(20)DCL VAR(&W_JLIB) TYPE(*CHAR) LEN(20)DCL VAR(&W_CTYPE) TYPE(*CHAR) LEN(20)

Page 20 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 21: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xx2 Upgrade from v8 to v10.xx | Upgrade Guide

DCL VAR(&W_JSRCF) TYPE(*CHAR) LEN(20)DCL VAR(&W_JSRCLIB) TYPE(*CHAR) LEN(20)DCL VAR(&W_CSRCT) TYPE(*CHAR) LEN(20)DCL VAR(&W_CCPLT) TYPE(*CHAR) LEN(14)

Of course any reference to an ARCAD object must be updated so a CL that uses CPLOBJwill now callACPLOBJwith updated parameters.

You should be doing this source remediation IN ARCAD v10 using a special function, the ARCAD ZIAapplication.

2.6.2.1 Preparation

It is highly recommended to manage the Open Source programs in the ZIA application

Open Sources are stored in two source files:

ARCLSRC and ARRPGLESRC for standard types RPGLE, CLP

ARCLSRC2 and ARRPGLESR2 for RPGLE2, CLP2

NoteIf you need to change one of them outside ZIA application (notrecommended), you have to change and compile the RPGLE2 or CLP2

If the program contains some input parameters, check if they are Unicodeor not (Unicode parameters need to double the variable size: for example avariable 10 Unicode equals a variable 20 A)

You can check as for example AARM255C6 that uses ARTVAPPD command

If these sources aremanaged in the ZIA application:

1. Be sure that no version are open for ZIA application2. Open a new empty version (with the next “official number”)3. Check if source files are correctly set for application ZIA (topology)4. CHGJOB CCSID(297)5. Launch themacro PRPUNI0:

It creates all the CLP2, RPGLE2, .. source type

It creates the parameter for source file (with correspondences for maintained/generated source files)

Entry parameters:

-Create source types 2 . . '*YES'-Applic. for source files . ZIA-Version for source files . ’version number’

After that, you can check-out or create CLP/ RPGLE in the ZIA versions (the version mentioned above, andall the new versions)

Page 21 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 22: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | 2 Upgrade from v8 to v10.xx

When you compile using option 9, the ARCAD Unicode pre-compiler is activated and you will see that theCLP2, RPGLE2will appear in the version:

-maintained source (type CLP, RPGLE)-generated source (type CLP2, RPGLE2)

NoteYou may have to change something in themacro used when a ZIA versionis closed (transferred to production)

It is not useful to calculate Xref for CLP, RPGLE, when the correspondingCLP2, RPGLE2 exists

With this, by default all CLP / RPGLE sources in ZIA application will use theARCAD Unicode pre-compiler

In a source, you can inhibit this if you put:

/* %PRECPL *NOCVT */

In that case, the 2 sources will be exactly the same.

If you compile the CLP but no CLP2 appears, perhaps it can be caused bythe general parameters. Check the AWRKCPLTYP (I_ARCAD option 12) ifthe *CLP is defined as "*INT". If not change to *INT and retry to compilethe CLP in the ZIA version.

2.7 Testing and avoiding conflicts

Oncemacro conversion has been completed it’s time for testing. The test cycle should encompass acomplete cycle of your current CM process and this section will cover those areas that require specialhandling to avoid conflict with v8 activity. Since every customer of ARCAD has some uniqueness to theirprocess this document can not cover your CM process but rather help you avoid the possible conflicts.

2.7.1 Version library

Themost significant conflict is the version library. Since all your information was copied from v8 to v10,including application name and environment names, the same naming convention will be used for versionsand version libraries. When you create a version in v10 you MUST assign a specific version name and notuse *GEN for version name. If you create a version with the same name as an existing version in the otherinstall of ARCAD you will have a conflict so be sure to specify a version namewell outside of the currentrange in v8, for example using X instead of V at the beginning or 99 at the beginning. These version(s) usedfor testing will go away once you go live on v10 although the version libraries must be deleted manually ifthe test versions are not deleted from v10 before go live.

2.7.2 ARRPLOBJ naming conflict

A potential conflict can come up in the ARRPLOBJ and ARRPLSRC library when object and source isarchived. If the v10 install of ARCAD uses the same name as was used in the v8 version then there will be a

Page 22 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 23: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xx2 Upgrade from v8 to v10.xx | Upgrade Guide

conflict and the archive will not occur in v10 and possibly vice-versa. The solution is to reset the file thatcontrols the sequence used in the name using SQL, in the case below to start in the 8 million sequence:

Update ARC10_PRD/AARKPRKF1 Set PRK_IVALUE = 8000000 Where PRK_JFILE =‘ARRPLOBJID’

2.7.3 Distribution

If you distribute to a remote system then you have 2 options to test this.

When v10 is installed it creates its own profile and staging library. If you use the 10 value for the v10instance then ARC10_NET profile and library are created. There is also a communication job created calledARC10 under the profile ARC10_NET in the ARCAD subsystem.

The first option is to use the ARC10_NET profile, which means you have to change the profile referenced inthe system definitions in the distribution menu. Your current profile (typically ARCAD_NET) has beencopied over with the other data about your site definitions. The newARC10_NET profile is created with nopassword so that must be set on the systems involved and setup on the site definitions. If you have securityon FTP then ARC10_NETmust be authorized to do all the FTP actions needed.

The second option is to continue to use the ARCAD_NET profile, which means that the USER specified inthe AMSGCMDE job description in ARC10_PRDmust be changed to ARCAD_NET. In this case the auto-start job entry on the ARCAD subsystem for the ARCAD job must be deleted as only one job can berunning under the ARCAD_NET profile. Then the ARCAD subsystem is restarted and you will have theARC10 job running under ARCAD_NET.

So to set the auto start jobs for v10

l RMVAJE SBSD(ARCAD_SYS/ARCAD) JOB(ARCAD)

l ADDAJE SBSD(ARCAD_SYS/ARCAD) JOB(ARC10) JOBD(ARC10_PRD/AMSGCMDE)

So to set the auto start jobs back for v8

l RMVAJE SBSD(ARCAD_SYS/ARCAD) JOB(ARC10)

l ADDAJE SBSD(ARCAD_SYS/ARCAD) JOB(ARCAD) JOBD(ARCAD_PRD/MSGCMDE)

In both of the above options you must check to see if the ARCAD subsystem has ARCAD_ENG defined as asystem library, which is common on remote systems.

l DSPSBSD SBSD(ARCAD_SYS/ARCAD) and take option 1 for operational attributes.

l CHGSBSD SBSD(ARCAD_SYS/ARCAD) SYSLIBLE(ARCAD_ENG) for v8

l CHGSBSD SBSD(ARCAD_SYS/ARCAD) SYSLIBLE(ARC10_ENG) for v10

Page 23 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 24: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | 2 Upgrade from v8 to v10.xx

Once you have completed your adjustments to the ARCAD subsystem for testing in v10 or putting it backto v8 it must be stopped and started again.

l ENDSBS ARCAD *IMMED

l STRSBS ARCAD_SYS/ARCAD

2.8 Final v10 update

When you have completed your testing with v10 you will upgrade your v8 installation directly so your v8installation will then be v10. You will have a single set of ARCAD libraries when complete.

2.8.1 Preparation

Preparation for the v8 upgrade is minimal. Be sure to backup ARCAD_ENG and ARCAD_PRD before doingthis and verify there are no locks on any of the ARCAD libraries. The ARCAD_ENG and ARCAD_PRDlibraries will be renamed during the live upgrade so any locks will prevent this. One scenario that canprevent the rename is if you have ARCAD_ENG in the QSYSLIBL system value. This will place ARCAD_ENGin the system portion of the LIBL of ALL JOBS. If the ARCAD_ENG library in on any active job’s LIBL itCANNOT BE RENAMED and the upgrade will fail. The only reasonable way to accomplish this is to changethe QSYSLIBL system value and IPL the system so all the system jobs are restarted.

2.8.2 Process

The process is to run the install again but leave the defaults in place to upgrade v8. Be sure to backupARCAD_ENG and ARCAD_PRD before doing this and verify there are no locks on any of the ARCADlibraries.

You will likely see a reference to the v10 testing instance as well. And then:

Page 24 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 25: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xx2 Upgrade from v8 to v10.xx | Upgrade Guide

During the running of this upgrade job you will receive additionalmessages from the batch job, so it shouldbemonitored. Answer yes to the prompts about migrating configuration data and converting macros. It’snormal to receive amessage that macros have failed to convert because that was the one of the reasons forcreating the v10 test instance - to fix thosemacros that would not convert under the standard process.

When this job completes you then want to copy any customized macros from the v10 testing copy to yournew upgraded copy of v10. You can accomplish this by entering the testing copy and in the list of macroscopying them to the ARCAD_PRD library. The date field should indicate which macros you had to edit. Ifany other remediation was necessary during the testing of v10, such as customized commands orprograms they should also be copied.

You can also execute themacro PRDNEWVER in case you have customization in that macro that needs tobe applied.

At this point, it’s also a good idea to remove any extra copies of ARCAD from the instance file in ARCAD_SYS. This file is read when you connect from the RDi plugins or ARCAD Client as well as by the cumulativeupgrade process and there is an opportunity to accidentally choose the wrong instance, like the v10 testinginstance. The name of the file is AARCINSF1 and the simplest way to do it is to use SQL:

To display any additional instances SELECT * FROM ARCAD_sys/aarcinsf1 WHERE INS_JCODE <> 'AD'.

To remove themDELETE FROM ARCAD_sys/aarcinsf1 WHERE INS_JCODE <> 'AD'.

Be sure to make a copy of the file first before updating it. You may also need to set your job CCSID to 37before using interactive SQL.

2.8.3 Post update

After the upgrade if you have copied the ARCAD command anywhere like QGPL be sure to delete the oldARCAD command and copy the newARCAD command to that location as the CPP has changed. Once youhave been using the newARCAD v10 upgraded instance and are comfortable you have not forgottenanything you can delete the ARC10_ENG, ARC10_NET and ARC10_PRD libraries.

Page 25 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 26: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | 2 Upgrade from v8 to v10.xx

Additionally if you have incorporated any ARCAD commands (but not macro commands) into menuoptions or utility programs, don’t forget to add the A prefix onto the command. For example, initializing ona version or environment in v8 INZCURENV becomes AINZCURENV in v10.

Be sure to test the upgraded version of ARCAD completely before deleting the ARC10_ENG and ARC10_PRD libraries and the backed up v8 libraries.

Page 26 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 27: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xx3 Upgrade from v8 to v9 | Upgrade Guide

3 Upgrade from v8 to v9

The only procedure to install ARCAD v9 is to use an ARCADMaster v9. Pre-requisites is to have an ARCADversion 08.09.xx or higher. If the customer has an older ARCAD version the first step is to upgrade to08.09.xx or the last ARCAD v8 version.

It’s recommended to execute the upgrade in three steps:

1. Execute the audit macro from v8 to v9. Transfer the savefile resulting to ARCAD Support.2. Install an ARCAD v9 (instance T9 for example) to test themigration database from v8 to v9. Test the

migration database using ACVTARCDBF command. Delete the T9 instance (Test instance).3. If themigration is ok and the analysis audit macro also, install ARCAD v9 in the AD instance (cancel

&replace).

Details of installation menu:

1. Installation in 2 parts:a. Interactive part with a selection screen for the installation configurationb. Batch part to actually run the installation process.

2. Choice of instance name to install3. Choice of iASP4. Choice of language (ENG/FRA) or both languages.

Improvement in ARCAD Installation - Cancel & Replace (Migration v8-> v9).

Adaptation of the product installation in ARCAD v9, when migrating from a v8 version (> 08.06.00):

1. Backup library name change (ARCxx_OLDP, ARCxx_OLDE or ARCxx_OLDF)2. Conversion of a v8 database (SBCS EBCDIC-) to a v9 database (Unicode).

However, this installation must be preceded by an audit prior to installation to ensure that themacros areconverted and special cases are detected.

3.1 Test of migration database from v8 to v9

ACVTARCDBF - Conversion of ARCAD v9 database in Unicode.

New command is responsible for migrating permanent files from an ARCAD database at level v8 (> =08.06.00) in SBCS, to an ARCAD database at level v9 in Unicode.

3.2 Pre-check before the real/live migration

You have installed a new instance v9 (without data transfer).

You can then simulate the process of migration from the libraries of the v8 instance (or a copy of it) to atarget library, created empty with any name you choose (just for the test).

This allows you to better plan the actual process of migration (knowing the necessary disk space andprocessing time).

Page 27 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com

Page 28: ARCAD 10.09.xx Upgrade Guide...NorthAmerica&LATAM EMEA(HQ) AsiaPacific 70MainStreet,Suite203 PeterboroughNH03458 USA 1-603-371-9074 1-800-676-4709(tollfree) sales-us@arcadsoftware.com

ARCAD v10.09.xxUpgrade Guide | 3 Upgrade from v8 to v9

It is possible to run thesemigration tests by reading data directly from v8 to convert libraries ARCxx_PRDand (ARCxx_ENG or ARCxx_FRA), from a v8 instance is used and updated. However, this may createinconsistencies in the results file.

3.3 Real/live migration

This command is run at the end of the installation process of an ARCAD instance for version v9. It cancelsand replaces the same instance in ARCAD v8.

During the process, status or log messages indicate:

l The number of files processed/to process (and files in error, if any)l The number of records processed/to process (and records in error, if any)

During the process, or after the end of the process, you can consult the conversions performed viacommand ADSPCVTLOG.

Here are the indications concerning the necessary disk-space:

l Test prior to migration without creating the logical filesl Size of target library = 1,6 x Original library size of ARCxx_PRD.l Test prior to migration when creating the logical files or for the Real/LiveMigrationl Size of target library = 2 x Original library size of ARCxx_PRD.

Page 28 / 28ARCAD • Copyright © 2018• All Rights reserved. • arcadsoftware.com