10 Ways YAB Can Transform Your Life
Discover how Your Application Builder (YAB) can revolutionize your experience with QAD and improve your daily operations. From easy installation processes to advanced configurations, YAB offers a wide range of benefits that can elevate your efficiency and productivity in using QAD EE 2016/2017.
Download Presentation
Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
E N D
Presentation Transcript
10 WAYS YAB WILL IMPROVE YOUR LIFE Mark Clevenger QAD MWUG, Oct 2017
Mark Clevenger QAD employee for 4 years Worked for EDS/HP supporting QAD (MFG/PRO SP 9 and eB2) and Progress First YAB-based install in Summer 2016 Taught several YAB-base Admin classes at QAD Corp and on-premise
yab background YAB : Your Application Builder Replaces QDT, which replaced MFG/UTIL Once installed, always use configuration.properties file to make changes to the QAD EE installation. Located in <INSTALL-DIR>/build/configuration/ Yab log is <INSTALL-DIR>/build/logs/yab.log
#1 Install is Easy
#1 Install is Easy Mount install media cd <INSTALL MEDIA> ./install Answer these questions: Enter the location where Enterprise Edition 2016 should be installed: /dr01/qadapps Enter the location of Progress OpenEdge: /progress/dlc116 Enter the location of Java 1.7: /usr/java/latest
#1 Install is Easy Install Questions (continued): Enter the OS account that should be used to execute internal application functions. mfg Enter the password of the OS account that should be used to execute internal application functions. mfgpwd Enter a (comma-delimited) list of languages to install. Available: us,ch,cs,cz,du,fr,ge,it,jp,ko,ls,pl,po,tw us
#1 Install is Easy Final Question Choose the features to install: [X] 1 - Enterprise Edition [X] 2 - QXtend [ ] 3 - Demo Data When complete, run client-us.sh and enter License codes
#2 Maybe not that easy
#2 Maybe not that easy Where are the databases located? How are the databases structured? What are the appserver names? What are the database startup parameters? Use the base install with Demo Data to show your implementation team how QAD EE 2016/2017 works
#2 Maybe not that easy Create .st files to fit your requirements Edit install.conf file: Set values for questions from Item #1 Set values for database directories and .st files Set values for any Open Edge startup parameters Set values for tomcat Optionally add settings for custom database(s) and custom appservers, if know at time of install (can be added later)
#2 Maybe not that easy Install command with configuration file: cd /dr01/installs/image ./install install-conf:/home/mfg/install.conf
#3 Backups made simple
#3 Backups made simple yab database-backup -tag parameter saves backup files in directory with name of tag Configuration settings: dbbackup.dir Location of backups dbbackup.timestamp When true tag is a timestamp dbbackup.timestampmax Maximum number of timestamped backup tags to allow dbbackup.compress When true backups are GZIP ed (this is the default setting)
#3 Backups made simple Add to configuration.properties: dbbackup.dir=/dr01/backups dbbackup.timestamp=true dbbackup.timestampmax=7 dbbackup.compress=true
#3 Backups made simple > yab database-backup tag:Initial database-backup (8 tasks) --------------------------------------------------------------------------- -- 1/8 database-qadadm-backup OK (7.231 s) 2/8 database-qadarc-backup OK (1.177 s) 3/8 database-qadcpl-backup OK (7.841 s) 4/8 database-qaddb-backup OK (12.627 s) 5/8 database-qadhlp-backup OK (9.900 s) 6/8 database-qadrcode-backup OK (1.199 s) 7/8 database-qxevents-backup OK (2.067 s) 8/8 database-qxodb-backup OK (5.531 s) --------------------------------------------------------------------------- --
#3 Backups made simple Related commands yab database-restore (use tag to identify a specific backup, will otherwise use default as the tab) yab database-backup-list yab database-qaddb-backup
#4 Patch and Add-on installs
#4 Patch and Add-on installs yab install <INSTALL-MEDIA> EXAMPLES: yab install /home/mfg/qad-ee-fin- patch-2016.0.14.0.zip yab install /home/mfg/integrated- customization-toolkit-yab-on- premise-4.1.22.0.zip
#5 Adding Custom Databases
#5 Adding Custom Databases Create structure (custom.st) file Create schema (custom.df) file
#5 Custom Databases Make entries in configuration.properties: # @extends db._base db.custom= db.custom.physicalname=custom db.custom.structurefile=/home/mfg/CUSTOMDB/custom.st # @extends dbserver._base dbserver.custom= dbserver.custom.name=db- ${db.custom.physicalname} dbserver.custom.databasename=${db.custom.dir}/$ {db.custom.physicalname}
#5 Custom Databases Make entries in configuration.properties (cont d): bootstrap.default.databases=db.custom # @append code._base.databases=db.custom schema.customization-custom.database=db.custom schema.customization- custom.file=/home/mfg/CUSTOMDB/custom.df
#5 Custom Databases Update the environment yab update update (327 tasks) ----------------------------------------------------------------------------- 1/327 qxtend-stage SKIPPED (0.004 s) 2/327 adminserver-update OK (0.012 s) 3/327 adminserver-plugins-configure SKIPPED (0.014 s) 4/327 adminserver-script OK (0.080 s) 5/327 nameserver-script OK (0.044 s) 6/327 database-script OK (0.358 s) 325/327 metadata-fincore-update SKIPPED (0.002 s) 326/327 metadata-mfgcoreplus-update SKIPPED (0.002 s) 327/327 qxtend-application-id-update OK (0.071 s) ----------------------------------------------------------------------------- BUILD SUCCESSFUL (10:29 m)
#6 After Image Setup
#6 After Image Setup Create addai.st with ai extents defined Use prostrct add or prostrct addonline to add ai extents Back up datbases yab database-backup Enable AI yab database-ai-enable
#6 After Image Setup -bash-4.1# yab database-ai-enable database-ai-enable (9 tasks) ----------------------------------------------------------------------------- 1/9 database-custom-ai-enable OK (2.610 s) 2/9 database-qadadm-ai-enable SKIPPED (0.033 s) 3/9 database-qadarc-ai-enable SKIPPED (0.038 s) 4/9 database-qadcpl-ai-enable SKIPPED (0.038 s) 5/9 database-qaddb-ai-enable OK (10.699 s) 6/9 database-qadhlp-ai-enable SKIPPED (0.038 s) 7/9 database-qadrcode-ai-enable SKIPPED (0.042 s) 8/9 database-qxevents-ai-enable SKIPPED (0.038 s) 9/9 database-qxodb-ai-enable SKIPPED (0.036 s) ----------------------------------------------------------------------------- BUILD SUCCESSFUL (14.896 s)
#6 After Image Setup Autoarchive and AI Writer in configuration.properties: dbserver.qaddb.archivaldir=/dr01/ai_arch dbserver.qaddb.archivalinterval=600 dbserver.qaddb.afterimageprocess=true Repeat for each database as required yab stop yab database-ai-archiver-enable yab update At this point the archiving will begin
#7 Compiling Custom Code
#7 Compiling Custom Code Create source directories mkdir -p <INSTALL_DIR>/customizations/mfg/default/src/us/xx Copy source files to above directory Compile programs yab v code-mfg-customizations-update -v prints log messages to screen
#7 Compiling Custom Code Multiple Custom Code Directories In addition to <INSTALL_DIR>/customizations/mfg/default/src/us/xx You can create <INSTALL_DIR>/customizations/mfg/test/src/us/xx <INSTALL_DIR>/customizations/mfg/dev/src/us/xx <INSTALL_DIR>/customizations/mfg/mark1/src/us/xx yab reconfigure Compile : yab code-mfg-customizations-customizations-test-update yab code-mfg-customizations-customizations-dev-update yab code-mfg-customizations-customizations-mark1-update
#8 YAB is customizable
#8 YAB is customizable Simple example Text of greeting.sh: #!/bin/sh # echo echo "Current Date and Time is: `date`" echo echo "Running from $1" echo
#8 YAB is customizable To incorporate the script into yab, make these changes to configuration.properties: process.greeting.id=greeting process.greeting.args=/dr01/scripts/greeting.sh ${appdir} process.greeting.impl=exec process.greeting.console=true
#8 YAB is customizable TEST In YAB: -bash-4.1# yab greeting greeting (1 task) --------------------------------------------------------------------------- 1/1 greeting Current Date and Time is: Thu Sep 28 14:31:37 PDT 2017 Running from /dr01/qadapps OK (0.025 s) --------------------------------------------------------------------------- BUILD SUCCESSFUL (4.439 s)
#8 YAB is customizable Link to other process add anchor in configuration.properties: process.t1.id=status process.t1.anchorbefore=greeting
#8 YAB is customizable Results -bash-4.1# yab status status (32 tasks) ----------------------------------------------------------------------------- 1/32 greeting Current Date and Time is: Fri Sep 29 07:34:56 PDT 2017 Running from /dr01/qadapps OK (0.012 s) 2/32 adminserver-status STARTED (0.866 s) 3/32 nameserver-status STARTED (0.414 s) 4/32 database-custom-status STARTED (0.021 s) 5/32 database-qadadm-status STARTED (0.011 s) 6/32 database-qaddb-status STARTED (0.011 s) 7/32 database-qadhlp-status STARTED (0.011 s) 8/32 database-qxevents-status STARTED (0.011 s)
#8 YAB is customizable Some YAB processes can be ran in parallel Example for start: process.start.id=start process.start.parallel=true threads=4
#9 Multiple Environments on one server
#9 Multiple Environments on one server Not encouraged Requires OPEN EDGE install for each environment Set fathomEnabled=false in $DLC/fathom.init.params
#9 Multiple Environments on one server Key Items to change in install.conf install-instance openedge.dir environment.id environment.name ports dynamic-ports Database name and/or location Appserver names
#9 Multiple Environments on one server Ports and Dynamic Ports setting # A range of TCP/IP ports to allocate to services that require a stable port. ## Once a port is allocated to a service that service will continue to be bound # to the port. # Syntax: # ports=[LOWER BOUND (inclusive)]-[UPPER BOUND (exclusive)] ports=32000-32100 # A range of TCP/IP ports to allocate to services that require a dynamic port. # The service may be allocated a different port in different sessions. # Syntax: # ports=[LOWER BOUND (inclusive)]-[UPPER BOUND (exclusive)] dynamic-ports=31026-32000
#10 Key commands you need to know
#10 Key commands you need to know yab help yab help <PROCESS> yab help dbbackup yab config yab config db.* yab config tomcat.* yab config *.port
#10 Key commands you need to know yab start Starts everything yab stop Stops everything yab restart Stops and starts everything yab status displays status of all processes
#10 Key commands you need to know yab update Applies changes from configuration.properties Stops and starts the environment yab reconfigure Regenerates scripts and .xml files, etc Does not stop and start the environment yab shell Interactive command shell to run yab commands
#10 Key commands you need to know yab info Displays release information on components
#10 Key commands you need to know -bash-4.1# yab info INSTANCE /dr01/qadapps/qea MODULES archiving 1.0.0.78 local assistance-help-ee base-api dde-ant 2.2.0.1 local dde-build 2.2.0.49 local yab-install 1.3.0.28 local yab-qra yab-qxtend yab-test 1.3.0.5 local 2016.0.0.2 local 1.1.0.79 local 1.3.0.25 local 1.3.0.27 local * To print more detailed information use (-more). BUILD SUCCESSFUL (1.786 s)
#10 Key commands you need to know yab env-info Displays connection information for .NET UI install and Qxtend Servlet
#10 Key commands you need to know -bash-4.1# yab env-info Client QAD Home http://vmlinux.qad.com:22000/qadhome .NET UI http://vmlinux.qad.com:22000/qadui QXtend Inbound http://vmlinux.qad.com:22095/qxi Outbound http://vmlinux.qad.com:22095/qxo * To print more detailed information use (-more). BUILD SUCCESSFUL (0.625 s)
#10 Key commands you need to know yab system-process-list List sub-processes