1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd"> 3<script:module xmlns:script="http://openoffice.org/2000/script" script:name="sheet_XSubTotalField" script:language="StarBasic"> 4 5 6'************************************************************************* 7' 8' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 9' 10' Copyright 2000, 2010 Oracle and/or its affiliates. 11' 12' OpenOffice.org - a multi-platform office productivity suite 13' 14' This file is part of OpenOffice.org. 15' 16' OpenOffice.org is free software: you can redistribute it and/or modify 17' it under the terms of the GNU Lesser General Public License version 3 18' only, as published by the Free Software Foundation. 19' 20' OpenOffice.org is distributed in the hope that it will be useful, 21' but WITHOUT ANY WARRANTY; without even the implied warranty of 22' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 23' GNU Lesser General Public License version 3 for more details 24' (a copy is included in the LICENSE file that accompanied this code). 25' 26' You should have received a copy of the GNU Lesser General Public License 27' version 3 along with OpenOffice.org. If not, see 28' <http://www.openoffice.org/license.html> 29' for a copy of the LGPLv3 License. 30' 31'************************************************************************* 32***** 33'************************************************************************* 34 35 36 37' Be sure that all variables are dimensioned: 38option explicit 39 40 41 42Sub RunTest() 43 44'************************************************************************* 45' INTERFACE: 46' com.sun.star.sheet.XSubTotalField 47'************************************************************************* 48On Error Goto ErrHndl 49 Dim bOK As Boolean 50 Dim oldCol, newCol As Integer 51 Dim SubTotalCol(1) As New com.sun.star.sheet.SubTotalColumn 52 53 Test.StartMethod("getGroupColumn()") 54 bOK = true 55 bOK = bOK AND NOT isNULL(oObj.getGroupColumn()) 56 Test.MethodTested("getGroupColumn()", bOK) 57 58 Test.StartMethod("setGroupColumn()") 59 bOK = true 60 oldCol = oObj.getGroupColumn() 61 newCol = oldCol + 1 62 oObj.setGroupColumn(newCol) 63 bOK = bOK AND (oldCol <> oObj.getGroupColumn()) 64 oObj.setGroupColumn(oldCol) 65 Test.MethodTested("setGroupColumn()", bOK) 66 67 Test.StartMethod("getSubTotalColumns()") 68 bOK = true 69 bOK = bOK AND NOT isNULL(oObj.getSubTotalColumns()) 70 Test.MethodTested("getSubTotalColumns()", bOK) 71 72 Test.StartMethod("setSubTotalColumns()") 73 bOK = true 74 SubTotalCol(0).Column = 1 75 SubTotalCol(0).Function = com.sun.star.sheet.GeneralFunction.AVERAGE 76 SubTotalCol(1).Column = 2 77 SubTotalCol(1).Function = com.sun.star.sheet.GeneralFunction.SUM 78 oObj.setSubTotalColumns(SubTotalCol()) 79 bOK = bOK AND ubound(oObj.getSubTotalColumns()) = 1 80 Test.MethodTested("setSubTotalColumns()", bOK) 81 82Exit Sub 83ErrHndl: 84 Test.Exception() 85 bOK = false 86 resume next 87End Sub 88</script:module> 89