summaryrefslogtreecommitdiff
path: root/testautomation/spreadsheet/required/includes/c_upd_datamenu.inc
blob: 2975a7b1c9e22bb1f3f04d22f49bd0c27e3b659e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
'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'"
    Call hFileOpen (Convertpath (gTesttoolPath + "spreadsheet\required\input\datapilot.ods" ))
    '/// If the file is not editable, click the edit button on standardbar
    printlog " If the file is not editable, click the edit button on standardbar"
    Call sMakeReadOnlyDocumentEditable
    '/// 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"
    Call hFileOpen (Convertpath (gTesttoolPath + "spreadsheet\required\input\Database_Refresh.ods" ))
    '/// If the file is not editable, click the edit button on standardbar
    printlog " If the file is not editable, click the edit button on standardbar"
    Call sMakeReadOnlyDocumentEditable
    '/// Refresh Database by 'Data – Refresh Range'
    printlog " Refresh Database by 'Data – Refresh Range'"
    DataRefreshRange
    '/// Close document
    printlog " Close document"
    Call hCloseDocument

endcase

'-----------------------------------------------------------