merge the formfield patch from ooo-build
[ooovba.git] / testautomation / dbaccess / optional / includes / frm_Forms.inc
blob5bc5b4c181315dc6276d4197a459e84c0b7a3c10
1 'encoding UTF-8  Do not remove or change this line!
2 '**************************************************************************
3 '* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 '* 
5 '* Copyright 2008 by Sun Microsystems, Inc.
6 '*
7 '* OpenOffice.org - a multi-platform office productivity suite
8 '*
9 '* $RCSfile: frm_Forms.inc,v $
11 '* $Revision: 1.2 $
13 '* last change: $Author: rt $ $Date: 2008-08-28 11:39:23 $
15 '* This file is part of OpenOffice.org.
17 '* OpenOffice.org is free software: you can redistribute it and/or modify
18 '* it under the terms of the GNU Lesser General Public License version 3
19 '* only, as published by the Free Software Foundation.
21 '* OpenOffice.org is distributed in the hope that it will be useful,
22 '* but WITHOUT ANY WARRANTY; without even the implied warranty of
23 '* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
24 '* GNU Lesser General Public License version 3 for more details
25 '* (a copy is included in the LICENSE file that accompanied this code).
27 '* You should have received a copy of the GNU Lesser General Public License
28 '* version 3 along with OpenOffice.org.  If not, see
29 '* <http://www.openoffice.org/license.html>
30 '* for a copy of the LGPLv3 License.
32 '/************************************************************************
34 '* owner : marc.neumann@sun.com
36 '* short description : Form Test
38 '\***********************************************************************
39 global gDSName as String
41 sub frm_Forms(sdsname)
42     
43     gDSName = sdsname    
44     call tCreateForm
45     call tNavigate
46     call tSearch
47     call tSort     
48     call tViewAsGrid
49     call tNewSaveDelete
50     call tCreateSubForms
51     call tCheckSubForm
52     call tCreateSubFormsNewMethod
53     call tCheckSubForm
54     
55     'test forms inside a database
56     app.FileCopy gTesttoolPath + ConvertPath("dbaccess/optional/input/hsql_datasource/TT_hsqldb.odb"),gOfficePath + ConvertPath("user/work/TT_hsqldb.odb")    
58     call tDatabaseFormsMain    
59     call tNewFolder
60     call tRenameFolder
61     
62     'activate after cws fwkdbdesign01 is integrated
63     call tKeyboardNavigate    
65     ' test for issue 78286
66     call tViewAsGridEmbeddedForm
68 end sub
69 '--------------------------------------------------------------------------------------
70 testcase tDatabaseFormsMain
72     call fOpenDatabase(gOfficePath + "user/work/TT_hsqldb.odb")
73     
74     call fOpenNewFormDesign
75     
76     call hToolbarSelect("FormControls",true)    
77     
78     '/// insert a textfield
79     printlog "insert a textfield"
80     Kontext "FormControls"              
81         Edit.Click
82         call hDrawingWithSelection ( 50, 20, 60, 30 )
83         sleep(1)
85     Kontext "FormControls"
86         ControlProperties.Click
87     
88     Kontext "ControlPropertiesTabControl"
89             ControlPropertiesTabControl.SetPage TabDataControl
90         sleep(1)
91         
92     Kontext "TabDataControl"
93         DataField.setText "id"        
94         sleep(1)
95         
96     Kontext "ControlPropertiesDialog"        
97         ControlPropertiesDialog.Close
98         sleep(1)
99                 
100     '/// save the form under the name TT_form1
101     printlog "save the form under the name TT_form1"
102     call fSaveForm( "TT_Form1", true )
104     '/// close the database
105     printlog "close the database"            
106     call fCloseDatabase
107     
108     '/// open the database again
109     printlog "open the database again"
110     call fOpenDatabase(gOfficePath + "user/work/TT_hsqldb.odb")
112     '/// open the form
113     printlog "open the form"
114     call fOpenForm("TT_Form1")
115     
116     '/// close the form
117     printlog "close the form"
118     call fCloseForm()
120     '/// close the database
121     printlog "close the database"
122     call fCloseDatabase()
123     
124 endcase
125 '--------------------------------------------------------------------------------------
126 testcase tCreateForm
127     
128     '/// open a new text document
129     printlog "open a new text document"
130         call hNewDocument
131         sleep(1)
132         '/// create a new form via the form navigator
133     printlog "create a new form via the form navigator"
134     call hToolbarSelect("FORMDESIGNTOOLS",true) 
136     Kontext "FormDesignTools"
137             ShowFmExplorer.Click        
138         sleep(2)
139         Kontext "FormularNavigator" 
140         Liste.TypeKeys "<SPACE>"
141         sleep(3)
142         Liste.OpenContextmenu
143         sleep(2)
144         hMenuSelectNr (1)
145         sleep(2)
146         hMenuSelectNr (1)
147         sleep(3)
148         Liste.TypeKeys "<RETURN>"
149         sleep(3)
150         Liste.OpenContextmenu
151         sleep(2)
152         hMenuSelectNr (6)
153         sleep(4)      
154         
155         Kontext "FormPropertiesDialog"
156             FormPropertiesTabControl.SetPage TabDataForm
157         sleep(1)
158         Kontext "TabDataForm"           
159         '/// set the datasource gDatasourceName
160         printlog "set the datasource " + gDSName          
161         DataSource.setText(gDSName)
162         TabDataForm.TypeKeys("<RETURN>")
163         sleep(1)
164         '/// set the table TT_Forms
165         printlog "set the table TT_Forms"              
166         Content.setText("TT_Forms")
167         TabDataForm.TypeKeys("<RETURN>")
168         sleep(1)
169         Kontext "FormPropertiesDialog"
170         FormPropertiesDialog.Close
171         sleep(3)
172         Kontext "FormularNavigator"
173         FormularNavigator.Close
174         sleep(4)
176     call hToolbarSelect("FormControls",true)    
178         Kontext "FormControls"
179         '/// insert a textfield
180     printlog "insert a textfield"        
181     Edit.Click
182         call hDrawingWithSelection ( 50, 20, 60, 30 )
183         sleep(1)
184     
185     Kontext "FormControls"
186         ControlProperties.Click
187     
188     Kontext "ControlPropertiesTabControl"
189             ControlPropertiesTabControl.SetPage TabDataControl
190         sleep(1)
191     Kontext "TabDataControl"
192         DataField.setText "id"
193         TabDataControl.TypeKeys("<RETURN>")        
194         sleep(1)            
195     Kontext "ControlPropertiesDialog"        
196         ControlPropertiesDialog.Close
197         sleep(1)
198     
199     Kontext "FormControls"
200          SwitchControlDesignMode.Click  
201          sleep(1)
202      
203     hFileSaveAsKill ( gOfficePath + ConvertPath("user/work/TT_Forms.odt"))
204     
205     call hCloseDocument
206     
207 endcase
208 '-------------------------------------------------------------------------
209 testcase tNavigate
210     
211     hFileOpen ( gOfficePath + ConvertPath("user/work/TT_Forms.odt"))
212     
213     FM_Next_Record
214     sleep(1)
215     FM_Last_Record
216     sleep(1)
217     FM_Previous_Record
218     sleep(1)
219     FM_First_Record
220     sleep(1)
221     
222     hCloseDocument 
223     
224 endcase
225 '-------------------------------------------------------------------------
226 testcase tKeyboardNavigate
227     
228     '/// open the database <OfficePath>/user/work/TT_hsqldb.odb
229     printlog "open the database " + gOfficePath + "user/work/TT_hsqldb.odb"
230     call fOpenDatabase(gOfficePath + "user/work/TT_hsqldb.odb")
231     
232     call fOpenForm("TT_Form1")
233     
234     Kontext "DocumentWriter"    
235         DocumentWriter.TypeKeys("<MOD1 MOD2 END>")
236     
237         DocumentWriter.TypeKeys "<MOD1 F5>" , true
238         sleep(1)        
239         DocumentWriter.TypeKeys "<SHIFT END>" , true
240         sleep(1)
241         DocumentWriter.TypeKeys "<MOD1 C>" , true
242         sleep(1)        
243         if getClipboard = "3" then
244             printlog "right record is displayed."
245         else        
246             warnlog "wrong record is displayed. It should be 3 but it is " + getClipboard
247         endif    
248     
249         DocumentWriter.TypeKeys("<MOD1 MOD2 HOME>")
250     
251         DocumentWriter.TypeKeys "<MOD1 F5>" , true
252         sleep(1)        
253         DocumentWriter.TypeKeys "<SHIFT END>" , true
254         sleep(1)
255         DocumentWriter.TypeKeys "<MOD1 C>" , true
256         sleep(1)        
257         if getClipboard = "1" then
258             printlog "right record is displayed."
259         else        
260             warnlog "wrong record is displayed. It should be 1 but it is " + getClipboard
261         endif    
262     
263         DocumentWriter.TypeKeys("<MOD1 MOD2 RIGHT>")
264     
265         DocumentWriter.TypeKeys "<MOD1 F5>" , true
266         sleep(1)        
267         DocumentWriter.TypeKeys "<SHIFT END>" , true
268         sleep(1)
269         DocumentWriter.TypeKeys "<MOD1 C>" , true
270         sleep(1)        
271         if getClipboard = "2" then
272             printlog "right record is displayed."
273         else        
274             warnlog "wrong record is displayed. It should be 2 but it is " + getClipboard
275         endif    
276     
277         DocumentWriter.TypeKeys("<MOD1 MOD2 LEFT>")
278     
279         DocumentWriter.TypeKeys "<MOD1 F5>" , true
280         sleep(1)        
281         DocumentWriter.TypeKeys "<SHIFT END>" , true
282         sleep(1)
283         DocumentWriter.TypeKeys "<MOD1 C>" , true
284         sleep(1)        
285         if getClipboard = "1" then
286             printlog "right record is displayed."
287         else        
288             warnlog "wrong record is displayed. It should be 1 but it is " + getClipboard
289         endif
290         
291         sleep(10)
292       
293     call fCloseDatabase 
294     
295 endcase
296 '-------------------------------------------------------------------------
297 testcase tSearch
298     
299     hFileOpen ( gOfficePath + ConvertPath("user/work/TT_Forms.odt"))
300     sleep(1)
301     FM_Search
302     sleep(1)
303     Kontext "RecordSearch"
304         SearchText.setText "3"
305         Search.Click
306         sleep(1)
307         CloseBtn.Click
308         
309         sleep(1)
310                 
311     Kontext "DocumentWriter"
312         DocumentWriter.TypeKeys "<MOD1 F5>" , true
313         sleep(1)
314                 DocumentWriter.TypeKeys "<HOME>" , true
315         sleep(1)        
316         DocumentWriter.TypeKeys "<SHIFT END>" , true
317         sleep(1)
318         DocumentWriter.TypeKeys "<MOD1 C>" , true
319         sleep(1)        
320         if getClipboard <> "3" then
321             warnlog "wrong record is displayed"
322         endif
323         sleep(1)
324     hCloseDocument 
325     
326 endcase
327 '-------------------------------------------------------------------------
328 testcase tSort
329     
330     hFileOpen ( gOfficePath + ConvertPath("user/work/TT_Forms.odt"))
331     
332     Kontext "DocumentWriter"
333         DocumentWriter.TypeKeys "<MOD1 F5>" , true
334     
335     FM_Sort_Des
336     sleep(1)
337     Kontext "DocumentWriter"
338         DocumentWriter.TypeKeys "<MOD1 F5>" , true
339         sleep(1)
340                 DocumentWriter.TypeKeys "<HOME>" , true
341         sleep(1)        
342         DocumentWriter.TypeKeys "<SHIFT END>" , true
343         sleep(1)
344         DocumentWriter.TypeKeys "<MOD1 C>" , true
345         sleep(1)        
346         if getClipboard <> "3" then
347             warnlog "wrong record is displayed. It is " + getClipboard + " but it have to 3"
348         endif
349     sleep(1)
350     
351     FM_Sort_Asc
352     sleep(1)
353     Kontext "DocumentWriter"
354         DocumentWriter.TypeKeys "<MOD1 F5>" , true
355         sleep(1)
356                 DocumentWriter.TypeKeys "<HOME>" , true
357         sleep(1)        
358         DocumentWriter.TypeKeys "<SHIFT END>" , true
359         sleep(1)
360         DocumentWriter.TypeKeys "<MOD1 C>" , true
361         sleep(1)        
362         if getClipboard <> "1" then
363             warnlog "wrong record is displayed. It is " + getClipboard + " but it have to 1" 
364         endif
365     sleep(1)
366     
367     FM_Sort_Des
368     sleep(1)    
369     Kontext "DocumentWriter"
370         DocumentWriter.TypeKeys "<MOD1 F5>" , true
371         sleep(1)
372                 DocumentWriter.TypeKeys "<HOME>" , true
373         sleep(1)        
374         DocumentWriter.TypeKeys "<SHIFT END>" , true
375         sleep(1)
376         DocumentWriter.TypeKeys "<MOD1 C>" , true
377         sleep(1)        
378         if getClipboard <> "3" then
379             warnlog "wrong record is displayed. It is " + getClipboard + " but it have to 3" 
380         endif
381     sleep(1)
382     
383     FM_Remove_Filter
384     sleep(1)
385     Kontext "DocumentWriter"
386         DocumentWriter.TypeKeys "<MOD1 F5>" , true
387         sleep(1)
388                 DocumentWriter.TypeKeys "<HOME>" , true
389         sleep(1)        
390         DocumentWriter.TypeKeys "<SHIFT END>" , true
391         sleep(1)
392         DocumentWriter.TypeKeys "<MOD1 C>" , true
393         sleep(1)        
394         if getClipboard <> "1" then
395             warnlog "wrong record is displayed. It is " + getClipboard + " but it have to 1" 
396         endif
397     sleep(1)
398       
399     FM_Sort_Order
400     sleep(1)
401     Kontext "SortOrder"
402         FieldName1.select 2
403         Order1.select 2
404         SortOrder.OK
405         
406     Kontext "DocumentWriter"
407         DocumentWriter.TypeKeys "<MOD1 F5>" , true
408         sleep(1)
409                 DocumentWriter.TypeKeys "<HOME>" , true
410         sleep(1)        
411         DocumentWriter.TypeKeys "<SHIFT END>" , true
412         sleep(1)
413         DocumentWriter.TypeKeys "<MOD1 C>" , true
414         sleep(1)        
415         if getClipboard <> "3" then
416             warnlog "wrong record is displayed. It is " + getClipboard + " but it have to 3" 
417         endif
418     sleep(1)
419     hCloseDocument 
420     
421 endcase
422 '-------------------------------------------------------------------------
423 testcase tViewAsGrid
424     
425     '///open the document TT_Forms.odt
426     printlog "pen the document TT_Forms.odt"
427     hFileOpen ( gOfficePath + ConvertPath("user/work/TT_Forms.odt"))
428     
429     Kontext "DocumentWriter"
430         DocumentWriter.TypeKeys "<MOD1 F5>" , true
432     '/// click on the icon view as grid
433     printlog "click on the icon view as grid"        
434     FM_View_As_Grid
435     
436     sleep(1)
438     '/// check if the grid appear
439     printlog "check if the grid appear"    
440     Kontext "TableView"    
441         if CurrentRecord.getText <> "1" then
442             warnlog "the first record is wrong"
443         endif
444         sleep(1)
445         NextRecord.Click
446         if CurrentRecord.getText <> "2" then
447             warnlog "the next record button in the table grid doesn't work"
448         endif
449         sleep(1)        
450         
451     '/// close the view
452     printlog "close the view"
453     FM_View_As_Grid    
455     sleep(1)
457     '/// close the document
458     printlog "close the document"
459     hCloseDocument 
460     
461 endcase
462 '-------------------------------------------------------------------------
463 testcase tNewSaveDelete
464     
465     hFileOpen ( gOfficePath + ConvertPath("user/work/TT_Forms.odt"))
466     
467     Kontext "DocumentWriter"
468         DocumentWriter.TypeKeys "<MOD1 F5>" , true
469         
470     FM_New_Record
471     
472     Kontext "DocumentWriter"
473         DocumentWriter.TypeKeys "7" , true
474     
475     FM_Save_Record
476     
477     FM_First_Record
478     FM_Last_Record    
479     
480     FM_Delete_Record
481       
482     Kontext "MessageBox"
483         if MessageBox.exists(3) then
484             MessageBox.Yes
485         else
486             warnlog "No confirm dialog when press delete record"
487         endif
488         
489     sleep(1)
490     hCloseDocument 
491     
492 endcase
493 '-------------------------------------------------------------------------
494 testcase tCreateSubForms
495     
496     '/// open a new text document
497     printlog "open a new text document"
498         call hNewDocument
499         sleep(1)
500         '/// create a new form via the form navigator
501     printlog "create a new form via the form navigator"
502     
503     call hToolbarSelect("FORMDESIGNTOOLS",true) 
505     Kontext "FormDesignTools"
506             ShowFmExplorer.Click        
507         sleep(2)
509         Kontext "FormularNavigator" 
510          Liste.TypeKeys "<SPACE>"
511          sleep(3)
512          Liste.OpenContextmenu
513          sleep(2)
514          hMenuSelectNr (1)
515          sleep(2)
516          hMenuSelectNr (1)
517          sleep(3)
518          Liste.TypeKeys "<RETURN>"
519          sleep(3)
520          Liste.OpenContextmenu
521          sleep(2)
522          hMenuSelectNr (6)
523          sleep(4)      
524         
525         Kontext "FormPropertiesDialog"
526          FormPropertiesTabControl.SetPage TabDataForm
527         Kontext "TabDataForm"           
528          '/// set the datasource gDatasourceName
529      printlog "set the datasource gDatasourceName"          
530      DataSource.setText(gDSName)        
531      TabDataForm.TypeKeys("<RETURN>")
532      '/// set the table TT_Forms
533      printlog "set the table TT_Forms"              
534          Content.setText("TT_Forms")
535      TabDataForm.TypeKeys("<RETURN>")
536      sleep(1)
537         Kontext "FormPropertiesDialog"
538      sleep(1)
539          FormPropertiesDialog.Close
540         sleep(3)
541         Kontext "FormularNavigator"
542          FormularNavigator.Close
543         sleep(4)
545     call hToolbarSelect("FormControls",true)    
547         Kontext "FormControls"
548         '/// insert a textfield
549     printlog "insert a textfield"        
550     Edit.Click
551         call hDrawingWithSelection ( 50, 20, 60, 30 )
552         sleep(1)
553     
554     Kontext "FormControls"
555         ControlProperties.Click
556     
557     Kontext "ControlPropertiesTabControl"
558             ControlPropertiesTabControl.SetPage TabDataControl
559     Kontext "TabDataControl"
560         DataField.setText "id"
561         TabDataControl.TypeKeys("<RETURN>",true)
562         sleep(1)            
563     Kontext "ControlPropertiesDialog"        
564         ControlPropertiesDialog.Close
565     
566     '/// now create the sub form
567     
568     call hToolbarSelect("FORMDESIGNTOOLS",true) 
570     Kontext "FormDesignTools"
571             ShowFmExplorer.Click        
572         sleep(2)
574         Kontext "FormularNavigator" 
575         Liste.TypeKeys "<HOME>" ' move to the first entry in the formnavigator tree
576         sleep(1)
577         Liste.TypeKeys "<LEFT>" ' collaps the tree
578         sleep(1)
579         Liste.TypeKeys "<RIGHT>" ' expand the tree
580         sleep(1)
581         Liste.TypeKeys "<DOWN>" ' go one down
582         sleep(1)     
583         Liste.OpenContextmenu
584         sleep(2)
585         hMenuSelectNr (1)
586         sleep(2)
587         hMenuSelectNr (1)
588         sleep(3)
589         Liste.TypeKeys "<RETURN>"
590         sleep(3)
591         Liste.OpenContextmenu
592         sleep(2)
593         hMenuSelectNr (6)
594         sleep(4)      
596     Kontext "FormPropertiesDialog"
597        FormPropertiesTabControl.SetPage TabDataForm
598          Kontext "TabDataForm"          
599        '/// set the datasource gDatasourceName
600        printlog "set the datasource gDatasourceName"          
601        DataSource.setText(gDSName)
602        TabDataForm.TypeKeys("<RETURN>",true)    
603        '/// set the contenttype SQL
604        printlog "set the contenttype SQL"
605        ContentType.select 3       
606        sleep(1)       
607        '/// set the sql string : select * from TT_Forms where id=:var1"
608        printlog "set the sql string : select * from TT_Forms where id=:var1"
609        TabDataForm.TypeKeys "<RETURN>" , true
610        TabDataForm.TypeKeys "select * from TT_Forms where id=:var1" , true
611        '/// set link master field
612        printlog "set link master field"
613        TabDataForm.TypeKeys "<TAB>" , 11 , true
614        sleep(1)
615        TabDataForm.TypeKeys "id" , true
616        sleep(1)
617        TabDataForm.TypeKeys "<RETURN>" , true
618        sleep(1)       
619        '/// set link slave field
620        printlog "set link slave field"
621        TabDataForm.TypeKeys "<RETURN>" , true
622        sleep(1)
623        TabDataForm.TypeKeys "var1" , true
624        sleep(1)  
625        TabDataForm.TypeKeys("<RETURN>",true)
626        sleep(1)
627        
628     Kontext "FormPropertiesDialog"
629          FormPropertiesDialog.Close
630          sleep(3)
631     Kontext "FormularNavigator"
632          FormularNavigator.Close
633          sleep(4)
635     call hToolbarSelect("FormControls",true)    
637         Kontext "FormControls"
639        '/// insert a textfield
640        printlog "insert a textfield"
641        'Edit.Click
642          call hDrawingWithSelection ( 50, 40, 60, 50 )
643          sleep(1)
644     
645     Kontext "FormControls"
646         ControlProperties.Click
647     
648     Kontext "ControlPropertiesTabControl"
649             ControlPropertiesTabControl.SetPage TabDataControl
650     Kontext "TabDataControl"
651         DataField.setText "id"
652         TabDataControl.TypeKeys("<RETURN>")
653         sleep(1)            
654     Kontext "ControlPropertiesDialog"        
655         ControlPropertiesDialog.Close
656              
657     Kontext "FormControls"
658             SwitchControlDesignMode.Click       
659          sleep(1)
660      
661     hFileSaveAsKill ( gOfficePath + ConvertPath("user/work/TT_SubForm.odt"))
662         
663     call hCloseDocument     
664     
665 endcase
666 '-------------------------------------------------------------------------
667 testcase tCheckSubForm
668    
669     '/// open the file TTSubForm.sxw
670     printlog "open the file TTSubForm.sxw"
671     hFileOpen ( gOfficePath + ConvertPath("user/work/TT_SubForm.odt"))
672    
673     '/// set cursor into the first control
674     printlog "set cursor into the first control"   
675     Kontext "DocumentWriter"
676         DocumentWriter.TypeKeys "<MOD1 F5>" , true
677         sleep(1)
678            
679     FM_Next_Record
680     sleep(1)
681     
682     Kontext "DocumentWriter"
683         DocumentWriter.TypeKeys "<TAB>" , true
684         sleep(1)
685         DocumentWriter.TypeKeys "<SHIFT END>" , true
686         sleep(1)
687         DocumentWriter.TypeKeys "<MOD1 C>" , true
688         sleep(1)        
689         if getClipboard <> "2" then
690             warnlog "wrong record is displayed in subform. It is " + getClipboard + " but it have to 2" 
691         endif
692     sleep(1)
693     call hCloseDocument
694    
695 endcase
696 '-------------------------------------------------------------------------
697 testcase tCreateSubFormsNewMethod
698     
699     '/// open a new text document
700     printlog "open a new text document"
701         call hNewDocument
702         sleep(1)
703         '/// create a new form via the form navigator
704     printlog "create a new form via the form navigator"
706     call hToolbarSelect("FORMDESIGNTOOLS",true) 
708     Kontext "FormDesignTools"
709             ShowFmExplorer.Click        
710         sleep(2)    
712         Kontext "FormularNavigator" 
713         Liste.TypeKeys "<SPACE>"
714         sleep(3)
715         Liste.OpenContextmenu
716         sleep(2)
717         hMenuSelectNr (1)
718         sleep(2)
719         hMenuSelectNr (1)
720         sleep(3)
721         Liste.TypeKeys "<RETURN>"
722         sleep(3)
723         Liste.OpenContextmenu
724         sleep(2)
725         hMenuSelectNr (6)
726         sleep(4)      
727     
728         Kontext "FormPropertiesDialog"
729         FormPropertiesTabControl.SetPage TabDataForm
730         Kontext "TabDataForm"           
731         '/// set the datasource gDatasourceName
732         printlog "set the datasource gDatasourceName"          
733         DataSource.setText(gDSName)     
734         TabDataForm.TypeKeys "<RETURN>" , true
735         '/// set the table TT_Forms
736         printlog "set the table TT_Forms"              
737         Content.setText("TT_Forms")     
738         TabDataForm.TypeKeys "<RETURN>" , true
739         sleep 1
740         Kontext "FormPropertiesDialog"
741         FormPropertiesDialog.Close
742         sleep(3)
743         Kontext "FormularNavigator"
744             FormularNavigator.Close
745         sleep(4)
747     call hToolbarSelect("FormControls",true)    
749         Kontext "FormControls"          
750         '/// insert a textfield
751         printlog "insert a textfield"        
752         Edit.Click
753         call hDrawingWithSelection ( 50, 20, 60, 30 )
754         sleep(1)
755     
756     Kontext "FormControls"
757         ControlProperties.Click        
758         sleep 1
759     
760     Kontext "ControlPropertiesTabControl"
761             ControlPropertiesTabControl.SetPage TabDataControl
762             sleep 1
763     Kontext "TabDataControl"
764         DataField.setText "id"
765         TabDataControl.TypeKeys "<RETURN>" , true
766         sleep(1)            
767     Kontext "ControlPropertiesDialog"        
768         ControlPropertiesDialog.Close
769         sleep 1
770     
771     Kontext "DocumentWriter"
772         DocumentWriter.TypeKeys("subform",true)
773     
774     '/// now create the sub form
775     call hToolbarSelect("FORMDESIGNTOOLS",true) 
777     Kontext "FormDesignTools"
778             ShowFmExplorer.Click        
779         sleep(2)
780        
781         Kontext "FormularNavigator" 
782         Liste.TypeKeys "<HOME>" ' move to the first entry in the formnavigator tree
783         sleep(1)
784         Liste.TypeKeys "<LEFT>" ' collaps the tree
785         sleep(1)
786         Liste.TypeKeys "<RIGHT>" ' expand the tree
787         sleep(1)
788         Liste.TypeKeys "<DOWN>" ' go one down
789         sleep(1)     
790         Liste.OpenContextmenu
791         sleep(2)
792         hMenuSelectNr (1)
793         sleep(2)
794         hMenuSelectNr (1)
795         sleep(3)
796         Liste.TypeKeys "<RETURN>"
797         sleep(3)
798         Liste.OpenContextmenu
799         sleep(2)
800         hMenuSelectNr (6)
801         sleep(4)      
803     Kontext "FormPropertiesDialog"
804         FormPropertiesTabControl.SetPage TabDataForm
805         Kontext "TabDataForm"           
806         '/// set the datasource gDatasourceName
807         printlog "set the datasource gDatasourceName"          
808         DataSource.setText(gDSName)     
809         TabDataForm.TypeKeys("<RETURN>", true)
810         sleep 1
811         '/// set the contenttype SQL
812         printlog "set the contenttype to table"
813         ContentType.select 1
814         TabDataForm.TypeKeys("<RETURN>", true)
815         sleep(1)       
816         '/// set the table TT_Forms
817         printlog "set the table TT_Forms"
818         Content.select 1
819         sleep(1)
820         TabDataForm.TypeKeys("<RETURN>", true)
821         sleep 1
822         '/// open the Form Link dialog set link master field
823         printlog "open the Form Link dialog set link master field"       
824         FormLinkDLGButton.click
825         sleep(1)
826     Kontext "FormLinkDialog"       
827         '/// select the field id for the master and the link field
828         printlog "select the field id for the master and the link field"
829         LinkDetail1.select 1
830         LinkMaster1.select 1
831         '/// close the dialog with OK
832         printlog "close the dialog with OK"
833         FormLinkDialog.OK         
834        
835     Kontext "FormPropertiesDialog"
836         FormPropertiesDialog.Close
837         sleep(3)
838     
839     Kontext "FormularNavigator"
840         FormularNavigator.Close
841         sleep(4)
843     call hToolbarSelect("FormControls",true)    
845         Kontext "FormControls"
846     
847        '/// insert a textfield
848        printlog "insert a textfield"
849        'Edit.Click
850        call hDrawingWithSelection ( 50, 40, 60, 50 )
851        sleep(1)
852     
853     Kontext "FormControls"
854         ControlProperties.Click
855     
856     Kontext "ControlPropertiesTabControl"
857             ControlPropertiesTabControl.SetPage TabDataControl
858     Kontext "TabDataControl"
859         DataField.setText "id"
860         TabDataControl.TypeKeys("<RETURN>" , true)
861         sleep(1)            
862     Kontext "ControlPropertiesDialog"        
863         ControlPropertiesDialog.Close
864     sleep(1)
865     
866     Kontext "FormControls"
867             SwitchControlDesignMode.Click       
868          sleep(1)
869     
870     hFileSaveAsKill ( gOfficePath + ConvertPath("user/work/TT_SubForm.odt"))
871         
872     call hCloseDocument     
873     
874 endcase
875 '--------------------------------------------------------------------------------------
876 testcase tNewFolder
878     '/// test the folder feature inside the form container
879     
880     '/// open the database <OfficePath>/user/work/TT_hsqldb.odb
881     printlog "open the database " + gOfficePath + "user/work/TT_hsqldb.odb"
882     call fOpenDatabase(gOfficePath + "user/work/TT_hsqldb.odb")
883     
884     '/// display the form container
885     printlog "display the form container"
886     Kontext "ContainerView"    
887         ViewForms
888         if ( Not FormTree.exists(1) ) then
889             warnlog "The form tree doesn't exists"            
890             goto endsub
891         end if
893     '/// insert a new folder via INSERT/FOLDER menu
894     printlog "insert a new folder via INSERT/FOLDER menu"
895     Kontext "DATABASE"
896         Database.UseMenu
897         hMenuSelectNr(4)
898         hMenuSelectNr(8)
900     '/// insert a new folder name
901     printlog "insert a new folder name"
902     Kontext "FormFolderNameDialog"
903         Foldername.setText("Folder1")
904         FormFolderNameDialog.OK
906     '/// close the database and save changes
907     printlog "close the database and save changes"
908     call fCloseDatabase(true)
910     '/// open the database again
911     printlog "open the database again"
912     call fOpenDatabase(gOfficePath + "user/work/TT_hsqldb.odb")    
914     '/// check if he folder still exists
915     printlog "check if he folder still exists"
916     if (fFindForm("Folder1")) then
917         printlog "Folder available after save and reload"
918     else
919         warnlog "Folder _not_ available after save and reload"
920     endif
922     '/// close the database again
923     printlog "close the database again"
924     call fCloseDatabase()
925     
926 endcase
927 '--------------------------------------------------------------------------------------
928 testcase tRenameFolder
930     '/// test the folder feature inside the form container
931     '/// test for issue 75723
932     
933     '/// open the database <OfficePath>/user/work/TT_hsqldb.odb
934     printlog "open the database " + gOfficePath + "user/work/TT_hsqldb.odb"
935     call fOpenDatabase(gOfficePath + "user/work/TT_hsqldb.odb")
936     
937     '/// display the form container
938     printlog "display the form container"
939     Kontext "ContainerView"    
940         ViewForms
941         if ( Not FormTree.exists(1) ) then
942             warnlog "The form tree doesn't exists"            
943             goto endsub
944         end if
946     '/// insert a new folder via INSERT/FOLDER menu
947     printlog "insert a new folder via INSERT/FOLDER menu"
948     Kontext "DATABASE"
949         Database.UseMenu
950         hMenuSelectNr(4)
951         hMenuSelectNr(8)
953     '/// insert a new folder name
954     printlog "insert a new folder name"
955     Kontext "FormFolderNameDialog"
956         Foldername.setText("Folder2")
957         FormFolderNameDialog.OK
959     '/// check if he folder still exists
960     printlog "check if he folder still exists"
961     if (fFindForm("Folder2")) then
962         printlog "new folder available"
963     else
964         warnlog "new folder not available"
965         goto endsub
966     endif
968     '/// insert a new folder under the first folder
969     printlog "insert a new folder under the first folder"   
970     
971     Kontext "DATABASE"
972         Database.UseMenu
973         hMenuSelectNr(4)
974         hMenuSelectNr(8)
976     '/// insert a new folder name
977     printlog "insert a new folder name"
978     Kontext "FormFolderNameDialog"
979         Foldername.setText("Folder3")
980         FormFolderNameDialog.OK
981     
982     '/// select the first folder
983     printlog "select the first folder"    
984     if (fFindForm("Folder2")) then
985         printlog "first folder selected"
986     else
987         warnlog "first folder not found"
988         goto endsub
989     endif        
991     '/// rename the firt folder
992     printlog "rename the firt folder"    
993     Kontext "DATABASE"
994         Database.UseMenu
995         hMenuSelectNr(2)
996         hMenuSelectNr(7)
998     Kontext "FormFolderNameDialog"
999         FolderReName.setText("Folder4")
1000         FormFolderNameDialog.OK        
1002     '/// check if the folder still exists
1003     printlog "check if the folder still exists"
1004     if (fFindForm("Folder3")) then
1005         printlog "folder found"
1006     else
1007         warnlog "#i75723# folder not found."        
1008     endif
1009         
1010     '/// close the database and discade changes
1011     printlog "close the database and discade changes"
1012     call fCloseDatabase(false)
1013     
1014 endcase
1015 '-------------------------------------------------------------------------
1016 testcase tViewAsGridEmbeddedForm
1017     
1018     '/// open the database <OfficePath>/user/work/TT_hsqldb.odb
1019     printlog "open the database " + gOfficePath + "user/work/TT_hsqldb.odb"
1020     call fOpenDatabase(gOfficePath + "user/work/TT_hsqldb.odb")
1021     
1022     
1023     '/// open form Form1
1024     printlog "open form Form1"    
1025         call fOpenForm("Form1")
1026     
1027     Kontext "DocumentWriter"
1028         DocumentWriter.TypeKeys "<MOD1 F5>" , true
1030     '/// click on the icon view as grid
1031     printlog "click on the icon view as grid"        
1032     FM_View_As_Grid
1033     
1034     sleep(1)
1036     '/// check if the grid appear
1037     printlog "check if the grid appear"    
1038     Kontext "TableView"    
1039         if CurrentRecord.getText <> "1" then
1040             warnlog "the first record is wrong"
1041         endif
1042         sleep(1)
1043         NextRecord.Click
1044         if CurrentRecord.getText <> "2" then
1045             warnlog "the next record button in the table grid doesn't work"
1046         endif
1047         sleep(1)        
1048         
1049     '/// close the view
1050     printlog "close the view"
1051     FM_View_As_Grid    
1053     sleep(1)
1055     '/// close the form
1056     printlog "close the form"
1057     fCloseForm
1058     
1059     '/// close the database
1060     printlog "close the database"
1061     call fCloseDatabase
1062     
1063 endcase