Information Systems:Test or Development Environment
Test or Development Environment
The production company in ASW is ‘VA’ for ‘Validation’. The test company is ‘PL’ for ‘Pilot’. Those names aren’t particularly apt descriptions, but that’s the way it worked out. The conversion programs were all tested in ‘validation’ – by the time they were all working as well as we could get them, and all the parameter files were just right, we didn’t want to start changing company codes and risk breaking things.
Library List
In order to test new programs or changes, we need an environment that is separate from production. That means duplicate copies of all data libraries, and program test libraries that are not in the production library list.
The operating system used to allow only 25 libraries in the user portion of the list (it now allows 250). Because we are running an older version, the ASW program to build the library list is restricted to 25 user libraries. That is fine for production, but when the development libraries are added, we go over, so two libraries are omitted. It’s okay that UNIPHARMIT is missing, as it doesn’t usually affect test – if it does we will have to work around it. Because we cannot have WEBPRDP (production web programs) in the list, all production programs must also be in WEBDEVP.
Remember this. The usual process is to delete programs from the test libraries when they are moved to production. Except for programs in WEBDEVP - leave them!
The following compares the library lists for ‘production’ and ‘development’ (sometimes we call this ‘test’; ASW calls it ‘quality control’). Most of the libraries are used in both environments; they contain programs or objects that are not changed. Data libraries are never used by both environments; each uses its own separate set of data files. Programs being tested are in separate libraries that are never used by production. They are in the test library list before the production program libraries so that they are found first.
This is the system portion of the library list. It is a system value, and is the same for all users.
UWDQSYS prod dev uniPharm - Custom - System Objects QSYS prod dev System Library QSYS2 prod dev System Library for CPI's QHLPSYS prod dev QUSRSYS prod dev System Library for Users QTEMP prod dev
Next is the ASW data file library; VA for validation (production), and PL for pilot (test).
UP1480BFVA prod ASW PRODUCTION DATA FILE LIBRARY UP1480BFPL dev
The next library is message files, objects need to do 'ASW Compiles', etc; and is the same for both environments.
UP1480BS prod dev ASW system objects for environment UP14
These are some customized objects; for example menus.
XX1480BQ dev XX1480BP prod dev ASW rel XX1:480B UWD Extensions (non AS objects)
These are modified ASW programs, and custom programs that use ASW files. 'Q' is quality control, and 'P' is production. As the production program library is in the list, only programs currently being tested need to be in XX2480BP.
XX2480BQ dev ASW rel XX2:480B quality control librar XX2480BP prod dev ASW rel XX2:480B object library
This is a quality control library that we have not used.
UP1480BQ dev ASW rel UP1:480B quality control library
These are program libraries, so can be in both environments. Notice that each release of ASW has the modified programs in a separate library.
UP1480BP prod dev Aldon/CMS IBS/ASW450/UP1480B (PDN) U480BP prod dev Aldon/CMS IBS/ASW450/U480B (PDN) U480AP prod dev Aldon/CMS IBS/ASW450/U480A (PDN) CVT454AP prod dev ASW rel A:454A Appl CVT object library A454AP prod dev ASW rel A:454A object library A453AP prod dev ASW rel A:453A object library A452AP prod dev ASW rel A:452A object library A450AP prod dev ASW rel A:450A object library QGPL prod dev General Purpose Library
Each environment has its own version of these data libraries, for utilities, and for the extensions. RCSUTILPRD contains programs, but as it also contains data files, it cannot be used in test. All the programs, as well as the data files, have to be in RCSUTILVOL.
RCSUTILPRD prod RCS -- Utility Objects and Data -- Prod RCSUTILVOL dev RCS -- Utility Objects and Data UWDASWPRDD prod UWD -- Extensions - VA – Data UWDASWVOLD dev UWD -- Extensions - PL – Data
These are programs for the extensions. As the production program library is in the list, only programs currently being tested need to be in quality control.
UWDASWQUAP dev UWD -- Extensions - Quality Ctl - Objec UWDASWPRDP prod dev UWD -- Extensions - Production -- Objec
This is a program library, so can be used by both environments.
TLABARCODE prod dev T.L. Ashford & Associates Barcode400
Each environment has its own version of these data libraries that are used by Web Orders and InfoNet.
WEBPRDD prod Web -- Data – Production WEBDEVD dev Web -- Data
These are programs for the Web Orders and InfoNet. As this older version of ASW will only put 25 entries in the library list, WEBPRDP cannot be included for test. Therefore all programs and objects must be included in WEBDEVP.
WEBDEVP dev Web -- Programs -- Development WEBPRDP prod Web -- Programs -- Production
UWDUTILPRD contains programs, but as it also contains data files, it cannot be used in test. All the programs, as well as the data files, have to be in UWDUTILVOL.
UWDUTILPRD prod UWD -- Extensions -- Common Utilities – UWDUTILVOL dev Volume Testing Utilities
As this older version of ASW will only put 25 entries in the library list, UNIPHARMIT cannot be included for test.
UNIPHARMIT prod UniPHARM IT Tools -- Includes Source
Refresh Data
Eventually the data in ‘PL’ either gets so far out of date or corrupted by testing, that we need to get a fresh copy from production. In order to copy the production data libraries from disk, all users would have to be off the system, and all applications would have to be ended (like when the overnight backups are being done). To get around this, we refresh ‘PL’ from the temporary back up tape. This is tape 999999 which is written to every night before the end of day processing is done, and which is never removed from the tape library.
Make sure the development data libraries are not being used. To do that, key in WRKOBJLCK OBJ(UP1480BFPL) OBJTYPE(*LIB) and press enter.
Work with Object Locks
System: BART
Object . . . . : UP1480BFPL Type . . . . . : *LIB
Library . . : QSYS ASP device . . : *SYSBAS
Type options, press Enter.
4=End job 5=Work with job 8=Work with job locks
Opt Job User Lock Status Scope Thread
_ AMTRDR_PLA ASW4OWN *SHRRD HELD *JOB
_ AMTRDR_PLT ASW4OWN *SHRRD HELD *JOB
_ AMTRDR_PLT ASW4OWN *SHRRD HELD *JOB
_ DPRQ1_PL ASW4OWN *SHRRD HELD *JOB
_ DPRQ2_PL ASW4OWN *SHRRD HELD *JOB
_ DPRQ3_PL ASW4OWN *SHRRD HELD *JOB
_ ORDFLOW_PL ASW4OWN *SHRRD HELD *JOB
_ WEBTEST QTMHHTTP *SHRRD HELD *JOB
F3=Exit F5=Refresh F12=Cancel
This library is being used by ASW direct jobs for PL (test), and by the test Web Server. These can all be cancelled; unless of course there is testing currently going on. I normally refresh the test libraries on Saturday, so don’t have this issue.
From an ASW command line, in the production environment, key in SBMJOB and press F4 to prompt.
Submit Job (SBMJOB)
Type choices, press Enter.
Command to run . . . . . . . . . CALL BLDTEST______________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
_____________________________________________________________________________________
Job name . . . . . . . . . . . . *JOBD Name, *JOBD
Job description . . . . . . . . *USRPRF Name, *USRPRF
Library . . . . . . . . . . . Name, *LIBL, *CURLIB
Job queue . . . . . . . . . . . QS36EVOKE Name, *JOBD
Library . . . . . . . . . . . Name, *LIBL, *CURLIB
Job priority (on JOBQ) . . . . . *JOBD 1-9, *JOBD
Output priority (on OUTQ) . . . *JOBD 1-9, *JOBD
Print device . . . . . . . . . . *CURRENT Name, *CURRENT, *USRPRF...
F3=Exit F4=Prompt F5=Refresh F10=Additional parameters F12=Cancel
F13=How to use this display F24=More keys
Key in ‘CALL BLDTEST’ and change the job queue ‘QS36EVOKE’ (this means that this program will not interfere with production jobs).
This must run in production not test, as the test libraries will be deleted. Also because the programs used are in the library UNIPHARMIT, which isn’t in the library list for development.
Testing Programs
FTP Sales Orders and/or FTP Invoicing
This is not necessarily to test our programming, but to test that the store’s Point of Sale system is doing this correctly.
Setup to Receive Orders and Send Invoices Via FTP
There is more involved than this; the store has to be set up with access to the FTP server, and directories have to be build. But I don’t know how to do that.
Go to Unity / Start uniPHARM Extensions / PL Company (VOLUME Testing) / Work with UWD IT Tools / FTP Connections / Sales Orders FTP Configuration.
WORK WITH DATA IN A FILE Mode . . . . : CHANGE
Format . . . . : AIINTFR File . . . . : AIINTFP
Name: 12305
Description: Longevity
FTP Server: mail.unipharm.com
FTP User ID: ftporders
FTP Password: visionit525
FTP Directory: 12305R/orders
FTP Archive Directory: archive
M=Move D=Delete N=None: M
Transmission Source: FTP
Customer # Type: UWD
Ext 1: X12
Ext 2: ___
Ext 3: ___
F3=Exit F5=Refresh F6=Select format
F9=Insert F10=Entry F11=Change
‘Name’ and ‘Description’ are just used to make it easier for us to identify the store sending the order (the program gets the store number from within the order file itself). Make sure that all of the ‘FTP Directories’ in test are NOT used in production – otherwise real orders will be loaded into test instead of production! The three extension types are very important – they tell program AIRUP020 (Post incoming FTP orders into IOP) the file structure of the incoming order. Currently, we are only receiving X12 orders from Kroll (extension KRO); a new one has been added for miscellaneous X12 orders (extension X12).
Select option Invoice FTP Configuration.
WORK WITH DATA IN A FILE Mode . . . . : CHANGE
Format . . . . : INVFTPR File . . . . : INVFTPP
Partner: 12305
Order Source: __________
Description: LONGEVITY COMPOUNDING PHARMACY
FTP Server: ftp.unipharm.com
FTP User ID: ftporders
FTP Password: visionit525
FTP Directory: 12305R/invoices
F3=Exit F5=Refresh F6=Select format
F9=Insert F10=Entry F11=Change
Add this record.
Get Orders from FTP Server
Go to Unity / Start uniPHARM Extensions / PL Company (VOLUME Testing) / UWD Extensions / EDI – IMS, IMP, etc / FTP =-- FTP Order Retrieval.
3/10/15 13:06:13 AIP Orders Status AIRIU010/CTL
uniPHARM --Volume test
Monitor status: Not running
Last activity: 03/10/15 12:38:48 Poll interval: 60 minutes
_______ ___ <-- Order type - CAN/DAT/KRL
Date Time Type File Renamed Recs
3/10/15 12:38 PM KRO ftp0075391b.kro FTP0075392 1
3/10/15 12:34 PM Simplicity ftp0075390b.txt FTP0075391 0
3/10/15 12:07 PM Simplicity ftp0075388b.txt FTP0075390 0
3/04/15 11:37 AM Simplicity ftp0275385.txt FTP0075389 0
3/04/15 11:35 AM Simplicity ftp0175387.txt FTP0075388 0
3/04/15 11:28 AM Simplicity order030215030630.txt FTP0075387 0
3/04/15 11:28 AM Simplicity order030215015252.txt FTP0075386 0
3/02/15 11:09 AM Simplicity order022715113636.txt FTP0075385 0
1/16/15 7:04 PM KRO 1836377.kro FTP0075384 3
1/16/15 7:00 PM KRO 618124384.kro FTP0075383 1
1/16/15 5:50 PM KRO 618124383.kro FTP0075382
F3=Exit F5=Refresh F7=Start Monitor
F13=Config F14=Interfaces F15=AIP Messages F16=W/W Mon Job F12=Exit
This shows the status of the FTP interface (as this is test, it is ‘Not running’), and a list of the last sales orders received.
Press F7 to start the monitor, and process orders from configured folders on the FTP server. The status will change to ‘Running’. Keep pressing F5 to refresh, until the status is ‘Running – waiting for next poll’. Then press F8 to end, and F3 to exit.
Go to IOP -- ASW Order Posting Fns / IOP -- List of Order Headers. You should see the order you just loaded, and it should be at status 60 (posted to ASW).
Go into ASW (test company), and look at sales orders. This order should be at status 30 (dropped for picking).
Pick Order
Go to Unity / Start uniPHARM Extensions / PL Company (VOLUME Testing) / Warehouse Menu / Picking and shipping menu / Pick list Status.
3/10/15 15:56:49 uniPHARM --Volume test PLRIQ040/LISTCTL
PLZ - Pick List Status VOLUME 1.00
Display Order Field Test Value
MAIN By Priority, Sched Dte, S __________ ____ _________________
Limit to: AND __________ ____ _________________
Date Range AND __________ ____ _________________
CU MAR 10 15 12:01 AM MAR 10 15 3:56 PM
Carr Stat Zone Group Del Locn Order Handler Customer Whs Item #
___ __ __________ __________ _______ __________ ___________ ___ ________
DT=Details
SD=Shipping Documents S #
Carr Zone Group Del Locn Schedule Pr h Lin STAT DESC CUST DESC
DT ATL HHCMEZZ INTOWN MAR 10 15 1:32 PM 50 Y 1 NOT START LONGEVITY
* END *
F21=Srcn Reset
F3=Exit F5=Refresh F8=More Info F12=Previous F24=Srcn Save
Find the order (it is probably the only one that will show), and use option DT.
3/10/15 16:00:18 uniPHARM --Volume test PLRIU045/LISTCTL
PLZ - Pick List Details VOLUME 1.00
Pick List Batch Consol PL# Customer
3583672 12305 LONGEVITY COMPOUNDING PHARMACY
Warehouse Zone Group Order No
MAI HHCMEZZ 3254737 711 COLUMBIA ST
Del Locn Share? # Lines Invoice NEW WESTMINSTER
INTOWN Y 1 BC V3M 1B2
Order Date Cutoff
Priority Scheduled Carrier TUE MAR 10 2015 TUE 1:05 PM
01 ATL Atlas Courier Pickup Date Added
Scheduled Pickup Status 1:32 PM MAR 10 15 12:38 PM
MAR 10 15 1:32 PM NOT STARTED Atlas Courier
O/H P
Line Zone/Locn Qty UOM Item Desription Size Qty k
10 H1 F133 2 BX COLOPLAST 0509 N
**END**
F3=Exit
F5=Refresh F9=Show UPC F10=Show Item # F12=Previous
Change the priority to ‘01’, so that you can pick this order – or at least go through the motions.
Go into ASW. Change to test, by keying 88 enter, then PL enter, enter. You can tell that you are in the test company , because *PL/480B* is in the upper left corner of the display. Key in GO RFH and press enter. Select option 4 – Process R/F instructions.
Hnd.. SHEILAV Select RF activity USRD8001N Res.. 99 SHEILAV Whs MAI _ Picking _ Packing _ PO reception _ Receiving put away _ Replenishment _ Cycle count _ Location move _ Inventory transaction _ Reprint RF documents _ Get new zone group _ Inventory movement _ Shipping F8=Select resource
Go into ‘Get new zone group’, and select the one for the pick list; in this case, HHCMEZZ.
Go into ‘Picking’, and press F6 to get the next pick list – which should be for this test order, as the priority is 01. Select it, and press enter.
RFHD8021N
Loc: H1 F133 PCK 50/BX
Ord 2.00 EA
Rem 2.00 EA
00336610 COLOPLAST 0509
-PAR/LIC PICK- H1-F133
Loc: H1 F133
Itm: 00336610
Qty: 2
Lic: 30000111
F9=Pick zero F10=Pick partial
You will have to key in the location, item number, and quantity – which is shown at the top of the screen, so just copy it. Then key in a number starting with ‘3’ for the license.
This will be repeated for every line on the order.
Hnd: SHEILAV
Whse: MAI
Func: Print box labels
-----------------------
Enter number of box
labels required:
1
Press Enter
Press enter. The following screens will be repeated for all documents printed for this pick list. Again, key in the number displayed at the top of the screen.
Hnd: SHEILAV
Whse: MAI HHCMEZZ
Func: Conf Box Labels
-----------------------
Box labels should
be on the printer at
the packing station.
The bar code will
read 3583672
Scan the bar code on
the label now:
3583672
Press Enter. F7=Reprint
Hnd: SHEILAV
Whse: MAI HHCMEZZ
Func: Confirm Invoice
-----------------------
Invoice 7758860 should
be on the printer at
the packing station.
Scan the bar code on
the invoice now:
7758860
Press Enter. F7=Reprint
Hnd: SHEILAV
Whse: MAI HHCMEZZ
Func: Conf Price Tkts
-----------------------
Price tickets should
be on the printer at
the packing station.
The bar code will
read 3583672
Scan the bar code on
the price ticket now:
3583672
Press Enter. F7=Reprint
Look on the FTP server; the invoice should be there.