def add_safety(target_user, a): browser.implicitly_wait(10) browser.get( 'https://sysco.sprocketcmms.com/Default.aspx?screen=People&SSF=-134') search_box = browser.find_element_by_link_text('Search') search_box.click() user_name_field = browser.find_element_by_id('UserName_txt0') user_name_field.clear() user_name_field.send_keys(target_user) start_search = browser.find_element_by_id('SearchScreenBtnSearch') start_search.click() browser.find_element_by_link_text(target_user).click() time.sleep(3) if int(a) == 1: print('Flagging OverrideWorkDay') ignore_wdt = browser.find_element_by_id('StdSf_62_OverrideWorkDay_chk') ignore_wdt.click() groups_tab = browser.find_element_by_id('liGroups') time.sleep(3) groups_tab.click() add_group = browser.find_element_by_id('txt_Group') add_group.send_keys('Data-FSY') submit_group = browser.find_element_by_xpath( '//*[@id="divGroups"]/table/tbody/tr[1]/td[2]/input[2]') submit_group.click() time.sleep(1) save_exit = browser.find_element_by_link_text('Save') save_exit.click() time.sleep(3) browser.switch_to.alert.accept()
def update_item_price( target_agreement, item_id, item_price, ): browser.get( 'https://sysco.sprocketcmms.com/Default.aspx?screen=Vendor%20Purchase%20Agreements' ) parent_vpa = browser.find_element_by_link_text(target_agreement) parent_vpa.click() items_tab = browser.find_element_by_id('liItems') items_tab.click() search_id = browser.find_element_by_id( 'ajaxReport_itemsReport_promptsdivContainer_0_input') search_id.clear() search_id.send_keys(item_id) id_search_button = browser.find_element_by_xpath( '/html/body/form/div[3]/div[3]/div[2]/div/div[2]/div/div[1]/input') id_search_button.click() time.sleep(1) get_edit = browser.find_element_by_link_text('Edit') get_edit.click() price_field = browser.find_element_by_id('StdSf581_Price_txt') price_field.clear() price_field.send_keys(item_price) save_button = browser.find_element_by_xpath( '/html/body/form/div[3]/div[3]/div[3]/div[3]/input[1]') save_button.click() time.sleep(1) print('VPA {} item {} price updated to {}'.format(target_agreement, item_id, item_price))
def update_record(inv_id, oem_num, sds_bol): browser.find_element_by_link_text(inv_id).click() time.sleep(1) edit_button = browser.find_element_by_id('btnEditRequest') edit_button.click() oem_field = browser.find_element_by_id('StdSf12_OEMNumber_txt') oem_field.clear() oem_field.send_keys(oem_num) select1 = Select(browser.find_element_by_id('StdSf12_SDS_txt')) select1.select_by_visible_text(sds_bol)
def clear_oos_field(unit): unit_link = browser.find_element_by_link_text(unit) unit_link.click() time.sleep(1) date_oos_field = browser.find_element_by_id( 'StdSf_70_DateOutOfService_txt') date_oos_field.clear() save_change = browser.find_element_by_link_text('Save') save_change.click() time.sleep(3) exit_record = browser.find_element_by_link_text('Exit') exit_record.click() time.sleep(3)
def create_vpa(y, y_description, y_vendor_id, y_date, y_expire, PreferredVendor=1): browser.get('https://sysco.sprocketcmms.com/Default.aspx?screen=Vendor%20Purchase%20Agreements') vpa_new_button = browser.find_element_by_xpath('//*[@id="btnNewLink"]') time.sleep(1) vpa_new_button.click() name_field = browser.find_element_by_id('StdSf580_Name_txt') name_field.send_keys(y) description_field = browser.find_element_by_id('StdSf580_Description_txt') description_field.send_keys(y_description) vendor_id_field = browser.find_element_by_id('StdSf580_VendorID_txt') vendor_id_field.send_keys(y_vendor_id) start_date_field = browser.find_element_by_id('StdSf580_StartDate_txt') start_date_field.send_keys(y_date) end_date_field = browser.find_element_by_id('StdSf580_EndDate_txt') end_date_field.send_keys(y_expire) preferred_vendor_check = browser.find_element_by_id('StdSf580_PreferredVendor_chk') if PreferredVendor == 1: preferred_vendor_check.click() time.sleep(1) browser.find_element_by_link_text('Save').click() time.sleep(1) browser.find_element_by_link_text('Exit').click() else: browser.find_element_by_link_text('Save').click() time.sleep(1) browser.find_element_by_link_text('Exit').click()
def empty_sch(): # Create Empty Sch empty_sch_tab = browser.find_element_by_id('liSchedules') empty_sch_tab.click() time.sleep(1) browser.find_element_by_id('AddNewProjectPlanLink').click() browser.find_element_by_id('schedule_txtName').clear() browser.find_element_by_id('schedule_txtName').send_keys('Test Update') browser.find_element_by_id('schedule_txtStartDate').send_keys('01012099') daily3 = Select(browser.find_element_by_id('ddlRecurrenceType')) daily3.select_by_visible_text('Does not repeat') lead_days = browser.find_element_by_id('schedule_txtLeadDays') lead_days.clear() lead_days.send_keys('0') empty_save_sch = save_sch3 = browser.find_element_by_xpath( '/html/body/form/div[3]/div[3]/div[5]/div[1]/table/tbody/tr[5]/td[2]/input' ) empty_save_sch.click() time.sleep(1) # Use Empty Request empty_req_tab = browser.find_element_by_id('liRequests') empty_req_tab.click() time.sleep(1) browser.find_element_by_id('txtRequestName').send_keys('testing') empty_add = browser.find_element_by_id('lnkAddRequest') empty_add.click() time.sleep(1) save_details = browser.find_element_by_link_text('Save') save_details.click() return_to_details = browser.find_element_by_id('liInformation') return_to_details.click() time.sleep(1)
def find_schedule(schedule, location_based=0): browser.implicitly_wait(10) if location_based == 0: browser.get( 'https://sysco.sprocketcmms.com/Default.aspx?screen=PM%20Projects&SSF=-108' ) print('---> Loading Equipment Based View') elif location_based == 1: browser.get( 'https://sysco.sprocketcmms.com/Default.aspx?screen=PM%20Projects&SSF=244' ) print('---> Loading Location Based View') else: print( '--->!! Value outside of defined parameters\nlocation_based=0\nor\nlocation_based=1' ) project_link = schedule time.sleep(1) search_link = browser.find_element_by_link_text('Search') time.sleep(1) search_link.click() pm_number_field = browser.find_element_by_id('PMNumber_txt3') pm_number_field.clear() pm_number_field.send_keys(schedule) search_button = browser.find_element_by_id('SearchScreenBtnSearch') search_button.click() time.sleep(1) browser.find_element_by_partial_link_text(project_link).click()
def equipment_page(unit): # Find and select Equipment browser.implicitly_wait(15) browser.get( 'https://sysco.sprocketcmms.com/Default.aspx?screen=Equipment&SSF=-102' ) search_field = browser.find_element_by_link_text('Search') search_field.click() equip_search = browser.find_element_by_id('Equipment_txt4') equip_search.clear() equip_search.send_keys(unit) searchButton = browser.find_element_by_id('SearchScreenBtnSearch') searchButton.click() time.sleep(5) unit_link = browser.find_element_by_link_text(unit) unit_link.click()
def remove_schedule(): sch_tab = browser.find_element_by_id('liSchedules') sch_tab.click() time.sleep(1) remove_sch_link = browser.find_element_by_link_text('Remove') remove_sch_link.click() time.sleep(1) browser.switch_to.alert.accept()
def remove_asset(): assets_tab = browser.find_element_by_id('liAssets') assets_tab.click() time.sleep(1) remove_asset_link = browser.find_element_by_link_text('Remove') remove_asset_link.click() time.sleep(1) browser.switch_to.alert.accept()
def gen_number(unit_description, location, equipment_type, department, manufacturer, inventory_number, start_date, gb_fuel_type, equipment_system): browser.get( 'https://sysco.sprocketcmms.com/Default.aspx?screen=Equipment&SSF=-102' ) time.sleep(1) new_equip_button = browser.find_element_by_id('btnNewLink') new_equip_button.click() field_id = browser.find_element_by_id('StdSf_70_EquipmentIdentifier_txt') field_id.send_keys('AUTONUMBER') desc_field = browser.find_element_by_id('StdSf_70_Description_txt') desc_field.send_keys(unit_description) location_field = browser.find_element_by_id('StdSf_70_LocationID_txt') location_field.send_keys(location) type_field = browser.find_element_by_id('StdSf_70_EquipmentTypeID_txt') type_field.send_keys(equipment_type) dept_field = browser.find_element_by_xpath( '//*[@id="StdSf_70_Div1"]/p[8]/div/input') dept_field.send_keys(department) man_field = browser.find_element_by_id('StdSf_70_Manufacturer_txt') man_field.send_keys(manufacturer) inv_field = browser.find_element_by_id('StdSf_70_InventoryNumber_txt') inv_field.send_keys(inventory_number) start_date_field = browser.find_element_by_id('StdSf_70_DateInService_txt') start_date_field.send_keys(start_date) gb_type_field = browser.find_element_by_xpath( '//*[@id="StdSf_70_Div3"]/p[12]/div/input') gb_type_field.send_keys(gb_fuel_type) equip_sys_field = browser.find_element_by_id( 'StdSf_70_EquipmentSystemID_txt') equip_sys_field.send_keys(equipment_system) browser.find_element_by_link_text('Save').click() time.sleep(3)
def fsi_page_three(sch_name, start, frequency, day_dropdown='Daily', set=0, week_day=0): set_lead_days = ['0', '7', '30'] pm_plan_link = browser.find_element_by_link_text('Add a new PM Project Plan Schedule') pm_plan_link.click() time.sleep(1) name_page3 = browser.find_element_by_id('schedule_txtName') name_page3.send_keys(sch_name) start_page3 = browser.find_element_by_id('schedule_txtStartDate') start_page3.send_keys(start) lead_days = browser.find_element_by_id('schedule_txtLeadDays') lead_days.send_keys(set_lead_days[set]) daily3 = Select(browser.find_element_by_id('ddlRecurrenceType')) daily3.select_by_visible_text(day_dropdown) # week_day 1=Daily 2=Weekly 3=Monthly if week_day == 1: browser.find_element_by_id('dr_chkEveryWeekday').click() save_sch3 = browser.find_element_by_xpath('//*[@id="tblPMProjectPlanSchedule"]/table/tbody/tr[2]/td[2]/input') time.sleep(1) save_sch3.click() time.sleep(1) next3 = browser.find_element_by_id('btn_Step3_Next') time.sleep(1) next3.click() time.sleep(1) elif week_day == 2: browser.find_element_by_id('weekR_txtEvery').send_keys(frequency) browser.find_element_by_id('weekR_sunday').click() save_sch3 = browser.find_element_by_xpath('//*[@id="tblPMProjectPlanSchedule"]/table/tbody/tr[2]/td[2]/input') time.sleep(1) save_sch3.click() time.sleep(1) next3 = browser.find_element_by_id('btn_Step3_Next') time.sleep(1) next3.click() time.sleep(1) elif week_day == 3: browser.find_element_by_id('monthR_XOfEveryMonths').click() browser.find_element_by_id('monthR_XInstanceMonth').send_keys(frequency) save_sch3 = browser.find_element_by_xpath('//*[@id="tblPMProjectPlanSchedule"]/table/tbody/tr[2]/td[2]/input') time.sleep(1) save_sch3.click() time.sleep(1) next3 = browser.find_element_by_id('btn_Step3_Next') time.sleep(1) next3.click() time.sleep(1) else: target_frequency = browser.find_element_by_id('dailyR_txtEvery') target_frequency.send_keys(frequency) save_sch3 = browser.find_element_by_xpath('//*[@id="tblPMProjectPlanSchedule"]/table/tbody/tr[2]/td[2]/input') time.sleep(1) save_sch3.click() time.sleep(1) next3 = browser.find_element_by_id('btn_Step3_Next') time.sleep(1) next3.click() time.sleep(1)
def correct_pmp_name(new_sch_name, archive_flag=0): details_name = browser.find_element_by_id('Name_txt') details_name.clear() details_name.send_keys(new_sch_name) if archive_flag == 0: archive_flag_box = browser.find_element_by_id('Archived_chk') archive_flag_box.click() save_details = browser.find_element_by_link_text('Save') save_details.click() time.sleep(3)
def fsi_page_two(unit, set=1): type = ['Equipment', 'Location'] in_type = Select(browser.find_element_by_id('ddlAssetType')) in_type.select_by_visible_text(type[set]) add_unit = browser.find_element_by_id('txtAddAsset') add_unit.send_keys(unit) add_submit = browser.find_element_by_link_text('Add') add_submit.click() time.sleep(3) next2 = browser.find_element_by_id('btn_Step2_Next') next2.click() time.sleep(3)
def device_search(old_value): browser.get('https://sysco.sprocketcmms.com/Default.aspx?screen=Devices') search_button = browser.find_element_by_id('liSearch') search_button.click() device_id_search_field = browser.find_element_by_id( 'Device_Identifier_txt0') device_id_search_field.clear() device_id_search_field.send_keys(old_value) start_search = browser.find_element_by_id('SearchScreenBtnSearch') start_search.click() time.sleep(1) record_link = browser.find_element_by_link_text(old_value) record_link.click() time.sleep(1)
def remove_web_group(): browser.implicitly_wait(10) group_tab = browser.find_element_by_id('liGroups') group_tab.click() time.sleep(3) web_group = browser.find_element_by_xpath( '//*[@id="groups_AssignedGroups"]/option[2]') web_group.click() remove_button = browser.find_element_by_xpath( '//*[@id="divGroups"]/table/tbody/tr[2]/td[2]/input') remove_button.click() time.sleep(3) save_groups = browser.find_element_by_link_text('Save') save_groups.click() time.sleep(5) browser.switch_to.alert.accept() time.sleep(1)
def create_new(option, start, length): browser.implicitly_wait(15) war_tab = browser.find_element_by_link_text('Warranty') time.sleep(1) war_tab.click() time.sleep(1) war_link = browser.find_element_by_id('newWarranty_anchor') war_link.click() war_name = browser.find_element_by_id('newWarranty_WarrantyID') war_name.send_keys(option) war_start = browser.find_element_by_id('newWarranty_StartDate') war_start.clear() war_start.send_keys(start) war_end = browser.find_element_by_id('newWarranty_EndDate') war_end.clear() war_end.send_keys(length) war_save = browser.find_element_by_id('newWarranty_save') war_save.click() time.sleep(3)
def page_three_alt(sch_name, start, set=0): set_lead_days = ['0', '7', '30'] pm_plan_link = browser.find_element_by_link_text( 'Add a new PM Project Plan Schedule') pm_plan_link.click() time.sleep(1) name_page3 = browser.find_element_by_id('schedule_txtName') name_page3.send_keys(sch_name) start_page3 = browser.find_element_by_id('schedule_txtStartDate') start_page3.send_keys(start) lead_days = browser.find_element_by_id('schedule_txtLeadDays') lead_days.clear() lead_days.send_keys(set_lead_days[set]) daily3 = Select(browser.find_element_by_id('ddlRecurrenceType')) daily3.select_by_visible_text('Does not repeat') save_sch3 = browser.find_element_by_xpath( '//*[@id="tblPMProjectPlanSchedule"]/table/tbody/tr[2]/td[2]/input') time.sleep(1) save_sch3.click() time.sleep(1) next3 = browser.find_element_by_id('btn_Step3_Next') time.sleep(1) next3.click() time.sleep(1)
def remove_inspection(): remove_link = browser.find_element_by_link_text('Remove') remove_link.click() time.sleep(1) browser.switch_to.alert.accept() time.sleep(1)
start_date_field = browser.find_element_by_id( 'StdSf_70_DateInService_txt') start_date_field.send_keys(start_date[x]) #status_field =browser.find_element_by_id('StdSf_70_EquipmentStatusID_txt') #status_field.clear() #status_field.send_keys(status[x]) #gb_type_field = Select(browser.find_element_by_xpath('//*[@id="StdSf_70_Div3"]/p[12]/div/input')) #gb_type_field.select_by_visible_text(gb_fuel_type[x]) gb_type_field = browser.find_element_by_xpath( '//*[@id="StdSf_70_Div3"]/p[12]/div/input') gb_type_field.send_keys(gb_fuel_type[x]) equip_sys_field = browser.find_element_by_id( 'StdSf_70_EquipmentSystemID_txt') #equip_sys_field.clear() equip_sys_field.send_keys(equip_sys[x]) browser.find_element_by_link_text('Save').click() time.sleep(3) except IndexError: print('Complete!') break except Exception as b: tb = sys.exc_info()[2] print(tb.tb_lineno) print( '____ERROR_____\nScript was at Equip ID {} at {} of {}\n____Reason____\n{}' .format(target_number[x], x, counter, b)) try: """ browser.switch_to.alert.accept() #alert.dismiss()
try: # Change Site set_site(site[x]) name = '{} {} Freight'.format(site[x], model[x]) # Open Page browser.get('https://sysco.sprocketcmms.com/Default.aspx?screen=Equipment%20Options') time.sleep(5) # Create Option browser.find_element_by_id('btnNewLink').click() browser.find_element_by_id('StdSf524_Name_txt').send_keys(name) browser.find_element_by_id('StdSf524_Description_txt').send_keys(name) browser.find_element_by_id('StdSf524_VendorID_txt').send_keys(vendor[x]) time.sleep(1) browser.find_element_by_link_text('Save').click() time.sleep(3) browser.find_element_by_link_text('Exit').click() browser.get('https://sysco.sprocketcmms.com/Default.aspx?screen=Equipment%20Models') time.sleep(1) # Attach option to Model browser.find_element_by_id('liSearch').click() model_search = browser.find_element_by_id('Name_txt0') model_search.clear() model_search.send_keys(model[x]) browser.find_element_by_id('SearchScreenBtnSearch').click() time.sleep(1) browser.find_element_by_link_text(model[x]).click() time.sleep(1) browser.find_element_by_link_text('Options').click()
def save_record_final(): save_exit = browser.find_element_by_link_text('Save') save_exit.click() time.sleep(5) browser.switch_to.alert.accept() time.sleep(1)