1cdf0e10cSrcweir<?xml version="1.0" encoding="UTF-8"?> 2cdf0e10cSrcweir<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> 3cdf0e10cSrcweir<script:module xmlns:script="http://openoffice.org/2000/script" script:name="dbaccess_TableWindowAccessibility" script:language="StarBasic"> 4cdf0e10cSrcweir 5cdf0e10cSrcweir 6cdf0e10cSrcweir'************************************************************************* 7cdf0e10cSrcweir' 8*b40b12b0SAndrew Rist' Licensed to the Apache Software Foundation (ASF) under one 9*b40b12b0SAndrew Rist' or more contributor license agreements. See the NOTICE file 10*b40b12b0SAndrew Rist' distributed with this work for additional information 11*b40b12b0SAndrew Rist' regarding copyright ownership. The ASF licenses this file 12*b40b12b0SAndrew Rist' to you under the Apache License, Version 2.0 (the 13*b40b12b0SAndrew Rist' "License"); you may not use this file except in compliance 14*b40b12b0SAndrew Rist' with the License. You may obtain a copy of the License at 15*b40b12b0SAndrew Rist' 16*b40b12b0SAndrew Rist' http://www.apache.org/licenses/LICENSE-2.0 17*b40b12b0SAndrew Rist' 18*b40b12b0SAndrew Rist' Unless required by applicable law or agreed to in writing, 19*b40b12b0SAndrew Rist' software distributed under the License is distributed on an 20*b40b12b0SAndrew Rist' "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 21*b40b12b0SAndrew Rist' KIND, either express or implied. See the License for the 22*b40b12b0SAndrew Rist' specific language governing permissions and limitations 23*b40b12b0SAndrew Rist' under the License. 24cdf0e10cSrcweir' 25cdf0e10cSrcweir'************************************************************************* 26cdf0e10cSrcweir 27cdf0e10cSrcweir 28cdf0e10cSrcweir 29*b40b12b0SAndrew Rist 30*b40b12b0SAndrew Rist 31cdf0e10cSrcweir' Be sure that all variables are dimensioned: 32cdf0e10cSrcweiroption explicit 33cdf0e10cSrcweir 34cdf0e10cSrcweir 35cdf0e10cSrcweir' REQUIRED VARIABLES for interface/service tests: 36cdf0e10cSrcweirGlobal cancelButton As Object 37cdf0e10cSrcweirGlobal queryWindow As Object 38cdf0e10cSrcweir 39cdf0e10cSrcweir 40cdf0e10cSrcweirSub CreateObj() 41cdf0e10cSrcweir 42cdf0e10cSrcweir'************************************************************************* 43cdf0e10cSrcweir' COMPONENT: 44cdf0e10cSrcweir' dbaccess.TableWindowAccessibility 45cdf0e10cSrcweir'************************************************************************* 46cdf0e10cSrcweirOn Error Goto ErrHndl 47cdf0e10cSrcweir Dim oMSF As Object, oWin As Object 48cdf0e10cSrcweir Dim thRunner As Object, xRoot As Object 49cdf0e10cSrcweir Dim tk As Object 50cdf0e10cSrcweir 51cdf0e10cSrcweir Dim dbSource As Object 52cdf0e10cSrcweir dbSource = createUnoService("com.sun.star.sdb.DataSource") 53cdf0e10cSrcweir 54cdf0e10cSrcweir Dim info(2) As new com.sun.star.beans.PropertyValue 55cdf0e10cSrcweir info(0).Name = "JavaDriverClass" 56cdf0e10cSrcweir info(0).Value = "org.gjt.mm.mysql.Driver" 57cdf0e10cSrcweir info(1).Name = "user" 58cdf0e10cSrcweir info(1).Value = jdbcUser 59cdf0e10cSrcweir info(2).Name = "password" 60cdf0e10cSrcweir info(2).Value = jdbcPassword 61cdf0e10cSrcweir dbSource.info = info() 62cdf0e10cSrcweir dbSource.URL = jdbcUrl 63cdf0e10cSrcweir 64cdf0e10cSrcweir Dim dbContext As Object 65cdf0e10cSrcweir dbContext = createUnoService("com.sun.star.sdb.DatabaseContext") 66cdf0e10cSrcweir 67cdf0e10cSrcweir Dim sourceName As String 68cdf0e10cSrcweir sourceName = "AAADBSource for dbu-accessibility" 69cdf0e10cSrcweir 70cdf0e10cSrcweir if dbContext.hasByName(sourceName) then 71cdf0e10cSrcweir dbContext.revokeObject(sourceName) 72cdf0e10cSrcweir endif 73cdf0e10cSrcweir 74cdf0e10cSrcweir dbContext.registerObject(sourceName, dbSource) 75cdf0e10cSrcweir 76cdf0e10cSrcweir Dim connection As Object 77cdf0e10cSrcweir connection = dbSource.getIsolatedConnection(jdbcUser, jdbcPassword) 78cdf0e10cSrcweir 79cdf0e10cSrcweir Dim statement As Object 80cdf0e10cSrcweir statement = connection.createStatement() 81cdf0e10cSrcweir 82cdf0e10cSrcweir statement.executeUpdate("drop table if exists tst_table1") 83cdf0e10cSrcweir statement.executeUpdate("drop table if exists tst_table2") 84cdf0e10cSrcweir statement.executeUpdate("create table tst_table1 (id1 int)") 85cdf0e10cSrcweir statement.executeUpdate("create table tst_table2 (id2 int)") 86cdf0e10cSrcweir 87cdf0e10cSrcweir Dim defContainer As Object 88cdf0e10cSrcweir defContainer = dbSource.getQueryDefinitions() 89cdf0e10cSrcweir 90cdf0e10cSrcweir Dim newQuery As Object 91cdf0e10cSrcweir newQuery = createUnoService("com.sun.star.sdb.QueryDefinition") 92cdf0e10cSrcweir newQuery.Command = "select * from tst_table1, tst_table2 where " + _ 93cdf0e10cSrcweir "tst_table1.id1=tst_table2.id2" 94cdf0e10cSrcweir 95cdf0e10cSrcweir defContainer.insertByName("Query1", newQuery) 96cdf0e10cSrcweir 97cdf0e10cSrcweir oMSF = getProcessServiceManager() 98cdf0e10cSrcweir thRunner = oMSF.createInstance("basichelper.ThreadRunner") 99cdf0e10cSrcweir tk = createUNOService("com.sun.star.awt.Toolkit") 100cdf0e10cSrcweir wait(500) 101cdf0e10cSrcweir thRunner.initialize(Array("ExecuteDialog", "com.sun.star.sdb.DatasourceAdministrationDialog")) 102cdf0e10cSrcweir wait(3000) 103cdf0e10cSrcweir 104cdf0e10cSrcweir oWin = tk.getActiveTopWindow() 105cdf0e10cSrcweir xRoot = utils.at_getAccessibleObject(oWin) 106cdf0e10cSrcweir 107cdf0e10cSrcweir Dim pageTabList As Object 108cdf0e10cSrcweir pageTabList = utils.at_getAccessibleObjectForRole(xRoot, com.sun.star.accessibility.AccessibleRole.PAGE_TAB_LIST) 109cdf0e10cSrcweir 110cdf0e10cSrcweir pageTabList.selectAccessibleChild(3) 111cdf0e10cSrcweir wait(500) 112cdf0e10cSrcweir 113cdf0e10cSrcweir Dim editQueryButton As Object 114cdf0e10cSrcweir editQueryButton = utils.at_getAccessibleObjectForRole(xRoot, com.sun.star.accessibility.AccessibleRole.PUSH_BUTTON, "Edit Query") 115cdf0e10cSrcweir 116cdf0e10cSrcweir cancelButton = utils.at_getAccessibleObjectForRole(xRoot, com.sun.star.accessibility.AccessibleRole.PUSH_BUTTON, "Cancel") 117cdf0e10cSrcweir 118cdf0e10cSrcweir editQueryButton.doAccessibleAction(0) 119cdf0e10cSrcweir wait(1000) 120cdf0e10cSrcweir 121cdf0e10cSrcweir oWin = tk.getActiveTopWindow() 122cdf0e10cSrcweir queryWindow = oWin 123cdf0e10cSrcweir xRoot = utils.at_getAccessibleObject(oWin) 124cdf0e10cSrcweir 125cdf0e10cSrcweir oObj = utils.at_getAccessibleObjectForRole(xRoot, com.sun.star.accessibility.AccessibleRole.PANEL) 126cdf0e10cSrcweir 127cdf0e10cSrcweirExit Sub 128cdf0e10cSrcweirErrHndl: 129cdf0e10cSrcweir Test.Exception() 130cdf0e10cSrcweirEnd Sub 131cdf0e10cSrcweir 132cdf0e10cSrcweirSub DisposeObj() 133cdf0e10cSrcweir utils.closeObject(queryWindow) 134cdf0e10cSrcweir if NOT isNull(cancelButton) then 135cdf0e10cSrcweir cancelButton.doAccessibleAction(0) 136cdf0e10cSrcweir wait(1000) 137cdf0e10cSrcweir End If 138cdf0e10cSrcweirEnd Sub 139cdf0e10cSrcweir 140cdf0e10cSrcweirSub fireEvent() 141cdf0e10cSrcweirEnd Sub 142cdf0e10cSrcweir</script:module> 143