summaryrefslogtreecommitdiff
path: root/testautomation/spreadsheet
diff options
context:
space:
mode:
Diffstat (limited to 'testautomation/spreadsheet')
-rwxr-xr-xtestautomation/spreadsheet/optional/c_arrayconstants.bas61
-rwxr-xr-xtestautomation/spreadsheet/optional/c_getpivotdata.bas62
-rwxr-xr-xtestautomation/spreadsheet/optional/c_import_general.bas87
-rwxr-xr-xtestautomation/spreadsheet/optional/c_namedrange.bas66
-rwxr-xr-xtestautomation/spreadsheet/optional/c_print_scale.bas53
-rwxr-xr-xtestautomation/spreadsheet/optional/c_printrange.bas67
-rwxr-xr-xtestautomation/spreadsheet/optional/c_so7_pp1.bas69
-rwxr-xr-xtestautomation/spreadsheet/optional/c_solver.bas62
-rw-r--r--testautomation/spreadsheet/optional/c_validity.bas87
-rw-r--r--testautomation/spreadsheet/optional/includes/arrayconstants/c_arrayconstants.inc312
-rw-r--r--testautomation/spreadsheet/optional/includes/getpivotdata/c_getpivotdata.inc318
-rw-r--r--testautomation/spreadsheet/optional/includes/import_general/c_import_general.inc196
-rw-r--r--testautomation/spreadsheet/optional/includes/namedrange/c_namedrange.inc188
-rw-r--r--testautomation/spreadsheet/optional/includes/printrange/c_printrange.inc923
-rw-r--r--testautomation/spreadsheet/optional/includes/printscale/c_print_scale.inc299
-rw-r--r--testautomation/spreadsheet/optional/includes/so7pp1/c_so7_pp1_ibis.inc218
-rw-r--r--testautomation/spreadsheet/optional/includes/so7pp1/c_so7_pp1_iz.inc211
-rw-r--r--testautomation/spreadsheet/optional/includes/solver/c_solver.inc221
-rw-r--r--testautomation/spreadsheet/optional/includes/validity/c_validity.inc372
-rwxr-xr-xtestautomation/spreadsheet/optional/input/111099.xlsbin0 -> 24064 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/111158.xlsbin0 -> 67584 bytes
-rw-r--r--testautomation/spreadsheet/optional/input/Solver_testdoc01.odsbin0 -> 10326 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/arrayconstants.xlsbin0 -> 74752 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/datapilot.odsbin0 -> 13211 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/getpivotdata2.xlsbin0 -> 13824 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/bugdocs/1024.odsbin0 -> 12880 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/common/csv.csv7
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/common/dbase.dbfbin0 -> 1166 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/common/dbase.dbt0
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/corel/qpro6.wb2bin0 -> 7290 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/lotus/123toexcel.xlsbin0 -> 7168 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/lotus/lotus123.123bin0 -> 13540 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/lotus/lotuswk1.wk1bin0 -> 3999 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/lotus/lotuswks.wksbin0 -> 6902 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/dif.DIF110
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel2.xlsbin0 -> 31481 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel3.xlsbin0 -> 23510 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel4.xlsbin0 -> 12517 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel95.xlsbin0 -> 60416 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel95tmpl.xltbin0 -> 34816 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel97.xlsbin0 -> 51712 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excel97tmpl.xltbin0 -> 51712 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/excelxml.xml254
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_binary.xlsbbin0 -> 8797 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml.xlsxbin0 -> 8210 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_macroenabled.xlsmbin0 -> 8243 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_template.xltxbin0 -> 8218 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_template_macroenabled.xltmbin0 -> 8246 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/microsoft/sylk.slk1
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/preselected_filter/rtf.rtf218
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/preselected_filter/txt.txt7
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so1.sdcbin0 -> 80228 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so3.sdcbin0 -> 29696 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so3tmpl.vorbin0 -> 19456 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so4.sdcbin0 -> 131584 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so4tmpl.vorbin0 -> 24576 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so5.sdcbin0 -> 24064 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so5tmpl.vorbin0 -> 404480 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so7.sxcbin0 -> 14926 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so7tmpl.stcbin0 -> 11367 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so8.odsbin0 -> 38161 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/sun/so8tmpl.otsbin0 -> 37500 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/tableimport/HTML_Doc_Numberformats_in_table.html107
-rwxr-xr-xtestautomation/spreadsheet/optional/input/loadsave/tableimport/HTML_Doc_Numberformats_in_table.rtf62
-rwxr-xr-xtestautomation/spreadsheet/optional/input/namedrange.sxcbin0 -> 6538 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/printrange.sxcbin0 -> 9648 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/printrange.xlsbin0 -> 41984 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/printranges_3defined.odsbin0 -> 13408 bytes
-rw-r--r--testautomation/spreadsheet/optional/input/stest_large.odsbin0 -> 23467 bytes
-rwxr-xr-xtestautomation/spreadsheet/optional/input/validity.odsbin0 -> 22633 bytes
-rwxr-xr-xtestautomation/spreadsheet/required/c_updt1.bas72
-rwxr-xr-xtestautomation/spreadsheet/required/c_updt2.bas75
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_datamenu.inc1041
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_editmenu.inc1024
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_editmenu2.inc666
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_filemenu.inc685
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_formatmenu.inc947
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_formatmenu2.inc804
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_formatmenu3.inc1051
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_helpmenu.inc119
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_insertmenu.inc1313
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_toolsmenu.inc957
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_toolsmenu2.inc517
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_viewmenu.inc395
-rw-r--r--testautomation/spreadsheet/required/includes/c_upd_windowmenu.inc141
-rwxr-xr-xtestautomation/spreadsheet/required/input/Database_Refresh.odsbin0 -> 10588 bytes
-rw-r--r--testautomation/spreadsheet/required/input/DocwithMacro.odsbin0 -> 7765 bytes
-rw-r--r--testautomation/spreadsheet/required/input/HTML_Doc_Numberformats_in_table.html107
-rwxr-xr-xtestautomation/spreadsheet/required/input/datapilot.odsbin0 -> 12613 bytes
-rwxr-xr-xtestautomation/spreadsheet/required/input/english.odsbin0 -> 6384 bytes
-rwxr-xr-xtestautomation/spreadsheet/required/input/korean.odsbin0 -> 12224 bytes
-rwxr-xr-xtestautomation/spreadsheet/required/input/linkclient.odsbin0 -> 6185 bytes
-rwxr-xr-xtestautomation/spreadsheet/required/input/linkserver.odsbin0 -> 5995 bytes
-rwxr-xr-xtestautomation/spreadsheet/required/input/merge.odsbin0 -> 6349 bytes
-rwxr-xr-xtestautomation/spreadsheet/required/input/recentdocument.odsbin0 -> 6141 bytes
-rwxr-xr-xtestautomation/spreadsheet/required/input/tEditObject.odsbin0 -> 11589 bytes
-rwxr-xr-xtestautomation/spreadsheet/required/input/tFileOpen_CSV.csv3
-rwxr-xr-xtestautomation/spreadsheet/required/input/tFileOpen_DBF.dbfbin0 -> 1166 bytes
-rwxr-xr-xtestautomation/spreadsheet/required/input/tFileOpen_DBF.dbt0
-rwxr-xr-xtestautomation/spreadsheet/required/input/twoobjects.odsbin0 -> 7269 bytes
-rwxr-xr-xtestautomation/spreadsheet/required/input/twosheets.odsbin0 -> 6411 bytes
-rw-r--r--testautomation/spreadsheet/tools/includes/c_cell_tools.inc102
-rw-r--r--testautomation/spreadsheet/tools/includes/c_l10n_tools.inc232
-rw-r--r--testautomation/spreadsheet/tools/includes/c_select_tools.inc232
-rw-r--r--testautomation/spreadsheet/tools/includes/c_tool_l10n_mnomics.inc160
-rw-r--r--testautomation/spreadsheet/tools/includes/c_tool_options.inc95
-rw-r--r--testautomation/spreadsheet/tools/includes/c_validity_tools.inc139
-rwxr-xr-xtestautomation/spreadsheet/tools/input/Errorcodes.odsbin0 -> 13154 bytes
-rwxr-xr-xtestautomation/spreadsheet/tools/input/Functionnames.odsbin0 -> 25806 bytes
109 files changed, 15515 insertions, 0 deletions
diff --git a/testautomation/spreadsheet/optional/c_arrayconstants.bas b/testautomation/spreadsheet/optional/c_arrayconstants.bas
new file mode 100755
index 000000000000..114293db4281
--- /dev/null
+++ b/testautomation/spreadsheet/optional/c_arrayconstants.bas
@@ -0,0 +1,61 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Functiontest for matrix/array constants in calc
+'*
+'\***********************************************************************
+
+
+sub main
+ use "spreadsheet/optional/includes/arrayconstants/c_arrayconstants.inc"
+ use "spreadsheet/tools/includes/c_cell_tools.inc"
+ use "spreadsheet/tools/includes/c_select_tools.inc"
+ use "spreadsheet/tools/includes/c_l10n_tools.inc"
+
+ Printlog "--------------------------------------------------"
+ Printlog "--- Functiontest for arrayconstants in calc ---"
+ Printlog "--------------------------------------------------"
+
+ Call hStatusIn("spreadsheet", "c_arrayconstants.bas")
+
+ Call tArrayconstants01
+ Call tArrayconstants02
+
+ Call hStatusOut
+end sub
+'
+'-------------------------------------------------------------------------------
+'
+sub LoadIncludeFiles
+ use "global/system/includes/master.inc"
+ use "global/system/includes/gvariabl.inc"
+ gApplication = "CALC"
+ call getusefiles
+
+end sub
diff --git a/testautomation/spreadsheet/optional/c_getpivotdata.bas b/testautomation/spreadsheet/optional/c_getpivotdata.bas
new file mode 100755
index 000000000000..f55990107538
--- /dev/null
+++ b/testautomation/spreadsheet/optional/c_getpivotdata.bas
@@ -0,0 +1,62 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Test for function GETPIVOTDATA in calc
+'*
+'\***********************************************************************
+
+
+sub main
+ use "spreadsheet/optional/includes/getpivotdata/c_getpivotdata.inc"
+ use "spreadsheet/tools/includes/c_select_tools.inc"
+ use "spreadsheet/tools/includes/c_cell_tools.inc"
+ use "spreadsheet/tools/includes/c_l10n_tools.inc"
+
+ Printlog "--------------------------------------------------"
+ Printlog "--- Test for function GETPIVOTDATA in calc ---"
+ Printlog "--------------------------------------------------"
+
+ Call hStatusIn("spreadsheet", "c_getpivotdata.bas")
+
+ Call tgetpivotdata_function_wizard
+ Call tgetpivotdata_xls_filter
+
+ Call hStatusOut
+end sub
+'
+'-------------------------------------------------------------------------------
+'
+sub LoadIncludeFiles
+ use "global/system/includes/master.inc"
+ use "global/system/includes/gvariabl.inc"
+ use "global/tools/includes/optional/t_spreadsheet_tools1.inc"
+ gApplication = "CALC"
+ call getusefiles
+
+end sub
diff --git a/testautomation/spreadsheet/optional/c_import_general.bas b/testautomation/spreadsheet/optional/c_import_general.bas
new file mode 100755
index 000000000000..9c77346f2ca7
--- /dev/null
+++ b/testautomation/spreadsheet/optional/c_import_general.bas
@@ -0,0 +1,87 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Simply load max. 1000 files in .../spreadsheet/required/input/loadsave/
+'*
+'\***********************************************************************
+
+global gsSourceDocument(1000) as string
+global giWhichSecurityLevel as integer
+global gsSourcePath as string
+
+sub main
+ use "spreadsheet\optional\includes\import_general\c_import_general.inc"
+
+ gsSourcePath = ConvertPath(gTestToolPath + "spreadsheet\optional\input\loadsave\")
+ 'Checking in .../common sub-directory if there is a file
+ 'to be sure to have access to the files
+ if Dir(gsSourcePath) & "common\" = "" then
+ warnlog "qa:qatesttool:spreadsheet:optional:c_import_general.bas: Unable to find document directory! Please adapt 'gsSourcePath'"
+ exit sub
+ endif
+
+ Call sPreconditions
+ Call hStatusIn ( "spreadsheet", "c_import_general.bas" )
+ Call tLoadAllDocuments (gsSourcePath)
+ Call hStatusOut
+ Call sResetSystemUnderTest
+end sub
+'
+'-------------------------------------------------------------------------------
+'
+sub LoadIncludeFiles
+ use "global\system\includes\master.inc"
+ use "global\system\includes\gvariabl.inc"
+ Call GetUseFiles
+ gApplication = "CALC"
+end sub
+
+'
+'-------------------------------------------------------------------------------
+'
+sub sPreconditions
+ 'Init the iWhichSecurityLevel() variable with 2
+ 'which would be the normal state if it's impossible
+ 'to detect the macro security level.
+ giWhichSecurityLevel = 2
+ 'Get the macro security level and remember it.
+ 'and then set the Macro security level to (0) low
+ giWhichSecurityLevel = hSetMacroSecurity(0)
+end sub
+'
+'-------------------------------------------------------------------------------
+'
+sub sResetSystemUnderTest
+ 'Set the macro security level back to the value
+ 'which has it before the system was under test
+ call hSetMacroSecurity(giWhichSecurityLevel)
+end sub
+'
+'-------------------------------------------------------------------------------
+'
diff --git a/testautomation/spreadsheet/optional/c_namedrange.bas b/testautomation/spreadsheet/optional/c_namedrange.bas
new file mode 100755
index 000000000000..1bca7bfb3c78
--- /dev/null
+++ b/testautomation/spreadsheet/optional/c_namedrange.bas
@@ -0,0 +1,66 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@Sun.COM
+'*
+'* short description : calc named range level 2 test
+'*
+'\************************************************************************
+
+global sDefaultCalcFilter as STRING
+global sDefaultExtension as STRING
+
+sub main
+dim startedAt
+startedAt = now()
+PrintLog "---------------------------------------------------------------------"
+
+ use "spreadsheet\optional\includes\namedrange\c_namedrange.inc"
+ use "spreadsheet\tools\includes\c_select_tools.inc"
+
+ call hStatusIn("spreadsheet", "c_namedrange.bas")
+
+ sDefaultCalcFilter = "calc8"
+ sDefaultExtension = "ods"
+
+ call cNamedRange
+
+PrintLog "-------------------------------------------------------------------"
+Printlog " End: " + Date + " at: " + Time + " Duration: " + wielange(startedAt)
+PrintLog "-------------------------------------------------------------------"
+
+ call hStatusOut
+
+end sub
+
+sub LoadIncludeFiles
+ use "global\system\includes\master.inc"
+ use "global\system\includes\gvariabl.inc"
+ gApplication = "CALC"
+ Call GetUseFiles
+
+end sub
diff --git a/testautomation/spreadsheet/optional/c_print_scale.bas b/testautomation/spreadsheet/optional/c_print_scale.bas
new file mode 100755
index 000000000000..59d6be9c9032
--- /dev/null
+++ b/testautomation/spreadsheet/optional/c_print_scale.bas
@@ -0,0 +1,53 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@Sun.COM
+'*
+'* short description : Test calc print scaling
+'*
+'\***********************************************************************
+
+sub main
+
+ Printlog "--------------------------------------------------"
+ Printlog "--- Print scaling settings ---"
+ Printlog "--------------------------------------------------"
+
+ use "spreadsheet/optional/includes/printscale/c_print_scale.inc"
+ Call hStatusIn("spreadsheet", "c_print_scale.bas")
+ call subPrintScaling
+ Call hStatusOut
+end sub
+'
+'-------------------------------------------------------------------------------
+'
+sub LoadIncludeFiles
+ use "global/system/includes/master.inc"
+ use "global/system/includes/gvariabl.inc"
+ call getusefiles
+ gApplication = "CALC"
+end sub
diff --git a/testautomation/spreadsheet/optional/c_printrange.bas b/testautomation/spreadsheet/optional/c_printrange.bas
new file mode 100755
index 000000000000..b35f75bee084
--- /dev/null
+++ b/testautomation/spreadsheet/optional/c_printrange.bas
@@ -0,0 +1,67 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@Sun.COM
+'*
+'* short description : calc printrange level 2 test
+'*
+'\************************************************************************
+
+global sDefaultCalcFilter as STRING
+global sDefaultExtension as STRING
+
+sub main
+ dim startedAt
+ startedAt = now()
+ PrintLog "---------------------------------------------------------------------"
+
+ use "spreadsheet\optional\includes\printrange\c_printrange.inc"
+ use "spreadsheet\tools\includes\c_select_tools.inc"
+
+ call hStatusIn("spreadsheet", "c_printrange.bas")
+
+ sDefaultCalcFilter = "calc8"
+ sDefaultExtension = "ods"
+
+ call c_printrange
+
+ PrintLog "-------------------------------------------------------------------"
+ Printlog " End: " + Date + " at: " + Time + " Duration: " + wielange(startedAt)
+ PrintLog "-------------------------------------------------------------------"
+
+ call hStatusOut
+
+end sub
+
+sub LoadIncludeFiles
+ use "global\system\includes\master.inc"
+ use "global\system\includes\gvariabl.inc"
+ use "global\tools\includes\optional\t_spreadsheet_tools1.inc"
+ gApplication = "CALC"
+ Call GetUseFiles
+
+end sub
diff --git a/testautomation/spreadsheet/optional/c_so7_pp1.bas b/testautomation/spreadsheet/optional/c_so7_pp1.bas
new file mode 100755
index 000000000000..8a949dfc14ff
--- /dev/null
+++ b/testautomation/spreadsheet/optional/c_so7_pp1.bas
@@ -0,0 +1,69 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@Sun.COM
+'*
+'* short description : Test bug fixes made for StarOffice 7 PP1 - srx645_m22s1-5
+'*
+'\***********************************************************************
+
+sub main
+
+PrintLog "---------------------------------------------------------------------"
+Printlog "----- Calc SO7 PP1 Bug Fix Check -----"
+PrintLog "---------------------------------------------------------------------"
+
+ use "spreadsheet\optional\includes\so7pp1\c_so7_pp1_iz.inc"
+ use "spreadsheet\optional\includes\so7pp1\c_so7_pp1_ibis.inc"
+ use "spreadsheet\tools\includes\c_select_tools.inc"
+
+ Call hStatusIn("spreadsheet", "c_so7_pp1.bas", "Test bug fixes made for StarOffice 7 PP1")
+
+ Printlog Chr(13) + "--------- Izzuezilla Bugs fixed? ---------"
+
+ call tIZ19381
+ call tIZ21036
+
+ Printlog Chr(13) + "--------- IBIS Bugs fixed? ---------"
+
+ call tIBIS111099
+ call tIBIS111158
+ call tIBIS111711
+
+ call hStatusOut
+
+end sub
+
+sub LoadIncludeFiles
+
+ use "global\system\includes\master.inc"
+ use "global\system\includes\gvariabl.inc"
+ gApplication = "CALC"
+ Call GetUseFiles
+
+End Sub
+
diff --git a/testautomation/spreadsheet/optional/c_solver.bas b/testautomation/spreadsheet/optional/c_solver.bas
new file mode 100755
index 000000000000..60744c0ef319
--- /dev/null
+++ b/testautomation/spreadsheet/optional/c_solver.bas
@@ -0,0 +1,62 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Functionality Test - Solver in Spreadsheet
+'*
+'\***********************************************************************
+
+
+sub main
+ use "spreadsheet/optional/includes/solver/c_solver.inc"
+ use "spreadsheet/tools/includes/c_select_tools.inc"
+ use "spreadsheet/tools/includes/c_cell_tools.inc"
+ use "spreadsheet/tools/includes/c_l10n_tools.inc"
+
+ Printlog "--------------------------------------------------"
+ Printlog "--- Test for Solver in calc ---"
+ Printlog "--------------------------------------------------"
+
+ Call hStatusIn("spreadsheet", "c_solver.bas")
+
+ Call tExampleCalculation
+ Call tExampleCalculation2
+
+ Call hStatusOut
+end sub
+'
+'-------------------------------------------------------------------------------
+'
+sub LoadIncludeFiles
+ use "global/system/includes/master.inc"
+ use "global/system/includes/gvariabl.inc"
+ use "global/tools/includes/optional/t_spreadsheet_tools1.inc"
+ gApplication = "CALC"
+ call getusefiles
+
+end sub
diff --git a/testautomation/spreadsheet/optional/c_validity.bas b/testautomation/spreadsheet/optional/c_validity.bas
new file mode 100644
index 000000000000..ed76836f40f7
--- /dev/null
+++ b/testautomation/spreadsheet/optional/c_validity.bas
@@ -0,0 +1,87 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'**
+'** owner : oliver.craemer@Sun.COM
+'**
+'** short description : extensive test for the validity functionality
+'**
+'\***********************************************************************
+
+global giWhichSecurityLevel as integer
+
+sub main
+
+ PrintLog "---------------------------------------------------------------------"
+ Printlog "----- Calc test validity -----"
+ PrintLog "---------------------------------------------------------------------"
+
+ use "spreadsheet/optional/includes/validity/c_validity.inc"
+ use "spreadsheet/tools/includes/c_select_tools.inc"
+ use "spreadsheet/tools/includes/c_validity_tools.inc"
+
+ printlog "Get the security level and set it to lower"
+ Call sPreconditions
+
+ Call hStatusIn("spreadsheet", "c_validity.bas")
+ call tValidity_Check_Message
+ call tValidity_Check_Excel
+ Call hStatusOut
+
+ printlog "Set the security level to starting value"
+ Call sResetSystemUnderTest
+end sub
+'
+'-------------------------------------------------------------------------------
+'
+sub LoadIncludeFiles
+ use "global\system\includes\master.inc"
+ use "global\system\includes\gvariabl.inc"
+ use "global\tools\includes\required\t_option2.inc"
+ gApplication = "CALC"
+ Call GetUseFiles
+end sub
+
+'
+'-------------------------------------------------------------------------------
+'
+sub sPreconditions
+ 'Init the iWhichSecurityLevel() variable with 2
+ 'which would be the normal state if it's impossible
+ 'to detect the macro security level.
+ giWhichSecurityLevel = 2
+ 'Get the macro security level and remember it.
+ 'and then set the Macro security level to (0) low
+ giWhichSecurityLevel = hSetMacroSecurity(0)
+end sub
+'
+'-------------------------------------------------------------------------------
+'
+sub sResetSystemUnderTest
+ 'Set the macro security level back to the value
+ 'which has it before the system was under test
+ call hSetMacroSecurity(giWhichSecurityLevel)
+end sub
diff --git a/testautomation/spreadsheet/optional/includes/arrayconstants/c_arrayconstants.inc b/testautomation/spreadsheet/optional/includes/arrayconstants/c_arrayconstants.inc
new file mode 100644
index 000000000000..6d57e1f13fcf
--- /dev/null
+++ b/testautomation/spreadsheet/optional/includes/arrayconstants/c_arrayconstants.inc
@@ -0,0 +1,312 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : calc arrayconstants level2 test
+'*
+'************************************************************************
+'*
+' #1 tArrayconstants01 ' Direct input and OASIS format
+' #1 tArrayconstants02 ' Import / Export to MSExcel
+'*
+'\***********************************************************************
+
+testcase tArrayconstants01
+
+ dim sFunctionTRUE as string
+ dim sFunctionFALSE as string
+ dim sFunctionSIN as string
+ dim sError512 as string
+ dim sError533 as string
+ dim sdecimalseperator as string
+ dim sLocalFile as string
+ dim sCellcontent as string
+
+ sFunctionTRUE = fFunctionName ("TRUE")
+ sFunctionFALSE = fFunctionName ("FALSE")
+ sFunctionSIN = fFunctionName ("SIN")
+ sError512 = fError_l10n ("512")
+ sError533 = fError_l10n ("533")
+ sDecimalseperator = GetDecimalSeperator
+ sLocalFile = convertpath ( gOfficepath & "user/work/arrayconstants.ods" )
+
+ '///Open new spreadsheet document
+ printlog "Open new spreadsheet document"
+ call hNewDocument
+
+ '///In cell A1 enter "={1;2;3}"
+ printlog "In cell A1 enter ""={1;2;3}"""
+ call fCalcSelectRange ("A1")
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys ("={1;2;3} <RETURN>")
+ '///Check that the cellvalue is "1"
+ printlog "Check that the cellvalue is ""1"""
+ call fCalcCompareCellValue ("A1","1")
+
+ '///In cell A2 enter "={1;2;3|4;5;6}"
+ printlog "In cell A2 enter ""={1;2;3|4;5;6}"""
+ call fCalcSelectRange ("A2")
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys ("={1;2;3|4;5;6} <RETURN>")
+ '///Check that the cellvalue is "1"
+ printlog "Check that the cellvalue is ""1"""
+ call fCalcCompareCellValue ("A2","1")
+
+ '///In cell A3 enter "={0;1;2|False;TRUE;"two"}"
+ printlog "In cell A3 enter ""={0;1;2|" & sFunctionFALSE & ";" & sFunctionTRUE & ";""two""}"""
+ call fCalcSelectRange ("A3")
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys ("={0;1;2|" & sFunctionFALSE & ";" & sFunctionTRUE & ";""two""} <RETURN>")
+ '///Check that the cellvalue is "0"
+ printlog "Check that the cellvalue is ""0"""
+ call fCalcCompareCellValue ("A3","0")
+
+ '///Multiselect cells A4:C4, type "=sin({1;2;3})" and press <ctrl shift enter>
+ printlog "Multiselect cells A4:C4, type ""=sin({1;2;3})"" and press <ctrl shift enter>"
+ call fCalcSelectRange ("A4:C4")
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys ("=" & sFunctionSIN & "({1;2;3}) <MOD1 SHIFT RETURN>")
+ '///Check that the cellvalue of A4 is "0.84"
+ printlog "Check that the cellvalue of A4 is ""0.8414709848"""
+ call fCalcSelectRange ("A5")
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys "=A4<TAB>=B4<TAB>=C4<RETURN>" 'because a part of a matrix is protected we need a helpcell with only the values
+ call fCalcCompareCellValue ("A5","0" & sDecimalseperator & "8414709848")
+ '///Check that the cell contents of B4 is "0.91"
+ printlog "Check that the cell contents of B4 is ""0.9092974268"""
+ call fCalcCompareCellValue ("B5","0" & sDecimalseperator & "9092974268")
+ '///Check that the cell contents of C4 is "0.14"
+ printlog "Check that the cell contents of C4 is ""0.1411200081"""
+ call fCalcCompareCellValue ("C5","0" & sDecimalseperator & "1411200081")
+
+ '///In cell A6 enter "={1;2|4;5;6}"
+ printlog "In cell A6 enter ""={1;2|4;5;6}"""
+ call fCalcSelectRange ("A6")
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys ("={1;2|4;5;6} <RETURN>")
+ '///Check that the cellvalue is "Err:512"
+ printlog "Check that the cellvalue is ""Err:512"""
+ call fCalcCompareCellValue ("A6",sError512)
+
+ '///In cell A7 enter "={1;2+3}"
+ printlog "In cell A7 enter ""={1;2+3}"""
+ call fCalcSelectRange ("A7")
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys ("={1;2+3} <RETURN>")
+ '///Check that the cellvalue is "Err:512"
+ printlog "Check that the cellvalue is ""Err:512"""
+ call fCalcCompareCellValue ("A7",sError512)
+
+ '///In cell A8 enter "={1;2;{3;4;5}}"
+ printlog "In cell A8 enter ""={1;2;{3;4;5}}"""
+ call fCalcSelectRange ("A8")
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys ("={1;2;{3;4;5}} <RETURN>")
+ kontext
+ '///Cancel appearing MsgBox for correction of a wrong formular
+ if active.exists then
+ active.no
+ end if
+ '///Check that the cellvalue is "Err:533"
+ printlog "Check that the cellvalue is ""Err:533"""
+ call fCalcCompareCellValue ("A8",sError533)
+
+ '///In cell A9 enter "={-1;2;3}"
+ printlog "In cell A9 enter ""={-1;2;3}"""
+ call fCalcSelectRange ("A9")
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys ("={-1;2;3} <RETURN>")
+ '///Check that the cellvalue is "-1"
+ printlog "Check that the cellvalue is ""-1"""
+ call fCalcCompareCellValue ("A9",-1)
+
+ '///Save document
+ printlog "Save document"
+ call hFileSaveAsKill ( slocalfile )
+
+ '/// Close document
+ printlog "Close document"
+ call hCloseDocument
+
+ '/// Load Document
+ printlog "Load Document"
+ call hFileOpen ( slocalfile )
+ sleep (2)
+
+ '///Check that all formulars are the same as before.
+ printlog "Check that all formulars are the same as before."
+
+ '///+Check that the editline shows "={1;2;3}" for cell A1
+ printlog " Check that the editline shows ""={1;2;3}"" for cell A1"
+ scellcontent = "={1;2;3}"
+ call fCalcCompareCellFormular ("A1",scellcontent)
+
+ '///+Check that the editline shows "={1;2;3|4;5;6}" for cell A2
+ printlog " Check that the editline shows ""={1;2;3|4;5;6}"" for cell A2"
+ scellcontent = "={1;2;3|4;5;6}"
+ call fCalcCompareCellFormular ("A2",scellcontent)
+
+ '///+Check that the editline shows "={0;1;2|False;TRUE;"two"}" for cell A3
+ printlog " Check that the editline shows ""={0;1;2|" & sFunctionFALSE & ";" & sFunctionTRUE & ";""two""}"" for cell A3"
+ scellcontent = "={0;1;2|" & sFunctionFALSE & ";" & sFunctionTRUE & ";""two""}"
+ call fCalcCompareCellFormular ("A3",scellcontent)
+
+ '///+Check that the editline shows "=SIN({1;2;3})" for cell A4:C4
+ printlog " Check that the editline shows ""=" & sFunctionSIN & "({1;2;3})"" for cell A4:C4"
+ scellcontent = "=" & sFunctionSIN & "({1;2;3})"
+ call fCalcCompareCellFormular ("A4:C4",scellcontent)
+
+ '///+Check that the editline shows "={1;2|4;5;6}" for cell A6
+ printlog " Check that the editline shows ""={1;2|4;5;6}"" for cell A6"
+ scellcontent = "={1;2|4;5;6}"
+ call fCalcCompareCellFormular ("A6",scellcontent)
+
+ '///+Check that the editline shows "={1;2+3}" for cell A7
+ printlog " Check that the editline shows ""={1;2+3}"" for cell A7"
+ scellcontent = "={1;2+3}"
+ call fCalcCompareCellFormular ("A7",scellcontent)
+
+ '///+Check that the editline shows "={1;2;{3;4;5}}" for cell A8
+ printlog " Check that the editline shows ""={1;2;{3;4;5}}"" for cell A8"
+ scellcontent = "={1;2;{3;4;5}}"
+ call fCalcCompareCellFormular ("A8",scellcontent)
+
+ '///+Check that the editline shows "={-1;2;3}" for cell A9
+ printlog " Check that the editline shows ""={-1;2;3}"" for cell A9"
+ scellcontent = "={-1;2;3}"
+ call fCalcCompareCellFormular ("A9",scellcontent)
+
+ '///Close Document
+ printlog "Close Document"
+ call hCloseDocument
+ hFileDelete( sLocalFile )
+
+endcase
+'
+'--------------------------------------------------------------------
+'
+testcase tArrayconstants02
+
+ Dim sImportFile as string
+ Dim sFunctionSUM as string
+ Dim sFunctionMDETERM as string
+ Dim sCellcontent as string
+
+ sImportFile = convertpath ( gTesttoolpath & "spreadsheet/optional/input/arrayconstants.xls" )
+ sFunctionSUM = fFunctionName ("SUM")
+ sFunctionMDETERM = fFunctionName ("MDETERM")
+
+ '///Load xls testdocument <i>gTestToolPath</i>/spreadsheet/optional/input/arrayconstants.xls
+ printlog "Load xls testdocument <i>gTestToolPath</i>/spreadsheet/optional/input/arrayconstants.xls"
+ call hFileOpenLocally( sImportFile )
+
+ '///Check that the cell contents of B4 is 1
+ printlog "Check that the cell contents of B4 is 1"
+ call fCalcCompareCellValue ("F4","1")
+ '///Check that the cell contents of C5 is 4
+ printlog "Check that the cell contents of C5 is 4"
+ call fCalcCompareCellValue ("G5","4")
+ '///Check that the editline shows "={1;2|3;4}" for cell B4
+ printlog "Check that the editline shows ""={1;2|3;4}"" for cell B4"
+ scellcontent = "={1;2|3;4}"
+ call fCalcCompareCellFormular ("B4:C5",scellcontent)
+ '///Check that the cell contents of B8 is 10
+ printlog "Check that the cell contents of B8 is 10"
+ call fCalcCompareCellValue ("B8","10")
+ '///Check that the editline for cell B8 is "=SUM({1;2|3;4})"
+ printlog "Check that the editline for cell B8 is ""=SUM({1;2|3;4})"""
+ scellcontent = "=" & sFunctionSUM & "({1;2|3;4})"
+ call fCalcCompareCellFormular ("B8",scellcontent)
+ '///Check that the cell contents of B11 is -2
+ printlog "Check that the cell contents of B11 is -2"
+ call fCalcCompareCellValue ("B11","-2")
+ '///Check that the editline for cell B11 is "=MDETERM({1;2|3;4})"
+ printlog "Check that the editline for cell B11 is ""=MDETERM({1;2|3;4})"""
+ scellcontent = "=" & sFunctionMDETERM & "({1;2|3;4})"
+ call fCalcCompareCellFormular ("B11",scellcontent)
+ '///Check that the cell contents of B14 is 1
+ printlog "Check that the cell contents of B14 is 1"
+ call fCalcCompareCellValue ("F14","1")
+ '///Check that the editline for cell B14 is "{=name}"
+ printlog "Check that the editline for cell B14 is ""=name"""
+ scellcontent = "=name"
+ call fCalcCompareCellFormular ("B14:C15",scellcontent)
+
+ '/// Save document back to xls locally
+ printlog "Save document back to xls locally"
+ call hFileSaveAsKill ( gLastWorkFile )
+
+ '/// Close document
+ printlog "Close document"
+ call hCloseDocument
+
+ '/// Load Document
+ printlog "Load Document"
+ call hFileOpen ( gLastWorkFile )
+ sleep (2)
+
+ '///Check that all cellvalues are the same as before
+ printlog "Check that all cellvalues are the same as before"
+ '///+Check that the cell contents of B4 is 1
+ printlog "Check that the cell contents of B4 is 1"
+ call fCalcCompareCellValue ("F4","1")
+ '///+Check that the cell contents of C5 is 4
+ printlog "Check that the cell contents of C5 is 4"
+ call fCalcCompareCellValue ("G5","4")
+ '///+Check that the editline shows "={1;2|3;4}" for cell B4
+ printlog "Check that the editline shows ""={1;2|3;4}"" for cell B4"
+ scellcontent = "={1;2|3;4}"
+ call fCalcCompareCellFormular ("B4:C5",scellcontent)
+ '///+Check that the cell contents of B8 is 10
+ printlog "Check that the cell contents of B8 is 10"
+ call fCalcCompareCellValue ("B8","10")
+ '///+Check that the editline for cell B8 is "=SUM({1;2|3;4})"
+ printlog "Check that the editline for cell B8 is ""=SUM({1;2|3;4})"""
+ scellcontent = "=" & sFunctionSUM & "({1;2|3;4})"
+ call fCalcCompareCellFormular ("B8",scellcontent)
+ '///+Check that the cell contents of B11 is -2
+ printlog "Check that the cell contents of B11 is -2"
+ call fCalcCompareCellValue ("B11","-2")
+ '///+Check that the editline for cell B11 is "=MDETERM({1;2|3;4})"
+ printlog "Check that the editline for cell B11 is ""=MDETERM({1;2|3;4})"""
+ scellcontent = "=" & sFunctionMDETERM & "({1;2|3;4})"
+ call fCalcCompareCellFormular ("B11",scellcontent)
+ '///+Check that the cell contents of B14 is 1
+ printlog "Check that the cell contents of B14 is 1"
+ call fCalcCompareCellValue ("F14","1")
+ '///+Check that the editline for cell B14 is "{=name}"
+ printlog "Check that the editline for cell B14 is ""=name"""
+ scellcontent = "=name"
+ call fCalcCompareCellFormular ("B14:C15",scellcontent)
+
+ '///Close document
+ printlog "Close document"
+ call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+endcase
diff --git a/testautomation/spreadsheet/optional/includes/getpivotdata/c_getpivotdata.inc b/testautomation/spreadsheet/optional/includes/getpivotdata/c_getpivotdata.inc
new file mode 100644
index 000000000000..e5f5e406ce60
--- /dev/null
+++ b/testautomation/spreadsheet/optional/includes/getpivotdata/c_getpivotdata.inc
@@ -0,0 +1,318 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : level 2 test for the getpivotdata function
+'*
+'************************************************************************
+'*
+' #1 tgetpivotdata_function_wizard ' Testcase for manually input of the function
+' #1 tgetpivotdata_xls_filter ' Testcase for import/export of the function
+'*
+'\***********************************************************************
+
+testcase tgetpivotdata_function_wizard
+
+ dim stestdocument as string
+ dim slocalfile as string
+ dim sfunctionstring as string
+ dim sfunctionname as string
+ dim sfunctionwithparameter as string
+
+ stestdocument = Convertpath (gTesttoolPath + "spreadsheet\optional\input\datapilot.ods" )
+ slocalfile = Convertpath ( gOfficePath + "user\work\datapilot.ods" )
+ setclipboard = ""
+
+ '/// Get localised string for function GETPIVOTDATA by fFunctionname
+ printlog "Get localised string for function GETPIVOTDATA by fFunctionname"
+ sfunctionname = fFunctionname("GETPIVOTDATA")
+
+ '/// Load testdocument <i>gTestToolPath</i>/spreadsheet/optional/input/datapilot.ods
+ printlog "Load testdocument datapilot.ods"
+ call hFileOpenLocally( stestdocument )
+
+ '/// Select cell I8 and open function wizard by INSERT FUNCTION
+ printlog "Select cell I8 and open function wizard by INSERT FUNCTION"
+ call fGotoCell ( "I8" )
+ InsertFunction
+ kontext ( "FunctionWizard" )
+ '/// Select category SPREADSHEET (11th category in listbox)
+ printlog "Select category SPREADSHEET (11th category in listbox)"
+ CategoryLB.select 11
+ '/// Select the function GETPIVOTDATA in the now filtered function list
+ printlog "Select the function GETPIVOTDATA in the now filtered function list"
+ try
+ FunctionLB.select sfunctionname
+ printlog " Function " & sfunctionname & " selected in category SPREADSHEET"
+ catch
+ warnlog "The function is not available under category SPREADSHEET"
+ endcatch
+ CategoryLB.select 2
+ try
+ FunctionLB.select sfunctionname
+ catch
+ warnlog "The function is generally not available"
+ FunctionWizard.OK
+ call hCloseDocument
+ goto endsub
+ endcatch
+ '/// Press NEXT button
+ printlog "Press NEXT button"
+ Forward.click
+ '/// Enter 2000 for parameter Data Field
+ printlog "Enter 2000 for parameter Data Field"
+ kontext "FunctionWizard"
+ Editfield1.settext "2000"
+ '/// Enter C29 for parameter DataPilot
+ printlog "Enter C29 for parameter DataPilot"
+ Editfield2.settext "C29"
+ '/// Enter C3 for parameter Field Name / Item 1
+ printlog "Enter C3 for parameter Field Name / Item 1"
+ Editfield3.settext "C3"
+ '/// Enter C16 for parameter Field Name / Item 2
+ printlog "Enter C16 for parameter Field Name / Item 2"
+ Editfield4.settext "C16"
+ '/// Scroll down to enable the next field
+ printlog "Scroll down to enable the next field"
+ Editfield4.TypeKeys "<DOWN>"
+ '/// Enter C26 for parameter Field Name / Item 3
+ printlog "Enter C26 for parameter Field Name / Item 3"
+ Editfield4.settext "C26"
+ '/// Scroll down to enable the next field
+ printlog "Scroll down to enable the next field"
+ Editfield4.TypeKeys "<DOWN>"
+ '/// Enter F27 for parameter Field Name / Item 4
+ printlog "Enter F27 for parameter Field Name / Item 4"
+ Editfield4.settext "F27"
+ '/// Close functionwizard by pressing OK button
+ printlog "Close functionwizard by pressing OK button"
+ FunctionWizard.OK
+ '/// Memorize cellcontent
+ kontext ( "RechenleisteCalc" )
+ EingabeZeileCalc.TypeKeys ("<f2><mod1 a>")
+ editcopy
+ sfunctionwithparameter = GetClipboardText ()
+ '/// Press twice <ESCAPE> to leave the cell
+ printlog "Press twice <ESCAPE> to leave the cell"
+ kontext ( "DocumentCalc" )
+ DocumentCalc.TypeKeys "<ESCAPE>" , 2
+ '/// Verify that the function result is 100000
+ printlog "Verify that the function result is 100000"
+ call fCalcCompareCellValue ( "I8",100000 )
+ '/// Save the document again
+ printlog "Save the document again"
+ if NOT hFileSaveAsKill (slocalfile) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ else
+ printlog " File saved successfully."
+ end if
+ '/// Close the file with File/close
+ printlog "Close the file with File/close"
+ call hCloseDocument
+ sleep(3)
+ '/// Load localy saved document
+ printlog "Load localy saved document"
+ call hFileOpen ( slocalfile )
+ '/// Verify that cell I8 still shows 100000
+ printlog "Verify that cell I8 still shows 100000"
+ call fCalcCompareCellValue ( "I8",100000 )
+ '/// Verify that the function in cell I8 is still =GETPIVOTDATA("2000";C29;C3;C16;C26;F27)
+ printlog "Verify that the function in cell I8 is still " & sfunctionwithparameter
+ kontext ( "RechenleisteCalc" )
+ EingabeZeileCalc.TypeKeys ("<f2><mod1 a>")
+ editcopy
+ if GetClipboardText () = sfunctionwithparameter then
+ printlog " The function was successfully saved and reloaded"
+ else warnlog "The function is not " & sfunctionwithparameter & ", it is " & GetClipboardText ()
+ end if
+ '/// Press twice <ESCAPE> to leave the cell
+ printlog "Press twice <ESCAPE> to leave the chart object"
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys "<ESCAPE>" , 2
+ '/// Close document
+ printlog "Close document"
+ call hCloseDocument
+ sleep(3)
+'///
+endcase
+'
+'---------------------------------------------------------------------------
+'
+testcase tgetpivotdata_xls_filter
+
+ dim stestdocument as string
+ dim slocalfile as string
+ dim sfunctionparameter as string
+ dim sfunctionname as string
+ dim sfunctionwithparameter as string
+ dim sdecimalseperator as string
+
+ stestdocument = Convertpath (gTesttoolPath + "spreadsheet\optional\input\getpivotdata2.xls" )
+ 'stestdocument = Convertpath ( gOfficePath + "user\work\test.ods" )
+ slocalfile = Convertpath ( gOfficePath + "user\work\getpivotdata2.xls" )
+ sdecimalseperator = GetDecimalSeperator
+ setclipboard = ""
+ sfunctionname = fFunctionname("GETPIVOTDATA")
+
+ '/// Load testdocument <i>gTestToolPath</i>/spreadsheet/optional/input/getpivotdata2.xls
+ printlog "Load testdocument getpivotdata2.xls"
+ call hFileOpenLocally( stestdocument )
+ '/// Verify that Cell G12 shows 2.5
+ printlog "Verify that Cell G12 shows 2" & sdecimalseperator & "5"
+ call fCalcCompareCellValue ("G12","2" & sdecimalseperator & "5")
+ '/// Verify that the function is =GETPIVOTDATA("val";$F$5;"col1";"a";"col2";"x")
+ printlog "Verify that the function is =GETPIVOTDATA(""val"";$F$5;""col1"";""a"";""col2"";""x"")"
+ kontext ( "RechenleisteCalc" )
+ EingabeZeileCalc.TypeKeys ("<f2><mod1 a>")
+ editcopy
+ sfunctionwithparameter = GetClipboardText ()
+ '/// Press twice <ESCAPE> to leave the cell
+ 'printlog "Press twice <ESCAPE> to leave the cell"
+ kontext ( "DocumentCalc" )
+ DocumentCalc.TypeKeys "<ESCAPE>" , 2
+ if sfunctionwithparameter = "=" & sfunctionname & "(""val"";$F$5;""col1"";""a"";""col2"";""x"")" then
+ printlog " The function is correct"
+ else
+ warnlog "The function is " & sfunctionwithparameter & " instead of =GETPIVOTDATA(""val"";$F$5;""col1"";""a"";""col2"";""x"")"
+ end if
+
+ '/// Verify that Cell G27 shows 0.05
+ printlog "Verify that Cell G27 shows 0" & sdecimalseperator & "05"
+ call fCalcCompareCellValue ("G27","0" & sdecimalseperator & "05")
+ '/// Verify that the function is =GETPIVOTDATA("val";$F$19;"col1";"a";"col2";"y")
+ printlog "Verify that the function is =GETPIVOTDATA(""val"";$F$19;""col1"";""a"";""col2"";""y"")"
+ kontext ( "RechenleisteCalc" )
+ EingabeZeileCalc.TypeKeys ("<f2><mod1 a>")
+ editcopy
+ sfunctionwithparameter = GetClipboardText ()
+ '/// Press twice <ESCAPE> to leave the cell
+ 'printlog "Press twice <ESCAPE> to leave the cell"
+ kontext ( "DocumentCalc" )
+ DocumentCalc.TypeKeys "<ESCAPE>" , 2
+ if sfunctionwithparameter = "=" & sfunctionname & "(""val"";$F$19;""col1"";""a"";""col2"";""y"")" then
+ printlog " The function is correct"
+ else
+ warnlog "The function is " & sfunctionwithparameter & " instead of =GETPIVOTDATA(""val"";$F$19;""col1"";""a"";""col2"";""y"")"
+ end if
+
+ '/// Verify that Cell G43 shows 3
+ printlog "Verify that Cell G43 shows 3"
+ call fCalcCompareCellValue ("G43","3")
+ '/// Verify that the function is =GETPIVOTDATA("val";$F$33;"col1";"a";"col2";"z";"col3";"p"))
+ printlog "Verify that the function is =GETPIVOTDATA(""val"";$F$33;""col1"";""a"";""col2"";""z"";""col3"";""p"")"
+ kontext ( "RechenleisteCalc" )
+ EingabeZeileCalc.TypeKeys ("<f2><mod1 a>")
+ editcopy
+ sfunctionwithparameter = GetClipboardText ()
+ '/// Press twice <ESCAPE> to leave the cell
+ 'printlog "Press twice <ESCAPE> to leave the cell"
+ kontext ( "DocumentCalc" )
+ DocumentCalc.TypeKeys "<ESCAPE>" , 2
+ if sfunctionwithparameter = "=" & sfunctionname & "(""val"";$F$33;""col1"";""a"";""col2"";""z"";""col3"";""p"")" then
+ printlog " The function is correct"
+ else
+ warnlog "The function is " & sfunctionwithparameter & " instead of =GETPIVOTDATA(""val"";$F$33;""col1"";""a"";""col2"";""z"";""col3"";""p"")"
+ end if
+
+ '/// Save document back to xls locally
+ printlog "Save document back to xls locally"
+ call hFileSaveAsKill ( slocalfile )
+
+ '/// Close document
+ printlog "Close document"
+ call hCloseDocument
+
+ '/// Load Document
+ printlog "Load Document"
+ call hFileOpen ( slocalfile )
+ sleep (2)
+
+'/// Verify that Cell G12 shows 2.5
+ printlog "Verify that Cell G12 shows 2" & sdecimalseperator & "5"
+ call fCalcCompareCellValue ("G12","2" & sdecimalseperator & "5")
+ '/// Verify that the function is =GETPIVOTDATA("val";$F$5;"col1";"a";"col2";"x")
+ printlog "Verify that the function is =GETPIVOTDATA(""val"";$F$5;""col1"";""a"";""col2"";""x"")"
+ kontext ( "RechenleisteCalc" )
+ EingabeZeileCalc.TypeKeys ("<f2><mod1 a>")
+ editcopy
+ sfunctionwithparameter = GetClipboardText ()
+ '/// Press twice <ESCAPE> to leave the cell
+ 'printlog " Press twice <ESCAPE> to leave the cell"
+ kontext ( "DocumentCalc" )
+ DocumentCalc.TypeKeys "<ESCAPE>" , 2
+ if sfunctionwithparameter = "=" & sfunctionname & "(""val"";$F$5;""col1"";""a"";""col2"";""x"")" then
+ printlog " The function is correct"
+ else
+ warnlog "The function is " & sfunctionwithparameter & " instead of =GETPIVOTDATA(""val"";$F$5;""col1"";""a"";""col2"";""x"")"
+ end if
+
+ '/// Verify that Cell G27 shows 0.05
+ printlog "Verify that Cell G27 shows 0" & sdecimalseperator & "05"
+ call fCalcCompareCellValue ("G27","0" & sdecimalseperator & "05")
+ '/// Verify that the function is =GETPIVOTDATA("val";$F$19;"col1";"a";"col2";"y")
+ printlog "Verify that the function is =GETPIVOTDATA(""val"";$F$19;""col1"";""a"";""col2"";""y"")"
+ kontext ( "RechenleisteCalc" )
+ EingabeZeileCalc.TypeKeys ("<f2><mod1 a>")
+ editcopy
+ sfunctionwithparameter = GetClipboardText ()
+ '/// Press twice <ESCAPE> to leave the cell
+ 'printlog " Press twice <ESCAPE> to leave the cell"
+ kontext ( "DocumentCalc" )
+ DocumentCalc.TypeKeys "<ESCAPE>" , 2
+ if sfunctionwithparameter = "=" & sfunctionname & "(""val"";$F$19;""col1"";""a"";""col2"";""y"")" then
+ printlog " The function is correct"
+ else
+ warnlog "The function is " & sfunctionwithparameter & " instead of =GETPIVOTDATA(""val"";$F$19;""col1"";""a"";""col2"";""y"")"
+ end if
+
+ '/// Verify that Cell G43 shows 3
+ printlog "Verify that Cell G43 shows 3"
+ call fCalcCompareCellValue ("G43","3")
+ '/// Verify that the function is =GETPIVOTDATA("val";$F$33;"col1";"a";"col2";"z";"col3";"p"))
+ printlog "Verify that the function is =GETPIVOTDATA(""val"";$F$33;""col1"";""a"";""col2"";""z"";""col3"";""p"")"
+ kontext ( "RechenleisteCalc" )
+ EingabeZeileCalc.TypeKeys ("<f2><mod1 a>")
+ editcopy
+ sfunctionwithparameter = GetClipboardText ()
+ '/// Press twice <ESCAPE> to leave the cell
+ 'printlog " Press twice <ESCAPE> to leave the cell"
+ kontext ( "DocumentCalc" )
+ DocumentCalc.TypeKeys "<ESCAPE>" , 2
+ if sfunctionwithparameter = "=" & sfunctionname & "(""val"";$F$33;""col1"";""a"";""col2"";""z"";""col3"";""p"")" then
+ printlog "The function is correct"
+ else
+ warnlog "The function is " & sfunctionwithparameter & " instead of =GETPIVOTDATA(""val"";$F$33;""col1"";""a"";""col2"";""z"";""col3"";""p"")"
+ end if
+
+ '/// Close document
+ printlog "Close document"
+ call hCloseDocument
+ sleep(3)
+endcase
diff --git a/testautomation/spreadsheet/optional/includes/import_general/c_import_general.inc b/testautomation/spreadsheet/optional/includes/import_general/c_import_general.inc
new file mode 100644
index 000000000000..d53c23fbbe3d
--- /dev/null
+++ b/testautomation/spreadsheet/optional/includes/import_general/c_import_general.inc
@@ -0,0 +1,196 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'**
+'** owner : oliver.craemer@oracle.com
+'**
+'** short description : Imports every Document from a given path (gsSourcePath variable)
+'**
+'*************************************************************************
+'**
+' #1 tLoadAllDocuments (gsSourcePath as string )
+' #1 tLoadSpreadsheetDocument
+' #1 fCalcFileOpen
+'**
+'\*******************************************************************
+
+sub tLoadAllDocuments ( gsSourcePath as string )
+ Dim i as integer
+ Dim x as integer
+
+ dim gsSourceDocument( 50 ) as string
+
+ printlog "Source path: " & gsSourcePath
+ 'Get the files into a list.
+ Call GetAllFileList(gsSourcePath, "*.*" , gsSourceDocument())
+ x = ListCount(gsSourceDocument())
+ printlog "- " + x + " steps will be done"
+ for i = 1 to x
+ printlog "(" & i & "/" & x & "): " & gsSourceDocument(i)
+ Call tLoadSpreadsheetDocument(gsSourceDocument(i))
+ sleep(5)
+ next i
+end sub
+'
+'-------------------------------------------------------------------------------
+'
+function IsItLoaded as boolean
+ '/// IsItLoaded
+ '/// Wait until document is loaded
+ Dim iLoop as integer
+
+ IsItLoaded = FALSE
+ sleep(3)
+ for iLoop =1 to 20
+ try
+ 'Calling slot 'IsDocLoading'
+ IsItLoaded = IsDocLoading
+ catch
+ IsItLoaded = FALSE
+ endcatch
+
+ if IsItLoaded = TRUE then
+ exit for
+ end if
+ sleep(1)
+ next iLoop
+ sleep(2)
+end function
+'
+'-------------------------------------------------------------------------------
+'
+testcase tLoadSpreadsheetDocument (SourceFile)
+
+ Dim sOnlyFileName as string
+ Dim sOnlyFileExtension as string
+ Dim sTempFileName as String
+ Dim i as integer
+
+ sTempFileName = SourceFile
+ sOnlyFileName = DateiOhneExt(DateiExtract(SourceFile)
+ sOnlyFileExtension = GetExtention(sTempFileName)
+
+ select case ( sOnlyFileName )
+ case "so3tmpl", "so4tmpl", "so5tmpl" : printlog "Test case: " & sOnlyFileName & "." & sOnlyFileExtension
+ case else : printlog "Test case: " & sOnlyFileName & "." & sOnlyFileExtension
+ end select
+
+ 'Maybe file name is empty
+ if sOnlyFileName > "" then
+ 'Some extensions make no sense to load
+ if sOnlyFileExtension <> "so" AND sOnlyFileExtension <> "tmp" AND sOnlyFileExtension <> "dbt" then
+ if fCalcFileOpen(SourceFile) AND IsItLoaded()then
+ if (hIsNamedDocLoaded (SourceFile)) then
+ printlog "- loaded"
+ sleep(15)
+ Call hCloseDocument
+ else
+ warnlog sOnlyFileName + " document has not been loaded correctly [hIsNamedDocLoaded]!"
+ hFileCloseAll()
+ endif
+ else
+ warnlog sOnlyFileName + " document has not been loaded correctly [fCalcFileOpen; IsItLoaded]!"
+ hFileCloseAll()
+ endif
+ else
+ printlog "(" + sOnlyFileName + "." + sOnlyFileExtension + ") won't be loaded because of excluded extensions .so and .tmp."
+ hFileCloseAll()
+ endif
+ endif
+endcase
+'
+'-------------------------------------------------------------------------------
+'
+function fCalcFileOpen (sDocName as string, optional bLinked as boolean) as boolean
+ Dim sSourceFile as String
+ 'Loads the spreadsheet documents like hLoadDocument but with special handling of
+ 'spreadsheet import filter dialogs, like ASCII, Lotus, dBase, CSV, ...
+ sSourceFile = ConvertPath ( sDocName )
+
+ fCalcFileOpen = TRUE
+ if FileExists (sSourceFile) = FALSE then
+ warnlog "fCalcFileOpen: '" + sSourceFile + "' does not exists!"
+ fCalcFileOpen = FALSE
+ else
+ 'Slot: FileOpen
+ FileOpen
+ sleep (1)
+ Kontext "OeffnenDlg"
+ Dateiname.SetText(sSourceFile)
+ sleep (3)
+ Oeffnen.Click
+ sleep (20)
+
+ 'If .txt ASCII-filter dialog will come up.
+ Kontext "AsciiFilterOptionen"
+ if AsciiFilterOptionen.Exists(1) then
+ printlog "- ASCII filter dialog is up!"
+ AsciiFilterOptionen.Ok
+ endif
+
+ 'If Lotus 1-2-3 or dBase files will be opend the import characters
+ 'dialog will come up
+ Kontext "ExportCalc"
+ if ExportCalc.Exists(1) then
+ printlog "- Import character set selection dialog is up!"
+ ExportCalc.Ok
+ endif
+
+ 'Importing detected (e.g. extension .csv) CSV files will bring
+ ' up the Text import dialog
+ Kontext "TextImport"
+ if TextImport.Exists(1) then
+ printlog "- Text import dialog is up!"
+ TextImport.OK
+ endif
+
+ Kontext "Active"
+ if Active.Exists(3) then
+ if IsMissing(bLinked) then
+ warnlog "fCalcFileOpen: " + Active.GetText
+ else
+ printlog "fCalcFileOpen: " + Active.GetText
+ end if
+ try
+ Active.OK
+ catch
+ if IsMissing(bLinked) then
+ 'e.g. Links won't be updated
+ Active.No
+ else
+ 'e.g. Links will be updated
+ Active.Yes
+ end if
+ endcatch
+ Kontext "OeffnenDlg"
+ if OeffnenDlg.Exists(1) then
+ OeffnenDlg.Cancel
+ fCalcFileOpen = FALSE
+ Warnlog "fCalcFileOpen: The File-Open-Dialog is open!"
+ end if
+ end if
+ end if
+end function
diff --git a/testautomation/spreadsheet/optional/includes/namedrange/c_namedrange.inc b/testautomation/spreadsheet/optional/includes/namedrange/c_namedrange.inc
new file mode 100644
index 000000000000..25926d626bd4
--- /dev/null
+++ b/testautomation/spreadsheet/optional/includes/namedrange/c_namedrange.inc
@@ -0,0 +1,188 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : calc named range level 2 test
+'*
+'*************************************************************************
+'*
+' #1 c_namedrange ' Initial routine
+' #1 tAssignRangeName
+' #1 tCheckErrorInvalidRangeName
+' #1 tCheckErrorInvalidRangeSelected
+'*
+'\************************************************************************
+'TODO: add some old features
+
+sub cNamedRange
+
+Printlog Chr(13) + "--------- named range ---------"
+
+ call tAssignRangeName
+ call tCheckErrorInvalidRangeName
+ call tCheckErrorInvalidRangeSelected
+End sub
+'
+'---------------------------------------------------------------------------
+
+testcase tAssignRangeName
+
+ dim sInputFile as string
+ sInputFile = convertpath(gTesttoolPath & "spreadsheet/optional/input/namedrange.sxc")
+ dim sOutputFile as String
+ sOutputFile = convertpath(gOfficePath & "user/work/assignrangename." & sDefaultExtension)
+
+
+ printlog "Assign range names in name box"
+
+ printlog " Load testdocument and save locally with current filter"
+ call hFileOpen (sInputFile)
+ if NOT hFileSaveAsWithFilterKill (sOutputFile , "calc8") then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+
+ printlog " Select range C2:F10"
+ call fCalcSelectRange("C2:F10")
+ printlog " Assign name 'FirstRange'"
+ call fCalcNameRange("FirstRange")
+ printlog " Select range X31996:AB32005"
+ call fCalcSelectRange("X31996:AB32005")
+ printlog " Assign name 'SecondRange'"
+ call fCalcNameRange("SecondRange")
+ printlog " Select range IT65533:IU65535"
+ call fCalcSelectRange("IT65533:IU65535")
+ printlog " Assign name 'ThördRänge' (Special Characters ;-)"
+ call fCalcNameRange("ThördRänge")
+ printlog " Select cell J333"
+ call fCalcSelectRange("J333")
+ printlog " Assign name 'OneCell'"
+ call fCalcNameRange("OneCell")
+ printlog " Save changes and reload"
+ FileSave
+ call hCloseDocument
+ call hFileOpen (sOutputFile)
+ printlog " Select range C2:F10"
+ call fCalcSelectRange("C2:F10")
+ printlog " Check for formula bar visibility"
+ Kontext "RechenleisteCalc"
+ if not RechenleisteCalc.isvisible then
+ warnlog "Formula bar was expected to be visible"
+ ViewToolbarsFormulaBar
+ end if
+ sleep(2)
+ printlog " Check name box for 'FirstRange'"
+ Kontext "RechenleisteCalc"
+ if Bereich.GetSelText = "FirstRange" then
+ printlog "Correct name assigned for 'C2:F10'"
+ else
+ warnlog "Name for 'C2:F10' is " & Bereich.GetSelText & " instead of 'FirstRange'"
+ end if
+ printlog " Select range X31996:AB32005"
+ call fCalcSelectRange("X31996:AB32005")
+ printlog " Check name box for 'SecondRange'"
+ Kontext "RechenleisteCalc"
+ if Bereich.GetSelText = "SecondRange" then
+ printlog "Correct name assigned for 'X31996:AB32005'"
+ else
+ warnlog "Name for 'X31996:AB32005' is " & Bereich.GetSelText & " instead of 'SecondRange'"
+ end if
+ printlog " Select range IT65533:IU65535"
+ call fCalcSelectRange("IT65533:IU65535")
+ printlog " Check name box for 'ThördRänge'"
+ Kontext "RechenleisteCalc"
+ if Bereich.GetSelText = "ThördRänge" then
+ printlog "Correct name assigned for 'IT65533:IU65535'"
+ else
+ warnlog "Name for 'IT65533:IU65535' is " & Bereich.GetSelText & " instead of 'ThördRänge'"
+ end if
+ printlog " Select cell J333"
+ call fCalcSelectRange("J333")
+ printlog " Check name box for 'OneCell'"
+ Kontext "RechenleisteCalc"
+ if Bereich.GetSelText = "OneCell" then
+ printlog "Correct name assigned for 'J333'"
+ else
+ warnlog "Name for 'J333' is " & Bereich.GetSelText & " instead of 'OneCell'"
+ end if
+ printlog " Close document and finish test</ul>"
+ sleep(2)
+ call hCloseDocument
+
+ endcase
+'
+'---------------------------------------------------------------------------
+'
+testcase tCheckErrorInvalidRangeName
+
+ printlog "Check for error messages when assigning invalid range name"
+ printlog " New calc document"
+ call hNewDocument
+ printlog " Select range C2:F10"
+ call fCalcSelectRange("C2:F10")
+ printlog " Try to assign name '%FirstRange'"
+ printlog " and check for failture"
+ if fCalcNameRange("%FirstRange") then
+ warnlog "OOPS, assigning invalid range name '%FirstRange' should fail!"
+ else
+ printlog "Invalid name was not accepted"
+ end if
+ printlog " Close document and finish test</ul>"
+ call hCloseDocument
+endcase
+'
+'---------------------------------------------------------------------------
+'
+testcase tCheckErrorInvalidRangeSelected
+
+ printlog "Check for error messages when assigning invalid range name"
+ printlog " New calc document"
+ call hNewDocument
+ printlog " Select range C2:F10"
+ call fCalcSelectRange("C2:D3")
+ printlog " Change calc selection mode"
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys ("<SHIFT F8>")
+ printlog " Add random cell to selection"
+ Kontext "DocumentCalc"
+ call gMouseClick (90,90)
+ printlog " Try to assign valid name 'FirstRange'"
+ printlog " and check for failture"
+ if fCalcNameRange("FirstRange") then
+ warnlog "OOPS, assigning invalid range selected with 'FirstRange' should fail!"
+ else
+ printlog "Invalid selection was not accepted"
+ end if
+ Kontext "DocumentCalc"
+ printlog " Reset calc selection mode"
+ DocumentCalc.TypeKeys ("<SHIFT F8>")
+ printlog " Close document and finish test"
+ call hCloseDocument
+endcase
+
diff --git a/testautomation/spreadsheet/optional/includes/printrange/c_printrange.inc b/testautomation/spreadsheet/optional/includes/printrange/c_printrange.inc
new file mode 100644
index 000000000000..6bfa955a483a
--- /dev/null
+++ b/testautomation/spreadsheet/optional/includes/printrange/c_printrange.inc
@@ -0,0 +1,923 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : spreadsheet printrange test
+'*
+'*************************************************************************
+'*
+' #1 tDefinePrintRange
+' #1 tAddPrintRange
+' #1 tRemovePrintRangeByContext
+' #1 tRemovePrintRangeByMenu
+' #1 tNamedRangeToPrintRange
+' #1 tEntireSheet
+' #1 tPrintRangeMouseSelection
+' #1 tEmptyRangeMessagebox
+'*
+'\************************************************************************
+'TODO: three test cases to go
+
+sub c_printrange
+
+Printlog Chr(13) + "--------- printrange ---------"
+
+ call tDefinePrintRange
+ call tAddPrintRange
+ call tRemovePrintRangeByContext
+ call tRemovePrintRangeByMenu
+ call tNamedRangeToPrintRange
+ call tEntireSheet
+ call tPrintRangeMouseSelection
+ call tEmptyRangeMessagebox
+
+End sub
+'
+'---------------------------------------------------------------------------
+
+testcase tDefinePrintRange
+
+ dim sRangeFile as string
+ dim sLocalFile as string
+
+ sRangeFile = convertpath ( gTesttoolpath & "spreadsheet/optional/input/printrange.sxc" )
+ sLocalFile = convertpath ( gOfficepath & "user/work/defineprintrange." & sDefaultExtension )
+
+ printlog " Load testdocument and save locally with current filter"
+ call hFileOpen ( sRangeFile )
+ if not hFileSaveAsWithFilterKill( sLocalFile , sDefaultCalcFilter ) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+
+ printlog " Select area B2:E5"
+ call fCalcSelectRange("B2:E5")
+ printlog " Define print range by menu Format-Print Ranges-Define"
+ FormatPrintRangesDefine
+ printlog " Activate Page Preview (File-Page Preview)"
+ FilePageView
+ sleep(2)
+ printlog " Check if there is only one page as output"
+ Kontext "Previewbar"
+ 'now all navigation buttons should be deactivated
+ 'if this is true there's only one page to print
+ 'that's what we check now
+ printlog "Check if all navigation buttons do not work"
+ printlog "True -> Only one page to print (expected result)"
+ printlog "False -> BUG"
+ Kontext "Previewbar"
+ try
+ OL_SEITENANSICHT_NaechsteSeiteCalc
+ warnlog "+ There seems to be more than one page -> BUG!?"
+ catch
+ printlog " + OK, 'next page' button does not work"
+ endcatch
+ Kontext "Previewbar"
+ try
+ OL_SEITENANSICHT_VorherigeSeiteCalc
+ warnlog "+ There seems to be more than one page -> BUG!?"
+ catch
+ printlog " + OK, 'previous page' button does not work"
+ endcatch
+ Kontext "Previewbar"
+ try
+ OL_SEITENANSICHT_ErsteSeiteCalc
+ warnlog "+ There seems to be more than one page -> BUG!?"
+ catch
+ printlog " + OK, 'first page' button does not work"
+ endcatch
+ Kontext "Previewbar"
+ try
+ OL_SEITENANSICHT_LetzteSeiteCalc
+ warnlog "+ There seems to be more than one page -> BUG!?"
+ catch
+ printlog " + OK, 'last page' button does not work"
+ endcatch
+ printlog " Close page preview"
+ FilePageView
+ printlog " Enable View-Page Break Preview"
+ ViewPageBreakPreview
+ printlog " Select area A1:C10"
+ call fCalcSelectRange("A1:C10")
+ printlog " Call context Define Print Range"
+ Kontext "DocumentCalc"
+ DocumentCalc.MouseMove(5,5)
+ sleep(2)
+ DocumentCalc.OpenContextMenu
+ sleep(2)
+ 'Because of the SunSearchToolbar, which is not available on OOo by default the count of
+ 'entries in the context could vary, therefor the desired entry must be searched.
+ if hMenuFindSelect(26602, true, 3) = false then
+ Warnlog "Context-Menu-entry `Define Print Range` was not found. Therefore the test ends."
+ Call hCloseDocument
+ Goto Endsub
+ end if
+ printlog "+ 'Define Print Range' was selected in context menu"
+ printlog " Activate Page Preview (File-Page Preview)"
+ FilePageView
+ sleep(2)
+ '///+ Check if there is only one page as output</li>
+ Kontext "Previewbar"
+ 'now all navigation buttons should be deactivated
+ 'if this is true there's only one page to print
+ 'that's what we check now
+ printlog "Check if all navigation buttons do not work"
+ printlog "True -> Only one page to print (expected result)"
+ printlog "False -> BUG"
+ Kontext "Previewbar"
+ try
+ OL_SEITENANSICHT_NaechsteSeiteCalc
+ warnlog "+ There seems to be more than one page -> BUG!?"
+ catch
+ printlog " + OK, 'next page' button does not work"
+ endcatch
+ Kontext "Previewbar"
+ try
+ OL_SEITENANSICHT_VorherigeSeiteCalc
+ warnlog "+ There seems to be more than one page -> BUG!?"
+ catch
+ printlog " + OK, 'previous page' button does not work"
+ endcatch
+ Kontext "Previewbar"
+ try
+ OL_SEITENANSICHT_ErsteSeiteCalc
+ warnlog "+ There seems to be more than one page -> BUG!?"
+ catch
+ printlog " + OK, 'first page' button does not work"
+ endcatch
+ Kontext "Previewbar"
+ try
+ OL_SEITENANSICHT_LetzteSeiteCalc
+ warnlog "+ There seems to be more than one page -> BUG!?"
+ catch
+ printlog " + OK, 'last page' button does not work"
+ endcatch
+ printlog " Close page preview"
+ FilePageView
+ printlog " At last check if the expected print range is selected"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ if DruckBereich.GetText = "$A$1:$C$10" then
+ printlog " Print range selection as expected"
+ else
+ warnlog "Expected print range is <$A$1:$C$10>, but we got: " & DruckBereich.GetText
+ end if
+ DruckbereicheBearbeiten.Cancel
+ sleep(2)
+ call hCloseDocument
+endcase
+
+'
+'---------------------------------------------------------------------------
+'
+testcase tAddPrintRange
+
+ dim sRangeFile as string
+ dim sLocalFile as string
+
+ sRangeFile = convertpath ( gTesttoolpath & "spreadsheet/optional/input/printrange.sxc" )
+ sLocalFile = convertpath ( gOfficepath & "user/work/addprintrange" & sDefaultExtension )
+
+ printlog " Load testdocument printrange.sxc and save locally with current filter"
+ call hFileOpen ( sRangeFile )
+ if ( not hFileSaveAsWithFilterKill( sLocalFile , sDefaultCalcFilter ) ) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+
+ printlog " Select area H11:J15"
+ ViewPageBreakPreview
+ call fCalcSelectRange("H11:J15")
+ printlog " Define print range by menu Format-Print Ranges-Define"
+ FormatPrintRangesDefine
+ printlog " Select area E41:H55"
+ call fCalcSelectRange("E41:H55")
+ printlog " Add print range by menu Format-Print Ranges-Add"
+ FormatPrintRangesAdd
+ printlog " Select area A1:F15"
+ call fCalcSelectRange("A1:F20")
+ printlog " Call context Add Print Range"
+ Kontext "DocumentCalc"
+ DocumentCalc.MouseMove(5,5)
+ sleep(2)
+ DocumentCalc.OpenContextMenu
+ sleep(2)
+ 'Because of the SunSearchToolbar, which is not available on OOo by default the count of
+ 'entries in the context could vary, therefor the desired entry must be searched.
+ if hMenuFindSelect(26651, true, 3) = false then
+ Warnlog "Context-Menu-entry `Add Print Range` was not found. Therefore the test ends."
+ Call hCloseDocument
+ Goto Endsub
+ end if
+ printlog "+ <Add Print Range> was selected in context menu"
+ sleep(2)
+ printlog " Save and Reload"
+ FileSave
+ sleep(5)
+ FileReload
+ sleep(10)
+ printlog " Check if the expected print range is selected"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ if DruckBereich.GetText = "$H$11:$J$15;$E$41:$H$55;$A$1:$F$20" then
+ printlog "Print range selection as expected"
+ else
+ warnlog "Expected print range is <$H$11:$J$15;$E$41:$H$55;$A$1:$F$20>, but we got: " & DruckBereich.GetText
+ end if
+ DruckbereicheBearbeiten.Cancel
+ sleep(1)
+ printlog " Check if the expected number of pages will be print"
+ FilePrint
+ kontext "Active"
+ if Active.exists( 2 ) then
+ Active.ok
+ end if
+
+ Kontext "Printing"
+ Kontext "TabPrintGeneral"
+ PrintPages.check
+ if PageRange.GetText = "1-3" then
+ printlog "+ Pages to print as expected"
+ else
+ warnlog "Expected pages to print are <1-3>, but we got: " & PageRange.GetText
+ end if
+ Kontext "Printing"
+ Printing.Cancel
+ sleep(2)
+ call hCloseDocument
+endcase
+
+'
+'---------------------------------------------------------------------------
+'
+testcase tRemovePrintRangeByContext
+
+ dim sRangeFile as string
+ dim sLocalFile as string
+
+ sRangeFile = convertpath ( gTesttoolpath & "spreadsheet/optional/input/printranges_3defined.ods" )
+ sLocalFile = convertpath ( gOfficepath & "user/work/removeprintrange." & sDefaultExtension )
+
+ printlog " Open test document '.../spreadsheet/optional/input/printranges_3defined.ods'"
+ call hFileOpen ( sRangeFile )
+ printlog " Save file locally '.../user/work/removeprintrange.ods'"
+ if ( not hFileSaveAsWithFilterKill( sLocalFile , sDefaultCalcFilter ) ) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check if print range is '$H$11:$J$15;$E$41:$H$55;$A$1:$F$20'"
+ if DruckBereich.GetText = "$H$11:$J$15;$E$41:$H$55;$A$1:$F$20" then
+ printlog "+ Print range selection as expected"
+ else
+ warnlog "Expected print range is <$H$11:$J$15;$E$41:$H$55;$A$1:$F$20>, but we got: " & DruckBereich.GetText
+ end if
+ printlog " Cancel print range dialog"
+ DruckbereicheBearbeiten.Cancel
+
+ Kontext "DocumentCalc"
+ printlog " Click in right buttom corner"
+ call gMouseClick ( 95, 95 )
+ sleep(2)
+ printlog " Open context menu"
+ DocumentCalc.OpenContextMenu
+ sleep(2)
+ printlog " Select 'Undo Print Range' in context menu"
+ 'Because of the SunSearchToolbar, which is not available on OOo by default the count of
+ 'entries in the context could vary, therefor the desired entry must be searched.
+ if hMenuFindSelect(26603, true, 3) = false then
+ warnlog "Context-Menu-entry `Undo Print Range` was not found. Therefore the test ends."
+ call hCloseDocument
+ goto endsub
+ end if
+ printlog "+ <Undo Print Range> was selected in context menu"
+
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check if no print range is defined"
+ if DruckBereich.GetText = "" then
+ printlog "+ No print range selected as expected"
+ else
+ warnlog "Expected print range is <EMPTY>, but we got: " & DruckBereich.GetText
+ end if
+ DruckbereicheBearbeiten.Cancel
+
+ sleep(2)
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'
+'---------------------------------------------------------------------------
+'
+testcase tRemovePrintRangeByMenu
+
+ dim sRangeFile as string
+ dim sLocalFile as string
+
+ sRangeFile = convertpath ( gTesttoolpath & "spreadsheet/optional/input/printranges_3defined.ods" )
+ sLocalFile = convertpath ( gOfficepath & "user/work/removeprintrange." & sDefaultExtension )
+
+ printlog " Open test document '.../spreadsheet/optional/input/printranges_3defined.ods'"
+ call hFileOpen ( sRangeFile )
+ printlog " Save file locally '.../user/work/removeprintrange.ods'"
+ if ( not hFileSaveAsWithFilterKill( sLocalFile , sDefaultCalcFilter ) ) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+
+ printlog "Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check if print range is '$H$11:$J$15;$E$41:$H$55;$A$1:$F$20'"
+ if DruckBereich.GetText = "$H$11:$J$15;$E$41:$H$55;$A$1:$F$20" then
+ printlog "+ Print range selection as expected"
+ else
+ warnlog "Expected print range is <$H$11:$J$15;$E$41:$H$55;$A$1:$F$20>, but we got: " & DruckBereich.GetText
+ end if
+ printlog "Cancel print range dialog"
+ DruckbereicheBearbeiten.Cancel
+
+ Kontext "DocumentCalc"
+ printlog " Invoke Format::Print Ranges::Remove"
+ FormatPrintRangesRemove
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ printlog " Check if no print range is defined"
+ Kontext "DruckbereicheBearbeiten"
+ if DruckBereich.GetText = "" then
+ printlog "+ No print range selected as expected"
+ else
+ warnlog "Expected print range is <EMPTY>, but we got: " & DruckBereich.GetText
+ end if
+ printlog " Cancel print range dialog"
+ DruckbereicheBearbeiten.Cancel
+ printlog " Undo removal"
+ EditUndo
+
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check if print range is '$H$11:$J$15;$E$41:$H$55;$A$1:$F$20'"
+ if DruckBereich.GetText = "$H$11:$J$15;$E$41:$H$55;$A$1:$F$20" then
+ printlog "+ Print range selection as expected"
+ else
+ warnlog "Expected print range is <$H$11:$J$15;$E$41:$H$55;$A$1:$F$20>, but we got: " & DruckBereich.GetText
+ end if
+ printlog " Cancel print range dialog"
+ DruckbereicheBearbeiten.Cancel
+ printlog " Redo removal"
+ EditRedo
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check if no print range is defined"
+ if DruckBereich.GetText = "" then
+ printlog "+ No print range selected as expected"
+ else
+ warnlog "Expected print range is <EMPTY>, but we got: " & DruckBereich.GetText
+ end if
+ printlog " Cancel print range dialog"
+ DruckbereicheBearbeiten.Cancel
+ printlog " Undo removal"
+ EditUndo
+ printlog " File::Save"
+ FileSave
+
+ sleep(2)
+ printlog " Close document"
+ call hCloseDocument
+ printlog " Re-open document"
+ call hFileOpen ( sLocalFile )
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check if print range is '$H$11:$J$15;$E$41:$H$55;$A$1:$F$20'"
+ if DruckBereich.GetText = "$H$11:$J$15;$E$41:$H$55;$A$1:$F$20" then
+ printlog "+ Print range selection as expected"
+ else
+ warnlog "Expected print range is <$H$11:$J$15;$E$41:$H$55;$A$1:$F$20>, but we got: " & DruckBereich.GetText
+ end if
+
+ DruckbereicheBearbeiten.Cancel
+ printlog " Cancel print range dialog"
+ sleep(2)
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'
+'---------------------------------------------------------------------------
+'
+testcase tNamedRangeToPrintRange
+
+ dim sLocalFile as STRING
+ sLocalFile = convertpath ( gOfficepath & "user/work/namedRange." & sDefaultExtension )
+ dim sAnotherFile as STRING
+ sAnotherFile = convertpath ( gOfficepath & "user/work/namedRange1." & sDefaultExtension )
+ dim sLocalFileXLS as STRING
+ sLocalFileXLS = convertpath ( gOfficepath & "user/work/namedRange.xls" )
+ dim sFormatXLS as STRING
+ sFormatXLS = "MS Excel 97"
+ dim sRangeToSelect as STRING
+ sRangeToSelect = "$B$3:$D$5"
+ dim sRangeName as STRING
+ sRangeName = "NamedRange"
+ dim sNewRangeToSelect as STRING
+ sNewRangeToSelect = "$C$4:$E$6"
+
+ printlog "Use named range as print range"
+
+ printlog " Open new document"
+ call hNewDocument
+ printlog " Select range '$B$3:$D$5'"
+ fCalcSelectRange ( sRangeToSelect )
+ printlog " Name this range 'NamedRange'"
+ fCalcNameRange ( sRangeName )
+ printlog " Invoke Insert::Names::Define"
+ InsertNamesDefine
+ sleep 1
+ Kontext "NamenFestlegen"
+ printlog " Select previously defined range"
+ BereichsName.typekeys "N"
+ sleep 1
+ printlog " Click 'More' button"
+ Zusaetze.Click
+ printlog " Check 'Print range'"
+ Druckbereich.Check
+ printlog " Click OK"
+ NamenFestlegen.OK
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Select 'NamedRange' as print range"
+ DruckbereichListe.select ( sRangeName )
+ printlog " Check if this is item no.5"
+ if NOT DruckbereichListe.getSelIndex = 5 then
+ warnlog "Unexpected selection for 'print range' listbox"
+ end if
+ printlog " Check if the according string is '$B$3:$D$5'"
+ if Druckbereich.getText <> sRangeToSelect then
+ warnlog "Unexpected string in 'print range' textbox"
+ end if
+ printlog " Click OK"
+ DruckbereicheBearbeiten.OK
+ printlog " Save file locally '.../user/work/namedRange.ods'"
+ if ( not hFileSaveAsWithFilterKill( sLocalFile , sDefaultCalcFilter ) ) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+ printlog " Close document"
+ call hCloseDocument
+ printlog " Open document"
+ call hFileOpen ( sLocalFile )
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check if item no.5 is selected as print range"
+ if DruckbereichListe.getSelIndex <> 5 then
+ warnlog "Unexpected selection for 'print range' listbox"
+ end if
+ printlog " Check if 'NamedRange' is selected as print range"
+ if DruckbereichListe.getSelText <> sRangeName then
+ warnlog "Unexpected selection for 'print range' listbox"
+ end if
+ printlog " Check if the according string is '$B$3:$D$5'"
+ if Druckbereich.getText <> sRangeToSelect then
+ warnlog "Unexpected string in 'print range' textbox"
+ end if
+ printlog " Cancel print range dialog"
+ DruckbereicheBearbeiten.Cancel
+ printlog " Save filein Excel97/2000/XP format '.../user/work/namedRange.xls'"
+ if NOT hFileSaveAsWithFilterKill ( sLocalFileXLS , sFormatXLS ) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+ printlog " Close document"
+ call hCloseDocument
+ printlog " Open document"
+ call hFileOpen ( sLocalFileXLS )
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check if item no.5 is selected as print range"
+ if DruckbereichListe.getSelIndex <> 5 then
+ warnlog "Unexpected selection for 'print range' listbox"
+ end if
+ printlog " Check if the according string is '$B$3:$D$5'"
+ if Druckbereich.getText <> sRangeToSelect then
+ warnlog "Unexpected string in 'print range' textbox"
+ end if
+ printlog " Cancel print range dialog"
+ DruckbereicheBearbeiten.Cancel
+ printlog " Invoke Insert::Names::Define"
+ InsertNamesDefine
+ sleep 1
+ Kontext "NamenFestlegen"
+ printlog " Select entry 'NamedRange'"
+ BereichsName.typekeys "N"
+ sleep 1
+ printlog " Assign new range, '$C$4:$E$6'"
+ ZugeordnetZu.SetText ( sNewRangeToSelect )
+ printlog " Click 'More'"
+ Zusaetze.Click
+ printlog " Check 'Print range'"
+ Druckbereich.Check
+ printlog " Click OK"
+ NamenFestlegen.OK
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Select 'NamedRange' as print range"
+ DruckbereichListe.select ( sRangeName )
+ printlog " Check if this is item no.6"
+ if NOT DruckbereichListe.getSelIndex = 6 then
+ warnlog "Unexpected selection for 'print range' listbox"
+ end if
+ printlog " Check if the according string is '$C$4:$E$6'"
+ if Druckbereich.getText <> sNewRangeToSelect then
+ warnlog "Unexpected string in 'print range' textbox"
+ end if
+ printlog " Click OK"
+ DruckbereicheBearbeiten.OK
+ printlog " Save file locally '.../user/work/namedRange1.ods'"
+ if NOT hFileSaveAsWithFilterKill ( sAnotherFile , sDefaultCalcFilter ) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+ printlog " Close document"
+ call hCloseDocument
+ printlog " Open document again"
+ call hFileOpen ( sAnotherFile )
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check if item no.6 is selected as print range"
+ if DruckbereichListe.getSelIndex <> 6 then
+ warnlog "Unexpected selection for 'print range' listbox"
+ end if
+ printlog " Check if 'NamedRange' is selected as print range"
+ if DruckbereichListe.getSelText <> sRangeName then
+ warnlog "Unexpected selection for 'print range' listbox"
+ end if
+ printlog " Check if the according string is '$C$4:$E$6'"
+ if Druckbereich.getText <> sNewRangeToSelect then
+ warnlog "Unexpected string in 'print range' textbox"
+ end if
+ printlog " Cancel print range dialog"
+ DruckbereicheBearbeiten.Cancel
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'
+'---------------------------------------------------------------------------
+'
+testcase tEntireSheet
+
+ dim sRangeFile as STRING
+ sRangeFile = convertpath ( gTesttoolpath & "spreadsheet/optional/input/printrange.xls" )
+ dim sLocalFile as STRING
+ sLocalFile = convertpath ( gOfficepath & "user/work/entireSheet." & sDefaultExtension )
+ dim sLocalFileXLS as STRING
+ sLocalFileXLS = convertpath ( gOfficepath & "user/work/entireSheet.xls" )
+ dim sFormatXLS as STRING
+ sFormatXLS = "MS Excel 97"
+
+ printlog " Open test document '.../spreadsheet/optional/input/printrange.xls'"
+ call hFileOpen ( sRangeFile )
+ printlog " Save file locally '.../user/work/entireSheet.ods'"
+ if NOT hFileSaveAsWithFilterKill ( sLocalFile , sDefaultCalcFilter ) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+ printlog " Select second sheet"
+ if NOT fCalcSelectSheet ( 2 ) then
+ warnlog "Selecting sheet no. 2 failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check if item no.2 (should be 'entire sheet') is selected in print range listbox"
+ if DruckbereichListe.getSelIndex = 2 then
+ printlog "+ OK, print range is '- entire sheet -'"
+ else
+ warnlog "Unexpected print range defined -> Check this out!"
+ end if
+ printlog " Cancel print range dialog"
+ DruckbereicheBearbeiten.Cancel
+ printlog " Close document"
+ call hCloseDocument
+ printlog " Open document"
+ call hFileOpen ( sLocalFile )
+ printlog " Select second sheet"
+ if NOT fCalcSelectSheet ( 2 ) then
+ warnlog "Selecting sheet no. 2 failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check if item no.2 (should be 'entire sheet') is selected in print range listbox"
+ if DruckbereichListe.getSelIndex = 2 then
+ printlog "+ OK, print range is '- entire sheet -'"
+ else
+ warnlog "Unexpected print range defined -> Check this out!"
+ end if
+ printlog " Cancel print range dialog"
+ DruckbereicheBearbeiten.Cancel
+ printlog " Save filein Excel97/2000/XP format '.../user/work/entireSheet.xls'"
+ if NOT hFileSaveAsWithFilterKill ( sLocalFileXLS , sFormatXLS ) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+ printlog " Close document"
+ call hCloseDocument
+ printlog " Open document again"
+ call hFileOpen ( sLocalFileXLS )
+ printlog " Select second sheet"
+ if NOT fCalcSelectSheet ( 2 ) then
+ warnlog "Selecting sheet no. 2 failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check if item no.2 (should be 'entire sheet') is selected in print range listbox"
+ if DruckbereichListe.getSelIndex = 2 then
+ printlog "+ OK, print range is '- entire sheet -'"
+ else
+ warnlog "Unexpected print range defined -> Check this out!"
+ end if
+ printlog " Cancel print range dialog"
+ DruckbereicheBearbeiten.Cancel
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'
+'---------------------------------------------------------------------------
+'
+testcase tPrintRangeMouseSelection
+
+ dim sLocalFile as STRING
+ sLocalFile = convertpath ( gOfficepath & "user/work/mouseSelection." & sDefaultExtension )
+ dim sSelectedRange as STRING
+ dim sSelectedRows as STRING
+ dim sSelectedColumns as STRING
+
+ printlog " Open new document"
+ call hNewDocument
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ printlog " Check if all settings are in initial state"
+ Kontext "DruckbereicheBearbeiten"
+ if NOT DruckbereichListe.getSelIndex = 1 then
+ warnlog "Unexpected selection for 'print range' listbox"
+ end if
+ if NOT WiederholungszeileListe.getSelIndex = 1 then
+ warnlog "Unexpected selection for 'rows to repeat' listbox"
+ end if
+ if NOT WiederholungsspalteListe.getSelIndex = 1 then
+ warnlog "Unexpected selection for 'columns to repeat' listbox"
+ end if
+ if Druckbereich.getText <> "" then
+ warnlog "Unexpected string in 'print range' textbox"
+ end if
+ if Wiederholungszeile.getText <> "" then
+ warnlog "Unexpected string in 'rows to repeat' textbox"
+ end if
+ if Wiederholungsspalte.getText <> "" then
+ warnlog "Unexpected string in 'columns to repeat' textbox"
+ end if
+ sleep(1)
+ printlog " Click print range button to shrink dialog"
+ DruckbereichButton.typekeys "<RETURN>"
+ sleep(1)
+ Kontext "DocumentCalc"
+ printlog " Select print range using mouse"
+ DocumentCalc.MouseDown ( 20 , 20 )
+ DocumentCalc.MouseMove ( 60 , 60 )
+ DocumentCalc.MouseUp ( 60 , 60 )
+ sleep(1)
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Click print range button to unshrink dialog again"
+ DruckbereichButton.typekeys "<RETURN>"
+ printlog " Rember to selection for later comparisson"
+ sleep(1)
+ sSelectedRange = Druckbereich.getText
+ printlog " Click 'rows to repeat' button to shrink dialog"
+ WiederholungszeileButton.typekeys "<RETURN>"
+ sleep(1)
+ Kontext "DocumentCalc"
+ printlog " Select 'rows to repeat' using mouse"
+ DocumentCalc.MouseDown ( 10 , 10 )
+ DocumentCalc.MouseMove ( 15 , 30 )
+ DocumentCalc.MouseUp ( 15 , 30 )
+ sleep(1)
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Click 'rows to repeat' button to unshrink dialog again"
+ WiederholungszeileButton.typekeys "<RETURN>"
+ sleep(1)
+ printlog " Remember to selection for later comparisson"
+ sSelectedRows = Wiederholungszeile.getText
+ printlog " Click 'columns to repeat' button to shrink dialog"
+ WiederholungsspalteButton.typekeys "<RETURN>"
+ sleep(1)
+ Kontext "DocumentCalc"
+ printlog " Select 'columns to repeat' using mouse"
+ DocumentCalc.MouseDown ( 10 , 10 )
+ DocumentCalc.MouseMove ( 50 , 15 )
+ DocumentCalc.MouseUp ( 50 , 15 )
+ sleep(1)
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Click 'columns to repeat' button to unshrink dialog again"
+ WiederholungsspalteButton.typekeys "<RETURN>"
+ sleep(1)
+ printlog " Rember to selection for later comparisson"
+ sSelectedColumns = Wiederholungsspalte.getText
+ sleep(1)
+ printlog " Click OK"
+ DruckbereicheBearbeiten.OK
+ sleep(1)
+ printlog " Save file locally '.../user/work/mouseSelection.ods'"
+ if not hFileSaveAsWithFilterKill( sLocalFile , sDefaultCalcFilter ) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+ sleep(2)
+ printlog " Close document"
+ call hCloseDocument
+ printlog " Open document again"
+ call hFileOpen ( sLocalFile )
+ printlog " Invoke Format::Print Ranges::Edit"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ printlog " Check persistance of all settings"
+ if NOT DruckbereichListe.getSelIndex = 3 then
+ warnlog "Unexpected selection for 'print range' listbox: Item No. " & DruckbereichListe.getSelIndex
+ end if
+ if NOT WiederholungszeileListe.getSelIndex = 2 then
+ warnlog "Unexpected selection for 'rows to repeat' listbox: Item No. " & WiederholungszeileListe.getSelIndex
+ end if
+ if NOT WiederholungsspalteListe.getSelIndex = 2 then
+ warnlog "Unexpected selection for 'columns to repeat' listbox: Item No. " & WiederholungsspalteListe.getSelIndex
+ end if
+ if Druckbereich.getText <> sSelectedRange then
+ warnlog "Unexpected selection in 'print range' textbox"
+ qaErrorLog "Found: " & Druckbereich.getText
+ qaErrorLog "Should: " & sSelectedRange
+ end if
+ if Wiederholungszeile.getText <> sSelectedRows then
+ warnlog "Unexpected selection in 'rows to repeat' textbox"
+ qaErrorLog "Found: " & Wiederholungszeile.getText
+ qaErrorLog "Should: " & sSelectedRows
+ end if
+ if Wiederholungsspalte.getText <> sSelectedColumns then
+ warnlog "Unexpected selection in 'columns to repeat' textbox"
+ qaErrorLog "Found: " & Wiederholungsspalte.getText
+ qaErrorLog "Should: " & sSelectedColumns
+ end if
+ printlog " Cancel print range dialog"
+ DruckbereicheBearbeiten.Cancel
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'
+'---------------------------------------------------------------------------
+'
+testcase tEmptyRangeMessagebox
+
+ printlog "If the printrange or sheet is empty there should be a messagebox which says that there is nothing to print"
+ printlog " Open new document"
+ call hNewDocument
+
+ printlog " Print empty document by pressing standardbar button"
+ kontext "Standardbar"
+ Drucken.click
+
+ printlog " Check that there is a messagebox"
+ kontext
+ if Active.Exists(2) then
+ if Active.GetRT = 304 then
+ printlog "+ The messagebox " & Active.GetText & " has appeared"
+ Active.OK
+ else
+ warnlog "Unexpected objekt: " & Active.GetText & " found!"
+ try
+ Active.OK
+ catch
+ Active.Yes
+ endcatch
+ end if
+ else
+ warnlog "There is no messagebox (#i106423#)"
+ kontext "DocumentCalc"
+ call hCloseDocument
+ goto endsub
+ end if
+
+ Kontext "Printing"
+ if Printing.Exists( 2 ) then
+ Printing.Cancel
+ end if
+ sleep 2
+
+ printlog " Enter 1 in A1"
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys "1 <RETURN>"
+
+ printlog " Select cell A5"
+ if fGotoCell ( "A5" ) <> 0 then
+ warnlog "Could not select cell I2"
+ hCloseDocument
+ goto endsub
+ end if
+
+ printlog " Define print range by menu FORMAT / PRINT RANGES / DEFINE"
+ kontext "DocumentCalc"
+ FormatPrintRangesDefine
+
+ printlog " Print empty range by pressing standardbar button"
+ kontext "Standardbar"
+ Drucken.click
+
+ printlog " Check that there is a messagebox"
+ kontext
+ if Active.Exists(2) then
+ if Active.GetRT = 304 then
+ printlog "+ The messagebox " & Active.GetText & " has appeared"
+ Active.OK
+ else
+ warnlog "Unexpected objekt: " & Active.GetText & " found!"
+ try
+ Active.OK
+ catch
+ Active.Yes
+ endcatch
+ end if
+ else
+ warnlog "There is no messagebox"
+ kontext "DocumentCalc"
+ call hCloseDocument
+ goto endsub
+ end if
+
+ kontext "Printing"
+ if Printing.Exists( 2 ) then
+ Printing.Cancel
+ end if
+ printlog "Close document"
+ call hCloseDocument
+
+endcase
+
diff --git a/testautomation/spreadsheet/optional/includes/printscale/c_print_scale.inc b/testautomation/spreadsheet/optional/includes/printscale/c_print_scale.inc
new file mode 100644
index 000000000000..301bac08a49c
--- /dev/null
+++ b/testautomation/spreadsheet/optional/includes/printscale/c_print_scale.inc
@@ -0,0 +1,299 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Check correct print scaling settings
+'*
+'*************************************************************************************************
+'*
+' #1 subPrintScaling
+' #1 tPrintScaling
+'*
+'\*************************************************************************************************
+sub subPrintScaling
+ printLog Chr(13) + "--------- Print scaling settings ----------"
+
+ call tPrintScaling
+
+end sub
+'*************************************************************************************************
+testcase tPrintScaling
+printlog "Check correct print scaling settings"
+printlog " "
+
+dim iIndex as INTEGER
+
+dim sOutputFile as STRING
+ sOutputFile = gOfficePath & ConvertPath( "user\work\printScaling.ods" )
+
+dim sNameSheet1 as STRING
+ sNameSheet1 = "Ten"
+dim sNameSheet2 as STRING
+ sNameSheet2 = "Moves"
+dim sNameSheet3 as STRING
+ sNameSheet3 = "Ahead"
+
+dim sNameStyle1 as STRING
+ sNameStyle1 = "1stStyle"
+dim sNameStyle2 as STRING
+ sNameStyle2 = "2ndStyle"
+dim sNameStyle3 as STRING
+ sNameStyle3 = "3rdStyle"
+
+dim sPagesToPrint as STRING
+
+ printlog "Open test document"
+ Call hNewDocument
+ sleep(2)
+
+ printlog "Add minimal content to all sheets"
+ for iIndex = 1 to 3
+ Kontext "RechenleisteCalc"
+ if not RechenleisteCalc.isvisible then
+ ViewToolbarsFormulaBar
+ end if
+ sleep(1)
+ printlog "* Create simple data area on sheet" & iIndex
+ Kontext "RechenleisteCalc"
+ Bereich.TypeKeys "<MOD1 A>"
+ if iIndex = 1 then
+ Bereich.TypeKeys "A1:B2"
+ printlog "* Type 'A1:B2' in Name Box to select area"
+ else
+ Bereich.TypeKeys "A1:AF400"
+ printlog "* Type 'A1:AF400' in Name Box to select area"
+ end if
+ sleep(1)
+ printlog "* Press <RETURN>"
+ Bereich.TypeKeys "<RETURN>"
+ Kontext "DocumentCalc"
+ printlog "* Fill area with '13' by typing 13<SHIFT MOD1 RETURN>"
+ DocumentCalc.TypeKeys "=13<SHIFT MOD1 RETURN>"
+ sleep(1)
+ printlog "* Assign specific name for sheet to avoid language dependencies by Format - Sheet - Rename"
+ FormatSheetRename
+ Kontext "TabelleUmbenennen"
+ select case iIndex
+ case 1 : Tabellenname.SetText sNameSheet1
+ case 2 : Tabellenname.SetText sNameSheet2
+ case 3 : Tabellenname.SetText sNameSheet3
+ end select
+ TabelleUmbenennen.OK
+ sleep(1)
+
+ printlog "* Switch to next sheet by Edit - Sheet - Select"
+ EditSheetSelect
+ Kontext "SelectSheets"
+ if iIndex = 3 then
+ printlog "* At the end return to the first sheet"
+ SheetSelectionBox.Select sNameSheet1
+ else
+ SheetSelectionBox.Select ( iIndex + 1 )
+ end if
+ SelectSheets.OK
+ sleep(1)
+ next iIndex
+
+ printlog "Invoke Style catalog"
+ FormatStylesCatalog
+ Kontext "Vorlagenkatalog"
+ printlog "Switch to Pagestyles"
+ Vorlagen.select ( 2 )
+ sleep(1)
+ printlog "Create three styles using different page scaling features"
+ for iIndex = 1 to 3
+ Kontext "Vorlagenkatalog"
+ printlog "* Click new"
+ Neu.Click
+ Kontext
+ printlog "* (Page format dialog should appear)"
+ printlog "* Select Page 'Organizer'"
+ active.SetPage TabVerwalten
+ printlog "* Close MsgBox when appeared"
+ if Active.Exists(2) then
+ if Active.GetRT = 304 then
+ Printlog Active.GetText
+ Active.Yes
+ end if
+ end if
+ Kontext "TabVerwalten"
+ printlog "* Assign name for each style"
+ select case iIndex
+ case 1 : VorlagenName.setText sNameStyle1
+ case 2 : VorlagenName.setText sNameStyle2
+ case 3 : VorlagenName.setText sNameStyle3
+ end select
+ Kontext
+ printlog "* Select Page 'Sheet'"
+ active.SetPage TabTabelleCalc
+ Kontext "TabTabelleCalc"
+ printlog "* For all three styles use different page scaling features"
+ scalingMode.Select ( iIndex )
+ select case iIndex
+ case 1 : SkalierungProzent.setText "444%"
+ printlog "* Scale size to 444%"
+ printlog "* NOTE: Maximum scale is 400%! Entering 444% should be decreased to 400%."
+ case 2 : ScalePageWidth.setText "3"
+ ScalePageHeight.setText "3"
+ printlog "* Scale output to 3 pages wide and 3 pages high"
+ case 3 : AnzahlMaxSeiten.setText "4"
+ printlog "* Scale output to a total of 4 pages"
+ end select
+ printlog "* Leave page format dialog using OK"
+ TabTabelleCalc.OK
+ next iIndex
+ printlog "Close style catalog using OK"
+ Kontext "Vorlagenkatalog"
+ Vorlagenkatalog.OK
+ sleep(2)
+ printlog "Assign the three styles created to the three sheets in document"
+ for iIndex = 1 to 3
+ printlog "* Select sheet" & iIndex & " by Edit - Sheet - Select"
+ EditSheetSelect
+ Kontext "SelectSheets"
+ SheetSelectionBox.Select ( iIndex )
+ SelectSheets.OK
+ sleep(1)
+ printlog "* Open the stylist if it is not opened"
+ Kontext "Gestalter"
+ if NOT Gestalter.exists(2) then
+ FormatStylist
+ end if
+ printlog "* Assign style" & iIndex & " using the stylist"
+ Kontext "Gestalter"
+ Seitenvorlagen.Click
+ Kontext "Vorlagenliste"
+ Vorlagenliste.TypeKeys "<HOME>"
+ sleep (2)
+ Vorlagenliste.Select ( iIndex )
+ Vorlagenliste.TypeKeys "<RETURN>"
+ next iIndex
+ printlog "Close stylist"
+ Kontext "Gestalter"
+ if Gestalter.exists(2) then
+ FormatStylist
+ end if
+
+ printlog "Save in current default format"
+ if hFileSaveAsWithFilterKill ( sOutputFile , "calc8" ) = FALSE then
+ warnlog "Saving " & sOutputFile & " failed! -> Exiting test!"
+ call hCloseDocument
+ else
+ printlog "... and close"
+ call hCloseDocument
+ sleep(2)
+ printlog "Reopen document"
+ call hFileOpen ( sOutputFile )
+ sleep(2)
+ printlog "Invoke File - Print"
+ FilePrint
+ Kontext "Active"
+ Sleep 1
+ printlog "Check if a MsgBox pops up due to misconfigured printer settings"
+ if Active.Exists(2) then
+ if Active.GetRT = 304 then
+ qaErrorlog "OOPS, are you sure that a printer is configured at all?"
+ try
+ Active.Ok
+ catch
+ Active.Yes
+ endcatch
+ end if
+ end if
+ printlog "Check if print dialog exists"
+ Kontext "Printing"
+ if Printing.Exists(2) then
+ Kontext "TabPrintGeneral"
+ PrintPages.check
+ printlog "Check for string '1-4' in pages textbox"
+ sPagesToPrint = PageRange.getText
+ if sPagesToPrint = "1-4" then
+ printlog " OK, expected number of pages for output"
+ else
+ warnlog "Unexpected number of pages for print output: " & sPagesToPrint & " -> Check this out!"
+ end if
+ Kontext "Printing"
+ Printing.Cancel
+ else
+ qaErrorlog "OOPS, are you sure that a printer is configured at all?"
+ end if
+ printlog "For all sheets ..."
+ for iIndex = 1 to 3
+ printlog "* ... select currently desired one"
+ EditSheetSelect
+ Kontext "SelectSheets"
+ SheetSelectionBox.Select ( iIndex )
+ SelectSheets.OK
+ sleep(1)
+ printlog "* Invoke Format - Page..."
+ FormatPageCalc
+ Kontext
+ printlog "* Select Page 'Sheet'"
+ active.SetPage TabTabelleCalc
+ printlog "* Close MsgBox when appeared"
+ if Active.Exists(2) then
+ if Active.GetRT = 304 then
+ Printlog Active.GetText
+ Active.Yes
+ end if
+ end if
+ Kontext "TabTabelleCalc"
+ if scalingMode.GetSelIndex = iIndex then
+ printlog "* Check if styles for print scaling have be appropriately assign"
+ select case iIndex
+ case 1
+ if SkalierungProzent.GetText <> "400%" then
+ warnlog "Unexpected scaling factor detected -> Check this out!"
+ end if
+ printlog "* Correct scaling mode selected"
+ case 2
+ if ScalePageWidth.GetText <> "3" then
+ warnlog "Unexpected page width detected -> Check this out!"
+ end if
+ if ScalePageHeight.GetText <> "3" then
+ warnlog "Unexpected page height detected -> Check this out!"
+ end if
+ printlog "* Correct scaling mode selected"
+ case 3
+ if AnzahlMaxSeiten.GetText <> "4" then
+ warnlog "Unexpected page height detected -> Check this out!"
+ end if
+ printlog "* Correct scaling mode selected"
+ end select
+ else
+ warnlog "Unexpected scaling mode found -> Check this out!"
+ end if
+ printlog "* Quit dialog"
+ TabTabelleCalc.Cancel
+ next iIndex
+ printlog "Close document"
+ call hCloseDocument
+
+ end if
+endcase
+
diff --git a/testautomation/spreadsheet/optional/includes/so7pp1/c_so7_pp1_ibis.inc b/testautomation/spreadsheet/optional/includes/so7pp1/c_so7_pp1_ibis.inc
new file mode 100644
index 000000000000..9e25d898d8ce
--- /dev/null
+++ b/testautomation/spreadsheet/optional/includes/so7pp1/c_so7_pp1_ibis.inc
@@ -0,0 +1,218 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'**
+'** owner : oliver.craemer@Sun.COM
+'**
+'** short description : Test IBIS bug fixes
+'**
+'************************************************************************
+' **
+' #1 tIBIS111099 ' Disable design mode of form controls after loading excel file
+' #1 tIBIS111158 ' Lost properties of form controls
+' #1 tIBIS111711 ' Crash when deleting chart in Menu->Window->New Window
+' **
+'\***********************************************************************
+
+testcase tIBIS111099
+
+ Dim testdoc as string
+ testdoc = convertpath( gTesttoolpath & "spreadsheet\optional\input\111099.xls" )
+
+ printlog " Open the test document"
+ hFileOpenLocally(testdoc)
+
+ printlog " Select formcontrols toolbar"
+ Call hToolbarSelect("CONTROLS", true)
+ sleep(2)
+ Kontext "FormControls"
+ if SwitchControlDesignMode.IsEnabled then
+ if SwitchControlDesignMode.getState(2) = 0 then
+ printlog "OK, design mode is disabled"
+ else
+ warnlog "#i108315# Document is opened in design mode -> #111099#"
+ end if
+ else
+ printlog "Form controls toolbar was not enabled."
+ end if
+ call hCloseDocument
+ hDeleteFile( gLastWorkFile )
+endcase
+
+'-------------------------------------------------------------------------
+
+testcase tIBIS111158
+
+ Dim testdoc as string
+ Dim testString as string
+ testdoc = convertpath( gTesttoolpath & "spreadsheet\optional\input\111158.xls" )
+
+ printlog " Open the test document"
+ hFileOpenLocally(testdoc)
+
+ Kontext "Standardbar"
+ '/// If 'Form Controls' toolbar is not visible: View / Toolbars / Form Controls
+ Call hToolbarSelect("CONTROLS", true)
+ sleep(2)
+ Kontext "FormControls"
+ try
+ if SwitchControlDesignMode.GetState(2) = 0 then
+ '/// Click on 'Design Mode on/off' button on 'Form Controls'-toolbar
+ SwitchControlDesignMode.click
+ sleep(2)
+ end if
+ catch
+ warnlog "Form controls toolbar was not enabled, maybe the doc is writeprotected."
+ Call hToolbarSelect("CONTROLS", false)
+ call hCloseDocument
+ goto endsub
+ endcatch
+ '/// Click on 'Form Design' button on 'Form Controls'-toolbar
+ FormDesignTools.Click
+ sleep(2)
+ Kontext "FormDesignTools"
+ if FormDesignTools.Exists(2) then
+ If ShowFmExplorer.IsEnabled then
+ '/// Show Form Navigator
+ ShowFmExplorer.Click
+ else
+ warnlog "Button was not enabled!"
+ end if
+ else
+ warnlog "'Form Design'-toolbar did not come up."
+ Call hCloseDocument
+ goto endsub
+ end if
+
+ '/// Select the first 'ComboxBox' (9th entry from the top)
+ '/// Open context menu
+ Kontext "FormularNavigator"
+ Liste.TypeKeys "<HOME>" , true
+ sleep(1)
+ Liste.TypeKeys "<DOWN>" , 9 , true
+ sleep(1)
+ Liste.OpenContextmenu
+ sleep(2)
+ '/// Open 'Properties' (last entry)
+ hMenuSelectNr(5)
+ sleep(2)
+ Kontext "ControlPropertiesDialog"
+ Kontext "ControlPropertiesTabControl"
+ ControlPropertiesTabControl.SetPage TabGeneralControl
+ Kontext "TabGeneralControl"
+ '/// Enter in 'Help URL' as value exactly 'HID:123456'
+ TabGeneralControl.TypeKeys "<TAB>" , true
+ HelpURL.setText "HID:123456"
+ HelpURL.TypeKeys "<RETURN>",true
+ if HelpURL.GetText <> "HID:123456" then
+ warnlog "'HID:123456' has not been accepted as 'Help URL' value."
+ end if
+
+ Kontext "ControlPropertiesDialog"
+ hCloseDialog( ControlPropertiesDialog, "close" )
+
+ Kontext "FormularNavigator"
+ hCloseDialog( FormularNavigator, "close" )
+
+ Kontext "FormDesignTools"
+ hCloseDialog( FormDesignTools, "close" )
+
+ Kontext "FormControls"
+ '/// Switch back from the design mode
+ SwitchControlDesignMode.click
+ hCloseDialog( FormControls, "close" )
+
+ '/// Check for right initial string ('Please select one:')in control
+ Kontext "MSC_Special_Dialog"
+ if MSC_Special_Dialog.Exists(3) then
+ testString = MSC_Special_Dialog.getSelText
+ if testString = "Please select one:" then
+ printlog "OK, the right string was found in control"
+ else
+ warnlog "Wrong string found in Control: " & testString
+ end if
+ else
+ warnlog "The control seems to be not named in the document?! Verify! If Solaris: #i100870#"
+ end if
+ call hCloseDocument
+ hFileDelete( gLastWorkFile )
+endcase
+
+'-------------------------------------------------------------------------
+
+testcase tIBIS111711
+ printlog "iBIS Task 111711"
+
+ printlog " Create a new document"
+ call hNewDocument
+ printlog " Enter some numbers as content"
+ Kontext "DocumentCalc"
+ DocumentCalc.typekeys "1<RETURN>2<RETURN><UP>"
+ sleep(2)
+
+ '/// create a chart from the content
+ '/// + NOTE: Do NOT leave the Implace mode
+ InsertChartCalc
+ '/// The Chart wizard occours
+ Kontext "ChartWizard"
+ '/// On the chart wizard press OK button
+ if ChartWizard.Exists(2) then
+ printlog "Create chart"
+ ChartWizard.OK
+ sleep(2)
+ else
+ warnlog "Chart wizard did not occour! Exiting test case."
+ call hCloseDocument
+ goto endsub
+ end if
+ '/// Call slot Window->New Window
+ Kontext "DocumentCalc"
+ DocumentCalc.typekeys "<ESCAPE>"
+ WindowNewWindow
+ sleep(2)
+ call gMouseClick(95,95)
+
+ '/// Select chart in new window
+ Kontext "DocumentCalc"
+ call fselectFirstOLE
+ sleep(2)
+
+ '/// Delete chart in new window ...
+ '/// ... and check for crash
+ Kontext "DocumentCalc"
+ try
+ DocumentCalc.typekeys "<DELETE>"
+ sleep (2)
+ printlog "OK, there are still " & GetDocumentCount & " documents open"
+ catch
+ warnlog "Probably the office did crash -> #111711#"
+ call hCloseDocument
+ goto endsub
+ endcatch
+ call hCloseDocument
+endcase
+
+
diff --git a/testautomation/spreadsheet/optional/includes/so7pp1/c_so7_pp1_iz.inc b/testautomation/spreadsheet/optional/includes/so7pp1/c_so7_pp1_iz.inc
new file mode 100644
index 000000000000..873ca1bddabc
--- /dev/null
+++ b/testautomation/spreadsheet/optional/includes/so7pp1/c_so7_pp1_iz.inc
@@ -0,0 +1,211 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'**
+'** owner : joerg.sievers@Sun.COM
+'**
+'** short description : Test Issuezilla bug fixes
+'**
+'************************************************************************
+' **
+' #1 tIZ19381 ' I/O error when OLE object is thrown out of undo/redo buffer
+' #1 tIZ21036 ' Crash after shifting cells with paste special
+' **
+'\***********************************************************************
+
+testcase tIZ19381
+ Dim sOutputFile as string
+ Dim i as integer
+
+ sOutputFile = convertpath(gOfficepath & "user/work/i19381.ods")
+ printlog "IssueZilla Task 19381"
+
+ '/// File / New / Spreadsheet
+ call hNewDocument
+ sleep(2)
+ '/// Enter 1 [RETURN]
+ '/// Enter 2 [RETURN]
+ '/// Enter [UP]
+ Kontext "DocumentCalc"
+ DocumentCalc.typekeys "1<RETURN>2<RETURN><UP>"
+ sleep(2)
+ '/// Insert / Chart
+ InsertChartCalc
+ Kontext "ChartWizard"
+ '/// On the chart wizard press OK button
+ if ChartWizard.Exists(2) then
+ printlog "Create chart"
+ ChartWizard.OK
+ sleep(2)
+ else
+ warnlog "Chart wizard did not occour! Exiting test case."
+ call hCloseDocument
+ goto endsub
+ end if
+ Kontext "DocumentCalc"
+ '/// Type [ESCAPE]
+ DocumentCalc.typekeys "<Escape>"
+ sleep(2)
+ '/// File Save As <i>gOfficepath</i>user/work/i19381.ods
+ if NOT hFileSaveAsWithFilterKill (sOutputFile, "calc8") then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ end if
+ sleep(2)
+ '/// File / Close
+ call hCloseDocument
+ sleep(2)
+ '/// Open the saved document
+ if hFileOpen(sOutputFile) then
+ Kontext "DocumentCalc"
+ '/// Click into the chart
+ call gMouseClick(95,95)
+ Kontext "DocumentCalc"
+ '/// Press [F5] to open the Navigator
+ '/// Select the first Chart/OLE object in the navigator
+ call fselectFirstOLE
+ '/// Edit / Cut
+ sleep(2)
+ EditCut
+ sleep(2)
+ Kontext "DocumentCalc"
+ '/// Type [ESCAPE] twice
+ DocumentCalc.TypeKeys "<ESCAPE>" , 2
+ '/// Edit / Paste
+ EditPaste
+ sleep(2)
+ Kontext "DocumentCalc"
+ '/// press [CTRL+S] to save the document again
+ DocumentCalc.typekeys "<MOD1 S>"
+ sleep(2)
+ Kontext
+ if Active.exists(2) then
+ if gPlatGroup = "w95" then
+ warnlog "REGRESSION! #i41751# - Saving after Cut&Paste of OLE fails on windows!"
+ else
+ warnlog "OOPS, found unexpected MsgBox -> Check this out!"
+ end if
+ Active.OK
+ call hCloseDocument
+ goto endsub
+ end if
+ Kontext "DocumentCalc"
+ '/// Type [ESCAPE]
+ DocumentCalc.TypeKeys "<ESCAPE>"
+ '/// Go to cell E42
+ call fCalcSelectRange("E42")
+ for i = 1 to 21
+ Kontext "DocumentCalc"
+ '/// Enter 1 and [RETURN] 21 times
+ '///+ as changes to get chart cut/paste out of the undo buffer
+ DocumentCalc.typekeys "1<Return>"
+ next i
+ Kontext "DocumentCalc"
+ '/// Type [CTRL + S] to save the document again
+ DocumentCalc.typekeys "<MOD1 S>"
+ '/// check for error message
+ Kontext
+ if Active.Exists(2) then
+ if Active.GetRT = 304 then
+ printlog Active.GetText
+ warnlog "REGRESSION! Issue 19381 seems to occur again!"
+ Active.OK
+ end if
+ else
+ printlog "No message box is in the way!"
+ end if
+ '/// File / Close
+ call hCloseDocument
+ else
+ warnlog "It was not possible to open the saved document again!"
+ end if
+endcase
+
+'-------------------------------------------------------------------------
+
+testcase tIZ21036
+
+ printlog "IssueZilla Task 21036"
+
+ '/// open new document
+ call hNewDocument
+ sleep(2)
+
+ '/// select a whole row (e.g. A1:IV1)
+ Kontext "DocumentCalc"
+ DocumentCalc.typekeys "<SHIFT MOD1 RIGHT>"
+ sleep(2)
+
+ '/// cut selection
+ try
+ EditCut
+ catch
+ QAErrorLog "Is this a crash?? Please check it out!"
+ goto endsub
+ endcatch
+ sleep(2)
+
+ '/// go to A2
+ Kontext "DocumentCalc"
+ call fCalcSelectRange("A2")
+ sleep(2)
+ Kontext "DocumentCalc"
+ '/// call edit->paste special
+ EditPasteSpecialCalc
+ sleep(2)
+
+ '/// check shift cells->right
+ Kontext "InhalteEinfuegenCalc"
+ NachRechts.Check
+
+ '/// OK
+ InhalteEinfuegenCalc.OK
+
+ '/// confirm MsgBox
+ Kontext "Active"
+ if Active.Exists(2) then
+ if Active.GetRT = 304 then
+ printlog Active.GetText
+ Active.OK
+ sleep(2)
+ end if
+ else
+ warnlog "No message box came up!"
+ goto endsub
+ end if
+
+ '/// check for crash
+ try
+ printlog "OK, there are still " & GetDocumentCount & " documents open"
+ catch
+ warnlog "Probably the office did crash -> #I21036#"
+ goto endsub
+ endcatch
+
+ call hCloseDocument
+endcase
+
diff --git a/testautomation/spreadsheet/optional/includes/solver/c_solver.inc b/testautomation/spreadsheet/optional/includes/solver/c_solver.inc
new file mode 100644
index 000000000000..74db821e9275
--- /dev/null
+++ b/testautomation/spreadsheet/optional/includes/solver/c_solver.inc
@@ -0,0 +1,221 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Functionality Test - Solver
+'*
+'************************************************************************
+'*
+' #1 tExampleCalculation
+' #1 tExampleCalculation2
+'*
+'\***********************************************************************
+
+testcase tExampleCalculation
+
+ dim sdecimalseperator as string
+
+ sDecimalseperator = GetDecimalSeperator
+
+ printlog " Open testdocument 'gTesttoolPath + spreadsheet\optional\input\Solver_testdoc01.ods'"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\optional\input\Solver_testdoc01.ods" )
+ printlog " Tools - Solver"
+ ToolsSolver
+ Kontext "Solver"
+ printlog " Set target cell to $E$15"
+ TargetCell.SetText "$E$15"
+ printlog " Set Optimize result to Minimum"
+ OptimizeMinimum.Check
+ printlog " Set 'By changing cells' to $G$13:$G$14"
+ ChangingCells.SetText "$G$13:$G$14"
+ printlog " Set the first cell reference under 'Limiting conditions' to $C$15, the first Operator to '<=' and the first Value to 4"
+ CellReference1.SetText "$C$15"
+ Operator1.Select 1
+ Value1.SetText "4"
+ printlog " Set the second cell reference under 'Limiting conditions' to $D$15, the second Operator to '>=' and the second Value to 10"
+ CellReference2.SetText "$D$15"
+ Operator2.Select 3
+ Value2.SetText "10"
+ printlog " Set the third cell reference under 'Limiting conditions' to $G$15, the third Operator to '=' and the third Value to 300."
+ CellReference3.SetText "$G$15"
+ Operator3.Select 2
+ Value3.SetText "300"
+ printlog " Click on Solve"
+ Solve.Click
+ printlog " A new dialog opens informing you that a result was found."
+ Kontext "SolvingResult"
+ if not SolvingResult.exists then
+ warnlog "Normally there should be a Success dialog, but there is none"
+ Kontext "NoSolution"
+ if NoSolution.exists then
+ NoSolution.OK
+ Kontext "Solver"
+ Solver.Cancel
+ Call hCloseDocument
+ goto endsub
+ else
+ Kontext "Solver"
+ Solver.Cancel
+ Call hCloseDocument
+ goto endsub
+ end if
+ end if
+ printlog " Click on the 'Restore Previous' Button. The Solver dialog is shown again."
+ SolvingResult.Cancel
+ Kontext "Solver"
+ printlog " Press ALT+S . The Solved dialog opens again. Press the Enter key."
+ Solve.Click
+ Kontext "SolvingResult"
+ SolvingResult.OK
+ Kontext "DocumentCalc"
+ printlog " C15 must show 4.0000 mg, D15 must show 18.0000 mg, E15 must show 22.0000 ct, G13 is set to 120, G14 shows 180 and therefore G15 300."
+ call fCalcCompareCellValue ("C15","4" & sDecimalseperator & "0000 mg")
+ call fCalcCompareCellValue ("D15","18" & sDecimalseperator & "0000 mg")
+ call fCalcCompareCellValue ("E15","22" & sDecimalseperator & "0000 ct")
+ call fCalcCompareCellValue ("G13","120")
+ call fCalcCompareCellValue ("G14","180")
+ call fCalcCompareCellValue ("G15","300")
+ printlog " Tools - Solver"
+ ToolsSolver
+ Kontext "Solver"
+ printlog " Change limitatation value 3 from 300 to 500"
+ Value3.SetText "500"
+ printlog " Press ALT+S to solve the problem and keep the results."
+ Solve.Click
+ Kontext "SolvingResult"
+ SolvingResult.OK
+ Kontext "DocumentCalc"
+ printlog " The results should be :C15 must show 4.0000 mg, D15 must show 51.3333 mg, E15 must show 68.6667 ct, G13 is set to 520, G14 shows -20 and therefore G15 500"
+ call fCalcCompareCellValue ("C15","4" & sDecimalseperator & "0000 mg")
+ call fCalcCompareCellValue ("D15","51" & sDecimalseperator & "3333 mg")
+ call fCalcCompareCellValue ("E15","68" & sDecimalseperator & "6667 ct")
+ call fCalcCompareCellValue ("G13","520")
+ call fCalcCompareCellValue ("G14","-20")
+ call fCalcCompareCellValue ("G15","500")
+ printlog " So the solution found is correct but not usefull. Let's limit the lemonade to positive values by adding a new limitation."
+ printlog " Tools - Solver"
+ ToolsSolver
+ kontext "Solver"
+ printlog " Set the fourth cell reference under 'Limiting conditions' to $G$14, the fourth Operator to '>=' and the fourth Value to 0."
+ CellReference4.SetText "$G$14"
+ Operator4.Select 3
+ Value4.SetText "0"
+ printlog " Click on Solve."
+ Solve.Click
+ printlog " The No Solution dialog opens, telling you that the model is not solvable with the given limiting conditions."
+ Kontext "NoSolution"
+ if not NoSolution.exists then
+ warnlog "Normally the NoSolution dialog appears, but there is none"
+ end if
+ printlog " Click on Ok at this dialog, the Solver dialog should be shown."
+ NoSolution.OK
+ Kontext "Solver"
+ Solver.Close
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tExampleCalculation2
+
+ printlog " Open testdocument 'gTesttoolPath + spreadsheet\optional\input\stest_large.ods'"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\optional\input\stest_large.ods" )
+ printlog " Tools - Solver"
+ ToolsSolver
+ Kontext "Solver"
+ printlog " Target Cell: $Y$2"
+ TargetCell.SetText "$Y$2"
+ printlog " Optimize to: Maximum"
+ OptimizeMaximum.Check
+ printlog " Changing cells: $B$5:$B$134"
+ ChangingCells.SetText "$B$5:$B$134"
+ printlog " Limiting Conditions: Cell reference: $D$2:$W$2 Operator : <= Value: $D$3:$W$3"
+ CellReference1.SetText "$D$2:$W$2"
+ Operator1.Select 1
+ Value1.SetText "$D$3:$W$3"
+ printlog " Copy the following String to the second cell reference input line: $D$2:$W$2 <= $D$3:$W$3"
+ CellReference2.SetText "$D$2:$W$2"
+ Operator1.Select 2
+ Value2.SetText "$D$3:$W$3"
+ printlog " Click on Solve"
+ Solve.Click
+ printlog " You get a new Warning dialog talking about Invalid condition."
+ Kontext "NoSolution"
+ if not NoSolution.exists then
+ warnlog "Normally there should be a No Solution dialog"
+ end if
+ NoSolution.OK
+ Kontext "Solver"
+ printlog " Click on the remove Button next to the second Value field to remove the faulty condition."
+ Remove2.Click
+ if Value2 = "$D$3:$W$3" then
+ warnlog "The condition was not removed"
+ end if
+ printlog " Click on Options button, the Options dialog opens"
+ Options.Click
+ Kontext "SolverOptions"
+ if not SolverOptions.exists then
+ warnlog "The Options dialog is not open"
+ end if
+ printlog " Tag 'Assume variables as integer'"
+ SolverSettings.Select (1)
+ SolverSettings.TypeKeys "<SPACE>"
+ printlog " Tag 'Assume variables not negative'"
+ SolverSettings.Select (2)
+ SolverSettings.TypeKeys "<SPACE>"
+ printlog " Select SolvingTime"
+ SolverSettings.Select (5)
+ printlog " Click on Edit button to open the Editdialog"
+ SolverSettingsEdit.Click
+ Kontext "SolverEditSetting"
+ printlog " Set time to 10 and close editdialog by OK"
+ SolverNumeric.SetText "10"
+ SolverEditSetting.OK
+ Kontext "SolverOptions"
+ printlog " Click OK on SolverOptionsdialog"
+ SolverOptions.OK
+ Kontext "Solver"
+ printlog " Click on Solve"
+ Solve.Click
+ printlog " A new dialog named Solving... opens telling you about the time limit"
+ sleep (15)
+ printlog " After that a new dialog pops up saying 'No Solution was found. The time limit was reached.'"
+ Kontext "NoSolution"
+ printlog " Click the Ok button to close the No Solution dialog."
+ NoSolution.OK
+ printlog " Click close to leave the Solver dialog."
+ Kontext "Solver"
+ Solver.Close
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+
diff --git a/testautomation/spreadsheet/optional/includes/validity/c_validity.inc b/testautomation/spreadsheet/optional/includes/validity/c_validity.inc
new file mode 100644
index 000000000000..f1f33573f66e
--- /dev/null
+++ b/testautomation/spreadsheet/optional/includes/validity/c_validity.inc
@@ -0,0 +1,372 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'**
+'** owner : oliver.craemer@Sun.COM
+'**
+'** short description : Complete test for data validity
+'**
+'\***********************************************************************
+
+testcase tValidity_Check_Message
+
+ printlog "This test checks, if an error messgae appears, when a wrong content is inserted into the appropriate cells"
+
+ dim sInputFile as string
+ dim sOutputFile as string
+ dim sMType as string
+ dim sInfoStr as string
+ dim iCount as integer
+
+ sInputFile = convertpath(gTesttoolPath & "spreadsheet/optional/input/validity.ods")
+ sOutputFile = convertpath (gOfficepath & "user/work/validity.ods.ods)"
+
+ printlog " Open document <i>gTesttoolPath</i>spreadsheet/optional/input/validity.ods"
+ call hFileOpen (sInputFile)
+ printlog " Save the document under <i>gOfficePath</i>user/work/validity.ods"
+ if NOT hFileSaveAsWithFilter ( sOutputFile, "calc8" ) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ endif
+
+ printlog " Do the following operations (see values in table) with every of the 4 sheets."
+ printlog " Goto first cell and insert the correct value"
+ printlog " Press RETURN"
+ printlog " No warning or information message should appear"
+ printlog " Enter the incorrect value"
+ printlog " Press RETURN"
+ printlog " A warning or information message should appear"
+ for iCount = 1 to 4
+ select case iCount
+ case 1 : sMType = "Stop" : sInfoStr = "First"
+ case 2 : sMType = "Warning" : sInfoStr = "Second"
+ case 3 : sMType = "Information" : sInfoStr = "Third"
+ case 4 : sMType = "Macro" : sInfoStr = "Macro"
+ end select
+
+ call fCalcSelectSheet(sMType)
+ printlog " *** " & sInfoStr & " it is checked, if the " & sMType & " messages appears, if wrong contents are inserted into the appropriate cells"
+ '///+<UL>
+ '///+<LI>Goto first cell and insert the <i>correct value</i></LI>
+ '///+<LI>Press RETURN</LI>
+ '///+<LI><UL><LI>No warning or information message should appear</LI></UL></LI>
+ '///+<LI>Enter the <i>incorrect value</I>
+ '///+<LI>Press RETURN</LI>
+ '///+<LI><UL><LI>A warning or information message should appear</LI></UL></LI>
+ '///+<LI><TABLE BORDER=1>
+ '///+ <TR><TH>Cell address</TH><TH>correct value</TH><TH>incorrect value</TH></TR>
+ '///+ <TR><TD>B4</TD><TD>3</TD><TD>8</TD></TR>
+ call check_message(sMType, "B4", "3", "8")
+ '///+ <TR><TD>B5</TD><TD>9</TD><TD>10</TD></TR>
+ call check_message(sMType, "B5", "9", "10")
+ '///+ <TR><TD>B6</TD><TD>28</TD><TD>25</TD></TR>
+ call check_message(sMType, "B6", "28", "25")
+ '///+ <TR><TD>B7</TD><TD>10</TD><TD>12</TD></TR>
+ call check_message(sMType, "B7", "10", "12")
+ '///+ <TR><TD>B8</TD><TD>11</TD><TD>9</TD></TR>
+ call check_message(sMType, "B8", "11", "9")
+ '///+ <TR><TD>B9</TD><TD>5</TD><TD>3</TD></TR>
+ call check_message(sMType, "B9", "5", "3")
+ '///+ <TR><TD>B10</TD><TD>1</TD><TD>6</TD></TR>
+ call check_message(sMType, "B10", "1", "6")
+ '///+ <TR><TD>B11</TD><TD>1</TD><TD>6</TD></TR>
+ call check_message(sMType, "B11", "1", "6")
+ '///+ <TR><TD>B17</TD><TD>3,14</TD><TD>3,15</TD></TR>
+ call check_message(sMType, "B17", "3,14", "3,15")
+ '///+ <TR><TD>B18</TD><TD>10,14</TD><TD>10,16</TD></TR>
+ call check_message(sMType, "B18", "10,14", "10,16")
+ '///+ <TR><TD>B19</TD><TD>25,10</TD><TD>25,09</TD></TR>
+ call check_message(sMType, "B19", "25,10", "25,09")
+ '///+ <TR><TD>B20</TD><TD>10,5</TD><TD>10,7</TD></TR>
+ call check_message(sMType, "B20", "10,5", "10,7")
+ '///+ <TR><TD>B21</TD><TD>11,9</TD><TD>10</TD></TR>
+ call check_message(sMType, "B21", "11,9", "10")
+ '///+ <TR><TD>B22</TD><TD>3,145</TD><TD>3,14</TD></TR>
+ call check_message(sMType, "B22", "3,145", "3,14")
+ '///+ <TR><TD>B23</TD><TD>1,45</TD><TD>1,38</TD></TR>
+ call check_message(sMType, "B23", "1,45", "1,38")
+ '///+ <TR><TD>B24</TD><TD>2,03</TD><TD>2,15</TD></TR>
+ call check_message(sMType, "B24", "2,03", "2,15")
+ '///+ <TR><TD>E4</TD><TD>13.12.99</TD><TD>13.11.99</TD></TR>
+ call check_message(sMType, "E4", "13.12.99", "13.11.99")
+ '///+ <TR><TD>E5</TD><TD>12.12.99</TD><TD>13.12.99</TD></TR>
+ call check_message(sMType, "E5", "12.12.99", "13.12.99")
+ '///+ <TR><TD>E6</TD><TD>14.12.99</TD><TD>13.12.99</TD></TR>
+ call check_message(sMType, "E6", "14.12.99", "13.12.99")
+ '///+ <TR><TD>E7</TD><TD>13.12.99</TD><TD>14.12.99</TD></TR>
+ call check_message(sMType, "E7", "13.12.99", "14.12.99")
+ '///+ <TR><TD>E8</TD><TD>13.12.99</TD><TD>12.12.99</TD></TR>
+ call check_message(sMType, "E8", "13.12.99", "12.12.99")
+ '///+ <TR><TD>E9</TD><TD>13.11.99</TD><TD>13.12.99</TD></TR>
+ call check_message(sMType, "E9", "13.11.99", "13.12.99")
+ '///+ <TR><TD>E10</TD><TD>23.12.99</TD><TD>12.12.99</TD></TR>
+ call check_message(sMType, "E10", "23.12.99", "12.12.99")
+ '///+ <TR><TD>E11</TD><TD>24.12.99</TD><TD>23.12.99</TD></TR>
+ call check_message(sMType, "E11", "24.12.99", "23.12.99")
+ '///+ <TR><TD>E17</TD><TD>13:15</TD><TD>13:16</TD></TR>
+ call check_message(sMType, "E17", "13:15", "13:16")
+ '///+ <TR><TD>E18</TD><TD>10:15</TD><TD>14:16</TD></TR>
+ call check_message(sMType, "E18", "10:15", "14:16")
+ '///+ <TR><TD>E19</TD><TD>23:10</TD><TD>12:09</TD></TR>
+ call check_message(sMType, "E19", "23:10", "12:09")
+ '///+ <TR><TD>E20</TD><TD>13:15</TD><TD>13:16</TD></TR>
+ call check_message(sMType, "E20", "13:15", "13:16")
+ '///+ <TR><TD>E21</TD><TD>13:15</TD><TD>13:14</TD></TR>
+ call check_message(sMType, "E21", "13:15", "13:14")
+ '///+ <TR><TD>E22</TD><TD>13:16</TD><TD>13:15</TD></TR>
+ call check_message(sMType, "E22", "13:16", "13:15")
+ '///+ <TR><TD>E23</TD><TD>13:15</TD><TD>23:13</TD></TR>
+ call check_message(sMType, "E23", "13:15", "23:13")
+ '///+ <TR><TD>E24</TD><TD>12:59</TD><TD>13:00</TD></TR>
+ call check_message(sMType, "E24", "12:59", "13:00")
+ '///+ <TR><TD>H4</TD><TD>abc</TD><TD>abcd</TD></TR>
+ call check_message(sMType, "H4", "abc", "abcd")
+ '///+ <TR><TD>H5</TD><TD>abcdefgrd</TD><TD>aderfgtzjm</TD></TR>
+ call check_message(sMType, "H5", "abcdefgrd", "aderfgtzjm")
+ '///+ <TR><TD>H6</TD><TD>rftgzhujikolmnbvcxyaswqepk</TD><TD>ftgzhnujikm,lopredswqayx</TD></TR>
+ call check_message(sMType, "H6", "rftgzhujikolmnbvcxyaswqepk", "ftgzhnujikm,lopredswqayx")
+ '///+ <TR><TD>H7</TD><TD>asweqrfvbg</TD><TD>edcvfrtgbnh</TD></TR>
+ call check_message(sMType, "H7", "asweqrfvbg", "edcvfrtgbnh")
+ '///+ <TR><TD>H8</TD><TD>edcswxyaqtgb</TD><TD>ujnmkipztr</TD></TR>
+ call check_message(sMType, "H8", "edcswxyaqtgb", "ujnmkipztr")
+ '///+ <TR><TD>H9</TD><TD>sdxc</TD><TD>tgb</TD></TR>
+ call check_message(sMType, "H9", "sdxc", "tgb")
+ '///+ <TR><TD>H10</TD><TD>rfvbj</TD><TD>dfcvgb</TD></TR>
+ call check_message(sMType, "H10", "rfvbj", "dfcvgb")
+ '///+ <TR><TD>H11</TD><TD>g</TD><TD>we</TD></TR>
+ call check_message(sMType, "H11", "g", "we")
+ '///+ <TR><TH>New featurs OpenOffice 2.0</TH></TR>
+ '///+ <TR><TD>B30</TD><TD>February</TD><TD>January</TD></TR>
+ call check_message(sMType, "B30", "February", "January")
+ '///+ <TR><TD>B31</TD><TD>May</TD><TD>February</TD></TR>
+ call check_message(sMType, "B31", "May", "February")
+ '///+ <TR><TD>B32</TD><TD>June</TD><TD>January</TD></TR>
+ call check_message(sMType, "B32", "June", "January")
+ '///+ <TR><TD>B33</TD><TD>August</TD><TD>November</TD></TR>
+ call check_message(sMType, "B33", "August", "November")
+ '///+ <TR><TD>B34</TD><TD>September</TD><TD>December</TD></TR>
+ call check_message(sMType, "B34", "September", "December")
+ '///+ <TR><TD>B35</TD><TD>October</TD><TD>March</TD></TR>
+ call check_message(sMType, "B35", "October", "March")
+ '///+ <TR><TD>B36</TD><TD>July</TD><TD>August</TD></TR>
+ call check_message(sMType, "B36", "July", "August")
+ '///+ <TR><TD>B37</TD><TD>April</TD><TD>October</TD></TR>
+ call check_message(sMType, "B37", "April", "October")
+ '///+ <TR><TD>B38</TD><TD>Name03</TD><TD>Name07</TD></TR>
+ call check_message(sMType, "B38", "Name03", "Name07")
+ '///+ <TR><TD>E30</TD><TD>alpha</TD><TD>omega</TD></TR>
+ call check_message(sMType, "E30", "alpha", "omega")
+ '///+ <TR><TD>E31</TD><TD>beta</TD><TD>zeta</TD></TR>
+ call check_message(sMType, "E31", "beta", "zeta")
+ '///+ <TR><TD>E32</TD><TD>gamma</TD><TD>psi</TD></TR>
+ call check_message(sMType, "E32", "gamma", "psi")
+ '///+ <TR><TD>E33</TD><TD>delta</TD><TD>pi/2</TD></TR>
+ call check_message(sMType, "E33", "delta", "pi/2")
+ '///+ </TABLE></LI></UL>
+ next iCount
+ '/// Close the document
+ printlog "Close the document"
+ call hCloseDocument
+
+endcase
+'
+'-------------------------------------------------------------------------------
+'
+testcase tValidity_Check_Excel
+ '/// This test checks, if an error messgae appears, when a wrong content is inserted into the appropriate cells
+
+ dim sInputFile as String
+ dim sOutputFile as String
+ dim sMType as String
+ dim iCount as integer
+ dim sInfoStr as String
+ dim sdecimalseperator as string
+ sDecimalseperator = GetDecimalSeperator
+
+ sInputFile = convertpath(gTesttoolPath & "spreadsheet/optional/input/validity.ods")
+ sOutputFile = convertpath(gOfficePath & "user/work/validity.xls")
+
+ '/// Open <i>gTesttoolPath</i>/calc/special/input/validity.ods
+ printlog "Open <i>gTesttoolPath</i>/calc/special/input/validity.ods"
+ call hFileOpen (sInputFile)
+ Kontext "SecurityWarning"
+ '/// If security warning occours click on 'Enable Macros'.
+ if SecurityWarning.exists(2) then
+ SecurityWarning.OK
+ endif
+ sleep (2)
+ '/// Save the document under <i>gOfficePath</i>user/work/validity.xls (MS Excel 97 format)
+ if NOT hFileSaveAsWithFilterKill ( sOutputFile, "MS Excel 97" ) then
+ warnlog "Saving test document localy failed -> Aborting"
+ call hCloseDocument
+ goto endsub
+ endif
+ sleep (2)
+ '/// Close the document
+ call hCloseDocument
+ sleep (2)
+ '/// Open the exported document
+ call hFileOpen ( sOutputFile )
+ sleep (2)
+ printlog " Do the following operations (see values in table) with every of the 3 sheets."
+ printlog " Goto first cell and insert the correct value"
+ printlog " Press RETURN"
+ printlog " No warning or information message should appear"
+ printlog " Enter the incorrect value"
+ printlog " Press RETURN"
+ printlog " A warning or information message should appear"
+ for iCount = 1 to 3
+ select case iCount
+ case 1 : sMType = "Stop" : sInfoStr = "First"
+ case 2 : sMType = "Warning" : sInfoStr = "Second"
+ case 3 : sMType = "Information" : sInfoStr = "Third"
+ end select
+ '/// Do the following operations (see values in table) with every of the 3 sheets.
+ call fCalcSelectSheet(sMType)
+ printlog " *** " & sInfoStr & " it is checked, if the " & sMType & " messages appears, if wrong contents are " & "inserted into the appropriate cells"
+ '///+<UL>
+ '///+<LI>Goto first cell and insert the <i>correct value</i></LI>
+ '///+<LI>Press RETURN</LI>
+ '///+<LI><UL><LI>No warning or information message should appear</LI></UL></LI>
+ '///+<LI>Enter the <i>incorrect value</I>
+ '///+<LI>Press RETURN</LI>
+ '///+<LI><UL><LI>A warning or information message should appear</LI></UL></LI>
+ '///+<LI><TABLE BORDER=1>
+ '///+ <TR><TH>Cell address</TH><TH>correct value</TH><TH>incorrect value</TH></TR>
+ '///+ <TR><TD>B4</TD><TD>3</TD><TD>8</TD></TR>
+ call check_message(sMType, "B4", "3", "8")
+ '///+ <TR><TD>B5</TD><TD>9</TD><TD>10</TD></TR>
+ call check_message(sMType, "B5", "9", "10")
+ '///+ <TR><TD>B6</TD><TD>28</TD><TD>25</TD></TR>
+ call check_message(sMType, "B6", "28", "25")
+ '///+ <TR><TD>B7</TD><TD>10</TD><TD>12</TD></TR>
+ call check_message(sMType, "B7", "10", "12")
+ '///+ <TR><TD>B8</TD><TD>11</TD><TD>9</TD></TR>
+ call check_message(sMType, "B8", "11", "9")
+ '///+ <TR><TD>B9</TD><TD>5</TD><TD>3</TD></TR>
+ call check_message(sMType, "B9", "5", "3")
+ '///+ <TR><TD>B10</TD><TD>1</TD><TD>6</TD></TR>
+ call check_message(sMType, "B10", "1", "6")
+ '///+ <TR><TD>B11</TD><TD>1</TD><TD>6</TD></TR>
+ call check_message(sMType, "B11", "1", "6")
+ '///+ <TR><TD>B17</TD><TD>3,14</TD><TD>3,15</TD></TR>
+ call check_message(sMType, "B17", "3" & sdecimalseperator & "14", "3" & sdecimalseperator & "15")
+ '///+ <TR><TD>B18</TD><TD>10,14</TD><TD>10,16</TD></TR>
+ call check_message(sMType, "B18", "10" & sdecimalseperator & "14", "10" & sdecimalseperator & "16")
+ '///+ <TR><TD>B19</TD><TD>25,10</TD><TD>25,09</TD></TR>
+ call check_message(sMType, "B19", "25" & sdecimalseperator & "10", "25" & sdecimalseperator & "09")
+ '///+ <TR><TD>B20</TD><TD>10,5</TD><TD>10,7</TD></TR>
+ call check_message(sMType, "B20", "10" & sdecimalseperator & "5", "10" & sdecimalseperator & "7")
+ '///+ <TR><TD>B21</TD><TD>11,9</TD><TD>10</TD></TR>
+ call check_message(sMType, "B21", "11" & sdecimalseperator & "9", "10")
+ '///+ <TR><TD>B22</TD><TD>3,145</TD><TD>3,14</TD></TR>
+ call check_message(sMType, "B22", "3" & sdecimalseperator & "145", "3" & sdecimalseperator & "14")
+ '///+ <TR><TD>B23</TD><TD>1,45</TD><TD>1,38</TD></TR>
+ call check_message(sMType, "B23", "1" & sdecimalseperator & "45", "1" & sdecimalseperator & "38")
+ '///+ <TR><TD>B24</TD><TD>2,03</TD><TD>2,15</TD></TR>
+ call check_message(sMType, "B24", "2" & sdecimalseperator & "03", "2" & sdecimalseperator & "15")
+ '///+ <TR><TD>E4</TD><TD>13.12.99</TD><TD>13.11.99</TD></TR>
+ call check_message(sMType, "E4", "13.12.99", "13.11.99")
+ '///+ <TR><TD>E5</TD><TD>12.12.99</TD><TD>13.12.99</TD></TR>
+ call check_message(sMType, "E5", "12.12.99", "13.12.99")
+ '///+ <TR><TD>E6</TD><TD>14.12.99</TD><TD>13.12.99</TD></TR>
+ call check_message(sMType, "E6", "14.12.99", "13.12.99")
+ '///+ <TR><TD>E7</TD><TD>13.12.99</TD><TD>14.12.99</TD></TR>
+ call check_message(sMType, "E7", "13.12.99", "14.12.99")
+ '///+ <TR><TD>E8</TD><TD>13.12.99</TD><TD>12.12.99</TD></TR>
+ call check_message(sMType, "E8", "13.12.99", "12.12.99")
+ '///+ <TR><TD>E9</TD><TD>13.11.99</TD><TD>13.12.99</TD></TR>
+ call check_message(sMType, "E9", "13.11.99", "13.12.99")
+ '///+ <TR><TD>E10</TD><TD>23.12.99</TD><TD>12.12.99</TD></TR>
+ call check_message(sMType, "E10", "23.12.99", "12.12.99")
+ '///+ <TR><TD>E11</TD><TD>24.12.99</TD><TD>23.12.99</TD></TR>
+ call check_message(sMType, "E11", "24.12.99", "23.12.99")
+ '///+ <TR><TD>E17</TD><TD>13:15</TD><TD>13:16</TD></TR>
+ call check_message(sMType, "E17", "13:15", "13:16")
+ '///+ <TR><TD>E18</TD><TD>10:15</TD><TD>14:16</TD></TR>
+ call check_message(sMType, "E18", "10:15", "14:16")
+ '///+ <TR><TD>E19</TD><TD>23:10</TD><TD>12:09</TD></TR>
+ call check_message(sMType, "E19", "23:10", "12:09")
+ '///+ <TR><TD>E20</TD><TD>13:15</TD><TD>13:16</TD></TR>
+ call check_message(sMType, "E20", "13:15", "13:16")
+ '///+ <TR><TD>E21</TD><TD>13:15</TD><TD>13:15</TD></TR>
+ call check_message(sMType, "E21", "13:15", "13:14")
+ '///+ <TR><TD>E22</TD><TD>13:16</TD><TD>13:15</TD></TR>
+ call check_message(sMType, "E22", "13:16", "13:15")
+ '///+ <TR><TD>E23</TD><TD>13:15</TD><TD>23:13</TD></TR>
+ call check_message(sMType, "E23", "13:15", "23:13")
+ '///+ <TR><TD>E24</TD><TD>12:59</TD><TD>13:00</TD></TR>
+ call check_message(sMType, "E24", "12:59", "13:00")
+ '///+ <TR><TD>H4</TD><TD>abc</TD><TD>abcd</TD></TR>
+ call check_message(sMType, "H4", "abc", "abcd")
+ '///+ <TR><TD>H5</TD><TD>abcdefgrd</TD><TD>aderfgtzjm</TD></TR>
+ call check_message(sMType, "H5", "abcdefgrd", "aderfgtzjm")
+ '///+ <TR><TD>H6</TD><TD>rftgzhujikolmnbvcxyaswqepk</TD><TD>ftgzhnujikm,lopredswqayx</TD></TR>
+ call check_message(sMType, "H6", "rftgzhujikolmnbvcxyaswqepk", "ftgzhnujikm,lopredswqayx")
+ '///+ <TR><TD>H7</TD><TD>asweqrfvbg</TD><TD>edcvfrtgbnh</TD></TR>
+ call check_message(sMType, "H7", "asweqrfvbg", "edcvfrtgbnh")
+ '///+ <TR><TD>H8</TD><TD>edcswxyaqtgb</TD><TD>ujnmkipztr</TD></TR>
+ call check_message(sMType, "H8", "edcswxyaqtgb", "ujnmkipztr")
+ '///+ <TR><TD>H9</TD><TD>sdxc</TD><TD>tgb</TD></TR>
+ call check_message(sMType, "H9", "sdxc", "tgb")
+ '///+ <TR><TD>H10</TD><TD>rfvbj</TD><TD>dfcvgb</TD></TR>
+ call check_message(sMType, "H10", "rfvbj", "dfcvgb")
+ '///+ <TR><TD>H11</TD><TD>g</TD><TD>we</TD></TR>
+ call check_message(sMType, "H11", "g", "we")
+ '///+ <TR><TH>New featurs OpenOffice 2.0</TH></TR>we</TD></TR>
+ '///+ <TR><TD>B30</TD><TD>February</TD><TD>January</TD></TR>
+ call check_message(sMType, "B30", "February", "January")
+ '///+ <TR><TD>B31</TD><TD>May</TD><TD>February</TD></TR>
+ call check_message(sMType, "B31", "May", "February")
+ '///+ <TR><TD>B32</TD><TD>June</TD><TD>January</TD></TR>
+ call check_message(sMType, "B32", "June", "January")
+ '///+ <TR><TD>B33</TD><TD>August</TD><TD>November</TD></TR>
+ call check_message(sMType, "B33", "August", "November")
+ '///+ <TR><TD>B34</TD><TD>September</TD><TD>December</TD></TR>
+ call check_message(sMType, "B34", "September", "December")
+ '///+ <TR><TD>B35</TD><TD>October</TD><TD>March</TD></TR>
+ call check_message(sMType, "B35", "October", "March")
+ '///+ <TR><TD>B36</TD><TD>July</TD><TD>August</TD></TR>
+ call check_message(sMType, "B36", "July", "August")
+ '///+ <TR><TD>B37</TD><TD>April</TD><TD>October</TD></TR>
+ call check_message(sMType, "B37", "April", "October")
+ '///+ <TR><TD>B38</TD><TD>Name03</TD><TD>Name07</TD></TR>
+ call check_message(sMType, "B38", "Name03", "Name07")
+ '///+ <TR><TD>E30</TD><TD>alpha</TD><TD>omega</TD></TR>
+ call check_message(sMType, "E30", "alpha", "omega")
+ '///+ <TR><TD>E31</TD><TD>beta</TD><TD>zeta</TD></TR>
+ call check_message(sMType, "E31", "beta", "zeta")
+ '///+ <TR><TD>E32</TD><TD>gamma</TD><TD>psi</TD></TR>
+ call check_message(sMType, "E32", "gamma", "psi")
+ '///+ <TR><TD>E33</TD><TD>delta</TD><TD>pi/2</TD></TR>
+ call check_message(sMType, "E33", "delta", "pi/2")
+ '///+ </TABLE></LI></UL>
+ next iCount
+ '/// File / Close
+ call hCloseDocument
+endcase
+
diff --git a/testautomation/spreadsheet/optional/input/111099.xls b/testautomation/spreadsheet/optional/input/111099.xls
new file mode 100755
index 000000000000..753a985f7128
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/111099.xls
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/111158.xls b/testautomation/spreadsheet/optional/input/111158.xls
new file mode 100755
index 000000000000..f1bb2f1091ab
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/111158.xls
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/Solver_testdoc01.ods b/testautomation/spreadsheet/optional/input/Solver_testdoc01.ods
new file mode 100644
index 000000000000..26bf86b60170
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/Solver_testdoc01.ods
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/arrayconstants.xls b/testautomation/spreadsheet/optional/input/arrayconstants.xls
new file mode 100755
index 000000000000..871ffd9e784c
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/arrayconstants.xls
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/datapilot.ods b/testautomation/spreadsheet/optional/input/datapilot.ods
new file mode 100755
index 000000000000..8adf6a96f0d5
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/datapilot.ods
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/getpivotdata2.xls b/testautomation/spreadsheet/optional/input/getpivotdata2.xls
new file mode 100755
index 000000000000..5f7c3ff3146d
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/getpivotdata2.xls
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/bugdocs/1024.ods b/testautomation/spreadsheet/optional/input/loadsave/bugdocs/1024.ods
new file mode 100755
index 000000000000..e980bcaa2025
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/bugdocs/1024.ods
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/common/csv.csv b/testautomation/spreadsheet/optional/input/loadsave/common/csv.csv
new file mode 100755
index 000000000000..6c5fa855037e
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/common/csv.csv
@@ -0,0 +1,7 @@
+20.3.2006,"23,67 K?","Uzt","546,4",
+"03/20/06","24,67 €","Äüß","34,67%",
+20.3.2006,"$25,67","Uzt","1,00E+023",
+,,,,
+,,,,"Dies ist ein „gequoteter Text“ im Text"
+,,,,
+,,,,"„Alles gequotet“"
diff --git a/testautomation/spreadsheet/optional/input/loadsave/common/dbase.dbf b/testautomation/spreadsheet/optional/input/loadsave/common/dbase.dbf
new file mode 100755
index 000000000000..c6713303ce44
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/common/dbase.dbf
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/common/dbase.dbt b/testautomation/spreadsheet/optional/input/loadsave/common/dbase.dbt
new file mode 100755
index 000000000000..e69de29bb2d1
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/common/dbase.dbt
diff --git a/testautomation/spreadsheet/optional/input/loadsave/corel/qpro6.wb2 b/testautomation/spreadsheet/optional/input/loadsave/corel/qpro6.wb2
new file mode 100755
index 000000000000..66895b892166
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/corel/qpro6.wb2
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/lotus/123toexcel.xls b/testautomation/spreadsheet/optional/input/loadsave/lotus/123toexcel.xls
new file mode 100755
index 000000000000..711c5dc97b37
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/lotus/123toexcel.xls
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/lotus/lotus123.123 b/testautomation/spreadsheet/optional/input/loadsave/lotus/lotus123.123
new file mode 100755
index 000000000000..85e203799a68
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/lotus/lotus123.123
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/lotus/lotuswk1.wk1 b/testautomation/spreadsheet/optional/input/loadsave/lotus/lotuswk1.wk1
new file mode 100755
index 000000000000..275107c6f532
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/lotus/lotuswk1.wk1
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/lotus/lotuswks.wks b/testautomation/spreadsheet/optional/input/loadsave/lotus/lotuswks.wks
new file mode 100755
index 000000000000..16e61fde7b09
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/lotus/lotuswks.wks
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/dif.DIF b/testautomation/spreadsheet/optional/input/loadsave/microsoft/dif.DIF
new file mode 100755
index 000000000000..d9b7e707d3c2
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/dif.DIF
@@ -0,0 +1,110 @@
+TABLE
+0,1
+""
+VECTORS
+0,11
+""
+TUPLES
+0,4
+""
+DATA
+0,0
+""
+-1,0
+BOT
+1,0
+"ALPHA1"
+1,0
+"PCK1"
+1,0
+"PCK2"
+1,0
+"ALPHA2"
+1,0
+"ALPHA3"
+1,0
+"BIN1"
+1,0
+"ALPHA4"
+1,0
+"ZON1"
+1,0
+"ZON2"
+1,0
+"ALPHA5"
+1,0
+"HEX1"
+-1,0
+BOT
+1,0
+"aaa"
+0,12
+V
+0,12,34
+V
+1,0
+"bbb"
+1,0
+"ccc"
+0,12
+V
+1,0
+"ddd"
+0,12
+V
+0,12,34
+V
+1,0
+"eee"
+1,0
+"F1F2"
+-1,0
+BOT
+1,0
+"zzz"
+0,45
+V
+0,45,67
+V
+1,0
+"uuu"
+1,0
+"vvv"
+0,34
+V
+1,0
+"qqq"
+0,34
+V
+0,34,56
+V
+1,0
+"rrr"
+1,0
+"F4F5"
+-1,0
+BOT
+1,0
+""
+0,67
+V
+0,67,89
+V
+1,0
+"„„„"
+1,0
+"?á%"
+0,78
+V
+1,0
+"(0)"
+0,56
+V
+0,78,9
+V
+1,0
+"!”t"
+1,0
+"F8F9"
+-1,0
+EOD
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel2.xls b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel2.xls
new file mode 100755
index 000000000000..e6c865d56d06
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel2.xls
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel3.xls b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel3.xls
new file mode 100755
index 000000000000..a851d9ff9018
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel3.xls
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel4.xls b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel4.xls
new file mode 100755
index 000000000000..eaa9d3a5722c
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel4.xls
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel95.xls b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel95.xls
new file mode 100755
index 000000000000..6b8d7ce11532
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel95.xls
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel95tmpl.xlt b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel95tmpl.xlt
new file mode 100755
index 000000000000..6ddedc2f3d7c
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel95tmpl.xlt
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel97.xls b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel97.xls
new file mode 100755
index 000000000000..26bc753837c1
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel97.xls
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel97tmpl.xlt b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel97tmpl.xlt
new file mode 100755
index 000000000000..39126c3670e7
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excel97tmpl.xlt
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/excelxml.xml b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excelxml.xml
new file mode 100755
index 000000000000..1c739493cd5b
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/excelxml.xml
@@ -0,0 +1,254 @@
+<?xml version="1.0"?>
+<?mso-application progid="Excel.Sheet"?>
+<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:o="urn:schemas-microsoft-com:office:office"
+ xmlns:x="urn:schemas-microsoft-com:office:excel"
+ xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
+ xmlns:html="http://www.w3.org/TR/REC-html40">
+ <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
+ <Author>Gavin Lu</Author>
+ <LastAuthor>Gavin Lu</LastAuthor>
+ <Created>2003-07-07T08:07:10Z</Created>
+ <Company>Sun China Engineering &amp; Research Institute</Company>
+ <Version>11.5329</Version>
+ </DocumentProperties>
+ <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
+ <WindowHeight>9000</WindowHeight>
+ <WindowWidth>13860</WindowWidth>
+ <WindowTopX>240</WindowTopX>
+ <WindowTopY>75</WindowTopY>
+ <ProtectStructure>False</ProtectStructure>
+ <ProtectWindows>False</ProtectWindows>
+ </ExcelWorkbook>
+ <Styles>
+ <Style ss:ID="Default" ss:Name="Normal">
+ <Alignment ss:Vertical="Center"/>
+ <Borders/>
+ <Font ss:FontName="宋体" x:CharSet="134" ss:Size="12"/>
+ <Interior/>
+ <NumberFormat/>
+ <Protection/>
+ </Style>
+ <Style ss:ID="s21" ss:Name="Hyperlink">
+ <Font ss:FontName="宋体" x:CharSet="134" ss:Size="12" ss:Color="#0000FF"
+ ss:Underline="Single"/>
+ </Style>
+ <Style ss:ID="s22">
+ <Alignment ss:Horizontal="Left" ss:Vertical="Center"/>
+ </Style>
+ <Style ss:ID="s23">
+ <Alignment ss:Horizontal="Right" ss:Vertical="Center"/>
+ </Style>
+ <Style ss:ID="s24">
+ <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
+ </Style>
+ <Style ss:ID="s25">
+ <Alignment ss:Horizontal="Left" ss:Vertical="Center" ss:Indent="1"/>
+ </Style>
+ <Style ss:ID="s26">
+ <Alignment ss:Vertical="Top"/>
+ </Style>
+ <Style ss:ID="s27">
+ <Alignment ss:Vertical="Center"/>
+ </Style>
+ <Style ss:ID="s28">
+ <Alignment ss:Vertical="Bottom"/>
+ </Style>
+ <Style ss:ID="s29">
+ <Alignment ss:Horizontal="Center" ss:Vertical="Center" ss:Rotate="-42"/>
+ <Font ss:FontName="宋体" x:CharSet="134" ss:Size="28"/>
+ </Style>
+ <Style ss:ID="s30">
+ <Alignment ss:Vertical="Center" ss:VerticalText="1"/>
+ </Style>
+ <Style ss:ID="s31">
+ <Font ss:FontName="Broadway" x:Family="Swiss" ss:Size="22" ss:Shadow="1"/>
+ </Style>
+ <Style ss:ID="s32">
+ <Alignment ss:Vertical="Center" ss:WrapText="1"/>
+ </Style>
+ <Style ss:ID="s33">
+ <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
+ <Borders>
+ <Border ss:Position="Bottom" ss:LineStyle="Continuous" ss:Weight="3"
+ ss:Color="#0000FF"/>
+ <Border ss:Position="Left" ss:LineStyle="Continuous" ss:Weight="1"
+ ss:Color="#FF0000"/>
+ <Border ss:Position="Right" ss:LineStyle="Double" ss:Weight="3"
+ ss:Color="#000000"/>
+ <Border ss:Position="Top" ss:LineStyle="DashDot" ss:Weight="2"
+ ss:Color="#99CC00"/>
+ </Borders>
+ </Style>
+ <Style ss:ID="s34">
+ <Font ss:FontName="Arial Black" x:Family="Swiss" ss:Size="22" ss:Bold="1"
+ ss:Outline="1"/>
+ </Style>
+ <Style ss:ID="s35">
+ <Font ss:FontName="Arial Black" x:Family="Swiss" ss:Size="12"/>
+ </Style>
+ <Style ss:ID="s37">
+ <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
+ <Font ss:FontName="Courier New" x:Family="Modern" ss:Size="18"/>
+ </Style>
+ <Style ss:ID="s38">
+ <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
+ <Font ss:FontName="宋体" x:CharSet="134" ss:Size="12" ss:Bold="1"/>
+ </Style>
+ <Style ss:ID="s39">
+ <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
+ <Font ss:FontName="Blackadder ITC" x:Family="Decorative" ss:Size="20"
+ ss:Italic="1"/>
+ </Style>
+ <Style ss:ID="s40">
+ <Font ss:FontName="Forte" x:Family="Script" ss:Size="16" ss:Underline="Single"/>
+ </Style>
+ <Style ss:ID="s41">
+ <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
+ <Font ss:FontName="Bodoni MT Black" x:Family="Roman" ss:Size="12"
+ ss:Color="#FFCC00" ss:Underline="Double"/>
+ </Style>
+ <Style ss:ID="s42">
+ <Font ss:FontName="MS Reference Sans Serif" x:Family="Swiss" ss:Size="12"
+ ss:StrikeThrough="1"/>
+ </Style>
+ <Style ss:ID="s43">
+ <Font ss:FontName="Perpetua Titling MT" x:Family="Roman" ss:Size="12"
+ ss:VerticalAlign="Superscript"/>
+ </Style>
+ <Style ss:ID="s44">
+ <Font ss:FontName="Rockwell Extra Bold" x:Family="Roman" ss:Size="12"
+ ss:VerticalAlign="Subscript"/>
+ </Style>
+ <Style ss:ID="s47" ss:Parent="s21">
+ <Font ss:FontName="宋体" x:CharSet="134" ss:Size="12" ss:Color="#0000FF"
+ ss:VerticalAlign="Subscript" ss:Underline="Single"/>
+ </Style>
+ <Style ss:ID="s49">
+ <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
+ <Font ss:FontName="宋体" x:CharSet="134" ss:Size="12" ss:Color="#FF0000"/>
+ <Interior ss:Color="#99CC00" ss:Pattern="Solid"/>
+ </Style>
+ <Style ss:ID="s51">
+ <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
+ <Font ss:FontName="Courier New" x:Family="Modern" ss:Size="12"
+ ss:VerticalAlign="Subscript"/>
+ </Style>
+ </Styles>
+ <Worksheet ss:Name="Sheet1">
+ <Table ss:ExpandedColumnCount="8" ss:ExpandedRowCount="7" x:FullColumns="1"
+ x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="14.25">
+ <Column ss:Index="2" ss:AutoFitWidth="0" ss:Width="104.25"/>
+ <Column ss:AutoFitWidth="0" ss:Width="63"/>
+ <Column ss:AutoFitWidth="0" ss:Width="75"/>
+ <Column ss:AutoFitWidth="0" ss:Width="135.75"/>
+ <Column ss:AutoFitWidth="0" ss:Width="63.75"/>
+ <Column ss:AutoFitWidth="0" ss:Width="99.75"/>
+ <Row ss:AutoFitHeight="0"/>
+ <Row ss:AutoFitHeight="0">
+ <Cell ss:Index="2" ss:StyleID="s22"><Data ss:Type="String">left</Data></Cell>
+ <Cell ss:StyleID="s23"><Data ss:Type="String">right</Data></Cell>
+ <Cell ss:StyleID="s24"><Data ss:Type="String">center</Data></Cell>
+ <Cell ss:StyleID="s25"><Data ss:Type="String">Indent</Data></Cell>
+ </Row>
+ <Row ss:AutoFitHeight="0" ss:Height="122.25">
+ <Cell ss:Index="2" ss:StyleID="s26"><Data ss:Type="String">top</Data></Cell>
+ <Cell ss:StyleID="s27"><Data ss:Type="String">middle</Data></Cell>
+ <Cell ss:StyleID="s28"><Data ss:Type="String">bottom</Data></Cell>
+ <Cell ss:StyleID="s29"><Data ss:Type="String">Rotate</Data></Cell>
+ <Cell ss:StyleID="s30"><Data ss:Type="String">vertical</Data></Cell>
+ <Cell ss:StyleID="s31"><Data ss:Type="String">shadow</Data></Cell>
+ </Row>
+ <Row ss:AutoFitHeight="0" ss:Height="74.25">
+ <Cell><Data ss:Type="String">Notes</Data><Comment ss:Author="Guang Gavin Lu"><ss:Data
+ xmlns="http://www.w3.org/TR/REC-html40"><B><Font html:Face="Tahoma"
+ x:CharSet="134" x:Family="Swiss" html:Size="8" html:Color="#000000">Guang Gavin Lu:</Font></B><Font
+ html:Face="Tahoma" x:CharSet="134" x:Family="Swiss" html:Size="8"
+ html:Color="#000000">&#10;&#10;</Font><B><Font html:Face="Tahoma"
+ x:CharSet="134" x:Family="Swiss" html:Size="8" html:Color="#000000">Yes</Font><Font
+ html:Face="Tahoma" x:CharSet="134" x:Family="Swiss" html:Size="8"
+ html:Color="#FF6600">, T</Font></B><Font html:Face="Rockwell"
+ x:Family="Roman" html:Size="16" html:Color="#FF6600">h</Font><B><Font
+ html:Face="Rockwell" x:Family="Roman" html:Size="16" html:Color="#FF0000">is's</Font><Font
+ html:Face="Rockwell" x:Family="Roman" html:Size="16" html:Color="#0000FF"> a formated comments</Font></B><Font
+ html:Face="Rockwell" x:Family="Roman" html:Size="16" html:Color="#0000FF">. </Font><B><U><Font
+ html:Face="Tahoma" x:CharSet="134" x:Family="Swiss" html:Size="8"
+ html:Color="#0000FF">:( </Font><Font html:Face="Tahoma" x:CharSet="134"
+ x:Family="Swiss" html:Size="8" html:Color="#FF6600">Too complexive. Righ</Font></U></B><Font
+ html:Face="Tahoma" x:CharSet="134" x:Family="Swiss" html:Size="8"
+ html:Color="#FF6600">t?</Font></ss:Data></Comment></Cell>
+ <Cell ss:StyleID="s32"><Data ss:Type="String">WrapWrapWrapWrapWrapWrapWrapWrapWrapWrapWrapWrapWrap</Data></Cell>
+ <Cell ss:Index="5" ss:StyleID="s33"><Data ss:Type="String">borders</Data></Cell>
+ <Cell ss:Index="7" ss:StyleID="s34"><Data ss:Type="String">Outline</Data></Cell>
+ </Row>
+ <Row ss:AutoFitHeight="0" ss:Height="50.25">
+ <Cell ss:Index="2" ss:StyleID="s35"><Data ss:Type="String">Arial Black12</Data></Cell>
+ <Cell ss:MergeAcross="1" ss:StyleID="s37"><Data ss:Type="String">Courier New18</Data></Cell>
+ <Cell ss:StyleID="s38"><Data ss:Type="String">Black</Data></Cell>
+ <Cell ss:StyleID="s39"><Data ss:Type="String">Italy20</Data></Cell>
+ <Cell ss:StyleID="s40"><Data ss:Type="String">Underline16</Data></Cell>
+ <Cell ss:StyleID="s41"><Data ss:Type="String">Under2</Data></Cell>
+ </Row>
+ <Row ss:AutoFitHeight="0" ss:Height="37.5">
+ <Cell ss:Index="2" ss:StyleID="s42"><Data ss:Type="String">strikethrough</Data></Cell>
+ <Cell ss:StyleID="s43"><Data ss:Type="String">superscript</Data></Cell>
+ <Cell ss:StyleID="s44"><Data ss:Type="String">subscript</Data></Cell>
+ <Cell ss:StyleID="s21" ss:HRef="http://www.sun.com/"><Data ss:Type="String">Link to www.sun.com</Data></Cell>
+ <Cell ss:StyleID="s47" ss:HRef="http://www.sun.com/"><Data ss:Type="String">sub_Link</Data></Cell>
+ </Row>
+ <Row ss:AutoFitHeight="0" ss:Height="38.25">
+ <Cell ss:Index="2" ss:MergeAcross="1" ss:StyleID="s49"><Data ss:Type="String">Green Back Red Fore</Data></Cell>
+ <Cell ss:Index="5" ss:MergeAcross="2" ss:StyleID="s51"><ss:Data
+ ss:Type="String" xmlns="http://www.w3.org/TR/REC-html40"><Sub>Low<Font
+ html:Color="#0000FF">er</Font></Sub><B><Font html:Face="Arial"
+ x:Family="Swiss" html:Color="#0000FF">Ar</Font><Font html:Face="Arial"
+ x:Family="Swiss">ail</Font><U><Font html:Color="#FF0000">Courier New</Font></U></B><I><S><Font
+ html:Face="Times New Roman" x:Family="Roman">Times </Font><Font
+ html:Face="Times New Roman" x:Family="Roman" html:Color="#99CC00">New</Font><Font
+ html:Face="Times New Roman" x:Family="Roman"> Rom</Font><Font
+ html:Face="Times New Roman" x:Family="Roman" html:Color="#0000FF">an</Font></S></I><Sup><Font
+ html:Face="Times" x:Family="Roman" html:Color="#0000FF">U</Font><Font
+ html:Face="Times" x:Family="Roman" html:Color="#800000">p</Font><Font
+ html:Face="Times" x:Family="Roman">per</Font></Sup></ss:Data></Cell>
+ </Row>
+ </Table>
+ <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+ <Unsynced/>
+ <Print>
+ <ValidPrinterInfo/>
+ <PaperSizeIndex>9</PaperSizeIndex>
+ <HorizontalResolution>600</HorizontalResolution>
+ <VerticalResolution>600</VerticalResolution>
+ </Print>
+ <Selected/>
+ <Panes>
+ <Pane>
+ <Number>3</Number>
+ <ActiveRow>6</ActiveRow>
+ <ActiveCol>4</ActiveCol>
+ <RangeSelection>R7C5:R7C7</RangeSelection>
+ </Pane>
+ </Panes>
+ <ProtectObjects>False</ProtectObjects>
+ <ProtectScenarios>False</ProtectScenarios>
+ </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet2">
+ <Table ss:ExpandedColumnCount="0" ss:ExpandedRowCount="0" x:FullColumns="1"
+ x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="14.25"/>
+ <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+ <Unsynced/>
+ <ProtectObjects>False</ProtectObjects>
+ <ProtectScenarios>False</ProtectScenarios>
+ </WorksheetOptions>
+ </Worksheet>
+ <Worksheet ss:Name="Sheet3">
+ <Table ss:ExpandedColumnCount="0" ss:ExpandedRowCount="0" x:FullColumns="1"
+ x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="14.25"/>
+ <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
+ <Unsynced/>
+ <ProtectObjects>False</ProtectObjects>
+ <ProtectScenarios>False</ProtectScenarios>
+ </WorksheetOptions>
+ </Worksheet>
+</Workbook>
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_binary.xlsb b/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_binary.xlsb
new file mode 100755
index 000000000000..60f70ab061f7
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_binary.xlsb
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml.xlsx b/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml.xlsx
new file mode 100755
index 000000000000..11c4621a8393
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml.xlsx
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_macroenabled.xlsm b/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_macroenabled.xlsm
new file mode 100755
index 000000000000..94759c1001e3
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_macroenabled.xlsm
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_template.xltx b/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_template.xltx
new file mode 100755
index 000000000000..a676771c02a6
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_template.xltx
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_template_macroenabled.xltm b/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_template_macroenabled.xltm
new file mode 100755
index 000000000000..b53d780e52d0
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/ms_excel_2007_xml_template_macroenabled.xltm
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/microsoft/sylk.slk b/testautomation/spreadsheet/optional/input/loadsave/microsoft/sylk.slk
new file mode 100755
index 000000000000..b6175a6fc66a
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/microsoft/sylk.slk
@@ -0,0 +1 @@
+ID;PWXL;N;E P;PGeneral P;P0 P;P0.00 P;P#,##0 P;P#,##0.00 P;P#,##0_);;\(#,##0\) P;P#,##0_);;[Red]\(#,##0\) P;P#,##0.00_);;\(#,##0.00\) P;P#,##0.00_);;[Red]\(#,##0.00\) P;P"$"#,##0_);;\("$"#,##0\) P;P"$"#,##0_);;[Red]\("$"#,##0\) P;P"$"#,##0.00_);;\("$"#,##0.00\) P;P"$"#,##0.00_);;[Red]\("$"#,##0.00\) P;P0% P;P0.00% P;P0.00E+00 P;P#\ ?/? P;P#\ ??/?? P;Pm/d/yy P;Pd\-mmm\-yy P;Pd\-mmm P;Pmmm\-yy P;Ph:mm\ AM/PM P;Ph:mm:ss\ AM/PM P;Ph:mm P;Ph:mm:ss P;Pm/d/yy\ h:mm P;P"$"0.00\ ;;\("$"0.00\) P;P\ ;;\ ;;\ ;;\ P;P\ P;FGeneva;M240 P;FGeneva;M240;SB P;FGeneva;M240;SI P;FGeneva;M240;SBI P;EGeneva;M200 P;EGeneva;M200 P;EGeneva;M240 F;P0;DG0G10;SM0;M320;N3 12 B;Y247;X25;D0 0 246 24 O;L;D;V4;K47;G100 0.001 F;W1 1 9 F;W2 2 11 F;W4 4 8 F;W5 6 13 F;W7 7 9 F;W8 8 11 F;W9 9 8 F;W11 12 13 F;W13 13 12 F;W14 15 8 F;W16 19 9 F;W21 21 11 F;W23 23 12 F;W24 24 9 F;W25 25 12 F;P0;FG0C;C14 F;P27;F$2G;C25 NN;NForm_1040;ER44C1:R59C5 NN;NForm_M_1;ER1C20:R15C24 NN;NInstructions;ER1C1:R15C5 NN;NSchedule_A;ER1C7:R15C11 NN;NSchedule_B;ER123C7:R137C11 NN;NSchedule_D;ER1C13:R10C17 F;SM7;Y1;X1 F;SM7;X2 F;P0;FG0C;SM7;X3 C;K1995 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 C;K"SCHEDULE A - TAXPAYER INFORMATION" F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 C;K"SCHEDULE D - TAXPAYER INFORMATION" F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 C;K"Form M-1 Calculations. This is not the form itself as Minnesota" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y2;X1 C;K"Calculations for Form 1040 and Schedules A, B, and D and" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 C;K"requires that their form be submitted or that an approved" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y3;X1 C;K"Minnesota Form M-1." F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 C;K"Names---------------------->>" F;SM7;X8 F;SM7;X9 F;P0;FG0L;SM7;X10 C;K0;ER[+44]C[-6] F;SM7;X11 F;SM7;X12 F;SM7;X13 C;K"Names---------------------->>" F;SM7;X14 F;SM7;X15 F;P0;FG0L;SM7;X16 C;K0;ER[+44]C[-12] F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 C;K"substitute be submitted and that is beyond the scope of this" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y4;X1 C;K"These are not the forms themselves as the IRS requires that" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;P0;FG0L;SM7;X10 C;K0;ER[+45]C[-6] F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;P0;FG0L;SM7;X16 C;K0;ER[+45]C[-12] F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 C;K"Excel template." F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y5;X1 C;K"their forms be submitted or that approved substitutes be" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 C;K"Social Security Numbers------->>" F;SM7;X8 F;SM7;X9 F;P0;FG0L;SM7;X10 C;K0;ER[+43]C[-6] F;SM7;X11 F;SM7;X12 F;SM7;X13 C;K"Social Security Numbers------->>" F;SM7;X14 F;SM7;X15 F;P0;FG0L;SM7;X16 C;K0;ER[+43]C[-12] F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y6;X1 C;K"submitted and that is beyond the scope of this Excel" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;P0;FG0L;SM7;X10 C;K0;ER[+44]C[-6] F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;P0;FG0L;SM7;X16 C;K0;ER[+44]C[-12] F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 C;K"Taxpayer Information" F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y7;X1 C;K"spreadsheet. These forms verify all your calculations and follow the" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 C;K"Medical and Dental Expenses" F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0C;SM7;X13 F;SM7;X14 F;P0;FG0C;SM7;X15 F;P0;FG0C;SM7;X16 F;P0;FG0C;SM7;X17 F;P0;FG0C;SM7;X18 F;P0;FG0C;SM7;X19 F;SM7;X20 F;SM7;X21 C;K"Name" F;SM7;X22 C;K0;ER[+40]C[-18] F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y8;X1 C;K"format of the IRS forms." F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 C;K"Put numbers in appropriate cell below" F;SM7;X8 F;SM7;X9 F;P0;FG0C;SM7;X10 F;P0;FG0C;SM7;X11 C;K"here:" F;P0;FG0C;SM7;X12 F;P0;FG0C;SM7;X13 C;K"PART I" F;P0;FG0L;SM7;X14 C;K"Short-Term Capital Gains and Losses-1Assets Held One Year" F;P0;FG0C;SM7;X15 F;P0;FG0C;SM7;X16 F;P27;F$2G;SM7;X17 F;P0;FG0C;SM7;X18 F;P0;FG0C;SM7;X19 F;SM7;X20 F;SM7;X21 C;K"Soc Sec No" F;SM7;X22 C;K0;ER[+40]C[-18] F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y9;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;P0;FG0C;SM7;X10 F;P0;FG0C;SM7;X11 C;K"\/" F;P0;FG0C;SM7;X12 F;P27;F$2G;SM7;X13 F;P0;FG0L;SM7;X14 C;K"or Less" F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 C;K"Spouse Name" F;SM7;X22 C;K0;ER[+40]C[-18] F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y10;X1 C;K"This Excel template was written by Bill Arsenault." F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 1" F;SM7;X8 C;K"Medical and Dental Expenses---->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P27;F$2C;SM7;X13 C;K"Line 1" F;P27;F$2L;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 C;K"Soc Sec No" F;SM7;X22 C;K0;ER[+40]C[-18] F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y11;X1 C;K"If you find it useful,please send $5.00 (or whatever you think is fair)" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 2" F;SM7;X8 C;K"Form 1040, Line 32-->>" F;SM7;X9 F;P27;F$2G;SM7;X10 C;K0;ER[+108]C[-4] F;P27;F$2G;SM7;X11 C;K"<<-----------" F;P27;F$2G;SM7;X12 C;K"-------------" F;P0;FG0C;SM7;X13 C;K"(a) Description" F;SM7;X14 C;K"(b) Date" F;P0;FG0C;SM7;X15 C;K"(c) Date" F;P0;FG0C;SM7;X16 C;K"(d) Sales" F;P0;FG0C;SM7;X17 C;K"(e) Cost or" F;P0;FG0C;SM7;X18 C;K"(f) LOSS" F;P0;FG0C;SM7;X19 C;K"(g) GAIN" F;SM7;X20 F;SM7;X21 C;K"Address" F;SM7;X22 C;K0;ER[+40]C[-18] F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y12;X1 C;K"and any suggestions for improvements and your name and address to:" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 3" F;SM7;X8 C;K"Multiply the Amount on Line 2 by7.5% (.075)." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;P0;FG0C;SM7;X13 C;K"of Property" F;SM7;X14 C;K"Acquired" F;P0;FG0C;SM7;X15 C;K"Sold" F;P0;FG0C;SM7;X16 C;K"Price" F;P27;F$2C;SM7;X17 C;K"Other Basis" F;P0;FG0C;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 C;K"City" F;SM7;X22 C;K0;ER[+40]C[-18] F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y13;X1 C;K"Payers of this year's shareware fee receive next year's form free." F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"----------------------------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 C;K0;EROUND(0.075*R[-2]C[-1],2) F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 C;K"State" F;SM7;X22 C;K0;ER[+40]C[-18] F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y14;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 4" F;SM7;X8 C;K"Subtract Line 3 from Line 1. If Zero or Less, Enter 0." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 C;K"Zip" F;SM7;X22 C;K0;ER[+40]C[-18] F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y15;X1 F;SM7;X2 C;K"Bill Arsenault" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"------------------------------------------->>" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K0;EIF(R[-5]C[-1]-R[-2]C[-1]<=0,0,R[-5]C[-1]-R[-2]C[-1]) F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 C;K"County" F;SM7;X22 C;K0;ER[+40]C[-18] F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y16;X1 F;SM7;X2 C;K"11403 Keating Ave." F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 4" F;SM7;X8 C;K"This Is Your Total Medical and Dental Expenses." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2C;SM7;X13 C;K"Line 2" F;P18;FG0L;SM7;X14 C;K"Short Term Totals From Line 21" F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 C;K"Income" F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y17;X1 F;SM7;X2 C;K"Burnsville, MN 55337-5610" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2C;SM7;X13 F;P27;F$2G;SM7;X14 C;K" --------" F;P27;F$2G;SM7;X15 C;K" --------" F;P27;F$2G;SM7;X16 C;K0;ER[+51]C F;P27;F$2G;SM7;X17 C;K" ---------" F;P27;F$2G;SM7;X18 C;K0;ER[+51]C F;P27;F$2G;SM7;X19 C;K0;ER[+51]C F;P0;FG0C;SM7;X20 C;K"Line 1" F;SM7;X21 C;K"Federal Taxable Income---------------------->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K""ERROR-FILING STATUS"";ER[+115]C[-19] F;SM7;Y18;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"Taxes You Paid" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0C;SM7;X13 C;K"Line 3" F;P0;FG0L;SM7;X14 C;K"Total (add column d)" F;SM7;X15 F;P27;F$2G;SM7;X16 C;K0;ESUM(R[-5]C:R[-3]C)+R[-1]C F;P27;F$2G;SM7;X17 C;K"----------" F;P27;F$2G;SM7;X18 C;K"----------" F;P27;F$2G;SM7;X19 C;K"----------" F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"Line 37(1040) or Line 22(1040A) or Line 6(1040EZ)" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K"---------------" F;SM7;Y19;X1 C;K"I will notify you of future updates and new items of interest." F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"NOTE:" F;SM7;X8 C;K"SALES TAXES ARE NO LONGER DEDUCTIBLE." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;P0;FG0C;SM7;X13 C;K"Line 4" F;P0;FG0L;SM7;X14 C;K"Forms 2119,6252,4684,6781,8824----->>" F;SM7;X15 F;SM7;X16 F;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 C;K"Line 2" F;SM7;X21 C;K"If You Itemize Deductions: Fill in Amount from the" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K"---------------" F;SM7;Y20;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 5" F;SM7;X8 C;K"State and Local Income Taxes--->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P0;FG0C;SM7;X13 C;K"Line 5" F;P0;FG0L;SM7;X14 C;K"Short-term partnership gain or (loss)--->>" F;SM7;X15 F;SM7;X16 F;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"Worksheet for Line 2 on Page 8 of the form M-1" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K"---------------" F;SM7;Y21;X1 C;K"You may copy this spreadsheet and distribute it freely as long as " F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 6" F;SM7;X8 C;K"Real Estate Taxes-------------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P0;FG0C;SM7;X13 C;K"Line 6" F;P0;FG0L;SM7;X14 C;K"Short-term capital loss carryover------>>" F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 C;K"<<--------" F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"Instructions-------------------------------->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K0;EIF(R[+59]C[-13]=0,0,IF(ISTEXT(R[+101]C[-21]),R[+101]C[-21],MAX(0,MIN(R[+59]C[-13]-R[+101]C[-21],R[-1]C[-14])))) F;SM7;Y22;X1 C;K"this instruction/information section remains unchanged." F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 7" F;SM7;X8 C;K"Personal Property Taxes-------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P0;FG0C;SM7;X13 C;K"Line 7" F;P0;FG0L;SM7;X14 C;K"Add lines 1,2,4-6 in LOSS and GAIN----->>" F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K0;E-SUM(R[-9]C:R[-7]C)-R[-5]C-R[-3]C-R[-2]C-R[-1]C F;P27;F$2G;SM7;X19 C;K0;ESUM(R[-9]C:R[-7]C)+R[-5]C+SUM(R[-3]C:R[-2]C) F;P0;FG0C;SM7;X20 C;K"Line 3" F;SM7;X21 C;K"Other Additions to Your Income (See p. 9)------->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y23;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 8" F;SM7;X8 C;K"Other Taxes. List Type and Amount.>>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P0;FG0C;SM7;X13 C;K"Line 8" F;P0;FG0L;SM7;X14 C;K"Net short-term gain or (loss), combine line 7------->>" F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;P27;F$2G;SM7;X19 C;K0;ER[-1]C[-1]+R[-1]C F;P0;FG0C;SM7;X20 C;K"Line 4" F;SM7;X21 C;K"Add Lines 1, 2 and 3------------------------->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K""ERROR-FILING STATUS"";EIF(ISTEXT(R[-6]C),R[-6]C,R[-6]C+R[-2]C+R[-1]C) F;SM7;Y24;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 C;K"Thank you," F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 C;K"Line 5" F;SM7;X21 C;K"State Income Tax Refund (Line 10 Form 1040)-->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K0;ER[+59]C[-19] F;SM7;Y25;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 C;K"Bill" F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 9" F;SM7;X8 C;K"Add the Amounts on Lines 5 Through 8. Enter the Total Here." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;P0;FG0C;SM7;X20 C;K"Line 6" F;SM7;X21 C;K"Other Subtractions from Your Income (See p. 9)->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y26;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"------------------------------------------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K0;ESUM(R[-6]C[-1]:R[-2]C[-1]) F;P0;FG0C;SM7;X13 C;K"PART II" F;P0;FG0L;SM7;X14 C;K"Long-Term Capital Gains and Losses-1Assets Held More Than" F;P0;FG0C;SM7;X15 F;P0;FG0C;SM7;X16 F;P27;F$2G;SM7;X17 F;P0;FG0C;SM7;X18 F;P0;FG0C;SM7;X19 F;P0;FG0C;SM7;X20 C;K"Line 7" F;SM7;X21 C;K"Add Lines 5 and 6--------------------------->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K0;ER[-2]C+R[-1]C F;SM7;Y27;X1 C;K"To use this template, do the following:" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 9" F;SM7;X8 C;K"This Is Your Total Taxes You Paid." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P0;FG0L;SM7;X14 C;K"One Year" F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 C;K"Line 8" F;SM7;X21 C;K"Subtract Line 7 from Line 4------------------->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K""ERROR-FILING STATUS"";EIF(ISTEXT(R[-4]C),R[-4]C,R[-4]C-R[-1]C) F;P0;FG0C;SM7;Y28;X1 C;K1 F;SM7;X2 C;K"Duplicate this template, rename the copy, and" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2C;SM7;X13 C;K"Line 9" F;P27;F$2L;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 C;K"Line 9" F;SM7;X21 C;K"Tax from the Table on Pages 15 through 19 of the" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K"---------------" F;P0;FG0C;SM7;Y29;X1 F;SM7;X2 C;K"work only on the copy. This will allow you to" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"Interest You Paid" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0C;SM7;X13 C;K"(a) Description" F;SM7;X14 C;K"(b) Date" F;P0;FG0C;SM7;X15 C;K"(c) Date" F;P0;FG0C;SM7;X16 C;K"(d) Sales" F;P0;FG0C;SM7;X17 C;K"(e) Cost or" F;P0;FG0C;SM7;X18 C;K"(f) LOSS" F;P0;FG0C;SM7;X19 C;K"(g) GAIN" F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"Instructions or from Schedule M-1MT, M-1NR, " F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K"---------------" F;P0;FG0C;SM7;Y30;X1 F;SM7;X2 C;K"reuse the original template for more than one person." F;P0;FG0L;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"NOTE:" F;SM7;X8 C;K"NEW RULES APPLY TO THE HOME" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;P0;FG0C;SM7;X13 C;K"of Property" F;SM7;X14 C;K"Acquired" F;P0;FG0C;SM7;X15 C;K"Sold" F;P0;FG0C;SM7;X16 C;K"Price" F;P27;F$2G;SM7;X17 C;K"Other Basis" F;P0;FG0C;SM7;X18 F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"M-1LS, or M-1CR---------------------------->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y31;X1 C;K2 F;SM7;X2 C;K"Fill in the appropriate numbers and entries in the" F;P0;FG0L;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"MORTGAGE INTEREST DEDUCTION." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;P0;FG0C;SM7;X20 C;K"Line 10" F;SM7;X21 C;K"Nongame Wildlife Fund Contribution------------>>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y32;X1 F;SM7;X2 C;K"template." F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"SEE INSTRUCTIONS." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;P0;FG0C;SM7;X20 C;K"Line 11" F;SM7;X21 C;K"Add Lines 9 and 10--------------------------->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K0;ER[-2]C+R[-1]C F;P0;FG0C;SM7;Y33;X1 C;K3 F;SM7;X2 C;K"Watch for "ERROR" messages indicating data entry" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;P0;FG0C;SM7;X20 C;K"Line 12" F;SM7;X21 C;K"Minnesota Income Tax Withheld (from" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 C;K"---------------" F;SM7;X25 C;K"---------------" F;P0;FG0C;SM7;Y34;X1 F;SM7;X2 C;K"errors." F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 10" F;SM7;X8 C;K"Home Mortgage Interest and Points Reported to You on Form 1098." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 F;P27;F$2C;SM7;X13 C;K"Line 10" F;P18;FG0L;SM7;X14 C;K"Long Term Totals From Line 23" F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"Your 1995 W-2 Forms)------------->>" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 C;K0;ER[-14]C[-13] F;SM7;X25 C;K"<<-------------" F;P0;FG0C;SM7;Y35;X1 C;K4 F;SM7;X2 C;K"Use the Goto command under the Formula menu to move" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"----------------------------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P27;F$2C;SM7;X13 F;P27;F$2G;SM7;X14 C;K" --------" F;P27;F$2G;SM7;X15 C;K" --------" F;P27;F$2G;SM7;X16 C;K0;ER[+54]C F;P27;F$2G;SM7;X17 C;K" ---------" F;P27;F$2G;SM7;X18 C;K0;ER[+54]C F;P27;F$2G;SM7;X19 C;K0;ER[+54]C F;P0;FG0C;SM7;X20 C;K"Line 13" F;SM7;X21 C;K"Estimated Tax and Form M-13 Payments You" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 C;K"---------------" F;SM7;X25 C;K"---------------" F;P0;FG0C;SM7;Y36;X1 F;SM7;X2 C;K"around the spreadsheet." F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 11" F;SM7;X8 C;K"Home Mortgage Interest Not Reported to You on Form 1098." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0C;SM7;X13 C;K"Line 11" F;P0;FG0L;SM7;X14 C;K"Total (add column d)" F;SM7;X15 F;P27;F$2G;SM7;X16 C;K0;ESUM(R[-5]C:R[-3]C)+R[-1]C F;P27;F$2G;SM7;X17 C;K"----------" F;P27;F$2G;SM7;X18 C;K"----------" F;P27;F$2G;SM7;X19 C;K"----------" F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"Made for 1995, If Any-------------->>" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 F;SM7;X25 C;K"<<-------------" F;P0;FG0C;SM7;Y37;X1 C;K5 F;SM7;X2 C;K"After completing the data entry, print out this" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"(If to individual, show that person's name and address)" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;P0;FG0C;SM7;X13 C;K"Line 12" F;P0;FG0L;SM7;X14 C;K"Forms 4797,2119,2439,6252,4684,6781,8824" F;SM7;X15 F;SM7;X16 F;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 C;K"Line 14" F;SM7;X21 C;K"Child and Dependent Care Credit (Attach" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 C;K"---------------" F;SM7;X25 C;K"---------------" F;P0;FG0C;SM7;Y38;X1 F;SM7;X2 C;K"template and copy the verified figures to the" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 C;K"Name:" F;SM7;X8 F;SM7;X9 C;K"Address:" F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0C;SM7;X13 C;K"Line 13" F;P0;FG0L;SM7;X14 C;K"Long-term partnership gain or (loss)--->>" F;SM7;X15 F;SM7;X16 F;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"Schedule M-1CD)------------------>>" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 F;SM7;X25 C;K"<<-------------" F;P0;FG0C;SM7;Y39;X1 F;SM7;X2 C;K"approved IRS forms. Use page ranges appropriate" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 11" F;SM7;X8 C;K"----------------------------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P0;FG0C;SM7;X13 C;K"Line 14" F;P0;FG0L;SM7;X14 C;K"Capital Gain Distributions------------>>" F;SM7;X15 F;SM7;X16 F;SM7;X17 F;P27;F$2G;SM7;X18 C;K"----------" F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 C;K"Line 15" F;SM7;X21 C;K"Minnesota Working Family Credit (See" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 C;K"---------------" F;SM7;X25 C;K"---------------" F;P0;FG0C;SM7;Y40;X1 F;SM7;X2 C;K"for your printer." F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 12" F;SM7;X8 C;K"Points Not Reported on Frm 1098-->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P0;FG0C;SM7;X13 C;K"Line 15" F;P0;FG0L;SM7;X14 C;K"Long-term capital loss carryover------>>" F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 C;K"<<--------" F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"Instructions on Page 13)----------->>" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 F;SM7;X25 C;K"<<-------------" F;P0;FG0C;SM7;Y41;X1 C;K6 F;SM7;X2 C;K"Wait for your refund (hopefully)!" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P1;FI0G;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 13" F;SM7;X8 C;K"Investment Interest------------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P0;FG0C;SM7;X13 C;K"Line 16" F;P0;FG0L;SM7;X14 C;K"Add lines 9,10,12-15 in LOSS and GAIN--->>" F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K0;E-SUM(R[-10]C:R[-8]C)-R[-6]C-R[-4]C-R[-3]C-R[-1]C F;P27;F$2G;SM7;X19 C;K0;ESUM(R[-10]C:R[-8]C)+R[-6]C+SUM(R[-4]C:R[-2]C) F;P0;FG0C;SM7;X20 C;K"Line 16" F;SM7;X21 C;K"Add Lines 12, 13, 14 and 15------------------->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K0;ER[-7]C[-1]+R[-5]C[-1]+R[-3]C[-1]+R[-1]C[-1] F;P0;FG0C;SM7;Y42;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P1;FI0G;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 14" F;SM7;X8 C;K"Add the Amounts on Lines 10 Through 13. Enter the" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0C;SM7;X13 C;K"Line 17" F;P0;FG0L;SM7;X14 C;K"Net short-term gain or (loss), combine line 16------->>" F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;P27;F$2G;SM7;X19 C;K0;ER[-1]C[-1]+R[-1]C F;P0;FG0C;SM7;X20 C;K"Line 17" F;SM7;X21 C;K"If Line 16 Is More than Line 11, Subtract Line 11" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K"---------------" F;P0;FG0C;SM7;Y43;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P1;FI0G;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"Total Here.--------------------------------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K0;ER[-8]C[-1]+SUM(R[-4]C[-1]:R[-2]C[-1]) F;P0;FG0C;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"from Line 16, and Fill in the Amount of Your" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 C;K"---------------" F;SM7;X25 C;K"---------------" F;SM7;Y44;X1 F;SM7;X2 C;K"FORM 1040 - TAXPAYER INFORMATION" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 14" F;SM7;X8 C;K"This Is Your Total Interest You Paid." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0C;SM7;X13 C;K"PART III" F;P0;FG0L;SM7;X14 C;K"Summary of Parts I and II" F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"REFUND------------------------------------->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K0;EIF(R[-3]C>=R[-12]C,R[-3]C-R[-12]C," ") F;SM7;Y45;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0C;SM7;X13 F;P0;FG0L;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;P0;FG0C;SM7;X20 C;K"Line 18" F;SM7;X21 C;K"If Line 11 Is More than Line 16, Subtract Line 16" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K"---------------" F;SM7;Y46;X1 F;SM7;X2 C;K"Label" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"Gifts to Charity" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0C;SM7;X13 C;K"Line 18" F;P27;F$2L;SM7;X14 C;K"Combine Lines 8 and 17-------------------------->>" F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P11;F$2G;SM7;X19 C;K0;ER[-23]C+R[-4]C F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"from Line 11, and Fill in the Amount of" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 C;K"---------------" F;SM7;X25 C;K"---------------" F;SM7;Y47;X1 C;K"Name-------------------------->>" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 15" F;SM7;X8 C;K"Contributions by Cash or Check->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P0;FG0C;SM7;X13 C;K"Line 19" F;P27;F$2L;SM7;X14 C;K"Maximum Loss---------------------------------->>" F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 C;K" ";EIF(R[-1]C<0,MAX(R[-1]C,-3000+1500*R[+16]C[-18])," ") F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"TAX YOU OWE------------------------------->>" F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 C;K" ";EIF(R[-15]C>R[-6]C,R[-15]C-R[-6]C," ") F;SM7;Y48;X1 C;K"Social Security Number---------->>" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 16" F;SM7;X8 C;K"Other than Cash (Attach Form 8283 if over $500.)" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;P0;FG0G;SM7;X25 F;SM7;Y49;X1 C;K"Spouse's Name------------------>>" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 F;SM7;X8 C;K"----------------------------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P0;FG0C;SM7;X13 C;K"PART IV" F;P0;FG0L;SM7;X14 C;K"Short-Term Capital Gains and Losses-1Assets Held One Year" F;P0;FG0C;SM7;X15 F;P0;FG0C;SM7;X16 F;P27;F$2G;SM7;X17 F;P0;FG0C;SM7;X18 F;P0;FG0C;SM7;X19 F;SM7;X20 C;K"Estimated Tax?" F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;P0;FG0G;SM7;X25 F;SM7;Y50;X1 C;K"Spouse's Social Security Number-->>" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 17" F;SM7;X8 C;K"Carryover from Prior Year----->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P27;F$2G;SM7;X13 F;P0;FG0L;SM7;X14 C;K"or Less ( Continuation of Part I )" F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 C;K"Line 19" F;SM7;X21 C;K"Amount from Line 17 You Want Applied" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 C;K"---------------" F;SM7;X25 C;K"---------------" F;SM7;Y51;X1 C;K"Address------------------------>>" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 18" F;SM7;X8 C;K"Add the Amounts on Lines 15 Through 17. Enter the" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;P27;F$2C;SM7;X13 C;K"Line 20" F;P27;F$2L;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 F;SM7;X21 C;K"to 1996 Estimated Tax-------------->>" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 F;SM7;X25 C;K"<<-------------" F;SM7;Y52;X1 C;K"City--------------------------->>" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"Total Here.--------------------------------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K0;ER[-5]C[-1]+R[-3]C[-1]+R[-2]C[-1] F;P0;FG0C;SM7;X13 C;K"(a) Description" F;SM7;X14 C;K"(b) Date" F;P0;FG0C;SM7;X15 C;K"(c) Date" F;P0;FG0C;SM7;X16 C;K"(d) Sales" F;P0;FG0C;SM7;X17 C;K"(e) Cost or" F;P0;FG0C;SM7;X18 C;K"(f) LOSS" F;P0;FG0C;SM7;X19 C;K"(g) GAIN" F;P0;FG0C;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 C;K"---------------" F;SM7;X25 C;K"---------------" F;SM7;Y53;X1 C;K"State-------------------------->>" F;SM7;X2 F;P0;FG0L;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 18" F;SM7;X8 C;K"This Is Your Total Gifts to Charity" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0C;SM7;X13 C;K"of Property" F;SM7;X14 C;K"Acquired" F;P0;FG0C;SM7;X15 C;K"Sold" F;P0;FG0C;SM7;X16 C;K"Price" F;P27;F$2C;SM7;X17 C;K"Other Basis" F;P0;FG0C;SM7;X18 F;P27;F$2G;SM7;X19 F;P0;FG0C;SM7;X20 C;K"Line 20" F;SM7;X21 C;K"Penalty for 1995 Underpayment (from" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 C;K"---------------" F;SM7;X25 C;K"---------------" F;SM7;Y54;X1 C;K"Zip---------------------------->>" F;SM7;X2 F;P0;FG0L;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 C;K"Your Schedule M-15)--------------->>" F;SM7;X22 F;SM7;X23 F;P27;F$2G;SM7;X24 F;SM7;X25 C;K"<<-------------" F;SM7;Y55;X1 C;K"County------------------------->>" F;SM7;X2 F;P0;FG0L;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"Casualty and Theft Losses" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y56;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 19" F;SM7;X8 C;K"Casualty and Theft Losses (Attach Form 4684)-->>" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y57;X1 F;SM7;X2 C;K"Filing Status" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 19" F;SM7;X8 C;K"This Is Your Total Casualty and Theft Losses" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y58;X1 C;K"Put "1" in appropriate cell below" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y59;X1 C;K"here:" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"Job Expenses and Most Other Miscellaneous Deductions" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y60;X1 C;K"\/" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 20" F;SM7;X8 C;K"Unreimbursed Employee Expenses (Attach Form 2106 or 2106-EZ)" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 F;P0;FG0L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y61;X1 F;SM7;X2 C;K"Single" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 F;SM7;X8 C;K"----------------------------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P0;FG0L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y62;X1 F;SM7;X2 C;K"Married Filing Joint Return" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 21" F;SM7;X8 C;K"Tax Preparation Fees--------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y63;X1 F;SM7;X2 C;K"Married Filing Separate Return" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P1;FI0G;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 22" F;SM7;X8 C;K"Other Expenses--------------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y64;X1 F;SM7;X2 C;K"Head of Household" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 C;K"(List Type and Amount)" F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y65;X1 F;SM7;X2 C;K"Qualifying Widow(er) with Dependent Child" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 23" F;SM7;X8 C;K"Add Lines 20 to 22.----------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 C;K0;ESUM(R[-4]C:R[-1]C) F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y66;X1 C;K"ERROR-FILING STATUS";EIF(SUM(R[-5]C:R[-1]C)<>1,"ERROR-FILING STATUS"," ") F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P1;FI0G;SM7;X6 C;K"";EIF(SUM(R[-5]C[-5]:R[-1]C[-5])>1,"ERROR-FILING STATUS","") F;P0;FG0C;SM7;X7 C;K"Line 24" F;SM7;X8 C;K"Form 1040, Line 32-->>" F;SM7;X9 F;P27;F$2G;SM7;X10 C;K0;ER[+53]C[-4] F;P27;F$2G;SM7;X11 C;K"<<-----------" F;P27;F$2G;SM7;X12 C;K"-------------" F;SM7;X13 C;K"Line 21" F;P0;FG0L;SM7;X14 C;K"Short Term Totals. Add Columns (d), (f), and (g)." F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y67;X1 F;SM7;X2 C;K"Exemptions" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 25" F;SM7;X8 C;K"Multiply the Amount on Line 24 by 2% (.02). Enter " F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;SM7;X13 F;P0;FG0L;SM7;X14 C;K"Enter Here and on Line 2." F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y68;X1 C;K"Put "1 or number" in appropriate cell below here:" F;SM7;X2 F;SM7;X3 F;P0;FG0C;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 F;SM7;X8 C;K"the Result Here.--------------->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 C;K0;EROUND(R[-2]C[-1]*0.02,2) F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;P27;F$2G;SM7;X14 C;K" --------" F;P27;F$2G;SM7;X15 C;K" --------" F;P27;F$2G;SM7;X16 C;K0;ESUM(R[-14]C:R[-3]C) F;P27;F$2G;SM7;X17 C;K" ---------" F;P27;F$2G;SM7;X18 C;K0;ESUM(R[-14]C:R[-3]C) F;P27;F$2G;SM7;X19 C;K0;ESUM(R[-14]C:R[-3]C) F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y69;X1 F;SM7;X2 F;SM7;X3 F;P0;FG0C;SM7;X4 C;K"\/" F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 26" F;SM7;X8 C;K"Subtract Line 25 from Line 23. Enter the Result Here (but not" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y70;X1 C;K"Line 6a" F;SM7;X2 F;SM7;X3 C;K"Yourself" F;P1;FI0C;SM7;X4 F;SM7;X5 C;K"(1 or blank)" F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"less than zero)----------------------------->>" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K0;EIF(R[-5]C[-1]>R[-2]C[-1],R[-5]C[-1]-R[-2]C[-1],0) F;P0;FG0C;SM7;X13 C;K"PART V" F;P0;FG0L;SM7;X14 C;K"Long-Term Capital Gains and Losses-1Assets Held More Than" F;P0;FG0C;SM7;X15 F;P0;FG0C;SM7;X16 F;P27;F$2G;SM7;X17 F;P0;FG0C;SM7;X18 F;P0;FG0C;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y71;X1 C;K"Line 6b" F;SM7;X2 F;SM7;X3 C;K"Spouse" F;P1;FI0C;SM7;X4 F;SM7;X5 C;K"(1 or blank)" F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 26" F;SM7;X8 C;K"This Is Your Total Job Expenses and Most Other Miscellaneous Deductions" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P0;FG0L;SM7;X14 C;K"One Year ( Continuation of Part II )" F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y72;X1 C;K"Line 6c" F;SM7;X2 F;SM7;X3 C;K"Dependents" F;P1;FI0C;SM7;X4 F;SM7;X5 C;K"(number or blank)" F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2C;SM7;X13 C;K"Line 22" F;P27;F$2L;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y73;X1 C;K"Line 6e" F;SM7;X2 C;K"Total Number of Exemptions Claimed----------->>" F;SM7;X3 F;P1;FI0G;SM7;X4 F;SM7;X5 F;SM7;X6 C;K0;ESUM(R[-3]C[-2]:R[-1]C[-2]) F;SM7;X7 F;SM7;X8 C;K"Other Miscellaneous Deductions" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0C;SM7;X13 C;K"(a) Description" F;SM7;X14 C;K"(b) Date" F;P0;FG0C;SM7;X15 C;K"(c) Date" F;P0;FG0C;SM7;X16 C;K"(d) Sales" F;P0;FG0C;SM7;X17 C;K"(e) Cost or" F;P0;FG0C;SM7;X18 C;K"(f) LOSS" F;P0;FG0C;SM7;X19 C;K"(g) GAIN" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y74;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;P1;FI0G;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 27" F;SM7;X8 C;K"Other-from List on Page A-5. List Type & Amount.>>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 F;P0;FG0C;SM7;X13 C;K"of Property" F;SM7;X14 C;K"Acquired" F;P0;FG0C;SM7;X15 C;K"Sold" F;P0;FG0C;SM7;X16 C;K"Price" F;P27;F$2C;SM7;X17 C;K"Other Basis" F;P0;FG0C;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y75;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;P1;FI0G;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y76;X1 F;SM7;X2 C;K"Income" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 F;SM7;X8 C;K"Total Itemized Deductions" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y77;X1 C;K"Put numbers in appropriate cell below" F;SM7;X2 F;SM7;X3 F;P0;FG0C;SM7;X4 F;P0;FG0L;SM7;X5 C;K" here: or" F;P0;FG0C;SM7;X6 C;K"here:" F;P0;FG0C;SM7;X7 C;K"Line 28" F;SM7;X8 C;K"Add the Amounts on Lines 4, 9, 14, 18, 19, 26, and 27." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y78;X1 F;SM7;X2 F;SM7;X3 F;P0;FG0C;SM7;X4 F;P0;FG0C;SM7;X5 C;K"\/" F;P0;FG0C;SM7;X6 C;K"\/" F;SM7;X7 F;SM7;X8 C;K"Enter the Total Here. Then Enter on Form 1040," F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y79;X1 C;K"Line 7" F;SM7;X2 C;K"Wages, Salaries, Tips, etc.------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"Line 34, the LARGER of This Total or Your Standard" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 F;P0;FG0L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y80;X1 C;K"Line 8a" F;SM7;X2 C;K"Taxable Interest Income--------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;ER[+74]C[+6] F;SM7;X7 F;SM7;X8 C;K"Deduction from Page 23 of the Instructions----->>" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K0;EIF(OR(AND(R[+39]C[-6]>114700,R[-17]C[-11]<>1),AND(R[+39]C[-6]>57350,R[-17]C[-11]=1)),"See P. A-5",R[-65]C+R[-54]C+R[-37]C+R[-28]C+R[-24]C+R[-10]C+R[-6]C) F;P0;FG0L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y81;X1 C;K"Line 8b" F;SM7;X2 C;K"Tax Exempt Interest Income---->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;P0;FG0C;SM7;X7 C;K"Line 28" F;SM7;X8 C;K"This Is Your Total Itemized Deductions" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y82;X1 C;K"Line 9" F;SM7;X2 C;K"Dividend Income----------------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;ER[+99]C[+6] F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P0;FG0L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y83;X1 C;K"Line 10" F;SM7;X2 C;K"Taxable Refunds of State & Local Income Taxes->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"See Page A-5 if Form 1040, Line 32 is more than $114,700" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y84;X1 C;K"Line 11" F;SM7;X2 C;K"Alimony Received--------------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"(more than $57,3500 if married filing separately)." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y85;X1 C;K"Line 12" F;SM7;X2 C;K"Business Income or (Loss)-------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y86;X1 C;K"Line 13" F;SM7;X2 C;K"Capital Gain or (Loss)------------------------>>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;EIF(R[-40]C[+13]>=0,R[-40]C[+13],R[-39]C[+13]) F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2L;SM7;X13 F;P18;FG0C;SM7;X14 F;P18;FG0G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 C;K" ";EIF(RC[-1]>RC[-2],RC[-1]-RC[-2]," ") F;P27;F$2G;SM7;X19 C;K0;EIF(RC[-3]>=RC[-2],RC[-3]-RC[-2]," ") F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y87;X1 C;K"Line 14" F;SM7;X2 C;K"Other Gains or (Losses)----------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 C;K"Line 23" F;P0;FG0L;SM7;X14 C;K"Short Term Totals. Add Columns (d), (f), and (g)." F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y88;X1 C;K"Line 15a" F;SM7;X2 C;K"Total IRA Distributions-------->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;P0;FG0L;SM7;X14 C;K"Enter Here and on Line 10." F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y89;X1 C;K"Line 15b" F;SM7;X2 C;K"Taxable Amount----------------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;P27;F$2G;SM7;X14 C;K" --------" F;P27;F$2G;SM7;X15 C;K" --------" F;P27;F$2G;SM7;X16 C;K0;ESUM(R[-14]C:R[-3]C) F;P27;F$2G;SM7;X17 C;K" ---------" F;P27;F$2G;SM7;X18 C;K0;ESUM(R[-14]C:R[-3]C) F;P27;F$2G;SM7;X19 C;K0;ESUM(R[-14]C:R[-3]C) F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y90;X1 C;K"Line 16a" F;SM7;X2 C;K"Total Pensions and Annuities--->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y91;X1 C;K"Line 16b" F;SM7;X2 C;K"Taxable Amount----------------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y92;X1 C;K"Line 17" F;SM7;X2 C;K"Rents, Royalties,Partnerships, etc.----------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y93;X1 C;K"Line 18" F;SM7;X2 C;K"Farm Income or (Loss)---------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y94;X1 C;K"Line 19" F;SM7;X2 C;K"Unemployment Compensation Insurance-------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y95;X1 C;K"Line 20a" F;SM7;X2 C;K"Social Security Benefits-------->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y96;X1 C;K"Line 20b" F;SM7;X2 C;K"Taxable Amount, If Any---------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y97;X1 C;K"Line 21" F;SM7;X2 C;K"Other Income (List Type and Amount)---------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y98;X1 C;K"Line 22" F;SM7;X2 C;K"Add the Amounts Shown for Lines 7 thru 21---->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;ESUM(R[-19]C:R[-1]C) F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y99;X1 C;K"Line 22" F;SM7;X2 C;K"This Is Your Total Income." F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P2;FF2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y100;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P2;FF2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y101;X1 F;SM7;X2 C;K"Adjustments to Income" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y102;X1 C;K"Line 23a" F;SM7;X2 C;K"Your IRA Deduction------------>>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y103;X1 C;K"Line 23b" F;SM7;X2 C;K"Spouse's IRA Deduction--------->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y104;X1 C;K"Line 24" F;SM7;X2 C;K"Moving Expenses (3903 or 3903-F)-->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y105;X1 C;K"Line 25" F;SM7;X2 C;K"One-half of Self-employment Tax>>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y106;X1 C;K"Line 26" F;SM7;X2 C;K"Self-Employed Health Insurance->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y107;X1 C;K"Line 27" F;SM7;X2 C;K"Keogh Plan&Self-Employed SEP-->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y108;X1 C;K"Line 28" F;SM7;X2 C;K"Early Savings Withdrawal Penalty>>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y109;X1 C;K"Line 29" F;SM7;X2 C;K"Alimony Paid------------------>>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y110;X1 F;SM7;X2 C;K"Recipient's SSN---------------->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y111;X1 C;K"Line 30" F;SM7;X2 C;K"Add Lines 23a through 29---------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;ESUM(R[-9]C[-1]:R[-2]C[-1]) F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y112;X1 C;K"Line 30" F;SM7;X2 C;K"These Are Your Total Adjustments to Income." F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y113;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P2;FF2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y114;X1 F;SM7;X2 C;K"Adjusted Gross Income" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y115;X1 C;K"Line 31" F;SM7;X2 C;K"Subtract Line 30 from Line 22----------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;EIF(R[-17]C-R[-4]C<0,0,R[-17]C-R[-4]C) F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y116;X1 C;K"Line 31" F;SM7;X2 C;K"This Is Your Adjusted Gross Income." F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y117;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y118;X1 F;SM7;X2 C;K"Tax Computation" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y119;X1 C;K"Line 32" F;SM7;X2 C;K"Amount from Line 31------------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;ER[-4]C F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y120;X1 C;K"Line 33a" F;SM7;X2 C;K"Enter "1" if item applies to you:" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K"-------------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y121;X1 F;SM7;X2 F;P0;FG0C;SM7;X3 C;K"here:" F;P0;FG0C;SM7;X4 C;K"and" F;P0;FG0C;SM7;X5 C;K"here:" F;P27;F$2G;SM7;X6 C;K"-------------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y122;X1 F;SM7;X2 F;P0;FG0C;SM7;X3 C;K"\/" F;P28;FG0G;SM7;X4 C;K""ERROR-FILING STATUS"";ELOOKUP(R[-61]C[-3]*5+R[-60]C[-3]*10+R[-59]C[-3]*15+R[-58]C[-3]*20+R[-57]C[-3]*25+R[+3]C[+1],R[+94]C[-3]:R[+124]C[-2]) F;P0;FG0C;SM7;X5 C;K"\/" F;P27;F$2G;SM7;X6 C;K"-------------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y123;X1 C;K"Self" F;SM7;X2 C;K"65 or over>>" F;P0;FG0C;SM7;X3 F;SM7;X4 C;K"Blind->>" F;P0;FG0C;SM7;X5 F;P27;F$2G;SM7;X6 C;K"-------------" F;SM7;X7 F;SM7;X8 F;SM7;X9 C;K"SCHEDULE B - TAXPAYER INFORMATION" F;SM7;X10 F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y124;X1 C;K"Spouse" F;SM7;X2 C;K"65 or over>>" F;P0;FG0C;SM7;X3 F;SM7;X4 C;K"Blind->>" F;P0;FG0C;SM7;X5 F;P27;F$2G;SM7;X6 C;K"-------------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y125;X1 C;K"Line 33a" F;SM7;X2 C;K"Add Number of Boxes with "1"---->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 C;K0;ER[-2]C[-2]+R[-1]C[-2]+R[-2]C+R[-1]C F;P27;F$2G;SM7;X6 C;K"-------------" F;SM7;X7 C;K"Names---------------------->>" F;SM7;X8 F;SM7;X9 F;SM7;X10 C;K0;ER[-78]C[-6] F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y126;X1 C;K"Line 33b" F;SM7;X2 C;K""1" If Dependent on Another Return>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 C;K0;ER[-77]C[-6] F;SM7;X11 F;SM7;X12 F;P27;F$2G;SM7;X13 F;P27;F$2C;SM7;X14 F;P27;F$2G;SM7;X15 F;P27;F$2G;SM7;X16 F;P27;F$2G;SM7;X17 F;P27;F$2G;SM7;X18 F;P27;F$2G;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y127;X1 C;K"Line 33c" F;SM7;X2 C;K""1" If Married Filing a Separate Return and Spouse" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K"-------------" F;SM7;X7 C;K"Social Security Numbers------->>" F;SM7;X8 F;SM7;X9 F;SM7;X10 C;K0;ER[-79]C[-6] F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y128;X1 C;K"Itemizes Deductions or Dual-Status Alien--->>" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 C;K0;ER[-78]C[-6] F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y129;X1 C;K"Line 34" F;SM7;X2 C;K"Standard Deduction or Itemized Deductions----->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K""ERROR-FILING STATUS"";EIF(R[-1]C[-1]=1,0,IF(R[-3]C[-1]=1,"See P. 23",IF(ISTEXT(R[-7]C[-2]),R[-7]C[-2],MAX(R[-49]C[+6],R[-7]C[-2])))) F;SM7;X7 F;SM7;X8 F;SM7;X9 C;K"Part I Interest Income" F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y130;X1 C;K"Line 35" F;SM7;X2 C;K"Subtract Line 34 from Line 32---------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K""ERROR-FILING STATUS"";EIF(ISTEXT(R[-1]C),R[-1]C,R[-11]C-R[-1]C) F;P0;FG0C;SM7;X7 C;K"Line 1" F;SM7;X8 C;K"Interest Income. (List Name of Payer - If Any Interest" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y131;X1 C;K"Line 36" F;SM7;X2 C;K"Multiply $2500 by Line 6e-------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;EIF(R[-12]C>86025,"See P. 23",2500*R[-58]C) F;SM7;X7 F;SM7;X8 C;K"Income Is from Seller-Financed Mortgages, See" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y132;X1 C;K"Line 37" F;SM7;X2 C;K"Taxable Income. Subtract Line 36 from Line 35.->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K""ERROR-FILING STATUS"";EIF(ISTEXT(R[-2]C),R[-2]C,IF(R[-2]C-R[-1]C<0,0,R[-2]C-R[-1]C)) F;SM7;X7 F;SM7;X8 C;K"Instructions and List That Interest First.)" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y133;X1 C;K"Line 38" F;SM7;X2 C;K"Enter Tax---------------------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y134;X1 F;P0;FG0C;SM7;X2 C;K"Tax Table" F;P0;FG0C;SM7;X3 F;P0;FG0C;SM7;X4 C;K"Sch. D" F;P0;FG0C;SM7;X5 F;P27;F$2G;SM7;X6 C;K"-------------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y135;X1 F;P0;FG0C;SM7;X2 C;K"Tax Rate Sch." F;P0;FG0C;SM7;X3 F;P0;FG0C;SM7;X4 C;K8615 F;P0;FG0C;SM7;X5 F;P27;F$2G;SM7;X6 C;K"-------------" F;P0;FG0C;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P0;FG0C;SM7;X13 F;SM7;X14 F;P0;FG0C;SM7;X15 F;P0;FG0C;SM7;X16 F;P0;FG0C;SM7;X17 F;P0;FG0C;SM7;X18 F;P0;FG0C;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y136;X1 C;K"Line 39" F;SM7;X2 C;K"Additional Taxes (Form 4970 or Form 4972)---->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y137;X1 C;K"Line 40" F;SM7;X2 C;K"Add Lines 38 and 39-------------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;ER[-4]C+R[-1]C F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y138;X1 F;P0;FG0L;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y139;X1 F;SM7;X2 C;K"Credits" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y140;X1 C;K"Line 41" F;SM7;X2 C;K"Credit for Child&Dependent Care->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y141;X1 C;K"Line 42" F;SM7;X2 C;K"Credit for Elderly&Disabled----->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y142;X1 C;K"Line 43" F;SM7;X2 C;K"Foreign Tax Credit (Form 1116)-->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;P0;FG0C;SM7;X13 F;SM7;X14 F;P0;FG0C;SM7;X15 F;P0;FG0C;SM7;X16 F;P0;FG0C;SM7;X17 F;P0;FG0C;SM7;X18 F;P0;FG0C;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y143;X1 C;K"Line 44" F;SM7;X2 C;K"Other Credits (See P. 25)-------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y144;X1 F;SM7;X2 C;K" Forms 3800, and others (specify)" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 C;K"---------------" F;P27;F$2G;SM7;X6 C;K"-------------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y145;X1 C;K"Line 45" F;SM7;X2 C;K"Add Lines 41 thru 44.------------------------>>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;ER[-5]C[-1]+R[-4]C[-1]+R[-3]C[-1]+R[-2]C[-1] F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y146;X1 C;K"Line 46" F;SM7;X2 C;K"Subtract Line 45 from Line 40.---------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;EIF(R[-9]C-R[-1]C<0,0,R[-9]C-R[-1]C) F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y147;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y148;X1 F;SM7;X2 C;K"Other Taxes" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y149;X1 C;K"Line 47" F;SM7;X2 C;K"Self Employment Tax (Schedule SE)------------>>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y150;X1 C;K"Line 48" F;SM7;X2 C;K"Alternative Minimum Tax (Form 6251)--------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 2" F;SM7;X8 C;K"Add the Amounts on Lines 1. Enter the Total-->>" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K0;ESUM(R[-17]C[-1]:R[-1]C[-1]) F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y151;X1 C;K"Line 49" F;SM7;X2 C;K"Recapture Taxes (Forms 4255, 8611, or 8828)--->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 3" F;SM7;X8 C;K"Enter the Excludable Savings Bond Interest, If Any," F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y152;X1 C;K"Line 50" F;SM7;X2 C;K"Social Security Tax on Unreported Tip Income--->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;P0;FG0C;SM7;X7 F;SM7;X8 C;K"from Form 8815--------------------------->>" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y153;X1 C;K"Line 51" F;SM7;X2 C;K"Tax on an IRA or a Qualified Retirement Plan---->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 4" F;SM7;X8 C;K"Subtract Line 3 from Line 2. Enter the Result Here" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y154;X1 C;K"Line 52" F;SM7;X2 C;K"Advance Earned Income Credit Pymnts from W-2-->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"and on Form 1040, Line 8a------------------>>" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K0;ER[-4]C-R[-2]C F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y155;X1 C;K"Line 53" F;SM7;X2 C;K"Household Employment Taxes (Schedule H)------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 C;K"End of Part I Interest Income" F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y156;X1 C;K"Line 54" F;SM7;X2 C;K"Add Lines 46 through 53---------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;ER[-10]C+SUM(R[-7]C:R[-1]C) F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y157;X1 C;K"Line 54" F;SM7;X2 C;K"This Is Your Total Tax." F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 C;K"Part II Dividend Income" F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y158;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 5" F;SM7;X8 C;K"Dividend Income (List Name of Payer - Include on This Line Capital" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y159;X1 F;SM7;X2 C;K"Payments" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"Gain Distributions, Nontaxable Distributions, etc.)" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y160;X1 C;K"Line 55" F;SM7;X2 C;K"Federal Income Tax Withheld---->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y161;X1 C;K"Line 56" F;SM7;X2 C;K"1995 Estimated Tax Payments & Amount Applied" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K"-------------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y162;X1 F;SM7;X2 C;K"from 1994 Return-------------->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y163;X1 C;K"Line 57" F;SM7;X2 C;K"Earned Income Credit----------->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y164;X1 C;K"Line 58" F;SM7;X2 C;K"Amount Paid with Form 4868---->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y165;X1 C;K"Line 59" F;SM7;X2 C;K"Excess Social Security or RRTA-->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X13 F;SM7;X14 F;SM7;X15 F;SM7;X16 F;SM7;X17 F;SM7;X18 F;SM7;X19 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y166;X1 C;K"Line 60a" F;SM7;X2 C;K"Other Payments (Form 2439)---->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y167;X1 C;K"Line 60b" F;SM7;X2 C;K"Other Payments (Form 4136)---->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"<<-----------" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y168;X1 C;K"Line 61" F;SM7;X2 C;K"Add Lines 55 through 60---------------------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;ER[-8]C[-1]+SUM(R[-6]C[-1]:R[-1]C[-1]) F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;SM7;X12 C;K"<<-----------" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y169;X1 C;K"Line 61" F;SM7;X2 C;K"These Are Your Total Payments." F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;SM7;X12 C;K"<<-----------" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y170;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;SM7;X12 C;K"<<-----------" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y171;X1 F;SM7;X2 C;K"Refund or Amount You Owe" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;SM7;X12 C;K"<<-----------" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y172;X1 C;K"Line 62" F;SM7;X2 C;K"If Line 61 More than Line 54, Amount OVERPAID--->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;EIF(R[-4]C>R[-16]C,R[-4]C-R[-16]C,0) F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;SM7;X12 C;K"<<-----------" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y173;X1 C;K"Line 63" F;SM7;X2 C;K"Amount of Line 62 to be REFUNDED TO YOU-------->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;SM7;X12 C;K"<<-----------" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y174;X1 C;K"Line 64" F;SM7;X2 C;K"Amount of Line 62 to be APPLIED" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 C;K"-------------" F;P27;F$2G;SM7;X6 C;K"-------------" F;P0;FG0C;SM7;X7 C;K"Line 6" F;SM7;X8 C;K"Add the Amounts on Line 5. Enter the Total--->>" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K0;ESUM(R[-14]C[-1]:R[-1]C[-1]) F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y175;X1 F;SM7;X2 C;K" TO YOUR 1996 ESTIMATED TAX--->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 C;K0;EIF(R[-3]C[+1]>0,R[-3]C[+1]-R[-2]C[+1],0) F;P27;F$2G;SM7;X6 C;K"<<-----------" F;P0;FG0C;SM7;X7 C;K"Line 7" F;SM7;X8 C;K"Capital Gain Distributions. Enter Here and on" F;SM7;X9 F;SM7;X10 F;P27;F$2G;SM7;X11 F;P27;F$2G;SM7;X12 C;K"-------------" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y176;X1 C;K"Line 65" F;SM7;X2 C;K"If Line 54 More than Line 61, AMOUNT YOU OWE--->>" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;P27;F$2G;SM7;X6 C;K0;EIF(R[-20]C>=R[-8]C,R[-20]C-R[-8]C+R[+1]C[-1],0+R[+1]C[-1]) F;SM7;X7 F;SM7;X8 C;K"Schedule D.-------->>" F;SM7;X9 F;P27;F$2G;SM7;X10 F;SM7;X11 C;K"<<-----------" F;P27;F$2G;SM7;X12 C;K"-------------" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;P0;FG0C;SM7;Y177;X1 C;K"Line 66" F;SM7;X2 C;K"Estimated Tax Penalty(See p. 33)-->>" F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 C;K"<<-----------" F;P0;FG0C;SM7;X7 C;K"Line 8" F;SM7;X8 C;K"Nontaxable Distributions. See the Instructions for Form 1040," F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y178;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"Line 9.----------->>" F;SM7;X9 F;P27;F$2G;SM7;X10 F;SM7;X11 C;K"<<-----------" F;P27;F$2G;SM7;X12 C;K"-------------" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y179;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 9" F;SM7;X8 C;K"Add the Amounts on Lines 7 and 8. Enter the Total->>" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K0;ER[-3]C[-2]+R[-1]C[-2] F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y180;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;P27;F$2G;SM7;X5 F;P27;F$2G;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 10" F;SM7;X8 C;K"Subtract Line 9 from Line 6. Enter the Result Here and on Form" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y181;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"1040 , Line 9.------------------------------>>" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;P27;F$2G;SM7;X12 C;K0;ER[-7]C-R[-2]C F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y182;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 C;K"End of Part II Dividend Income" F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y183;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y184;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 C;K"Part III Foreign Accounts and Foreign Trusts" F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y185;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 11a" F;SM7;X8 C;K"At any time during 1995, did you have an interest in or a" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y186;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"signature or other authority over a financial account in a foreign" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y187;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"country (such as a bank account, securities account, or other" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y188;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"financial account)? (See page B-2 for exceptions and filing" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y189;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"requirements for Form TD F 90-22.1)" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y190;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P0;FG0C;SM7;X11 C;K"YES" F;P0;FG0C;SM7;X12 C;K"NO" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y191;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"Check one Box Here------------>>" F;SM7;X9 F;SM7;X10 F;P0;FG0C;SM7;X11 F;P0;FG0C;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y192;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 11b" F;SM7;X8 C;K"If YES, enter the name of the foreign country.-->>" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y193;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;P0;FG0C;SM7;X7 C;K"Line 12" F;SM7;X8 C;K"Were you the grantor of, or transferor to, a foreign trust that" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y194;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"existed during 1995, whether or not you have" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y195;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"any beneficial interest in it? If YES, you may have to file Forms" F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y196;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"3520, 3520-A, or 926." F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y197;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;P0;FG0C;SM7;X11 C;K"YES" F;P0;FG0C;SM7;X12 C;K"NO" F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y198;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 C;K"Check one Box Here------------>>" F;SM7;X9 F;SM7;X10 F;P0;FG0C;SM7;X11 F;P0;FG0C;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y199;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 C;K"End of Part III Foreign Accounts and Foreign Trusts" F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y200;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y201;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y202;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y203;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y204;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y205;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y206;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y207;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y208;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y209;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y210;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;P0;FG0L;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y211;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;P0;FG0L;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y212;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;P0;FG0L;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y213;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;P0;FG0L;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y214;X1 F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y215;X1 C;K"START OF TABLE FOR STANDARD DEDUCTION CALCULATION" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y216;X1 C;K0 F;SM7;X2 C;K""ERROR-FILING STATUS"" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y217;X1 C;K1 F;SM7;X2 C;K""ERROR-FILING STATUS"" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y218;X1 C;K2 F;SM7;X2 C;K""ERROR-FILING STATUS"" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y219;X1 C;K3 F;SM7;X2 C;K""ERROR-FILING STATUS"" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y220;X1 C;K4 F;SM7;X2 C;K""ERROR-FILING STATUS"" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y221;X1 C;K5 F;SM7;X2 C;K3900 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y222;X1 C;K6 F;SM7;X2 C;K4850 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y223;X1 C;K7 F;SM7;X2 C;K5800 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y224;X1 C;K8 F;SM7;X2 C;K""ERROR-LINE 33a"" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y225;X1 C;K9 F;SM7;X2 C;K""ERROR-LINE 33a"" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y226;X1 C;K10 F;SM7;X2 C;K6550 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y227;X1 C;K11 F;SM7;X2 C;K7300 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y228;X1 C;K12 F;SM7;X2 C;K8050 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y229;X1 C;K13 F;SM7;X2 C;K8800 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y230;X1 C;K14 F;SM7;X2 C;K9550 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y231;X1 C;K15 F;SM7;X2 C;K3275 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y232;X1 C;K16 F;SM7;X2 C;K4025 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y233;X1 C;K17 F;SM7;X2 C;K4775 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y234;X1 C;K18 F;SM7;X2 C;K5525 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y235;X1 C;K19 F;SM7;X2 C;K6275 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y236;X1 C;K20 F;SM7;X2 C;K5750 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y237;X1 C;K21 F;SM7;X2 C;K6700 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y238;X1 C;K22 F;SM7;X2 C;K7650 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y239;X1 C;K23 F;SM7;X2 C;K""ERROR-LINE 33a"" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y240;X1 C;K24 F;SM7;X2 C;K""ERROR-LINE 33a"" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y241;X1 C;K25 F;SM7;X2 C;K6550 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y242;X1 C;K26 F;SM7;X2 C;K7300 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y243;X1 C;K27 F;SM7;X2 C;K8050 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X7 F;SM7;X8 F;SM7;X9 F;SM7;X10 F;SM7;X11 F;SM7;X12 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y244;X1 C;K28 F;SM7;X2 C;K8800 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y245;X1 C;K29 F;SM7;X2 C;K9550 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y246;X1 C;K30 F;SM7;X2 C;K""ERROR-FILING STATUS"" F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 F;SM7;Y247;X1 C;K"END OF TABLE FOR STANDARD DEDUCTION CALCULATION" F;SM7;X2 F;SM7;X3 F;SM7;X4 F;SM7;X5 F;SM7;X6 F;SM7;X20 F;SM7;X21 F;SM7;X22 F;SM7;X23 F;SM7;X24 F;SM7;X25 E \ No newline at end of file
diff --git a/testautomation/spreadsheet/optional/input/loadsave/preselected_filter/rtf.rtf b/testautomation/spreadsheet/optional/input/loadsave/preselected_filter/rtf.rtf
new file mode 100755
index 000000000000..f9faf5e9ef60
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/preselected_filter/rtf.rtf
@@ -0,0 +1,218 @@
+{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff0\deff0\stshfdbch13\stshfloch0\stshfhich0\stshfbi0\deflang1033\deflangfe2052{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f3\froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol;}
+{\f4\fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Helvetica;}{\f5\fmodern\fcharset0\fprq1{\*\panose 02070409020205020404}Courier;}{\f13\fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt ??\'a8\'ac?};}
+{\f37\fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}AvantGarde;}{\f89\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times;}{\f104\fnil\fcharset134\fprq2{\*\panose 02010600030101010101}@SimSun;}
+{\f110\froman\fcharset238\fprq2 Times New Roman CE;}{\f111\froman\fcharset204\fprq2 Times New Roman Cyr;}{\f113\froman\fcharset161\fprq2 Times New Roman Greek;}{\f114\froman\fcharset162\fprq2 Times New Roman Tur;}
+{\f115\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f116\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f117\froman\fcharset186\fprq2 Times New Roman Baltic;}{\f118\froman\fcharset163\fprq2 Times New Roman (Vietnamese);}
+{\f150\fswiss\fcharset238\fprq2 Helvetica CE;}{\f151\fswiss\fcharset204\fprq2 Helvetica Cyr;}{\f153\fswiss\fcharset161\fprq2 Helvetica Greek;}{\f154\fswiss\fcharset162\fprq2 Helvetica Tur;}{\f155\fbidi \fswiss\fcharset177\fprq2 Helvetica (Hebrew);}
+{\f156\fbidi \fswiss\fcharset178\fprq2 Helvetica (Arabic);}{\f157\fswiss\fcharset186\fprq2 Helvetica Baltic;}{\f158\fswiss\fcharset163\fprq2 Helvetica (Vietnamese);}{\f242\fnil\fcharset0\fprq2 SimSun Western{\*\falt ??\'a8\'ac?};}
+{\f1000\froman\fcharset238\fprq2 Times CE;}{\f1001\froman\fcharset204\fprq2 Times Cyr;}{\f1003\froman\fcharset161\fprq2 Times Greek;}{\f1004\froman\fcharset162\fprq2 Times Tur;}{\f1005\fbidi \froman\fcharset177\fprq2 Times (Hebrew);}
+{\f1006\fbidi \froman\fcharset178\fprq2 Times (Arabic);}{\f1007\froman\fcharset186\fprq2 Times Baltic;}{\f1008\froman\fcharset163\fprq2 Times (Vietnamese);}{\f1152\fnil\fcharset0\fprq2 @SimSun Western;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;
+\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;
+\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;}{\stylesheet{\ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0
+\fs24\lang1033\langfe2052\loch\f0\hich\af0\dbch\af13\cgrid\langnp1033\langfenp2052 \snext0 Normal;}{\s1\ql \li0\ri0\sb120\sl-220\slmult0\nowidctlpar\faauto\outlinelevel0\rin0\lin0\itap0 \rtlch\fcs1 \ab\af4\afs22\alang1025 \ltrch\fcs0
+\b\fs22\lang1024\langfe1024\loch\f4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 \sbasedon0 \snext0 heading 1;}{\*\cs10 \additive \ssemihidden Default Paragraph Font;}{\*
+\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\tscellwidthfts0\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv
+\ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs20 \ltrch\fcs0 \fs20\lang1024\langfe1024\loch\f0\hich\af0\dbch\af13\cgrid\langnp1024\langfenp1024 \snext11 \ssemihidden Normal Table;}{
+\s15\ql \li0\ri0\sa120\sl-160\slmult0\nowidctlpar\tx1071\tqc\tx3056\tqr\tx5607\tqdec\tx7592\tx13680\tx14820\tx15960\tx17100\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af4\afs16\alang1025 \ltrch\fcs0
+\fs16\lang1024\langfe1024\loch\f4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 \snext15 Fu\'dfnotentext;}{\s16\ql \li0\ri0\sl-240\slmult0\nowidctlpar
+\tx1140\tx2280\tx3420\tx4560\tx5700\tx6840\tx7980\tx9120\tx10260\tx11400\tx12540\tx13680\tx14820\tx15960\tx17100\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af4\afs22\alang1025 \ltrch\fcs0
+\fs22\lang1024\langfe1024\loch\f4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 \snext16 Standardabsatz;}{\*\cs17 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \super \sbasedon10 \ssemihidden \styrsid205461 endnote reference;}{\*\cs18 \additive
+\rtlch\fcs1 \af0 \ltrch\fcs0 \super \sbasedon10 \ssemihidden \styrsid205461 footnote reference;}{\s19\ql \li0\ri0\widctlpar\tqc\tx4703\tqr\tx9406\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0
+\fs24\lang1033\langfe2052\loch\f0\hich\af0\dbch\af13\cgrid\langnp1033\langfenp2052 \sbasedon0 \snext19 \styrsid205461 header;}{\s20\ql \li0\ri0\widctlpar\tqc\tx4703\tqr\tx9406\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1
+\af0\afs24\alang1025 \ltrch\fcs0 \fs24\lang1033\langfe2052\loch\f0\hich\af0\dbch\af13\cgrid\langnp1033\langfenp2052 \sbasedon0 \snext20 \styrsid205461 footer;}}{\*\latentstyles\lsdstimax156\lsdlockeddef0}{\*\rsidtbl \rsid205461\rsid9782110}{\*\generator M
+icrosoft Word 11.0.6568;}{\info{\title \'dcberschrift}{\author Oliver Craemer}{\operator Oliver Craemer}{\creatim\yr2006\mo3\dy24\hr14\min21}{\revtim\yr2006\mo3\dy24\hr14\min21}{\version2}{\edmins0}{\nofpages3}{\nofwords433}{\nofchars2469}
+{\*\company Star Office Entwicklungs GmbH}{\nofcharsws2897}{\vern24579}}\paperw11906\paperh16838\margl1134\margr1134\margt1764\margb1701\ltrsect \widowctrl\ftnbj\aenddoc\noxlattoyen\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\horzdoc\dghspace120
+\dgvspace120\dghorigin1701\dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind1\viewscale100\nolnhtadjtbl\rsidroot205461 \fet0{\*\ftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1
+\af0\afs24\alang1025 \ltrch\fcs0 \fs24\lang1033\langfe2052\loch\af0\hich\af0\dbch\af13\cgrid\langnp1033\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid205461 \chftnsep
+\par }}{\*\ftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0 \fs24\lang1033\langfe2052\loch\af0\hich\af0\dbch\af13\cgrid\langnp1033\langfenp2052 {
+\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid205461 \chftnsepc
+\par }}{\*\aftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0 \fs24\lang1033\langfe2052\loch\af0\hich\af0\dbch\af13\cgrid\langnp1033\langfenp2052 {
+\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid205461 \chftnsep
+\par }}{\*\aftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0 \fs24\lang1033\langfe2052\loch\af0\hich\af0\dbch\af13\cgrid\langnp1033\langfenp2052 {
+\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid205461 \chftnsepc
+\par }}\ltrpar \sectd \ltrsect\linex0\headery567\footery931\endnhere\sectdefaultcl\sftnbj {\header \ltrpar \pard\plain \ltrpar\s16\ql \fi1134\li63\ri63\sa60\sl-260\slmult0\nowidctlpar
+\tqr\tx8644\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 \rtlch\fcs1 \af4\afs22\alang1025 \ltrch\fcs0 \fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4\afs24
+\ltrch\fcs0 \fs24\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Dies ist eine Kopfzeile in Helvetica 12 Pt.\tab }{\rtlch\fcs1 \ab\af4\afs24 \ltrch\fcs0
+\b\fs24\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Seite }{\field{\*\fldinst {\rtlch\fcs1 \ab\af4\afs24 \ltrch\fcs0 \b\fs24\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af4\dbch\af13\loch\f4 page arabic}}{\fldrslt {\rtlch\fcs1 \ab\af4\afs24 \ltrch\fcs0 \b\fs24\lang1024\langfe1024\langnp1031\insrsid9782110 \hich\af4\dbch\af13\loch\f4 2}}}{\rtlch\fcs1 \af4\afs24 \ltrch\fcs0
+\fs24\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }\pard \ltrpar\s16\ql \fi1134\li63\ri63\sa120\sl-240\slmult0\nowidctlpar\tx5670\tqr\tx9576\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 {\rtlch\fcs1 \af89 \ltrch\fcs0
+\f89\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 Das ist die zweite Zeile der Kopfzeile mit einem\tab TAB bei 12\hich\af89\dbch\af13\loch\f89 cm.
+\par }}{\footer \ltrpar \pard\plain \ltrpar\s16\qc \li63\ri63\sl-180\slmult0\nowidctlpar\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 \rtlch\fcs1 \af4\afs22\alang1025
+\ltrch\fcs0 \fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af89\afs16 \ltrch\fcs0 \f89\fs16\insrsid205461 \hich\af89\dbch\af13\loch\f89 \hich\f89 (Das sind zentrierte Fu\'df\loch\f89 zeilen)
+
+\par }}{\*\pnseclvl1\pnucrm\pnqc\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnqc\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnqc\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnqc\pnstart1\pnindent720\pnhang
+{\pntxta )}}{\*\pnseclvl5\pndec\pnqc\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnqc\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnqc\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}
+{\*\pnseclvl8\pnlcltr\pnqc\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnqc\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\s16\qc \li63\ri63\sa120\sl-840\slmult0\nowidctlpar
+\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0\pararsid205461 \rtlch\fcs1 \af4\afs22\alang1025 \ltrch\fcs0
+\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \ab\af4\afs72 \ltrch\fcs0 \b\fs72\lang1024\langfe1024\langnp1031\insrsid205461 \loch\af4\dbch\af13\hich\f4 \'dc\loch\f4 berschrift}{\rtlch\fcs1
+\ab\af4\afs72 \ltrch\fcs0 \b\fs72\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \line }{\rtlch\fcs1 \ab\af4 \ltrch\fcs0 \b\insrsid205461
+\par }\pard \ltrpar\s16\ql \li63\ri63\sl-240\slmult0\nowidctlpar\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 {\rtlch\fcs1 \af4 \ltrch\fcs0 \insrsid205461
+\par }{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Hier werden einige }{\rtlch\fcs1 \ab\ai\af4 \ltrch\fcs0 \b\i\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af4\dbch\af13\loch\f4 \hich\f4 Fonts und Schriftgr\'f6\'df\loch\f4 en }{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 getestet:
+\par }\pard \ltrpar\s16\ql \li63\ri63\sl-480\slmult0\nowidctlpar\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 {\rtlch\fcs1 \af4\afs48 \ltrch\fcs0 \fs48\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4
+Helvetica 24 Punkte }{\rtlch\fcs1 \af4\afs28 \ltrch\fcs0 \fs28\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 14 Punkte }{\rtlch\fcs1 \af4\afs20 \ltrch\fcs0
+\fs20\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 10 Punkte }{\rtlch\fcs1 \af4\afs16 \ltrch\fcs0 \fs16\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 8 Punkte}{
+\rtlch\fcs1 \af4\afs48 \ltrch\fcs0 \fs48\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }{\rtlch\fcs1 \af37\afs48 \ltrch\fcs0 \f37\fs48\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af37\dbch\af13\loch\f37 Avantgarde 24 Punkte }{\rtlch\fcs1 \af37\afs28 \ltrch\fcs0
+\f37\fs28\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af37\dbch\af13\loch\f37 14 Punkte }{\rtlch\fcs1 \af37\afs20 \ltrch\fcs0 \f37\fs20\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af37\dbch\af13\loch\f37
+10 Punkte }{\rtlch\fcs1 \af37\afs16 \ltrch\fcs0 \f37\fs16\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af37\dbch\af13\loch\f37 8 Punkte}{\rtlch\fcs1 \af37\afs48 \ltrch\fcs0
+\f37\fs48\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }{\rtlch\fcs1 \af89\afs48 \ltrch\fcs0 \f89\fs48\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 Times 24 Punkte }{\rtlch\fcs1 \af89\afs28 \ltrch\fcs0
+\f89\fs28\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 14 Punkte }{\rtlch\fcs1 \af89\afs20 \ltrch\fcs0 \f89\fs20\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89
+10 Punkte }{\rtlch\fcs1 \af89\afs16 \ltrch\fcs0 \f89\fs16\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 8\hich\af89\dbch\af13\loch\f89 Punkte}{\rtlch\fcs1 \af89\afs48 \ltrch\fcs0
+\f89\fs48\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }{\rtlch\fcs1 \af5\afs48 \ltrch\fcs0 \f5\fs48\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af5\dbch\af13\loch\f5 Courier 24 Punkte }{\rtlch\fcs1 \af5\afs28 \ltrch\fcs0
+\f5\fs28\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af5\dbch\af13\loch\f5 14 Punkte }{\rtlch\fcs1 \af5\afs20 \ltrch\fcs0 \f5\fs20\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af5\dbch\af13\loch\f5 10 Punkte }{
+\rtlch\fcs1 \af5\afs16 \ltrch\fcs0 \f5\fs16\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af5\dbch\af13\loch\f5 8 Punkte}{\rtlch\fcs1 \af5\afs48 \ltrch\fcs0 \f5\fs48\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }{\rtlch\fcs1 \af3\afs48 \ltrch\fcs0 \f3\fs48\insrsid205461 \loch\af3\dbch\af13\hich\f3 \'53\'79\'6d\'62\'6f\'6c\'20\'32\'34\'20\'50\'75\'6e\'6b\'74\'65\'20}{\rtlch\fcs1 \af3\afs28 \ltrch\fcs0 \f3\fs28\insrsid205461 \loch\af3\dbch\af13\hich\f3 \'31\'34
+\'20\'50\'75\'6e\'6b\'74\'65\'20}{\rtlch\fcs1 \af3\afs20 \ltrch\fcs0 \f3\fs20\insrsid205461 \loch\af3\dbch\af13\hich\f3 \'31\'30\'20\'50\'75\'6e\'6b\'74\'65\'20}{\rtlch\fcs1 \af3\afs16 \ltrch\fcs0 \f3\fs16\insrsid205461 \loch\af3\dbch\af13\hich\f3 \'38
+\'20\'50\'75\'6e\'6b\'74\'65}{\rtlch\fcs1 \af3\afs48 \ltrch\fcs0 \f3\fs48\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }\pard \ltrpar\s16\ql \li63\ri63\sl-240\slmult0\nowidctlpar\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }\pard \ltrpar\s16\ql \li63\ri63\sl-440\slmult0\nowidctlpar\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 {\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Auch die Konvertierung verschiedener }{\rtlch\fcs1 \ab\ai\af4 \ltrch\fcs0 \b\i\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af4\dbch\af13\loch\f4 Zeichenattribute (Markups)}{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4 ist m\'f6\loch\f4 glich
+\par \hich\af4\dbch\af13\loch\f4 Helv. normal }{\rtlch\fcs1 \af4 \ltrch\fcs0 \up6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 hochgestellt }{\rtlch\fcs1 \af4 \ltrch\fcs0
+\dn6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 tiefgestellt }{\rtlch\fcs1 \af4 \ltrch\fcs0 \ul\up6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4
+hochgestellt/unterstrichen }{\rtlch\fcs1 \af4 \ltrch\fcs0 \uldb\dn6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 tiefgestellt\hich\af4\dbch\af13\loch\f4 /doppelt unterstr.}{\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }{\rtlch\fcs1 \ab\af4 \ltrch\fcs0 \b\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Helv. fett }{\rtlch\fcs1 \ab\af4 \ltrch\fcs0 \b\up6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af4\dbch\af13\loch\f4 hochgestellt }{\rtlch\fcs1 \ab\af4 \ltrch\fcs0 \b\dn6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 tiefgestellt }{\rtlch\fcs1 \ab\af4 \ltrch\fcs0
+\b\ul\up6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 hochgestellt/unterstrichen }{\rtlch\fcs1 \ab\af4 \ltrch\fcs0 \b\uldb\dn6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af4\dbch\af13\loch\f4 tiefgestellt/doppelt unterstr.}{\rtlch\fcs1 \ab\af4 \ltrch\fcs0 \b\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }{\rtlch\fcs1 \ai\af4 \ltrch\fcs0 \i\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Helv. kursiv }{\rtlch\fcs1 \ai\af4 \ltrch\fcs0 \i\up6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af4\dbch\af13\loch\f4 hochgestellt }{\rtlch\fcs1 \ai\af4 \ltrch\fcs0 \i\dn6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 tiefgestellt }{\rtlch\fcs1 \ai\af4 \ltrch\fcs0
+\i\ul\up6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 hochgestellt/unterstrichen }{\rtlch\fcs1 \ai\af4 \ltrch\fcs0 \i\uldb\dn6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af4\dbch\af13\loch\f4 tiefgestellt/doppelt unterstr.}{\rtlch\fcs1 \ai\af4 \ltrch\fcs0 \i\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }{\rtlch\fcs1 \ab\ai\af89 \ltrch\fcs0 \b\i\f89\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 Times. fett+kursiv }{\rtlch\fcs1 \ab\ai\af89 \ltrch\fcs0
+\b\i\f89\up6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 hochgestellt }{\rtlch\fcs1 \ab\ai\af89 \ltrch\fcs0 \b\i\f89\dn6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af89\dbch\af13\loch\f89 tiefgestellt }{\rtlch\fcs1 \ab\ai\af89 \ltrch\fcs0 \b\i\f89\ul\up6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 hochgestellt/unterstrichen }{\rtlch\fcs1 \ab\ai\af89 \ltrch\fcs0
+\b\i\f89\uldb\dn6\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 tiefgestellt/doppelt unterstr.}{\rtlch\fcs1 \ab\ai\af89 \ltrch\fcs0 \b\i\f89\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }\pard \ltrpar\s16\ql \li63\ri63\sb240\sl-360\slmult0\nowidctlpar\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 {\rtlch\fcs1 \af89 \ltrch\fcs0
+\f89\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 \hich\f89 Wie man an den vorigen Abs\'e4\loch\f89 \hich\f89 tzen erkennt, werden auch \'c4\loch\f89 nderungen der }{\rtlch\fcs1 \ab\ai\af89 \ltrch\fcs0
+\b\i\f89\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 \hich\f89 Zeilenabst\'e4\loch\f89 nde}{\rtlch\fcs1 \af89 \ltrch\fcs0 \f89\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af89\dbch\af13\loch\f89 korrekt konvertiert (in diesem Absatz: +7 Pt). Auch }{\rtlch\fcs1 \ab\ai\af89 \ltrch\fcs0 \b\i\f89\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 \hich\f89
+Absatz-Anfangs- und Endabst\'e4\loch\f89 nde}{\rtlch\fcs1 \af89 \ltrch\fcs0 \f89\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 \hich\f89 werden korrekt ins Zielformat \'fc\hich\af89\dbch\af13\loch\f89
+\hich\f89 bertragen. Der vorangegangene Leerraum wurde nicht durch Eingabe einer Leerzeile, sondern durch einen Anfangsabstand dieses Absatzes von 12 Pt (zus\'e4\loch\f89 tzlich zum Zeilenabstand) erreicht.
+\par }\pard \ltrpar\s16\ql \li63\ri63\sa120\sl-360\slmult0\nowidctlpar\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }\pard \ltrpar\s16\ql \li63\ri63\sl-240\slmult0\nowidctlpar\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 {\rtlch\fcs1 \af89 \ltrch\fcs0 \f89\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89 \hich\f89
+Es folgte kein Seitenumbruch, sondern ein \'dc\loch\f89 \hich\f89 berlauf auf die n\'e4\loch\f89 chste Seit\hich\af89\dbch\af13\loch\f89 e.
+\par }{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par \hich\af4\dbch\af13\loch\f4 Auf dieser Seite wurden }{\rtlch\fcs1 \ab\ai\af4 \ltrch\fcs0 \b\i\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4 Fu\'df\loch\f4 noten }{\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4 eingef\'fc\loch\f4 gt.}{\rtlch\fcs1 \af4 \ltrch\fcs0 \cs18\super\insrsid205461\charrsid205461 \chftn {\footnote \ltrpar \pard\plain \ltrpar
+\s15\ql \li0\ri0\sa120\sl-160\slmult0\nowidctlpar\tx1134\tqc\tx3119\tqr\tx5670\tqdec\tx7654\tx13743\tx14883\tx16023\tx17163\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af4\afs16\alang1025 \ltrch\fcs0
+\fs16\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \cs18\super\insrsid205461\charrsid205461 \chftn }{\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4 In dieser Fu\'df\loch\f4 note wurden Tabs und unterschiedliche Schriftarten verwendet:
+\par }\pard \ltrpar\s15\ql \li0\ri0\sl-160\slmult0\nowidctlpar\tx1134\tqc\tx3119\tqr\tx5670\tqdec\tx7654\tx13743\tx14883\tx16023\tx17163\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \tab
+\hich\af4\dbch\af13\loch\f4 linker Tab\tab zentriert\tab rechter Tab\tab Dezimal: 12,30 DM
+\par \tab \hich\af4\dbch\af13\loch\f4 noch einer\tab auch das ist ein zentrierter Tab\tab Ok.\tab 1234,50
+\par }\pard \ltrpar\s15\ql \li0\ri0\sa120\sl-160\slmult0\nowidctlpar\tx1134\tqc\tx3119\tqr\tx5670\tqdec\tx7654\tx13743\tx14883\tx16023\tx17163\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\tab \hich\af4\dbch\af13\loch\f4 das reicht jetzt.\tab \tab \tab 99
+\par }\pard \ltrpar\s15\ql \li0\ri0\sa120\sl-240\slmult0\nowidctlpar\tx1134\tqc\tx3119\tqr\tx5670\tqdec\tx7654\tx13743\tx14883\tx16023\tx17163\faauto\rin0\lin0\itap0 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af4\dbch\af13\loch\f4 Hier schreiben wir in }{\rtlch\fcs1 \af37\afs20 \ltrch\fcs0 \f37\fs20\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af37\dbch\af13\loch\f37 Avantgarde 10 Punkte}{\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 , }{\rtlch\fcs1 \af5\afs24 \ltrch\fcs0 \f5\fs24\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af5\dbch\af13\loch\f5 Courier 12 Punkte}{
+\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 , }{\rtlch\fcs1 \af89 \ltrch\fcs0 \f89\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af89\dbch\af13\loch\f89
+Times 8 Punkte.}}}{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par
+\par \hich\af4\dbch\af13\loch\f4 Hier testen wir }{\rtlch\fcs1 \ab\ai\af4 \ltrch\fcs0 \b\i\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \loch\af4\dbch\af13\hich\f4 \'dc\loch\f4 berschriften }{\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 sowie verschiedene }{\rtlch\fcs1 \ab\ai\af4 \ltrch\fcs0 \b\i\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4
+Absatzausrichtungen und -einz\'fc\loch\f4 ge}{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 .}{\rtlch\fcs1 \af4 \ltrch\fcs0 \cs18\super\insrsid205461\charrsid205461 \chftn {\footnote
+\ltrpar \pard\plain \ltrpar\s15\ql \li0\ri0\sa120\sl-160\slmult0\nowidctlpar\tx1134\tqc\tx3119\tqr\tx5670\tqdec\tx7654\tx13743\tx14883\tx16023\tx17163\faauto\rin0\lin0\itap0 \rtlch\fcs1 \af4\afs16\alang1025 \ltrch\fcs0
+\fs16\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \cs18\super\insrsid205461\charrsid205461 \chftn }{\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4 Format der \'dc\loch\f4 berschrift Ebene1: Schrift=Helvetica 14 Pt fett, unterstrichen.}}}{\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }\pard\plain \ltrpar\s1\ql \li63\ri63\sb120\sl-220\slmult0\nowidctlpar\tx1215\tx2367\tx3519\tx4671\tx5823\tx6975\tx8127\tx9279\faauto\outlinelevel0\rin63\lin63\itap0 \rtlch\fcs1 \ab\af4\afs22\alang1025 \ltrch\fcs0
+\b\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4 Linksb\'fc
+\hich\af4\dbch\af13\loch\f4 ndig mit linkem Einzug von 2 cm:
+\par }\pard\plain \ltrpar\s16\ql \fi-1132\li1197\ri63\sl-240\slmult0\nowidctlpar\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin1197\itap0\pararsid205461 \rtlch\fcs1
+\af4\afs22\alang1025 \ltrch\fcs0 \fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4
+Nach dem im Juni 1992 unterzeichneten Abkommen mit Digital Equipment hat die SYSTEM}{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4 S in M\'fc\loch\f4
+nchen mal wieder alle Besucher begeistert}{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 .
+\par }\pard\plain \ltrpar\s1\ql \li63\ri63\sb120\sl-220\slmult0\nowidctlpar\tx1215\tx2367\tx3519\tx4671\tx5823\tx6975\tx8127\tx9279\faauto\outlinelevel0\rin63\lin63\itap0 \rtlch\fcs1 \ab\af4\afs22\alang1025 \ltrch\fcs0
+\b\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4 Rechtsb\'fc\loch\f4 \hich\f4
+ndig ohne Einz\'fc\loch\f4 ge:
+\par }\pard\plain \ltrpar\s16\qr \li63\ri63\sl-240\slmult0\nowidctlpar\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0\pararsid205461 \rtlch\fcs1 \af4\afs22\alang1025 \ltrch\fcs0
+\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Damit unterstreicht }{\rtlch\fcs1 \af4
+\ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461 \hich\af4\dbch\af13\loch\f4 OpenOffice.org }{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 seine Rolle als Spezialist f
+\loch\af4\dbch\af13\hich\f4 \'fc\loch\f4 r anspruchsvolle Aufgaben in den Dokumentenverarbeitung und beim Dokumentenaustausch.
+\par }\pard\plain \ltrpar\s1\ql \li63\ri63\sb120\sl-220\slmult0\nowidctlpar\tx1215\tx2367\tx3519\tx4671\tx5823\tx6975\tx8127\tx9279\faauto\outlinelevel0\rin63\lin63\itap0 \rtlch\fcs1 \ab\af4\afs22\alang1025 \ltrch\fcs0
+\b\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4 Linksb\'fc\loch\f4
+ndig mit Erstzeileneinzug und rechtem Einzug von 5 cm:
+\par }\pard\plain \ltrpar\s16\ql \fi567\li63\ri2897\sl-240\slmult0\nowidctlpar\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin2897\lin63\itap0\pararsid205461 \rtlch\fcs1
+\af4\afs22\alang1025 \ltrch\fcs0 \fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4
+Neben der Anerkennung der geleisteten Entwicklungsarbeit wurde damit auch das gesteckte Ziel erreicht
+\par }\pard\plain \ltrpar\s1\ql \li63\ri63\sb120\sl-220\slmult0\nowidctlpar\tx1215\tx2367\tx3519\tx4671\tx5823\tx6975\tx8127\tx9279\faauto\outlinelevel0\rin63\lin63\itap0 \rtlch\fcs1 \ab\af4\afs22\alang1025 \ltrch\fcs0
+\b\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Bloc\hich\af4\dbch\af13\loch\f4
+ksatz mit linkem und rechten Rand:
+\par }\pard\plain \ltrpar\s16\qj \fi-566\li630\ri2897\sl-240\slmult0\nowidctlpar\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin2897\lin630\itap0\pararsid205461 \rtlch\fcs1
+\af4\afs22\alang1025 \ltrch\fcs0 \fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Die vielen
+}{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461 \hich\af4\dbch\af13\loch\f4 OpenOffice.org}{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Kunden, die }{
+\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461 \hich\af4\dbch\af13\loch\f4 die 2.0.2}{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4
+ schon verwenden, haben auf das richtige Pferd gesetzt! Sie nutzen diese Software bereits in ihrer t\'e4\loch\f4 \hich\f4 glichen Arbeit und k\'f6\loch\f4 nnen auf die direkte Betreuung von }{\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461 \hich\af4\dbch\af13\loch\f4 SUN }{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 vertrauen.
+\par }\pard\plain \ltrpar\s1\ql \li63\ri63\sb120\sl-220\slmult0\nowidctlpar\tx1215\tx2367\tx3519\tx4671\tx5823\tx6975\tx8127\tx9279\faauto\outlinelevel0\rin63\lin63\itap0 \rtlch\fcs1 \ab\af4\afs22\alang1025 \ltrch\fcs0
+\b\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4
+Blocksatz mit linkem und rechtem Einzug und Erstzeileneinzug:
+\par }\pard\plain \ltrpar\s16\qj \li630\ri1480\sl-240\slmult0\nowidctlpar\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin1480\lin630\itap0 \rtlch\fcs1 \af4\afs22\alang1025 \ltrch\fcs0
+\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 .}{\rtlch\fcs1 \af4 \ltrch\fcs0
+\cs18\super\insrsid205461\charrsid205461 \chftn {\footnote \ltrpar \pard\plain \ltrpar\s15\ql \li0\ri0\sa120\sl-160\slmult0\nowidctlpar\tx1134\tqc\tx3119\tqr\tx5670\tqdec\tx7654\tx13743\tx14883\tx16023\tx17163\faauto\rin0\lin0\itap0 \rtlch\fcs1
+\af4\afs16\alang1025 \ltrch\fcs0 \fs16\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \cs18\super\insrsid205461\charrsid205461 \chftn }{\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4 Au\'df\loch\f4 er dem rechten Einzug wurde ein Erstzeileneinzug von 1 cm gesetzt.}}}{\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }\pard \ltrpar\s16\ql \li63\ri63\sl-240\slmult0\nowidctlpar\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par \hich\af4\dbch\af13\loch\f4 Die Konvertierung von }{\rtlch\fcs1 \ab\ai\af4 \ltrch\fcs0 \b\i\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Seitennummern }{\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 (Paginierung) ist an den Kopfzeilen ersichtlich. }{\rtlch\fcs1 \ab\af4 \ltrch\fcs0 \b\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af4\dbch\af13\loch\f4 Tabulatoren}{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 werden ebenfalls korre\hich\af4\dbch\af13\loch\f4 \hich\f4 kt konvertiert, wie an den Fu\'df
+\loch\f4 noten unten zu sehen ist.
+\par
+\par \hich\af4\dbch\af13\loch\f4 Es folgt ein }{\rtlch\fcs1 \ab\ai\af4 \ltrch\fcs0 \b\i\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 fester Seitenumbruch}{\rtlch\fcs1 \af4 \ltrch\fcs0
+\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 :
+\par }\pard\plain \ltrpar\s1\ql \li63\ri63\sb240\sa120\sl-280\slmult0\nowidctlpar\tx1215\tx2367\tx3519\tx4671\tx5823\tx6975\tx8127\tx9279\faauto\outlinelevel0\rin63\lin63\itap0 \rtlch\fcs1 \ab\af4\afs22\alang1025 \ltrch\fcs0
+\b\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \page }{\rtlch\fcs1 \af4\afs28 \ltrch\fcs0
+\fs28\ul\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Tabellen
+\par }\pard\plain \ltrpar\s16\ql \li63\ri63\sl-240\slmult0\nowidctlpar\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 \rtlch\fcs1 \af4\afs22\alang1025 \ltrch\fcs0
+\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4 Laberdies\'fc\loch\f4 lz}{\rtlch\fcs1 \af4
+\ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 :
+\par }\pard \ltrpar\s16\ql \li63\ri63\sb240\sl20\slmult0\nowidctlpar\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 {\rtlch\fcs1 \af4\afs2 \ltrch\fcs0 \fs2\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par \ltrrow}\trowd \irow0\irowband0\ltrrow\ts11\trqc\trrh600\trleft-3\trftsWidth1 \clvertalt\clbrdrt\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5 \cltxlrtb\clftsWidth3\clwWidth3259\clshdrawnil \cellx3256\clvertalt\clbrdrt
+\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5 \cltxlrtb\clftsWidth3\clwWidth1831\clshdrawnil \cellx5087\clvertalt\clbrdrt\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5
+\cltxlrtb\clftsWidth3\clwWidth2279\clshdrawnil \cellx7366\pard \ltrpar\s16\ql \li120\ri120\sb120\sa120\sl240\slmult0\nowidctlpar\intbl
+\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin120\lin120 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4
+Das ist die erste Spalte\cell }{\rtlch\fcs1 \af4 \ltrch\fcs0 \insrsid205461 \hich\af4\dbch\af13\loch\f4 die 2. Spalte\cell \hich\af4\dbch\af13\loch\f4 und die dritte\cell }\pard\plain \ltrpar
+\ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0 \fs24\lang1033\langfe2052\loch\af0\hich\af0\dbch\af13\cgrid\langnp1033\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid205461
+\trowd \irow0\irowband0\ltrrow\ts11\trqc\trrh600\trleft-3\trftsWidth1 \clvertalt\clbrdrt\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5 \cltxlrtb\clftsWidth3\clwWidth3259\clshdrawnil \cellx3256\clvertalt\clbrdrt
+\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5 \cltxlrtb\clftsWidth3\clwWidth1831\clshdrawnil \cellx5087\clvertalt\clbrdrt\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5
+\cltxlrtb\clftsWidth3\clwWidth2279\clshdrawnil \cellx7366\row \ltrrow}\pard\plain \ltrpar\s16\ql \li120\ri120\sb360\sa360\sl240\slmult0\nowidctlpar\intbl
+\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin120\lin120 \rtlch\fcs1 \af4\afs22\alang1025 \ltrch\fcs0
+\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4
+Absatzabszand 1 zl oben und unten, Ausrichtung links\cell }\pard \ltrpar\s16\qr \li120\ri120\sb120\sa120\sl240\slmult0\nowidctlpar\intbl
+\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin120\lin120 {\rtlch\fcs1 \ab\af89 \ltrch\fcs0 \b\f89\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af89\dbch\af13\loch\f89 \hich\f89 Dieser Absatz wurde rechtsb\'fc\hich\af89\dbch\af13\loch\f89 ndig ausgerichtet.\cell }\pard \ltrpar\s16\ql \li120\ri120\sb120\sa120\sl380\slmult0\nowidctlpar\intbl
+\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin120\lin120 {\rtlch\fcs1 \af4\afs36 \ltrch\fcs0 \fs36\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af4\dbch\af13\loch\f4 \hich\f4 Ein Absatz in 18 Punkte Schriftgr\'f6\'df\loch\f4 e\cell }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0
+\fs24\lang1033\langfe2052\loch\af0\hich\af0\dbch\af13\cgrid\langnp1033\langfenp2052 {\rtlch\fcs1 \af0\afs36 \ltrch\fcs0 \fs36\lang1031\langfe2052\langnp1031\insrsid205461\charrsid205461 \trowd \irow1\irowband1\ltrrow
+\ts11\trqc\trrh600\trleft-3\trftsWidth1 \clvertalt\clbrdrt\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5 \cltxlrtb\clftsWidth3\clwWidth3259\clshdrawnil \cellx3256\clvertalt\clbrdrt\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5
+\clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5 \cltxlrtb\clftsWidth3\clwWidth1831\clshdrawnil \cellx5087\clvertalt\clbrdrt\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5 \cltxlrtb\clftsWidth3\clwWidth2279\clshdrawnil
+\cellx7366\row \ltrrow}\pard\plain \ltrpar\s16\qj \fi567\li687\ri120\sb120\sa120\sl240\slmult0\nowidctlpar\intbl\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin120\lin687
+\rtlch\fcs1 \af4\afs22\alang1025 \ltrch\fcs0 \fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\hich\af4\dbch\af13\loch\f4 Ein Absatz in Blocksatz mit einem linken Einzug von 1 cm und Erstzeileneinzug von 2 cm.\cell }\pard \ltrpar\s16\ql \li120\ri120\sb120\sa120\sl240\slmult0\nowidctlpar\intbl
+\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin120\lin120 {\rtlch\fcs1 \ai\af5 \ltrch\fcs0 \i\f5\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \line }{\rtlch\fcs1
+\ai\af5 \ltrch\fcs0 \i\f5\insrsid205461 \hich\af5\dbch\af13\loch\f5 Noch ein Absatz.\cell }\pard \ltrpar\s16\qc \li120\ri120\sb120\sa120\sl240\slmult0\nowidctlpar\intbl
+\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin120\lin120 {\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4
+Ein in der Spalte zentrierter Absatz.\cell }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0
+\fs24\lang1033\langfe2052\loch\af0\hich\af0\dbch\af13\cgrid\langnp1033\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0 \lang1031\langfe2052\langnp1031\insrsid205461\charrsid205461 \trowd \irow2\irowband2\ltrrow\ts11\trqc\trrh600\trleft-3\trftsWidth1 \clvertalt
+\clbrdrt\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5 \cltxlrtb\clftsWidth3\clwWidth3259\clshdrawnil \cellx3256\clvertalt\clbrdrt\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5
+\cltxlrtb\clftsWidth3\clwWidth1831\clshdrawnil \cellx5087\clvertalt\clbrdrt\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5 \cltxlrtb\clftsWidth3\clwWidth2279\clshdrawnil \cellx7366\row \ltrrow}\pard\plain \ltrpar
+\s16\ql \li120\ri120\sb120\sa120\sl240\slmult0\nowidctlpar\intbl\tx1203\tx2343\tx3483\tx4623\tx5763\tx6903\tx8043\tx9183\tx10323\tx11463\tx12603\tx13743\tx14883\tx16023\tx17163\faauto\rin120\lin120 \rtlch\fcs1 \af4\afs22\alang1025 \ltrch\fcs0
+\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \ab\af4 \ltrch\fcs0 \b\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 \hich\f4
+Hier schreiben wir noch einmal linksb\'fc\loch\f4 ndig und fett.\cell }{\rtlch\fcs1 \af4 \ltrch\fcs0 \lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461 \hich\af4\dbch\af13\loch\f4 Hier beginnt die zweite Spalte.\cell }{\rtlch\fcs1 \af4
+\ltrch\fcs0 \insrsid205461 \hich\af4\dbch\af13\loch\f4 Und hier die dritte.\cell }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \rtlch\fcs1 \af0\afs24\alang1025 \ltrch\fcs0
+\fs24\lang1033\langfe2052\loch\af0\hich\af0\dbch\af13\cgrid\langnp1033\langfenp2052 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid205461 \trowd \irow3\irowband3\lastrow \ltrrow\ts11\trqc\trrh600\trleft-3\trftsWidth1 \clvertalt\clbrdrt\brdrs\brdrw5 \clbrdrl
+\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5 \cltxlrtb\clftsWidth3\clwWidth3259\clshdrawnil \cellx3256\clvertalt\clbrdrt\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5
+\cltxlrtb\clftsWidth3\clwWidth1831\clshdrawnil \cellx5087\clvertalt\clbrdrt\brdrs\brdrw5 \clbrdrl\brdrs\brdrw5 \clbrdrb\brdrs\brdrw5 \clbrdrr\brdrs\brdrw5 \cltxlrtb\clftsWidth3\clwWidth2279\clshdrawnil \cellx7366\row }\pard \ltrpar
+\ql \li63\ri63\sa240\sl-240\slmult0\nowidctlpar\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 {\rtlch\fcs1 \af4\afs22 \ltrch\fcs0 \f4\fs22\lang1024\langfe1024\noproof\insrsid205461
+\par }\pard\plain \ltrpar\s16\ql \li63\ri63\sl-240\slmult0\nowidctlpar\tx992\tx1134\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0 \rtlch\fcs1 \af4\afs22\alang1025 \ltrch\fcs0
+\fs22\lang1024\langfe1024\loch\af4\hich\af4\dbch\af13\cgrid\noproof\langnp1033\langfenp2052 {\rtlch\fcs1 \af4 \ltrch\fcs0 \insrsid205461
+\par }\pard \ltrpar\s16\ql \li63\ri63\sl-300\slmult0\nowidctlpar\tx992\tx1134\tx13743\tx14883\tx16023\tx17163\faauto\rin63\lin63\itap0\pararsid205461 {\rtlch\fcs1 \ab\af5\afs28 \ltrch\fcs0 \b\f5\fs28\lang1024\langfe1024\langnp1031\insrsid205461
+\hich\af5\dbch\af13\loch\f5 Das ist das Ende.}{\rtlch\fcs1 \ab\af5\afs28 \ltrch\fcs0 \b\f5\fs28\lang1024\langfe1024\langnp1031\insrsid205461\charrsid205461
+\par }} \ No newline at end of file
diff --git a/testautomation/spreadsheet/optional/input/loadsave/preselected_filter/txt.txt b/testautomation/spreadsheet/optional/input/loadsave/preselected_filter/txt.txt
new file mode 100755
index 000000000000..9c26e9a88bb0
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/preselected_filter/txt.txt
@@ -0,0 +1,7 @@
+20.3.2006,"23,67 K?","Uzt","546,4",
+"03/20/06","24,67 €","Äüß","34,67%",
+20.3.2006,"$25,67","Uzt","1,00E+023",
+,,,,
+,,,,"Dies ist ein „gequoteter Text“ im Text"
+,,,,
+,,,,"„Alles gequotet“"
diff --git a/testautomation/spreadsheet/optional/input/loadsave/sun/so1.sdc b/testautomation/spreadsheet/optional/input/loadsave/sun/so1.sdc
new file mode 100755
index 000000000000..67b2d37cb84e
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/sun/so1.sdc
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/sun/so3.sdc b/testautomation/spreadsheet/optional/input/loadsave/sun/so3.sdc
new file mode 100755
index 000000000000..d734f7dafd65
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/sun/so3.sdc
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/sun/so3tmpl.vor b/testautomation/spreadsheet/optional/input/loadsave/sun/so3tmpl.vor
new file mode 100755
index 000000000000..7eec0636c8b2
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/sun/so3tmpl.vor
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/sun/so4.sdc b/testautomation/spreadsheet/optional/input/loadsave/sun/so4.sdc
new file mode 100755
index 000000000000..a08ea82454b6
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/sun/so4.sdc
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/sun/so4tmpl.vor b/testautomation/spreadsheet/optional/input/loadsave/sun/so4tmpl.vor
new file mode 100755
index 000000000000..29b085ffa4ee
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/sun/so4tmpl.vor
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/sun/so5.sdc b/testautomation/spreadsheet/optional/input/loadsave/sun/so5.sdc
new file mode 100755
index 000000000000..ca5766b9fc07
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/sun/so5.sdc
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/sun/so5tmpl.vor b/testautomation/spreadsheet/optional/input/loadsave/sun/so5tmpl.vor
new file mode 100755
index 000000000000..a3374b63d7c8
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/sun/so5tmpl.vor
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/sun/so7.sxc b/testautomation/spreadsheet/optional/input/loadsave/sun/so7.sxc
new file mode 100755
index 000000000000..321f3709944a
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/sun/so7.sxc
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/sun/so7tmpl.stc b/testautomation/spreadsheet/optional/input/loadsave/sun/so7tmpl.stc
new file mode 100755
index 000000000000..dba709440926
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/sun/so7tmpl.stc
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/sun/so8.ods b/testautomation/spreadsheet/optional/input/loadsave/sun/so8.ods
new file mode 100755
index 000000000000..3b3aea22305f
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/sun/so8.ods
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/sun/so8tmpl.ots b/testautomation/spreadsheet/optional/input/loadsave/sun/so8tmpl.ots
new file mode 100755
index 000000000000..0d1f161ed757
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/sun/so8tmpl.ots
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/loadsave/tableimport/HTML_Doc_Numberformats_in_table.html b/testautomation/spreadsheet/optional/input/loadsave/tableimport/HTML_Doc_Numberformats_in_table.html
new file mode 100755
index 000000000000..443969296969
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/tableimport/HTML_Doc_Numberformats_in_table.html
@@ -0,0 +1,107 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+<HEAD>
+ <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=windows-1252">
+ <TITLE></TITLE>
+ <META NAME="GENERATOR" CONTENT="StarOffice 8 (Win32)">
+ <META NAME="CREATED" CONTENT="16010101;0">
+ <META NAME="CHANGED" CONTENT="16010101;0">
+</HEAD>
+<BODY LANG="fr-FR" DIR="LTR">
+<P>HTML Document for testing Import compatibility of HTML and RTF
+clipboard content and also the Link to external Data and/or Insert
+Sheet from File.</P>
+<BR>
+<BR>
+<TABLE WIDTH=100% BORDER=1 CELLPADDING=4 CELLSPACING=3>
+ <COL WIDTH=128*>
+ <COL WIDTH=128*>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>Number english</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>Number German</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>1.1</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>1,2</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>1.12</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>1,12</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>3.45</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>3,45</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>13.12</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>13,12</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>1,234.45</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>1.234,45</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>123,456,789.66</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>123.456.789,66</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>1.000</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>1,000</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=50%>
+ <P><BR>
+ </P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=50%>
+ <P><BR>
+ </P>
+ </TD>
+ </TR>
+</TABLE>
+<P><BR><BR>
+</P>
+</BODY>
+</HTML>
diff --git a/testautomation/spreadsheet/optional/input/loadsave/tableimport/HTML_Doc_Numberformats_in_table.rtf b/testautomation/spreadsheet/optional/input/loadsave/tableimport/HTML_Doc_Numberformats_in_table.rtf
new file mode 100755
index 000000000000..7ddf67b8b0dc
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/loadsave/tableimport/HTML_Doc_Numberformats_in_table.rtf
@@ -0,0 +1,62 @@
+{\rtf1\ansi\deff0\adeflang1025
+{\fonttbl{\f0\froman\fprq2\fcharset0 Thorndale{\*\falt Times New Roman};}{\f1\froman\fprq2\fcharset0 Thorndale{\*\falt Times New Roman};}{\f2\fswiss\fprq2\fcharset0 Albany{\*\falt Arial};}{\f3\froman\fprq2\fcharset0 Thorndale{\*\falt Times New Roman};}{\f4\fnil\fprq2\fcharset0 Andale Sans UI{\*\falt Arial Unicode MS};}{\f5\fnil\fprq2\fcharset0 HG Mincho Light J{\*\falt msmincho};}{\f6\fnil\fprq2\fcharset0 Lucidasans;}{\f7\fnil\fprq2\fcharset0 Arial Unicode MS;}{\f8\fnil\fprq0\fcharset0 Lucidasans;}}
+{\colortbl;\red0\green0\blue0;\red0\green0\blue128;\red128\green128\blue128;}
+{\stylesheet{\s1\cf0\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036\snext1 Normal;}
+{\s2\sa283\cf0\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036\sbasedon1\snext2 Body Text;}
+{\s3\sb240\sa283\keepn\cf0\aspalpha\ql\rtlch\af7\afs28\lang255\ltrch\dbch\af5\langfe255\hich\f2\fs28\lang1036\loch\f2\fs28\lang1036\sbasedon1\snext2 Heading;}
+{\s4\sb240\sa283\keepn\cf0\aspalpha\ql\rtlch\af7\afs48\lang255\ab\ltrch\dbch\af5\langfe255\hich\f0\fs48\lang1036\b\loch\f0\fs48\lang1036\b\sbasedon3\snext2 heading 1;}
+{\s5\sa283\cf0\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036\sbasedon2\snext5 List;}
+{\s6\cf0\tqc\tx4818\tqr\tx9637\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036\sbasedon1\snext6 header;}
+{\s7\cf0\tqc\tx4818\tqr\tx9637\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036\sbasedon1\snext7 footer;}
+{\s8\sa283\cf0\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036\sbasedon2\snext8 Table Contents;}
+{\s9\sa283\cf0\qc\aspalpha\rtlch\af6\afs24\lang255\ab\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\b\loch\f0\fs24\lang1036\b\sbasedon8\snext9 Table Heading;}
+{\s10\sb120\sa120\cf0\aspalpha\ql\rtlch\af8\afs24\lang255\ai\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\i\loch\f0\fs24\lang1036\i\sbasedon1\snext10 caption;}
+{\s11\cf0\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\i\loch\f0\fs24\lang1036\i\sbasedon1\snext11 envelope return;}
+{\s12\cf0\aspalpha\ql\rtlch\af8\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036\sbasedon1\snext12 Index;}
+{\s13\sa283\brdrb\brdrdb\brdrw15\brdrcf3\brsp0{\*\brdrb\brdlncol3\brdlnin1\brdlnout1\brdlndist20}\brsp0\cf0\aspalpha\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs12\lang1036\loch\f0\fs12\lang1036\sbasedon1\snext2 Horizontal Line;}
+{\*\cs15\cf0\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 Footnote Symbol;}
+{\*\cs16\cf2\ul\ulc0\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 Internet link;}
+{\*\cs17\cf0\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 Endnote Symbol;}
+}
+{\info{\creatim\yr2006\mo6\dy22\hr13\min28}{\revtim\yr1601\mo1\dy1\hr0\min0}{\printim\yr1601\mo1\dy1\hr0\min0}{\comment StarWriter}{\vern6800}}\deftab1134
+{\*\pgdsctbl
+{\pgdsc0\pgdscuse195\pgwsxn2147483647\pghsxn2147483647\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt0 Standard;}
+{\pgdsc1\pgdscuse195\pgwsxn2147483647\pghsxn2147483647\marglsxn1134\margrsxn567\margtsxn567\margbsxn567\pgdscnxt1 HTML;}
+{\pgdsc2\pgdscuse195\pgwsxn2147483647\pghsxn2147483647\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt2 Endnote;}}
+{\*\pgdscno1}\paperh16837\paperw11905\margl1134\margr567\margt567\margb567\sectd\sbknone\pgwsxn2147483647\pghsxn2147483647\marglsxn1134\margrsxn567\margtsxn567\margbsxn567\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc
+\pard\plain \ltrpar\s2\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 HTML Document for testing Import compatibility of HTML and RTF clipboard content and also the Link to external Data and/or Insert Sheet from File.}
+\par \pard\plain \ltrpar\s2\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036
+\par \pard\plain \ltrpar\s2\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036
+\par \pard\plain \ltrpar\s2\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036
+\par \trowd\trql\trpaddft3\trpaddt60\trpaddfl3\trpaddl60\trpaddfb3\trpaddb60\trpaddfr3\trpaddr60\clbrdrt\brdrdb\brdrw15\brdrcf3\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\cellx6435\clbrdrt\brdrdb\brdrw15\brdrcf3\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\clbrdrr\brdrdb\brdrw15\brdrcf3\cellx12871
+\pard\intbl\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 Number english}
+\cell\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 Number German}
+\cell\row\pard \trowd\trql\trpaddft3\trpaddt60\trpaddfl3\trpaddl60\trpaddfb3\trpaddb60\trpaddfr3\trpaddr60\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\cellx6435\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\clbrdrr\brdrdb\brdrw15\brdrcf3\cellx12871
+\pard\intbl\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 1.1}
+\cell\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 1,2}
+\cell\row\pard \trowd\trql\trpaddft3\trpaddt60\trpaddfl3\trpaddl60\trpaddfb3\trpaddb60\trpaddfr3\trpaddr60\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\cellx6435\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\clbrdrr\brdrdb\brdrw15\brdrcf3\cellx12871
+\pard\intbl\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 1.12}
+\cell\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 1,12}
+\cell\row\pard \trowd\trql\trpaddft3\trpaddt60\trpaddfl3\trpaddl60\trpaddfb3\trpaddb60\trpaddfr3\trpaddr60\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\cellx6435\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\clbrdrr\brdrdb\brdrw15\brdrcf3\cellx12871
+\pard\intbl\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 3.45}
+\cell\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 3,45}
+\cell\row\pard \trowd\trql\trpaddft3\trpaddt60\trpaddfl3\trpaddl60\trpaddfb3\trpaddb60\trpaddfr3\trpaddr60\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\cellx6435\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\clbrdrr\brdrdb\brdrw15\brdrcf3\cellx12871
+\pard\intbl\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 13.12}
+\cell\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 13,12}
+\cell\row\pard \trowd\trql\trpaddft3\trpaddt60\trpaddfl3\trpaddl60\trpaddfb3\trpaddb60\trpaddfr3\trpaddr60\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\cellx6435\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\clbrdrr\brdrdb\brdrw15\brdrcf3\cellx12871
+\pard\intbl\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 1,234.45}
+\cell\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 1.234,45}
+\cell\row\pard \trowd\trql\trpaddft3\trpaddt60\trpaddfl3\trpaddl60\trpaddfb3\trpaddb60\trpaddfr3\trpaddr60\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\cellx6435\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\clbrdrr\brdrdb\brdrw15\brdrcf3\cellx12871
+\pard\intbl\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 123,456,789.66}
+\cell\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 123.456.789,66}
+\cell\row\pard \trowd\trql\trpaddft3\trpaddt60\trpaddfl3\trpaddl60\trpaddfb3\trpaddb60\trpaddfr3\trpaddr60\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\cellx6435\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\clbrdrr\brdrdb\brdrw15\brdrcf3\cellx12871
+\pard\intbl\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 1.000}
+\cell\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036 {\rtlch \ltrch\loch\f0\fs24\lang1036\i0\b0 1,000}
+\cell\row\pard \trowd\trql\trpaddft3\trpaddt60\trpaddfl3\trpaddl60\trpaddfb3\trpaddb60\trpaddfr3\trpaddr60\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\cellx6435\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\clbrdrr\brdrdb\brdrw15\brdrcf3\cellx12871
+\pard\intbl\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036
+\cell\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036
+\cell\row\pard \trowd\trql\trpaddft3\trpaddt60\trpaddfl3\trpaddl60\trpaddfb3\trpaddb60\trpaddfr3\trpaddr60\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\cellx6435\clbrdrl\brdrdb\brdrw15\brdrcf3\clbrdrb\brdrdb\brdrw15\brdrcf3\clbrdrr\brdrdb\brdrw15\brdrcf3\cellx12871
+\pard\intbl\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036
+\cell\pard\plain \intbl\ltrpar\s8\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036
+\cell\row\pard \pard\plain \ltrpar\s2\cf0\aspalpha\sa283\ql\rtlch\af6\afs24\lang255\ltrch\dbch\af4\langfe255\hich\f0\fs24\lang1036\loch\f0\fs24\lang1036
+\par }
diff --git a/testautomation/spreadsheet/optional/input/namedrange.sxc b/testautomation/spreadsheet/optional/input/namedrange.sxc
new file mode 100755
index 000000000000..b15a51636dfd
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/namedrange.sxc
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/printrange.sxc b/testautomation/spreadsheet/optional/input/printrange.sxc
new file mode 100755
index 000000000000..1d00ac5c34af
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/printrange.sxc
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/printrange.xls b/testautomation/spreadsheet/optional/input/printrange.xls
new file mode 100755
index 000000000000..146464e4bed6
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/printrange.xls
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/printranges_3defined.ods b/testautomation/spreadsheet/optional/input/printranges_3defined.ods
new file mode 100755
index 000000000000..0681f52491fd
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/printranges_3defined.ods
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/stest_large.ods b/testautomation/spreadsheet/optional/input/stest_large.ods
new file mode 100644
index 000000000000..cd915a77e5b7
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/stest_large.ods
Binary files differ
diff --git a/testautomation/spreadsheet/optional/input/validity.ods b/testautomation/spreadsheet/optional/input/validity.ods
new file mode 100755
index 000000000000..aced256e948b
--- /dev/null
+++ b/testautomation/spreadsheet/optional/input/validity.ods
Binary files differ
diff --git a/testautomation/spreadsheet/required/c_updt1.bas b/testautomation/spreadsheet/required/c_updt1.bas
new file mode 100755
index 000000000000..c6e785fb7ff5
--- /dev/null
+++ b/testautomation/spreadsheet/required/c_updt1.bas
@@ -0,0 +1,72 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource-Test Spreadsheet Application Part I
+'*
+'\***********************************************************************
+
+sub main
+ use "spreadsheet\required\includes\c_upd_filemenu.inc"
+ use "spreadsheet\required\includes\c_upd_editmenu.inc"
+ use "spreadsheet\required\includes\c_upd_editmenu2.inc"
+ use "spreadsheet\required\includes\c_upd_viewmenu.inc"
+ use "spreadsheet\required\includes\c_upd_insertmenu.inc"
+ use "spreadsheet\tools\includes\c_cell_tools.inc"
+ use "spreadsheet\tools\includes\c_select_tools.inc"
+
+ Printlog "----------------------------------------------------"
+ Printlog "--- Resource-Test Spreadsheet Application Part I ---"
+ Printlog "----------------------------------------------------"
+
+ call hStatusIn("Spreadsheet", "c_updt1.bas", "Resource Test for Spreadsheet Part I")
+
+ call c_upd_filemenu 'FILE Menu
+ call c_upd_editmenu1 'EDIT Menu Part I
+ call c_upd_editmenu2 'EDIT Menu Part II
+ call c_upd_viewmenu 'VIEW Menu
+ call c_upd_insertmenu 'INSERT Menu
+
+ call hStatusOut
+
+end sub
+
+' ********************************************
+' ** - global start routines
+' ********************************************
+sub LoadIncludeFiles
+ use "global\system\includes\master.inc"
+ use "global\system\includes\gvariabl.inc"
+ use "global\tools\includes\optional\t_locale_tools.inc"
+ use "global\tools\includes\optional\t_docfuncs.inc"
+ use "global\tools\includes\optional\t_control_objects.inc"
+ use "global\required\includes\g_printing.inc"
+
+ gApplication = "CALC"
+ GetUseFiles ()
+end sub
diff --git a/testautomation/spreadsheet/required/c_updt2.bas b/testautomation/spreadsheet/required/c_updt2.bas
new file mode 100755
index 000000000000..a1bab7f128f4
--- /dev/null
+++ b/testautomation/spreadsheet/required/c_updt2.bas
@@ -0,0 +1,75 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource-Test Spreadsheet Application Part II
+'*
+'\***********************************************************************
+
+sub main
+
+ use "spreadsheet\required\includes\c_upd_formatmenu.inc"
+ use "spreadsheet\required\includes\c_upd_formatmenu2.inc"
+ use "spreadsheet\required\includes\c_upd_formatmenu3.inc"
+ use "spreadsheet\required\includes\c_upd_toolsmenu.inc"
+ use "spreadsheet\required\includes\c_upd_toolsmenu2.inc"
+ use "spreadsheet\required\includes\c_upd_datamenu.inc"
+ use "spreadsheet\required\includes\c_upd_windowmenu.inc"
+ use "spreadsheet\required\includes\c_upd_helpmenu.inc"
+ use "spreadsheet\tools\includes\c_cell_tools.inc"
+ use "spreadsheet\tools\includes\c_select_tools.inc"
+
+ Printlog "-----------------------------------------------------"
+ Printlog "--- Resource-Test Spreadsheet Application Part II ---"
+ Printlog "-----------------------------------------------------"
+
+ call hStatusIn("Spreadsheet", "c_updt2.bas", "Resource Test for Spreadsheet Part II")
+
+ call c_upd_formatmenu 'FORMAT Menu Part I
+ call c_upd_formatmenu2 'FORMAT Menu Part II
+ call c_upd_formatmenu3 'FORMAT Menu Part III
+ call c_upd_toolsmenu 'TOOLS Menu Part I
+ call c_upd_toolsmenu2 'TOOLS Menu Part II
+ call c_upd_datamenu 'DATA Menu
+ call c_upd_windowmenu 'WINDOW Menu
+ call c_upd_helpmenu 'HELP Menu
+
+ call hStatusOut
+
+end sub
+
+' ********************************************
+' ** - global start routines
+' ********************************************
+sub LoadIncludeFiles
+ use "global\system\includes\master.inc"
+ use "global\system\includes\gvariabl.inc"
+ use "global\tools\includes\optional\t_locale_tools.inc"
+ gApplication = "CALC"
+ GetUseFiles ()
+end sub
diff --git a/testautomation/spreadsheet/required/includes/c_upd_datamenu.inc b/testautomation/spreadsheet/required/includes/c_upd_datamenu.inc
new file mode 100644
index 000000000000..2c77baeea56d
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_datamenu.inc
@@ -0,0 +1,1041 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - Data Menu
+'*
+'************************************************************************
+'*
+' #1 tDataDefineRange
+' #1 tDataSelectRange
+' #1 tDataSort
+' #1 tDataFilterAutoFilter
+' #1 tDataFilterStandardFilter
+' #1 tDataFilterAdvancedFilter
+' #1 tDataFilterRemoveFilter
+' #1 tDataFilterHideFilter
+' #1 tDataSubtotals
+' #1 tDataValidity
+' #1 tDataMultipleOperations
+' #1 tDataTexttoColumn
+' #1 tDataConsolidate
+' #1 tDataGroupandOutline
+' #1 tDataDataPilot
+' #1 tDataRefreshRange
+'*
+'\***********************************************************************
+
+sub c_upd_datamenu
+
+ Printlog Chr(13) + "--------- Data Menu (c_upd_datamenu.inc) ---------"
+
+ call tDataDefineRange
+ call tDataSelectRange
+ call tDataSort
+ call tDataFilterAutoFilter
+ call tDataFilterStandardFilter
+ call tDataFilterAdvancedFilter
+ call tDataFilterRemoveFilter
+ call tDataFilterHideFilter
+ call tDataSubtotals
+ call tDataValidity
+ call tDataMultipleOperations
+ call tDataTexttoColumn
+ call tDataConsolidate
+ call tDataGroupandOutline
+ call tDataDataPilot
+ call tDataRefreshRange
+
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tDataDefineRange
+'///<u><b>Data – Define Range</b></u>
+
+ '/// Opening new spreadsheet document for getting defined starting environment
+ printlog " Opening new spreadsheet document for getting defined starting environment"
+ call hNewDocument
+ '/// Open 'Define Database range' dialog by 'Data – Define Range'
+ printlog " Open 'Define Database range' dialog by 'Data – Define Range'"
+ DataDefineRange
+ Kontext "DatenbankbereichFestlegen"
+ '/// Enter name 'Testrange'
+ printlog " Enter name 'Testrange'"
+ BereichsName.SetText "Testrange_by_TT"
+ '/// Click on 'More' button
+ printlog " Click on 'More' button"
+ Zusaetze.Click
+ DialogTest ( DatenbankbereichFestlegen )
+ '/// Click on 'Shrink' button to open rangechooser
+ printlog " Click on 'Shrink' button to open rangechooser"
+ BereichMin.Click
+ '/// Close rangechooser by click on 'Shrink' button
+ printlog " Close rangechooser by click on 'Shrink' button"
+ BereichMin.Click
+ '/// Click on 'Add' button
+ printlog " Click on 'Add' button"
+ Hinzufuegen.Click
+ '/// Select 'Testrange_by_TT'
+ printlog " Select 'Testrange_by_TT'"
+ BereichsName.Select "Testrange_by_TT"
+ '/// Click on 'Modify' button
+ printlog " Click on 'Modify' button"
+ Aendern.Click
+ '/// Select 'Testrange_by_TT'
+ printlog " Select 'Testrange_by_TT'"
+ BereichsName.Select "Testrange_by_TT"
+ '/// Click on 'Delete' button
+ printlog " Click on 'Delete' button"
+ Loeschen.Click
+ '/// Close messagebox with 'Yes'
+ printlog " Close messagebox with 'Yes'"
+ Kontext
+ if Active.exists then
+ Active.Yes
+ end if
+ Kontext "DatenbankbereichFestlegen"
+ '/// Close 'Define Database range' dialog with 'Cancel'
+ printlog " Close 'Define Database range' dialog with 'Cancel'"
+ DatenbankbereichFestlegen.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataSelectRange
+'///<u><b>Data – Select Range</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Select Database range' dialog by 'Data – Select Range'
+ printlog " Open 'Select Database range' dialog by 'Data – Select Range'"
+ DataSelectRange
+ Kontext "DatenbankbereichWaehlen"
+ DialogTest ( DatenbankbereichWaehlen )
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ DatenbankbereichWaehlen.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataSort
+'///<u><b>Data – Sort</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Sort' dialog by 'Data – Sort'
+ printlog " Open 'Sort' dialog by 'Data – Sort'"
+ DataSort
+ '/// Switch to tabpage 'Sort Criteria'
+ printlog " Switch to tabpage 'Sort Criteria'"
+ Kontext
+ active.SetPage TabSortierkriterien
+ Kontext "TabSortierkriterien"
+ Call DialogTest ( TabSortierkriterien )
+ '/// Verify that combobox 'Sort by' has items
+ printlog " Verify that combobox 'Sort by' has items"
+ If SortierenNach.GetItemCount < 1 then
+ warnlog "The Sortlist is empty"
+ end if
+ '/// Switch to tabpage 'Options'
+ printlog " Switch to tabpage 'Options'"
+ Kontext
+ active.SetPage TabSortierenOptionen
+ Kontext "TabSortierenOptionen"
+ Call DialogTest ( TabSortierenOptionen )
+ '/// Verify that the 'Language' combobox has items
+ printlog " Verify that the 'Language' combobox has items"
+ If Sprache.GetItemCount < 1 then
+ warnlog "The Languagelist is empty"
+ end if
+ '/// Close 'Sort' dialog with 'Cancel
+ printlog " Close 'Sort' dialog with 'Cancel"
+ TabSortierenOptionen.Cancel
+ printlog " Select cell B3"
+ Kontext ( "DocumentCalc" )
+ fCalcSelectRange ( "B3" )
+ printlog " Fill cells B3:B8 with numbers 1-6"
+ DocumentCalc.TypeKeys "1<RETURN>2<RETURN>3<RETURN>4<RETURN>5<RETURN>6"
+ printlog " Select cell C3"
+ fCalcSelectRange ( "C3" )
+ printlog " Fill cells C3:C8 with numbers 7-2"
+ DocumentCalc.TypeKeys "7<RETURN>6<RETURN>5<RETURN>4<RETURN>3<RETURN>2"
+ printlog " Select cells B5:B6"
+ fCalcSelectRange ( "B5:B6" )
+ printlog " Open Data Sort"
+ DataSort
+ Kontext ( "SortRange" )
+ printlog " SortRange dialog has opened"
+ printlog " Cancel Sort Range dialog"
+ SortRange.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataFilterAutoFilter
+'///<u><b>Data – Filter – AutoFilter</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enter 'Value' in A1, '1' in A2, '2' in A3
+ printlog " Enter 'Value' in A1, '1' in A2, '2' in A3"
+ DocumentCalc.TypeKeys "Value<Return>1<Return>2<Return><Up>"
+ '/// Use 'AutoFilter' by 'Data – Filter – AutoFilter'
+ printlog " Use 'AutoFilter' by 'Data – Filter – AutoFilter'"
+ DataFilterAutoFilter
+ '/// Remove 'AutoFilter' by 'Data – Filter – AutoFilter'
+ printlog " Remove 'AutoFilter' by 'Data – Filter – AutoFilter'"
+ DataFilterAutoFilter
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataFilterStandardFilter
+'///<u><b>Data – Filter – Standard Filter</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Standard Filter' dialog by 'Data – Filter – Standard Filter'
+ printlog " Open 'Standard Filter' dialog by 'Data – Filter – Standard Filter'"
+ DataFilterStandardFilter
+ Kontext "Standardfilter"
+ '/// Click on 'More' button
+ printlog " Click on 'More' button"
+ Zusaetze.Click
+ DialogTest ( Standardfilter )
+ '/// Verify that the 'Field name' combobox has items
+ printlog " Verify that the 'Field name' combobox has items"
+ If FeldName1.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Verify that the 'Condition' combobox has items
+ printlog " Verify that the 'Condition' combobox has items"
+ If Bedingung1.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Verify that the 'Value' combobox has items
+ printlog " Verify that the 'Value' combobox has items"
+ If Wert1.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Choose first operator
+ printlog " Choose first operator"
+ Verknuepfung2.Select 1
+ '/// Check option 'Case sensitive'
+ printlog " Check option 'Case sensitive'"
+ GrossKleinschreibung.Check
+ '/// Check option 'Range contains column labels'
+ printlog " Check option 'Range contains column labels'"
+ BereicheEnthaeltSpaltenkoepfe.Check
+ '/// Check option 'Regular expressions'
+ printlog " Check option 'Regular expressions'"
+ RegulaererAusdruck.Check
+ '/// Check option 'No duplication'
+ printlog " Check option 'No duplication'"
+ KeineDuplikate.Check
+ '/// Check option 'Copy results to'
+ printlog " Check option 'Copy results to'"
+ FilterergebnisNach.Check
+ '/// Click on 'Shrink' button to open rangechooser
+ printlog " Click on 'Shrink' button to open rangechooser"
+ DialogMin.Click
+ '/// Close rangechooser by click on 'Shrink' button
+ printlog " Close rangechooser by click on 'Shrink' button"
+ DialogMin.Click
+ '/// Check option 'Keep filter criteria'
+ printlog " Check option 'Keep filter criteria'"
+ Persistent.Check
+ '/// Close 'Standard Filter' dialog with 'Cancel'
+ printlog " Close 'Standard Filter' dialog with 'Cancel'"
+ Standardfilter.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataFilterAdvancedFilter
+'///<u><b>Data – Filter – Advanced Filter</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Advanced Filter' dialog by 'Data – Filter – Advanced Filter'
+ printlog " Open 'Advanced Filter' dialog by 'Data – Filter – Advanced Filter'"
+ DataFilterAdvancedFilter
+ Kontext "Spezialfilter"
+ '/// Click on 'More' button
+ printlog " Click on 'More' button"
+ Zusaetze.Click
+ DialogTest ( Spezialfilter )
+ '/// Click on 'Shrink' button to open rangechooser
+ printlog " Click on 'Shrink' button to open rangechooser"
+ FilterkriterienMin.Click
+ '/// Close rangechooser by click on 'Shrink' button
+ printlog " Close rangechooser by click on 'Shrink' button"
+ FilterkriterienMin.Click
+ '/// Check option 'Case sensitive'
+ printlog " Check option 'Case sensitive'"
+ GrossKleinschreibung.Check
+ '/// Check if option 'Range contains column labels' is disabled
+ printlog " Check if option 'Range contains column labels' is disabled"
+ If BereichEnthaeltSpaltenkoepfe.IsEnabled then
+ warnlog "The option is enabled"
+ end if
+ '/// Check option 'Regular expressions'
+ printlog " Check option 'Regular expressions'"
+ RegulaererAusdruck.Check
+ '/// Check option 'No duplication'
+ printlog " Check option 'No duplication'"
+ KeineDuplikate.Check
+ '/// Check option 'Copy results to'
+ printlog " Check option 'Copy results to'"
+ FilterergebnisAusgeben.Check
+ '/// Click on 'Shrink' button to open rangechooser
+ printlog " Click on 'Shrink' button to open rangechooser"
+ FilterergebnisMin.Click
+ '/// Close rangechooser by click on 'Shrink' button
+ printlog " Close rangechooser by click on 'Shrink' button"
+ FilterergebnisMin.Click
+ '/// Check option 'Keep filter criteria'
+ printlog " Check option 'Keep filter criteria'"
+ Persistent.Check
+ '/// Close 'Advanced Filter' dialog with 'Cancel'
+ printlog " Close 'Advanced Filter' dialog with 'Cancel'"
+ Spezialfilter.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataFilterRemoveFilter
+'///<u><b>Data – Filter – Remove Filter</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enter 'Value' in A1, '1' in A2, '2' in A3
+ printlog " Enter 'Value' in A1, '1' in A2, '2' in A3"
+ DocumentCalc.TypeKeys "Value<Return>1<Return>2<Return><Up>"
+ '/// Open 'Standard Filter' dialog by 'Data – Filter – Standard Filter'
+ printlog " Open 'Standard Filter' dialog by 'Data – Filter – Standard Filter'"
+ DataFilterStandardFilter
+ Kontext "Standardfilter"
+ '/// Set 'Field name' to 'Value'
+ printlog " Set 'Field name' to 'Value'"
+ Feldname1.select 2
+ '/// Set 'Condition' to first entry
+ printlog " Set 'Condition' to first entry"
+ Bedingung1.select 1
+ '/// Set 'Value' to last entry
+ printlog " Set 'Value' to last entry"
+ Wert1.select 2
+ '/// Close 'Standard Filter' dialog with 'OK'
+ printlog " Close 'Standard Filter' dialog with 'OK'"
+ Standardfilter.Ok
+ '/// Remove filter by 'Data – Filter – Remove Filter'
+ printlog " Remove filter by 'Data – Filter – Remove Filter'"
+ DataFilterRemoveFilter
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataFilterHideFilter
+'///<u><b>Data – Filter – Hide Filter</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enter 'Value' in A1, '1' in A2, '2' in A3
+ printlog " Enter 'Value' in A1, '1' in A2, '2' in A3"
+ DocumentCalc.TypeKeys "Value<Return>1<Return>2<Return><Up>"
+ '/// Use 'AutoFilter' by 'Data – Filter – AutoFilter'
+ printlog " Use 'AutoFilter' by 'Data – Filter – AutoFilter'"
+ DataFilterAutoFilter
+ '/// Hide 'AutoFilter' by 'Data – Filter – Hide Filter'
+ printlog " Hide 'AutoFilter' by 'Data – Filter – Hide Filter'"
+ DataFilterHideAutoFilter
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataSubtotals
+'///<u><b>Data – Subtotals</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Subtotals' dialog by 'Data – Subtotals'
+ printlog " Open 'Subtotals' dialog by 'Data – Subtotals'"
+ DataSubtotals
+ Kontext "Teilergebnisse"
+ '/// Switch to tabpage '1st Group'
+ printlog " Switch to tabpage '1st Group'"
+ Kontext
+ active.SetPage TabGruppe1
+ Kontext "TabGruppe1"
+ Call DialogTest ( TabGruppe1 )
+ '/// Verify that the 'Group by' combobox has items
+ printlog " Verify that the 'Group by' combobox has items"
+ If GruppierenNach.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Verify that there are functions available in the 'Use function' control
+ printlog " Verify that there are functions available in the 'Use function' control"
+ If Berechnungsvorschrift.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Switch to tabpage '2nd Group'
+ printlog " Switch to tabpage '2nd Group'"
+ Kontext
+ active.SetPage TabGruppe2
+ Kontext "TabGruppe2"
+ Call DialogTest ( TabGruppe2 )
+ '/// Verify that the 'Group by' combobox has items
+ printlog " Verify that the 'Group by' combobox has items"
+ If GruppierenNach.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Verify that there are functions available in the 'Use function' control
+ printlog " Verify that there are functions available in the 'Use function' control"
+ If Berechnungsvorschrift.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Switch to tabpage '3rd Group'
+ printlog " Switch to tabpage '3rd Group'"
+ Kontext
+ active.SetPage TabGruppe3
+ Kontext "TabGruppe3"
+ Call DialogTest ( TabGruppe3 )
+ '/// Verify that the 'Group by' combobox has items
+ printlog " Verify that the 'Group by' combobox has items"
+ If GruppierenNach.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Verify that there are functions available in the 'Use function' control
+ printlog " Verify that there are functions available in the 'Use function' control"
+ If Berechnungsvorschrift.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Switch to tabpage 'Options'
+ printlog " Switch to tabpage 'Options'"
+ Kontext
+ active.SetPage TabTeilergebnisseOptionen
+ Kontext "TabTeilergebnisseOptionen"
+ Call DialogTest ( TabTeilergebnisseOptionen )
+ '/// Check option 'Page break between groups'
+ printlog " Check option 'Page break between groups'"
+ NeueSeiteBeiGruppenwechsel.Check
+ '/// Check option 'Case sensitive'
+ printlog " Check option 'Case sensitive'"
+ GrossKleinschreibungBeachten.Check
+ '/// Check option 'Pre-sort area according to groups'
+ printlog " Check option 'Pre-sort area according to groups'"
+ BereichVorherNachGruppenSortieren.Check
+ '/// Check option 'Ascending'
+ printlog " Check option 'Ascending'"
+ Aufsteigend.Check
+ '/// Check option 'Decending'
+ printlog " Check option 'Decending'"
+ Absteigend.Check
+ '/// Check option 'Include formats'
+ printlog " Check option 'Include formats'"
+ FormateEinschliessen.Check
+ '/// Check option 'Custom sort order'
+ printlog " Check option 'Custom sort order'"
+ BenutzerdefinierteSortierreihenfolge.Check
+ '/// Verify that there are sortorders available
+ printlog " Verify that there are sortorders available"
+ If SortierreihenfolgeAnzeige.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Close 'Subtotals' dialog with 'Cancel'
+ printlog " Close 'Subtotals' dialog with 'Cancel'"
+ TabTeilergebnisseOptionen.Close
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataValidity
+'///<u><b>Data – Validity</b></u>
+
+ '/// Open new Spreadshet document
+ printlog " Open new Spreadshet document"
+ call hNewDocument
+ '/// Open 'Validity' dialog by 'Data – Validity'
+ printlog " Open 'Validity' dialog by 'Data – Validity'"
+ DataValidity
+ '/// Switch to tabpage 'Criteria'
+ printlog " Switch to tabpage 'Criteria'"
+ Kontext
+ Active.SetPage TabWerte
+ Kontext "TabWerte"
+ Call DialogTest ( TabWerte,1 )
+ '/// Choose 8th entry (Text length) in 'Allow' combobox
+ printlog " Choose 8th entry (Text length) in 'Allow' combobox"
+ Zulassen.select (8)
+ Call DialogTest ( TabWerte,2 )
+ '/// Choose last entry (not between) in 'Data' combobox
+ printlog " Choose last entry (not between) in 'Data' combobox"
+ Daten.select (8)
+ Call DialogTest ( TabWerte,3 )
+ '/// Choose 7th entry (List) in 'Allow' combobox
+ printlog " Choose 7th entry (List) in 'Allow' combobox"
+ Zulassen.select (7)
+ Call DialogTest ( TabWerte,4 )
+ '/// Choose 6th entry (Cell range) in 'Allow' combobox
+ printlog " Choose 6th entry (Cell range) in 'Allow' combobox"
+ Zulassen.select (6)
+ Call DialogTest ( TabWerte,5 )
+ printlog " Press Shrink button"
+ SourceShrink.Click
+ Kontext "TabWerte"
+ printlog " Close rangechooser"
+ SourceShrink.Click
+ Kontext "TabWerte"
+ '/// Switch to tabpage 'Input Help'
+ printlog " Switch to tabpage 'Input Help'"
+ Kontext
+ Active.SetPage TabEingabehilfe
+ Kontext "TabEingabehilfe"
+ Call DialogTest ( TabEingabehilfe )
+ '/// Switch to tabpage 'Error Alert'
+ printlog " Switch to tabpage 'Error Alert'"
+ Kontext
+ Active.SetPage TabFehlermeldung
+ Kontext "TabFehlermeldung"
+ Call DialogTest ( TabFehlermeldung )
+ '/// Choose last entry (Macro) in 'Action' combobox
+ printlog " Choose last entry (Macro) in 'Action' combobox"
+ Aktion.Select (4)
+ '/// Click on 'Browse' button
+ printlog " Click on 'Browse' button"
+ Durchsuchen.Click
+ Kontext "ScriptSelector"
+ '/// Close 'Macro Selector' with 'Cancel'
+ printlog " Close 'Macro Selector' with 'Cancel'"
+ ScriptSelector.Cancel
+ Kontext "TabFehlermeldung"
+ '/// Close 'Validity' dialog with 'Cancel'
+ printlog " Close 'Validity' dialog with 'Cancel'"
+ TabFehlermeldung.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataMultipleOperations
+'///<u><b>Data – Multiple Operations</b></u>
+
+ '/// Open new Spreadsheet ocument
+ printlog " Open new Spreadsheet ocument"
+ Call hNewDocument
+ '/// Select cells A1:D4
+ printlog " Select cells A1:D4"
+ Call fCalcSelectRange ("A1:D4")
+ '/// Open 'Multiple operations' dialog by 'Data – Multiple Operations'
+ printlog " Open 'Multiple operations' dialog by 'Data – Multiple Operations'"
+ DataMultipleOperations
+ Kontext "Mehrfachoperationen"
+ DialogTest ( Mehrfachoperationen )
+ '/// Click on 'Shrink' button for Formulas' to open rangechooser
+ printlog " Click on 'Shrink' button for Formulas' to open rangechooser"
+ Vorgaben1.Click
+ '/// Close rangechooser by click on 'Shrink' button
+ printlog " Close rangechooser by click on 'Shrink' button"
+ Vorgaben1.Click
+ '/// Click on 'Shrink' button for 'Row input cell' to open rangechooser
+ printlog " Click on 'Shrink' button for 'Row input cell' to open rangechooser"
+ Vorgaben2.Click
+ '/// Close rangechooser by click on 'Shrink' button
+ printlog " Close rangechooser by click on 'Shrink' button"
+ Vorgaben2.Click
+ '/// Click on 'Shrink' button for 'Column Input Cell' to open rangechooser
+ printlog " Click on 'Shrink' button for 'Column Input Cell' to open rangechooser"
+ Vorgaben3.Click
+ '/// Close rangechooser by click on 'Shrink' button
+ printlog " Close rangechooser by click on 'Shrink' button"
+ Vorgaben3.Click
+ '/// Close 'Multiple operations' dialog with 'Cancel'
+ printlog " Close 'Multiple operations' dialog with 'Cancel'"
+ Mehrfachoperationen.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataTexttoColumn
+'///<u><b>Data – Text to Column</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// In cell A1 enter string 'First Second'
+ printlog " In cell A1 enter string 'First Second'"
+ Call fCalcSelectRange ("A1")
+ DocumentCalc.TypeKeys "First Second<Return>"
+ '/// Select cell A1
+ printlog " Select cell A1"
+ Call fCalcSelectRange ("A1")
+ '/// Open 'Text to Column' dialog by 'Data – Text to Columns'
+ printlog " Open 'Text to Column' dialog by 'Data – Text to Columns'"
+ DataTextToColumns
+ Kontext "TextImport"
+ '/// Close 'Text to Column' dialog
+ printlog " Close 'Text to Column' dialog"
+ TextImport.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataConsolidate
+'///<u><b>Data – Consolidate</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Consolidate' dialog by 'Data – Consolidate'
+ printlog " Open 'Consolidate' dialog by 'Data – Consolidate'"
+ DataConsolidate
+ '/// Click on 'More' button
+ printlog " Click on 'More' button"
+ Kontext "Konsolidieren"
+ Zusaetze.Click
+ DialogTest ( Konsolidieren )
+ '/// Verify that the 'Function' combobox has items
+ printlog " Verify that the 'Function' combobox has items"
+ If Berechnungsvorschrift.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Click on 'Shrink' button for 'Source data range' to open rangechooser
+ printlog " Click on 'Shrink' button for 'Source data range' to open rangechooser"
+ ButtonQuelldaten.Click
+ '/// Close rangechooser by click on 'Shrink' button
+ printlog " Close rangechooser by click on 'Shrink' button"
+ ButtonQuelldaten.Click
+ '/// Click on 'Shrink' button for 'Copy results to' to open rangechooser
+ printlog " Click on 'Shrink' button for 'Copy results to' to open rangechooser"
+ ButtonAusgeben.Click
+ '/// Close rangechooser by click on 'Shrink' button
+ printlog " Close rangechooser by click on 'Shrink' button"
+ ButtonAusgeben.Click
+ '/// Close 'Consolidate' dialog with 'Cancel'
+ printlog " Close 'Consolidate' dialog with 'Cancel'"
+ Konsolidieren.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataGroupandOutline
+'///<u><b>Data – Group and Outline</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Select cells A1:D9
+ printlog " Select cells A1:D9"
+ Call fCalcSelectRange ("A1:D9")
+ '/// Open 'Group' dialog by 'Data – Group and Outline – Group'
+ printlog " Open 'Group' dialog by 'Data – Group and Outline – Group'"
+ DataOutlineGroup
+ Kontext "GruppierungAktivieren"
+ DialogTest ( GruppierungAktivieren )
+ '/// Check option 'Rows'
+ printlog " Check option 'Rows'"
+ Zeilen.Check
+ '/// Close dialog with 'OK'
+ printlog " Close dialog with 'OK'"
+ GruppierungAktivieren.OK
+ '/// Open 'Group' dialog by 'Data – Group and Outline – Group'
+ printlog " Open 'Group' dialog by 'Data – Group and Outline – Group'"
+ DataOutlineGroup
+ Kontext "GruppierungAktivieren"
+ '/// Check option 'Rows'
+ printlog " Check option 'Rows'"
+ Spalten.Check
+ '/// Close dialog with 'OK'
+ printlog " Close dialog with 'OK'"
+ GruppierungAktivieren.OK
+ '/// Hide details by 'Data – Group and Outline – Hide details'
+ printlog " Hide details by 'Data – Group and Outline – Hide details'"
+ DataOutlineHideDetails
+ '/// Show details by 'Data – Group and Outline – Show details'
+ printlog " Show details by 'Data – Group and Outline – Show details'"
+ DataOutlineShowDetails
+ '/// Open 'Ungroup' dialog ' Data – Group and Outline – Ungroup'
+ printlog " Open 'Ungroup' dialog by ' Data – Group and Outline – Ungroup'"
+ DataOutlineUngroup
+ Kontext "GruppierungAufheben"
+ DialogTest ( GruppierungAufheben )
+ '/// Check option 'Rows'
+ printlog " Check option 'Rows'"
+ Spalten.Check
+ '/// Close dialog with 'OK'
+ printlog " Close dialog with 'OK'"
+ GruppierungAufheben.OK
+ '/// Ungroup data by 'Data – Group and Outline – Ungroup'
+ printlog " Ungroup data by 'Data – Group and Outline – Ungroup'"
+ DataOutlineUngroup
+ '/// Enter '1' in A1, '2' in A2, '3' in A3
+ printlog " Enter '1' in A1, '2' in A2, '3' in A3"
+ Call fCalcSelectRange ("A1")
+ DocumentCalc.TypeKeys "1<Return>2<Return>3<Return>"
+ '/// Select cell A4 and click on Autosum button on Formularbar
+ printlog " Select cell A4 and click on Autosum button on Formularbar"
+ Call fCalcSelectRange ("A4")
+ Kontext "RechenleisteCalc"
+ Summe.Click
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys "<Return>"
+ '/// Select cells A1:A4
+ printlog " Select cells A1:A4"
+ Call fCalcSelectRange ("A1:A4")
+ '/// Use 'AutoOutline' by 'Data – Group and Outline – AutoOutline'
+ printlog " Use 'AutoOutline' by 'Data – Group and Outline – AutoOutline'"
+ DataOutlineAutoOutline
+ '/// Remove outline by 'Data – Group and Outline – Remove'
+ printlog " Remove outline by 'Data – Group and Outline – Remove'"
+ DataOutlineRemove
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataDataPilot
+'///<u><b>Data – DataPilot</b></u>
+
+ printlog " Close and restart the Office"
+ ExitRestartTheOffice
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enter string 'Month' in A1, 'Value' in B1
+ printlog " Enter string 'Month' in A1, 'Value' in B1"
+ Call fCalcSelectRange ("A1")
+ DocumentCalc.TypeKeys "Month<Right>Value<Return>"
+ '/// Select A1:B1
+ printlog " Select A1:B1"
+ Call fCalcSelectRange ("A1:B1")
+ '/// Start 'DataPilot' by 'Data – DataPilot'
+ printlog " Start 'DataPilot' by 'Data – DataPilot'"
+ DataDataPilotStart
+ Kontext "QuelleAuswaehlen"
+ DialogTest ( QuelleAuswaehlen )
+ '/// Choose 'Current Selection' on 'Select Source' dialog
+ printlog " Choose 'Current Selection' on 'Select Source' dialog"
+ AktuelleSelektion.Check
+ '/// Click 'OK' button
+ printlog " Click 'OK' button"
+ QuelleAuswaehlen.OK
+ '/// On 'DataPilot' dialog click on 'More' button
+ printlog " On 'DataPilot' dialog click on 'More' button"
+ Kontext "Datenpilot"
+ Zusaetze.Open
+ DialogTest ( Datenpilot )
+ '/// Verify that the 'Selection from' editfield is correct
+ printlog "Verify that the 'Selection from' editfield has content"
+ printlog "The Range is" & DataPilotRange.Gettext
+ '/// Click on 'Shrink' button for 'Selection from' to open rangechooser
+ printlog " Click on 'Shrink' button for 'Selection from' to open rangechooser"
+ DataPilotRangeShrink.Click
+ '/// Close rangechooser by click on 'Maximize' button
+ printlog " Close rangechooser by click on 'Maximize' button"
+ DataPilotRangeShrink.Click
+ '/// Verify that the 'Results to' combobox has items
+ printlog " Verify that the 'Results to' combobox has items"
+ If AusgabeAb.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Click on 'Shrink' button for 'Source data range' to open rangechooser
+ printlog " Click on 'Shrink' button for 'Source data range' to open rangechooser"
+ Minimieren.Click
+ '/// Close rangechooser by click on 'Shrink' button
+ printlog " Close rangechooser by click on 'Shrink' button"
+ Minimieren.Click
+ '/// Check option 'Ignore empty rows'
+ printlog " Check option 'Ignore empty rows'"
+ LeerzeilenIgnorieren.Check
+ '/// Check option 'Total columns'
+ printlog " Check option 'Total columns'"
+ GesamtSpalten.Check
+ '/// Check option 'Add filter'
+ printlog " Check option 'Add filter'"
+ AddFilter.Check
+ '/// Check option 'Identify categories'
+ printlog " Check option 'Identify categories'"
+ KategorieErkennung.Check
+ '/// Check option 'Total rows'
+ printlog " Check option 'Total rows'"
+ GesamtZeilen.Check
+ '/// Check option 'Enable drill to details'
+ printlog " Check option 'Enable drill to details'"
+ EnableDrillToDetails.Check
+ '/// Close 'DataPilot' dialog with 'Cancel'
+ printlog " Close 'DataPilot' dialog with 'Cancel'"
+ DatenPilot.Cancel
+
+ '/// Start datapilot by 'Data – DataPilot'
+ printlog " Start datapilot by 'Data – DataPilot'"
+ DataDataPilotStart
+ Kontext "QuelleAuswaehlen"
+ '/// Choose 'Data source registered in...' on 'Select Source' dialog
+ printlog " Choose 'Data source registered in...' on 'Select Source' dialog"
+ AngemeldeteDatenQuelle.Check
+ '/// Click 'OK' button
+ printlog " Click 'OK' button"
+ QuelleAuswaehlen.OK
+ Kontext "DatenquelleAuswaehlen"
+ Call DialogTest ( DatenquelleAuswaehlen )
+ '/// Count the entries in the 'Database' combobox
+ printlog " Count the entries in the 'Database' combobox"
+ Datenbank.GetItemCount
+ '/// Count the entries in the 'Data source' combobox
+ printlog " Count the entries in the 'Data source' combobox"
+ Datenquelle.GetItemCount
+ '/// Count the entries in the 'Type' combobox
+ printlog " Count the entries in the 'Type' combobox"
+ Art.GetItemCount
+ '/// Close 'Select Data Source' dialog with 'Cancel'
+ printlog " Close 'Select Data Source' dialog with 'Cancel'"
+ DatenquelleAuswaehlen.Cancel
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+ '/// Open testdocument 'gTesttoolPath + spreadsheet\required\input\datapilot.ods'
+ printlog " Open testdocument 'gTesttoolPath + spreadsheet\required\input\datapilot.ods'"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\required\input\datapilot.ods" )
+ '/// Select cell C34
+ printlog " Select cell C34"
+ Call fCalcSelectRange ( "C34" )
+ '/// Open 'DataPilot' dialog by 'Data – Datapilot – Start'
+ printlog " Open 'DataPilot' dialog by 'Data – Datapilot – Start'"
+ DataDataPilotStart
+ sleep 1
+ Kontext "Datenpilot"
+ '/// Select 'Products' in 'Page Fields' by 5 <TAB>
+ printlog " Select 'Products' in 'Page Fields' by 5 <TAB>"
+ Datenpilot.TypeKeys "<TAB><TAB><TAB><TAB><TAB>",TRUE
+ '/// Click on 'Options' button
+ printlog " Click on 'Options' button"
+ If Optionen.IsEnabled Then
+ Optionen.Click
+ else
+ warnlog "Option button is not enabled. Aborting"
+ Datenpilot.Cancel
+ Call hCloseDocument
+ goto endsub
+ end if
+ Kontext "Datenfeld"
+ Call DialogTest ( Datenfeld )
+ '/// On 'Data Field' dialog choose option 'User-defined'
+ printlog " On 'Data Field' dialog choose option 'User-defined'"
+ Benutzerdefiniert.Check
+ '/// Verify that there are functions in the combobox
+ printlog " Verify that there are functions in the combobox"
+ If Funktionen.GetItemCount < 1 then
+ warnlog "There are no functions available"
+ end if
+ '/// Check option 'Show items without data'
+ printlog " Check option 'Show items without data'"
+ OhneDatenAnzeigen.Check
+ '/// Click on 'Options' button to open 'Data Filed Options' dialog
+ printlog " Click on 'Options' button to open 'Data Filed Options' dialog"
+ Options.Click
+ Kontext "DataFieldsOptionsDlg"
+ Call DialogTest ( DataFieldsOptionsDlg )
+ '/// Choose option 'Ascending'
+ printlog " Choose option 'Ascending'"
+ Ascending.Check
+ '/// Verify that there are items in the 'Sort by' combobox
+ printlog " Verify that there are items in the 'Sort by' combobox"
+ If Sortby.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Check option 'Show'
+ printlog " Check option 'Show'"
+ Show.Check
+ '/// Increase 'Show Items'
+ printlog " Increase 'Show Items'"
+ ShowItems.More
+ '/// Count items in combobox 'From'
+ printlog " Count items in combobox 'From'"
+ ShowFrom.GetItemCount
+ '/// Count items in combobox 'Using field'
+ printlog " Count items in combobox 'Using field'"
+ UsingField.GetItemCount
+ '/// Close 'Data Filed Options' dialog with 'Cancel'
+ printlog " Close 'Data Filed Options' dialog with 'Cancel'"
+ DataFieldsOptionsDlg.Cancel
+ Kontext "Datenfeld"
+ '/// Close 'Data Field' dialog with 'Cancel'
+ printlog " Close 'Data Field' dialog with 'Cancel'"
+ Datenfeld.Cancel
+ sleep 2
+ Kontext "Datenpilot"
+ printlog " Close 'DataPilot' dialog with 'Cancel'"
+ Datenpilot.Cancel
+ printlog " Reopen 'DataPilot' dialog by 'Data – Datapilot – Start'"
+ DataDataPilotStart
+ sleep 1
+ Kontext "Datenpilot"
+ '/// Select item (Sum – 2001) in 'Data Fields' by 8 <TAB>
+ printlog " Select item (Sum – 2001) in 'Data Fields' by 8 <TAB>"
+ Datenpilot.TypeKeys "<TAB><TAB><TAB><TAB><TAB><TAB><TAB><TAB>",TRUE
+ Sleep 1
+ '/// Click on 'Options' button to open 'Data Filed' dialog
+ printlog " Click on 'Options' button to open 'Data Filed' dialog"
+ If Optionen.IsEnabled Then
+ Optionen.Click
+ else
+ warnlog "Option button is not enabled. Aborting"
+ Datenpilot.Cancel
+ Call hCloseDocument
+ goto endsub
+ end if
+ sleep 1
+ Kontext "DataFieldsFunctionDlg"
+ '/// Click on 'More' button
+ printlog " Click on 'More' button"
+ More.Click
+ Call DialogTest ( DataFieldsFunctionDlg )
+ '/// Verify that the 'Function' list has items
+ printlog " Verify that the 'Function' list has items"
+ If FunctionList.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Choose second entry in 'Type' combobox to enable next both comboboxes
+ printlog " Choose second entry in 'Type' combobox to enable next both comboboxes"
+ ValueType.Select 2
+ '/// Verify that the 'Base field' combobox has items
+ printlog " Verify that the 'Base field' combobox has items"
+ If BaseField.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Verify that the 'Base item' combobox has items
+ printlog " Verify that the 'Base item' combobox has items"
+ If BaseItem.GetItemCount < 1 then
+ warnlog "The list is empty"
+ end if
+ '/// Close 'Data Field' dialog with 'Cancel'
+ printlog " Close 'Data Field' dialog with 'Cancel'"
+ DataFieldsFunctionDlg.Cancel
+ Kontext "Datenpilot"
+ '/// Close 'DataPilot' dialog with 'Cancel'
+ printlog " Close 'DataPilot' dialog with 'Cancel'"
+ Datenpilot.Cancel
+
+ '/// Refresh 'DataPilot' by 'Data – DataPilot – Refresh'
+ printlog " Refresh 'DataPilot' by 'Data – DataPilot – Refresh'"
+ DataDataPilotRefresh
+
+ '/// Delete 'DataPilot' by 'Data – DataPilot – Delete'
+ printlog " Delete 'DataPilot' by 'Data – DataPilot – Delete'"
+ DataDataPilotDelete
+
+ '/// Close document without saving
+ printlog " Close document without saving"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tDataRefreshRange
+'///<u><b>Data – Refresh Range</b></u>
+
+ '/// Load testdocument Database_Refresh
+ printlog " Load testdocument Database_Refresh"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\required\input\Database_Refresh.ods" )
+ '/// Refresh Database by 'Data – Refresh Range'
+ printlog " Refresh Database by 'Data – Refresh Range'"
+ DataRefreshRange
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
diff --git a/testautomation/spreadsheet/required/includes/c_upd_editmenu.inc b/testautomation/spreadsheet/required/includes/c_upd_editmenu.inc
new file mode 100644
index 000000000000..c90e44d30f01
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_editmenu.inc
@@ -0,0 +1,1024 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - Edit Menu
+'*
+'************************************************************************
+'*
+' #1 tEditUndoRedo
+' #1 tEditRepeat
+' #1 tEditCut
+' #1 tEditCopy
+' #1 tEditPaste
+' #1 tEditPasteSpecial
+' #1 tEditSelectAll
+' #1 tEditChanges
+' #1 tEditCompareDocuments
+' #1 tEditFindAndReplace
+' #1 tEditHeadersAndFooters
+'*
+'\***********************************************************************
+
+sub c_upd_editmenu1
+
+ Printlog Chr(13) + "--------- EDIT Menu Part I (c_upd_editmenu.inc) ---------"
+
+ call tEditUndoRedo
+ call tEditRepeat
+ call tEditCut
+ call tEditCopy
+ call tEditPaste
+ call tEditPasteSpecial
+ call tEditSelectAll
+ call tEditChanges
+ call tEditCompareDocuments
+ call tEditFindAndReplace
+ call tEditHeadersAndFooters
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tEditUndoRedo
+'///<u><b>Edit - UndoRedo</b></u>
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Enter some text
+ printlog " Enter some text"
+ kontext "DocumentCalc"
+ DocumentCalc.Typekeys "Test<RETURN>"
+ '/// Edit - Undo
+ editUndo
+' sleep(1)
+ if fCalcGetCellValue ("A1") = "" then
+ printlog " - Undo is working"
+ else
+ warnlog "Undo doesn't work"
+ end if
+ editRedo
+' sleep(1)
+ if fCalcGetCellValue ("A1") = "Test" then
+ printlog " - Redo is working"
+ else
+ warnlog "Redo doesn't work"
+ end if
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditRepeat
+'///<u><b>Edit - Repeat</b></u>
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Enter some text
+ printlog " Enter some text"
+ kontext "DocumentCalc"
+ DocumentCalc.Typekeys "Test<RETURN>"
+ '/// Click on cell A2
+ printlog " Click on cell A2"
+ call fCalcSelectCell ("A2")
+ '/// Repeat insertion via Edit - Repeat
+ printlog " Repeat insertion via Edit - Repeat"
+ EditRepeat
+ if fCalcGetCellValue ("A2") = "Test" then
+ printlog " - Repeat is working"
+ else
+ warnlog "Repeat doesn't work"
+ end if
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditCut
+'///<u><b>Edit - Cut</b></u>
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Enter some text
+ printlog " Enter some text"
+ kontext "DocumentCalc"
+ DocumentCalc.Typekeys "Cutted Text<RETURN>"
+ '/// Click on cell A1
+ printlog " Click on cell A1"
+ call fCalcSelectCell ("A1")
+ '/// Make sure that the clipboard is empty
+ printlog " Make sure that the clipboard is empty"
+ setclipboard = ""
+ '/// Cut cellcontent
+ printlog " Cut cellcontent"
+ EditCut
+ if GetClipboardText = "Cutted Text" AND fCalcGetCellValue ("A1") = "" then
+ printlog " - Cutting is working"
+ else
+ warnlog "Cutting does not work correctly"
+ end if
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditCopy
+'///<u><b>Edit - Copy</b></u>
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Enter some text
+ printlog " Enter some text"
+ kontext "DocumentCalc"
+ DocumentCalc.Typekeys "Copied Text<RETURN>"
+ '/// Click on cell A1
+ printlog " Click on cell A1"
+ call fCalcSelectCell ("A1")
+ '/// Make sure that the clipboard is empty
+ printlog " Make sure that the clipboard is empty"
+ setclipboard = ""
+ '/// Copy cellcontent
+ printlog " Copy cellcontent"
+ EditCopy
+ if GetClipboardText = "Copied Text" AND fCalcGetCellValue ("A1") = "Copied Text" then
+ printlog " - Copying is working"
+ else
+ warnlog "Copying does not work correctly"
+ end if
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditPaste
+'///<u><b>Edit - Paste</b></u>
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Goto cell A1
+ printlog " Gotocell A1"
+ call fCalcSelectCell ("A1")
+ '/// Fill clipboard with text
+ printlog " Fill clipboard with text"
+ setclipboard ("Pasted Text")
+ '/// Paste clipboard
+ printlog " Paste clipboard"
+ EditPaste
+ Kontext "TextImport"
+ if TextImport.Exists(2) then
+ call DialogTest (TextImport)
+ '/// Close text import dialog with OK.
+ printlog " Close text import dialog with OK."
+ TextImport.OK
+ end if
+ '/// Make sure that the clipboard is empty
+ printlog " Make sure that the clipboard is empty"
+ setclipboard = ""
+ if fCalcGetCellValue ("A1") = "Pasted Text" then
+ printlog " - Pasting is working"
+ else
+ warnlog "Pasting does not work correctly"
+ end if
+ '/// Check overwrite messagebox via copy cellcontent and paste into itself
+ printlog " Check overwrite messagebox via copy cellcontent and paste into itself"
+ EditCopy
+ EditPaste
+ try
+ Kontext "CellWarning"
+ Dialogtest (CellWarning)
+ '///<li>Cancel overwrite warning</li>///
+ CellWarning.No
+ printlog " - Paste overwrite MsgBox tested"
+ catch
+ warnlog "MsgBox for overwrite warning doesn't exist"
+ endcatch
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditPasteSpecial
+'///<u><b>Edit - PasteSpecial</b></u>
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Enter some text
+ printlog " Enter some text"
+ kontext "DocumentCalc"
+ DocumentCalc.Typekeys "Pasted Text<RETURN>"
+ '/// Click on cell A1
+ printlog " Click on cell A1"
+ call fCalcSelectCell ("A1")
+ '/// Copy cellcontent
+ printlog " Copy cellcontent"
+ EditCopy
+ '/// Paste Special the clipboard
+ printlog " Paste Special the clipboard"
+ EditPasteSpecialCalc
+ kontext "InhalteEinfuegenCalc"
+ call DialogTest (InhalteEinfuegenCalc)
+ '/// Cancel PasteSpecial-Dialog
+ printlog " Cancel PasteSpecial-Dialog"
+ InhalteEinfuegenCalc.Cancel
+ if fCalcGetCellValue ("A1") = "Pasted Text" then
+ printlog " - PasteSpecial of spreadsheet content is working"
+ else
+ warnlog "PasteSpecial of spreadsheet content does not work correctly"
+ end if
+ '/// Insert a picture from file Insert - Graphic - From File
+ printlog " Insert a picture from file Insert - Graphic - From File"
+ InsertGraphicsFromFile
+ Kontext "GrafikEinfuegenDlg"
+ '/// Choose gTesttoolpath + global\input\graf_inp\baer.tif
+ printlog " Choose gTesttoolpath + global\input\graf_inp\baer.tif"
+ Dateiname.Settext (convertpath( gTesttoolpath + "global\input\graf_inp\baer.tif" ))
+ '/// Click OK
+ printlog " Click OK"
+ Oeffnen.Click
+ kontext "DocumentCalc"
+ '/// Cut the still selected graphic via Edit - Cut
+ printlog " Cut the still selected graphic via Edit - Cut"
+ EditCut
+ '/// PasteSpecial the cutted graphic
+ printlog " PasteSpecial the cutted graphic"
+ EditPasteSpecialCalc
+ kontext "InhaltEinfuegen"
+ call DialogTest (InhaltEinfuegen)
+ printlog " - PasteSpecial of other content is working"
+ '/// Cancel the PasteSpecial dialog
+ printlog " Cancel the PasteSpecial dialog"
+ InhaltEinfuegen.Cancel
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditSelectAll
+'///<u><b>Edit - SelectAll</b></u>
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Select whole sheet via Edit - Select All
+ printlog " Select whole sheet via Edit - Select All"
+ EditSelectAll
+ '/// Check in areafield if the whole sheet is selected (A1:AMJ1048576)
+ printlog " Check in areafield if the whole sheet is selected (A1:AMJ1048576)"
+ kontext "RechenleisteCalc"
+ if Bereich.getSelText = "A1:AMJ1048576" then
+ printlog " - SelectAll is working"
+ else
+ warnlog "SelectAll is not working as expected. The area is " & Bereich.getSelText & " instead of A1:AMJ1048576"
+ end if
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditChanges
+'///<u><b>Edit - Changes</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+
+ '/// Activate recording mode via Edit Changes Record
+ printlog " Activate recording mode via Edit Changes Record"
+ EditChangesRecordCalc
+ 'If changerecording is initially activated (which should not be) a messagebox appears
+ kontext
+ if active.exists then
+ active.Yes
+ warnlog "Unexpected state of the office - Redlining was initialy enabled"
+ EditChangesRecordCalc
+ end if
+
+ '/// Enter some text
+ printlog " Enter some text"
+ kontext "DocumentCalc"
+ DocumentCalc.Typekeys "Recorded Text1<RETURN>Recorded Text2<RETURN>"
+
+ '/// Open Protect changes dialog via Edit - Changes - Protect
+ printlog " Open Protect changes dialog via Edit - Changes - Protect"
+ EditChangesProtectTraceCalc
+ Kontext ("PasswortEingeben")
+ call Dialogtest (PasswortEingeben)
+ '/// Cancel Passwort dialog
+ printlog " Cancel Passwort dialog"
+ PasswortEingeben.Cancel
+
+ '/// Open Edit - Changes - Show dialog
+ printlog " Open Edit - Changes - Show dialog"
+ kontext "DocumentCalc"
+ EditChangesShowCalc
+ kontext "ShowChanges"
+ call Dialogtest (ShowChanges)
+ '/// Check all checkboxes
+ printlog " Check all checkboxes"
+ ShowChangesCalc.Check
+ ShowDate.Check
+ ShowAuthor.Check
+ ShowRange.Check
+ ShowComment.Check
+ ShowAcceptedChanges.Check
+ ShowRejectedChanges.Check
+ '/// Click on range chooser button
+ printlog " Click on range chooser button"
+ ShrinkRange.Click
+ '/// Enter range A1:B3
+ printlog " Enter range A1:B3"
+ RangeCalc.SetText "A1:B3"
+ '/// Click on enlarge button
+ printlog " Click on enlarge button"
+ Shrink.Click
+ '/// Click on 'Clock' button
+ printlog " Click on 'Clock' button"
+ Now1.Click
+ '/// Choose 'Between' in date listbox
+ printlog " Choose 'Between' in date listbox"
+ DateList.Select 5
+ '/// Now the second datefields are enabled, click on second 'Clock' button
+ printlog " Now the second datefields are enabled, click on second 'Clock' button"
+ Now2.Click
+ '/// Choose first author from list
+ printlog " Choose first author from list"
+ AuthorList.Select 1
+ '/// Enter comment 'Test' in comment field
+ printlog " Enter comment 'Test' in comment field"
+ EditComment.SetText "Test"
+ '/// Close Edit - Changes - Show dialog with cancel
+ printlog " Close Edit - Changes - Show dialog with cancel"
+ ShowChanges.Cancel
+
+ '/// Open dialog Edit - Changes - Accept or Discard changes
+ printlog " Open dialog Edit - Changes - Accept or Discard changes"
+ EditChangesAcceptOrDiscardCalc
+ Kontext "AenderungenAnzeigen"
+ '/// Choose tabpage List
+ printlog " Choose tabpage List"
+ Kontext "TabControl"
+ TabControl.setpage TabListe
+ Kontext "TabListe"
+ Call Dialogtest (TabListe)
+ '/// Choose tabpage Filter
+ printlog " Choose tabpage Filter"
+ Kontext "TabControl"
+ TabControl.setpage TabFilter
+ Call Dialogtest (TabFilter)
+ '/// Close dialog Edit - Changes - Accept or Discard changes
+ printlog " Close dialog Edit - Changes - Accept or Discard changes"
+ Kontext "AenderungenAnzeigen"
+ AenderungenAnzeigen.close
+
+ '/// Select cell A1
+ printlog " Select cell A1"
+ call fCalcSelectRange ("A1")
+ '/// Open Comments dialog via Edit - Changes - Comments
+ printlog " Open Comments dialog via Edit - Changes - Comments"
+ EditChangesCommentsCalc
+ Kontext "Kommentar"
+ call Dialogtest( Kommentar )
+ '/// Click on arrow-right-button
+ printlog " Click on arrow-right-button"
+ Vor.Click
+ '/// Click on arrow-left-button
+ printlog " Click on arrow-left-button"
+ Zurueck.Click
+ '/// Enter comment "Test"
+ printlog " Enter comment 'Test'"
+ KommentarText.SetText "Test"
+ '/// Close Comments dialog with cancel
+ printlog " Close Comments dialog with cancel"
+ Kommentar.cancel
+
+ '/// Choose Edit - Changes - Merge Documents
+ printlog " Choose Edit - Changes - Merge Documents"
+ EditChangesMergeDocument
+ '/// Enter filename 'gtesttoolpath +spreadsheet\required\input\merge.ods'
+ printlog " Enter filename 'gtesttoolpath +spreadsheet\required\input\merge.ods'"
+ kontext "OeffnenDlg"
+ Dateiname.settext convertpath(gtesttoolpath +"spreadsheet\required\input\merge.ods")
+ '/// Click Open
+ printlog " Click Open"
+ Oeffnen.Click
+ '/// Now the redlining dialog should appear. Close dialog with windowcloser
+ printlog " Now the redlining dialog should appear. Close dialog with windowcloser"
+ kontext "AenderungenAnzeigen"
+ AenderungenAnzeigen.close
+
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditCompareDocuments
+'///<u><b>Edit - Compare Documents</b></u>
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Enter some text
+ printlog " Enter some text"
+ kontext "DocumentCalc"
+ DocumentCalc.Typekeys "Inserted Text<RETURN>"
+ '/// Choose Edit - Compare Documents
+ printlog " Choose Edit - Compare Documents"
+ EditCompareDocumentCalc
+ '/// Enter filename 'gtesttoolpath +spreadsheet\required\input\merge.ods'
+ printlog " Enter filename 'gtesttoolpath +spreadsheet\required\input\merge.ods'"
+ kontext "OeffnenDlg"
+ Dateiname.settext convertpath(gtesttoolpath +"spreadsheet\required\input\merge.ods")
+ '/// Click Open
+ printlog " Click Open"
+ Oeffnen.Click
+ '/// Now the redlining dialog should appear. Close dialog with windowcloser
+ printlog " Now the redlining dialog should appear. Close dialog with windowcloser"
+ kontext "AenderungenAnzeigen"
+ AenderungenAnzeigen.close
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditFindAndReplace
+'///<u><b>Edit - Find And Replace</b></u>
+
+ Dim bAsianLanguage as boolean
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Enable 'Asian Language support' ON for getting all controls on dialog
+ printlog " Enable 'Asian Language support' ON for getting all controls on dialog"
+ bAsianLanguage = ActiveDeactivateAsianSupport(TRUE)
+ '/// Enter some text
+ printlog " Enter some text"
+ kontext "DocumentCalc"
+ DocumentCalc.Typekeys "Inserted Text<RETURN><UP>"
+ '/// Choose Edit - Find And Replace
+ printlog " Choose Edit - Find And Replace"
+ EditSearchAndReplace
+ kontext "FindAndReplace"
+ '/// Click 'More' button
+ printlog " Click 'More' button"
+ More.Click
+ call DialogTest ( FindAndReplace )
+ '/// By default all checkboxes have to be unchecked.
+ printlog " Uncheck all checkboxes (unchecked is also default)"
+ if not MatchCase.IsEnabled then 'SoundsLike disables MatchCase
+ SoundsLike.UnCheck
+ end if
+ if MatchCase.IsEnabled then
+ MatchCase.UnCheck
+ end if
+ if WholeWordsOnly.IsEnabled then
+ WholeWordsOnly.UnCheck
+ end if
+ if CurrentSelectionOnly.IsEnabled then
+ CurrentSelectionOnly.UnCheck
+ end if
+ if Backwards.IsEnabled then
+ Backwards.UnCheck
+ end if
+ if RegularExpressions.IsEnabled then
+ RegularExpressions.UnCheck
+ end if
+ if SearchForStyles.IsEnabled then
+ SearchForStyles.UnCheck
+ end if
+ if SearchInAllSheets.IsEnabled then
+ SearchInAllSheets.UnCheck
+ end if
+ '/// Check SimilaritySearch
+ printlog " Check SimilaritySearch"
+ if SimilaritySearch.IsEnabled then
+ SimilaritySearch.Check
+ end if
+ '/// Click ...button for similaritysearch
+ printlog " Click ...button for similaritysearch"
+ If SimilaritySearchFor.IsEnabled then
+ SimilaritySearchFor.Click
+ else
+ SimilaritySearch.Check
+ SimilaritySearchFor.Click
+ end if
+ kontext "Aehnlichkeitssuche"
+ call DialogTest ( Aehnlichkeitssuche )
+ '/// Use every control on opened similaritydialog
+ printlog " Use every control on opened similaritydialog"
+ ZeichenTauschen.More
+ ZeichenHinzufuegen.Less
+ ZeichenEntfernen.More
+ Kombinieren.Click
+ '/// Close similaritydialog with cancel
+ printlog " Close similaritydialog with cancel"
+ Aehnlichkeitssuche.Cancel
+ kontext "FindAndReplace"
+ SimilaritySearch.UnCheck
+ If MatchFullHalfWidth.Isvisible then
+ MatchFullHalfWidth.Uncheck
+ end if
+ If SoundsLike.Isvisible then
+ SoundsLike.Check
+ SoundsLikeOptions.Click
+ kontext "TabJapaneseFind"
+ call DialogTest ( TabJapaneseFind )
+ TabJapaneseFind.Cancel
+ kontext "FindAndReplace"
+ SoundsLike.UnCheck
+ end if
+ Rows.Check
+ SearchIn.Select 1
+ '/// Close Dialog
+ printlog " Close Dialog"
+ FindAndReplace.Close
+ '/// Set the 'Asian Language support' to default
+ printlog " Set the 'Asian Language support' to default"
+ if bAsianLanguage = FALSE then
+ Call ActiveDeactivateAsianSupport(FALSE)
+ end if
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditHeadersAndFooters
+'///<u><b>Edit - Headers and Footers</b></u>
+
+ Dim bAsianLanguage as boolean
+ Dim bCTLlanguage as boolean
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Enable 'Asian and CTL Language support' ON for getting all controls on dialog
+ printlog " Enable 'Asian and CTL Language support' ON for getting all controls on dialog"
+ bAsianLanguage = ActiveDeactivateAsianSupport(TRUE)
+ bCTLLanguage = ActiveDeactivateCTLSupport(TRUE)
+ '/// Disable 'Same content left/right' on Format-Page to get all resources
+ printlog " Disable 'Same content left/right' on Format-Page to get all resources"
+ '/// - Open Format-Page dialog
+ FormatPageCalc
+ '/// - Switch to tabpage Header
+ Kontext
+ Active.SetPage TabKopfzeile
+ Kontext
+ if Active.Exists(2) then
+ if Active.GetRT = 304 then
+ Printlog Active.GetText
+ Active.Yes
+ sleep(1)
+ end if
+ end if
+ '/// - Uncheck 'Same content left/right'
+ Kontext "TabKopfzeile"
+ InhaltLinksRechtsGleich.uncheck
+ '/// - Switch to tabpage Footer
+ Kontext
+ Active.SetPage TabFusszeile
+ Kontext "TabFussZeile"
+ '/// - Uncheck 'Same content left/right'
+ InhaltLinksRechtsGleich.uncheck
+ '/// - Close Dialog with OK
+ TabFusszeile.Ok
+
+ '/// Open Edit - Headers & Footers
+ printlog " Open Edit - Headers & Footers"
+ EditHeadersAndFooters
+ '/// Choose tabpage Header (right)
+ printlog " Choose tabpage Header (right)"
+ Kontext
+ Active.SetPage TabKopfzeileCalc
+ Kontext "TabKopfzeileCalc"
+ Call DialogTest ( TabKopfzeileCalc )
+ '/// Choose in Listbox Header the first entry (none)
+ printlog " Choose in Listbox Header the first entry (none)"
+ PredefinedHeader.Select 1
+ '/// Enter '1' in left area field
+ printlog " Enter '1' in left area field"
+ LinkerBereich.typeKeys ("1")
+ '/// Enter '1' in middle area field
+ printlog " Enter '1' in middlearea field"
+ MittlererBereich.typeKeys ("1")
+ '/// Enter '1' in right area field
+ printlog " Enter '1' in right area field"
+ RechterBereich.typeKeys ("1")
+ '/// Open fontdialog by clicking on Text Attributes button
+ printlog " Open fontdialog by clicking on Text Attributes button"
+ Textattribute.Click
+ '/// Now the Dialog for Text Attributes opened. Choose tabpage Font
+ printlog " Now the Dialog for Text Attributes opened. Choose tabpage Font"
+ Kontext
+ Active.setpage TabFont
+ Kontext "TabFont"
+ Call DialogTest ( TabFont)
+ '/// Count number of western fonts (amount is dependent from system but should be more than one)
+ printlog " Count number of western fonts (amount is dependent from system but should be more than one)"
+ if Fontwest.GetItemCount < 1 then warnlog "The Fontwest listbox is empty"
+ '/// Count number of western Typeface (amount is dependent from font but should be more than one)
+ printlog " Count number of western Typeface (amount is dependent from font but should be more than one)"
+ if StyleWest.GetItemCount < 1 then warnlog "The Stylewest listbox is empty"
+ '/// Count number of western Size (amount is dependent from font but should be more than one)
+ printlog " Count number of western Size (amount is dependent from font but should be more than one)"
+ if SizeWest.GetItemCount < 1 then warnlog "The Sizewest listbox is empty"
+ '/// Count number of western Language (amount is dependent from system but should be more than one)
+ printlog " Count number of western Language (amount is dependent from system but should be more than one)"
+ if LanguageWest.GetItemCount < 1 then warnlog "The Languagewest listbox is empty"
+ '/// Count number of asian fonts (amount is dependent from system but should be more than one)
+ printlog " Count number of asian fonts (amount is dependent from system but should be more than one)"
+ if FontEast.GetItemCount < 1 then warnlog "The Fonteast listbox is empty"
+ '/// Count number of asian Typeface (amount is dependent from font but should be more than one)
+ printlog " Count number of asian Typeface (amount is dependent from font but should be more than one)"
+ if StyleEast.GetItemCount < 1 then warnlog "The Styleeast listbox is empty"
+ '/// Count number of asian Size (amount is dependent from font but should be more than one)
+ printlog " Count number of asian Size (amount is dependent from font but should be more than one)"
+ if SizeEast.GetItemCount < 1 then warnlog "The SizeEast listbox is empty"
+ '/// Count number of asian Language (amount is dependent from system but should be more than one)
+ printlog " Count number of asian Language (amount is dependent from system but should be more than one)"
+ if LanguageEast.GetItemCount < 1 then warnlog "The Languageeast listbox is empty"
+ '/// Count number of CTL fonts (amount is dependent from system but should be more than one)
+ printlog " Count number of CTL fonts (amount is dependent from system but should be more than one)"
+ if FontCTL.GetItemCount < 1 then warnlog "The FontCTL listbox is empty"
+ '/// Count number of CTL Typeface (amount is dependent from font but should be more than one)
+ printlog " Count number of CTL Typeface (amount is dependent from font but should be more than one)"
+ if StyleCTL.GetItemCount < 1 then warnlog "The StyleCTL listbox is empty"
+ '/// Count number of CTL Size (amount is dependent from font but should be more than one)
+ printlog " Count number of CTL Size (amount is dependent from font but should be more than one)"
+ if SizeCTL.GetItemCount < 1 then warnlog "The SizeCTL listbox is empty"
+ '/// Count number of CTL Language (amount is dependent from system but should be more than one)
+ printlog " Count number of CTL Language (amount is dependent from system but should be more than one)"
+ if LanguageCTL.GetItemCount < 1 then warnlog "The LanguageCTL listbox is empty"
+ '/// Choose tabpage Font Effects
+ printlog " Choose tabpage Font Effects"
+ Kontext
+ Active.setpage TabFontEffects
+ Kontext "TabFontEffects"
+ Call DialogTest ( TabFontEffects)
+ '/// Choose second entry for Underlining
+ printlog " Choose second entry for Underlining"
+ Underline.Select 2
+ '/// Count number of Color
+ printlog " Count number of Color"
+ if Color.GetItemCount < 1 then warnlog "The Color listbox is empty"
+ '/// Choose second entry for Strikethrough
+ printlog " Choose second entry for Strikethrough"
+ StrikeThrough.Select 2
+ '/// Check Individual words
+ printlog " Check Individual words"
+ IndividualWords.Check
+ '/// Check Outline
+ printlog " Check Outline"
+ Outline.Check
+ '/// Check Shadow
+ printlog " Check Shadow"
+ Shadow.Check
+ '/// Choose second entry for Relief
+ printlog " Choose second entry for Relief"
+ Relief.Select 2
+ '/// Verify that Outline and Shadow are now disabled
+ printlog " Verify that Outline and Shadow are now disabled"
+ if Outline.IsEnabled then warnlog "Outline is enabled but should be disabled"
+ if Shadow.IsEnabled then warnlog "Shadow is enabled but should be disabled"
+ '/// Choose second entry for Emphasis mark
+ printlog " Choose second entry for Emphasis mark"
+ Emphasis.Select 2
+ '/// Verify that Position is enabled
+ printlog " Verify that Position is enabled"
+ if not Position.IsEnabled then warnlog "Position is disabled but should be enabled"
+ '/// Count number of Font colors
+ printlog " Count number of Font colors"
+ if FontColor.GetItemCount < 1 then warnlog "The FontColor listbox is empty"
+ '/// Choose tabpage Font position
+ printlog " Choose tabpage Font position"
+ Kontext
+ Active.setpage TabFontPosition
+ Kontext "TabFontPosition"
+ Call DialogTest ( TabFontPosition)
+ '/// Check Superscript
+ printlog " Check Superscript"
+ SuperScript.Check
+ '/// Check that Relative Font Size is enabled
+ printlog " Check that Relative Font Size is enabled"
+ if not RelativeFontSize.IsEnabled then warnlog "The RelativeFontSize is disabled but should be enabled"
+ '/// Uncheck Automatic
+ printlog " Uncheck Automatic"
+ Automatic.UnCheck
+ '/// Raise Raise/Lower by 1
+ printlog " Raise Raise/Lower by 1"
+ RaiseLower.More
+ '/// Check Normal
+ printlog " Check Normal"
+ Normal.Check
+ '/// Verify that Relative font size is disabled
+ printlog " Verify that Relative font size is disabled"
+ if RelativeFontSize.IsEnabled then warnlog "RelativeFontSize is enabled but should be disabled"
+ '/// Verify that Raise is disabled
+ printlog " Verify that Raise is disabled"
+ if RaiseLower.IsEnabled then warnlog "Raise is enabled but should be disabled"
+ '/// Verify that Automatic is disabled
+ printlog " Verify that Automatic is disabled"
+ if Automatic.IsEnabled then warnlog "Automatic is enabled but should be disabled"
+ '/// Check Subscript
+ printlog " Check Subscript"
+ Subscript.Check
+ '/// Verify that Relative font size is enabled
+ printlog " Verify that Relative font size is enabled"
+ if not RelativeFontSize.IsEnabled then warnlog "The RelativeFontSize is disabled but should be enabled"
+ '/// Check Automatic
+ printlog " Check Automatic"
+ Automatic.Check
+ '/// Verify that Raise is disabled
+ printlog " Verify that Raise is disabled"
+ if RaiseLower.IsEnabled then warnlog "Raise is enabled but should be disabled"
+ '/// Lower Scale width by 1
+ printlog " Lower Scale width by 1"
+ ScaleWith.Less
+ '/// Change Spacing to second entry
+ printlog " Change Spacing to second entry"
+ Spacing.Select 2
+ '/// Verify that SpacingBy is enabled
+ printlog " Verify that SpacingBy is enabled"
+ if not SpacingBy.IsEnabled then warnlog "The SpacingBy is disabled but should be enabled"
+ '/// Change Spacing to first entry
+ printlog " Change Spacing to first entry"
+ Spacing.Select 1
+ '/// Verify that SpacingBy is disabled
+ printlog " Verify that SpacingBy is disabled"
+ if SpacingBy.IsEnabled then warnlog "SpacingBy is enabled but should be disabled"
+ '/// Check Pair kerning
+ printlog " Check Pair kerning"
+ PairKerning.Check
+ '/// Close Text Attributes dialog with Cancel
+ printlog " Close Text Attributes dialog with Cancel"
+ TabFontPosition.Cancel
+
+ Kontext "TabKopfzeileCalc"
+ '/// Open menu on File button
+ printlog " Open menu on File button"
+'Control not usable by testtool (#i85788')
+' Datei.Open ()
+ '/// Choose second entry
+ printlog " Choose second entry"
+' MenuSelect 2
+ '/// Close menu
+ printlog " Close menu"
+' MenuSelect (0)
+ '/// Click button for Sheetname
+ printlog " Click button for Sheetname"
+ Tabelle.Click
+ '/// Click button for Page
+ printlog " Click button for Page"
+ Seitennummer.Click
+ '/// Click button for Pages
+ printlog " Click button for Pages"
+ Seitenanzahl.Click
+ '/// Click button for Date
+ printlog " Click button for Date"
+ Datum.Click
+ '/// Click button for Time
+ printlog " Click button for Time"
+ Zeit.Click
+
+ '/// Choose tabpage Header (left)
+ printlog " Choose tabpage Header (left)"
+ Kontext
+ Active.SetPage TabKopfzeileCalcLinks
+ Kontext "TabKopfzeileCalcLinks"
+ Call DialogTest ( TabKopfzeileCalcLinks )
+ '/// Choose in Listbox Header the first entry (none)
+ printlog " Choose in Listbox Header the first entry (none)"
+ PredefinedHeaderLeft.Select 1
+ '/// Enter 'Test' in left area field
+ printlog " Enter 'Test' in left area field"
+ LinkerBereich.typeKeys ("Test")
+ '/// Enter 'Test' in middle area field
+ printlog " Enter 'Test' in middlearea field"
+ MittlererBereich.typeKeys ("Test")
+ '/// Enter 'Test' in right area field
+ printlog " Enter 'Test' in right area field"
+ RechterBereich.typeKeys ("Test")
+ '/// Open fontdialog by clicking on Text Attributes button
+ printlog " Open fontdialog by clicking on Text Attributes button"
+ TextAttribute.Click
+ '/// Now the Dialog for Text Attributes opened. Choose tabpage Font
+ printlog " Now the Dialog for Text Attributes opened. Choose tabpage Font"
+ Kontext
+ Active.setpage TabFont
+ Kontext "TabFont"
+ '/// Close fontdialog with Cancel
+ printlog " Close fontdialog with Cancel"
+ TabFont.Cancel
+ Kontext "TabKopfzeileCalcLinks"
+ '/// Open menu on File button
+ printlog " Open menu on File button"
+'Control not usable by testtool (#i85788')
+' Datei.Open ()
+ '/// Choose second entry
+ printlog " Choose second entry"
+' MenuSelect 2
+ '/// Close menu
+ printlog " Close menu"
+' MenuSelect (0)
+ '/// Click button for Sheetname
+ printlog " Click button for Sheetname"
+ Tabelle.Click
+ '/// Click button for Page
+ printlog " Click button for Page"
+ Seitennummer.Click
+ '/// Click button for Pages
+ printlog " Click button for Pages"
+ Seitenanzahl.click
+ '/// Click button for Date
+ printlog " Click button for Date"
+ Datum.Click
+ '/// Click button for Time
+ printlog " Click button for Time"
+ Zeit.Click
+
+ '/// Choose tabpage Footer (right)
+ printlog " Choose tabpage Footer (right)"
+ Kontext
+ Active.SetPage TabFusszeileCalc
+ Kontext "TabFusszeileCalc"
+ Call DialogTest ( TabFusszeileCalc )
+ '/// Choose in Listbox Footer the first entry (none)
+ printlog " Choose in Listbox Footer the first entry (none)"
+ PredefinedFooter.Select 1
+ '/// Enter 'Test' in left area field
+ printlog " Enter 'Test' in left area field"
+ LinkerBereich.typeKeys ("Test")
+ '/// Enter 'Test' in middle area field
+ printlog " Enter 'Test' in middlearea field"
+ MittlererBereich.typeKeys ("Test")
+ '/// Enter 'Test' in right area field
+ printlog " Enter 'Test' in right area field"
+ RechterBereich.typeKeys ("Test")
+ '/// Open fontdialog by clicking on Text Attributes button
+ printlog " Open fontdialog by clicking on Text Attributes button"
+ TextAttribute.Click
+ '/// Now the Dialog for Text Attributes opened. Choose tabpage Font
+ printlog " Now the Dialog for Text Attributes opened. Choose tabpage Font"
+ Kontext
+ Active.setpage TabFont
+ Kontext "TabFont"
+ '/// Close fontdialog with Cancel
+ printlog " Close fontdialog with Cancel"
+ TabFont.Cancel
+ Kontext "TabFusszeileCalc"
+ '/// Open menu on File button
+ printlog " Open menu on File button"
+'Control not usable by testtool (#i85788')
+' Datei.Open ()
+ '/// Choose second entry
+ printlog " Choose second entry"
+' MenuSelect 2
+ '/// Close menu
+ printlog " Close menu"
+' MenuSelect (0)
+ '/// Click button for Sheetname
+ printlog " Click button for Sheetname"
+ Tabelle.Click
+ '/// Click button for Page
+ printlog " Click button for Page"
+ Seitennummer.Click
+ '/// Click button for Pages
+ printlog " Click button for Pages"
+ Seitenanzahl.click
+ '/// Click button for Date
+ printlog " Click button for Date"
+ Datum.Click
+ '/// Click button for Time
+ printlog " Click button for Time"
+ Zeit.Click
+
+ '/// Choose tabpage Footer (left)
+ printlog " Choose tabpage Footer (left)"
+ Kontext
+ Active.SetPage TabFusszeileCalcLinks
+ Kontext "TabFusszeileCalcLinks"
+ Call DialogTest ( TabFusszeileCalcLinks )
+ '/// Choose in Listbox Footer the first entry (none)
+ printlog " Choose in Listbox Footer the first entry (none)"
+ PredefinedFooterLeft.Select 1
+ '/// Enter 'Test' in left area field
+ printlog " Enter 'Test' in left area field"
+ LinkerBereich.typeKeys ("Test")
+ '/// Enter 'Test' in middle area field
+ printlog " Enter 'Test' in middlearea field"
+ MittlererBereich.typeKeys ("Test")
+ '/// Enter 'Test' in right area field
+ printlog " Enter 'Test' in right area field"
+ RechterBereich.typeKeys ("Test")
+ '/// Open fontdialog by clicking on Text Attributes button
+ printlog " Open fontdialog by clicking on Text Attributes button"
+ TextAttribute.Click
+ '/// Now the Dialog for Text Attributes opened. Choose tabpage Font
+ printlog " Now the Dialog for Text Attributes opened. Choose tabpage Font"
+ Kontext
+ Active.setpage TabFont
+ Kontext "TabFont"
+ '/// Close fontdialog with Cancel
+ printlog " Close fontdialog with Cancel"
+ TabFont.Cancel
+ Kontext "TabFusszeileCalcLinks"
+ '/// Open menu on File button
+ printlog " Open menu on File button"
+'Control not usable by testtool (#i85788')
+' Datei.Open ()
+ '/// Choose second entry
+ printlog " Choose second entry"
+' MenuSelect 2
+ '/// Close menu
+ printlog " Close menu"
+' MenuSelect (0)
+ '/// Click button for Sheetname
+ printlog " Click button for Sheetname"
+ Tabelle.Click
+ '/// Click button for Page
+ printlog " Click button for Page"
+ Seitennummer.Click
+ '/// Click button for Pages
+ printlog " Click button for Pages"
+ Seitenanzahl.click
+ '/// Click button for Date
+ printlog " Click button for Date"
+ Datum.Click
+ '/// Click button for Time
+ printlog " Click button for Time"
+ Zeit.Click
+
+ '/// Close Headers/Footers-dialog with cancel
+ printlog " Close Headers/Footers-dialog with cancel"
+ TabFusszeileCalcLinks.close
+ '/// Set the 'Asian and CTL Language support' to default
+ printlog " Set the 'Asian and CTL Language support' to default"
+ if bAsianLanguage = FALSE then
+ Call ActiveDeactivateAsianSupport(FALSE)
+ end if
+ if bCTLLanguage = FALSE then
+ Call ActiveDeactivateCTLSupport(FALSE)
+ end if
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+
+
+
diff --git a/testautomation/spreadsheet/required/includes/c_upd_editmenu2.inc b/testautomation/spreadsheet/required/includes/c_upd_editmenu2.inc
new file mode 100644
index 000000000000..a67502448d9a
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_editmenu2.inc
@@ -0,0 +1,666 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - Edit Menu Part II
+'*
+'************************************************************************
+'*
+' #1 tEditFill
+' #1 tEditDeleteContent
+' #1 tEditDeleteCells
+' #1 tEditSheet
+' #1 tEditDeleteManualBreak
+' #1 tEditLinks
+' #1 tEditPlugIn
+' #1 tEditImageMap
+' #1 tEditObjectEdit
+'*
+'\***********************************************************************
+
+sub c_upd_editmenu2
+
+ Printlog Chr(13) + "--------- EDIT Menu Part II (c_upd_editmenu2.inc) ---------"
+
+ call tEditFill
+ call tEditDeleteContent
+ call tEditDeleteCells
+ call tEditSheet
+ call tEditDeleteManualBreak
+ call tEditLinks
+ call tEditPlugIn
+ call tEditImageMap
+ call tEditObjectEdit
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tEditFill
+'///<u><b>Edit - Fill</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Enter '1' in cell C5
+ printlog " Enter '1' in cell C5"
+ Kontext "DocumentCalc"
+ call fCalcSelectCell ("C5")
+ DocumentCalc.typekeys "1<Return>"
+ '/// Select cells C5:C10
+ printlog " Select cells C5:C10"
+ call fCalcSelectCell ("C5:C10")
+ '/// Fill selected area via 'Edit - Fill – Down'
+ printlog " Fill selected area via 'Edit - Fill – Down'"
+ EditFillDown
+ '/// Select cells C1:C5
+ printlog " Select cells C1:C5"
+ call fCalcSelectCell ("C1:C5")
+ '/// Fill selected area via 'Edit – Fill – Up'
+ printlog " Fill selected area via 'Edit – Fill – Up'"
+ EditFillUp
+ '/// Select cells A5:C5
+ printlog " Select cells A5:C5"
+ call fCalcSelectCell ("A5:C5")
+ '/// Fill selected area via 'Edit – Fill – Left'
+ printlog " Fill selected area via 'Edit – Fill – Left'"
+ EditFillLeft
+ '/// Select cells C5:F5
+ printlog " Select cells C5:F5"
+ call fCalcSelectCell ("C5:F5")
+ '/// Fill selected area via 'Edit – Fill – Right'
+ printlog " Fill selected area via 'Edit – Fill – Right'"
+ EditFillRight
+ '/// Select cell A1:F10
+ printlog " Select cell A1:F10"
+ call fCalcSelectCell ("A1:F10")
+ '/// Open fill-series-dialog via 'Edit – Fill – Series'
+ printlog " Open fill-series-dialog via 'Edit – Fill – Series'"
+ EditFillSeries
+ Kontext "ReiheFuellen"
+ DialogTest ( ReiheFuellen )
+ '/// Check Direction 'Right'
+ printlog " Check Direction 'Right'"
+ Rechts.Check
+ '/// Check Direction 'Up'
+ printlog " Check Direction 'Up'"
+ Oben.Check
+ '/// Check Direction 'Left'
+ printlog " Check Direction 'Left'"
+ Links.Check
+ '/// Check Direction 'Down'
+ printlog " Check Direction 'Down'"
+ Unten.Check
+ '/// Check Series Type 'Linear'
+ printlog " Check Series Type 'Linear'"
+ Arithmetisch.Check
+ '/// Check Series Type 'Growth'
+ printlog " Check Series Type 'Growth'"
+ Geometrisch.Check
+ '/// Check Series Type 'AutoFill'
+ printlog " Check Series Type 'AutoFill'"
+ AutoAusfuellen.Check
+ '/// Check Series Type 'Date'
+ printlog " Check Series Type 'Date'"
+ Datum.Check
+ '/// Check Time Unit 'Day'
+ printlog " Check Time Unit 'Day'"
+ Tag.Check
+ '/// Check Time Unit 'Weekday'
+ printlog " Check Time Unit 'Weekday'"
+ WochenTag.Check
+ '/// Check Time Unit 'Month'
+ printlog " Check Time Unit 'Month'"
+ Monat.Check
+ '/// Check Time Unit 'Year'
+ printlog " Check Time Unit 'Year'"
+ Jahr.Check
+ '/// Verify that 'Start Value' is disabled
+ printlog " Verify that 'Start Value' is disabled"
+ if StartWert.IsEnabled then warnlog "StartValue is enabled but should be disabled"
+ '/// Enter End value '10'
+ printlog " Enter End value '10'"
+ EndWert.SetText 10
+ '/// Enter Increment '2'
+ printlog " Enter Increment '2'"
+ Inkrement.SetText 2
+ '/// Close dialog via 'Cancel'
+ printlog " Close dialog via 'Cancel'"
+ ReiheFuellen.Cancel
+ '/// Select all sheets by context menu on sheettab
+ printlog " Select all sheets by context menu on sheettab"
+ AlleTabellenAuswaehlen
+ '/// Open 'Fill Sheets' dialog by 'Edit - Fill - Sheets'
+ printlog " Open 'Fill Sheets' dialog by 'Edit - Fill - Sheets'"
+ EditFillSheet
+ Kontext "TabellenFuellen"
+ Dialogtest ( TabellenFuellen )
+ '/// Uncheck 'Paste all'
+ printlog " Uncheck 'Paste all'"
+ AuswahlAllesEinfuegen.UnCheck
+ '/// Check 'Text'
+ printlog " Check 'Text'"
+ AuswahlZeichenketten.Check
+ '/// Check 'Numbers'
+ printlog " Check 'Numbers'"
+ AuswahlZahlen.Check
+ '/// Check 'Date & Time'
+ printlog " Check 'Date & Time'"
+ AuswahlDatumZeit.Check
+ '/// Check 'Formulas'
+ printlog " Check 'Formulas'"
+ AuswahlFormeln.Check
+ '/// Check 'Notes'
+ printlog " Check 'Notes'"
+ AuswahlNotizen.Check
+ '/// Check 'Formats'
+ printlog " Check 'Formats'"
+ AuswahlFormate.Check
+ '/// Check 'Skip empty cells'
+ printlog " Check 'Skip empty cells'"
+ LeerzeilenUeberspringen.Check
+ '/// Verify that 'Transpose' is disabled
+ printlog " Verify that 'Transpose' is disabled"
+ if Transponieren.IsEnabled then warnlog "Transpose is enabled but should be disabled"
+ '/// Check 'Link'
+ printlog " Check 'Link'"
+ Verknuepfen.Check
+ '/// Check 'None'
+ printlog " Check 'None'"
+ RechenopperationenKeine.Check
+ '/// Check 'Add'
+ printlog " Check 'Add'"
+ RechenopperationenAddieren.Check
+ '/// Check 'Subtract'
+ printlog " Check 'Subtract'"
+ RechenopperationenSubtrahieren.Check
+ '/// Check 'Multiply'
+ printlog " Check 'Multiply'"
+ RechenopperationenMultiplizieren.Check
+ '/// Check 'Divide'
+ printlog " Check 'Divide'"
+ RechenopperationenDividieren.Check
+ '/// Verify that 'Dont shift' is disabled
+ printlog " Verify that 'Dont shift' is disabled"
+ if NichtVerschieben.IsEnabled then warnlog "Transpose is enabled but should be disabled"
+ '/// Verify that 'Down' is disabled
+ printlog " Verify that 'Down' is disabled"
+ if NachUnten.IsEnabled then warnlog "Transpose is enabled but should be disabled"
+ '/// Verify that 'Right' is disabled
+ printlog " Verify that 'Right' is disabled"
+ if NachRechts.IsEnabled then warnlog "Transpose is enabled but should be disabled"
+ '/// Close 'Fill Sheets' dialog with 'Cancel'
+ printlog " Close 'Fill Sheets' dialog with 'Cancel'"
+ TabellenFuellen.Cancel
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditDeleteContent
+'///<u><b>Edit - Delete Content</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Delete Content' dialog via 'Edit – Delete content'
+ printlog " Open 'Delete Content' dialog via 'Edit – Delete content'"
+ EditDeleteContents
+ Kontext "InhalteLoeschen"
+ DialogTest ( InhalteLoeschen )
+ '/// Check 'Delete All'
+ printlog " Check 'Delete All'"
+ Alles.Check
+ '/// Check that all other controls are now disabled
+ printlog " Check that all other controls are now disabled"
+ if Zeichenketten.IsEnabled then warnlog "Option is enabled but should be disabled"
+ '/// Uncheck 'Delete All'
+ printlog " Uncheck 'Delete All'"
+ Alles.UnCheck
+ '/// Check 'Text'
+ printlog " Check 'Text'"
+ Zeichenketten.Check
+ '/// Check 'Numbers'
+ printlog " Check 'Numbers'"
+ Zahlen.Check
+ '/// Check 'Date & Time'
+ printlog " Check 'Date & Time'"
+ DatumZeit.Check
+ '/// Check 'Formulas'
+ printlog " Check 'Formulas'"
+ Formeln.Check
+ '/// Check 'Notes'
+ printlog " Check 'Notes'"
+ Notizen.Check
+ '/// Check 'Formats'
+ printlog " Check 'Formats'"
+ Formate.Check
+ '/// Check 'Objects'
+ printlog " Check 'Objects'"
+ Objekte.Check
+ '/// Close dialog via 'Cancel'
+ printlog " Close dialog via 'Cancel'"
+ InhalteLoeschen.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditDeleteCells
+'///<u><b>Edit - Delete Cells</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Delete Cells' dialog via 'Edit – Delete Cells'
+ printlog " Open 'Delete Cells' dialog via 'Edit – Delete Cells'"
+ EditDeleteCells
+ Kontext "ZellenLoeschen"
+ DialogTest ( ZellenLoeschen )
+ '/// Check 'Shift cells up'
+ printlog " Check 'Shift cells up'"
+ Zellennachoben.Check
+ '/// Check 'Shift cells left'
+ printlog " Check 'Shift cells left'"
+ Zellennachlinks.Check
+ '/// Check 'Delete entire row'
+ printlog " Check 'Delete entire row'"
+ GanzeZeilen.Check
+ '/// Check 'Delete entire column'
+ printlog " Check 'Delete entire column'"
+ GanzeSpalten.Check
+ '/// Close dialog via 'Cancel'
+ printlog " Close dialog via 'Cancel'"
+ ZellenLoeschen.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditSheet
+'///<u><b>Edit - Sheet</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Edit – Sheet – Move/Copy Sheet' dialog
+ printlog " Open 'Edit – Sheet – Move/Copy Sheet' dialog"
+ EditCopyMoveSheet
+ Kontext "TabelleVerschiebenKopieren"
+ DialogTest ( TabelleVerschiebenKopieren )
+ '/// Check that there are more than one entry in listbox 'To document'
+ printlog " Check that there are more than one entry in listbox 'To document'"
+ if InsDokument.GetItemCount < 1 then warnlog "The listbox is empty"
+ '/// Check that there are four entries in 'Insert before'
+ printlog " Check that there are four entries in 'Insert before'"
+ if EinfuegenVor.GetItemCount < 1 then warnlog "The listbox is empty"
+ '/// Check 'Copy'
+ printlog " Check 'Copy'"
+ Kopieren.Check
+ '/// Close dialog via 'Cancel'
+ printlog " Close dialog via 'Cancel'"
+ TabelleVerschiebenKopieren.Cancel
+ '/// Open 'Edit – Sheet – Select' dialog
+ printlog " Open 'Edit – Sheet – Select' dialog"
+ EditSheetSelect
+ Kontext "SelectSheets"
+ DialogTest ( SelectSheets )
+ '/// Check that there are three entries in listbox
+ printlog " Check that there are three entries in listbox"
+ if not SheetSelectionBox.GetItemCount = 3 then warnlog "The amount of sheets is wrong, should be 3 but is" & SheetSelectionBox.GetItemCount
+ '/// Close dialog via 'Cancel'
+ printlog " Close dialog via 'Cancel'"
+ SelectSheets.Cancel
+ '/// Choose 'Edit – Sheet – Delete'
+ printlog " Choose 'Edit – Sheet – Delete'"
+ EditDeleteSheet
+ '/// Now a messagebox appears. Close messagebox with 'No'
+ printlog " Now a messagebox appears. Close messagebox with 'No'"
+ Kontext
+ if active.exists then
+ DialogTest ( Active )
+ Active.No
+ else
+ warnlog "Edit::Sheet::Delete - no removal warning appeared!"
+ end if
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditDeleteManualBreak
+'///<u><b>Edit - Delete - Manual Break</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Select cell H10
+ printlog " Select cell H10"
+ call fCalcSelectRange ("H10")
+ '/// Insert a manual rowbreak via 'Insert – Manual Break – Row Break'
+ printlog " Insert a manual rowbreak via 'Insert – Manual Break – Row Break'"
+ InsertManuelBreakRowBreak
+ '/// Insert a manual columnbreak via 'Insert – Manual Break – Column Break'
+ printlog " Insert a manual columnbreak via 'Insert – Manual Break – Column Break'"
+ InsertManuelBreakColumnBreak
+ '/// Delete manual rowbreak via 'Edit – Delete Manual Break – Row Break'
+ printlog " Delete manual rowbreak via 'Edit – Delete Manual Break – Row Break'"
+ EditRemoveManualBreakRowBreak
+ '/// Delete manual columnbreak via 'Edit – Delete Manual Break – Column Break'
+ printlog " Delete manual columnbreak via 'Edit – Delete Manual Break – Column Break'"
+ EditRemoveManualBreakColumnBreak
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditLinks
+'///<u><b>Edit - Links</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open Insert graphic dialog via 'Insert – Picture – From File'
+ printlog " Open Insert graphic dialog via 'Insert – Picture – From File'"
+ InsertGraphicsFromFile
+ '/// Set filename ' global/input/graf_inp/borabora.jpg'
+ printlog " Set filename ' global/input/graf_inp/borabora.jpg'"
+ Kontext "GrafikEinfuegenDlg"
+ Dateiname.SetText ConvertPath ( gTesttoolPath + "global\input\graf_inp\borabora.jpg" )
+ '/// Check 'Link'
+ printlog " Check 'Link'"
+ Link.Check
+ '/// Close dialog with 'OK'
+ printlog " Close dialog with 'OK'"
+ Oeffnen.Click
+ '/// Open 'Edit – Links' dialog
+ printlog " Open 'Edit – Links' dialog"
+ Kontext "DocumentCalc"
+ EditLinksCalc
+ Kontext "VerknuepfungenBearbeiten"
+ VerknuepfungenBearbeiten.Exists (2)
+ Call DialogTest ( VerknuepfungenBearbeiten )
+ '/// Click on 'Update' – button
+ printlog " Click on 'Update' – button"
+ Aktualisieren.Click
+ '/// Click on 'Modify...' - button
+ printlog " Click on 'Modify...' - button"
+ Aendern.Click
+ '/// Close 'Link graphics' – dialog with 'Cancel'
+ printlog " Close 'Link graphics' – dialog with 'Cancel'"
+ Kontext "GrafikEinfuegenDLG"
+ Call Dialogtest ( GrafikEinfuegenDLG )
+ GrafikEinfuegenDLG.Cancel
+ '/// Click on 'Break Link' – button
+ printlog " Click on 'Break Link' – button"
+ Kontext "VerknuepfungenBearbeiten"
+ loesen.Click
+ '/// Close messagebox with 'Yes'
+ printlog " Close messagebox with 'Yes'"
+ Kontext
+ If Active.Exists then
+ Active.Yes
+ else
+ Warnlog "No request by deleting the link"
+ end if
+ Kontext "VerknuepfungenBearbeiten"
+ '/// Close 'Edit Links' – dialog
+ printlog " Close 'Edit Links' – dialog"
+ VerknuepfungenBearbeiten.Close
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+ '/// Load testfile ' spreadsheet/required/input/linkclient.ods ' and allow update
+ printlog " Load testfile ' spreadsheet/required/input/linkclient.ods ' and allow update"
+ Call hFileOpen ( ConvertPath ( gTesttoolPath + "spreadsheet\required\input\linkclient.ods"))
+ printlog " Confirm Update Links dialog with YES"
+ Kontext
+ If Active.Exists then
+ Active.Yes
+ else
+ warnlog "No dialog for updating links exists"
+ end if
+ '/// Open 'Edit – Links' dialog
+ printlog " Open 'Edit – Links' dialog"
+ EditLinksCalc
+ Kontext "VerknuepfungenBearbeiten"
+ '/// Click on 'Update' – button
+ printlog " Click on 'Update' – button"
+ Aktualisieren.Click
+ '/// Click on 'Modify...' - button to open 'Modify Link' dialog
+ printlog " Click on 'Modify...' - button to open 'Modify Link' dialog"
+ Aendern.Click
+ Kontext "ModifyLink"
+ Call Dialogtest ( ModifyLink )
+ '/// Verify that the 'Application' editfield is available
+ printlog " Verify that the 'Application' editfield is available"
+ ModifyDDEApplication.GetText
+ '/// Verify that the 'File' editfield is available
+ printlog " Verify that the 'File' editfield is available"
+ ModifyDDEFile.GetText
+ '/// Verify that the 'Category' editfield is available
+ printlog " Verify that the 'Category' editfield is available"
+ ModifyDDECategory.GetText
+ '/// Close 'Modify Link' – dialog with 'Cancel'
+ printlog " Close 'Modify Link' – dialog with 'Cancel'"
+ ModifyLink.Cancel
+ Kontext "VerknuepfungenBearbeiten"
+ '/// Check that updateradiobuttons are enabled
+ printlog " Check that updateradiobuttons are enabled"
+ if not Automatisch.IsEnabled then
+ warnlog "Updateradiobutton is disabled but should be enabled"
+ end if
+ '/// Click on 'Break Link' – button
+ printlog " Click on 'Break Link' – button"
+ Loesen.Click
+ '/// Accept messagebox with 'Yes'
+ printlog " Accept messagebox with 'Yes'"
+ Kontext
+ If Active.Exists then
+ Active.Yes
+ end if
+ Kontext "VerknuepfungenBearbeiten"
+ '/// Check that updateradiobuttons are disabled
+ printlog " Check that updateradiobuttons are disabled"
+ if Manuell.IsEnabled then
+ warnlog "Updateradiobutton is enabled but should be disabled"
+ end if
+ '/// Close 'Edit Links' – dialog
+ printlog " Close 'Edit Links' – dialog"
+ VerknuepfungenBearbeiten.Close
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditPlugIn
+'///<u><b>Edit - PlugIn</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Edit – PlugIn
+ printlog " Edit – PlugIn"
+ EditPlugIn
+ '/// Edit – PlugIn
+ printlog " Edit – PlugIn"
+ EditPlugIn
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditImageMap
+'///<u><b>Edit - ImageMap</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open Insert graphic dialog via 'Insert – Picture – From File'
+ printlog " Open Insert graphic dialog via 'Insert – Picture – From File'"
+ InsertGraphicsFromFile
+ '/// Set filename ' global/input/graf_inp/borabora.jpg'
+ printlog " Set filename ' global/input/graf_inp/borabora.jpg'"
+ Kontext "GrafikEinfuegenDlg"
+ Dateiname.SetText ConvertPath ( gTesttoolPath + "global\input\graf_inp\borabora.jpg" )
+ '/// Close dialog with 'OK'
+ printlog " Close dialog with 'OK'"
+ Oeffnen.Click
+ '/// Open ImageMap – dialog via 'Edit – ImageMap'
+ printlog " Open ImageMap – dialog via 'Edit – ImageMap'"
+ EditImageMap
+ Kontext "ImageMapEditor"
+ Call Dialogtest ( ImageMapEditor )
+ '/// Click on Open button
+ printlog " Click on Open button"
+ Oeffnen.Click
+ Kontext "GeneralFileDialog"
+ '/// Close 'Open'-dialog with Cancel
+ printlog " Close 'Open'-dialog with Cancel"
+ GeneralFileDialog.Cancel
+ Kontext "ImageMapEditor"
+ '/// Click on 'Save'-button
+ printlog " Click on 'Save'-button"
+ Speichern.Click
+ Kontext "SpeichernDlg"
+ '/// Close 'Save'-dialog with Cancel
+ printlog " Close 'Save'-dialog with Cancel"
+ SpeichernDlg.Cancel
+ Kontext "ImageMapEditor"
+ '/// Click on 'Rectangle'button and draw a rectangle by mouse
+ printlog " Click on 'Ellipse'button and draw an ellipse by mouse"
+ Ellipse.Click
+ Dokument.MouseDown 50,50
+ Dokument.MouseMove 50,50,10,10
+ Dokument.MouseUp 10,10
+ '/// Click on 'Active'-button
+ printlog " Click on 'Active'-button"
+ Aktiv.Click
+ '/// Click on 'Macro...'-button
+ printlog " Click on 'Macro...'-button"
+' warnlog "#i102720# => crash, therefor this functionality is outcommented"
+ Makro.Click
+ Kontext "MakroZuweisen"
+ Call DialogTest ( MakroZuweisen )
+ '/// Close 'Assign Macro'-dialog with Cancel
+ printlog " Close 'Assign Macro'-dialog with Cancel"
+ MakroZuweisen.Cancel
+ Kontext "ImageMapEditor"
+ '/// Click on 'Properties'-button
+ printlog " Click on 'Properties'-button"
+ Eigenschaften.Click
+ Kontext "ImageMapHyperlink"
+ Call DialogTest ( ImageMapHyperlink )
+ '/// Verify that the 'URL' editfield is available
+ printlog " Verify that the 'URL' editfield is available"
+ URL.GetText
+ '/// Verify that the 'Alternativetext' editfield is available
+ printlog " Verify that the 'Alternativetext' editfield is available"
+ Alternativetext.GetText
+ '/// Verify that the 'Frame' listbox has items
+ printlog " Verify that the 'Frame' listbox has items"
+ Frame.GetItemCount
+ '/// Verify that the 'Description' editfield is available
+ printlog " Verify that the 'Description' editfield is available"
+ Description.GetText
+ '/// Close 'Properties'-dialog with 'Cancel'
+ printlog " Close 'Properties'-dialog with 'Cancel"
+ ImageMapHyperlink.Cancel
+ Kontext "ImageMapEditor"
+ '/// Click on 'UNDO'-button
+ printlog " Click on 'UNDO'-button"
+ Rueckgaengig.Click
+ '/// Close ImageMap with windowcloser
+ printlog " Close ImageMap with windowcloser"
+ ImageMapEditor.Close
+ '/// Click on 'No'-button on savemessagebox
+ printlog " Click on 'No'-button on savemessagebox"
+ Kontext
+ if active.exists then
+ Active.No
+ end if
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tEditObjectEdit
+'///<u><b>Edit - Object - Edit</b></u>
+
+ '/// Load testdocument 'spreadsheet/required/input/tEditObject.ods'
+ printlog " Load testdocument 'spreadsheet/required/input/tEditObject.ods'"
+ hFileOpenLocally( gTesttoolPath + "spreadsheet\required\input\tEditObject.ods" )
+ '/// Select OLE-object
+ printlog " Select OLE-object"
+ fselectFirstOLE
+ '/// Activate OLE-object by Edit – Object – Edit
+ printlog " Activate OLE-object by Edit – Object – Edit"
+ EditObjectEdit
+ '/// Deactivate OLE-object
+ printlog " Deactivate OLE-object"
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys "<ESCAPE>" , 2
+ '/// Select OLE-object
+ printlog " Select OLE-object"
+ fselectFirstOLE
+ '/// Open 'Save As' – dialog by Edit – Object – Save As
+ printlog " Open 'Save As' – dialog by Edit – Object – Save As"
+ EditObjectSaveCopyAsCalc
+ Kontext "SpeichernDlg"
+ '/// Close dialog with Cancel
+ printlog " Close dialog with Cancel"
+ SpeichernDlg.Cancel
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
diff --git a/testautomation/spreadsheet/required/includes/c_upd_filemenu.inc b/testautomation/spreadsheet/required/includes/c_upd_filemenu.inc
new file mode 100644
index 000000000000..ea8efd09dd2c
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_filemenu.inc
@@ -0,0 +1,685 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - File Menu
+'*
+'************************************************************************
+'*
+' #1 tFileNewSpreadsheet
+' #1 tFileNewSpreadsheetFromTemplate
+' #1 tFileOpen
+' #1 tFileOpenCSV
+' #1 tFileOpenDBF
+' #1 tFileOpenHTML
+' #1 tFileRecentDocuments
+' #1 tFileClose
+' #1 tFileSave
+' #1 tFileSaveAsDBF
+' #1 tFileVersions
+' #1 tFilePagePreview
+'*
+'\***********************************************************************
+
+sub c_upd_filemenu
+
+ Printlog Chr(13) + "--------- FILE Menu (c_upd_filemenu.inc) ---------"
+
+ Call tFileNewSpreadsheet
+ Call tFileNewSpreadsheetFromTemplate
+ Call tFileOpen
+ Call tFileOpenCSV
+ Call tFileOpenDBF
+ Call tFileOpenHTML
+ Call tFileRecentDocuments
+ Call tFileClose
+ Call tFileSave
+ Call tFileSaveAsDBF
+ Call tFileVersions
+ Call tFilePagePreview
+ Call g_printing()
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tFileNewSpreadsheet
+
+ '/// Opening new spreadsheet document for getting defined starting environment
+ Printlog " Opening new spreadsheet document for getting defined starting environment"
+ Call hNewDocument
+ '/// Open new document via Menu FILE-NEW-SPREADSHEET
+ Printlog " Open new document via Menu FILE-NEW-SPREADSHEET"
+ Kontext "DocumentCalc"
+ DocumentCalc.UseMenu 'Selecting Menubar
+ hMenuSelectNr(1) 'Using first entry on Menubar (FILE)
+ hMenuSelectNr(1) 'Using first entry on menu (NEW)
+ hMenuSelectNr(2) 'Using second entry on menu (SPREADSHEET)
+ Kontext "DocumentCalc"
+ Call DialogTest (DocumentCalc)
+ '/// Close document
+ Printlog " Close document"
+ Call hCloseDocument
+ '/// Close starting document
+ Printlog " Close starting document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFileNewSpreadsheetFromTemplate
+
+ '/// Opening new spreadsheet document for getting defined starting environment
+ Printlog " Opening new spreadsheet document for getting defined starting environment"
+ Call hNewDocument
+ '/// Open new document via Menu FILE-NEW-TEMPLATES AND DOCUMENTS
+ Printlog " Open new document via Menu FILE-NEW-FROM TEMPLATES AND DOCUMENTS"
+ Kontext "DocumentCalc"
+ DocumentCalc.UseMenu 'Selecting Menubar
+ hMenuSelectNr(1) 'Using first entry on Menubar (FILE)
+ hMenuSelectNr(1) 'Using first entry on menu (NEW)
+ hMenuSelectNr(12) 'Using second entry on menu (TEMPLATES AND DOCUMENTS)
+ Kontext "TemplateAndDocuments"
+ Call DialogTest (TemplateAndDocuments)
+ '/// Cancel dialog
+ Printlog " Cancel dialog"
+ TemplateAndDocuments.Cancel
+ '/// Opening TemplateAndDocuments-Dialog via slot FileNewFromTemplate
+ Printlog " Opening TemplateAndDocuments-Dialog via slot FileNewFromTemplate"
+ Kontext "DocumentCalc"
+ FileNewFromTemplate
+ Kontext "TemplateAndDocuments"
+ Call DialogTest (TemplateAndDocuments)
+ '/// Cancel dialog
+ Printlog " Cancel dialog"
+ TemplateAndDocuments.Cancel
+ '/// Close starting document
+ Printlog " Close starting document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFileOpen
+
+ '/// Opening new spreadsheet document for getting defined starting environment
+ Printlog " Opening new spreadsheet document for getting defined starting environment"
+ Call hNewDocument
+ '/// Open File-Open-dialog
+ Printlog " Open File-Open-dialog"
+ FileOpen
+ Kontext "OeffnenDlg"
+ Call DialogTest ( OeffnenDlg )
+ '/// Click "Up one level"
+ Printlog " Click Up one level"
+ UebergeordneterOrdner.Click
+ '/// Click "Default directory"
+ Printlog " Click Default directory"
+ Standard.Click
+ '/// Click "New Folder"
+ Printlog " Click New Folder"
+ NeuerOrdner.Click
+ Kontext "NeuerOrdner"
+ Call DialogTest ( NeuerOrdner )
+ '/// Cancel New Folder
+ Printlog " Cancel New Folder"
+ NeuerOrdner.Cancel
+ Kontext "OeffnenDlg"
+ '/// Check "Read only"
+ Printlog " Check Read only"
+ NurLesen.check
+ '/// Close File-Open-dialog with Cancel
+ Printlog " Close File-Open-dialog with Cancel"
+ OeffnenDlg.Cancel
+ '/// Close starting document
+ Printlog " Close starting document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFileOpenCSV
+
+ dim sTestFile as string
+
+ sTestFile = convertpath(gTesttoolPath & "spreadsheet/required/input/tFileOpen_CSV.csv"
+ Printlog " Opening new spreadsheet document for getting defined starting environment"
+ Call hNewDocument
+ Printlog " Open File-Open-dialog"
+ FileOpen
+ Kontext "OeffnenDlg"
+ Printlog " Enter filename spreadsheet/required/input/tFileOpen_CSV.csv"
+ Dateiname.settext (sTestFile)
+ Printlog " Click on Open"
+ Oeffnen.Click
+ Printlog " Check existence of CSV import dialog"
+ Kontext "TextImport"
+ if Not TextImport.exists(2) then
+ 'Verify if the file will be loaded in Writer instead
+ Kontext "ASCIIFilterOptionen"
+ if ASCIIFilterOptionen.exists(2) then
+ warnlog "Filterdetection for CSV is broken. Textfilter is used instead"
+ ASCIIFilterOptionen.Cancel
+ Call hCloseDocument
+ goto endsub
+ else
+ Kontext "DocumentWriter"
+ if DocumentWriter.exists(2) then
+ warnlog "CSV import has failed, file is loaded in Writer"
+ 'Close Writer document
+ Call hCloseDocument
+ 'Close starting document
+ Call hCloseDocument
+ goto endsub
+ else
+ Kontext
+ if Active.exists then
+ Active.no
+ Call hCloseDocument
+ goto endsub
+ end if
+ end if
+ end if
+ end if
+ Call Dialogtest (TextImport)
+ Kontext "TextImport"
+ Printlog " Use every control"
+ CharacterSet.GetItemCount
+ Language.GetItemCount
+ FromRow.More
+ FixedWidth.Check
+ Separated.Check
+ Tab.Check
+ Semicolon.Check
+ Comma.Check
+ SpaceCB.Check
+ Other.Check
+ OtherText.SetText "a"
+ MergeDelimiter.Check
+ TextDelimiter.GetItemCount
+ QuotedAsText.Check
+ DetectSpecialNumbers.Check
+ Printlog " Cancel Text Import dialog"
+ TextImport.cancel
+ Printlog " Open File-Open-dialog"
+ FileOpen
+ Kontext "OeffnenDlg"
+ Printlog " Enter filename spreadsheet/required/input/tFileOpen_CSV.csv"
+ Dateiname.settext (sTestFile)
+ Printlog " Click on Open"
+ Oeffnen.Click
+ Kontext "TextImport"
+ TextImport.ok
+ sleep (2)
+ Printlog " - CSV import dialog is in function"
+ sleep (1)
+ Kontext "DocumentCalc"
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFileOpenDBF
+
+ dim sTestFile as string
+
+ sTestFile = convertpath(gTesttoolPath & "spreadsheet/required/input/tFileOpen_DBF.dbf"
+ '/// Opening new spreadsheet document for getting defined starting environment
+ Printlog " Opening new spreadsheet document for getting defined starting environment"
+ Call hNewDocument
+ '/// Open File-Open-dialog
+ Printlog " Open File-Open-dialog"
+ FileOpen
+ Kontext "OeffnenDlg"
+ '/// Enter filename spreadsheet/required/input/tFileOpen_DBF.dbf
+ Printlog " Enter filename spreadsheet/required/input/tFileOpen_DBF.dbf"
+ Dateiname.settext (sTestFile)
+ '/// Click on Open
+ Printlog " Click on Open"
+ Oeffnen.Click
+ '/// Check if there is no Text document opened
+ Printlog " Check if there is no Text document opened"
+ Kontext "DocumentWriter"
+ if DocumentWriter.exists(2) then
+ warnlog "Filter detection is broken. Text file opened in writer although DBF filter was selected."
+ Call hCloseDocument
+ '/// Close starting document
+ Printlog " Close starting document"
+ Call hCloseDocument
+ goto endsub
+ end if
+ '/// Check existence of import dialog
+ Printlog " Check existence of import dialog"
+ Kontext "ExportCalc"
+ Call Dialogtest (ExportCalc)
+ if ExportCalc.exists(2) then
+ ExportCalc.ok
+ Printlog " - Import dialog is in function"
+ Kontext "DocumentCalc"
+ Call hCloseDocument
+ else
+ warnlog "DBF Import failed"
+ '/// Close starting document
+ Printlog " Close starting document"
+ Call hCloseDocument
+ end if
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFileOpenHTML
+
+ Dim sTestFile as string
+ Dim sTestFilter1 as string
+ Dim sTestFilter2 as string
+
+ sTestFile = convertpath(gTesttoolPath & "spreadsheet/required/input/HTML_Doc_Numberformats_in_table.html"
+ sTestFilter1 = hGetUIFiltername ("HTML (StarCalc)")
+ sTestFilter2 = hGetUIFiltername ("calc_HTML_WebQuery")
+
+ Printlog " Opening new spreadsheet document for getting defined starting environment"
+ Call hNewDocument
+ Printlog " Open File-Open-dialog"
+ FileOpen
+ waitslot (5)
+ Kontext "OeffnenDlg"
+ Printlog " Enter filename spreadsheet/required/input/HTML_Doc_Numberformats_in_table.html"
+ Dateiname.settext (sTestFile)
+ Printlog " Choose Calc HTML filter"
+ Call hSelectUIFilter (sTestFilter1)
+ Printlog " Click on Open"
+ Oeffnen.Click
+ Kontext "HTMLImportOptions"
+ Printlog " Use every control on dialog Import Options"
+ Custom.Check
+ CustomLanguage.GetItemCount
+ Automatic.Check
+ DetectSpecialNumbers.Check
+ HTMLImportOptions.OK
+ sleep (2)
+ Printlog " Close recent document"
+ Call hCloseDocument
+ Printlog " Retry with Calc Web Querry filter"
+ Printlog " Open File-Open-dialog"
+ FileOpen
+ waitslot (5)
+ Kontext "OeffnenDlg"
+ Printlog " Enter filename spreadsheet/required/input/HTML_Doc_Numberformats_in_table.html"
+ Dateiname.settext (sTestFile)
+ Printlog " Choose Calc Web Query filter"
+ Call hSelectUIFilter (sTestFilter2)
+ Printlog " Click on Open"
+ Oeffnen.Click
+ Kontext "HTMLImportOptions"
+ Printlog " Use every control on dialog Import Options"
+ Custom.Check
+ CustomLanguage.GetItemCount
+ Automatic.Check
+ DetectSpecialNumbers.Check
+ HTMLImportOptions.OK
+ sleep (2)
+ Printlog " Close recent document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFileRecentDocuments
+
+'if gPlatform = "lin" then
+' warnlog "#110649# Due to bug this testcase is not available"
+' goto endsub
+'end if
+
+ dim sTestFile as string
+
+ '/// Open new Spreadsheet document
+ Printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enter some text
+ Printlog " Enter some text"
+ Kontext "DocumentCalc"
+ DocumentCalc.Typekeys "The first doc!<RETURN>"
+
+ Printlog " Copy Test File spreadsheet/required/input/recentdocument.ods locally"
+ hFileOpenLocally( gTesttoolpath & "spreadsheet\required\input\recentdocument.ods" )
+ sTestFile = gLastWorkFile ' get the new file location
+
+ 'app.FileCopy convertpath(gTesttoolpath & "spreadsheet\required\input\recentdocument.ods"),gOfficePath + ConvertPath("user/work/recentdocument.ods")
+ 'Printlog " Load local copied testfile recentdocument.ods"
+ 'sTestFile = convertpath(gOfficePath & "user/work/recentdocument.ods")
+ 'Call hFileOpen(sTestFile)
+ '/// Close the document.
+ Printlog " Close the document."
+ '/// Now an item in <i>File / Recent Documents</i> should exist
+ Call hCloseDocument
+ '/// Reopen Document using the menu <i>File / Recent Documents</i>
+ Printlog " Reopen Document using the menu File / Recent Documents"
+ Kontext "DocumentCalc"
+ DocumentCalc.UseMenu
+ hMenuSelectNr(1)
+ hMenuSelectNr(3)
+ hMenuSelectNr(1)
+ '/// Check that cell A1 has value "Recent document"
+ Printlog " Check that cell A1 has value Recent document"
+ Kontext "DocumentCalc"
+ if fCalcGetCellValue ("A1") = "Recent document" then
+ Printlog " - Loading most recent Document seems to work"
+ else
+ 'Sometimes the recent doc is loaded in background (#i80533#)
+ if fCalcGetCellValue ("A1") = "The first doc!" then
+ QAErrorLog "Recent document is loaded in background (#i80533#)"
+ Kontext "DocumentCalc"
+ DocumentCalc.UseMenu
+ hMenuSelectNr(8) 'Open Window menu
+ hMenuSelectNr(hMenuItemGetCount) 'Select last loaded document
+ 'Check that cell A1 has value "Recent document"
+ Call fCalcCompareCellValue ("A1","Recent document")
+ else
+ warnlog "Loading most recent Document seems to fail"
+ end if
+ end if
+ '/// Close recent document
+ Printlog " Close recent document"
+ Call hCloseDocument
+ '/// Close starting document
+ Printlog " Close starting document"
+ Call hCloseDocument
+ Printlog " Delete local copy of the workfile"
+ hFileDelete( sTestFile )
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFileClose
+
+ '/// Open new Spreadsheet document
+ Printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enter some text
+ Printlog " Enter some text"
+ Kontext "DocumentCalc"
+ DocumentCalc.Typekeys "Test <RETURN>"
+ '/// Close document via File / Close
+ Printlog " Close document via File / Close"
+ FileClose
+ '/// Close Messagebox via Cancel
+ Printlog " Close Messagebox via Cancel"
+ Kontext "Active"
+ Active.Cancel
+ Kontext "DocumentCalc"
+ FileClose
+ '/// Close Messagebox via Save
+ Printlog " Close Messagebox via Save"
+ Kontext "Active"
+ Active.Yes
+ '///+ Check if Save Dialog exists
+ Printlog " Check if Save Dialog exists"
+ Kontext "SpeichernDlg"
+ if SpeichernDlg.Exists then
+ SpeichernDlg.Cancel
+ else
+ Kontext "Active"
+ if Active.Exists then
+ Warnlog Active.Gettext
+ Active.Ok
+ else
+ Warnlog "Dialog to Save document isn't up!"
+ end if
+ end if
+ Kontext "DocumentCalc"
+ FileClose
+ '/// Close Messagebox via Discard
+ Printlog " Close Messagebox via Discard"
+ Kontext "Active"
+ Active.No
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFileSave
+
+ '/// Opening new spreadsheet document
+ Printlog " Opening new spreadsheet document"
+ Call hNewDocument
+ '/// Enter some text
+ Printlog " Enter some text"
+ Kontext "DocumentCalc"
+ DocumentCalc.Typekeys "Test <RETURN>"
+ '///Open SAVE dialog via File-Save
+ Printlog "Open SAVE dialog via File-Save"
+ FileSave
+ Kontext "SpeichernDlg"
+ Call DialogTest (SpeichernDlg)
+ '/// Click "Up one level"
+ Printlog " Click Up one level"
+ UebergeordneterOrdner.Click
+ '/// Click "Default directory"
+ Printlog " Click Default directory"
+ Standard.Click
+ '/// Click "New Folder"
+ Printlog " Click New Folder"
+ NeuerOrdner.Click
+ Kontext "NeuerOrdner"
+ Call DialogTest ( NeuerOrdner )
+ '/// Cancel New Folder
+ Printlog " Cancel New Folder"
+ NeuerOrdner.Cancel
+ Kontext "SpeichernDlg"
+ '/// Enable save with passwort
+ Printlog " Enable save with passwort"
+ Passwort.Check
+ '/// Enter filename tFileSave
+ Printlog " Enter filename tFileSave"
+ Dateiname.settext "tFileSave"
+ '/// Click on SAVE button
+ Printlog " Click on SAVE button"
+ Speichern.Click
+ Kontext "PasswordFileSave"
+ Call DialogTest (PasswordFileSave)
+ '/// Set password
+ Password.SetText "OpenSource"
+ '/// Now enter wrong confirmation
+ PasswordConfirm.SetText "CloseSource"
+ '/// Try to leave dialog with OK
+ PasswordFileSave.Ok
+ '/// MsgBox warning for wrong password confirmation should be visible
+ Kontext
+ if Active.exists(4) then
+ if Active.GetRT = 304 then
+ '/// Confirm warning
+ Printlog " - Wrong passwort has been detected successfully."
+ Active.OK
+ end if
+ else
+ warnlog "There is no messagebox because of a wrong password. Aborting!"
+ Call hCloseDocument
+ goto endsub
+ end if
+ Kontext "PasswordFileSave"
+ '/// Leave dialog with Cancel
+ PasswordFileSave.Cancel
+ Kontext "DocumentCalc"
+ '/// Open SAVE dialog via File-Save again
+ Printlog " Open SAVE dialog via File-Save again"
+ FileSave
+ Kontext "SpeichernDlg"
+ '/// Close dialog with Cancel
+ SpeichernDlg.Cancel
+ '/// Close document
+ Printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFileSaveAsDBF
+
+ Dim UIFilter as string
+ Dim bStatus as boolean
+
+ Printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ Printlog " Fill two cells (10, Test)"
+ Kontext "DocumentCalc"
+ DocumentCalc.Typekeys "10 <TAB> Test <RETURN>"
+ Printlog " Open 'SaveAs' dialog"
+ FileSaveAs
+ Kontext "SpeichernDlg"
+ Printlog " Enter filename 'dbf-Test_update'"
+ DateiName.SetText "dbf-Test_update"
+ Printlog " Choose file typ dBase"
+ UIFilter = hGetUIFiltername ( "dBase" )
+ bStatus = hSelectUIFilter ( UIFilter )
+ if ( not bStatus ) then
+ warnlog "Filter not found"
+ SpeichernDlg.Cancel
+ Call hCloseDocument
+ goto endsub
+ end if
+ Printlog " Click on Save button"
+ Speichern.click
+ Printlog " Commit overwrite warning if file already exists"
+ Kontext
+ if Active.exists(2) then
+ Active.Yes
+ end if
+ Printlog " Check alien file format warning"
+ Kontext "AlienWarning"
+ if AlienWarning.exists(2) then
+ Printlog " Commit if exists"
+ AlienWarning.OK
+ else
+ warnlog "Alien file format warning is missing -> Check this out!"
+ end if
+ Printlog " Check existence of export encoding dialog"
+ Kontext "ExportCalc"
+ Call DialogTest (ExportCalc)
+ Printlog " Accept dialog by OK"
+ ExportCalc.OK
+ Kontext
+ if Active.exists(2) then
+ printlog " "
+ warnlog "#i87325# - Unexpected messagebox"
+ Printlog Active.GetText
+ Printlog " "
+ Active.OK
+ end if
+ Printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFileVersions
+
+ '/// Open new Spreadsheet document
+ Printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enter some text
+ Printlog " Enter some text"
+ Kontext "DocumentCalc"
+ DocumentCalc.Typekeys "Test <RETURN>"
+ '/// Save document as "user/work/version.ods"
+ Printlog " Save document as 'user/work/version.ods'"
+ Call hFileSaveAsKill convertpath(gOfficePath & "user/work/version.ods")
+ '/// Open File-Versions
+ Printlog " Open File-Versions"
+ FileVersions
+ Kontext "Versionen"
+ Call DialogTest (Versionen)
+ '/// Click 'Save New Versions' button
+ Printlog " Click 'Save New Versions' button"
+ Speichern.click
+ Kontext "VersionskommentarEingeben"
+ '/// Check existence of comments dialog
+ Call DialogTest(VersionskommentarEingeben)
+ '/// Cancel comments dialog
+ Printlog " Cancel comments dialog"
+ VersionskommentarEingeben.Cancel
+ Kontext "Versionen"
+ '/// Close versions dialog
+ Printlog " Close versions dialog"
+ Versionen.close
+ '/// Close document
+ Printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFilePagePreview
+
+ '/// Open new Spreadsheet document
+ Printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enter some text
+ Printlog " Enter some text"
+ Kontext "DocumentCalc"
+ DocumentCalc.Typekeys "Test <RETURN>"
+ '/// Open File-PagePreview
+ Printlog " Open File-PagePreview"
+ FilePageView
+ Kontext "Previewbar"
+ Call DialogTest (Previewbar)
+' Printlog " Switch to fullscreen mode"
+' GanzerBildschirm.Click
+' Kontext "FullScreenbar"
+' printlog " Disable fullscreen mode"
+' FullScreen.click
+' Kontext "Previewbar"
+ printlog " Enable Margins"
+ try
+ Margins.Click
+ catch
+ warnlog "Pagemargins does not exists."
+ endcatch
+ printlog " Check availability of the scaling slider"
+ if Not ScalingFactor.IsEnabled then
+ warnlog "Scalingslider is not available"
+ end if
+ '/// Close page preview with button in toolbar
+ Printlog " Close page preview with button in toolbar"
+ Seitenansicht.Click
+ '/// Close document
+ Printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
diff --git a/testautomation/spreadsheet/required/includes/c_upd_formatmenu.inc b/testautomation/spreadsheet/required/includes/c_upd_formatmenu.inc
new file mode 100644
index 000000000000..3ca188c3a8ee
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_formatmenu.inc
@@ -0,0 +1,947 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - Format Menu Part I
+'*
+'************************************************************************
+'*
+' #1 tFormatDefaultFormatting
+' #1 tFormatCells
+' #1 tFormatRow
+' #1 tFormatColumn
+' #1 tFormatSheet
+' #1 tFormatMergeCells
+' #1 tFormatPage
+'*
+'\***********************************************************************
+
+sub c_upd_formatmenu
+
+ Printlog Chr(13) + "--------- Format Menu Part I (c_upd_formatmenu.inc) ---------"
+
+ call tFormatDefaultFormatting
+ call tFormatCells
+ call tFormatRow
+ call tFormatColumn
+ call tFormatSheet
+ call tFormatMergeCells
+ call tFormatPage
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tFormatDefaultFormatting
+'///<u><b>Format - Default Formatting</b></u>
+
+ '/// Opening new spreadsheet document for getting defined starting environment
+ printlog " Opening new spreadsheet document for getting defined starting environment"
+ call hNewDocument
+ '/// Select cell A1:D4
+ printlog " Select cell A1:D4"
+ call fCalcSelectRange ("A1:D4")
+ '/// Use 'Format – Default Formatting
+ printlog " Use 'Format – Default Formatting"
+ FormatDefaultCalc
+ '/// Close starting document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatCells
+'///<u><b>Format - Cells</b></u>
+
+ Dim bAsianLanguage as boolean
+ Dim bCTLlanguage as boolean
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Format Cells' – dialog by 'Format – Cells'
+ printlog " Open 'Format Cells' – dialog by 'Format – Cells'"
+ FormatCells
+ '/// Switch to tabpage 'Numbers'
+ printlog " Switch to tabpage 'Numbers'"
+ Kontext
+ active.SetPage TabZahlen
+ Kontext "TabZahlen"
+ Call DialogTest ( TabZahlen )
+ '/// Verify that there are 11 items in the 'Category' list
+ printlog " Verify that there are 11 items in the 'Category' list"
+ if Kategorie.GetItemCount <> 11 then
+ warnlog "The number of categories are" & Kategorie.GetItemCount & " instead of 11"
+ end if
+ '/// Choose category 'Currency' (5th in list)
+ printlog " Choose category 'Currency' (5th in list)"
+ Kategorie.Select 5
+ '/// Verify that the 'Format' now contains a language listbox
+ printlog " Verify that the 'Format' now contains a language listbox"
+ if FormatSprache.Exists then
+ '/// Verify that the 'Language' listbox has items
+ printlog " Verify that the 'Language' listbox has items"
+ if FormatSprache.GetItemCount < 1 then
+ warnlog "The language listbox is empty"
+ end if
+ else
+ warnlog "There is no languagelistbox"
+ end if
+ '/// Type 'Test' in editfield for 'Format code'
+ printlog " Type 'Test' in editfield for 'Format code'"
+ FormatCode.SetText "Test"
+ '/// Press 'Edit Comment' button
+ printlog " Press 'Edit Comment' button"
+ PBInfo.Click
+ '/// Enter 'My Format' in the comment field
+ printlog " Enter 'My Format' in the comment field"
+ Kommentar.SetText "My Format"
+ '/// Press 'Edit Comment' button again to finish the input
+ printlog " Press 'Edit Comment' button again to finish the input"
+ PBInfo.Click
+ '/// Press the 'Add' button
+ printlog " Press the 'Add' button"
+ PBHinzufuegen
+ '/// Press the 'Delete' button
+ printlog " Press the 'Delete' button"
+ PBEntfernen
+ '/// Close 'Format Cells' – dialog with 'Cancel'
+ printlog " Close 'Format Cells' – dialog with 'Cancel'"
+ TabZahlen.Close
+
+ '/// Enable language support for CJK and CTL (Tools-Options-Language Support)
+ printlog " Enable language support for CJK and CTL (Tools-Options-Language Support)"
+ bAsianLanguage = ActiveDeactivateAsianSupport(TRUE)
+ bCTLLanguage = ActiveDeactivateCTLSupport(TRUE)
+ '/// Open 'Format Cells' – dialog by 'Format – Cells'
+ printlog " Open 'Format Cells' – dialog by 'Format – Cells'"
+ FormatCells
+ '/// Switch to tabpage 'Font'
+ printlog " Switch to tabpage 'Font'"
+ Kontext
+ active.SetPage TabFont
+ Kontext "TabFont"
+ Call DialogTest ( TabFont,2 )
+ '/// Verify that the fontlistbox for 'Western text font' has items
+ printlog " Verify that the fontlistbox for 'Western text font' has items"
+ if FontWest.GetItemCount < 1 then
+ warnlog "The fontlistbox is empty"
+ end if
+ '/// Verify that the Typeface listbox for 'Western text font' has items
+ printlog " Verify that the Typeface listbox for 'Western text font' has items"
+ if StyleWest.GetItemCount < 1 then
+ warnlog "The stylelistbox is empty"
+ end if
+ '/// Verify that the Size listbox for 'Western text font' has items
+ printlog " Verify that the Size listbox for 'Western text font' has items"
+ if SizeWest.GetItemCount < 1 then
+ warnlog "The sizelistbox is empty"
+ end if
+ '/// Verify that the Languag for 'Western text font'e listbox has items
+ printlog " Verify that the Languag for 'Western text font'e listbox has items"
+ if LanguageWest.GetItemCount < 1 then
+ warnlog "The languagelistbox is empty"
+ end if
+ '/// Verify that the fontlistbox for 'Asian text font' has items
+ printlog " Verify that the fontlistbox for 'Asian text font' has items"
+ if FontEast.GetItemCount < 1 then
+ warnlog "The fontlistbox is empty"
+ end if
+ '/// Verify that the Typeface listbox for 'Asian text font' has items
+ printlog " Verify that the Typeface listbox for 'Asian text font' has items"
+ if StyleEast.GetItemCount < 1 then
+ warnlog "The stylelistbox is empty"
+ end if
+ '/// Verify that the Size listbox for 'Asian text font' has items
+ printlog " Verify that the Size listbox for 'Asian text font' has items"
+ if SizeEast.GetItemCount < 1 then
+ warnlog "The sizelistbox is empty"
+ end if
+ '/// Verify that the Language for 'Asian text font'e listbox has items
+ printlog " Verify that the Language for 'Asian text font'e listbox has items"
+ if LanguageEast.GetItemCount < 1 then
+ warnlog "The languagelistbox is empty"
+ end if
+ '/// Verify that the fontlistbox for 'CTL font' has items
+ printlog " Verify that the fontlistbox for 'CTL font' has items"
+ if FontCTL.GetItemCount < 1 then
+ warnlog "The fontlistbox is empty"
+ end if
+ '/// Verify that the Typeface listbox for 'CTL font' has items
+ printlog " Verify that the Typeface listbox for 'CTL font' has items"
+ if StyleCTL.GetItemCount < 1 then
+ warnlog "The stylelistbox is empty"
+ end if
+ '/// Verify that the Size listbox for 'CTL font' has items
+ printlog " Verify that the Size listbox for 'CTL font' has items"
+ if SizeCTL.GetItemCount < 1 then
+ warnlog "The sizelistbox is empty"
+ end if
+ '/// Verify that the Language listbox for 'CTL font' has items
+ printlog " Verify that the Language listbox for 'CTL font' has items"
+ if LanguageCTL.GetItemCount < 1 then
+ warnlog "The languagelistbox is empty"
+ end if
+
+ '/// Switch to tabpage 'Font Effects'
+ printlog " Switch to tabpage 'Font Effects'"
+ Kontext
+ active.SetPage TabFontEffects
+ Kontext "TabFontEffects"
+ Call DialogTest ( TabFontEffects )
+ '/// Choose second entry for 'Underlining'
+ printlog " Choose second entry for 'Underlining'"
+ Underline.Select 2
+ '/// Check that the 'Color' listbox is enabled
+ printlog " Check that the 'Color' listbox is enabled"
+ if not Color.IsEnabled then
+ warnlog "The colorbox is not enabled"
+ end if
+ '/// Choose second entry for 'Strikethrough'
+ printlog " Choose second entry for 'Strikethrough'"
+ StrikeThrough.Select 2
+ '/// Check that the 'IndividualWords' checkbox is enabled
+ printlog " Check that the 'IndividualWords' checkbox is enabled"
+ if not IndividualWords.IsEnabled then
+ warnlog "The checkbox for IndividualWords is not enabled"
+ end if
+ '/// Choose first entry for 'Relief' (without)
+ printlog " Choose first entry for 'Relief' (without)"
+ Relief.Select 1
+ '/// Check Outline
+ printlog " Check Outline"
+ if Outline.IsEnabled then
+ Outline.Check
+ end if
+ '/// Check Shadow
+ printlog " Check Shadow"
+ if Shadow.IsEnabled then
+ Shadow.Check
+ end if
+ '/// Choose second entry for 'Emphasis mark'
+ printlog " Choose second entry for 'Emphasis mark'"
+ Emphasis.Select 2
+ '/// Check that the 'Position' listbox is enabled
+ printlog " Check that the 'Position' listbox is enabled"
+ if not Position.IsEnabled then
+ warnlog "The Position listbox is disabled"
+ end if
+ '/// Check that the 'Font Color' listbox has items
+ printlog " Check that the 'Font Color' listbox has items"
+ if FontColor.GetItemCount < 1 then
+ warnlog "The fontcolorbox is empty"
+ end if
+
+ '/// Switch to tabpage 'Alignment'
+ printlog " Switch to tabpage 'Alignment'"
+ Kontext
+ active.SetPage TabAusrichtung
+ Kontext "TabAusrichtung"
+ Call DialogTest ( TabAusrichtung )
+ '/// Choose second entry for 'Horizontal'
+ printlog " Choose second entry for 'Horizontal'"
+ ListeHAusrichtung.Select 2
+ '/// Increase the 'Indent'
+ printlog " Increase the 'Indent'"
+ if Einzug.IsEnabled then
+ Einzug.More
+ end if
+ '/// Check that the 'Vertical' listbox has items
+ printlog " Check that the 'Vertical' listbox has items"
+ if ListeVAusrichtung.GetItemCount < 1 then
+ warnlog "The 'Vertical' listbox is empty"
+ end if
+ '/// Check 'Vertically stacked' checkbox
+ printlog " Check 'Vertically stacked' checkbox"
+ Gestapelt.Check
+ if not VertikaleAusrichtung.IsEnabled then
+ warnlog "The 'Asian layout mode is not enabled"
+ end if
+ '/// Uncheck 'Vertically stacked' checkbox
+ printlog " Uncheck 'Vertically stacked' checkbox"
+ Gestapelt.Uncheck
+ '/// Increse the 'Degrees'
+ printlog " Increse the 'Degrees'"
+ Grad.More
+ '/// Check 'Wrap text automatically' checkbox
+ printlog " Check 'Wrap text automatically' checkbox"
+ Zeilenumbruch.Check
+ '/// Verify that the 'Hyphenation active' checkbox is enabled
+ printlog " Verify that the 'Hyphenation active' checkbox is enabled"
+ if not Silbentrennung.IsEnabled then
+ warnlog "The hypenation checkbox is not enabled"
+ end if
+ '/// Uncheck 'Wrap text automatically' checkbox
+ printlog " Uncheck 'Wrap text automatically' checkbox"
+ Zeilenumbruch.UnCheck
+ '/// Verify that the 'Shrink to fit cell size' checkbox is enabled
+ printlog " Verify that the 'Shrink to fit cell size' checkbox is enabled"
+ if not ShrinkToFit.IsEnabled then
+ warnlog "The 'Shrink to fit cell size' checkbox is disabled"
+ end if
+ '/// Check that the 'Text direction' listbox has items
+ printlog " Check that the 'Text direction' listbox has items"
+ if SetAlignmentOptions.GetItemCount < 1 then
+ warnlog "The 'Text direction' listbox is empty"
+ end if
+
+ '/// Switch to tabpage 'Asian Typography'
+ printlog " Switch to tabpage 'Asian Typography'"
+ Kontext
+ active.SetPage TabAsianTypography
+ Kontext "TabAsianTypography"
+ Call DialogTest ( TabAsianTypography )
+ '/// Verify that the checkbox for 'Apply list...' exists
+ printlog " Verify that the checkbox for 'Apply list...' exists"
+ if not ApplyList.Exists then
+ warnlog "The checkbox does not exists"
+ end if
+ '/// Verify that the checkbox for 'Allow hanging punctation' exists
+ printlog " Verify that the checkbox for 'Allow hanging punctation' exists"
+ if not AllowHangingPunctuation.Exists then
+ warnlog "The checkbox does not exists"
+ end if
+ '/// Verify that the checkbox for 'Apply spacing...' exists
+ printlog " Verify that the checkbox for 'Apply spacing...' exists"
+ if not ApplySpacingBetween.Exists then
+ warnlog "The checkbox does not exists"
+ end if
+
+ '/// Switch to tabpage 'Borders'
+ printlog " Switch to tabpage 'Borders'"
+ Kontext
+ active.SetPage TabUmrandung
+ Kontext "TabUmrandung"
+ Call DialogTest ( TabUmrandung )
+ '/// Verify that the 'Line Style' listbox has items
+ printlog " Verify that the 'Line Style' listbox has items"
+ if Stil.GetItemCount < 1 then
+ warnlog "The 'Line Style' listbox is empty"
+ end if
+ '/// Verify that the 'Color' listbox has items
+ printlog " Verify that the 'Color' listbox has items"
+ if StilFarbe.GetItemCount < 1 then
+ warnlog "The 'Line Color' listbox is empty"
+ end if
+ '/// Increase 'left'
+ printlog " Increase 'left'"
+ Links.More
+ '/// Decrease 'Right'
+ printlog " Decrease 'Right'"
+ Rechts.Less
+ '/// Increase 'Top'
+ printlog " Increase 'Top'"
+ Oben.More
+ '/// Decrease 'Bottom'
+ printlog " Decrease 'Bottom'"
+ Unten.Less
+ '/// Check checkbox 'Synchronize'
+ printlog " Check checkbox 'Synchronize'"
+ Synchronisieren.Check
+ '/// Choose second position for 'Shadow Style'
+ printlog " Choose second position for 'Shadow Style'"
+ Position.TypeKeys "<Right>"
+ '/// Increase 'Distance'
+ printlog " Increase 'Distance'"
+ Groesse.More
+ '/// Verify that the 'Color' listbox has items
+ printlog " Verify that the 'Color' listbox has items"
+ if SchattenFarbe.GetItemCount < 1 then
+ warnlog "The listbox for color is empty"
+ end if
+
+ '/// Switch to tabpage 'Background'
+ printlog " Switch to tabpage 'Background'"
+ Kontext
+ active.SetPage TabHintergrund
+ Kontext "TabHintergrund"
+ Call DialogTest ( TabHintergrund )
+
+ '/// Switch to tabpage 'Cell Protection'
+ printlog " Switch to tabpage 'Cell Protection'"
+ Kontext
+ active.SetPage TabZellschutz
+ Kontext "TabZellschutz"
+ Call DialogTest ( TabZellschutz )
+ '/// Use every checkbox
+ printlog " Use every checkbox"
+ AllesAusblenden.Uncheck
+ Gesperrt.Check
+ FormelAusblenden.Uncheck
+ FuerAusdruckAusblenden.Uncheck
+ '/// Close 'Format Cells' – dialog with 'Cancel'
+ printlog " Close 'Format Cells' – dialog with 'Cancel'"
+ TabZellschutz.Close
+ '/// Set support for CJK and CTL back to default (Tools – Options – Language Support)
+ printlog " Set support for CJK and CTL back to default (Tools – Options – Language Support)"
+ if bAsianLanguage = FALSE then
+ Call ActiveDeactivateAsianSupport(FALSE)
+ end if
+ if bCTLLanguage = FALSE then
+ Call ActiveDeactivateCTLSupport(FALSE)
+ end if
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatRow
+'///<u><b>Format - Row</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Row Height' – dialog by 'Format – Row – Height'
+ printlog " Open 'Row Height' – dialog by 'Format – Row – Height'"
+ FormatRowHeightCalc
+ Kontext "ZeilenHoehe"
+ DialogTest ( ZeilenHoehe
+ '/// Increase 'Height'
+ printlog " Increase 'Height'"
+ Hoehe.More
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ ZeilenHoehe.Close
+ '/// Open 'Optimal Row Height' – dialog by 'Format – Row – Optimal Height'
+ printlog " Open 'Optimal Row Height' – dialog by 'Format – Row – Optimal Height'"
+ FormatRowOptimalHeightCalc
+ Kontext "ZeileOptimaleHoehe"
+ DialogTest ( ZeileOptimaleHoehe )
+ '/// Increase 'Height'
+ printlog " Increase 'Height'"
+ Extra.More
+ '/// Check 'Default Value'
+ printlog " Check 'Default Value'"
+ StandardWert.Check
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ ZeileOptimaleHoehe.Cancel
+ '/// Hide row with 'Format – Row – Hide'
+ printlog " Hide row with 'Format – Row – Hide'"
+ FormatRowHide
+ '/// Show row with 'Format – Row – Show'
+ printlog " Show row with 'Format – Row – Show'"
+ FormatRowShow
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatColumn
+'///<u><b>Format - Column</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Column Width' – dialog by 'Format – Column – Width'
+ printlog " Open 'Column Width' – dialog by 'Format – Column – Width'"
+ FormatColumnWidthCalc
+ Kontext "SpaltenBreiteCalc"
+ DialogTest ( SpaltenBreiteCalc )
+ '/// Increase 'Width'
+ printlog " Increase 'Width'"
+ Breite.More
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ SpaltenBreiteCalc.Cancel
+ '/// Open 'Optimal Column Width' – dialog by 'Format – Column – Optimal Width'
+ printlog " Open 'Optimal Column Width' – dialog by 'Format – Column – Optimal Width'"
+ FormatColumnOptimalWidthCalc
+ Kontext "SpalteOptimaleBreite"
+ DialogTest ( SpalteOptimaleBreite )
+ '/// Increase 'Width'
+ printlog " Increase 'Width'"
+ Extra.More
+ '/// Check 'Default Value'
+ printlog " Check 'Default Value'"
+ StandardWert.Check
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ SpalteOptimaleBreite.Cancel
+ '/// Hide Column with 'Format – Column – Hide'
+ printlog " Hide Column with 'Format – Column – Hide'"
+ FormatColumnHide
+ '/// Show Column with 'Format – Column – Show'
+ printlog " Show Column with 'Format – Column – Show'"
+ FormatColumnShow
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatSheet
+'///<u><b>Format - Sheet</b></u>
+
+ Dim bAsianLanguage as boolean
+ Dim bCTLlanguage as boolean
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Rename Sheet' – dialog by 'Format – Sheet'
+ printlog " Open 'Rename Sheet' – dialog by 'Format – Sheet'"
+ FormatSheetRename
+ Kontext "TabelleUmbenennen"
+ DialogTest ( TabelleUmbenennen )
+ '/// Close 'Rename Sheet' – dialog with 'Cancel'
+ printlog " Close 'Rename Sheet' – dialog with 'Cancel'"
+ TabelleUmbenennen.Cancel
+ '/// 'Hide' sheet by 'Format – Sheet – Hide'
+ printlog " 'Hide' sheet by 'Format – Sheet – Hide'"
+ FormatSheetHide
+ '/// Open 'Show Sheet' – dialog by 'Format – Sheet – Show'
+ printlog " Open 'Show Sheet' – dialog by 'Format – Sheet – Show'"
+ FormatSheetShow
+ Kontext "TabelleEinblenden"
+ DialogTest ( TabelleEinblenden )
+ '/// Close 'Show Sheet' – dialog with 'Cancel'
+ printlog " Close 'Show Sheet' – dialog with 'Cancel'"
+ TabelleEinblenden.Cancel
+ '/// Enable language support for CJK and CTL (Tools-Options-Language Support)
+ printlog " Enable language support for CJK and CTL (Tools-Options-Language Support)"
+ bAsianLanguage = ActiveDeactivateAsianSupport(TRUE)
+ bCTLLanguage = ActiveDeactivateCTLSupport(TRUE)
+ '/// Switch sheet layout to 'Right-To-Left' by 'Format – Sheet – Right-To-Left'
+ printlog " Switch sheet layout to 'Right-To-Left' by 'Format – Sheet – Right-To-Left'"
+ FormatSheetRightToLeft
+ '/// Switch sheet layout back
+ printlog " Switch sheet layout back"
+ FormatSheetRightToLeft
+ '/// Set support for CJK and CTL back to default (Tools – Options – Language Support)
+ printlog " Set support for CJK and CTL back to default (Tools – Options – Language Support)"
+ if bAsianLanguage = FALSE then
+ Call ActiveDeactivateAsianSupport(FALSE)
+ end if
+ if bCTLLanguage = FALSE then
+ Call ActiveDeactivateCTLSupport(FALSE)
+ end if
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatMergeCells
+'///<u><b>Format - Merge Cells</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Select cells A1:D4
+ printlog " Select cells A1:D4"
+ call fCalcSelectRange ("A1:D4")
+ '/// 'Merge Cells' by 'Format – Merge Cells'
+ printlog " 'Merge Cells' by 'Format – Merge Cells'"
+ FormatMergeCells
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatPage
+'///<u><b>Format - Page</b></u>
+
+ Dim bAsianLanguage as boolean
+ Dim bCTLlanguage as boolean
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enable language support for CJK and CTL (Tools-Options-Language Support)
+ printlog " Enable language support for CJK and CTL (Tools-Options-Language Support)"
+ bAsianLanguage = ActiveDeactivateAsianSupport(TRUE)
+ bCTLLanguage = ActiveDeactivateCTLSupport(TRUE)
+ '/// Open 'Page Style' – dialog with 'Format – Page'
+ printlog " Open 'Page Style' – dialog with 'Format – Page'"
+ FormatPageCalc
+
+ '/// Switch to tabpage 'Organizer'
+ printlog " Switch to tabpage 'Organizer'"
+ Kontext
+ active.SetPage TabVerwalten
+ Kontext "TabVerwalten"
+ Call DialogTest ( TabVerwalten )
+
+ '/// Switch to tabpage 'Page'
+ printlog " Switch to tabpage 'Page'"
+ Kontext
+ active.SetPage TabSeite
+ Kontext "TabSeite"
+ Call DialogTest ( TabSeite )
+ '/// Check that the 'Format' listbox has items
+ printlog " Check that the 'Format' listbox has items"
+ if Papierformat.GetItemCount < 1 then
+ warnlog "No paperformats available"
+ end if
+ '/// Increase 'Width'
+ printlog " Increase 'Width'"
+ Breite.More
+ '/// Decrease 'Height'
+ printlog " Decrease 'Height'"
+ Hoehe.Less
+ '/// Check option 'Landscape'
+ printlog " Check option 'Landscape'"
+ Quer.Check
+ '/// Check that listbox 'Text direction' has items
+ printlog " Check that listbox 'Text direction' has 2 items"
+ if Textfluss.GetItemCount <> 2 then
+ warnlog "The text direction listbox is empty"
+ end if
+ '/// Check that listbox 'Paper tray' has items
+ printlog " Check that listbox 'Paper tray' has items"
+ if Schacht.GetItemCount < 1 then
+ warnlog "The paper tray listbox is empty"
+ end if
+ '/// Increase 'Margins Left'
+ printlog " Increase 'Margins Left'"
+ Links.More
+ '/// Decrease 'Margins Right'
+ printlog " Decrease 'Margins Right'"
+ Rechts.Less
+ '/// Increase 'Margins Top'
+ printlog " Increase 'Margins Top'"
+ Oben.More
+ '/// Decrease 'Margins Bottom'
+ printlog " Decrease 'Margins Bottom'"
+ Unten.Less
+ '/// Check that listbox 'Page layout' has items
+ printlog " Check that listbox 'Page layout' has items"
+ if Seitenlayout.GetItemCount < 1 then
+ warnlog "No pagelayouts available"
+ end if
+ '/// Check that listbox 'Format' has items
+ printlog " Check that listbox 'Format' has items"
+ if Numerierung.GetItemCount < 1 then
+ warnlog "No formats available"
+ end if
+ '/// Check 'Table alignment Horizontal'
+ printlog " Check 'Table alignment Horizontal'"
+ Horizontal.Check
+ '/// Check 'Table alignment Vertical'
+ printlog " Check 'Table alignment Vertical'"
+ Vertikal.Check
+
+ '/// Switch to tabpage 'Borders'
+ printlog " Switch to tabpage 'Borders'"
+ Kontext
+ active.SetPage TabUmrandung
+ Kontext "TabUmrandung"
+ Call DialogTest ( TabUmrandung )
+ '/// Verify that listbox 'Style' has items
+ printlog " Verify that listbox 'Style' has items"
+ if Stil.GetItemCount < 1 then
+ warnlog "No styles available"
+ end if
+ '/// Verify that the listbox 'Color' has items
+ printlog " Verify that the listbox 'Color' has items"
+ if StilFarbe.GetItemCount < 1 then
+ warnlog "No style colors available"
+ end if
+ '/// Increase 'Spacing to contents Left'
+ printlog " Increase 'Spacing to contents Left'"
+ Links.More
+ '/// Decrease 'Spacing to contents Right'
+ printlog " Decrease 'Spacing to contents Right'"
+ Rechts.Less
+ '/// Increase 'Spacing to contents Top'
+ printlog " Increase 'Spacing to contents Top'"
+ Oben.More
+ '/// Decrease 'Spacing to contents Bottom'
+ printlog " Decrease 'Spacing to contents Bottom'"
+ Unten.Less
+ '/// Check 'Synchronize'
+ printlog " Check 'Synchronize'"
+ Synchronisieren.Check
+ '/// Choose second position for 'Shadow Style'
+ printlog " Choose second position for 'Shadow Style'"
+ Position.TypeKeys "<Right>"
+ '/// Increase 'Distance'
+ printlog " Increase 'Distance'"
+ Groesse.More
+ '/// Verify that the 'Color' listbox has items
+ printlog " Verify that the 'Color' listbox has items"
+ if SchattenFarbe.GetItemCount < 1 then
+ warnlog "The listbox for color is empty"
+ end if
+
+ '/// Switch to tabpage 'Background'
+ printlog " Switch to tabpage 'Background'"
+ Kontext
+ active.SetPage TabHintergrund
+ Kontext "TabHintergrund"
+ '/// Choose first entry 'Color'
+ printlog " Choose first entry 'Color'"
+ Als.Select 1
+ Call DialogTest ( TabHintergrund,1 )
+ '/// Choose next color
+ printlog " Choose next color"
+ Hintergrundfarbe.TypeKeys "<Down>"
+ '/// Choose second entry 'Graphic'
+ printlog " Choose second entry 'Graphic'"
+ Als.Select 2
+ Call DialogTest ( TabHintergrund,2 )
+ '/// Click on 'Browse' – button
+ printlog " Click on 'Browse' – button"
+ Durchsuchen.Click
+ Kontext "GrafikEinfuegenDlg"
+ Call DialogTest (GrafikEinfuegenDlg)
+ '/// Enter filename 'global\input\graf_inp\'
+ printlog " Enter filename 'global\input\graf_inp\borabora.jpg'"
+ Dateiname.Settext convertpath(gTesttoolpath + "global\input\graf_inp\borabora.jpg")
+ '/// Verify that there are more than one filter available
+ printlog " Verify that there are more than one filter available"
+ if Dateityp.GetItemCount < 2 then
+ warnlog "The filterlist is empty"
+ end if
+ '/// Check 'Link' – option
+ printlog " Check 'Link' – option"
+ Link.Check
+ '/// Check 'Preview' - option
+ printlog " Check 'Preview' - option"
+ Preview.Check
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ GrafikEinfuegenDlg.Cancel
+ Kontext "TabHintergrund"
+ '/// Choose 'Type' 'Position'
+ printlog " Choose 'Type' 'Position'"
+ Position.Check
+ '/// Check 'Preview'
+ printlog " Check 'Preview'"
+ Vorschau.Check
+
+ '/// Switch to tabpage 'Header'
+ printlog " Switch to tabpage 'Header'"
+ Kontext
+ active.SetPage TabKopfzeile
+ Kontext "TabKopfzeile"
+ Call DialogTest ( TabKopfzeile )
+ '/// Check option 'Header on'
+ printlog " Check option 'Header on'"
+ KopfzeileMitAbstand.Check
+ '/// Check option 'Same content left/right'
+ printlog " Check option 'Same content left/right'"
+ InhaltLinksRechtsGleich.Check
+ '/// Increase 'Left margin'
+ printlog " Increase 'Left margin'"
+ LinkerRandKopfzeile.More
+ '/// Decrease 'Right margin'
+ printlog " Decrease 'Right margin'"
+ RechterRandKopfzeile.Less
+ '/// Increase 'Spacing'
+ printlog " Increase 'Spacing'"
+ Abstand.More
+ '/// Decrease 'Height'
+ printlog " Decrease 'Height'"
+ Hoehe.Less
+ '/// Check option 'AutoFit height'
+ printlog " Check option 'AutoFit height'"
+ Hoehedynamisch.Check
+ '/// Click 'More' – button
+ printlog " Click 'More' – button"
+ Zusaetze.Click
+ '/// Switch to tabpage 'Borders'
+ printlog " Switch to tabpage 'Borders'"
+ Kontext
+ Active.SetPage TabUmrandung
+ Kontext "TabUmrandung"
+ Call DialogTest (TabUmrandung)
+ '/// Switch to tabpage 'Background'
+ printlog " Switch to tabpage 'Background'"
+ Kontext
+ active.SetPage TabHintergrund
+ Kontext "TabHintergrund"
+ '/// Choose first entry 'Color'
+ printlog " Choose first entry 'Color'"
+ Als.Select 1
+ Call DialogTest ( TabHintergrund,1 )
+ '/// Choose second entry 'Graphic'
+ printlog " Choose second entry 'Graphic'"
+ Als.Select 2
+ Call DialogTest ( TabHintergrund,2 )
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ TabHintergrund.Cancel
+ '/// Press 'Edit' – button
+ printlog " Press 'Edit' – button"
+ Kontext "TabKopfzeile"
+ Bearbeiten.Click
+ Kontext "TabKopfzeileCalc"
+ Call DialogTest ( TabKopfzeileCalc )
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ TabKopfzeileCalc.Cancel
+ '/// Switch to tabpage 'Footer'
+ printlog " Switch to tabpage 'Footer'"
+ Kontext
+ active.SetPage TabFusszeile
+ Kontext "TabFusszeile"
+ DialogTest (TabFusszeile)
+ '/// Check option 'Footer on'
+ printlog " Check option 'Footer on'"
+ FusszeileMitAbstand.Check
+ '/// Check option 'Same content left/right'
+ printlog " Check option 'Same content left/right'"
+ InhaltLinksRechtsGleich.Check
+ '/// Increase 'Left margin'
+ printlog " Increase 'Left margin'"
+ LinkerRandFusszeile.More
+ '/// Decrease 'Right margin'
+ printlog " Decrease 'Right margin'"
+ RechterRandFusszeile.Less
+ '/// Increase 'Spacing'
+ printlog " Increase 'Spacing'"
+ Abstand.More
+ '/// Decrease 'Height'
+ printlog " Decrease 'Height'"
+ Hoehe.Less
+ '/// Check option 'AutoFit height'
+ printlog " Check option 'AutoFit height'"
+ Hoehedynamisch.Check
+ '/// Click 'More' – button
+ printlog " Click 'More' – button"
+ Zusaetze.Click
+ '/// Switch to tabpage 'Borders'
+ printlog " Switch to tabpage 'Borders'"
+ Kontext
+ Active.SetPage TabUmrandung
+ Kontext "TabUmrandung"
+ '/// Switch to tabpage 'Background'
+ printlog " Switch to tabpage 'Background'"
+ Kontext
+ active.SetPage TabHintergrund
+ Kontext "TabHintergrund"
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ TabHintergrund.Cancel
+ '/// Press 'Edit' – button
+ printlog " Press 'Edit' – button"
+ Kontext "TabFusszeile"
+ Bearbeiten.Click
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ Kontext "TabFusszeileCalc"
+ TabFusszeileCalc.Cancel
+
+ '/// Switch to tabpage 'Sheet'
+ printlog " Switch to tabpage 'Sheet'"
+ Kontext
+ active.SetPage TabTabelleCalc
+ Kontext "TabTabelleCalc"
+ '/// Check option 'Left to right, then down'
+ printlog " Check option 'Left to right, then down'"
+ SeitenreihenfolgeLinksRechts.Check
+ '/// Check option 'First page number'
+ printlog " Check option 'First page number'"
+ ErsteSeitenzahl.Check
+ '/// Increase 'Page number'
+ printlog " Increase 'Page number'"
+ NummerErsteSeite.More
+ '/// Check option 'Column and row headers'
+ printlog " Check option 'Column and row headers'"
+ ZeilenSpaltenKoepfe.Check
+ '/// Check option 'Grid'
+ printlog " Check option 'Grid'"
+ Tabellengitter.Check
+ '/// Check option 'Notes'
+ printlog " Check option 'Notes'"
+ Notizen.Check
+ '/// Check option 'Objects/grphics'
+ printlog " Check option 'Objects/grphics'"
+ GrafikenObjekte.Check
+ '/// Check option 'Charts'
+ printlog " Check option 'Charts'"
+ Diagramme.Check
+ '/// Check option 'Drawing objects'
+ printlog " Check option 'Drawing objects'"
+ Zeichenobjekte.Check
+ '/// Check option 'Formulas'
+ printlog " Check option 'Formulas'"
+ Formeln.Check
+ '/// Check option 'Zero values'
+ printlog " Check option 'Zero values'"
+ Nullwerte.Check
+ '/// Choose first 'Scaling mode' (Reduce/enlarge printout)
+ printlog " Choose first 'Scaling mode' (Reduce/enlarge printout)"
+ ScalingMode.Select 1
+ DialogTest ( TabTabelleCalc,1 )
+ '/// Increase 'scaling factor'
+ printlog " Increase 'scaling factor'"
+ SkalierungProzent.More
+ '/// Choose second 'Scaling mode' (Fit print range to width/height)
+ printlog " Choose second 'Scaling mode' (Fit print range to width/height)"
+ ScalingMode.Select 2
+ DialogTest ( TabTabelleCalc,2 )
+ '/// Increase 'Width in pages'
+ printlog " Increase 'Width in pages'"
+ ScalePageWidth.More
+ '/// Increase 'Height in pages'
+ printlog " Increase 'Height in pages'"
+ ScalePageHeight.More
+ '/// Choose third 'Scaling mode' (Fit print range on number of pages)
+ printlog " Choose third 'Scaling mode' (Fit print range on number of pages)"
+ ScalingMode.Select 3
+ DialogTest ( TabTabelleCalc,3 )
+ '/// Increase 'Number of pages'
+ printlog " Increase 'Number of pages'"
+ AnzahlMaxSeiten.More
+ '/// Close 'Page Style' – dialog with 'Cancel'
+ printlog " Close 'Page Style' – dialog with 'Cancel'"
+ TabTabelleCalc.Close
+ '/// Set support for CJK and CTL back to default (Tools – Options – Language Support)
+ printlog " Set support for CJK and CTL back to default (Tools – Options – Language Support)"
+ if bAsianLanguage = FALSE then
+ Call ActiveDeactivateAsianSupport(FALSE)
+ end if
+ if bCTLLanguage = FALSE then
+ Call ActiveDeactivateCTLSupport(FALSE)
+ end if
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
diff --git a/testautomation/spreadsheet/required/includes/c_upd_formatmenu2.inc b/testautomation/spreadsheet/required/includes/c_upd_formatmenu2.inc
new file mode 100644
index 000000000000..cc448d3c3830
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_formatmenu2.inc
@@ -0,0 +1,804 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - Format Menu Part II
+'*
+'\***********************************************************************
+
+sub c_upd_formatmenu2
+
+ Printlog Chr(13) + "--------- Format Menu Part II (c_upd_formatmenu2.inc) ---------"
+
+ call tFormatPrintRanges
+ call tFormatCharacter
+ call tFormatParagraph
+ call tFormatChangeCase
+ call tFormatStyles
+ call tFormatAutoFormat
+ call tFormatConditionalFormatting
+ call tFormatAnchor
+ call tFormatAlignment
+ call tFormatArrange
+ call tFormatFlip
+ call tFormatGroup
+ call tFormatControl 'testcase still under construction
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tFormatPrintRanges
+'///<u><b>Format - Print Ranges</b></u>
+
+ '/// Opening new spreadsheet document for getting defined starting environment
+ printlog " Opening new spreadsheet document for getting defined starting environment"
+ call hNewDocument
+ '/// Define a print range by 'Format – Print Ranges – Define'
+ printlog " Define a print range by 'Format – Print Ranges – Define'"
+ FormatPrintRangesDefine
+ '/// Add a print range by 'Format – Print Ranges – Add'
+ printlog " Add a print range by 'Format – Print Ranges – Add'"
+ FormatPrintRangesAdd
+ '/// Delete a print range by 'Format – Print Ranges – Delete'
+ printlog " Delete a print range by 'Format – Print Ranges – Delete'"
+ FormatPrintRangesRemove
+ '/// Open 'Edit Print Ranges' – dialog by 'Format – Print Ranges – Edit'
+ printlog " Open 'Edit Print Ranges' – dialog by 'Format – Print Ranges – Edit'"
+ FormatPrintRangesEdit
+ Kontext "DruckbereicheBearbeiten"
+ DialogTest ( DruckbereicheBearbeiten )
+ '/// Verify that there are four entries in 'Print range'
+ printlog " Verify that there are four entries in 'Print range'"
+ if not DruckbereichListe.GetItemCount = 4 then
+ warnlog "There are " & DruckbereichListe.GetItemCount & " items instead of 4"
+ end if
+ '/// Press 'Shrink' -button for 'Print Range'
+ printlog " Press 'Shrink' -button for 'Print Range'"
+ DruckbereichButton.Click
+ '/// Enlarge Rangechooser
+ printlog " Enlarge Rangechooser"
+ DruckbereichButton.Click
+ '/// Verify that there are two entries in 'Rows to repeat'
+ printlog " Verify that there are two entries in 'Rows to repeat'"
+ if not WiederholungszeileListe.GetItemCount = 2 then
+ warnlog "There are " & WiederholungszeileListe.GetItemCount & " items instead of 2"
+ end if
+ '/// Press 'Shrink' -button for 'Rows to repeat'
+ printlog " Press 'Shrink' -button for 'Rows to repeat'"
+ WiederholungszeileButton.Click
+ '/// Enlarge Rangechooser
+ printlog " Enlarge Rangechooser"
+ WiederholungszeileButton.Click
+ '/// Verify that there are two entries in 'Columns to repeat'
+ printlog " Verify that there are two entries in 'Columns to repeat'"
+ if not WiederholungsspalteListe.GetItemCount = 2 then
+ warnlog "There are " & WiederholungsspalteListe.GetItemCount & " items instead of 2"
+ end if
+ '/// Press 'Shrink' -button for 'Columns to repeat'
+ printlog " Press 'Shrink' -button for 'Columns to repeat'"
+ WiederholungsspalteButton.Click
+ '/// Enlarge Rangechooser
+ printlog " Enlarge Rangechooser"
+ WiederholungsspalteButton.Click
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ DruckbereicheBearbeiten.Cancel
+ '/// Close starting document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatCharacter
+'///<u><b>Format - Character</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ Kontext "DocumentCalc"
+ '/// Type 'Test'
+ printlog " Type 'Test'"
+ DocumentCalc.TypeKeys "Test"
+ '/// Open 'Character' – dialog by 'Format – Character'
+ printlog " Open 'Character' – dialog by 'Format – Character'"
+ FormatCharacter
+ '/// Switch to tabpage 'Font'
+ printlog " Switch to tabpage 'Font'"
+ Kontext
+ active.SetPage TabFont
+ kontext "TabFont"
+ Call DialogTest ( TabFont )
+ '/// Switch to tabpage 'Font Effects'
+ printlog " Switch to tabpage 'Font Effects'"
+ Kontext
+ active.SetPage TabFontEffects
+ kontext "TabFontEffects"
+ Call DialogTest ( TabFontEffects )
+ '/// Switch to tabpage 'Font Position'
+ printlog " Switch to tabpage 'Font Position'"
+ Kontext
+ active.SetPage TabFontPosition
+ kontext "TabFontPosition"
+ Call DialogTest ( TabFontPosition )
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ TabFontPosition.Close
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatParagraph
+'///<u><b>Insert - Paragraph</b></u>
+
+ Dim bAsianLanguage as boolean
+ Dim bCTLlanguage as boolean
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Enable language support for CJK and CTL (Tools-Options-Language Support)
+ printlog " Enable language support for CJK and CTL (Tools-Options-Language Support)"
+ bAsianLanguage = ActiveDeactivateAsianSupport(TRUE)
+ bCTLLanguage = ActiveDeactivateCTLSupport(TRUE)
+ '/// Insert a note via 'Insert – Note'
+ printlog " Insert a note via 'Insert – Note'"
+ InsertNoteCalc
+ Kontext
+ '/// Enter 'Test' in Note
+ printlog " Enter 'Test' in Note"
+ DocumentCalc.TypeKeys "Test"
+ '/// Open 'Paragraph' – dialog by 'Format – Paragraph'
+ printlog " Open 'Paragraph' – dialog by 'Format – Paragraph'"
+ FormatParagraph
+ '/// Switch to tabpage 'Indents & Spacing'
+ printlog " Switch to tabpage 'Indents & Spacing'"
+ Kontext
+ active.SetPage TabEinzuegeUndAbstaende
+ Kontext "TabEinzuegeUndAbstaende"
+ Call DialogTest ( TabEinzuegeUndAbstaende )
+ '/// Increase 'Before text'
+ printlog " Increase 'Before text'"
+ Vonlinks.More
+ '/// Increase 'After text'
+ printlog " Increase 'After text'"
+ VonRechts.More
+ '/// Increase 'First line'
+ printlog " Increase 'First line'"
+ ErsteZeile.More
+ '/// Increase 'Above paragraph'
+ printlog " Increase 'Above paragraph'"
+ Oben.More
+ '/// Increase 'Below paragraph'
+ printlog " Increase 'Below paragraph'"
+ Unten.More
+ '/// Choose last (6) entry in listbox 'Line spacing'
+ printlog " Choose last (6) entry in listbox 'Line spacing'"
+ Zeilenabstand.Select 6
+ '/// Increase 'Line spacing'
+ printlog " Increase 'Line spacing'"
+ If Von.IsEnabled then
+ Von.More
+ else qaerrorlog "Line Spacing wrong, maybe the sort of this listbox is different"
+ end if
+
+ '/// Switch to tabpage 'Alignment'
+ printlog " Switch to tabpage 'Alignment'"
+ Kontext
+ active.SetPage TabAusrichtungAbsatz
+ Kontext "TabAusrichtungAbsatz"
+ Call DialogTest ( TabAusrichtungAbsatz )
+ '/// Choose option 'Left/Top'
+ printlog " Choose option 'Left/Top'"
+ Links.Check
+ '/// Choose option 'Right/Bottom'
+ printlog " Choose option 'Right/Bottom'"
+ Rechts.Check
+ '/// Choose option 'Center'
+ printlog " Choose option 'Center'"
+ Zentriert.Check
+ '/// Choose option 'Justified'
+ printlog " Choose option 'Justified'"
+ Blocksatz.Check
+ '/// Verify that listbox 'Text direction' has entries
+ printlog " Verify that listbox 'Text direction' has entries"
+ if TextDirection.GetItemCount < 1 then
+ warnlog "The Textdirection listbox is empty"
+ end if
+
+ '/// Switch to tabpage 'Asian Typography'
+ printlog " Switch to tabpage 'Asian Typography'"
+ Kontext
+ active.SetPage TabAsianTypography
+ Kontext "TabAsianTypography"
+ Call DialogTest ( TabAsianTypography )
+ '/// Check checkbox for 'Apply list...'
+ printlog " Check checkbox for 'Apply list...'"
+ ApplyList.Check
+ '/// Check checkbox 'Allow...'
+ printlog " Check checkbox 'Allow...'"
+ AllowHangingPunctuation.Check
+ '/// Check checkbox 'Apply spacing...'
+ printlog " Check checkbox 'Apply spacing...'"
+ ApplySpacingBetween.Check
+
+ '/// Switch to tabpage 'Tab'
+ printlog " Switch to tabpage 'Tab'"
+ Kontext
+ active.SetPage TabTabulatoren
+ Kontext "TabTabulatoren"
+ Call DialogTest ( TabTabulatoren )
+ '/// Close 'Paragraph' – dialog with 'Cancel'
+ TabTabulatoren.Close
+
+ '/// Close Note by <ESC>
+ printlog " Close Note by <ESC>"
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys "<ESCAPE>"
+ '/// Set support for CJK and CTL back to default (Tools – Options – Language Support)
+ printlog " Set support for CJK and CTL back to default (Tools – Options – Language Support)"
+ if bAsianLanguage = FALSE then
+ Call ActiveDeactivateAsianSupport(FALSE)
+ end if
+ if bCTLLanguage = FALSE then
+ Call ActiveDeactivateCTLSupport(FALSE)
+ end if
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatChangeCase
+'///<u><b>Format - Change Case</b></u>
+
+ Dim bAsianLanguage as boolean
+ Dim bCTLlanguage as boolean
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enable language support for CJK and CTL (Tools-Options-Language Support)
+ printlog " Enable language support for CJK and CTL (Tools-Options-Language Support)"
+ bAsianLanguage = ActiveDeactivateAsianSupport(TRUE)
+ bCTLLanguage = ActiveDeactivateCTLSupport(TRUE)
+ '/// Change case by 'Format – Change Case – Uppercase'
+ printlog " Change case by 'Format – Change Case – Uppercase'"
+ FormatChangeCaseUpper
+ '/// Change case by 'Format – Change Case – Lowercase'
+ printlog " Change case by 'Format – Change Case – Lowercase'"
+ FormatChangeCaseLower
+ '/// Change case by 'Format – Change Case – Halfwidth'
+ printlog " Change case by 'Format – Change Case – Halfwidth'"
+ FormatChangeCaseHalfwidth
+ '/// Change case by 'Format – Change Case – Fullwidth'
+ printlog " Change case by 'Format – Change Case – Fullwidth'"
+ FormatChangeCaseFullwidth
+ '/// Change case by 'Format – Change Case – Hiragana'
+ printlog " Change case by 'Format – Change Case – Hiragana'"
+ FormatChangeCaseHiragana
+ '/// Change case by 'Format – Change Case – Katagana'
+ printlog " Change case by 'Format – Change Case – Katagana'"
+ FormatChangeCaseKatagana
+ '/// Set support for CJK and CTL back to default (Tools – Options – Language Support)
+ printlog " Set support for CJK and CTL back to default (Tools – Options – Language Support)"
+ if bAsianLanguage = FALSE then
+ Call ActiveDeactivateAsianSupport(FALSE)
+ end if
+ if bCTLLanguage = FALSE then
+ Call ActiveDeactivateCTLSupport(FALSE)
+ end if
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatStyles
+'///<u><b>Format - Styles and Formatting</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Stylist' by 'Format – Styles and Formatting'
+ printlog " Open 'Stylist' by 'Format – Styles and Formatting'"
+ FormatStylist
+ Kontext "Gestalter"
+ if Gestalter.notexists (2) then
+ FormatStylist
+ Kontext "Gestalter"
+ end if
+ '/// Click on button 'Cell Styles'
+ printlog " Click on button 'Cell Styles'"
+ Zellvorlagen.Click
+ DialogTest ( Gestalter,1 )
+ '/// Click on button 'Fill Format Mode' to turn mode on
+ printlog " Click on button 'Fill Format Mode' to turn mode on"
+ Giesskanne.Click
+ '/// Click again on button 'Fill Format Mode' to turn mode off
+ printlog " Click again on button 'Fill Format Mode' to turn mode off"
+ Giesskanne.Click
+ '/// Click on button 'NewStyle from Selection'
+ printlog " Click on button 'NewStyle from Selection'"
+ AusSelektion.Click
+ Kontext "VorlageErzeugen"
+ DialogTest ( VorlageErzeugen )
+ '/// Type name 'Teststyle'
+ printlog " Type name 'Teststyle'"
+ Vorlagenname.SetText "Teststyle"
+ '/// Close 'Create Style' – dialog with 'Cancel'
+ printlog " Close 'Create Style' – dialog with 'Cancel'"
+ VorlageErzeugen.Cancel
+ Kontext "Gestalter"
+ '/// Click on button 'Update Style'
+ printlog " Click on button 'Update Style'"
+ Aktualisieren.Click
+ '/// Click on button 'Page Styles'
+ printlog " Click on button 'Page Styles'"
+ Absatzvorlagen.Click
+ '/// Close 'Stylist' by 'Format – Styles and Formatting
+ printlog " Close 'Stylist' by 'Format – Styles and Formatting"
+ Kontext "Gestalter"
+ Gestalter.Close
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatAutoFormat
+'///<u><b>Format - AutoFormat/b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Select cells A1:E6
+ printlog " Select cells A1:E6"
+ Call fCalcSelectRange ("A1:E6")
+ '/// Open 'AutoFormat' – dialog by 'Format – AutoFormat'
+ printlog " Open 'AutoFormat' – dialog by 'Format – AutoFormat'"
+ FormatAutoformat
+ Kontext "AutoformatCalc"
+ '/// Click on 'More' – button
+ Zusaetze.Click
+ Call DialogTest ( AutoformatCalc )
+ '/// Verify that the 'Format' – listbox has items
+ printlog " Verify that the 'Format' – listbox has items"
+ if FormatListe.GetItemCount < 1 then
+ warnlog "The formatlist is empty"
+ end if
+ '/// Click on 'Add' – button
+ printlog " Click on 'Add' – button"
+ Einfuegen.Click
+ Kontext "AutoFormatHinzufuegenCalc"
+ Call DialogTest ( AutoFormatHinzufuegenCalc )
+ '/// Enter name 'Testformat'
+ printlog " Enter name 'Testformat'"
+ TabellenName.SetText "Testformat"
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ AutoFormatHinzufuegenCalc.Close
+ Kontext "AutoformatCalc"
+ '/// Select second entry in 'Format' – listbox
+ printlog " Select second entry in 'Format' – listbox"
+ FormatListe.Select 2
+ '/// Click on 'Rename' – button
+ printlog " Click on 'Rename' – button"
+ Umbenennen.Click
+ Kontext "RenameAutoFormat"
+ Call DialogTest ( RenameAutoFormat )
+ '/// Set format name to 'Newformat'
+ printlog " Set format name to 'Newformat'"
+ RenameAutoFormatName.SetText "Newformat"
+ '/// Close 'Rename AutoFormat' – dialog with 'Cancel'
+ printlog " Close 'Rename AutoFormat' – dialog with 'Cancel'"
+ RenameAutoFormat.Cancel
+ Kontext "AutoformatCalc"
+ '/// Click on 'Delete' – button
+ printlog " Click on 'Delete' – button"
+ Loeschen.Click
+ '/// Close messagebox with 'Yes'
+ Kontext
+ Active.No
+ Kontext "AutoformatCalc"
+ '/// Check 'Number format'
+ printlog " Check 'Number format'"
+ Zahlenformat.Check
+ '/// Check 'Borders'
+ printlog " Check 'Borders'"
+ Umrandung.Check
+ '/// Check 'Font'
+ printlog " Check 'Font'"
+ Schriftart.Check
+ '/// Check 'Pattern'
+ printlog " Check 'Pattern'"
+ Muster.Check
+ '/// Check 'Alignment'
+ printlog " Check 'Alignment'"
+ Ausrichtung.Check
+ '/// Check 'AutoFit width and height'
+ printlog " Check 'AutoFit width and height'"
+ BreiteHoeheAnpassen.Check
+ '/// Close 'AutoFormat' – dialog with 'Cancel'
+ printlog " Close 'AutoFormat' – dialog with 'Cancel'"
+ AutoformatCalc.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatConditionalFormatting
+'///<u><b>Format - Conditional Formatting</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Conditional Formatting' – dialog by 'Format – Conditional Formatting'
+ printlog " Open 'Conditional Formatting' – dialog by 'Format – Conditional Formatting'"
+ FormatConditionalFormatting
+ Kontext "BedingteFormatierung"
+ Call DialogTest ( BedingteFormatierung )
+ '/// Check 'Condition 1'
+ printlog " Check 'Condition 1'"
+ Bedingung1.Check
+ '/// Choose first entry (Cell value is)
+ printlog " Choose first entry (Cell value is)"
+ PopupList1.Select 1
+ '/// Choose first criteria for comparison (equal to)
+ printlog " Choose first criteria for comparison (equal to)"
+ Vergleich1.Select 1
+ '/// Click on 'Shrink' – button
+ printlog " Click on 'Shrink' – button"
+ Minimieren1.Click
+ '/// Close rangechoser by 'Shrink' -button
+ printlog " Close rangechoser by 'Shrink' -button"
+ Minimieren1.Click
+ '/// Set string '12' in editfield
+ printlog " Set string '12' in editfield"
+ TextField1.SetText "12"
+ '/// Verify that the 'Cell style' listbox has items
+ printlog " Verify that the 'Cell style' listbox has items"
+ if Zellvorlage1.GetItemCount < 1 then
+ warnlog "The 'Cell style' listbox is empty"
+ end if
+ printlog " Click on NewStyle button"
+ NewStyle1.Click
+ Kontext
+ active.SetPage TabVerwalten
+ printlog " Close Style dialog"
+ Kontext "TabVerwalten"
+ TabVerwalten.Close
+ Kontext "BedingteFormatierung"
+ '/// Check 'Condition 2'
+ printlog " Check 'Condition 2'"
+ Bedingung2.Check
+ '/// Choose second entry 'Formula is'
+ printlog " Choose second entry 'Formula is'"
+ PopupList2.Select 2
+ '/// Click on 'Shrink' – button
+ printlog " Click on 'Shrink' – button"
+ Minimieren2.Click
+ '/// Close rangechoser by 'Shrink' -button
+ printlog " Close rangechoser by 'Shrink' -button"
+ Minimieren2.Click
+ '/// Check 'Condition 3'
+ printlog " Check 'Condition 3'"
+ Bedingung3.Check
+ '/// Choose first entry (Cell value is)
+ printlog " Choose first entry (Cell value is)"
+ PopupList3.Select 1
+ '/// Choose last criteria for comparision (not between)
+ printlog " Choose last criteria for comparision (not between)"
+ Vergleich3.Select 8
+ '/// Click on first 'Shrink' – button
+ printlog " Click on first 'Shrink' – button"
+ Minimieren3.Click
+ '/// Close rangechoser by 'Shrink' -button
+ printlog " Close rangechoser by 'Shrink' -button"
+ Minimieren3.Click
+ '/// Click on second 'Shrink' – button
+ printlog " Click on second 'Shrink' – button"
+ Minimieren32.Click
+ '/// Close rangechoser by 'Shrink' -button
+ printlog " Close rangechoser by 'Shrink' -button"
+ Minimieren32.Click
+ '/// Close 'Conditional Formatting' – dialog with 'Cancel'
+ printlog " Close 'Conditional Formatting' – dialog with 'Cancel'"
+ BedingteFormatierung.close
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatAnchor
+'///<u><b>Format - Anchor</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Go to cell D4
+ printlog " Go to cell D4"
+ Call fCalcSelectRange ("D4")
+ '/// Insert Picture by 'Insert – Picture – From File' global\input\graf_inp\borabora.jpg
+ printlog " Insert Picture by 'Insert – Picture – From File' global\input\graf_inp\borabora.jpg"
+ InsertGraphicsFromFile
+ Kontext "GrafikEinfuegenDlg"
+ Dateiname.Settext convertpath(gTesttoolpath + "global\input\graf_inp\borabora.jpg")
+ Oeffnen.Click
+ '/// Set Anchor to page by 'Format – Anchor – To Page'
+ printlog " Set Anchor to page by 'Format – Anchor – To Page'"
+ FormatAnchorToPageCalc
+ '/// Set Anchor to page by 'Format – Anchor – To Cell'
+ printlog " Set Anchor to page by 'Format – Anchor – To Cell'"
+ FormatAnchorToCell
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatAlignment
+'///<u><b>Format - Alignment</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Set Alignment to default by ' Format -Alignment - Default'
+ printlog " Set Alignment to default by ' Format -Alignment - Default'"
+ FormatAlignmentHorizontalDefaultCalc
+ '/// Set Alignment to Left by ' Format -Alignment - Left'
+ printlog " Set Alignment to Left by ' Format -Alignment - Left'"
+ FormatAlignmentLeftCalc
+ '/// Set Alignment to Centered by ' Format -Alignment – Centered'
+ printlog " Set Alignment to Centered by ' Format -Alignment – Centered'"
+ FormatAlignmentHorizontalCenterCalc
+ '/// Set Alignment to Right by ' Format -Alignment – Right'
+ printlog " Set Alignment to Right by ' Format -Alignment – Right'"
+ FormatAlignmentRightCalc
+ '/// Set Alignment to Justified by ' Format -Alignment – Justified'
+ printlog " Set Alignment to Justified by ' Format -Alignment – Justified'"
+ FormatAlignmentJustifiedCalc
+ '/// Set Alignment to Top by ' Format -Alignment – Top'
+ printlog " Set Alignment to Top by ' Format -Alignment – Top'"
+ FormatAlignmentTopCalc
+ '/// Set Alignment to Center by ' Format -Alignment – Center'
+ printlog " Set Alignment to Center by ' Format -Alignment – Center'"
+ FormatAlignmentverticalCenterCalc
+ '/// Set Alignment to Bottom by ' Format -Alignment – Bottom'
+ printlog " Set Alignment to Bottom by ' Format -Alignment – Bottom'"
+ FormatAlignmentBottomCalc
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+ '/// Load document from 'gTesttoolPath + "spreadsheet\required\input\twoobjects.ods"'
+ printlog " Load document from 'gTesttoolPath + spreadsheet\required\input\twoobjects.ods"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\required\input\twoobjects.ods" )
+ '/// Select first object by Navigator
+ printlog " Select first object by Navigator"
+ Call fNavigatorSelectObject ("drawing objects", 1)
+ '/// Select additional second drawing object by keyboard Strg-A
+ printlog " Select additional second drawing object by keyboard Strg-A"
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys "<Mod1 A>"
+ '/// Set Alignment to Left by ' Format -Alignment - Left'
+ printlog " Set Alignment to Left by ' Format -Alignment - Left'"
+ FormatAlignmentObjectLeftCalc
+ '/// Set Alignment to Centered by ' Format -Alignment – Centered'
+ printlog " Set Alignment to Centered by ' Format -Alignment – Centered'"
+ FormatAlignmentObjectCenteredCalc
+ '/// Set Alignment to Right by ' Format -Alignment – Right'
+ printlog " Set Alignment to Right by ' Format -Alignment – Right'"
+ FormatAlignmentObjectRightCalc
+ '/// Set Alignment to Top by ' Format -Alignment – Top'
+ printlog " Set Alignment to Top by ' Format -Alignment – Top'"
+ FormatAlignmentObjectTopCalc
+ '/// Set Alignment to Center by ' Format -Alignment – Center'
+ printlog " Set Alignment to Center by ' Format -Alignment – Center'"
+ FormatAlignmentObjectCenterCalc
+ '/// Set Alignment to Bottom by ' Format -Alignment – Bottom'
+ printlog " Set Alignment to Bottom by ' Format -Alignment – Bottom'"
+ FormatAlignmentObjectBottomCalc
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatArrange
+'///<u><b>Format - Arrange</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Insert Picture by 'Insert – Picture – From File' ...
+ printlog " Insert Picture by 'Insert – Picture – From File' ..."
+ InsertGraphicsFromFile
+ Kontext "GrafikEinfuegenDlg"
+ Dateiname.Settext convertpath(gTesttoolpath + "global\input\graf_inp\borabora.jpg")
+ Oeffnen.Click
+ '/// 'Format – Arrange – Bring to Front'
+ printlog " 'Format – Arrange – Bring to Front'"
+ FormatArrangeBringToFrontCalc
+ '/// 'Format – Arrange – Forward One'
+ printlog " 'Format – Arrange – Forward One'"
+ FormatArrangeBringForwardCalc
+ '/// 'Format – Arrange – Back One'
+ printlog " 'Format – Arrange – Back One'"
+ FormatArrangeSendBackwardCalc
+ '/// 'Format – Arrange – Send to Back'
+ printlog " 'Format – Arrange – Send to Back'"
+ FormatArrangeSendToBackCalc
+ '/// 'Format – Arrange – To Background'
+ printlog " 'Format – Arrange – To Background'"
+ FormatArrangeToBackgroundCalc
+ '/// 'Format – Arrange – To Foreground'
+ printlog " 'Format – Arrange – To Foreground'"
+ 'Sometimes the selection of the graphic get lost, then reselect by Navigator
+ try
+ FormatArrangeToForegroundCalc
+ catch
+ Call fNavigatorSelectObject ("graphics", 1)
+ FormatArrangeToForegroundCalc
+ endcatch
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatFlip
+'///<u><b>Format - Flip</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Insert Picture by 'Insert – Picture – From File' ...
+ printlog " Insert Picture by 'Insert – Picture – From File' ..."
+ InsertGraphicsFromFile
+ Kontext "GrafikEinfuegenDlg"
+ Dateiname.Settext convertpath(gTesttoolpath + "global\input\graf_inp\borabora.jpg")
+ Oeffnen.Click
+ '/// Flip picture by 'Format – Flip – Flip Vertically'
+ printlog " Flip picture by 'Format – Flip – Flip Vertically'"
+ FormatFlipVerticallyCalc
+ '/// Flip picture by 'Format – Flip – Flip Object Horizontally'
+ printlog " Flip picture by 'Format – Flip – Flip Object Horizontally'"
+ FormatFlipHorizontalCalc
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatGroup
+'///<u><b>Format - Group</b></u>
+
+ '/// Load document from 'gTesttoolPath + "spreadsheet\required\input\twoobjects.ods"'
+ printlog " Load document from 'gTesttoolPath + spreadsheet\required\input\twoobjects.ods"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\required\input\twoobjects.ods" )
+ '/// Select first object by Navigator
+ printlog " Select first object by Navigator"
+ Call fNavigatorSelectObject ("drawing objects", 1)
+ '/// Select additional second drawing object by keyboard Strg-A
+ printlog " Select additional second drawing object by keyboard Strg-A"
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys "<Mod1 A>"
+ '/// Group objects by 'Format - Group - Group
+ printlog " Group objects by 'Format - Group - Group"
+ FormatGroupGroup
+ '/// Enter Group by 'Format - Group - Enter'
+ printlog " Enter Group by 'Format - Group - Enter'"
+ FormatGroupEditGroupCalc
+ '/// Leave Group by 'Format - Group - Exit'
+ printlog " Leave Group by 'Format - Group - Exit'"
+ FormatExitGroupDraw
+ '/// Ungroup objects by 'Format - Group - Ungroup'
+ printlog " Ungroup objects by 'Format - Group - Ungroup'"
+ FormatUngroupDraw
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatControl
+'///<u><b>Format - Control</b></u>
+
+qaerrorlog "Testcase still under construction"
+goto endsub
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+'/// Insert Control Button
+printlog " Insert Control Button"
+
+'/// Open 'Properties' – dialog by 'Format – Control'
+printlog " Open 'Properties' – dialog by 'Format – Control'"
+'FormatControl
+'/// Switch to tabpage 'General'
+printlog " Switch to tabpage 'General'"
+
+'/// Switch to tabpage 'Events'
+printlog " Switch to tabpage 'Events'"
+
+'/// Close dialog by 'Format – Controls'
+printlog " Close dialog by 'Format – Controls'"
+
+'/// Open 'Form Properties' – dialog by 'Format – Form'
+printlog " Open 'Form Properties' – dialog by 'Format – Form'"
+'FormatForm
+'/// Switch to tabpage 'General'
+printlog " Switch to tabpage 'General'"
+
+'/// Switch to tabpage 'Data'
+printlog " Switch to tabpage 'Data'"
+
+'/// Switch to tabpage 'Events'
+printlog " Switch to tabpage 'Events'"
+
+'/// Close dialog by 'Format – Form'
+printlog " Close dialog by 'Format – Form'"
+
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
diff --git a/testautomation/spreadsheet/required/includes/c_upd_formatmenu3.inc b/testautomation/spreadsheet/required/includes/c_upd_formatmenu3.inc
new file mode 100644
index 000000000000..0dd9d3200937
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_formatmenu3.inc
@@ -0,0 +1,1051 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - Format Menu Part III
+'*
+'\***********************************************************************
+
+sub c_upd_formatmenu3
+
+ Printlog Chr(13) + "--------- Format Menu Part III (c_upd_formatmenu3.inc) ---------"
+
+ call tFormatGraphicPositionAndSize
+ call tFormatGraphicLine
+ call tFormatGraphicArea
+ call tFormatGraphicText
+ call tFormatGraphicPoints
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tFormatGraphicPositionAndSize
+'///<u><b>Format - Graphic – Position and Size</b></u>
+
+ '/// Load document from 'gTesttoolPath + "spreadsheet\required\input\twoobjects.ods"'
+ printlog " Load document from 'gTesttoolPath + spreadsheet\required\input\twoobjects.ods"
+ hFileOpenLocally( gTesttoolPath + "spreadsheet\required\input\twoobjects.ods" )
+ '/// Select first object by Navigator
+ printlog " Select first object by Navigator"
+ Call fNavigatorSelectObject ("drawing objects", 1)
+ '/// Open 'Position and Size' – dialog by 'Format – Graphic – Position and Size'
+ printlog " Open 'Position and Size' – dialog by 'Format – Graphic – Position and Size'"
+ FormatTransform
+
+ printlog
+ '/// Switch to tabpage 'Position and Size'
+ printlog " Switch to tabpage 'Position and Size'"
+ Kontext
+ Active.SetPage TabPositionAndSize
+ Kontext "TabPositionAndSize"
+ Call DialogTest ( TabPositionAndSize )
+ '/// Uncheck 'Position'
+ printlog " Uncheck 'Position'"
+ ProtectPosition.Uncheck
+ '/// Check 'Size'
+ printlog " Uncheck 'Size'"
+ ProtectSize.Uncheck
+ '/// Increase 'Position X'
+ printlog " Increase 'Position X'"
+ PositionX.More
+ '/// Decrease 'Position Y'
+ printlog " Decrease 'Position Y'"
+ PositionY.Less
+ '/// Increase 'Width'
+ printlog " Increase 'Width'"
+ Width.More
+ '/// Decrease 'Height'
+ printlog " Decrease 'Height'"
+ Height.Less
+ '/// Check 'Keep ratio'
+ printlog " Check 'Keep ratio'"
+ KeepRatio.Check
+
+ printlog ""
+ '/// Switch to tabpage 'Rotation'
+ printlog " Switch to tabpage 'Rotation'"
+ Kontext
+ Active.SetPage TabDrehung
+ Kontext "TabDrehung"
+ Call DialogTest ( TabDrehung )
+ '/// Increase 'Position X'
+ printlog " Increase 'Position X'"
+ PositionX.More
+ '/// Decrease 'Position Y'
+ printlog " Decrease 'Position Y'"
+ PositionY.Less
+ '/// Increase 'Angle'
+ printlog " Increase 'Angle'"
+ Winkel.More
+ '/// Switch to tabpage 'Slant & Corner Radius'
+ printlog " Switch to tabpage 'Slant & Corner Radius'"
+ Kontext
+ Active.SetPage TabSchraegstellen
+ Kontext "TabSchraegstellen"
+ Call DialogTest ( TabSchraegstellen )
+ '/// Increase radius
+ printlog " Increase radius"
+ Radius.More
+ '/// Increase angle
+ printlog " Increase angle"
+ Winkel.More
+ '/// Close 'Position and Size' – dialog by 'Cancel'
+ printlog " Close 'Position and Size' – dialog by 'Cancel'"
+ TabSchraegstellen.Close
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatGraphicLine
+'///<u><b>Format - Graphic - Line</b></u>
+
+ Dim sTitle as string
+
+ '/// Load document from 'gTesttoolPath + "spreadsheet\required\input\twoobjects.ods"'
+ printlog " Load document from 'gTesttoolPath + spreadsheet\required\input\twoobjects.ods"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\required\input\twoobjects.ods" )
+
+ '/// Select first object by Navigator
+ printlog " Select first object by Navigator"
+ Call fNavigatorSelectObject ("drawing objects", 1)
+ '/// Open 'Format – Line' dialog by 'Format – Graphic – Line'
+ printlog " Open 'Format – Line' dialog by 'Format – Graphic – Line'"
+ FormatLine
+ '/// Switch to tabpage 'Line'
+ printlog " Switch to tabpage 'Line'"
+ Kontext
+ active.setpage TabLinie
+ Kontext "TabLinie"
+ Call DialogTest ( TabLinie )
+ '/// Verify that the 'Style' listbox for 'Line properties' is not empty
+ printlog " Verify that the 'Style' listbox for 'Line properties' is not empty"
+ If Stil.GetItemCount < 1 then
+ warnlog "The listbox for styles is empty"
+ end if
+ '/// Verify that the 'Color' listbox for 'Line properties' is not empty
+ printlog " Verify that the 'Color' listbox for 'Line properties' is not empty"
+ If Farbe.GetItemCount < 1 then
+ warnlog "The listbox for colors is empty"
+ end if
+ '/// Increase 'Width'
+ printlog " Increase 'Width'"
+ Breite.More
+ '/// Increase 'Transparency'
+ printlog " Increase 'Transparency'"
+ Transparenz.More
+ '/// Uncheck 'Synchronize ends'
+ printlog " Uncheck 'Synchronize ends'"
+ EndenSynchronisieren.Uncheck
+ '/// Verify that the left 'Style' listbox for 'Arrow Styles' is not empty
+ printlog " Verify that the left 'Style' listbox for 'Arrow Styles' is not empty"
+ If StilLinks.GetItemCount < 1 then
+ warnlog "The listbox for styles is empty"
+ end if
+ printlog "Choose second entry"
+ StilLinks.Select 2
+ '/// Verify that the right 'Style' listbox for 'Arrow Styles' is not empty
+ printlog " Verify that the right 'Style' listbox for 'Arrow Styles' is not empty"
+ If StilRechts.GetItemCount < 1 then
+ warnlog "The listbox for styles is empty"
+ end if
+ printlog "Choose second entry"
+ StilRechts.Select 2
+ '/// Check the left 'Center' checkbox
+ printlog " Check the left 'Center' checkbox"
+ ZentriertLinks.Check
+ '/// Check the right 'Center' checkbox
+ printlog " Check the right 'Center' checkbox"
+ ZentriertRechts.Check
+ '/// Verify that the 'Style' listbox for 'Corner Style' is not empty
+ printlog " Verify that the 'Style' listbox for 'Corner Style' is not empty"
+ If CornerStyle.GetItemCount < 1 then
+ warnlog "The listbox for styles is empty"
+ end if
+
+ printlog ""
+ '/// Switch to tabpage 'Line Styles'
+ printlog " Switch to tabpage 'Line Styles'"
+ Kontext
+ active.setpage TabLinienstile
+ Kontext "TabLinienstile"
+ Call DialogTest ( TabLinienstile )
+ '/// Verify that the 'Line Style' listbox is not empty
+ printlog " Verify that the 'Line Style' listbox is not empty"
+ If Linienstil.GetItemCount < 1 then
+ warnlog "The listbox for styles is empty"
+ end if
+ '/// Choose first entry in left 'Type' listbox
+ printlog " Choose second entry in left 'Type' listbox"
+ TypLinks.Select 2
+ '/// Choose second entry in right 'Type' listbox
+ printlog " Choose second entry in right 'Type' listbox"
+ TypRechts.Select 2
+ '/// Increase left 'Number'
+ printlog " Increase left 'Number'"
+ AnzahlLinks.More
+ '/// Decrease right 'Number'
+ printlog " Decrease right 'Number'"
+ AnzahlRechts.Less
+ '/// Increase left 'Length'
+ printlog " Increase left 'Length'"
+ LaengeLinks.More
+ '/// Decrease right 'Length'
+ printlog " Decrease right 'Length'"
+ LaengeRechts.Less
+ '/// Increase 'Spacing'
+ printlog " Increase 'Spacing'"
+ Abstand.More
+ '/// Check 'Fit to line width'
+ printlog " Check 'Fit to line width'"
+ AnLinienbreite.Check
+ '/// Press 'Add' button
+ printlog " Press 'Add' button"
+ Hinzufuegen.Click
+ Kontext "NameDlg"
+ Call DialogTest ( NameDlg )
+ '/// Enter string 'Testlinestyle'
+ printlog " Enter string 'Testlinestyle'"
+ Eingabefeld.SetText "Testlinestyle"
+ '/// Close 'Name' dialog with 'Cancel'
+ printlog " Close 'Name' dialog with 'Cancel'"
+ NameDlg.Cancel
+ Kontext "TabLinienstile"
+ '/// Press 'Modify' button
+ printlog " Press 'Modify' button"
+ Aendern.Click
+ Kontext "NameDlg"
+ '/// Close 'Name' dialog with 'Cancel'
+ printlog " Close 'Name' dialog with 'Cancel'"
+ NameDlg.Cancel
+ Kontext "TabLinienstile"
+ '/// Press 'Delete' button
+ printlog " Press 'Delete' button"
+ Loeschen.Click
+ Kontext "Active"
+ '/// Close messagebox with 'No'
+ printlog " Close messagebox with 'No'"
+ Active.No
+ Kontext "TabLinienstile"
+ '/// Press 'Open' button
+ printlog " Press 'Open' button"
+ Oeffnen.click
+ Kontext "OeffnenDlg"
+ '/// Close 'Open' dialog with 'Cancel'
+ printlog " Close 'Open' dialog with 'Cancel'"
+ OeffnenDlg.Cancel
+ Kontext "TabLinienstile"
+ '/// Press 'Save' button
+ printlog " Press 'Save' button"
+ Speichern.click
+ Kontext "SpeichernDlg"
+ '/// Close 'Save' dialog with 'Cancel'
+ printlog " Close 'Save' dialog with 'Cancel'"
+ SpeichernDlg.Cancel
+ Kontext "TabLinienstile"
+
+ printlog ""
+ '/// Switch to tabpage 'Arrow Styles'
+ printlog " Switch to tabpage 'Arrow Styles'"
+ Kontext
+ active.setpage TabLinienenden
+ Kontext "Active"
+ If Active.Exists then
+ Kontext "Linienstil"
+ Linienstil.Cancel
+ end if
+ Kontext "TabLinienenden"
+ Call DialogTest ( TabLinienenden )
+ '/// Set 'Titel' to 'Test'
+ printlog " Set 'Titel' to 'Test'"
+ 'To get the Office back to the default the title must be memorized for restoring
+ sTitle = Textfeld.GetText
+ Textfeld.SetText "Test"
+ '/// Verify that the 'Arrow style' listbox is not empty
+ printlog " Verify that the 'Arrow style' listbox is not empty"
+ If Liste.GetItemCount < 1 then
+ warnlog "The style listbox is empty"
+ end if
+ '/// Press 'Add' button
+ printlog " Press 'Add' button"
+ Hinzufuegen.click
+ Kontext "NameDlg"
+ '/// Enter string 'Testlinestyle'
+ printlog " Enter string 'Testlinestyle'"
+ Eingabefeld.SetText "Testlinestyle"
+ '/// Close 'Name' dialog with 'Cancel'
+ printlog " Close 'Name' dialog with 'Cancel'"
+ NameDlg.Cancel
+ Kontext "TabLinienenden"
+ '/// Press 'Modify' button
+ printlog " Press 'Modify' button"
+ Aendern.Click
+ '/// Press 'Modify' button again
+ printlog " Press 'Modify' button again"
+ Aendern.Click
+ '/// Close messagebox with 'OK'
+ printlog " Close messagebox with 'OK'"
+ Kontext
+ if Active.exists (2) then
+ active.OK
+ end if
+ Kontext "NameDlg"
+ '/// Enter original title to restore defaults
+ printlog " Enter original title to restore defaults"
+ Eingabefeld.SetText sTitle
+ '/// Close 'Name' dialog with 'OK'
+ printlog " Close 'Name' dialog with 'OK'"
+ NameDlg.OK
+ Kontext "TabLinienenden"
+ '/// Press 'Delete' button
+ printlog " Press 'Delete' button"
+ Loeschen.Click
+ Kontext "Active"
+ '/// Close messagebox with 'No'
+ printlog " Close messagebox with 'No'"
+ active.no
+ Kontext "TabLinienenden"
+ '/// Press 'Open' button
+ printlog " Press 'Open' button"
+ Oeffnen.Click
+ Kontext "OeffnenDLG"
+ Kontext "Active"
+ If Active.Exists then
+ Active.No
+ end if
+ Kontext "OeffnenDLG"
+ '/// Close 'Open' dialog with 'Cancel'
+ printlog " Close 'Open' dialog with 'Cancel'"
+ OeffnenDLG.Cancel
+ Kontext "TabLinienenden"
+ '/// Press 'Save' button
+ printlog " Press 'Save' button"
+ Speichern.click
+ Kontext "SpeichernDLG"
+ '/// Close 'Save' dialog with 'Cancel'
+ printlog " Close 'Save' dialog with 'Cancel'"
+ SpeichernDLg.Cancel
+ Kontext "TabLinienenden"
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ TabLinienenden.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatGraphicArea
+'///<u><b>Format - - Graphic - Area</b></u>
+
+ '/// Load document from 'gTesttoolPath + "spreadsheet\required\input\twoobjects.ods"'
+ printlog " Load document from 'gTesttoolPath + spreadsheet\required\input\twoobjects.ods"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\required\input\twoobjects.ods" )
+ '/// Select first object by Navigator
+ printlog " Select first object by Navigator"
+ Call fNavigatorSelectObject ("drawing objects", 1)
+ '/// Open 'Format – Area' dialog by 'Format – Area'
+ printlog " Open 'Format – Area' dialog by 'Format – Area'"
+ FormatArea
+
+ printlog ""
+ '/// Switch to tabpage 'Area'
+ printlog " Switch to tabpage 'Area'"
+ Kontext
+ active.SetPage TabArea
+ Kontext "TabArea"
+ '/// Choose first entry (None) in 'Fill' listbox
+ printlog " Choose first entry (None) in 'Fill' listbox"
+ FillOptions.Select 1
+ Call DialogTest ( TabArea,1 )
+ '/// Choose second entry (Color) in 'Fill' listbox
+ printlog " Choose second entry (Color) in 'Fill' listbox"
+ FillOptions.Select 2
+ Call DialogTest ( TabArea,2 )
+ '/// Verify that the 'Color' listbox has items
+ printlog " Verify that the 'Color' listbox has items"
+ If ColourList.GetItemCount < 1 then
+ warnlog "The color list is empty"
+ end if
+ '/// Choose third entry (Gradient) in 'Fill' listbox
+ printlog " Choose third entry (Gradient) in 'Fill' listbox"
+ FillOptions.Select 3
+ Call DialogTest ( TabArea,3 )
+ '/// Verify that the 'Gradient' listbox has items
+ printlog " Verify that the 'Gradient' listbox has items"
+ If GradientList.GetItemCount < 1 then
+ warnlog "The gradient list is empty"
+ end if
+ '/// Uncheck 'Automatic'
+ printlog " Uncheck 'Automatic'"
+ Automatic.UnCheck
+ '/// Increase 'Increments'
+ printlog " Increase 'Increments'"
+ Increments.More
+ '/// Choose fourth entry (Hatching) in 'Fill' listbox
+ printlog " Choose fourth entry (Hatching) in 'Fill' listbox"
+ FillOptions.Select 4
+ Call DialogTest ( TabArea,4 )
+ '/// Verify that the 'Hatching' listbox has items
+ printlog " Verify that the 'Hatching' listbox has items"
+ If HatchingList.GetItemCount < 1 then
+ warnlog "The hatching list is empty"
+ end if
+ '/// Check 'Background color'
+ printlog " Check 'Background color'"
+ BackgroundColour.Check
+ '/// Verify that the 'Color' listbox has items
+ printlog " Verify that the 'Color' listbox has items"
+ If BackgroundColourList.GetItemCount < 1 then
+ warnlog "The color list is empty"
+ end if
+ '/// Choose fifth entry (Bitmaps) in 'Fill' listbox
+ printlog " Choose fifth entry (Bitmaps) in 'Fill' listbox"
+ FillOptions.Select 5
+ Call DialogTest ( TabArea,5 )
+ '/// Verify that the 'Bitmap' listbox has items
+ printlog " Verify that the 'Bitmap' listbox has items"
+ If BitmapList.GetItemCount < 1 then
+ warnlog "The bitmap list is empty"
+ end if
+ '/// Uncheck 'Original'
+ printlog " Uncheck 'Original'"
+ Original.UnCheck
+ '/// Increase 'Width'
+ printlog " Increase 'Width'"
+ Width.More
+ '/// Check 'Relative'
+ printlog " Check 'Relative'"
+ Relative.Check
+ '/// Decrease 'Height'
+ printlog " Decrease 'Height'"
+ Height.Less
+ '/// Check 'Tile'
+ printlog " Check 'Tile'"
+ Tile.Check
+ '/// Increase 'X Offset'
+ printlog " Increase 'X Offset'"
+ XOffset.More
+ '/// Increase 'Y Offset'
+ printlog " Increase 'Y Offset'"
+ YOffset.More
+ '/// Uncheck 'Tile'
+ printlog " Uncheck 'Tile'"
+ Tile.UnCheck
+ '/// Uncheck 'AutoFit'
+ printlog " Uncheck 'AutoFit'"
+ Stretch.UnCheck
+ '/// Check 'Tile'
+ printlog " Check 'Tile'"
+ Tile.Check
+ '/// Check 'Row'
+ printlog " Check 'Row'"
+ Row.Check
+ '/// Check 'Column'
+ printlog " Check 'Column'"
+ Column.Check
+ '/// Increase percentvalue
+ printlog " Increase percentvalue"
+ Offset.More
+
+ printlog ""
+ '/// Switch to tabpage 'Shadow'
+ printlog " Switch to tabpage 'Shadow'"
+ Kontext
+ active.SetPage TabSchatten
+ kontext "TabSchatten"
+ Call DialogTest ( TabSchatten )
+ '/// Check 'Use shadow'
+ printlog " Check 'Use shadow'"
+ Anzeigen.Check
+ '/// Increase 'Distance'
+ printlog " Increase 'Distance'"
+ Entfernung.More
+ '/// Verify that the 'Color' listbox has items
+ printlog " Verify that the 'Color' listbox has items"
+ if Farbe.getItemCount < 1 then
+ warnlog "The listbox for colors is empty"
+ end if
+ '/// Increase 'Transparency'
+ printlog " Increase 'Transparency'"
+ Transparenz.More
+
+ printlog ""
+ '/// Switch to tabpage 'Transparency'
+ printlog " Switch to tabpage 'Transparency'"
+ Kontext
+ active.SetPage TabTransparenz
+ Kontext "TabTransparenz"
+ Call DialogTest ( TabTransparenz )
+ '/// Check 'Transparency'
+ printlog " Check 'Transparency'"
+ LineareTransparenz.Check
+ '/// Increase percentvalue
+ printlog " Increase percentvalue"
+ MFLinTransparenz.More
+ '/// Check 'Gradient'
+ printlog " Check 'Gradient'"
+ Transparenzverlauf.Check
+ '/// Choose last entry (Square) for 'Type'
+ printlog " Choose last entry (Square) for 'Type'"
+ TransparenzverlaufTyp.Select 6
+ '/// Increase 'Center X'
+ printlog " Increase 'Center X'"
+ MFZentrumX.More
+ '/// Decrease 'Center Y'
+ printlog " Decrease 'Center Y'"
+ MFZentrumY.Less
+ '/// Increase 'Angle'
+ printlog " Increase 'Angle'"
+ MFWinkel.More
+ '/// Increase 'Border'
+ printlog " Increase 'Border'"
+ MFRand.More
+ '/// Increase 'Start value'
+ printlog " Increase 'Start value'"
+ MFStartwert.More
+ '/// Decrease 'End value'
+ printlog " Decrease 'End value'"
+ MFEndwert.Less
+
+ printlog ""
+ '/// Switch to tabpage 'Colors'
+ printlog " Switch to tabpage 'Colors'"
+ Kontext
+ active.SetPage TabFarben
+ Kontext "TabFarben"
+ Call DialogTest ( TabFarben )
+ '/// Enter colorname 'Color_added_by_Testtool'
+ printlog " Enter colorname 'Color_added_by_Testtool'"
+ FarbName.SetText "Color_added_by_Testtool"
+ '/// Verify that the color listbox is not empty
+ printlog " Verify that the color listbox is not empty"
+ if Farbe.getItemCount < 1 then
+ warnlog "The listbox for colors is empty"
+ end if
+ '/// Choose RGB
+ printlog " Choose RGB"
+ Farbmodell.Select 1
+ '/// Increase 'R'
+ printlog " Increase 'R'"
+ R.More
+ '/// Decrease 'G'
+ printlog " Decrease 'G'"
+ G.Less
+ '/// Increase 'B'
+ printlog " Increase 'B'"
+ B.More
+ '/// Choose 'CMYK'
+ printlog " Choose 'CMYK'"
+ Farbmodell.Select 2
+ '/// Increase 'C'
+ printlog " Increase 'C'"
+ C.More
+ '/// Decrease 'M'
+ printlog " Decrease 'M'"
+ M.Less
+ '/// Increase 'Y'
+ printlog " Increase 'Y'"
+ Y.More
+ '/// Decrease 'K'
+ printlog " Decrease 'K'"
+ K.Less
+ '/// Press 'Add' button
+ printlog " Press 'Add' button"
+ Hinzufuegen.Click
+ '/// Press 'Modify' button
+ printlog " Press 'Modify' button"
+ Aendern.Click
+ '/// Press 'Edit' button
+ printlog " Press 'Edit' button"
+ Bearbeiten.Click
+ Kontext "FarbeDlg"
+ Call DialogTest ( FarbeDlg )
+ '/// Increase 'Cyan'
+ printlog " Increase 'Cyan'"
+ Cyan.More
+ '/// Decrease 'Magenta'
+ printlog " Decrease 'Magenta'"
+ Magenta.Less
+ '/// Increase 'Yellow'
+ printlog " Increase 'Yellow'"
+ Yellow.More
+ '/// Decrease 'Key'
+ printlog " Decrease 'Key'"
+ Key.Less
+ '/// Increase 'Red'
+ printlog " Increase 'Red'"
+ Rot.More
+ '/// Decrease 'Green'
+ printlog " Decrease 'Green'"
+ Gruen.Less
+ '/// Increase 'Blue'
+ printlog " Increase 'Blue'"
+ Blau.More
+ '/// Increase 'Hue'
+ printlog " Increase 'Hue'"
+ Farbton.More
+ '/// Decrease 'Saturation'
+ printlog " Decrease 'Saturation'"
+ Saettigung.Less
+ '/// Increase 'Brightness'
+ printlog " Increase 'Brightness'"
+ Hell.More
+ '/// Press left arrow button
+ printlog " Press left arrow button"
+ Links.Click
+ '/// Press right arrow button
+ printlog " Press right arrow button"
+ Rechts.Click
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ FarbeDlg.Cancel
+ Kontext "TabFarben"
+ '/// Press 'Delete' button
+ printlog " Press 'Delete' button"
+ Loeschen.Click
+ '/// Close messagebox with 'Yes'
+ printlog " Close messagebox with 'Yes'"
+ Kontext "Active"
+ Active.Yes
+ Kontext "TabFarben"
+ '/// Press 'Open' button to open 'File open' dialog
+ printlog " Press 'Open' button to open 'File open' dialog"
+ Oeffnen.click
+ '/// A messagebox that the modified list is not saved appears. Click 'No'
+ printlog " A messagebox that the modified list is not saved appears. Click 'No'"
+ Kontext "Active"
+ Active.No
+ '/// Close 'Open' dialog with 'Cancel'
+ printlog " Close 'Open' dialog with 'Cancel'"
+ Kontext "OeffnenDLG"
+ OeffnenDLG.Cancel
+ Kontext "TabFarben"
+ '/// Press 'Save' button to open 'Save as' dialog
+ printlog " Press 'Save' button to open 'Save as' dialog"
+ Speichern.Click
+ Kontext "SpeichernDLG"
+ '/// Close 'Save' dialog with 'Cancel'
+ printlog " Close 'Save' dialog with 'Cancel'"
+ SpeichernDLG.Cancel
+
+ printlog ""
+ '/// Switch to tabpage 'Gradients'
+ printlog " Switch to tabpage 'Gradients'"
+ Kontext
+ active.SetPage TabFarbverlaeufe
+ Kontext "TabFarbverlaeufe"
+ '/// Choose last entry (Rectangular) in 'Type' listbox
+ printlog " Choose last entry (Rectangular) in 'Type' listbox"
+ Typ.Select 6
+ '/// Increase 'Center X'
+ printlog " Increase 'Center X'"
+ ZentrumX.More
+ '/// Decrease 'Center Y'
+ printlog " Decrease 'Center Y'"
+ ZentrumY.Less
+ '/// Increase 'Angle'
+ printlog " Increase 'Angle'"
+ Winkel.More
+ '/// Increase 'Border'
+ printlog " Increase 'Border'"
+ Rand.More
+ '/// Choose second entry in 'From' listbox
+ printlog " Choose second entry in 'From' listbox"
+ Von.Select 2
+ '/// Decrease percentvalue
+ printlog " Decrease percentvalue"
+ VonWert.Less
+ '/// Choose fifth entry in 'To' listbox
+ printlog " Choose fifth entry in 'To' listbox"
+ Bis.Select 5
+ '/// Decrease percentvalue
+ printlog " Decrease percentvalue"
+ BisWert.Less
+ '/// Press 'Add' button to open 'Name' dialog
+ printlog " Press 'Add' button to open 'Name' dialog"
+ Hinzufuegen.Click
+ Kontext "NameDlg"
+ '/// Close 'name' dialog with 'Cancel'
+ printlog " Close 'name' dialog with 'Cancel'"
+ NameDlg.Cancel
+ Kontext "TabFarbverlaeufe"
+ '/// Press 'Modify' button to open 'Name' dialog
+ printlog " Press 'Modify' button to open 'Name' dialog"
+ Aendern.Click
+ Kontext "NameDlg"
+ '/// Close 'name' dialog with 'Cancel'
+ printlog " Close 'name' dialog with 'Cancel'"
+ NameDlg.Cancel
+ Kontext "TabFarbverlaeufe"
+ '/// Press 'Delete' button
+ printlog " Press 'Delete' button"
+ Loeschen.Click
+ '/// Close messagebox with 'No'
+ printlog " Close messagebox with 'No'"
+ kontext
+ active.no
+ Kontext "TabFarbverlaeufe"
+ '/// Press 'Open' button to open 'File open' dialog
+ printlog " Press 'Open' button to open 'File open' dialog"
+ Oeffnen.Click
+ Kontext "OeffnenDLG"
+ '/// Close 'Open' dialog with 'Cancel'
+ printlog " Close 'Open' dialog with 'Cancel'"
+ OeffnenDLG.Cancel
+ Kontext "TabFarbverlaeufe"
+ '/// Press 'Save' button to open 'Save as' dialog
+ printlog " Press 'Save' button to open 'Save as' dialog"
+ Speichern.Click
+ Kontext "SpeichernDLG"
+ '/// Close 'Save' dialog with 'Cancel'
+ printlog " Close 'Save' dialog with 'Cancel'"
+ SpeichernDLG.Cancel
+
+ printlog ""
+ '/// Switch to tabpage 'Hatching'
+ printlog " Switch to tabpage 'Hatching'"
+ Kontext
+ active.SetPage TabSchraffuren
+ Kontext "TabSchraffuren"
+ '/// If a messagebox appears, close messagebox with 'Cancel'
+ printlog " If a messagebox appears, close messagebox with 'Cancel'"
+ Kontext
+ Kontext "Active"
+ If Active.Exists then
+ Kontext "Linienstil"
+ Linienstil.Cancel
+ end if
+ Kontext "TabSchraffuren"
+ '/// Verify that there are sample hatchings
+ printlog " Verify that there are sample hatchings"
+ If Tabelle.GetItemCount < 1 then
+ warnlog "There are no hatchings available"
+ end if
+ '/// Decrease 'Spacing'
+ printlog " Decrease 'Spacing'"
+ Abstand.Less
+ '/// Increase 'Angle'
+ printlog " Increase 'Angle'"
+ Winkel.More
+ '/// Verify that the 'Line type' listbox has three entries
+ printlog " Verify that the 'Line type' listbox has three entries"
+ If Linientyp.GetItemCount < 1 then
+ warnlog "There are no linetypes available"
+ end if
+ '/// Verify that the color listbox is not empty
+ printlog " Verify that the color listbox is not empty"
+ If Linienfarbe.GetItemCount < 1 then
+ warnlog "There are no linecolors available"
+ end if
+ '/// Press 'Add' button to open 'Name' dialog
+ printlog " Press 'Add' button to open 'Name' dialog"
+ Hinzufuegen.Click
+ '/// Close 'name' dialog with 'Cancel'
+ printlog " Close 'name' dialog with 'Cancel'"
+ Kontext "NameDlg"
+ NameDlg.Cancel
+ Kontext "TabSchraffuren"
+ '/// Press 'Modify' button to open 'Name' dialog
+ printlog " Press 'Modify' button to open 'Name' dialog"
+ Aendern.Click
+ '/// Close 'name' dialog with 'Cancel'
+ printlog " Close 'name' dialog with 'Cancel'"
+ Kontext "NameDlg"
+ NameDlg.Cancel
+ Kontext "TabSchraffuren"
+ '/// Press 'Delete' button
+ printlog " Press 'Delete' button"
+ Loeschen.Click
+ '/// Close messagebox with 'No'
+ printlog " Close messagebox with 'No'"
+ Kontext
+ if Active.exists then
+ Active.no
+ end if
+ Kontext "TabSchraffuren"
+ '/// Press 'Open' button to open 'File open' dialog
+ printlog " Press 'Open' button to open 'File open' dialog"
+ Oeffnen.Click
+ Kontext "OeffnenDLG"
+ '/// Close 'Open' dialog with 'Cancel'
+ printlog " Close 'Open' dialog with 'Cancel'"
+ OeffnenDLG.Cancel
+ Kontext "TabSchraffuren"
+ '/// Press 'Save' button to open 'Save as' dialog
+ printlog " Press 'Save' button to open 'Save as' dialog"
+ Speichern.Click
+ '/// Close 'Save' dialog with 'Cancel'
+ printlog " Close 'Save' dialog with 'Cancel'"
+ Kontext "SpeichernDLG"
+ SpeichernDLG.Cancel
+
+ printlog ""
+ '/// Switch to tabpage 'Bitmaps'
+ printlog " Switch to tabpage 'Bitmaps'"
+ Kontext
+ active.SetPage TabBitmap
+ Kontext "TabBitmap"
+ '/// If a messagebox appears, close messagebox with 'Cancel'
+ printlog " If a messagebox appears, close messagebox with 'Cancel'"
+ Kontext
+ Kontext "Active"
+ If Active.Exists then
+ Kontext "Linienstil"
+ Linienstil.Cancel
+ end if
+ Kontext "TabBitmap"
+ Call DialogTest ( TabBitmap )
+ '/// Verify that the listbox for 'Foreground color' is not empty
+ printlog " Verify that the listbox for 'Foreground color' is not empty"
+ If Vordergrund.GetItemCount < 1 then
+ warnlog "There are no colors available"
+ end if
+ '/// Verify that the listbox for Background color' is not empty
+ printlog " Verify that the listbox for Background color' is not empty"
+ If Hintergrund.GetItemCount < 1 then
+ warnlog "There are no colors available"
+ end if
+ '/// Verify that the listbox for Bitmaps is not empty
+ printlog " Verify that the listbox for Bitmaps is not empty"
+ If Tabelle.GetItemCount < 1 then
+ warnlog "There are no Bitmaps available"
+ end if
+ '/// Press 'Add' button to open 'Name' dialog
+ printlog " Press 'Add' button to open 'Name' dialog"
+ Hinzufuegen.Click
+ '/// Close 'name' dialog with 'Cancel'
+ printlog " Close 'name' dialog with 'Cancel'"
+ Kontext "NameDlg"
+ NameDlg.Cancel
+ Kontext "TabBitmap"
+ '/// Press 'Modify' button to open 'Name' dialog
+ printlog " Press 'Modify' button to open 'Name' dialog"
+ Aendern.Click
+ '/// Close 'name' dialog with 'Cancel'
+ printlog " Close 'name' dialog with 'Cancel'"
+ Kontext "NameDlg"
+ NameDlg.Cancel
+ Kontext "TabBitmap"
+ '/// Press 'Import' button to open 'Import' dialog
+ printlog " Press 'Import' button to open 'Import' dialog"
+ Import.Click
+ Kontext "GrafikEinfuegenDlg"
+ '/// Close 'Import' dialog with 'Cancel'
+ printlog " Close 'Import' dialog with 'Cancel'"
+ GrafikEinfuegenDlg.Cancel
+ Kontext "TabBitmap"
+ '/// Press 'Delete' button
+ printlog " Press 'Delete' button"
+ Loeschen.Click
+ '/// Close messagebox with 'No'
+ printlog " Close messagebox with 'No'"
+ Kontext
+ if Active.exists then
+ Active.no
+ end if
+ Kontext "TabBitmap"
+ '/// Press 'Open' button to open 'File open' dialog
+ printlog " Press 'Open' button to open 'File open' dialog"
+ Oeffnen.Click
+ '/// If a messagebox appears, close messagebox with 'No'
+ printlog " If a messagebox appears, close messagebox with 'No'"
+ Kontext "OeffnenDLG"
+ '/// Close 'Open' dialog with 'Cancel'
+ printlog " Close 'Open' dialog with 'Cancel'"
+ OeffnenDLG.Cancel
+ Kontext "TabBitmap"
+ '/// Press 'Save' button to open 'Save as' dialog
+ printlog " Press 'Save' button to open 'Save as' dialog"
+ Speichern.Click
+ Kontext "SpeichernDLG"
+ '/// Close 'Save' dialog with 'Cancel'
+ printlog " Close 'Save' dialog with 'Cancel'"
+ SpeichernDLG.Cancel
+
+ printlog ""
+ '/// Close 'Area' dialog with 'Cancel'
+ printlog " Close 'Area' dialog with 'Cancel'"
+ Kontext "TabBitmap"
+ TabBitmap.Cancel
+
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatGraphicText
+'///<u><b>Format - Graphic - Text</b></u>
+
+ '/// Load document from 'gTesttoolPath + "spreadsheet\required\input\twoobjects.ods"'
+ printlog " Load document from 'gTesttoolPath + spreadsheet\required\input\twoobjects.ods"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\required\input\twoobjects.ods" )
+ '/// Select first object by Navigator
+ printlog " Select first object by Navigator"
+ Call fNavigatorSelectObject ("drawing objects", 1)
+ '/// Open 'Format – Line' dialog by 'Format – Graphic – Line'
+ printlog " Open 'Format – Text' dialog by 'Format – Graphic – Text'"
+ FormatTextCalc
+ '/// Switch to tabpage 'Text'
+ printlog " Switch to tabpage 'Text'"
+ Kontext
+ Active.SetPage TabText
+ Kontext "TabText"
+ Call DialogTest ( TabText )
+ '/// Verify that 'Fit width to text' is disabled
+ printlog " Verify that 'Fit width to text' is disabled"
+ If BreiteAnTextAnpassen.IsEnabled then
+ warnlog "Fit width to text is enabled"
+ end if
+ '/// Verify that 'Fit heights to text' is disabled
+ printlog " Verify that 'Fit heights to text' is disabled"
+ If HoeheAnTextAnpassen.IsEnabled then
+ warnlog "Fit heights to text is enabled"
+ end if
+ '/// Verify that 'Word wrap text in shape' is disabled
+ printlog " Verify that 'Word wrap text in shape' is disabled"
+ If WordWrap.IsEnabled then
+ warnlog "Word wrap text in shape is enabled"
+ end if
+ '/// Verify that 'Resize shape to fit text' is disabled
+ printlog " Verify that 'Resize shape to fit text' is disabled"
+ If ResizeShape.IsEnabled then
+ warnlog "Resize shape to fit textt is enabled"
+ end if
+ '/// Uncheck 'Fit to frame'
+ printlog " Uncheck 'Fit to frame'"
+ AmRahmenAnpassen.UnCheck
+ '/// Uncheck 'Adjust to contour'
+ printlog " Uncheck 'Adjust to contour'"
+ Konturfluss.UnCheck
+ '/// Increase 'Spacing Left'
+ printlog " Increase 'Spacing Left'"
+ Links.More
+ '/// Increase 'Spacing Right'
+ printlog " Increase 'Spacing Right'"
+ Rechts.More
+ '/// Increase 'Spacing Top'
+ printlog " Increase 'Spacing Top'"
+ Oben.More
+ '/// Increase 'Spacing Bottom'
+ printlog " Increase 'Spacing Bottom'"
+ Unten.More
+ '/// Check 'Full Width'
+ printlog " Check 'Full Width'"
+ GanzeBreite.Check
+
+ '/// Switch to tabpage 'Text Animation'
+ printlog " Switch to tabpage 'Text Animation'"
+ Kontext
+ Active.SetPage TabLauftext
+ Kontext "TabLauftext"
+ Call DialogTest ( TabLauftext )
+ '/// Choose 'Effect' 4 (Scroll back and forth)
+ Effekt.Select 4
+ '/// Click button 'Up'
+ printlog " Click button 'Up'"
+ NachOben.Click
+ '/// Click button 'Left'
+ printlog " Click button 'Left'"
+ NachLinks.Click
+ '/// Click button 'Down'
+ printlog " Click button 'Down'"
+ NachUnten.Click
+ '/// Click button 'Right'
+ printlog " Click button 'Right'"
+ NachRechts.Click
+ '/// UnCheck 'Start inside'
+ printlog " UnCheck 'Start inside'"
+ TextSichtbarBeimStarten.UnCheck
+ '/// UnCheck 'Text visible when exiting'
+ printlog " UnCheck 'Text visible when exiting'"
+ TextSichtbarBeimBeenden.UnCheck
+ '/// Uncheck 'Continous'
+ printlog " Uncheck 'Continous'"
+ Endlos.UnCheck
+ '/// Increase number
+ printlog " Increase number"
+ Anzahl.More
+ '/// Check 'Pixels'
+ printlog " Check 'Pixels'"
+ Pixel.Check
+ '/// Increase number
+ printlog " Increase number"
+ Schrittweite.More
+ '/// Uncheck 'Automatic'
+ printlog " Uncheck 'Automatic'"
+ Automatisch.UnCheck
+ '/// Increase time
+ printlog " Increase time"
+ Verzoegerung.More
+
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ TabLauftext.Cancel
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tFormatGraphicPoints
+'///<u><b>Format - Graphic - Points</b></u>
+
+ '/// Load document from 'gTesttoolPath + "spreadsheet\required\input\twoobjects.ods"'
+ printlog " Load document from 'gTesttoolPath + spreadsheet\required\input\twoobjects.ods"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\required\input\twoobjects.ods" )
+ '/// Select first object by Navigator
+ printlog " Select first object by Navigator"
+ Call fNavigatorSelectObject ("drawing objects", 1)
+ '/// Toggle 'Points' by 'Format - Graphic - Points
+ FormatPointsCalc
+ FormatPointsCalc
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+endcase
+
+'-----------------------------------------------------------
+
diff --git a/testautomation/spreadsheet/required/includes/c_upd_helpmenu.inc b/testautomation/spreadsheet/required/includes/c_upd_helpmenu.inc
new file mode 100644
index 000000000000..89495d36907e
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_helpmenu.inc
@@ -0,0 +1,119 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - Help Menu
+'*
+'************************************************************************
+'*
+' #1 tHelpOfficeHelp
+' #1 tHelpWhatsThis
+' #1 tHelpAbout
+'*
+'\***********************************************************************
+
+sub c_upd_helpmenu
+
+ Printlog Chr(13) + "--------- Help Menu (c_upd_helpmenu.inc) ---------"
+
+ call tHelpOfficeHelp
+ call tHelpWhatsThis
+ call tHelpAbout
+
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tHelpOfficeHelp
+'///<u><b>Help – Star-/OpenOffice Help</b></u>
+
+ '/// Opening new spreadsheet document for getting defined starting environment
+ printlog " Opening new spreadsheet document for getting defined starting environment"
+ Call hNewDocument
+ '/// Open the help application by 'Help – Star-/OpenOffice Help'
+ printlog " Open the help application by 'Help – Star-/OpenOffice Help'"
+ HelpContents
+ Kontext "StarOfficeHelp"
+ '/// Close help application
+ printlog " Close help application"
+ StarOfficeHelp.TypeKeys "<Mod1 F4>"
+ If StarOfficeHelp.Exists then
+ warnlog "StarOffice Help could not be closed?!"
+ end if
+ '/// Close starting document
+ printlog " Close starting document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tHelpWhatsThis
+'///<u><b>Help – What's This?</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Invoke the 'What's this help' by 'Help – What's This?'
+ printlog " Invoke the 'What's this help' by 'Help – What's This?'"
+ HelpWhatsThis
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tHelpAbout
+'///<u><b>Help – About</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open the 'About' window by 'Help – About Star-/OpenOffice'
+ printlog " Open the 'About' window by 'Help – About Star-/OpenOffice'"
+ HelpAboutStarOffice
+ Kontext "UeberStarWriter"
+ DialogTest ( UeberStarWriter )
+ '/// Show build-ID and members by STRG-SDT
+ printlog " Show build-ID and members by STRG-SDT"
+ UeberStarWriter.TypeKeys "<Mod1 S><Mod1 D><Mod1 T>"
+ '/// Close dialog with 'OK'
+ printlog " Close dialog with 'OK'"
+ UeberStarWriter.OK
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+
diff --git a/testautomation/spreadsheet/required/includes/c_upd_insertmenu.inc b/testautomation/spreadsheet/required/includes/c_upd_insertmenu.inc
new file mode 100644
index 000000000000..b8c749c27cd9
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_insertmenu.inc
@@ -0,0 +1,1313 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - Insert Menu
+'*
+'************************************************************************
+'*
+' #1 tInsertManualBreak
+' #1 tInsertCells
+' #1 tInsertRowsColumns
+' #1 tInsertSheet
+' #1 tInsertSheetFromFile
+' #1 tInsertLink
+' #1 tInsertSpecialCharacters
+' #1 tInsertFormattingMark
+' #1 tInsertHyperlink
+' #1 tInsertFunction
+' #1 tInsertFunctionList
+' #1 tInsertNamesDefine
+' #1 tInsertNamesInsert
+' #1 tInsertNamesCreate
+' #1 tInsertNamesLabels
+' #1 tInsertNote
+' #1 tInsertPictureFromFile
+' #1 tInsertMovieSound
+' #1 tInsertObjectOLE
+' #1 tInsertObjectPlugin
+' #1 tInsertObjectSound
+' #1 tInsertObjectVideo
+' #1 tInsertObjectFormular
+' #1 tInsertChart
+' #1 tInsertFloatingFrame
+
+'*
+'\***********************************************************************
+
+sub c_upd_insertmenu
+
+ Printlog Chr(13) + "--------- Insert Menu (c_upd_insertmenu.inc) ---------"
+
+ call tInsertManualBreak
+ call tInsertCells
+ call tInsertRowsColumns
+ call tInsertSheet
+ call tInsertSheetFromFile
+ call tInsertLink
+ call tInsertSpecialCharacters
+ call tInsertFormattingMark
+ call tInsertHyperlink
+ call tInsertFunction
+ call tInsertFunctionList
+ call tInsertNamesDefine
+ call tInsertNamesInsert
+ call tInsertNamesCreate
+ call tInsertNamesLabels
+ call tInsertNote
+ call tInsertPictureFromFile
+ call tInsertMovieSound
+ call tInsertObjectOLE
+ call tInsertObjectPlugin
+ call tInsertObjectSound
+ call tInsertObjectVideo
+ call tInsertObjectFormular
+ call tInsertChart
+ call tInsertFloatingFrame
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tInsertManualBreak
+'///<u><b>Insert - Manual Break</b></u>
+
+ '/// Opening new spreadsheet document for getting defined starting environment
+ printlog " Opening new spreadsheet document for getting defined starting environment"
+ call hNewDocument
+ '/// Goto cell D5
+ printlog " Goto cell D5"
+ call fCalcSelectRange ("D5")
+ '/// Insert a manual row break by 'Insert – Manual Break – Row Break'
+ printlog " Insert a manual row break by 'Insert – Manual Break – Row Break'"
+ InsertManuelBreakRowBreak
+ '/// Insert a manual column break by 'Insert – Manual Break – Column Break'
+ printlog " Insert a manual column break by 'Insert – Manual Break – Column Break'"
+ InsertManuelBreakColumnBreak
+ '/// Close starting document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertCells
+'///<u><b>Insert - Cells</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Insert Cells'- dialog by 'Insert – Cells'
+ printlog " Open 'Insert Cells'- dialog by 'Insert – Cells'"
+ InsertCells
+ Kontext "ZellenEinfuegen"
+ Call DialogTest ( ZellenEinfuegen )
+ '/// Check option 'Shift cells down'
+ printlog " Check option 'Shift cells down'"
+ ZellenNachUnten.Check
+ '/// Check option 'Shift cells right'
+ printlog " Check option 'Shift cells right'"
+ ZellenNachRechts.Check
+ '/// Check option 'Entire row'
+ printlog " Check option 'Entire row'"
+ GanzeZeile.Check
+ '/// Check option 'Entire column'
+ printlog " Check option 'Entire column'"
+ GanzeSpalte.Check
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ ZellenEinfuegen.Cancel
+ '/// Close starting document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertRowsColumns
+'///<u><b>Insert - Rows/Columns</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Insert a new row by 'Insert - Rows'
+ printlog " Insert a new row by 'Insert - Rows'"
+ InsertRowsCalc
+ '/// Insert a new column by 'Insert - Columns'
+ printlog " Insert a new column by 'Insert - Columns'"
+ InsertColumnsCalc
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertSheet
+'///<u><b>Insert - Sheet</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Insert Sheet' – dialog by 'Insert – Sheet'
+ printlog " Open 'Insert Sheet' – dialog by 'Insert – Sheet'"
+ InsertSheetCalc
+ Kontext "TabelleEinfuegenCalc"
+ Call DialogTest ( TabelleEinfuegenCalc )
+ '/// Check option 'After current sheet'
+ printlog " Check option 'After current sheet'"
+ Nach.Check
+ '/// Set 'Name' to 'Test'
+ printlog " Set 'Name' to 'Test'"
+ TabellenName.SetText "Test"
+ '/// Set number of sheets to 2
+ printlog " Set number of sheets to 2"
+ Anzahl.More
+ '/// Check option 'From File'
+ printlog " Check option 'From File'"
+ AusDateiErstellen.Check
+ '/// Check option 'Link'
+ printlog " Check option 'Link'"
+ Verknuepfen.Check
+ '/// Click on 'Browse' – button
+ Durchsuchen.Click
+ Kontext "OeffnenDLG"
+ '/// Close 'Insert' – dialog with 'Cancel'
+ printlog " Close 'Insert' – dialog with 'Cancel'"
+ OeffnenDLG.Cancel
+ Kontext "TabelleEinfuegenCalc"
+ '/// Close 'Insert Sheet' – dialog with 'Cancel'
+ printlog " Close 'Insert Sheet' – dialog with 'Cancel'"
+ TabelleEinfuegenCalc.Cancel
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertSheetFromFile
+'///<u><b>Insert - Sheet From File</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Insert Sheet' – dialog by 'Insert – Sheet From File'
+ printlog " Open 'Insert Sheet' – dialog by 'Insert – Sheet From File'"
+ InsertSheetFromFile
+ Kontext "OeffnenDLG"
+ '/// Set filename 'spreadsheet/required/input/twosheets.ods'
+ printlog " Set filename 'spreadsheet/required/input/twosheets.ods'"
+ Dateiname.setText ( convertpath ( gTesttoolPath & "spreadsheet/required/input/twosheets.ods" ) )
+ '/// Close 'Insert' – dialog with 'Insert'
+ printlog " Close 'Insert' – dialog with 'Insert'"
+ Oeffnen.Click
+ Kontext "TabelleEinfuegenCalc"
+ '/// Verify that the selected file has two sheets
+ printlog " Verify that the selected file has two sheets"
+ if Auswahl.GetItemCount <> 2 then
+ warnlog "The file has more/less than two sheets"
+ end if
+ '/// Close 'Insert Sheet' – dialog with 'Insert'
+ printlog " Close 'Insert Sheet' – dialog with 'Insert'"
+ TabelleEinfuegenCalc.Cancel
+ '/// Close document'
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertLink
+'///<u><b>Insert - Link</b></u>
+
+ '/// Open new Sreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'External Data' – dialog by 'Insert – Link To External Data'
+ printlog " Open 'External Data' – dialog by 'Insert – Link To External Data'"
+ InsertLinkToExternalData
+ Kontext "ExternalData"
+ call Dialogtest (ExternalData)
+ '/// Press browse button for URL
+ printlog " Press browse button for URL"
+ FileChoose.Click
+ Kontext "OeffnenDlg"
+ '/// Close 'Insert' – dialog with 'Cancel'
+ printlog " Close 'Insert' – dialog with 'Cancel'"
+ OeffnenDlg.close
+ Kontext "ExternalData"
+ '/// Check option 'Updata every'
+ printlog " Check option 'Updata every'"
+ Update.Check
+ '/// Increase updatetimer by 1
+ printlog " Increase updatetimer by 1"
+ UpdateTime.More
+ '/// Close 'External Data' – dialog with 'Cancel'
+ printlog " Close 'External Data' – dialog with 'Cancel'"
+ ExternalData.close
+ '/// Close starting document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertSpecialCharacters
+'///<u><b>Insert - Special Characters</b></u>
+
+ '///Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Special Characters' – dialog by 'Insert – Special Characters'
+ printlog " Open 'Special Characters' – dialog by 'Insert – Special Characters'"
+ InsertSpecialCharacterCalc
+ Kontext "Sonderzeichen"
+ DialogTest ( Sonderzeichen )
+ '/// Change 'Font' to next one
+ printlog " Change 'Font' to next one"
+ if Schrift.GetItemCount = Schrift.GetSelIndex then
+ Schrift.Select(Schrift.GetSelIndex -1)
+ else Schrift.Select(Schrift.GetSelIndex +1)
+ end if
+ '/// Change 'Subset' to next one
+ printlog " Change 'Subset' to next one"
+ If Subset.IsVisible then
+ if Subset.GetItemCount = Subset.GetSelIndex then
+ Subset.Select(Subset.GetSelIndex -1)
+ else Subset.Select(Subset.GetSelIndex +1)
+ end if
+ end if
+ '/// Choose a character by clicking
+ printlog " Choose a character by clicking"
+ Zeichenanzeige.MouseDown 50,50
+ Zeichenanzeige.MouseUp 50,50
+ '/// Delete character by 'Delete'
+ printlog " Delete character by 'Delete'"
+ Loeschen.Click
+ '/// Close 'Special Characters' – dialog with 'Cancel'
+ printlog " Close 'Special Characters' – dialog with 'Cancel'"
+ Sonderzeichen.Cancel
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertFormattingMark
+'///<u><b>Insert - Formatting Mark</b></u>
+
+ Dim bAsianLanguage as boolean
+ Dim bCTLlanguage as boolean
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Enable support for CJK and CTL by 'Tools-Options-Language Settings'
+ printlog " Enable support for CJK and CTL by 'Tools-Options-Language Settings'"
+ bAsianLanguage = ActiveDeactivateAsianSupport(TRUE)
+ bCTLLanguage = ActiveDeactivateCTLSupport(TRUE)
+ '/// Select cell A1
+ printlog " Select cell A1"
+ call fCalcSelectRange ("A1")
+ '/// Enter 'Test' in cell 'A1' to activate editmode
+ printlog " Enter 'Test' in cell 'A1' to activate editmode"
+ DocumentCalc.TypeKeys "Test"
+ '/// Enter in cell 'Insert – Formatting Mark – Non-Breaking Space'
+ printlog " Enter in cell 'A' and 'Insert – Formatting Mark – Non-Breaking Space'"
+ InsertNonBreakingSpace
+ '/// Enter in cell 'Insert – Formatting Mark – Non-Breaking Hyphen'
+ printlog " Enter in cell 'Insert – Formatting Mark – Non-Breaking Hyphen'"
+ InsertHardHyphen
+ '/// Enter in cell 'Insert – Formatting Mark – Optional Hyphen'
+ printlog " Enter in cell 'Insert – Formatting Mark – Optional Hyphen'"
+ InsertSoftHyphen
+ '/// Enter in cell 'Insert – Formatting Mark – No-Width Optional Break'
+ printlog " Enter in cell 'Insert – Formatting Mark – No-Width Optional Break'"
+ InsertZWSP
+ '/// Enter in cell 'Insert – Formatting Mark – No-Width no break'
+ printlog " Enter in cell 'Insert – Formatting Mark – No-Width no break'"
+ InsertZWNBSP
+ '/// Enter in cell 'Insert – Formatting Mark – Left-to-right-mark'
+ printlog "/ Enter in cell 'Insert – Formatting Mark – Left-to-right-mark'"
+ InsertLRM
+ '/// Enter in cell 'Insert – Formatting Mark – right-to-left-mark'
+ printlog " Enter in cell 'Insert – Formatting Mark – right-to-left-mark'"
+ InsertRLM
+ '/// Leave cell with 'Enter'
+ printlog " Leave cell with 'Enter'"
+ DocumentCalc.TypeKeys "<Return>"
+ '/// Set support for CTL and CJK back to defaults
+ printlog " Set support for CTL and CJK back to defaults"
+ if bAsianLanguage = FALSE then
+ Call ActiveDeactivateAsianSupport(FALSE)
+ end if
+ if bCTLLanguage = FALSE then
+ Call ActiveDeactivateCTLSupport(FALSE)
+ end if
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertHyperlink
+'///<u><b>Insert - Hyperlink</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Hyperlink' – dialog via 'Insert – Hyperlink'
+ printlog " Open 'Hyperlink' – dialog via 'Insert – Hyperlink'"
+ InsertHyperlink
+
+ kontext "HyperlinkDialog"
+ if ( HyperlinkDialog.exists( 2 ) ) then
+
+ Kontext "Hyperlink"
+ '/// Switch to category 'Internet' (first one)
+ printlog " Switch to category 'Internet'"
+ Auswahl.TypeKeys "<HOME>"
+ '/// Choose 'Web'
+ printlog " Choose 'Web'"
+ Kontext "TabHyperlinkInternet"
+ internet.check
+ Call DialogTest ( TabHyperlinkInternet,1 )
+ '/// Click on 'Target in Document' – button (the target dialog appears)
+ printlog " Click on 'Target in Document' – button (the target dialog appears)"
+ Target.Click
+ Kontext "ZielImDokument"
+ Call DialogTest ( ZielImDokument )
+ '/// Close 'Target' – dialog with 'Close'
+ printlog " Close 'Target' – dialog with 'Close'"
+ ZielImDokument.Close
+ Kontext "TabHyperlinkInternet"
+ '/// Choose 'FTP'
+ printlog " Choose 'FTP'"
+ FTP.check
+ Call DialogTest ( TabHyperlinkInternet,2 )
+ '/// Check that the 'Target' – button is disabled
+ printlog " Check that the 'Target' – button is disabled"
+ if Target.IsEnabled then
+ warnlog "The target button is enabled, but should be disabled"
+ end if
+ '/// Check option 'Anonymous User'
+ printlog " Check option 'Anonymous User'"
+ AnonymerBenutzer.Check
+ '/// Check that 'Login Name' is disabled
+ printlog " Check that 'Login Name' is disabled"
+ if Loginname.IsEnabled then
+ warnlog "The Loginname is enabled, but should be disabled"
+ end if
+ '/// Chose 'Telnet'
+ printlog " Chose 'Telnet'"
+ Telnet.check
+ Call DialogTest ( TabHyperlinkInternet,3 )
+ '/// Check that the 'Target' – button is disabled
+ printlog " Check that the 'Target' – button is disabled"
+ if Target.IsEnabled then
+ warnlog "The target button is enabled, but should be disabled"
+ end if
+ '/// Switch to category 'Mail & News'
+ Kontext "Hyperlink"
+ Auswahl.TypeKeys "<DOWN>"
+ Kontext "TabHyperlinkMailUndNews"
+ Call DialogTest ( TabHyperlinkMailUndNews )
+ '/// Click twice on 'Data Source' – button to turn on / off the databasebeamer
+ printlog " Click twice on 'Data Source' – button to turn on / off the databasebeamer"
+ Adressbuch.click
+ Adressbuch.click
+ '/// Check option 'Mail'
+ printlog " Check option 'Mail'"
+ EMail.check
+ '/// Check that the editfield for 'Receiver' is enabled
+ printlog " Check that the editfield for 'Receiver' is enabled"
+ if not Receiver.IsEnabled then
+ warnlog "Receiver is disabled but should be enabled"
+ end if
+ '/// Check that the editfield for 'Subject' is enabled
+ printlog " Check that the editfield for 'Subject' is enabled"
+ if not Betreff.IsEnabled then
+ warnlog "Subject is disabled but should be enabled"
+ end if
+ '/// Check option 'News'
+ printlog " Check option 'News'"
+ News.check
+ '/// Check that the editfield for 'Subject' is disabled
+ printlog " Check that the editfield for 'Subject' is disabled"
+ if Betreff.IsEnabled then
+ warnlog "Subject is enabled but should be disabled"
+ end if
+ '/// Switch to category Document
+ printlog " Switch to category Document"
+ Kontext "Hyperlink"
+ Auswahl.TypeKeys "<DOWN>"
+ Kontext "TabHyperlinkDokument"
+ Call DialogTest ( TabHyperlinkDokument )
+ '/// Enter 'Test' in 'Path'
+ printlog " Enter 'Test' in 'Path'"
+ Path.TypeKeys "Test"
+ '/// Click on 'Open' – button
+ printlog " Click on 'Open' – button"
+ DateiOeffnen.click
+ Kontext "OeffnenDlg"
+ '/// Close 'Open' – dialog with 'Cancel'
+ printlog " Close 'Open' – dialog with 'Cancel'"
+ OeffnenDlg.Cancel
+ Kontext "TabHyperlinkDokument"
+ '/// Click on 'Target in Document' – button (the target dialog appears)
+ printlog " Click on 'Target in Document' – button (the target dialog appears)"
+ Target.click
+ Kontext "ZielImDokument"
+ '/// Close 'Target' – dialog with 'Close'
+ printlog " Close 'Target' – dialog with 'Close'"
+ ZielImDokument.close
+ Kontext "Hyperlink"
+ '/// Switch to category 'New Document'
+ printlog " Switch to category 'New Document'"
+ Auswahl.TypeKeys "<DOWN>"
+ Kontext "TabHyperlinkNeuesDokument"
+ Call DialogTest ( TabHyperlinkNeuesDokument )
+ '/// Check 'Edit Now'
+ printlog " Click 'Edit Now'"
+ SofortBearbeiten.check
+ '/// Check 'Edit Later'
+ printlog " Click 'Edit Later'"
+ SpaeterBearbeiten.check
+ '/// Click on 'Select Path' – button
+ printlog " Click on 'Select Path' – button"
+ Pfad.click
+ Kontext "OeffnenDlg"
+ '/// Close 'Select Path' – dialog with 'Cancel'
+ printlog " Close 'Select Path' – dialog with 'Cancel'"
+ OeffnenDlg.Cancel
+ Kontext "TabHyperlinkNeuesDokument"
+ '/// Check that the 'Frame' listbox has items
+ printlog " Check that the 'Frame' listbox has items"
+ if Frame.GetItemCount < 1 then
+ warnlog "The Frame combobox is empty"
+ end if
+ '/// Check that the 'Form' listbox has 2 entries
+ printlog " Check that the 'Form' listbox has 2 entries"
+ if Form.GetItemCount <> 2 then
+ warnlog "The Form combobox has not 2 items"
+ end if
+ '/// Close 'Hyperlink' – dialog with 'Close'
+ printlog " Close 'Hyperlink' – dialog with 'Close'"
+ kontext "HyperlinkDialog"
+ HyperlinkDialog.Close()
+ else
+ warnlog( "Failed to open <HyperlinkDialog>" )
+ endif
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertFunction
+'///<u><b>Insert - Function</b></u>
+
+ Dim ifunctionCount as integer
+ Dim ifunctionIndex as integer
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open the 'Function Wizard' via 'Insert – Function'
+ printlog " Open the 'Function Wizard' via 'Insert – Function'"
+ InsertFunction
+ Kontext "FunctionWizard"
+ '/// Check that there are 13 entries in the category listbox
+ printlog " Check that there are 13 entries in the category listbox"
+ if CategoryLB.GetItemCount <> 13 then
+ warnlog "There are " & CategoryLB.GetItemCount & " categories instead of 13"
+ end if
+ '/// Choose the second entry (all) in the category listbox
+ printlog " Choose the second entry (all) in the category listbox"
+ CategoryLB.Select(2)
+ '/// Choose all entries in the function list and click 'Next' button
+ printlog " Choose all entries in the function list"
+ ifunctionCount = FunctionLB.getItemCount
+ for ifunctionIndex = 1 To ifunctionCount
+ CategoryLB.Select(2)
+ FunctionLB.Select(ifunctionIndex)
+' sleep(1)
+ printlog FunctionLB.GetSelText
+ call DialogTest ( FunctionWizard,ifunctionIndex )
+ '/// Click on 'Next' – button
+ Forward.Click
+ call DialogTest ( FunctionWizard,(ifunctionCount + ifunctionIndex) )
+ Formel.typekeys "<MOD1 A><DELETE>", true
+ next ifunctionIndex
+ '/// Check option 'Array'
+ printlog " Check option 'Array'"
+ Matrix.check
+ '/// Choose the third entry (database) in the category listbox
+ printlog " Choose the third entry (database) in the category listbox"
+ CategoryLB.Select(3)
+ '/// Choose first function
+ printlog " Choose first function"
+ FunctionLB.Select (1)
+ '/// Click on 'Next' button
+ printlog " Click on 'Next' button"
+ Forward.Click
+ '/// Click on 'Shrink' – button; the range chooser appears
+ printlog " Click on 'Shrink' – button; the range chooser appears"
+ Shrink1.click
+ '/// Enter 'A1' in rangechooser
+ printlog " Enter 'A1' in rangechooser"
+ Editfield1.SetText ("A1")
+ '/// Click on 'Maximize' – button
+ printlog " Click on 'Maximize' – button"
+ maximize.click
+ '/// Click on 'fx' – button
+ printlog " Click on 'fx' – button"
+ Functionsbutton1.click
+ '/// Switch to tabpage 'Structure'
+ printlog " Switch to tabpage 'Structure'"
+ Kontext "FunctionWizardTabControl"
+ FunctionWizardTabControl.setpage TabFunctionWizardStructure
+ Kontext "FunctionWizard"
+ call DialogTest ( FunctionWizard,((ifunctionCount *2)+1) )
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ FunctionWizard.Cancel
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertFunctionList
+'///<u><b>Insert - Function List</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Check if 'function list' is already opened
+ printlog " Check if 'function list' is already opened"
+ Kontext "FunctionsCalc"
+ if FunctionsCalc.Exists(2) then
+ printlog "Functions List was already open"
+ else
+ '/// Open 'function list' by 'Insert – Function List'
+ printlog " Open 'function list' by 'Insert – Function List'"
+ InsertFunctionList
+ end if
+ '/// Check that there are 13 categories in the listbox
+ printlog " Check that there are 13 categories in the listbox"
+ if Category.GetItemCount <> 13 then
+ warnlog "The count of categories is " & Category.GetItemCount & " instead of 13"
+ end if
+ '/// Click on second function
+ printlog " Click on second function"
+ FunctionList.Select(2)
+ call DialogTest ( FunctionsCalc )
+ '/// Click on 'Insert' – button to insert the function into the cell
+ printlog " Click on 'Insert' – button to insert the function into the cell"
+ FunctionInsert.click
+ '/// Press 'ESC' to leave insert mode
+ printlog " Press 'ESC' to leave insert mode"
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys "<ESCAPE>"
+ '/// Close function list by 'Insert – Function list'
+ printlog " Close function list by 'Insert – Function list'"
+ InsertFunctionList
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertNamesDefine
+'///<u><b>Insert - Names – Define</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Define Names' -dialog by 'Insert – Names – Define'
+ printlog " Open 'Define Names' -dialog by 'Insert – Names – Define'"
+ InsertNamesDefine
+ Kontext "NamenFestlegen"
+ '/// Click on 'More' – button
+ printlog " Click on 'More' – button"
+ Zusaetze.Click
+ DialogTest ( NamenFestlegen )
+ '/// Check that the 'Add' – button is disabled
+ printlog " Check that the 'Add' – button is disabled"
+ if Hinzufuegen.IsEnabled then
+ warnlog "'Add' is enabled but should be disabled"
+ end if
+ '/// Check that the 'Delete' – button is disabled
+ printlog " Check that the 'Delete' – button is disabled"
+ if Loeschen.IsEnabled then
+ warnlog "'Delete' is enabled but should be disabled"
+ end if
+ '/// Check that the 'Shrink' – button is disabled
+ printlog " Check that the 'Shrink' – button is disabled"
+ if ZugeordnetZuButton.IsEnabled then
+ warnlog "'Shrink' is enabled but should be disabled"
+ end if
+ '/// Check that the 'Print Range' option is disabled
+ printlog " Check that the 'Print Range' option is disabled"
+ if Druckbereich.IsEnabled then
+ warnlog "'Printrange' is enabled but should be disabled"
+ end if
+ '/// Check that the 'Filter' option is disabled
+ printlog " Check that the 'Filter' option is disabled"
+ if Filter.IsEnabled then
+ warnlog "'Filter' is enabled but should be disabled"
+ end if
+ '/// Check that the 'Repeat Column' option is disabled
+ printlog " Check that the 'Repeat Column' option is disabled"
+ if Wiederholungsspalte.IsEnabled then
+ warnlog "'Repeat Column' is enabled but should be disabled"
+ end if
+ '/// Check that the 'Repeat Row' option is disabled
+ printlog " Check that the 'Repeat Row' option is disabled"
+ if Wiederholungszeile.IsEnabled then
+ warnlog "'Repeat Row' is enabled but should be disabled"
+ end if
+ '/// Enter the name 'Test'
+ printlog " Enter the name 'Test'"
+ BereichsName.SetText "Test"
+ '/// Press the 'Shrink' – button
+ printlog " Press the 'Shrink' – button"
+ ZugeordnetZuButton.click
+ '/// Click on 'Maximize' – button
+ printlog " Click on 'Maximize' – button"
+ ZugeordnetZuButton.click
+ '/// Check the 'Print Range' option
+ printlog " Check the 'Print Range' option"
+ Druckbereich.check
+ '/// Check the 'Filter' option
+ printlog " Check the 'Filter' option"
+ Filter.check
+ '/// Check the 'Repeat Column' option
+ printlog " Check the 'Repeat Column' option"
+ Wiederholungsspalte.check
+ '/// Check the 'Repeat Row' option
+ printlog " Check the 'Repeat Row' option"
+ Wiederholungszeile.check
+ '/// Press the 'Add' – button
+ printlog " Press the 'Add' – button"
+ Hinzufuegen.click
+ '/// Choose the 'Test' name
+ printlog " Choose the 'Test' name"
+ BereichsName.Select "Test"
+ '/// Press the 'Delete' – button
+ printlog " Press the 'Delete' – button"
+ Loeschen.click
+ '/// On appearing messagebox click 'Yes'
+ printlog " On appearing messagebox click 'Yes'"
+ kontext "Active"
+ if Active.exists( 2 ) then
+ Active.Yes
+ end if
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ Kontext "NamenFestlegen"
+ NamenFestlegen.Cancel
+ '/// Close the document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertNamesInsert
+'///<u><b>Insert - Names – Define</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Select cell A1
+ printlog " Select cell A1"
+ call fCalcSelectRange ("A1")
+ '/// Open 'Define Names' -dialog by 'Insert – Names – Define'
+ printlog " Open 'Define Names' -dialog by 'Insert – Names – Define'"
+ InsertNamesDefine
+ Kontext "NamenFestlegen"
+ '/// Enter the name 'Test'
+ printlog " Enter the name 'Test'"
+ BereichsName.SetText "Test"
+ '/// Press the 'Add' – button
+ printlog " Press the 'Add' – button"
+ Hinzufuegen.click
+ '/// Close dialog with 'OK'
+ printlog " Close dialog with 'OK'"
+ NamenFestlegen.OK
+ '/// Select cell D4
+ printlog " Select cell D4"
+ call fCalcSelectRange ("D4")
+ '/// Open 'Insert Names' – dialog by 'Insert – Names – Insert'
+ printlog " Open 'Insert Names' – dialog by 'Insert – Names – Insert'"
+ InsertNamesInsert
+ Kontext "NamenEinfuegen"
+ Call DialogTest ( NamenEinfuegen )
+ '/// Select name 'Test'
+ printlog " Select name 'Test'"
+ NamenAuswahl.Select "Test"
+ '/// Press 'OK' – button (the dialog will be closed)
+ printlog " Press 'OK' – button (the dialog will be closed)"
+ NamenEinfuegen.OK
+ '/// Press 'Enter' to leave the editmode of the cell
+ printlog " Press 'Enter' to leave the editmode of the cell"
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys "<ESCAPE>"
+ '/// Open 'Define Names' -dialog by 'Insert – Names – Insert'
+ printlog " Open 'Define Names' -dialog by 'Insert – Names – Insert'"
+ InsertNamesInsert
+ Kontext "NamenEinfuegen"
+ '/// Press 'Insert All' – button (the dialog will be closed)
+ printlog " Press 'Insert All' – button (the dialog will be closed)"
+ Liste.click
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertNamesCreate
+'///<u><b>Insert - Names – Create</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Create Names' – dialog by 'Insert – Names – Create'
+ printlog " Open 'Create Names' – dialog by 'Insert – Names – Create'"
+ InsertNameCreate
+ Kontext "NamenErzeugen"
+ DialogTest ( NamenErzeugen )
+ '/// Check option 'Top row'
+ printlog " Check option 'Top row'"
+ Kopfzeile.check
+ '/// Check option 'Left column'
+ printlog " Check option 'Left column'"
+ LinkerSpalte.check
+ '/// Check option 'Bottom row'
+ printlog " Check option 'Bottom row'"
+ Fusszeile.check
+ '/// Check option 'Right column'
+ printlog " Check option 'Right column'"
+ RechterSpalte.check
+ '/// Press 'OK' button
+ printlog " Press 'OK' button"
+ NamenErzeugen.OK
+ '/// Close warningbox with 'OK'
+ printlog " Close warningbox with 'OK'"
+ Kontext
+ if active.exists (1) then
+ active.ok
+ end if
+ '/// Enter 'Create Names Test' in cell A1
+ printlog " Enter 'Create Names Test' in cell A1"
+ call fCalcSelectRange ("A1")
+ DocumentCalc.TypeKeys "Create Names Test<RETURN>"
+ '/// Select cells A1:A4
+ printlog " Select cells A1:A4"
+ call fCalcSelectRange ("A1:A4")
+ '/// Open 'Create Names' – dialog by 'Insert – Names – Create'
+ printlog " Open 'Create Names' – dialog by 'Insert – Names – Create'"
+ InsertNameCreate
+ Kontext "NamenErzeugen"
+ '/// Check that option 'Top row' is selected
+ printlog " Check that option 'Top row' is selected"
+ if not Kopfzeile.IsChecked then
+ warnlog "The header was not autodetected"
+ end if
+ '/// Press 'OK' button
+ printlog " Press 'OK' button"
+ NamenErzeugen.OK
+ '/// Select cells A1:A3
+ printlog " Select cells A1:A3"
+ call fCalcSelectRange ("A1:A3")
+ '/// Open 'Create Names' – dialog by 'Insert – Names – Create'
+ printlog " Open 'Create Names' – dialog by 'Insert – Names – Create'"
+ InsertNameCreate
+ Kontext "NamenErzeugen"
+ '/// Press 'OK' button
+ printlog " Press 'OK' button"
+ NamenErzeugen.OK
+ '/// Close replacing messagebox with 'Cancel'
+ printlog " Close replacing messagebox with 'Cancel'"
+ Kontext
+ if active.exists (1) then
+ active.cancel
+ end if
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertNamesLabels
+'///<u><b>Insert - Names – Labels</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Define Label Range' – dialog by 'Insert – Names – Labels'
+ printlog " Open 'Define Label Range' – dialog by 'Insert – Names – Labels'"
+ InsertNamesLabels
+ Kontext "BeschriftungsbereichFestlegen"
+ DialogTest ( BeschriftungsbereichFestlegen )
+ '/// Press 'Shrink' button for range
+ printlog " Press 'Shrink' button for range"
+ ButtonZellbereich.Click
+ '/// Press 'Maximize' button on rangechooser
+ printlog " Press 'Maximize' button on rangechooser"
+ ButtonZellbereich.Click
+ '/// Press 'Shrink' button for data range
+ printlog " Press 'Shrink' button for data range"
+ ButtonDatenbereich.Click
+ '/// Press 'Maximize' button on rangechooser
+ printlog " Press 'Maximize' button on rangechooser"
+ ButtonDatenbereich.Click
+ '/// Switch between 'Contains ...' options
+ printlog " Switch between 'Contains ...' options"
+ Zeilenkoepfe.Check
+ Spaltenkoepfe.Check
+ '/// Press 'Add' – button
+ printlog " Press 'Add' – button"
+ Hinzufuegen.Click
+ '/// Select range
+ printlog " Select range"
+ Bereich.Select (2)
+ '/// Press 'Delete' – button
+ printlog " Press 'Delete' – button"
+ Loeschen.Click
+ '/// Confirm mesagebox with 'Yes'
+ printlog " Confirm mesagebox with 'Yes'"
+ Kontext
+ if active.exists then
+ active.Yes
+ end if
+ Kontext "BeschriftungsbereichFestlegen"
+ '/// Close 'Define Label Range' – dialog with 'Cancel'
+ printlog " Close 'Define Label Range' – dialog with 'Cancel'"
+ BeschriftungsbereichFestlegen.Cancel
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertNote
+'///<u><b>Insert - Note</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Insert a note via 'Insert – Note'
+ printlog " Insert a note via 'Insert – Note'"
+ InsertNoteCalc
+ Kontext
+ '/// Enter 'This is a <Return> Testtext' into the note
+ printlog " Enter 'This is a <Return> Testtext' into the note"
+ DocumentCalc.TypeKeys "This is a <Return> Testtext"
+ '/// Leave note with <Escape>
+ printlog " Leave note with <Escape>"
+ DocumentCalc.TypeKeys "<Escape>"
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertPictureFromFile
+'///<u><b>Insert - Picture – From File</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Insert Picture' – dialog by 'Insert – Picture – From File'
+ printlog " Open 'Insert Picture' – dialog by 'Insert – Picture – From File'"
+ InsertGraphicsFromFile
+ Kontext "GrafikEinfuegenDlg"
+ Call DialogTest (GrafikEinfuegenDlg)
+ '/// Enter filename 'global\input\graf_inp\'
+ printlog " Enter filename 'global\input\graf_inp\borabora.jpg'"
+ Dateiname.Settext convertpath(gTesttoolpath + "global\input\graf_inp\borabora.jpg")
+ '/// Verify that there are more than one filter available
+ printlog " Verify that there are more than one filter available"
+ if Dateityp.GetItemCount < 2 then
+ warnlog "The filterlist is empty"
+ end if
+ '/// Check 'Link' – option
+ printlog " Check 'Link' – option"
+ Link.Check
+ '/// Check 'Preview' - option
+ printlog " Check 'Preview' - option"
+ Preview.Check
+ '/// Close dialog with 'Open'
+ printlog " Close dialog with 'Open'"
+ Oeffnen.Click
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertMovieSound
+'///<u><b>Insert - Movie and Sound</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Insert Movie and Sound' – dialog by 'Insert – Movie and Sound'
+ printlog " Open 'Insert Movie and Sound' – dialog by 'Insert – Movie and Sound'"
+ InsertMovieAndSound
+ Kontext "OeffnenDLG"
+ '/// Verify that there are more than one filter available
+ printlog " Verify that there are more than one filter available"
+ if Dateityp.GetItemCount < 2 then
+ warnlog "The filterlist is empty"
+ end if
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ OeffnenDLG.Cancel
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertObjectOLE
+'///<u><b>Insert - Object – OLE Object</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Insert OLE Object' – dialog by 'Insert – Object – OLE Object'
+ printlog " Open 'Insert OLE Object' – dialog by 'Insert – Object – OLE Object'"
+ InsertObjectOLEObject
+ Kontext "OLEObjektEinfuegen"
+ '/// Choose 'Create new'
+ printlog " Choose 'Create new'"
+ NeuErstellen.Check
+ Call DialogTest (OLEObjektEinfuegen, 1)
+ '/// Check that there are more than 1 entries (amount is dependant from operating system)
+ printlog " Check that there are more than 1 entries (amount is dependant from operating system)"
+ if Objekttyp.getitemcount < 2 then
+ warnlog "There are no OLE-Objects in the listbox"
+ end if
+ '/// Choose 'Create from file'
+ printlog " Choose 'Create from file'"
+ AusDateierstellen.Check
+ Call DialogTest (OLEObjektEinfuegen, 2)
+ '/// Click on 'Search' – button
+ printlog " Click on 'Search' – button"
+ Durchsuchen.Click
+ Kontext "OeffnenDLG"
+ '/// Close 'Open' – dialog with 'Cancel'
+ printlog " Close 'Open' – dialog with 'Cancel'"
+ OeffnenDLG.Cancel
+ Kontext "OLEObjektEinfuegen"
+ '/// Check option 'Link to file'
+ printlog " Check option 'Link to file'"
+ Verknuepfen.check
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ OLEObjektEinfuegen.Cancel
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertObjectPlugin
+'///<u><b>Insert - Object – Plug-in</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Insert Plug-in' – dialog by 'Insert – Object – Plug-in'
+ printlog " Open 'Insert Plug-in' – dialog by 'Insert – Object – Plug-in'"
+ InsertObjectPlugIn
+ Kontext "PlugInEinfuegen"
+ Call DialogTest (PlugInEinfuegen)
+ '/// Click on 'Browse' – button
+ printlog " Click on 'Browse' – button"
+ DurchSuchen.Click
+ Kontext "OeffnenDLG"
+ '/// Click on 'Default Directory' – button
+ printlog " Click on 'Default Directory' – button"
+ Standard.click
+ '/// Click on 'Create New Directory' – button
+ printlog " Click on 'Create New Directory' – button"
+ NeuerOrdner.Click
+ Kontext "NeuerOrdner"
+ '/// Close namedialog with 'Cancel'
+ printlog " Close namedialog with 'Cancel'"
+ NeuerOrdner.cancel
+ Kontext "OeffnenDLG"
+ '/// Close 'Open' – dialog with 'Cancel'
+ printlog " Close 'Open' – dialog with 'Cancel'"
+ OeffnenDlg.Cancel
+ '/// Close 'Insert Plug-in' – dialog with 'Cancel'
+ printlog " Close 'Insert Plug-in' – dialog with 'Cancel'"
+ Kontext "PluginEinfuegen"
+ PlugInEinfuegen.Cancel
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertObjectSound
+'///<u><b>Insert - Object – Sound</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ try
+ '/// If enabled (depends on additional instalations on the OS) open the 'Insert Sound' – dialog by 'Insert – Object – Sound'
+ printlog " If enabled (depends on additional instalations on the OS) open the 'Insert Sound' – dialog by 'Insert – Object – Sound'"
+ InsertObjectSound
+ Kontext "OeffnenDlg"
+ '/// Click on 'Default Directory' – button
+ printlog " Click on 'Default Directory' – button"
+ Standard.click
+ '/// Click on 'Create New Directory' – button
+ printlog " Click on 'Create New Directory' – button"
+ NeuerOrdner.Click
+ Kontext "NeuerOrdner"
+ '/// Close namedialog with 'Cancel'
+ printlog " Close namedialog with 'Cancel'"
+ NeuerOrdner.cancel
+ Kontext "OeffnenDLG"
+ '/// Close 'Open' – dialog with 'Cancel'
+ printlog " Close 'Open' – dialog with 'Cancel'"
+ OeffnenDlg.Cancel
+ catch
+ printlog "Insert - Object - Sound is not possible on this machine"
+ endcatch
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertObjectVideo
+'///<u><b>Insert - Object – Video</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+try
+ '/// If enabled (depends on additional instalations on the OS) open the 'Insert Video' – dialog by 'Insert – Object – Sound'
+ printlog " If enabled (depends on additional instalations on the OS) open the 'Insert Video' – dialog by 'Insert – Object – Sound'"
+ InsertObjectVideo
+ Kontext "OeffnenDlg"
+ '/// Click on 'Default Directory' – button
+ printlog " Click on 'Default Directory' – button"
+ Standard.click
+ '/// Click on 'Create New Directory' – button
+ printlog " Click on 'Create New Directory' – button"
+ NeuerOrdner.Click
+ Kontext "NeuerOrdner"
+ '/// Close namedialog with 'Cancel'
+ printlog " Close namedialog with 'Cancel'"
+ NeuerOrdner.cancel
+ Kontext "OeffnenDLG"
+ '/// Close 'Open' – dialog with 'Cancel'
+ printlog " Close 'Open' – dialog with 'Cancel'"
+ OeffnenDlg.Cancel
+ catch
+ printlog "Insert - Object - Video is not possible on this machine"
+ endcatch
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertObjectFormular
+'///<u><b>Insert - Object – Formular</b></u>
+
+ '/// Open new Spraedsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Insert Formular by 'Insert – Object – Formular'
+ printlog " Insert Formular by 'Insert – Object – Formular'"
+ InsertObjectFormulaCalc
+ Kontext "SelectionMath"
+ if SelectionMath.Exists(2) then
+ call DialogTest (SelectionMath)
+ else
+ try
+ Kontext "DocumentCalc"
+ ViewSelectionCalc
+ Kontext "SelectionMath"
+ call DialogTest (SelectionMath)
+ catch
+ qaerrorlog "#i93427# Math Selection Dialog is not available"
+ endcatch
+ end if
+ '/// Close Formular with 'Esc'
+ printlog " Close Formular with 'Esc'"
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys "<Escape>"
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertChart
+'///<u><b>Insert - Chart</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Chart Wizard' by 'Insert – Chart'
+ printlog " Open 'Chart Wizard' by 'Insert – Chart'"
+ InsertChart
+ Kontext "ChartWizard"
+ if ChartWizard.Exists(1) then
+ Call Dialogtest(ChartWizard)
+ '/// Close 'Chart Wizard' with 'Cancel'
+ ChartWizard.Cancel
+ else
+ warnlog "Chart wizard is not available"
+ end if
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tInsertFloatingFrame
+'///<u><b>Insert - Floating Frame</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Floating Frame Properties' – dialog by 'Insert – Floating Frame'
+ printlog " Open 'Floating Frame Properties' – dialog by 'Insert – Floating Frame'"
+ InsertFloatingFrame
+ Kontext "TabEigenschaften"
+ Dialogtest (TabEigenschaften)
+ '/// Click on 'Browse' – button for 'Contents'
+ printlog " Click on 'Browse' – button for 'Contents'"
+ Oeffnen.Click
+ Kontext "OeffnenDlg"
+ '/// Click on 'Default Directory' – button
+ printlog " Click on 'Default Directory' – button"
+ Standard.click
+ '/// Click on 'Create New Directory' – button
+ printlog " Click on 'Create New Directory' – button"
+ NeuerOrdner.Click
+ Kontext "NeuerOrdner"
+ '/// Close namedialog with 'Cancel'
+ printlog " Close namedialog with 'Cancel'"
+ NeuerOrdner.cancel
+ Kontext "OeffnenDLG"
+ '/// Close 'Select File for Floating Frame' – dialog with 'Cancel'
+ printlog " Close 'Select File for Floating Frame' – dialog with 'Cancel'"
+ OeffnenDlg.Cancel
+ Kontext "TabEigenschaften"
+ '/// Check 'Scrollbar' on
+ printlog " Check 'Scrollbar' on"
+ An.Check
+ '/// Check 'Scrollbar' off
+ printlog " Check 'Scrollbar' off"
+ Aus.Check
+ '/// Check 'Scrollbar' automatic
+ printlog " Check 'Scrollbar' automatic"
+ Automatisch.Check
+ '/// Check 'Border Off'
+ printlog " Check 'Border Off'"
+ UmrandungAus.Check
+ '/// Check 'Border On'
+ printlog " Check 'Border On'"
+ UmrandungAn.Check
+ '/// Uncheck 'Default'
+ printlog " Uncheck 'Default'"
+ BreiteStandard.UnCheck
+ '/// Increase 'Width' by 1
+ printlog " Increase 'Width' by 1"
+ Breite.More
+ '/// Increase 'Height' by 1
+ printlog " Increase 'Height' by 1"
+ Hoehe.More
+ '/// Check 'Default'
+ printlog " Check 'Default'"
+ HoeheStandard.Check
+ '/// Close 'Floating Frame Properties' – dialog with 'Cancel'
+ printlog " Close 'Floating Frame Properties' – dialog with 'Cancel'"
+ TabEigenschaften.Cancel
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+
diff --git a/testautomation/spreadsheet/required/includes/c_upd_toolsmenu.inc b/testautomation/spreadsheet/required/includes/c_upd_toolsmenu.inc
new file mode 100644
index 000000000000..74598099b43d
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_toolsmenu.inc
@@ -0,0 +1,957 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - Tools Menu Part I
+'*
+'\***********************************************************************
+
+sub c_upd_toolsmenu
+
+ Printlog Chr(13) + "--------- Tools Menu Part I (c_upd_toolsmenu.inc) ---------"
+
+ call tToolsSpellcheck
+ call tToolsHangulHanjaConversion
+ call tToolsLanguageChineseTranslation
+ call tToolsLanguageThesaurus
+ call tToolsLanguageHyphenation
+ call tToolsDetective
+ call tToolsAutoCorrect
+ call tToolsGoalSeek
+ call tToolsScenario
+ call tToolsProtectSheet
+ call tToolsProtectDocument
+ call tToolsCellContents
+ call tToolsGallery
+ call tToolsMediaPlayer
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tToolsSpellcheck
+'///<u><b>Tools - Spellcheck</b></u>
+
+ Dim iDictionaries as integer
+
+ printlog " Load document from 'gTesttoolPath + spreadsheet\required\input\english.ods"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\required\input\english.ods" )
+ '/// Enter 'fgsdftk' in a cell
+ printlog " Enter 'fgsdftk' in a cell"
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys "fgsdftk<Return><Up>"
+ '/// Open 'Spellcheck' – dialog via 'Tools – Spellcheck'
+ printlog " Open 'Spellcheck' – dialog via 'Tools – Spellcheck'"
+ try
+ ToolsSpellcheck
+ catch
+ 'for some languages there is no spellchecker available.
+ warnlog "Spellchecking not possible"
+ call hCloseDocument
+ goto endsub
+ endcatch
+ ' If 'blabla' is already in the dictionary (because of a former failed testrun)
+ ' there will be a messagebox that the spellchecking has finished. The test will abort.
+ Kontext "Active"
+ If Active.Exists then
+ warnlog "It seems that a former testrun has failed, test will abort"
+ printlog "Messagebox: " & Active.GetText
+ Active.OK
+ call hCloseDocument
+ goto endsub
+ end if
+ Kontext "Spellcheck"
+ DialogTest ( Spellcheck )
+ '/// Verify that the 'Add' – button shows dictionaries
+ printlog " Verify that the 'Add' – button shows dictionaries"
+ qaErrorlog "Due to problems on Sols the AddToDictionary-Button is not tested"
+' try
+' AddToDictionary.Click
+' sleep 1
+' If hMenuItemGetCount < 1 then
+' warnlog "There are no dictionaries available"
+' end if
+' catch
+' warnlog "The menu on the ADD button could not be opened"
+' endcatch
+ '/// Verify that the 'Dictionary language' – combobox has items
+ printlog " Verify that the 'Dictionary language' – combobox has items"
+ If DictionaryLanguage.GetItemCount < 1 then
+ warnlog "There are no languages available"
+ end if
+ '/// Open 'Options'- dialog by clicking 'Options' – button
+ printlog " Open 'Options'- dialog by clicking 'Options' – button"
+ SpellcheckOptions.Click
+ Kontext "TabLinguistik"
+ DialogTest ( TabLinguistik )
+ 'Memorize the amount of available dictionaries
+ iDictionaries = Benutzerwoerterbuch.GetItemCount
+ Kontext "TabLinguistik"
+ '/// Open 'New Dictionary' – dialog by clicking 'New' – button
+ printlog " Open 'New Dictionary' – dialog by clicking 'New' – button"
+ Neu.Click
+ Kontext "BenutzerwoerterbuchAnlegen"
+ Call DialogTest ( BenutzerwoerterbuchAnlegen )
+ '/// Verify that the 'Language' combobox has items
+ printlog " Verify that the 'Language' combobox has items"
+ If Sprache.GetItemCount < 1 then
+ warnlog "There are no languages available"
+ end if
+ '/// Enter name 'Testdictionary'
+ printlog " Enter name 'Testdictionary'"
+ Woerterbuchname.TypeKeys "Testdictionary"
+ '/// Uncheck 'Exception'
+ printlog " Uncheck 'Exception'"
+ Ausnahme.UnCheck
+ '/// Close dialog with 'OK'
+ printlog " Close dialog with 'OK'"
+ BenutzerwoerterbuchAnlegen.OK
+ Kontext "TabLinguistik"
+ '/// Select 'Testdictionary'
+ Benutzerwoerterbuch.Select (iDictionaries + 1)
+ '/// Click on 'Edit' – button to open 'Edit Custom Dictionary' – dialog
+ printlog " Click on 'Edit' – button to open 'Edit Custom Dictionary' – dialog"
+ Bearbeiten.Click
+ Kontext "BenutzerwoerterbuchBearbeiten"
+ Call DialogTest ( BenutzerwoerterbuchBearbeiten )
+ '/// Verify that the 'Book' combobox has items
+ printlog " Verify that the 'Book' combobox has items"
+ If Buch.GetItemCount < 1 then
+ warnlog "There are no dictionaries available"
+ end if
+ '/// Verify that the 'Language' combobox has items
+ printlog " Verify that the 'Language' combobox has items"
+ If Sprache.GetItemCount < 1 then
+ warnlog "There are no languages available"
+ end if
+ '/// Close dialog with 'Close'
+ printlog " Close dialog with 'Close'"
+ BenutzerwoerterbuchBearbeiten.Close
+ Kontext "TabLinguistik"
+ '/// Click on 'Delete' button
+ printlog " Click on 'Delete' button"
+ Loeschen.Click
+ '/// Close messageboc with 'Yes'
+ printlog " Close messageboc with 'Yes'"
+ Kontext "Active"
+ If Active.Exists then
+ Active.Yes
+ end if
+ Kontext "TabLinguistik"
+ '/// Select ninth option (Minimal number of ...)
+ printlog " Select ninth option (Minimal number of ...)"
+ Optionen.Select (9)
+ '/// Click on 'Edit' – button
+ printlog " Click on 'Edit' – button"
+ OptionenBearbeiten.Click
+ Kontext "HyphenationOptions"
+ Call DialogTest ( HyphenationOptions )
+ '/// Decrease 'Minimal word length'
+ printlog " Decrease 'Minimal word length'"
+ ZeichenVorUmbruch.More
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ HyphenationOptions.Cancel
+ Kontext "TabLinguistik"
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ TabLinguistik.Cancel
+ Kontext "Spellcheck"
+ '/// Close 'Spellcheck' – dialog with 'Close'
+ printlog " Close 'Spellcheck' – dialog with 'Close'"
+ Spellcheck.Close
+ '/// Close starting document
+ printlog " Close starting document"
+ call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsHangulHanjaConversion
+'///<u><b>Tools - Hangul/Hanja Conversion</b></u>
+
+ Dim bAsianLanguage as boolean
+ Dim bCTLlanguage as boolean
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enable language support for CJK and CTL (Tools-Options-Language Support)
+ printlog " Enable language support for CJK and CTL (Tools-Options-Language Support)"
+ bAsianLanguage = ActiveDeactivateAsianSupport(TRUE)
+ bCTLLanguage = ActiveDeactivateCTLSupport(TRUE)
+ '/// Load document from 'gTesttoolPath + "spreadsheet\required\input\korean.ods"'
+ printlog " Load document from 'gTesttoolPath + spreadsheet\required\input\korean.ods"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\required\input\korean.ods" )
+ '/// Select cell B1
+ printlog " Select cell B1"
+ Call fCalcSelectRange ("B1")
+ '/// Open 'Hangul/Hanja Conversion' dialog via 'Tools – Language – Hangul/Hanja Conversion'
+ printlog " Open 'Hangul/Hanja Conversion' dialog via 'Tools – Language – Hangul/Hanja Conversion'"
+ ToolsLanguageHangulHanjaConversion
+ Kontext "HangulHanjaConversion"
+ if HangulHanjaConversion.Exists (5) then
+ Call DialogTest ( HangulHanjaConversion )
+ else
+ call hCloseDocument
+ goto endsub
+ end if
+ '/// Click on 'Options' button to open 'Hangul/Hanja Options' dialog
+ printlog " Click on 'Options' button to open 'Hangul/Hanja Options' dialog"
+ Options.Click
+ Kontext "HangulHanjaOptions"
+ if HangulHanjaOptions.Exists (5) then
+ Call DialogTest ( HangulHanjaOptions )
+ else
+ warnlog " Hangul/Hanja Options' dialog could not be open"
+ HangulHanjaConversion.Cancel
+ call hCloseDocument
+ goto endsub
+ end if
+ '/// Click on 'New' button
+ printlog " Click on 'New' button"
+ NewDictionary.Click
+ Kontext "HangulHanjaNewDictionary"
+ if HangulHanjaNewDictionary.Exists (5) then
+ Call DialogTest ( HangulHanjaNewDictionary )
+ else
+ warnlog " HangulHanjaNewDictionary dialog could not be opened"
+ Kontext "HangulHanjaOptions"
+ HangulHanjaOptions.Cancel
+ Kontext "HangulHanjaConversion"
+ HangulHanjaConversion.Cancel
+ call hCloseDocument
+ goto endsub
+ end if
+ '/// Enter string 'Dictionary_added_by_Testtool'
+ printlog " Enter string 'Dictionary_added_by_Testtool'"
+ DictionaryName.Settext "Dictionary_added_by_Testtool"
+ '/// Close dialog with 'OK'
+ printlog " Close dialog with 'OK'"
+ HangulHanjaNewDictionary.OK
+ sleep 1
+ Kontext "HangulHanjaOptions"
+ '/// Click on 'Edit' button
+ printlog " Click on 'Edit' button"
+ if HangulHanjaOptions.Exists (5) then
+ EditDictionary.Click
+ sleep 1
+ else
+ warnlog " Edit button could not be accessed"
+ HangulHanjaConversion.Cancel
+ call hCloseDocument
+ goto endsub
+ end if
+ Kontext "HangulHanjaEditDictionary"
+ if HangulHanjaEditDictionary.Exists (5) then
+ Call DialogTest ( HangulHanjaEditDictionary )
+ else
+ warnlog " HangulHanjaEditDictionary dialog could not be opened"
+ Kontext "HangulHanjaOptions"
+ HangulHanjaOptions.Cancel
+ Kontext "HangulHanjaConversion"
+ HangulHanjaConversion.Cancel
+ call hCloseDocument
+ goto endsub
+ end if
+ '/// Close 'Edit Custom Dictionary' dialog with 'Close'
+ printlog " Close 'Edit Custom Dictionary' dialog with 'Close'"
+ HangulHanjaEditDictionary.Close
+ Kontext "HangulHanjaOptions"
+ '/// Click on 'Delete' button
+ printlog " Click on 'Delete' button"
+ DeleteDictionary.Click
+ '/// UnCheck 'Ignore post-positional words'
+ printlog " UnCheck 'Ignore post-positional words'"
+ IgnorePostPositionalWord.UnCheck
+ '/// Check 'Show entries'
+ printlog " Check 'Show entries'"
+ ShowEntries.Check
+ '/// Check 'Replace Unique Entries'
+ printlog " Check 'Replace Unique Entries'"
+ ReplaceUniqueEntries.Check
+ '/// Close 'Hangul/Hanja Options' dialog with 'Cancel'
+ printlog " Close 'Hangul/Hanja Options' dialog with 'Cancel'"
+ HangulHanjaOptions.Cancel
+ Kontext "HangulHanjaConversion"
+ '/// Close 'Hangul/Hanja Conversion' dialog with 'Close'
+ printlog " Close 'Hangul/Hanja Conversion' dialog with 'Close'"
+ HangulHanjaConversion.Close
+ '/// Set support for CJK and CTL back to default (Tools – Options – Language Support)
+ printlog " Set support for CJK and CTL back to default (Tools – Options – Language Support)"
+ if bAsianLanguage = FALSE then
+ Call ActiveDeactivateAsianSupport(FALSE)
+ end if
+ if bCTLLanguage = FALSE then
+ Call ActiveDeactivateCTLSupport(FALSE)
+ end if
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsLanguageChineseTranslation
+'///<u><b>Tools – Language – Chinese Translation</b></u>
+
+ Dim bAsianLanguage as boolean
+ Dim bCTLlanguage as boolean
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enable language support for CJK and CTL (Tools-Options-Language Support)
+ printlog " Enable language support for CJK and CTL (Tools-Options-Language Support)"
+ bAsianLanguage = ActiveDeactivateAsianSupport(TRUE)
+ bCTLLanguage = ActiveDeactivateCTLSupport(TRUE)
+ '/// Open 'Chinese Translation' dialog by 'Tools – Language – Chinese Translation'
+ printlog " Open 'Chinese Translation' dialog by 'Tools – Language – Chinese Translation'"
+ ToolsLanguageChineseTranslation
+ Kontext "ChineseTranslation"
+ Call DialogTest ( ChineseTranslation )
+ '/// Click on 'Edit Terms' button to open 'Edit Dictionary' dialog
+ printlog " Click on 'Edit Terms' button to open 'Edit Dictionary' dialog"
+ EditTerms.Click
+ Kontext "ChineseDictionary"
+ Call DialogTest ( ChineseDictionary )
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ ChineseDictionary.Cancel
+ Kontext "ChineseTranslation"
+ '/// Close 'Chinese Translation' dialog with 'Cancel'
+ printlog " Close 'Chinese Translation' dialog with 'Cancel'"
+ ChineseTranslation.Cancel
+ '/// Set support for CJK and CTL back to default (Tools – Options – Language Support)
+ printlog " Set support for CJK and CTL back to default (Tools – Options – Language Support)"
+ if bAsianLanguage = FALSE then
+ Call ActiveDeactivateAsianSupport(FALSE)
+ end if
+ if bCTLLanguage = FALSE then
+ Call ActiveDeactivateCTLSupport(FALSE)
+ end if
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsLanguageThesaurus
+'///<u><b>Tools – Language – Chinese Translation</b></u>
+
+ printlog " Load document from 'gTesttoolPath + spreadsheet\required\input\english.ods"
+ hFileOpenLocally( gTesttoolPath & "spreadsheet\required\input\english.ods" )
+ Kontext "DocumentCalc"
+ printlog " Enter 'test' in a cell"
+ Call fCalcSelectRange ("B2")
+ DocumentCalc.TypeKeys "test<Return><Up>"
+ printlog " Open 'Thesaurus' dialog by 'Tools – Language – Thesaurus"
+ try
+ ToolsLanguageThesaurus
+ catch
+ warnlog "Thesaurus did not work"
+ call hCloseDocument
+ goto endsub
+ endcatch
+ Kontext "Thesaurus"
+ DialogTest ( Thesaurus )
+ printlog " Check if the cellcontent test is correctly read"
+ if CurrentWord.GetSelText <> "test" then
+ warnlog "The cellcontent is not test but is " & CurrentWord.GetSelText
+ end if
+ printlog " Check that there are alternatives available"
+ if Alternatives.GetItemCount < 1 then
+ warnlog "There are no alternatives available"
+ else
+ Alternatives.Select (1)
+ sleep (1)
+ if ReplaceWith.GetText = "" then
+ warnlog "The repacle with field is empty"
+ end if
+ end if
+ printlog " Close 'Thesaurus' with 'Cancel'"
+ Thesaurus.Cancel
+ printlog " Close document"
+ call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsLanguageHyphenation
+'///<u><b>Tools – Language – Hyphenation</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Enter 'blabla' in a cell
+ printlog " Enter 'blabla' in a cell"
+ Call fCalcSelectRange ("B2")
+ DocumentCalc.TypeKeys "blabla<Return><Up>"
+ '/// Use 'Tools – Language – Hyphenation' to open 'Format Cells' dialog
+ printlog " Use 'Tools – Language – Hyphenation' to open 'Format Cells' dialog"
+ ToolsLanguageHyphenateCalc
+ Kontext "TabAusrichtung"
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ TabAusrichtung.Cancel
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsDetective
+'///<u><b>Tools – Detective</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enter '1' in cell A1
+ printlog " Enter '1' in cell A1"
+ Call fCalcSelectRange ("A1")
+ DocumentCalc.TypeKeys "1<Return>"
+ '/// Enter '=A1' in cell C4
+ printlog " Enter '=A1' in cell C4"
+ Call fCalcSelectRange ("C4")
+ DocumentCalc.TypeKeys "=A1<Return>"
+ '/// Select cell C4
+ printlog " Select cell C4"
+ Call fCalcSelectRange ("C4")
+ '/// Enable 'Trace Precedents' by 'Tools – Detective – Trace Precedents'
+ printlog " Enable 'Trace Precedents' by 'Tools – Detective – Trace Precedents'"
+ ToolsDetectiveTracePrecedents
+ '/// Disable 'Trace Precedents' by 'Tools – Detective – Remove Precedents'
+ printlog " Disable 'Trace Precedents' by 'Tools – Detective – Remove Precedents'"
+ ToolsDetectiveRemovePrecedents
+ '/// Select cell A1
+ printlog " Select cell A1"
+ Call fCalcSelectRange ("A1")
+ '/// Enable 'Trace Dependents' by 'Tools – Detective – Trace Dependents'
+ printlog " Enable 'Trace Dependents' by 'Tools – Detective – Trace Dependents'"
+ ToolsDetectiveTraceDependents
+ '/// Disable 'Trace Dependents' by 'Tools – Detective – Remove Dependents'
+ printlog " Disable 'Trace Dependents' by 'Tools – Detective – Remove Dependents'"
+ ToolsDetectiveRemoveDependents
+ '/// Remove 'All Traces' by 'Tools – Detective – Remove All Traces'
+ printlog " Remove 'All Traces' by 'Tools – Detective – Remove All Traces'"
+ ToolsDetectiveRemoveAllTraces
+ '/// Enter '=C4/0' in cell C7
+ printlog " Enter '=C4/0' in cell C7"
+ Call fCalcSelectRange ("C7")
+ DocumentCalc.TypeKeys "=C4/0<Return>"
+ '/// Select cell C7
+ printlog " Select cell C7"
+ Call fCalcSelectRange ("C7")
+ '/// Enable 'Trace Error' by 'Tools – Detective – Trace Error'
+ printlog " Enable 'Trace Error' by 'Tools – Detective – Trace Error'"
+ ToolsDetectiveTraceError
+ '/// Enable 'Mark Invalid Data' by 'Tools – Detective – Mark Invalid Data'
+ printlog " Enable 'Mark Invalid Data' by 'Tools – Detective – Mark Invalid Data'"
+ ToolsDetectiveMarkInvalidData
+ '/// Refresh traces by 'Tools – Detective – Refresh Traces'
+ printlog " Refresh traces by 'Tools – Detective – Refresh Traces'"
+ ToolsDetectiveRefreshTraces
+ '/// Switch mode of autorefreshing by 'Tools – Detective – AutoRefresh'
+ printlog " Switch mode of autorefreshing by 'Tools – Detective – AutoRefresh'"
+ ToolsDetectiveAutoUpdate
+ '/// Switch mode back to default for autorefreshing by 'Tools – Detective – AutoRefresh'
+ printlog " Switch mode back to default for autorefreshing by 'Tools – Detective – AutoRefresh'"
+ ToolsDetectiveAutoUpdate
+ '/// Switch 'Fill Mode' by 'Tools – Detective – Fill Mode'
+ printlog " Switch 'Fill Mode' by 'Tools – Detective – Fill Mode'"
+ ToolsDetectiveFillMode
+ '/// Switch 'Fill Mode' back to default by 'Tools – Detective – Fill Mode'
+ printlog " Switch 'Fill Mode' back to default by 'Tools – Detective – Fill Mode'"
+ ToolsDetectiveFillMode
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsAutoCorrect
+'///<u><b>Tools – AutoCorrect</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'AutoCorrect' dialog by 'Tools – AutoCorrect'
+ printlog " Open 'AutoCorrect' dialog by 'Tools – AutoCorrect'"
+ ToolsAutocorrect
+ '/// Switch to tabpage 'Replace'
+ printlog " Switch to tabpage 'Replace'"
+ Kontext
+ active.SetPage TabErsetzung
+ Kontext "TabErsetzung"
+ Call DialogTest ( TabErsetzung )
+ '/// Verify that the language combobox has items
+ printlog " Verify that the language combobox has items"
+ if WelcheSprache.GetItemCount < 1 then
+ warnlog "The Language listbox is empty"
+ end if
+ '/// Enter string 'Testerentrie' in 'Replace' field
+ printlog " Enter string 'Testerentrie' in 'Replace' field"
+ Kuerzel.SetText "Testerentrie"
+ '/// Enter string 'Testentrie' in 'With' field
+ printlog " Enter string 'Testentrie' in 'With' field"
+ ErsetzenDurch.SetText "Testentrie"
+ '/// Click on 'New' button
+ printlog " Click on 'New' button"
+ Neu.Click
+ '/// Click on 'Delete' button
+ printlog " Click on 'Delete' button"
+ Loeschen.Click
+ '/// Switch to tabpage 'Exceptions'
+ printlog " Switch to tabpage 'Exceptions'"
+ Kontext
+ active.SetPage TabAusnahmen
+ Kontext "TabAusnahmen"
+ Call DialogTest ( TabAusnahmen )
+ '/// Enter string 'olala' as 'Abbreviation'
+ printlog " Enter string 'olala' as 'Abbreviation'"
+ Abkuerzungen.SetText "olala"
+ '/// Press 'New' button
+ printlog " Press 'New' button"
+ AbkuerzungenNeu.click
+ '/// Press 'Delete' button
+ printlog " Press 'Delete' button"
+ AbkuerzungenLoeschen.click
+ '/// Enter string 'TTLauncher' in 'Words with ...'
+ printlog " Enter string 'TTLauncher' in 'Words with ...'"
+ Woerter.SetText "TTLauncher"
+ '/// Press 'New' button
+ printlog " Press 'New' button"
+ WoerterNeu.click
+ '/// Press 'Delete' button
+ printlog " Press 'Delete' button"
+ WoerterLoeschen.click
+ '/// Switch to tabpage 'Options'
+ printlog " Switch to tabpage 'Options'"
+ Kontext
+ active.SetPage TabOptionen
+ Kontext "TabOptionen"
+ Call DialogTest ( TabOptionen )
+ '/// Switch to tabpage 'Custom Quotes'
+ printlog " Switch to tabpage 'Custom Quotes'"
+ Kontext
+ active.SetPage TabLocalizedOptions
+ Kontext "TabLocalizedOptions"
+ Call DialogTest ( TabLocalizedOptions )
+ '/// Press on button for 'Start quote' for 'Single quotes'
+ printlog " Press on button for 'Start quote' for 'Single quotes'"
+ SingleQuotesStart.Click
+ Kontext "Sonderzeichen"
+ '/// Close 'Start quote' dialog with 'Cancel'
+ printlog " Close 'Start quote' dialog with 'Cancel'"
+ Sonderzeichen.Cancel
+ Kontext "TabLocalizedOptions"
+ '/// Press on button for 'End quote' for 'Single quotes'
+ printlog " Press on button for 'End quote' for 'Single quotes'"
+ SingleQuotesEnd.Click
+ Kontext "Sonderzeichen"
+ '/// Close 'End quote' dialog with 'Cancel'
+ printlog " Close 'End quote' dialog with 'Cancel'"
+ Sonderzeichen.Cancel
+ Kontext "TabLocalizedOptions"
+ '/// Click on 'Default' button for 'Single quotes'
+ printlog " Click on 'Default' button for 'Single quotes'"
+ SingleQuotesDefault.Click
+ '/// Press on button for 'Start quote' for 'Double quotes'
+ printlog " Press on button for 'Start quote' for 'Double quotes'"
+ DoubleQuotesStart.Click
+ Kontext "Sonderzeichen"
+ '/// Close 'Start quote' dialog with 'Cancel'
+ printlog " Close 'Start quote' dialog with 'Cancel'"
+ Sonderzeichen.Cancel
+ Kontext "TabLocalizedOptions"
+ '/// Press on button for 'End quote' for 'Double quotes'
+ printlog " Press on button for 'End quote' for 'Double quotes'"
+ DoubleQuotesEnd.Click
+ Kontext "Sonderzeichen"
+ '/// Close 'End quote' dialog with 'Cancel'
+ printlog " Close 'End quote' dialog with 'Cancel'"
+ Sonderzeichen.Cancel
+ Kontext "TabLocalizedOptions"
+ '/// Click on 'Default' button for 'Double quotes'
+ printlog " Click on 'Default' button for 'Double quotes'"
+ DoubleQuotesDefault.Click
+ '/// Close 'AutoCorrect' dialog with 'Cancel'
+ printlog " Close 'AutoCorrect' dialog with 'Cancel'"
+ TabLocalizedOptions.cancel
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsGoalSeek
+'///<u><b>Tools - Goal Seek</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Goal Seek' dialog by 'Tools – Goal Seek'
+ printlog " Open 'Goal Seek' dialog by 'Tools – Goal Seek'"
+ ToolsGoalSeek
+ Kontext "Zielwertsuche"
+ DialogTest ( Zielwertsuche )
+ '/// Click on 'Shrink' button for 'Formula Cell'
+ printlog " Click on 'Shrink' button for 'Formula Cell'"
+ Vorgaben1.Click
+ '/// Close rangechooser with 'Shrink' button
+ printlog " Close rangechooser with 'Shrink' button"
+ Vorgaben1.Click
+ '/// Click on 'Shrink' button for 'Variable Cell'
+ printlog " Click on 'Shrink' button for 'Variable Cell'"
+ Vorgaben2.Click
+ '/// Close rangechooser with 'Shrink' button
+ printlog " Close rangechooser with 'Shrink' button"
+ Vorgaben2.Click
+ '/// Close 'Goal Seek' dialog with 'Cancel'
+ printlog " Close 'Goal Seek' dialog with 'Cancel'"
+ Zielwertsuche.Cancel
+ '/// Close document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsScenario
+'///<u><b>Tools - Scenario</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enter '1' in A1, '2' in A2, '3' in A3
+ printlog " Enter '1' in A1, '2' in A2, '3' in A3"
+ Call fCalcSelectRange ("A1")
+ DocumentCalc.TypeKeys "1<Return>2<Return>3<Return>"
+ '/// Select cells A1:A3
+ printlog " Select cells A1:A3"
+ Call fCalcSelectRange ("A1:A3")
+ '/// Open 'Create Scenario' dialog by 'Tools – Scenario'
+ printlog " Open 'Create Scenario' dialog by 'Tools – Scenario'"
+ ToolsScenarios
+ Kontext "SzenarioAnlegen"
+ DialogTest ( SzenarioAnlegen )
+ '/// Enter 'Scenario_by_Testtool' as 'Name of Scenario'
+ printlog " Enter 'Scenario_by_Testtool' as 'Name of Scenario'"
+ SzenarioName.SetText "Scenario_by_Testtool"
+ '/// Enter 'Comment_by_Testtool' as 'Comment'
+ printlog " Enter 'Comment_by_Testtool' as 'Comment'"
+ Kommentar.SetText "Comment_by_Testtool"
+ '/// Verify that the color combobox has items
+ printlog " Verify that the color combobox has items"
+ If Rahmenfarbe.GetItemCount < 1 then
+ warnlog "The colorbox is empty"
+ end if
+ '/// Check 'Display border'
+ printlog " Check 'Display border'"
+ RahmenAnzeigen.Check
+ '/// Check 'Copy back'
+ printlog " Check 'Copy back'"
+ Zurueckkopieren.Check
+ '/// UnCheck 'Copy entire sheet'
+ printlog " UnCheck 'Copy entire sheet'"
+ GanzeTabelle.UnCheck
+ '/// Check 'PreventChanges'
+ printlog " Check 'PreventChanges'"
+ PreventChanges.Check
+ '/// Close 'Create Scenario' dialog with 'Cancel'
+ printlog " Close 'Create Scenario' dialog with 'Cancel'"
+ SzenarioAnlegen.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsProtectSheet
+'///<u><b>Tools - Protect – Sheet</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Protect Sheet' dialog by 'Tools – Protect – Sheet'
+ printlog " Open 'Protect Sheet' dialog by 'Tools – Protect – Sheet'"
+ ToolsProtectDocumentSheet
+ Kontext "TabelleSchuetzen"
+ DialogTest ( TabelleSchuetzen,1 )
+ '/// Enter 'Secret' as 'Password'
+ printlog " Enter 'Secret' as 'Password'"
+ Passwort.SetText "Secret"
+ '/// Enter 'Secred' as 'Confirm'
+ printlog " Enter 'Secred' as 'Confirm'"
+ Bestaetigung.SetText "Secred"
+ '/// Press 'OK' button
+ printlog " Press 'OK' button"
+ TabelleSchuetzen.Ok
+ '/// Close errormessage with 'OK'
+ printlog " Close errormessage with 'OK'"
+ Kontext "Active"
+ if Active.Exists then
+ DialogTest ( Active )
+ Active.OK
+ else
+ warnlog "There is no error message by confirming a wrong password!"
+ end if
+ '/// Enter 'Secret' as 'Confirm'
+ printlog " Enter 'Secret' as 'Confirm'"
+ Kontext "TabelleSchuetzen"
+ Bestaetigung.SetText "Secret"
+ '/// Press 'OK' button
+ printlog " Press 'OK' button"
+ TabelleSchuetzen.Ok
+ '/// Open 'Unprotect Sheet' dialog by 'Tools - Protect – Sheet'
+ printlog " Open 'Unprotect Sheet' dialog by 'Tools - Protect – Sheet'"
+ ToolsProtectDocumentSheet
+ Kontext "TabelleSchuetzen"
+ DialogTest ( TabelleSchuetzen,2 )
+ '/// Enter string 'Secret'
+ printlog " Enter string 'Secret'"
+ Passwort.setText "Secret"
+ '/// Press 'OK' button
+ printlog " Press 'OK' button"
+ TabelleSchuetzen.Ok
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsProtectDocument
+'///<u><b>Tools - Protect – Document</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Protect Document' dialog by 'Tools – Protect – Document'
+ printlog " Open 'Protect Document' dialog by 'Tools – Protect – Document'"
+ ToolsProtectDocumentDocument
+ Kontext "DokumentSchuetzen"
+ DialogTest ( DokumentSchuetzen,1 )
+ '/// Enter 'Secret' as 'Password'
+ printlog " Enter 'Secret' as 'Password'"
+ Passwort.setText "Secret"
+ '/// Enter 'Secred' as 'Confirm'
+ printlog " Enter 'Secred' as 'Confirm'"
+ Bestaetigung.SetText "Secred"
+ '/// Press 'OK' button
+ printlog " Press 'OK' button"
+ DokumentSchuetzen.ok
+ '/// Close errormessage with 'OK'
+ printlog " Close errormessage with 'OK'"
+ Kontext "Active"
+ if Active.Exists then
+ DialogTest ( Active )
+ Active.OK
+ else
+ warnlog "There is no error message by confirming a wrong password!"
+ end if
+ Kontext "DokumentSchuetzen"
+ '/// Enter 'Secret' as 'Confirm'
+ printlog " Enter 'Secret' as 'Confirm'"
+ Bestaetigung.SetText "Secret"
+ '/// Press 'OK' button
+ printlog " Press 'OK' button"
+ DokumentSchuetzen.OK
+ '/// Open 'Unprotect Document' dialog by 'Tools - Protect – Document'
+ printlog " Open 'Unprotect Document' dialog by 'Tools - Protect – Document'"
+ ToolsProtectDocumentDocument
+ Kontext "DokumentSchuetzen"
+ DialogTest ( DokumentSchuetzen,2 )
+ '/// Enter string 'Secret'
+ printlog " Enter string 'Secret'"
+ Passwort.setText "Secret"
+ '/// Press 'OK' button
+ printlog " Press 'OK' button"
+ DokumentSchuetzen.OK
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsCellContents
+'///<u><b>Tools - Cell Contents</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Recalculate cells by 'Tools – Cell Contents – Recalculate'
+ printlog " Recalculate cells by 'Tools – Cell Contents – Recalculate'"
+ ToolsCellContentsRecalculate
+ '/// Switch 'AutoCalculate' mode by 'Tools – Cell Contents – AutoCalculate'
+ printlog " Switch 'AutoCalculate' mode by 'Tools – Cell Contents – AutoCalculate'"
+ ToolsCellContentsAutoCalculate
+ '/// Switch 'AutoCalculate' mode back by 'Tools – Cell Contents – AutoCalculate'
+ printlog " Switch 'AutoCalculate' mode back by 'Tools – Cell Contents – AutoCalculate'"
+ ToolsCellContentsAutoCalculate
+ '/// Switch 'AutoInput' mode by 'Tools – Cell Contents – AutoInput'
+ printlog " Switch 'AutoInput' mode by 'Tools – Cell Contents – AutoInput'"
+ ToolsCellContentsAutoInput
+ '/// Switch 'AutoInput' mode back by 'Tools – Cell Contents – AutoInput'
+ printlog " Switch 'AutoInput' mode back by 'Tools – Cell Contents – AutoInput'"
+ ToolsCellContentsAutoInput
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsGallery
+'///<u><b>Tools - Gallery</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Enable 'Gallery' by 'Tools – Gallery'
+ printlog " Enable 'Gallery' by 'Tools – Gallery'"
+ Kontext "Gallery"
+ if Not Gallery.Exists then ToolsGallery
+ Kontext "Gallery"
+ '/// Verify that there are 'Themes' available (more than one)
+ printlog " Verify that there are 'Themes' available (more than one)"
+ If Gallerys.getItemCount < 1 then
+ warnlog "There are no items in the Gallerylist"
+ end if
+ '/// Click on 'New Theme' button
+ printlog " Click on 'New Theme' button"
+ NewTheme.Click
+ '/// Switch to tabpage 'General'
+ printlog " Switch to tabpage 'General'"
+ Kontext
+ Active.SetPage TabAllgemeinGallery
+ Kontext "TabAllgemeinGallery"
+ Call DialogTest ( TabAllgemeinGallery )
+ '/// Switch to tabpage 'Files'
+ printlog " Switch to tabpage 'Files'"
+ Kontext
+ Active.SetPage TabDateien
+ Kontext "TabDateien"
+ Call DialogTest ( TabDateien )
+ '/// Verify that the 'File type' combobox has items
+ printlog " Verify that the 'File type' combobox has items"
+ If Dateityp.GetItemCount < 1 then
+ warnlog "There are no filetypes available"
+ end if
+ '/// Click on 'Find Files' button
+ printlog " Click on 'Find Files' button"
+ Suche.Click
+ Kontext "OeffnenDlg"
+ '/// Close 'Select Path' dialog with 'Cancel'
+ printlog " Close 'Select Path' dialog with 'Cancel'"
+ OeffnenDlg.Cancel
+ Kontext "TabDateien"
+ '/// Click on 'Add' button to open 'Gallery' dialog
+ printlog " Click on 'Add' button to open 'Gallery' dialog"
+ Hinzufuegen.Click
+ Kontext "GrafikEinfuegenDlg"
+ '/// Close 'Gallery' dialog with 'Cancel'
+ printlog " Close 'Gallery' dialog with 'Cancel'"
+ GrafikEinfuegenDlg.Cancel
+ Kontext "TabDateien"
+ '/// Close 'Properties' dialog with 'Cancel'
+ printlog " Close 'Properties' dialog with 'Cancel'"
+ TabDateien.Cancel
+ '/// Disable 'Gallery' by 'Tools – Gallery'
+ printlog " Disable 'Gallery' by 'Tools – Gallery'"
+ ToolsGallery
+ Kontext "Gallery"
+ if Gallery.Exists then
+ Warnlog "The Gallery has not been closed!"
+ end if
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsMediaPlayer
+'///<u><b>Tools - Media Player</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Media Player' by 'Tools – Media Player'
+ printlog " Open 'Media Player' by 'Tools – Media Player'"
+ ToolsMediaPlayer
+ Kontext "Mplayer"
+ Call DialogTest ( Mplayer )
+ '/// Click on 'Open' button
+ printlog " Click on 'Open' button"
+ Mopen.Click
+ Kontext "OeffnenDlg"
+ '/// Verify that there are more than one filter available
+ printlog " Verify that there are more than one filter available"
+ If DateiTyp.GetItemCount < 1 then
+ warnlog "There are no filters available"
+ end if
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ OeffnenDlg.Cancel
+ '/// Close 'Media Player' by 'Tools – Media Player'
+ printlog " Close 'Media Player' by 'Tools – Media Player'"
+ ToolsMediaPlayer
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+
+
+
diff --git a/testautomation/spreadsheet/required/includes/c_upd_toolsmenu2.inc b/testautomation/spreadsheet/required/includes/c_upd_toolsmenu2.inc
new file mode 100644
index 000000000000..f11857cf44ad
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_toolsmenu2.inc
@@ -0,0 +1,517 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - Tools Menu Part II
+'*
+'************************************************************************
+'*
+' #1 tToolsMacro
+' #1 tToolsExtensionManager
+' #1 tToolsXMLFilterSettings
+' #1 tToolsCustomize
+' #1 tToolsOptions
+' #1 tToolsSolver
+'*
+'\***********************************************************************
+
+sub c_upd_toolsmenu2
+
+ Printlog Chr(13) + "--------- Tools Menu Part II (c_upd_toolsmenu2.inc) ---------"
+
+
+ call tToolsMacro
+ call tToolsExtensionManager
+ call tToolsXMLFilterSettings
+ call tToolsCustomize
+ call tToolsOptions
+ call tToolsSolver
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tToolsMacro
+'///<u><b>Tools - Macro</b></u>
+
+ Dim iWhichSecurityLevel as integer
+ printlog " Set SecurityLevel to low and remember starting value"
+ iWhichSecurityLevel = hSetMacroSecurity(0)
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Record macro by 'Tools – Macro – Record'
+ printlog " Record macro by 'Tools – Macro – Record'"
+' ToolsMacroRecordMacro
+' Kontext "
+ '/// Close macro recording by clicking 'Stop Recording'
+ printlog " Close macro recording by clicking 'Stop Recording'"
+'
+ '/// Open 'Macro Selector' dialog by 'Tools – Macro – Run'
+ printlog " Open 'Macro Selector' dialog by 'Tools – Macro – Run'"
+ ToolsMacrosRunMacro
+ Kontext "ScriptSelector"
+ Call DialogTest ( ScriptSelector )
+ '/// Close 'Macro Selector' dialog with 'Cancel
+ printlog " Close 'Macro Selector' dialog with 'Cancel"
+ ScriptSelector.Cancel
+ '/// Open Macro dialog by 'Tools – Macro – Organize Macros – StarOffice Basic'
+ printlog " Open Macro dialog by 'Tools – Macro – Organize Macros – StarOffice Basic'"
+ ToolsMacro
+ Kontext "Makro"
+ Call DialogTest ( Makro )
+ '/// Click on 'Assign' button
+ printlog " Click on 'Assign' button"
+ Zuordnen.Click
+ Kontext
+ Active.SetPage TabCustomizeMenu
+ Kontext "TabCustomizeMenu"
+ '/// Close 'Customize' dialog with 'Cancel'
+ printlog " Close 'Customize' dialog with 'Cancel'"
+ TabCustomizeMenu.Cancel
+ Kontext "Makro"
+ '/// Click on 'Edit' button
+ printlog " Click on 'Edit' button"
+ Bearbeiten.Click
+ '/// Close basic window by window closer
+ printlog " Close basic window by window closer"
+ Kontext "BasicIDE"
+ Call hCloseDocument
+ '/// Reopen Macro dialog by 'Tools – Macro – Organize Macros – StarOffice Basic'
+ printlog " Reopen Macro dialog by 'Tools – Macro – Organize Macros – StarOffice Basic'"
+ ToolsMacro
+ Kontext "Makro"
+ '/// Click on 'Delete' button
+ printlog " Click on 'Delete' button"
+ Loeschen.Click
+ '/// Close messagebox by 'No'
+ printlog " Close messagebox by 'No'"
+ Kontext
+ if Active.exists then
+ Active.no
+ end if
+ Kontext "Makro"
+ '/// Click on Organizer' button
+ printlog " Click on Organizer' button"
+ Verwalten.Click
+ Kontext
+ Active.SetPage TabModule
+ Kontext "TabModule"
+ '/// Close 'Organizer with 'Close'
+ printlog " Close 'Organizer with 'Close'"
+ TabModule.Close
+ Kontext "Makro"
+ '/// Close macro dialog
+ printlog " Close macro dialog"
+ Makro.Close
+ '/// Open 'JavaScript Macros' dialog by 'Tools – Macro – Organize Macros – JavaScript'
+ printlog " Open 'JavaScript Macros' dialog by 'Tools – Macro – Organize Macros – JavaScript'"
+ ToolsMacrosOrganizeMacrosJavaScript
+ Kontext "ScriptOrganizer"
+ '/// Close 'JavaScript Macros' dialog by 'Close'
+ printlog " Close 'JavaScript Macros' dialog by 'Close'"
+ ScriptOrganizer.Close
+ '/// Open 'BeanShell Macros' dialog by 'Tools – Macro – Organize Macros – BeanShell'
+ printlog " Open 'BeanShell Macros' dialog by 'Tools – Macro – Organize Macros – BeanShell'"
+ ToolsMacrosOrganizeMacrosBeanShell
+ Kontext "ScriptOrganizer"
+ '/// Close ' BeanShell Macros' dialog by 'Close'
+ printlog " Close ' BeanShell Macros' dialog by 'Close'"
+ ScriptOrganizer.Close
+ Call hCloseDocument
+ printlog " Open testdocument 'gTesttoolPath + spreadsheet\required\input\DocwithMacro.ods'"
+ Call hFileOpen (Convertpath (gTesttoolPath + "spreadsheet\required\input\DocwithMacro.ods" ))
+ Kontext
+ if Active.exists then
+ Active.ok
+ end if
+ Printlog " Save document as 'user/work/DocwithMacro.ods'"
+ Call hFileSaveAsKill convertpath(gOfficePath & "user/work/DocwithMacro.ods")
+ printlog " Use 'Tools – Macro – Signature'"
+ ToolsMacrosSignature
+ Kontext "DigitalSignature"
+ Call DialogTest ( DigitalSignature )
+ '/// On 'Digital Signatures' dialog press 'Add' button
+ printlog " On 'Digital Signatures' dialog press 'Add' button"
+ Add.Click
+ Kontext "SelectCertificate"
+ Call DialogTest ( SelectCertificate )
+ '/// Close Select Certificate' dialog with 'Cancel'
+ printlog " Close Select Certificate' dialog with 'Cancel'"
+ SelectCertificate.Cancel
+ Kontext "DigitalSignature"
+ '/// Close 'Digital Signatures' dialog with 'Cancel'
+ printlog " Close 'Digital Signatures' dialog with 'Cancel'"
+ DigitalSignature.ok
+ '/// Open 'Macro Organizer' by 'Tools – Macro – Organize Dialogs'
+ printlog " Open 'Macro Organizer' by 'Tools – Macro – Organize Dialogs'"
+ ToolsMacrosOrganizeDialogs
+ '/// Switch to tabpage 'Modules'
+ printlog " Switch to tabpage 'Modules'"
+ Kontext
+ Active.SetPage TabModule
+ Kontext "TabModule"
+ Call DialogTest ( TabModule )
+ '/// Switch to tabpage 'Dialogs'
+ printlog " Switch to tabpage 'Dialogs'"
+ Kontext
+ Active.SetPage TabDialogs
+ Kontext "TabDialogs"
+ Call DialogTest ( TabDialogs )
+ '/// Switch to tabpage 'Libraries'
+ printlog " Switch to tabpage 'Libraries'"
+ Kontext
+ Active.SetPage TabBibliotheken
+ Kontext "TabBibliotheken"
+ Call DialogTest ( TabBibliotheken )
+ '/// Close dialog with 'Close'
+ printlog " Close dialog with 'Close'"
+ TabBibliotheken.Close
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+ printlog " Reset SecurityLevel to starting value"
+ Call hSetMacroSecurity(iWhichSecurityLevel)
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsExtensionManager
+'///<u><b>Tools - Extension Manager</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Extension Manager' by 'Tools – Extension Manager'
+ printlog " Open 'Extension Manager' by 'Tools – Extension Manager'"
+ ToolsPackagemanager
+ Kontext "PackageManager"
+ Call DialogTest ( PackageManager )
+ '/// Close 'Extension Manager' with 'Close'
+ printlog " Close 'Extension Manager' with 'Close'"
+ PackageManager.Close
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsXMLFilterSettings
+'///<u><b>Tools - XML Filter Settings</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'XML Filter Settings' dialog by 'Tools – XML Filter Settings'
+ printlog " Open 'XML Filter Settings' dialog by 'Tools – XML Filter Settings'"
+ ToolsXMLFilterSettings
+ Kontext "XMLFilterSettings"
+ Call DialogTest ( XMLFilterSettings )
+ '/// Close dialog with 'Close'
+ printlog " Close dialog with 'Close'"
+ CloseBtn.Click
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsCustomize
+'///<u><b>Tools - Customize</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Customize' dialog by 'Tools – Customize'
+ printlog " Open 'Customize' dialog by 'Tools – Customize'"
+ ToolsCustomize
+ '/// Switch to tabpage 'Menus'
+ printlog " Switch to tabpage 'Menus'"
+ Kontext
+ Active.SetPage TabCustomizeMenu
+ Kontext "TabCustomizeMenu"
+ Call DialogTest ( TabCustomizeMenu )
+ '/// Switch to tabpage 'Keyboard'
+ printlog " Switch to tabpage 'Keyboard'"
+ Kontext
+ Active.SetPage TabTastatur
+ Kontext "TabTastatur"
+ Call DialogTest ( TabTastatur )
+ '/// Switch to tabpage 'Toolbars'
+ printlog " Switch to tabpage 'Toolbars'"
+ Kontext
+ Active.SetPage TabCustomizeToolbars
+ Kontext "TabCustomizeToolbars"
+ Call DialogTest ( TabCustomizeToolbars )
+ '/// Switch to tabpage 'Events'
+ printlog " Switch to tabpage 'Events'"
+ Kontext
+ Active.SetPage TabCustomizeEvents
+ Kontext "TabCustomizeEvents"
+ Call DialogTest ( TabCustomizeEvents )
+ '/// Close 'Customize' dialog with 'Cancel'
+ printlog " Close 'Customize' dialog with 'Cancel'"
+ TabCustomizeEvents.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsOptions
+'///<u><b>Tools - Options</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Options' dialog by 'Tools – Options'
+ printlog " Open 'Options' dialog by 'Tools – Options'"
+ ToolsOptions
+ '/// Choose 'Calc – General'
+ printlog " Choose 'Calc – General'"
+ hToolsOptions("CALC", "GENERAL")
+ Call DialogTest ( TabLayoutCalc )
+ '/// Verify that the 'Measurement' combobox has items
+ printlog " Verify that the 'Measurement' combobox has items"
+ if Masseinheit.GetItemCount < 1 then
+ warnlog "The listbox is empty"
+ end if
+ '/// Increase 'Tab stops'
+ printlog " Increase 'Tab stops'"
+ Tabulator.More
+ '/// Verify that the 'Move selection' combobox has four items
+ printlog " Verify that the 'Move selection' combobox has four items"
+ If SelektionNach.GetItemCount <> 4 then
+ warnlog "There are not 4 moves possible"
+ end if
+ '/// Choose 'Calc – View'
+ printlog " Choose 'Calc – View'"
+ hToolsOptions("CALC", "VIEW")
+ Call DialogTest ( TabInhaltCalc )
+ '/// Verify that the 'Color' combobox has items
+ printlog " Verify that the 'Color' combobox has items"
+ if Farbe.GetItemCount < 1 then
+ warnlog "The listbox is empty"
+ end if
+ '/// Verify that the 'Objects' combobox has items
+ printlog " Verify that the 'Objects' combobox has items"
+ if ObjekteGrafiken.GetItemCount < 1 then
+ warnlog "The listbox is empty"
+ end if
+ '/// Verify that the 'Charts' combobox has items
+ printlog " Verify that the 'Charts' combobox has items"
+ if Diagramme.GetItemCount < 1 then
+ warnlog "The listbox is empty"
+ end if
+ '/// Verify that the 'Drawing objects' combobox has items
+ printlog " Verify that the 'Drawing objects' combobox has items"
+ if Zeichenobjekte.GetItemCount < 1 then
+ warnlog "The listbox is empty"
+ end if
+ '/// Choose 'Calc – Calculate'
+ printlog " Choose 'Calc – Calculate'"
+ hToolsOptions("CALC", "CALCULATE")
+ Call DialogTest ( TabBerechnen )
+ '/// Choose 'Calc – Sortlists'
+ printlog " Choose 'Calc – Sortlists'"
+ hToolsOptions("CALC", "SORTLISTS")
+ Call DialogTest ( TabSortierlisten )
+ '/// Verify that there are sortlists available
+ printlog " Verify that there are sortlists available"
+ if Listen.GetItemCount < 1 then
+ warnlog "The listbox is empty"
+ end if
+ '/// Choose 'Calc – Changes'
+ printlog " Choose 'Calc – Changes'"
+ hToolsOptions("CALC", "CHANGES")
+ Call DialogTest ( TabAenderungenCalc )
+ '/// Verify that the 'Changes' combobox has items
+ printlog " Verify that the 'Changes' combobox has items"
+ if Aenderungen.GetItemCount < 1 then
+ warnlog "The listbox is empty"
+ end if
+ '/// Choose 'Calc – Grid'
+ printlog " Choose 'Calc – Grid'"
+ hToolsOptions("CALC", "GRID")
+ Call DialogTest ( TabRaster )
+ '/// Decrease 'Horizontal Resolution'
+ printlog " Decrease 'Horizontal Resolution'"
+ RasterAufloesungXAchse.Less
+ '/// Increase 'Horizontal Subdivision'
+ printlog " Increase 'Horizontal Subdivision'"
+ RasterUnterteilungXAchse.More
+ '/// Choose 'Calc – Print'
+ printlog " Choose 'Calc – Print'"
+ hToolsOptions("CALC", "PRINT")
+ Call DialogTest ( TabPrintCalcOptions )
+ '/// Close 'Options' dialog with 'Cancel'
+ printlog " Close 'Options' dialog with 'Cancel'"
+ Kontext "OptionenDlg"
+ OptionenDlg.Cancel
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tToolsSolver
+'///<u><b>Tools - Solver</b></u>
+
+ Dim i as integer
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Open 'Solver' dialog by 'Tools - Solver'
+ printlog " Open 'Solver' dialog by 'Tools - Solver'"
+ try
+ ToolsSolver
+ catch
+ qaerrorlog "Solver not available. This is true for versions older than SRC680_m246"
+ call hCloseDocument
+ goto endsub
+ endcatch
+ Kontext "Solver"
+ DialogTest ( Solver )
+ '/// Enter A1 for 'TargetCell'
+ printlog " Enter A1 for 'TargetCell'"
+ TargetCell.SetText "A1"
+ '/// Press 'Shrink' button for 'Target cell'
+ printlog " Press 'Shrink' button for 'Target cell'"
+ Shrink.Click
+ '/// On minimized dialog press 'Shrink' button again
+ printlog " On minimized dialog press 'Shrink' button again"
+ Shrink.Click
+ '/// Select 'Maximum'
+ printlog " Select 'Maximum'"
+ OptimizeMaximum.Check
+ '/// Select 'Minimum'
+ printlog " Select 'Minimum'"
+ OptimizeMinimum.Check
+ '/// Select 'Value of'
+ printlog " Select 'Value of'"
+ OptimizeValueOf.Check
+ '/// Minimize dialog by pressing 'Shrink' button for 'Value of'
+ printlog " Minimize dialog by pressing 'Shrink' button for 'Value of'"
+ OptimizeValueEditShrink.Click
+ '/// On minimized dialog press 'Shrink' button again
+ printlog " On minimized dialog press 'Shrink' button again"
+ OptimizeValueEditShrink.Click
+ '/// Minimize dialog by pressing 'Shrink' button for 'By changing cells'
+ printlog " Minimize dialog by pressing 'Shrink' button for 'By changing cells'"
+ ChangingCellsShrink.Click
+ '/// On minimized dialog press 'Shrink' button again
+ printlog " On minimized dialog press 'Shrink' button again"
+ ChangingCellsShrink.Click
+ '/// Enter 'A2' in edit box for 'Cell reference 1'
+ printlog " Enter 'A2' in edit box for 'Cell reference 1'"
+ CellReference1.SetText "A2"
+ '/// Minimize dialog by pressing 'Shrink' button for 'Cell reference 1'
+ printlog " Minimize dialog by pressing 'Shrink' button for 'Cell reference 1'"
+ CellReferenceShrink1.Click
+ '/// On minimized dialog press 'Shrink' button again
+ printlog " On minimized dialog press 'Shrink' button again"
+ CellReferenceShrink1.Click
+ '/// Verify that there are 'Operators' available
+ printlog " Verify that there are 'Operators' available"
+ If Operator1.GetItemCount < 1 then
+ warnlog "There are no operators available"
+ end if
+ '/// Minimize dialog by pressing 'Shrink' button for 'Value 1'
+ printlog " Minimize dialog by pressing 'Shrink' button for 'Value 1'"
+ ValueShrink1.Click
+ '/// On minimized dialog press 'Shrink' button again
+ printlog " On minimized dialog press 'Shrink' button again"
+ ValueShrink1.Click
+ '/// Press 'Remove' button
+ printlog " Press 'Remove' button"
+ Remove1.Click
+ '/// Press 'Options' button
+ printlog " Press 'Options' button"
+ Options.Click
+ Kontext "SolverOptions"
+ DialogTest ( SolverOptions )
+ '/// On 'Options' dialog verify that there is min 1 'Solver engine' available
+ printlog " On 'Options' dialog verify that there is min 1 'Solver engine' available"
+ If SolverEngine.GetItemCount < 1 then
+ warnlog "There is no SolverEngine available"
+ end if
+ '/// Check for 'Settings' which enables the edit button (e.g.Epsilon level)
+ printlog " Check for 'Settings' which enables the edit button (e.g.Epsilon level)"
+ For i = 1 to SolverSettings.GetItemCount
+ SolverSettings.Select i
+ if SolverSettingsEdit.IsEnabled then
+ i = SolverSettings.GetItemCount
+ end if
+ next i
+ If not SolverSettingsEdit.IsEnabled then
+ warnlog "Edit is not enabled"
+ SolverOptions.Cancel
+ Kontext "Solver"
+ Solver.Close
+ call hCloseDocument
+ goto endsub
+ else
+ '/// Click 'Edit' button to open 'Edit Setting' dialog
+ printlog " Click 'Edit' button to open 'Edit Setting' dialog"
+ SolverSettingsEdit.Click
+ Kontext "SolverEditSetting"
+ DialogTest ( SolverEditSetting )
+ end if
+ '/// Increase 'Epsilon level'
+ printlog " Increase 'Epsilon level'"
+ SolverNumeric.More
+ '/// Close 'Edit Setting' dialog by 'Cancel'
+ printlog " Close 'Edit Setting' dialog by 'Cancel'"
+ SolverEditSetting.Cancel
+ Kontext "SolverOptions"
+ '/// Close 'Options' dialog by 'Cancel'
+ printlog " Close 'Options' dialog by 'Cancel'"
+ SolverOptions.Cancel
+ '/// Close 'Solver' dialog by 'Close'
+ printlog " Close 'Solver' dialog by 'Close'"
+ Kontext "Solver"
+ Solver.Close
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
diff --git a/testautomation/spreadsheet/required/includes/c_upd_viewmenu.inc b/testautomation/spreadsheet/required/includes/c_upd_viewmenu.inc
new file mode 100644
index 000000000000..e7568390c38a
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_viewmenu.inc
@@ -0,0 +1,395 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - View Menu
+'*
+'************************************************************************
+'*
+' #1 tViewPageBreakPreview
+' #1 tViewToolbars
+' #1 tViewFormularbar
+' #1 tViewStatusbar
+' #1 tViewInputMethodStatus
+' #1 tViewColumnRowHeaders
+' #1 tViewValueHighlighting
+' #1 tViewDataSources
+' #1 tViewNavigator
+' #1 tViewFullScreen
+' #1 tViewZoom
+'*
+'\***********************************************************************
+
+sub c_upd_viewmenu
+
+ Printlog Chr(13) + "--------- View Menu (c_upd_viewmenu.inc) ---------"
+
+ call tViewPageBreakPreview
+ call tViewToolbars
+ call tViewFormularbar
+ call tViewStatusbar
+ call tViewInputMethodStatus
+ call tViewColumnRowHeaders
+ call tViewValueHighlighting
+ call tViewDataSources
+ call tViewNavigator
+ call tViewFullScreen
+ call tViewZoom
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tViewPageBreakPreview
+'///<u><b>View - Normal / Page Break Preview</b></u>
+
+ '/// Opening new spreadsheet document for getting defined starting environment
+ printlog " Opening new spreadsheet document for getting defined starting environment"
+ call hNewDocument
+ '/// Activate Page Break Preview by 'View – Page Break Preview'
+ printlog " Activate Page Break Preview by 'View – Page Break Preview'"
+ ViewPageBreakPreview
+ '/// Switch back to normal view by 'View – Normal'
+ printlog " Switch back to normal view by 'View – Normal'"
+ ViewNormalView
+ '/// Close starting document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tViewToolbars
+'///<u><b>View - Toolbars</b></u>
+
+ '/// Opening new spreadsheet document for getting defined starting environment
+ printlog " Opening new spreadsheet document for getting defined starting environment"
+ call hNewDocument
+ '/// Switch on/off toolbar '3D-Settings' by 'View - Toolbars'
+ printlog " Switch on/off toolbar '3D-Settings' by 'View - Toolbars'"
+ ViewToolbarsThreeDSettings
+ ViewToolbarsThreeDSettings
+ '/// Switch on/off toolbar 'Align' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Align' by 'View - Toolbars'"
+ ViewToolbarsAlign
+ ViewToolbarsAlign
+ '/// Switch on/off toolbar 'Drawing' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Drawing' by 'View - Toolbars'"
+ ViewToolbarsDrawing
+ ViewToolbarsDrawing
+ '/// Switch on/off toolbar 'Drawing Objects Properties' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Drawing Objects Properties' by 'View - Toolbars'"
+ ViewToolbarsDrawObjectbar
+ ViewToolbarsDrawObjectbar
+ '/// Switch on/off toolbar 'Fontwork' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Fontwork' by 'View - Toolbars'"
+ ViewToolbarsFontwork
+ ViewToolbarsFontwork
+ '/// Switch on/off toolbar 'Form Controls' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Form Controls' by 'View - Toolbars'"
+ ViewToolbarsFormControls
+ ViewToolbarsFormControls
+ '/// Switch on/off toolbar 'Form Design' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Form Design' by 'View - Toolbars'"
+ ViewToolbarsFormDesign
+ ViewToolbarsFormDesign
+ '/// Switch on/off toolbar 'Form Navigation' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Form Navigation' by 'View - Toolbars'"
+ ViewToolbarsFormNavigation
+ ViewToolbarsFormNavigation
+ '/// Switch on/off toolbar 'Formatting' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Formatting' by 'View - Toolbars'"
+ ViewToolbarsFormatting
+ ViewToolbarsFormatting
+ '/// Switch on/off toolbar 'Insert' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Insert' by 'View - Toolbars'"
+ ViewToolbarsInsert
+ ViewToolbarsInsert
+ '/// Switch on/off toolbar 'Insert Cells' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Insert Cells' by 'View - Toolbars'"
+ ViewToolbarsInsertCell
+ ViewToolbarsInsertCell
+ '/// Switch on/off toolbar 'Media Playback' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Media Playback' by 'View - Toolbars'"
+ ViewToolbarsMediaPlayback
+ ViewToolbarsMediaPlayback
+ '/// Switch on/off toolbar 'Picture' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Picture' by 'View - Toolbars'"
+ ViewToolbarsPicture
+ ViewToolbarsPicture
+ '/// Switch on/off toolbar 'Standard' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Standard' by 'View - Toolbars'"
+ ViewToolbarsStandard
+ ViewToolbarsStandard
+ '/// Switch on/off toolbar 'Text Formatting' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Text Formatting' by 'View - Toolbars'"
+ ViewToolbarsTextFormatting
+ ViewToolbarsTextFormatting
+ '/// Switch on/off toolbar 'Tools' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Tools' by 'View - Toolbars'"
+ ViewToolbarsTools
+ ViewToolbarsTools
+ '/// Switch on/off toolbar 'Hyperlink Bar' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Hyperlink Bar' by 'View - Toolbars'"
+ ViewToolbarsInsertHyperlink
+ ViewToolbarsInsertHyperlink
+ '/// Switch on/off toolbar 'Formular Bar' by 'View - Toolbars'
+ printlog " Switch on/off toolbar 'Formular Bar' by 'View - Toolbars'"
+ ViewToolbarsFormulaBar
+ ViewToolbarsFormulaBar
+ '/// Open 'Toolbar Customize' - dialog by 'View – Toolbars – Customize' (will be tested in detail by tToolsCustomize)
+ printlog " Open 'Toolbar Customize' - dialog by 'View – Toolbars – Customize' (will be tested in detail by tToolsCustomize)"
+ ViewToolbarsConfigure
+ '/// Close dialog with 'Cancel'
+ Kontext
+ Active.SetPage TabCustomizeMenu
+ Kontext "TabCustomizeMenu"
+ TabCustomizeMenu.Cancel
+ '/// Reset toolbars by 'View - Toolbars - Reset'
+ printlog " Reset toolbars by 'View - Toolbars - Reset'"
+' ViewToolbarsReset
+ qaerrorlog "Reset not possible because of #i84544"
+ '/// Close document
+ printlog " Close starting document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tViewFormularbar
+'///<u><b>View - Formular Bar</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Switch on/off toolbar 'Formular Bar' by 'View - Formular Bar'
+ printlog " Switch on/off toolbar 'Formular Bar' by 'View - Formular Bar'"
+ ViewToolbarsFormulaBar
+ ViewToolbarsFormulaBar
+ '/// Close new document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tViewStatusbar
+'///<u><b>View - Status Bar</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Switch on/off toolbar 'Status Bar' by 'View - Status Bar'
+ printlog " Switch on/off toolbar 'Status Bar' by 'View - Status Bar'"
+ ViewToolbarsStatusbar
+ ViewToolbarsStatusbar
+ '/// Close new document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tViewInputMethodStatus
+'///<u><b>View - Input Method Status</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// If enabled (only on UNIX) switch on/off 'View – Input Method Status'
+ printlog " If enabled (only on UNIX) switch on/off 'View – Input Method Status'"
+ try
+ ViewInputMethodStatus
+ ViewInputMethodStatus
+ catch
+ printlog "Input Method Status not available on this system"
+ endcatch
+ '/// Close new document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tViewColumnRowHeaders
+'///<u><b>View - Column And Row Headers</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Switch on/off 'View - Column And Row Headers'
+ printlog " Switch on/off 'View - Column And Row Headers'"
+ ViewColumnAndRowHeaders
+ ViewColumnAndRowHeaders
+ '/// Close new document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tViewValueHighlighting
+'///<u><b>View - Value Highlighting</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Switch on/off 'View - Value Highlighting'
+ printlog " Switch on/off 'View - Value Highlighting'"
+ ViewValueHightlighting
+ ViewValueHightlighting
+ '/// Close new document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tViewDataSources
+'///<u><b>View - Data Sources</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open datasourcebeamer by 'View - Data Sources'
+ ViewCurrentDatabaseCalc
+ '/// Close datasourcebeamer by 'View - Data Sources'
+ ViewCurrentDatabaseCalc
+ '/// Close new document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tViewNavigator
+'///<u><b>Edit - Navigator</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Check if Navigator already exists. If not open Navigator by View-Navigator.
+ printlog " Check if Navigator already exists. If not open Navigator by View-Navigator."
+ Kontext "NavigatorCalc"
+ if NavigatorCalc.exists then
+ warnlog "Navigator is already enabled"
+ else
+ ViewNavigator
+ end if
+ Kontext "NavigatorCalc"
+ call DialogTest ( NavigatorCalc )
+ '/// Check functionality of button for content by clicking it twice
+ printlog " Check functionality of button for content by clicking it twice"
+ Inhalte.Click
+ Inhalte.Click
+ '/// Check functionality of toggle button by clicking it twice
+ printlog " Check functionality of toggle button by clicking it twice"
+ Umschalten.Click
+ Umschalten.Click
+ '/// Check functionality of button for scenarios by clicking it twice
+ printlog " Check functionality of button for scenarios by clicking it twice"
+ Szenarien.Click
+ Szenarien.Click
+ '/// Check that the dragmodus has 3 modes
+ qaerrorlog "Dragmodus disabled because of unreliability"
+' printlog " Check that the dragmodus has 3 modes"
+' Dragmodus.OpenMenu
+' waitslot(1000)
+' if hMenuItemGetCount <> 3 then
+' warnlog "Not enough modes for dragmodus"
+' end if
+' hMenuSelectNr (0)
+ '/// Close Navigator
+ printlog " Close Navigator"
+ Kontext "Navigator"
+ Navigator.Close 'Because of #i78307 the navigatorwindow has to be closed by Navigator.close
+ Kontext "NavigatorCalc"
+ if NavigatorCalc.exists then
+ ViewNavigator
+ Warnlog "NavigatorCalc.Close doesn't close the navigator"
+ end if
+ '/// Close document
+ printlog " Close document"
+ hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tViewFullScreen
+'///<u><b>View - Full Screen</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Switch to full screen view by 'View - Full Screen'
+ ViewFullScreen
+ '/// Switch back to normal view
+ ViewFullScreen
+ '/// Close new document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tViewZoom
+'///<u><b>View - Zoom</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ call hNewDocument
+ '/// Open 'Zoom' – dialog by 'View – Zoom'
+ printlog " Open 'Zoom' – dialog by 'View – Zoom'"
+ ViewZoom
+ Kontext "Massstab"
+ DialogTest ( Massstab )
+ '/// Check 'Variable'
+ printlog " Check 'Variable'"
+ VergroesserungStufenlos.Check
+ '/// Increase variablezoom by 1
+ printlog " Increase variablezoom by 1"
+ Stufenlos.More
+ '/// Close dialog with 'Cancel'
+ printlog " Close dialog with 'Cancel'"
+ Massstab.Cancel
+ '/// Close new document
+ printlog " Close document"
+ call hCloseDocument
+
+endcase
+
diff --git a/testautomation/spreadsheet/required/includes/c_upd_windowmenu.inc b/testautomation/spreadsheet/required/includes/c_upd_windowmenu.inc
new file mode 100644
index 000000000000..56adf3af682a
--- /dev/null
+++ b/testautomation/spreadsheet/required/includes/c_upd_windowmenu.inc
@@ -0,0 +1,141 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/***********************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Resource Test - Window Menu
+'*
+'************************************************************************
+'*
+' #1 tWindowNewWindow
+' #1 tWindowSplit
+' #1 tWindowFreeze
+'*
+'\***********************************************************************
+
+sub c_upd_windowmenu
+
+ Printlog Chr(13) + "--------- Window Menu (c_upd_windowmenu.inc) ---------"
+
+ call tWindowNewWindow
+ call tWindowSplit
+ call tWindowFreeze
+
+
+end sub
+
+'-----------------------------------------------------------
+
+testcase tWindowNewWindow
+'///<u><b>Window – New Window</b></u>
+
+ Dim iDocumentcount as integer
+ Dim iDocumentclose as integer
+
+ '/// Verify that there is no document open
+ printlog " Verify that there is no document open"
+ iDocumentcount = getDocumentCount
+ If iDocumentcount >0 then
+ warnlog "There are " & iDocumentcount & " documents open, but there should be none. Closing these documents"
+ For iDocumentclose = 1 to iDocumentcount
+ Call hCloseDocument
+ Next iDocumentclose
+ end if
+ '/// Opening new spreadsheet document for getting defined starting environment
+ printlog " Opening new spreadsheet document for getting defined starting environment"
+ Call hNewDocument
+ '/// Open new window by 'Window – New Window'
+ printlog " Open new window by 'Window – New Window'"
+ WindowNewWindow
+ '/// Count amount of windows (must be 2)
+ printlog " Count amount of windows (must be 2)"
+ If getDocumentCount <>2 then
+ warnlog "There should be 2 windows, but there are " & getDocumentCount
+ end if
+ '/// Close new window by 'Window – Close Window'
+ printlog " Close new window by 'Window – Close Window'"
+ WindowCloseWindow
+ '/// Count amount of windows (must be one)
+ printlog " Count amount of windows (must be one)"
+ If getDocumentCount <>1 then
+ warnlog "There should be 1 window, but there are " & getDocumentCount
+ end if
+ '/// Close starting document
+ printlog " Close starting document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tWindowSplit
+'///<u><b>Window – Split</b></u>
+
+ '/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Select cell E15
+ printlog " Select cell E15"
+ Call fCalcSelectRange ("E15")
+ '/// Split window by 'Window – Split'
+ printlog " Split window by 'Window – Split'"
+ WindowSplit
+ '/// Unsplit window by 'Window - Split'
+ printlog " Unsplit window by 'Window - Split'"
+ WindowSplit
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+testcase tWindowFreeze
+'///<u><b>Window – Freeze</b></u>
+
+'/// Open new Spreadsheet document
+ printlog " Open new Spreadsheet document"
+ Call hNewDocument
+ '/// Select cell E15
+ printlog " Select cell E15"
+ Call fCalcSelectRange ("E15")
+ '/// Split window by 'Window – Freeze'
+ printlog " Split window by 'Window – Freeze'"
+ WindowFreeze
+ '/// Unsplit window by 'Window - Freeze'
+ printlog " Unsplit window by 'Window - Freeze'"
+ WindowFreeze
+ '/// Close document
+ printlog " Close document"
+ Call hCloseDocument
+
+endcase
+
+'-----------------------------------------------------------
+
+
diff --git a/testautomation/spreadsheet/required/input/Database_Refresh.ods b/testautomation/spreadsheet/required/input/Database_Refresh.ods
new file mode 100755
index 000000000000..3327797a823a
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/Database_Refresh.ods
Binary files differ
diff --git a/testautomation/spreadsheet/required/input/DocwithMacro.ods b/testautomation/spreadsheet/required/input/DocwithMacro.ods
new file mode 100644
index 000000000000..325866d86328
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/DocwithMacro.ods
Binary files differ
diff --git a/testautomation/spreadsheet/required/input/HTML_Doc_Numberformats_in_table.html b/testautomation/spreadsheet/required/input/HTML_Doc_Numberformats_in_table.html
new file mode 100644
index 000000000000..364e8bb812e6
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/HTML_Doc_Numberformats_in_table.html
@@ -0,0 +1,107 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<HTML>
+ <HEAD>
+ <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=windows-1252">
+ <TITLE></TITLE>
+ <META NAME="GENERATOR" CONTENT="StarOffice 8 (Win32)">
+ <META NAME="CREATED" CONTENT="16010101;0">
+ <META NAME="CHANGED" CONTENT="16010101;0">
+ </HEAD>
+ <BODY LANG="fr-FR" DIR="LTR">
+ <P>HTML Document for testing Import compatibility of HTML and RTF
+ clipboard content and also the Link to external Data and/or Insert
+ Sheet from File.</P>
+ <BR>
+ <BR>
+ <TABLE WIDTH=100% BORDER=1 CELLPADDING=4 CELLSPACING=3>
+ <COL WIDTH=128*>
+ <COL WIDTH=128*>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>Number english</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>Number German</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>1.1</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>1,2</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>1.12</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>1,12</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>3.45</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>3,45</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>13.12</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>13,12</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>1,234.45</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>1.234,45</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>123,456,789.66</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>123.456.789,66</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P>1.000</P>
+ </TD>
+ <TD WIDTH=50%>
+ <P>1,000</P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=50%>
+ <P><BR>
+ </P>
+ </TD>
+ </TR>
+ <TR VALIGN=TOP>
+ <TD WIDTH=50%>
+ <P><BR>
+ </P>
+ </TD>
+ <TD WIDTH=50%>
+ <P><BR>
+ </P>
+ </TD>
+ </TR>
+ </TABLE>
+ <P><BR><BR>
+ </P>
+ </BODY>
+</HTML>
diff --git a/testautomation/spreadsheet/required/input/datapilot.ods b/testautomation/spreadsheet/required/input/datapilot.ods
new file mode 100755
index 000000000000..244efc0123fe
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/datapilot.ods
Binary files differ
diff --git a/testautomation/spreadsheet/required/input/english.ods b/testautomation/spreadsheet/required/input/english.ods
new file mode 100755
index 000000000000..33df834de0c4
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/english.ods
Binary files differ
diff --git a/testautomation/spreadsheet/required/input/korean.ods b/testautomation/spreadsheet/required/input/korean.ods
new file mode 100755
index 000000000000..f40362a1d825
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/korean.ods
Binary files differ
diff --git a/testautomation/spreadsheet/required/input/linkclient.ods b/testautomation/spreadsheet/required/input/linkclient.ods
new file mode 100755
index 000000000000..ccfbc0c27724
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/linkclient.ods
Binary files differ
diff --git a/testautomation/spreadsheet/required/input/linkserver.ods b/testautomation/spreadsheet/required/input/linkserver.ods
new file mode 100755
index 000000000000..2024b84386ef
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/linkserver.ods
Binary files differ
diff --git a/testautomation/spreadsheet/required/input/merge.ods b/testautomation/spreadsheet/required/input/merge.ods
new file mode 100755
index 000000000000..a04fa936132c
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/merge.ods
Binary files differ
diff --git a/testautomation/spreadsheet/required/input/recentdocument.ods b/testautomation/spreadsheet/required/input/recentdocument.ods
new file mode 100755
index 000000000000..d84e6fed451c
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/recentdocument.ods
Binary files differ
diff --git a/testautomation/spreadsheet/required/input/tEditObject.ods b/testautomation/spreadsheet/required/input/tEditObject.ods
new file mode 100755
index 000000000000..905735e24eba
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/tEditObject.ods
Binary files differ
diff --git a/testautomation/spreadsheet/required/input/tFileOpen_CSV.csv b/testautomation/spreadsheet/required/input/tFileOpen_CSV.csv
new file mode 100755
index 000000000000..eb4f5a842f55
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/tFileOpen_CSV.csv
@@ -0,0 +1,3 @@
+,,,,,,,
+,"Dfgfd",,,"Gfh","Gfhdg","Hgjgf",
+,,"Gfhgf",,,,,"Hgfj"
diff --git a/testautomation/spreadsheet/required/input/tFileOpen_DBF.dbf b/testautomation/spreadsheet/required/input/tFileOpen_DBF.dbf
new file mode 100755
index 000000000000..c6713303ce44
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/tFileOpen_DBF.dbf
Binary files differ
diff --git a/testautomation/spreadsheet/required/input/tFileOpen_DBF.dbt b/testautomation/spreadsheet/required/input/tFileOpen_DBF.dbt
new file mode 100755
index 000000000000..e69de29bb2d1
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/tFileOpen_DBF.dbt
diff --git a/testautomation/spreadsheet/required/input/twoobjects.ods b/testautomation/spreadsheet/required/input/twoobjects.ods
new file mode 100755
index 000000000000..437d1b07abac
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/twoobjects.ods
Binary files differ
diff --git a/testautomation/spreadsheet/required/input/twosheets.ods b/testautomation/spreadsheet/required/input/twosheets.ods
new file mode 100755
index 000000000000..73879d200b34
--- /dev/null
+++ b/testautomation/spreadsheet/required/input/twosheets.ods
Binary files differ
diff --git a/testautomation/spreadsheet/tools/includes/c_cell_tools.inc b/testautomation/spreadsheet/tools/includes/c_cell_tools.inc
new file mode 100644
index 000000000000..0693f1daf19c
--- /dev/null
+++ b/testautomation/spreadsheet/tools/includes/c_cell_tools.inc
@@ -0,0 +1,102 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : tools for working with cells in calc
+'*
+'**************************************************************************************************
+'*
+' #1 fCalcGetCellValue 'Returns the value of a given cell
+' #1 fCalcCompareCellValue 'Compares the value of a given cell with a given result
+' #1 fCalcCompareCellFormular 'Compares the formular of a cell with a given result
+'*
+'\************************************************************************************************
+
+function fCalcGetCellValue ( sCelladdress as string ) as string
+
+ '///<b>The function returns the content of a given cell</b>
+ '///+The cell is selected by fCalcSelectRange which is located in /spreadsheet/tools/includes/c_select_tools.inc
+ '///+The content is copied to the clipboard by slot EditCopy
+ '///+ and read out by GetClipboardText which is located in /global/tools/inc/t_tools1.inc
+ use "spreadsheet\tools\includes\c_select_tools.inc"
+ use "global\tools\includes\required\t_tools1.inc"
+
+ call fCalcSelectRange (sCelladdress) 'Select the given cell
+ kontext "DocumentCalc" 'Setting kontext to Calcdocument
+ EditCopy 'Copy content to clipboard
+ fCalcGetCellValue = GetClipboardText 'Returning clipboard to function
+
+end function
+
+'-------------------------------------------------------------------------
+
+function fCalcCompareCellValue ( sCelladdress as string, sresult as string ) as boolean
+
+ '///<b>The function compares the value of a cell with a given result</b>
+ '///+The cellvalue is read by fCalcGetCellValue which is located in /spreadsheet/tools/includes/c_cell_tools.inc
+ '///+The value is compared with a given result (input)
+ '///+The function returns true if the comparison is correct and false for incorrect
+
+ if fCalcGetCellValue ( sCelladdress ) = sresult then
+ printlog " The cellvalue is correct"
+ fCalcCompareCellValue = true
+ else
+ warnlog "The cellvalue is " & fCalcGetCellValue ( sCelladdress ) & " but should be " & sresult
+ fCalcCompareCellValue = false
+ end if
+
+end function
+
+'-------------------------------------------------------------------------
+
+function fCalcCompareCellFormular ( sCelladdress as string, sresult as string ) as boolean
+
+ '///<b>The function compares the formular of a cell with a given result</b>
+ '///+The value is compared with a given result (input)
+ '///+The function returns true if the comparison is correct and false for incorrect
+
+ dim sfunctionwithparameter as string
+
+ call fCalcSelectRange (sCelladdress)
+ kontext ( "RechenleisteCalc" )
+ EingabeZeileCalc.TypeKeys ("<f2><mod1 a>")
+ editcopy
+ sfunctionwithparameter = GetClipboardText ()
+ '/// Press twice <ESCAPE> to leave the cell
+ 'printlog "Press twice <ESCAPE> to leave the cell"
+ kontext ( "DocumentCalc" )
+ DocumentCalc.TypeKeys "<ESCAPE>" , 2
+ if sfunctionwithparameter = sresult then
+ printlog " The function is correct"
+ fCalcCompareCellFormular = true
+ else
+ warnlog "The function is " & sfunctionwithparameter & " instead of " & sresult
+ fCalcCompareCellFormular = false
+ end if
+
+end function
diff --git a/testautomation/spreadsheet/tools/includes/c_l10n_tools.inc b/testautomation/spreadsheet/tools/includes/c_l10n_tools.inc
new file mode 100644
index 000000000000..1807ab4bf35a
--- /dev/null
+++ b/testautomation/spreadsheet/tools/includes/c_l10n_tools.inc
@@ -0,0 +1,232 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : tools for localisation in calc
+'*
+'\************************************************************************************************
+
+function fFunctionname ( sFunctionname_en as string ) as string
+
+ '///<b>The function returns the localized name of a given function in the current UI language</b>
+ '///+ -Input is the english name of the function as string
+ '///+ -Output is the localized name of the function as string
+ '///+ -If there is no translation available the fallback is the english name
+
+ dim sloaddocument as string
+ dim sfunctionstring as string
+ dim scelladress as string
+
+ use "global/tools/includes/required/t_doc2.inc"
+ const CFN = "spreadsheet:tools:includes:c_l10n_tools.in:fFunctionname "
+
+ sloaddocument = gTesttoolPath & "spreadsheet\tools\input\Functionnames.ods"
+
+ '///Load document with all functions <i>gTestToolPath</i>/spreadsheet/tools/input/Functionnames.ods
+ hFileOpenLocally( sloaddocument )
+ sleep (2)
+
+ '///Setting selection to A1 to avoid messagebox in Search and Replace dialog.
+ call fCalcSelectRange ("A1")
+ '///Search for function by Search and Replace dialog
+ kontext "DocumentCalc"
+ EditSearchAndReplace
+
+ kontext "FindAndReplace"
+ printlog( "Reset <Find and Replace> dialog to default settings" )
+ if ( FindAndReplace.exists( 1 ) ) then
+ More.Click
+ SimilaritySearch.UnCheck
+ CurrentSelectionOnly.UnCheck
+ Backwards.UnCheck
+ SearchForStyles.UnCheck
+ SearchIn.Select 1
+ '///Setting search parameter
+ WholeWordsOnly.Check
+ SearchFor.SetText sFunctionname_en
+ SearchNow.click
+ kontext
+ '///If a MsgBox appears the search must have failed => Fallback to english name
+ if active.exists then
+ if active.getRT = 304 then
+ warnlog CFN & "Function not found, falling back to english name"
+ fFunctionname = sFunctionname_en
+ active.OK
+ else
+ '///Throw a warning if a dialog of unexpected resource type appears
+ warnlog CFN & "Unknown message box! " & active.GetText
+ active.Default
+ fFunctionname = sFunctionname_en
+ end if
+
+ kontext "FindAndReplace"
+ printlog( "Reset dialog to default settings" )
+ if ( FindAndReplace.exists( 1 ) ) then
+ WholeWordsOnly.UnCheck
+ hCloseDialog( FindAndReplace, "close" )
+ else
+ warnlog( CFN & "<FindAndReplace> not open" )
+ endif
+ call hCloseDocument
+ exit function
+ end if
+
+ kontext "FindAndReplace"
+ printlog( "Reset <Find and Replace> dialog to default settings" )
+ if ( FindAndReplace.exists( 1 ) ) then
+ WholeWordsOnly.UnCheck
+ hCloseDialog( FindAndReplace, "close" )
+ else
+ warnlog( CFN & "<FindAndReplace> not open" )
+ endif
+
+ Kontext "RechenleisteCalc"
+ scelladress = Bereich.GetSelText
+ if fCalcGetCellValue (scelladress) = sFunctionname_en then
+ '///Get localised string for function by extracting functionname out of next cell
+ call fCalcSelectRange ( "B" & mid(scelladress,2) )
+ kontext ( "RechenleisteCalc" )
+ EingabeZeileCalc.TypeKeys ("<f2><mod1 a>")
+ editcopy
+ sfunctionstring = GetClipboardText ()
+ kontext "DocumentCalc"
+ DocumentCalc.TypeKeys ("<ESCAPE>",2)
+ ' DEBUG: printlog sfunctionstring
+ ' DEBUG: printlog len(sfunctionstring)
+ ' DEBUG: printlog instr(sfunctionstring,"(")
+ fFunctionname = mid(sfunctionstring,2,(instr(sfunctionstring,"(")-2)
+ printlog " The name of the function in this locale (" & iSprache & ") is " & fFunctionname
+ else
+ warnlog CFN & "Function not found, falling back to english version"
+ fFunctionname = sFunctionname_en
+ end if
+ else
+ warnlog( CFN & "Unable to open <FindAndReplace> dialog" )
+ endif
+
+ call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+end function
+
+'
+'----------------------------------------------------------------------------
+'
+
+function fError_l10n ( sError_en as string ) as string
+
+ '///<b>The function returns the localized name of a given error in the current UI language</b>
+ '///+ -Input is the english name of the error as string
+ '///+ -Output is the localized name of the error as string
+ '///+ -If there is no translation available the fallback is the english name
+
+ dim sloaddocument as string
+ dim sfunctionstring as string
+ dim scelladress as string
+
+ use "global/tools/includes/required/t_doc2.inc"
+ const CFN = "qa:qatesttool:spreadsheet:tools:includes:c_l10n_tools.in:fError_l10n "
+
+ sloaddocument = gTesttoolPath & "spreadsheet\tools\input\Errorcodes.ods"
+
+ '///Load document with all errorcodes <i>gTestToolPath</i>/spreadsheet/tools/input/Errorcodes.ods
+ hFileOpenLocally( sloaddocument )
+
+ '///Setting selection to A1 to avoid messagebox in Search and Replace dialog.
+ call fCalcSelectRange ("A1")
+ '///Search for function by Search and Replace dialog
+ kontext "DocumentCalc"
+ EditSearchAndReplace
+ sleep (1)
+ kontext "FindAndReplace"
+ '///Setting dialog to defaults
+ More.Click
+ SimilaritySearch.UnCheck
+ CurrentSelectionOnly.UnCheck
+ Backwards.UnCheck
+ SearchForStyles.UnCheck
+ SearchIn.Select 1
+ '///Setting search parameter
+ WholeWordsOnly.Check
+ SearchFor.SetText sError_en
+ SearchNow.click
+ kontext
+ '///If a MsgBox appears the search must have failed => Fallback to english name
+ if active.exists then
+ if active.getRT = 304 then
+ warnlog CFN & "Function not found, falling back to english name"
+ fError_l10n = sError_en
+ active.OK
+ else
+ '///Throw a warning if a dialog of unexpected resource type appears
+ warnlog CFN & "Unknown message box! " & active.GetText
+ active.Default
+ fError_l10n = sError_en
+ end if
+
+ kontext "FindAndReplace"
+ '///Reset dialog to defaultsetting
+ if ( FindAndReplace.exists( 1 ) ) then
+ WholeWordsOnly.UnCheck
+ hCloseDialog( FindAndReplace, "close" )
+ else
+ warnlog( CFN & "Failed to open <FindAndReplace>" )
+ endif
+
+ call hCloseDocument
+ exit function
+ end if
+
+ kontext "FindAndReplace"
+ '///Reset dialog to defaultsetting
+ if ( FindAndReplace.exists( 1 ) ) then
+ WholeWordsOnly.UnCheck
+ hCloseDialog( FindAndReplace, "close" )
+ else
+ warnlog( CFN & "Failed to open <FindAndReplace>" )
+ endif
+
+ Kontext "RechenleisteCalc"
+ scelladress = Bereich.GetSelText
+ if fCalcGetCellValue (scelladress) = sError_en then
+ '///Get localised string for ERR by extracting errorcode out of next cell
+ call fCalcSelectRange ( "B" & mid(scelladress,2) )
+ kontext "DocumentCalc"
+ editcopy
+ fError_l10n = GetClipboardText ()
+ kontext "DocumentCalc"
+ printlog " The name for ERR in this locale (" & iSprache & ") is " & fError_l10n
+ else
+ warnlog CFN & "Errorcode not found, falling back to english version"
+ fError_l10n = sError_en
+ end if
+
+ call hCloseDocument
+ hFileDelete( gLastWorkFile )
+
+end function
diff --git a/testautomation/spreadsheet/tools/includes/c_select_tools.inc b/testautomation/spreadsheet/tools/includes/c_select_tools.inc
new file mode 100644
index 000000000000..f1087ca3fe8b
--- /dev/null
+++ b/testautomation/spreadsheet/tools/includes/c_select_tools.inc
@@ -0,0 +1,232 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : selecting objects in calc
+'*
+'**************************************************************************************************
+'*
+' #1 fCalcSelectRange
+' #1 fCalcNameRange
+' #1 fCalcSelectCell
+' #1 fCalcGetSelectionString
+' #1 fCalcSelectSheet
+' #1 fNavigatorSelectObject
+'*
+'\************************************************************************************************
+
+function fCalcSelectRange ( sSelectThis ) as boolean
+ '///<b>Select a range in calc and check success
+ '///+Valid cell reference and name should work here
+ '///+RETURNS: BOOLEAN</b>
+ fCalcSelectRange = FALSE
+ '///<ul>
+ '///<li>Check if 'formula bar' is visible</li>///
+ Kontext "RechenleisteCalc"
+ if not RechenleisteCalc.isvisible then
+ '///<li>-> Throw warning and Invoke 'formula bar' if invisible</li>///
+ '///<li>-> NOTE: The testcase developer has to take care herself that function is entered correctly</li>///
+ warnlog "Formula bar was expected to be visible"
+ ViewToolbarsFormulaBar
+ end if
+ sleep(2)
+ '///<li>Select the desired range</li>///
+ Kontext "RechenleisteCalc"
+ Bereich.TypeKeys "<MOD1 A>"
+ Bereich.TypeKeys ( sSelectThis )
+ sleep(1)
+ Bereich.TypeKeys "<RETURN>"
+ sleep(2)
+ '///<li>Check if input leads to success</li>///
+ kontext
+ '///<li>If a MsgBox is in the way the selection must have failed</li>///
+ if active.exists then
+ if active.getRT = 304 then
+ '///<li>-> NOTE: Only throw a PrintLog if selection fails because failture may be the desired result!</li>///
+ '///<li>-> FURTHER NOTE: We retrun FALSE to check this in the calling routine</li>///
+ printlog "Selecting the range failed due to known reason, e.g. wrong selection or invalid name"
+ Active.OK
+ else
+ '///<li>Only throw a waring if a dialog of unexpected resource type appears</li>///
+ warnlog "OOPS, don't know what's disturbing now -> CHECK IT OUT!"
+ end if
+ else
+ '///<li>Everything OK? -> TRUE</li>///
+ fCalcSelectRange = TRUE
+ end if
+end function
+'///</ul>
+
+'-------------------------------------------------------------------------
+
+function fCalcNameRange ( sNameThis ) as boolean
+ '///<b>This is just an alias function to avoid confusion -> see 'fCalcSelectRange'<b>
+ '///With the integration of CWS 'rangename' the function 'fCalcSelectRange'
+ '///+could also be used to name a previous selected range
+ fCalcNameRange = fCalcSelectRange ( sNameThis )
+end function
+
+'
+'--------------------------------------------------------------------
+'
+
+function fCalcSelectCell ( sSelectThisCell ) as boolean
+ '///<b>This is just an alias function to avoid confusion -> see 'fCalcSelectRange'<b>
+ fCalcSelectCell = fCalcSelectRange ( sSelectThisCell )
+end function
+
+'
+'--------------------------------------------------------------------
+'
+
+function fCalcGetSelectionString() as String
+ '///<b>Obtain range (e.g. 'A1:E10') or range name in 'formula bar'
+ '///+RETURNS: STRING</b>///
+ '///<ul>
+ '///<li>Check if 'formula bar' is visible</li>///
+ Kontext "RechenleisteCalc"
+ if not RechenleisteCalc.isvisible then
+ '///<li>-> Throw warning and Invoke 'formula bar' if invisible</li>///
+ '///<li>-> NOTE: The testcase developer has to take care herself that function is entered correctly</li>///
+ warnlog "Formula bar was expected to be visible"
+ ViewToolbarsFormulaBar
+ end if
+ sleep(2)
+ '///<li>Get and return string in range selection list box</li>///
+ Kontext "RechenleisteCalc"
+ fCalcGetSelectionString = Bereich.GetSelText
+ '///</ul>
+end function
+
+'
+'--------------------------------------------------------------------
+'
+
+function fCalcSelectSheet ( sSelectThisSheet ) as boolean
+
+ '///<b>Select a sheet by name (STRING) or number (INTEGER)///
+ '///+RETURNS: boolean (success)</u>///
+ fCalcSelectSheet = FALSE
+ '///<ul>
+ try
+ Kontext "DocumentCalc"
+ '///<li>Invoke Edit::Sheet::Select</li>///
+ EditSheetSelect
+ Kontext "SelectSheets"
+ '///<li>Select sheet no. or sheet name in listbox</li>///
+ SheetSelectionBox.Select ( sSelectThisSheet )
+ '///<li>OK</li>///
+ SelectSheets.OK
+ '///<li>Return true</li>///
+ fCalcSelectSheet = TRUE
+ catch
+ warnlog "Something went wrong while selecting a sheet by name"
+ '///<li>In case of failture lookup 'Select sheets' dialog andd close it if exists</li>///
+ Kontext "SelectSheets"
+ if SelectSheets.exists(2) then
+ SelectSheets.Cancel
+ end if
+ endcatch
+ '///</ul>
+end function
+'
+'-------------------------------------------------------------------------
+'
+function fNavigatorSelectObject ( sWhatObject as STRING , iObjectPosition as INTEGER )
+ '///<b>Select any Object in Navigator</b>
+ '///<b>STRING: sWhatObject</b> - A keyword to choose desired obeject category
+ '///+Posible values: sheets, range names, database ranges, linked areas, graphics, ole objects, notes, drawing objects
+ '///<b>INTEGER: iObjectPosition</b> - Position of object (>=1) within 'sWhatObject'
+ '///+<b>NOTE:</b>You're moving within a treelistbox which is quite messy to handle.
+ '///+In case 'iObjectPosition' is larger than the real number of objects in category you're end up in another categories.
+ '///+<b>WITHOUT ANY WARNING!</b>
+ '///<b>RETURNS:</b> BOOLEAN (success)</b>
+ '///-----
+ '///<ul>
+ dim bNavigatorWasVisible as boolean
+ bNavigatorWasVisible = FALSE
+ dim iIndex
+ dim iCategoryPosition as INTEGER
+
+ fNavigatorSelectObject = FALSE
+ '///<li>Translate 'sWhatObject' to postion number of desired object category</li>///
+ select case lcase ( sWhatObject )
+ case "sheets" : iCategoryPosition = 1
+ case "range names" : iCategoryPosition = 2
+ case "database ranges" : iCategoryPosition = 3
+ case "linked areas" : iCategoryPosition = 4
+ case "graphics" : iCategoryPosition = 5
+ case "ole objects" : iCategoryPosition = 6
+ case "notes" : iCategoryPosition = 7
+ case "drawing objects" : iCategoryPosition = 8
+ case else
+ warnlog "Invalid keyword -> Aborting fNavigatorSelectObject()"
+ exit function
+ end select
+ '///<li>Check if Navigator is visible</li>///
+ Kontext "NavigatorCalc"
+ if NavigatorCalc.exists (3) then
+ '///<li>Remember state of visibiliy TRUE/FALSE</li>///
+ bNavigatorWasVisible = TRUE
+ else
+ '///<li>Invoke navigator if not visible</li>///
+ ViewNavigator
+ end if
+
+ try
+ Kontext "NavigatorCalc"
+ '///<li>Go to Top in Navigator</li>///
+ liste.TypeKeys "<HOME>"
+ '///<li>Travel top to bottom through all categories</li>///
+ for iIndex = 1 to 8
+ '///<li>Make sure all elements in category are hidden, apply '-' key</li>///
+ liste.TypeKeys "-<DOWN>"
+ next iIndex
+ '///<li>Select desired category</li>///
+ liste.select ( iCategoryPosition )
+ '///<li>Unfold elements of selected category</li>///
+ liste.TypeKeys "+"
+ '///<li>Select desired position within category</li>///
+ liste.select ( iCategoryPosition + iObjectPosition )
+ '///<li>Hit 'RETURN' key to select element in document</li>///
+ liste.TypeKeys "<RETURN>"
+ '///<li>Return 'TRUE' for 'fNavigatorSelectObject'</li>///
+ fNavigatorSelectObject = TRUE
+ catch
+ warnlog "Selecting the desired object failed. Perhaps your input wasn't valid"
+ endcatch
+ '///<li>Close navigator if it wasn't visible before entering this function</li>///
+ if bNavigatorWasVisible = TRUE then
+ printlog "Leaving navigator open as initially found"
+ else
+ ViewNavigator
+ printlog "Closing navigator as initially found"
+ end if
+ '///</ul>
+end function
+
diff --git a/testautomation/spreadsheet/tools/includes/c_tool_l10n_mnomics.inc b/testautomation/spreadsheet/tools/includes/c_tool_l10n_mnomics.inc
new file mode 100644
index 000000000000..43dd2945c22a
--- /dev/null
+++ b/testautomation/spreadsheet/tools/includes/c_tool_l10n_mnomics.inc
@@ -0,0 +1,160 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Tools for Keyboard Accessibility
+'*
+'************************************************************************
+'*
+' #1 fDataPilotRowSelection
+' #1 fDataPilotColumnSelection
+' #1 fDataPilotDataSelection
+'*
+'\***********************************************************************
+
+function fDataPilotRowSelection()
+
+fDataPilotRowSelection = TRUE
+
+ select case iSprache
+ case 01 : ' English (USA)
+ DataPilotSelection.typekeys "<MOD2 R>"
+ case 33 : ' French
+ DataPilotSelection.typekeys "<MOD2 g>"
+ case 34 : ' Spanish
+ DataPilotSelection.typekeys "<MOD2 l>"
+ case 39 : ' Italian
+ DataPilotSelection.typekeys "<MOD2 R>"
+ case 46 : ' Swedish
+ DataPilotSelection.typekeys "<MOD2 d>"
+ case 49 : ' German
+ DataPilotSelection.typekeys "<MOD2 l>"
+ case 55 : ' Portuguese
+ DataPilotSelection.typekeys "<MOD2 h>"
+ case 81 : ' Japanese
+ DataPilotSelection.typekeys "<MOD2 B>"
+ case 82 : ' Korean
+ DataPilotSelection.typekeys "<MOD2 B>"
+ case 86 : ' Chinese (simplified)
+ DataPilotSelection.typekeys "<MOD2 B>"
+ case 88 : ' Chinese (traditional)
+ DataPilotSelection.typekeys "<MOD2 B>"
+ case else : ' Fallback
+ QAErrorLog "Now, the test does not support for the language " +iSprache
+ fDataPilotRowSelection = FALSE
+ end select
+
+end function
+
+'----------------------------------------------------
+
+function fDataPilotColumnSelection()
+
+fDataPilotColumnSelection = TRUE
+
+ select case iSprache
+ case 01 : ' English (USA)
+ DataPilotSelection.typekeys "<MOD2 C>"
+ case 33 : ' French
+ DataPilotSelection.typekeys "<MOD2 C>"
+ case 34 : ' Spanish
+ DataPilotSelection.typekeys "<MOD2 C>"
+ case 39 : ' Italian
+ DataPilotSelection.typekeys "<MOD2 C>"
+ case 46 : ' Swedish
+ DataPilotSelection.typekeys "<MOD2 m>"
+ case 49 : ' German
+ DataPilotSelection.typekeys "<MOD2 S>"
+ case 55 : ' Portuguese
+ DataPilotSelection.typekeys "<MOD2 C>"
+ case 81 : ' Japanese
+ DataPilotSelection.typekeys "<MOD2 A>"
+ case 82 : ' Korean
+ DataPilotSelection.typekeys "<MOD2 A>"
+ case 86 : ' Chinese (simplified)
+ DataPilotSelection.typekeys "<MOD2 A>"
+ case 88 : ' Chinese (traditional)
+ DataPilotSelection.typekeys "<MOD2 A>"
+ case else : ' Fallback
+ QAErrorLog "Now, the test does not support for the language " +iSprache
+ fDataPilotColumnSelection = FALSE
+ end select
+
+end function
+
+'----------------------------------------------------
+
+function fDataPilotDataSelection()
+
+fDataPilotDataSelection = TRUE
+
+ select case iSprache
+ case 01 : ' English (USA)
+ DataPilotSelection.typekeys "<MOD2 D>"
+ case 33 : ' French
+ DataPilotSelection.typekeys "<MOD2 D>"
+ case 34 : ' Spanish
+ DataPilotSelection.typekeys "<MOD2 t>"
+ case 39 : ' Italian
+ DataPilotSelection.typekeys "<MOD2 D>"
+ case 46 : ' Swedish
+ DataPilotSelection.typekeys "<MOD2 t>"
+ case 49 : ' German
+ DataPilotSelection.typekeys "<MOD2 D>"
+ case 55 : ' Portuguese
+ DataPilotSelection.typekeys "<MOD2 D>"
+ case 81 : ' Japanese
+ DataPilotSelection.typekeys "<MOD2 C>"
+ case 82 : ' Korean
+ DataPilotSelection.typekeys "<MOD2 C>"
+ case 86 : ' Chinese (simplified)
+ DataPilotSelection.typekeys "<MOD2 C>"
+ case 88 : ' Chinese (traditional)
+ DataPilotSelection.typekeys "<MOD2 C>"
+ case else : ' Fallback
+ QAErrorLog "Now, the test does not support for the language " +iSprache
+ fDataPilotDataSelection = FALSE
+ end select
+
+end function
+
+'----------------------------------------------------
+
+function fDataPilotPageSelection()
+
+fDataPilotPageSelection = TRUE
+
+ select case iSprache
+ case 01 : ' English (USA)
+ DataPilotSelection.typekeys "<MOD2 P>"
+ case else : ' Fallback
+ QAErrorLog "Now, the test does not support for the language " +iSprache
+ fDataPilotPageSelection = FALSE
+ end select
+
+end function
diff --git a/testautomation/spreadsheet/tools/includes/c_tool_options.inc b/testautomation/spreadsheet/tools/includes/c_tool_options.inc
new file mode 100644
index 000000000000..89bc7a4e0ad3
--- /dev/null
+++ b/testautomation/spreadsheet/tools/includes/c_tool_options.inc
@@ -0,0 +1,95 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'*
+'* owner : oliver.craemer@oracle.com
+'*
+'* short description : Tools for Tools::Options dialog
+'*
+'************************************************************************
+'*
+' #1 subSetConversionMicrosoftOLE
+'*
+'\***********************************************************************
+
+sub subSetConversionMicrosoftOLE ( OPTIONAL sConversionType as STRING )
+'///<u><b>Routine to adjust the behaviour of Tools::Options::Load/Save::Microsoft Office</b></u>///
+'///<b>Possible Keys for 'sConversionType' are:</b>///
+'///<ul>
+'///<li>RESET (or omitted): Uncheck all boxes (default in a freshly installed OOo))</li>///
+'///<li>ALL: Check all boxes</li>///
+'///<li>LOAD: Check all boxes for loading MS OLE objects (left side), uncheck all boxes for saving</li>///
+'///<li>SAVE: Check all boxes for saving MS OLE objects (right side), uncheck all boxes for loading</li>///
+'///<li>For other values the subroutine will exit</li>///
+'///</ul>
+'///<b>Action:</b>///
+'///<ul>
+ '///<li>Convert omitted 'sConversionType' to RESET</li>///
+ if IsMissing ( sConversionType ) then
+ sConversionType = "RESET"
+ end if
+ dim iPosInAuswahl as INTEGER
+ dim iExtraToggle as INTEGER
+
+ '///<li>Determine value of 'iExtraToggle' for known keys</li>///
+ select case sConversionType
+ case "RESET" : iExtraToggle = 1
+ case "ALL" : iExtraToggle = 2
+ case "LOAD" : iExtraToggle = 3
+ case "SAVE" : iExtraToggle = 4
+ case else
+ warnlog "Unknown keyword for paramter -> Exit the subroutine"
+ qaErrorLog "Valid keywords are RESET, ALL, LOAD and SAVE!"
+ exit sub
+ end select
+
+ '///<li>Invoke Tools::Options</li>///
+ ToolsOptions
+ '///<li>Go to tabpage Load/Save::Microsoft Office</li>///
+ call hToolsOptions ( "LOADSAVE" , "MICROSOFTOFFICE" )
+ '///<li>Go to top entry in listbox</li>///
+ Auswahl.TypeKeys( "<PageUp>" )
+
+ '///<li>Toggle (in a tricky way) to a defined state of checkboxes</li>///
+ for iPosInAuswahl = 1 to 4
+ while NOT Auswahl.IsChecked
+ Auswahl.TypeKeys ( "<Space>" )
+ wend
+ while Auswahl.IsChecked
+ Auswahl.TypeKeys ( "<Space>" )
+ wend
+ '///<li>Toggle to desired state of boxes</li>///
+ Auswahl.TypeKeys ( "<Space>" , iExtraToggle )
+ '///<li>Go one entry down in list box</li>///
+ Auswahl.TypeKeys ( "<Down>" )
+ '///<li>Loop for all lines</li>///
+ next iPosInAuswahl
+
+ '///<li>Quit dialog</li>///
+ Kontext "OptionenDLG"
+ OptionenDLG.Ok
+ '///</ul>
+end sub
diff --git a/testautomation/spreadsheet/tools/includes/c_validity_tools.inc b/testautomation/spreadsheet/tools/includes/c_validity_tools.inc
new file mode 100644
index 000000000000..af78bffe2468
--- /dev/null
+++ b/testautomation/spreadsheet/tools/includes/c_validity_tools.inc
@@ -0,0 +1,139 @@
+'encoding UTF-8 Do not remove or change this line!
+'**************************************************************************
+' DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+'
+' Copyright 2000, 2010 Oracle and/or its affiliates.
+'
+' OpenOffice.org - a multi-platform office productivity suite
+'
+' This file is part of OpenOffice.org.
+'
+' OpenOffice.org is free software: you can redistribute it and/or modify
+' it under the terms of the GNU Lesser General Public License version 3
+' only, as published by the Free Software Foundation.
+'
+' OpenOffice.org is distributed in the hope that it will be useful,
+' but WITHOUT ANY WARRANTY; without even the implied warranty of
+' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+' GNU Lesser General Public License version 3 for more details
+' (a copy is included in the LICENSE file that accompanied this code).
+'
+' You should have received a copy of the GNU Lesser General Public License
+' version 3 along with OpenOffice.org. If not, see
+' <http://www.openoffice.org/license.html>
+' for a copy of the LGPLv3 License.
+'
+'/************************************************************************
+'**
+'** owner : oliver.craemer@Sun.COM
+'**
+'** short description : Subroutines for the data validity test
+'**
+'************************************************************************
+' **
+' #0 check_message ' Check if the messages in validity test are OK
+' **
+'\***********************************************************************
+
+sub check_message(MType as String, Celladdress as String, cellcontent as String, wrong as String)
+'/// Sub routine for checking message
+ if MType <> "Macro" then
+ Kontext "RechenleisteCalc"
+ if not RechenleisteCalc.isvisible then
+ ViewToolbarsFormulaBar
+ end if
+ Kontext "RechenleisteCalc"
+ Bereich.TypeKeys "<MOD1 A>"
+ Bereich.TypeKeys Celladdress
+ sleep(1)
+ Bereich.TypeKeys "<RETURN>"
+
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys cellcontent
+ DocumentCalc.TypeKeys "<RETURN>"
+ kontext "active"
+ if active.exists(2) then
+ warnlog "Value " & cellcontent & " is correct in cell "& Celladdress & ", so no " & MType & " message must not be appear"
+ if MType = "Stop" then
+ active.OK
+ else
+ active.Cancel
+ end if
+ else
+ printlog "OK, no " & MType & " message appears, by inserting the correct value into " & Celladdress
+ end if
+
+ Kontext "RechenleisteCalc"
+ if not RechenleisteCalc.isvisible then
+ ViewToolbarsFormulaBar
+ end if
+ Kontext "RechenleisteCalc"
+ Bereich.TypeKeys "<MOD1 A>"
+ Bereich.TypeKeys Celladdress
+ sleep(1)
+ Bereich.TypeKeys "<RETURN>"
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys wrong
+ DocumentCalc.TypeKeys "<RETURN>"
+ kontext "active"
+ if active.exists(2) then
+ printlog "OK, value " & wrong & " is not correct in cell " & Celladdress & ", so the " & MType & " message has to be appear"
+ if MType = "Stop" then
+ active.OK
+ else
+ active.Cancel
+ end if
+ else
+ warnlog "Value " & wrong & " is not correct for cell " & Celladdress & ", so the " & MType & " message has to be appears"
+ end if
+ else
+ Kontext "RechenleisteCalc"
+ if not RechenleisteCalc.isvisible then
+ ViewToolbarsFormulaBar
+ end if
+ Kontext "RechenleisteCalc"
+ Bereich.TypeKeys "<MOD1 A>"
+ Bereich.TypeKeys Celladdress
+ sleep(1)
+ Bereich.TypeKeys "<RETURN>"
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys cellcontent
+ DocumentCalc.TypeKeys "<RETURN>"
+ DocumentCalc.TypeKeys "<UP><RIGHT>"
+ FormatCells
+ Kontext
+ Active.setPage TabFontEffects
+ Kontext "TabFontEffects"
+ if FontColor.getSelIndex = 1 then
+ printlog "OK, the macro detect the correct word in " & Celladdress
+ else
+ warnlog "The Fontcolor is " & FontColor.getSelText & " instead of automatic in cell " & Celladdress
+ end if
+ TabFontEffects.Cancel
+
+ Kontext "RechenleisteCalc"
+ if not RechenleisteCalc.isvisible then
+ ViewToolbarsFormulaBar
+ end if
+ Kontext "RechenleisteCalc"
+ Bereich.TypeKeys "<MOD1 A>"
+ Bereich.TypeKeys Celladdress
+ sleep(1)
+ Bereich.TypeKeys "<RETURN>"
+ Kontext "DocumentCalc"
+ DocumentCalc.TypeKeys wrong
+ DocumentCalc.TypeKeys "<RETURN>"
+ DocumentCalc.TypeKeys "<UP><RIGHT>"
+ FormatCells
+ Kontext
+ Active.setPage TabFontEffects
+ Kontext "TabFontEffects"
+ if FontColor.getSelIndex = 12 then
+ printlog "OK, the macro detect the wrong word in " & Celladdress
+ else
+ warnlog "The Fontcolor is " & FontColor.getSelText & " instead of light green in cell " & Celladdress
+ end if
+ TabFontEffects.Cancel
+ end if
+end sub
+
diff --git a/testautomation/spreadsheet/tools/input/Errorcodes.ods b/testautomation/spreadsheet/tools/input/Errorcodes.ods
new file mode 100755
index 000000000000..2c383429e852
--- /dev/null
+++ b/testautomation/spreadsheet/tools/input/Errorcodes.ods
Binary files differ
diff --git a/testautomation/spreadsheet/tools/input/Functionnames.ods b/testautomation/spreadsheet/tools/input/Functionnames.ods
new file mode 100755
index 000000000000..1d9f3edab848
--- /dev/null
+++ b/testautomation/spreadsheet/tools/input/Functionnames.ods
Binary files differ