/* Copyright (c) Oracle Corporation 1996. All Rights Reserved */ /***************************************************************************** NAME pb60.vrf - V3 version analysis/product configuration script for Oracle Procedure Builder 6.0 DESCRIPTION This script checks dependencies and environment settings for the installation of Oracle Procedure Builder 6.0. MODIFIED MM-DD-YY Reason anmanian 01/25/99 Changes made to reflect Language Supplement files of Procedure Builder as an installable component. pgupta 10/01/97 Created with new external scripts. *****************************************************************************/ { SHARED_ORACLE_COMPLIANT = TRUE; reinstall_group = nls("reinstall_group","Version %%installed_version%% of %%product_label%% has already been installed and is up to date. Do you want to reinstall it?"); reinstall_group_help = nls("reinstall_group_help","You selected to install %%product_label%%, which is up to date. Unless a problem has occurred with %%product_label%%, there is no need to reinstall. Choose 'No' to skip the reinstallation, or choose 'Yes' if you want to reinstall %%product_label%%."); { doit = execute("%installer_home%%dir_separator%%operating_system%.vrf"); } [ 'UNBOUND_VARIABLE: { required_version = product_version(instver_product); temp = explode(required_version, "."); required_version = implode(list(first(temp),first(rest(temp)), first(rest(rest(temp))), first(rest(rest(rest(temp))))), "."); signal('FAILURE, instantiate(nls("instver_too_early1", "The version of the Installer currently running is %%installer_version%%. The installation you have chosen requires version %%required_version%% or later. Please run version %%required_version%% or later in order to perform this installation."))); } ] /* This FAILURE will cause 3.0.x.x installer to exit gracefully. */ /***************************************************************************************************** START MAIN LOGIC ******************************************************************************************************/ if (doit) { /**************************************************************** Display the generic "Welcome to Oracle Developer" billboard if not already displayed, and if Developer release *****************************************************************/ if(exists("%installer_home%%dir_separator%d2bb_01.bmp")) { if(DEVELOPER2000_RELEASE) { if(not(DEV2K_BB01)) { DEV2K_BB01 = TRUE; ui_graphics("%installer_home%%dir_separator%d2bb_01.bmp"); } } } /****************************************************************/ /***************************** Set the VRF-INS script ratchet ******************************/ vrf_ratchet = "6.0.8.10.0-366"; main_product_version = "6.0.5.34.1-228"; /*************************** Check Installed Version ***************************/ if(registered(product_name(current_product))) { check_installed_version = registry_version(registration(product_name(current_product))); if(earlier_version(check_installed_version, main_product_version)) { information_dialog(instantiate(product_upgrade_required), instantiate(product_upgrade_contents), instantiate(product_upgrade_help)); refresh_map_file = FALSE; doit = FALSE; return(0); } } else { information_dialog(instantiate(main_product_required), instantiate(main_product_contents), instantiate(main_product_help)); refresh_map_file = FALSE; doit = FALSE; signal('FAILURE, instantiate(halt_installation)); } /************************************************ Create a label with the product name, and version *************************************************/ EXECUTE_SCRIPT = "CREATE_LABEL"; execute("%installer_home%%dir_separator%d2kr2vrf.usr"); /************************************************/ /***************************** Set the Product Name Variables ******************************/ dependency_list = list(w32tutil60, w32gui60, w32rsf80); /*removed for patch-3 w32pbl60 from this list */ verify_dependency_list = list(w32tutil60, w32gui60, w32rsf80); /*removed for patch-3 w32pbl60 from this list */ install_dependency_list = list(); if(not(registered("w32oin60"))) { information_dialog(instantiate(oin_product_required), instantiate(oin_product_contents), instantiate(oin_product_help)); signal('FAILURE, instantiate(halt_installation)); } /* If the language is not English then only test if the lang dependencies are already installed from the production version. Added in Patch-3 */ nls_lang = translate("nls_lang",ora_config); if (not(nls_lang == "AMERICAN_AMERICA.WE8ISO8859P1")) { if(not(registered("w32pbl60"))) { information_dialog(instantiate(pbl_product_required), instantiate(pbl_product_contents), instantiate(pbl_product_help)); signal('FAILURE, instantiate(halt_installation)); } } /***************Till here ****************/ /*****************************/ /********************************************************************** parent_in_control = TRUE ==> the complete product needs to be installed parent_in_control = FALSE ==> PARENT called by one of the components ***********************************************************************/ parent_in_control = TRUE; if(not(member(selected_products, current_product))) { child_products = all_child_products(current_product); while(not(empty(child_products))) { next_child = first(child_products); child_products = rest(child_products); if(member(products_for_installation, next_child)) /* PARENT called by one of the components, no need to add PARENT to the list of products to be installed */ parent_in_control = FALSE; } } /**********************************************************************/ /************************* Initialize total size of files **************************/ total_sum = 0; /*********************************************** If PARENT is explicitly called for installation, verify all the component products ************************************************/ if(parent_in_control) { EXECUTE_SCRIPT = "VERIFY_COMPONENTS"; total_sum = total_sum + execute("%installer_home%%dir_separator%d2kr2vrf.usr"); } else { child_products = all_child_products(current_product); selected_components_list = list(); size_component = 0; while(not(empty(child_products))) { next_child = first(child_products); if(member(selected_products, next_child)) { if(not(member(products_for_installation, next_child))) { size_component = verify(next_child); if(size_component != 0) { add(selected_components_list, next_child); total_sum = total_sum + size_component; } } } child_products = rest(child_products); } } /***********************************************/ /****************** Verify Dependencies *******************/ EXECUTE_SCRIPT = "VERIFY_DEPENDENCIES"; total_sum = total_sum + execute("%installer_home%%dir_separator%d2kr2vrf.usr"); /******************/ total_sum = total_sum + sum(deinst); return(total_sum); /*************************/ } else { refresh_map_file = FALSE; return(0); } }