|
Module bearbeitesicherheitsanf
|
|
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 import wx
40
41 from bearbeiteuebersetzung import BearbeiteUebersetzung
42
43 from universal import zk
44
45 from wxuniversal import FlexGridSizerWxObjTitel
46 from wxuniversal import DialogErg
47 from wxuniversal import farbeBearbeiten
48 from wxuniversal import SiAnfStrktDok
49 from wxuniversal import SiAnf
50 from wxuniversal import TextCtrlSpWTitel
51 from wxuniversal import TreeCtrlErg
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
89
90 """
91 Klasse zur Abbildung des Eingabeformulars 'Sicherheitsanforderungen bearbeiten'.
92 """
93
94
95
96
97
98
99 - def __init__( self, parent, Statusleiste, dbVerbindung, prjProjekteId, sprSprachenId, psGefszenarioId ):
100 DialogErg.__init__( self
101 , parent = parent
102 , title = u"Sicherheitsanforderungen bearbeiten."
103 , dbVerbindung = dbVerbindung )
104
105
106
107
108 self.SetName( name = "BearbeiteSicherheitsanf" )
109
110
111
112
113
114 self.Statusleiste = Statusleiste
115 self.dbVerbindung = dbVerbindung
116 self.prjProjekteId = prjProjekteId
117 self.sprSprachenId = sprSprachenId
118 self.psGefszenarioId = psGefszenarioId
119
120
121
122
123
124
125
126
127
128
129
130
131
132 self.SiAnf__SiAnf = SiAnf( parent = self
133 , Statusleiste = self.Statusleiste
134 , dbVerbindung = self.dbVerbindung
135 , prjProjekteId = self.prjProjekteId
136 , sprSprachenId = self.sprSprachenId
137 , psGefszenarioId = self.psGefszenarioId )
138
139
140 self.Bind( wx.EVT_TREE_ITEM_ACTIVATED
141 , self.__ereignisBearbeiten__
142 , self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt )
143
144 self.Bind( wx.EVT_TREE_ITEM_MIDDLE_CLICK
145 , self.__ereignisSiAnfLoesen__
146 , self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt )
147
148 self.Bind( wx.EVT_TREE_ITEM_ACTIVATED
149 , self.__ereignisSPktDokumentLoesen__
150 , self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt )
151
152
153
154
155
156
157
158
159 self.Notebook__Verfuegbar = wx.Notebook( self )
160
161
162
163
164
165
166 self.SiAnf__SiAnfVerfuegbar = SiAnf( parent = self.Notebook__Verfuegbar
167 , Statusleiste = self.Statusleiste
168 , dbVerbindung = self.dbVerbindung
169 , prjProjekteId = self.prjProjekteId
170 , sprSprachenId = self.sprSprachenId
171 , psGefszenarioId = self.psGefszenarioId
172 , varId = 1 )
173
174
175 self.Bind( wx.EVT_TREE_ITEM_ACTIVATED
176 , self.__ereignisSiAnfZuordnen__
177 , self.SiAnf__SiAnfVerfuegbar.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt )
178
179 self.Bind( wx.EVT_TREE_ITEM_MIDDLE_CLICK
180 , self.__ereignisSiAnfZuordnen__
181 , self.SiAnf__SiAnfVerfuegbar.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt )
182
183
184 self.Notebook__Verfuegbar.AddPage( self.SiAnf__SiAnfVerfuegbar, u"Sicherheitsanforderungen" )
185
186
187
188
189
190
191 self.Notebook__Verfuegbar.AddPage( SiAnfStrktDok( parent = self.Notebook__Verfuegbar
192 , varId = 3
193 , Statusleiste = self.Statusleiste
194 , dbVerbindung = self.dbVerbindung
195 , prjProjekteId = self.prjProjekteId
196 , sprSprachenId = self.sprSprachenId
197 , psGefszenarioId = self.psGefszenarioId )
198 , u"Strukturpunkte" )
199
200
201 self.Notebook__Verfuegbar.AddPage( SiAnfStrktDok( parent = self.Notebook__Verfuegbar
202 , varId = 4
203 , Statusleiste = self.Statusleiste
204 , dbVerbindung = self.dbVerbindung
205 , prjProjekteId = self.prjProjekteId
206 , sprSprachenId = self.sprSprachenId
207 , psGefszenarioId = self.psGefszenarioId )
208 , u"Dokumente" )
209
210
211 self.Notebook__Verfuegbar.AddPage( SiAnfStrktDok( parent = self.Notebook__Verfuegbar
212 , varId = 5
213 , Statusleiste = self.Statusleiste
214 , dbVerbindung = self.dbVerbindung
215 , prjProjekteId = self.prjProjekteId
216 , sprSprachenId = self.sprSprachenId
217 , psGefszenarioId = self.psGefszenarioId )
218 , u"Protokolleinträge" )
219
220 self.Notebook__Verfuegbar.GetPage( 3 ).TreeCtrlErg__Id.wxObjekt.SetToolTip( wx.ToolTip( u"Doppelklick:\nProtokolleintrag der gewählten Sicherheitsanforderung zuordnen." ) )
221 self.Notebook__Verfuegbar.GetPage( 3 ).CheckBox__Alle.Enable( False )
222
223
224
225
226
227
228 self.Bind( wx.EVT_NOTEBOOK_PAGE_CHANGED
229 , self.__ereignisKKGewechselt__
230 , self.Notebook__Verfuegbar )
231
232
233
234
235
236 self.Bind( wx.EVT_TREE_ITEM_ACTIVATED
237 , self.__ereignisSPktDokumentZuordnen__
238 , self.Notebook__Verfuegbar.GetPage( 1 ).TreeCtrlErg__Id.wxObjekt )
239
240
241
242
243
244 self.Bind( wx.EVT_TREE_ITEM_ACTIVATED
245 , self.__ereignisSPktDokumentZuordnen__
246 , self.Notebook__Verfuegbar.GetPage( 2 ).TreeCtrlErg__Id.wxObjekt )
247
248
249
250
251
252 self.Bind( wx.EVT_TREE_ITEM_ACTIVATED
253 , self.__ereignisSPktDokumentZuordnen__
254 , self.Notebook__Verfuegbar.GetPage( 3 ).TreeCtrlErg__Id.wxObjekt )
255
256
257
258
259
260
261 BoxSizerGes = wx.BoxSizer( wx.HORIZONTAL )
262
263 BoxSizerGes.Add( self.SiAnf__SiAnf
264 , proportion = 1
265 , flag = wx.ALL|wx.EXPAND
266 , border = 5 )
267
268 BoxSizerGes.Add( self.Notebook__Verfuegbar
269 , proportion = 1
270 , flag = wx.ALL|wx.EXPAND
271 , border = 5 )
272
273
274
275
276
277 self.nimmDialogElemente( BoxSizerGes )
278
279
280
281
282
283 self.__ereignisKKGewechselt__()
284
285
286
287
288
289 self.SiAnf__SiAnf.liesDB( psGefszenarioId = self.psGefszenarioId )
290
291
292
293
294 self.Button__Verwerfen.Enable( False )
295 self.Button__Sichern.Enable( False )
296
297
298
299
300
301
302
303
304
306 """
307 Methode die aufgerufen wird, wenn der Text der Sicherheitsanforderung bearbeitet werden soll.
308
309 @param ereignis: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben.
310 @type ereignis: C{wx - Ereignisobjekt}
311 """
312
313
314
315
316 dlg = BearbeiteUebersetzung( parent = self
317 , Statusleiste = self.Statusleiste
318 , dbVerbindung = self.dbVerbindung
319 , sprSprachenId = self.sprSprachenId
320 , sprUebvarId = ereignis.GetEventObject().gibClientData()[1]
321 , notizen = ereignis.GetEventObject().gibClientData()[2] )
322
323
324
325
326
327 dlg.ShowModal()
328 dlg.Destroy()
329
330
331
332
333
334
335 if( dlg.gibWerte()[0]
336 and ( dlg.gibWerte()[1] != ereignis.GetEventObject().gibClientData()[1]
337 or dlg.gibWerte()[2] != ereignis.GetEventObject().gibClientData()[2] ) ) :
338
339 self.dbVerbindung.schreibe__prjPPPrtProtokoll__UPDATE(
340 sprUebvarId = dlg.gibWerte()[1]
341 , whereId = [ self.prjProjekteId
342 , ereignis.GetEventObject().gibDbId()
343 , ereignis.GetEventObject().gibClientData()[1]] )
344
345
346
347
348
349
350 self.Notebook__Verfuegbar.GetPage( 1 ).__ereignisLiesDBVerfSiAnf__()
351 self.SiAnf__SiAnf.liesDB( psGefszenarioId = self.psGefszenarioId )
352
353
354
355
356
357
358
359
360 if( dlg.gibWerte()[0] ) :
361 self.Button__Verwerfen.Enable( True )
362 self.Button__Sichern.Enable( True )
363
364
365
366
367
368
369 if( ereignis != None ) : ereignis.Skip( skip = True )
370
371
372
373
374
375
376
377
378
380 """
381 Es wurde zwischen den Karteikarten gewechselt.
382
383 @param ereignis: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben. Es wird jedoch nicht verwendet.
384 @type ereignis: C{wx - Ereignisobjekt}
385 """
386
387
388
389
390 if( self.Notebook__Verfuegbar.GetCurrentPage() == self.Notebook__Verfuegbar.GetPage( 0 ) ) :
391
392
393
394
395 self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.SetBackgroundColour( farbeBearbeiten )
396 self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.SetToolTip( wx.ToolTip( u"Doppelklick:\nSicherheitsanforderung bearbeiten.\n\nMittlere Maustaste:\nVerbindung zwischen Sicherheitsanforderung und Gefahrenszenario aufheben." ) )
397
398
399
400
401
402
403 self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.SetBackgroundColour( self.GetBackgroundColour() )
404 self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.SetToolTip( wx.ToolTip( " " ) )
405
406
407
408
409
410 elif( self.Notebook__Verfuegbar.GetCurrentPage() == self.Notebook__Verfuegbar.GetPage( 1 )
411 or self.Notebook__Verfuegbar.GetCurrentPage() == self.Notebook__Verfuegbar.GetPage( 2 )
412 or self.Notebook__Verfuegbar.GetCurrentPage() == self.Notebook__Verfuegbar.GetPage( 3 ) ) :
413
414
415
416
417 self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.SetBackgroundColour( 'WHITE' )
418 self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.SetToolTip( wx.ToolTip( " " ) )
419
420
421
422
423
424 self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.SetBackgroundColour( farbeBearbeiten )
425
426 if( self.Notebook__Verfuegbar.GetCurrentPage() == self.Notebook__Verfuegbar.GetPage( 1 ) ) :
427 self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.SetToolTip( wx.ToolTip( u"Doppelklick:\nVerbindung zwischen Strukturpunkt und Sicherheitsanforderung aufheben." ) )
428
429 elif( self.Notebook__Verfuegbar.GetCurrentPage() == self.Notebook__Verfuegbar.GetPage( 2 ) ) :
430 self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.SetToolTip( wx.ToolTip( u"Doppelklick:\nVerbindung zwischen Dokument und Sicherheitsanforderung aufheben." ) )
431
432 elif( self.Notebook__Verfuegbar.GetCurrentPage() == self.Notebook__Verfuegbar.GetPage( 3 ) ) :
433 self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.SetToolTip( wx.ToolTip( u"Doppelklick:\nVerbindung zwischen Protokolleintrag und Sicherheitsanforderung aufheben." ) )
434
435
436
437
438
439
440
441 if( ereignis != None ) : ereignis.Skip( skip = True )
442
443
444
445
446
447
448
449
450
452 """
453 Die aktuelle(n) Sicherheitsanforderungen von der Sicherheitsanforderung (Technische Maßnahme) bzw. dem Gefahrenszenario lösen.
454
455 @param ereignis: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben.
456 @type ereignis: C{wx - Ereignisobjekt}
457 """
458
459
460
461
462
463
464
465
466
467
468
469
470 self.dbVerbindung.schreibe__Strukturpunkte( TreeCtrlErg = ereignis.GetEventObject()
471 , prjProjekteId = self.prjProjekteId
472 , sprSprachenId = self.sprSprachenId
473 , psGefszenarioId = self.psGefszenarioId )
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489 self.dbVerbindung.schreibe__Dokumente( TreeCtrlErg = ereignis.GetEventObject()
490 , prjProjekteId = self.prjProjekteId
491 , sprSprachenId = self.sprSprachenId
492 , nimmAusgabe = 'true'
493 , psGefszenarioId = self.psGefszenarioId )
494
495
496
497
498
499
500
501
502
503
504
505
506 self.dbVerbindung.schreibe__prjPlPrtPsGefszenario(
507 listeWerte = zk.gibListeTeilmenge( liste = ereignis.GetEventObject().gibZweigDaten() )
508 , prjProjekteId = self.prjProjekteId
509 , psGefszenarioId = self.psGefszenarioId
510 , logentfernt = 'true' )
511
512
513
514
515
516
517
518
519
520
521 self.dbVerbindung.schreibe__prjPPPrtProtokoll(
522 listeWerte = ereignis.GetEventObject().gibZweigDaten()
523 , prjProjekteId = self.prjProjekteId )
524
525
526
527
528
529
530
531
532
533
534
535
536 self.dbVerbindung.schreibePrtProtokollVerbindung( TreeCtrlErg = ereignis.GetEventObject()
537 , prjProjekteId = self.prjProjekteId
538 , prtProtokollIdVorg = None
539 , sprSprachenId = self.sprSprachenId
540 , psGefszenarioId = self.psGefszenarioId )
541
542
543
544
545
546
547
548 self.Notebook__Verfuegbar.GetPage( 1 ).__ereignisLiesDBVerfSiAnf__()
549 self.SiAnf__SiAnf.liesDB( psGefszenarioId = self.psGefszenarioId )
550
551
552
553
554
555
556 self.Button__Verwerfen.Enable( True )
557 self.Button__Sichern.Enable( True )
558
559
560
561
562
563
564 if( ereignis != None ) : ereignis.Skip( skip = True )
565
566
567
568
569
570
571
572
573
575 """
576 Die aktuelle(n) Sicherheitsanforderungen der gewählten Sicherheitsanforderung (dem Gefahrenszenario) zuordnen.
577
578 @param ereignis: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben.
579 @type ereignis: C{wx - Ereignisobjekt}
580 """
581
582
583
584
585 evtDClick = 10033
586 evtMMouse = 10035
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 if( ( ereignis.GetEventType() == evtDClick
648 and not ereignis.GetEventObject().gibClientData()[0]
649 and not self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.gibClientData()[0] )
650 or ( ereignis.GetEventType() == evtMMouse and ereignis.GetEventObject().gibClientData()[0] ) ) :
651
652 if( ereignis != None ) : ereignis.Skip( skip = True )
653 return
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 self.dbVerbindung.schreibe__prjPlPrtPsGefszenario(
684 listeWerte = zk.gibListeTeilmenge( liste = ereignis.GetEventObject().gibZweigDaten() )
685 , prjProjekteId = self.prjProjekteId
686 , psGefszenarioId = self.psGefszenarioId )
687
688 self.dbVerbindung.schreibe__prjPPPrtProtokoll(
689 listeWerte = ereignis.GetEventObject().gibZweigDaten()
690 , prjProjekteId = self.prjProjekteId )
691
692
693
694
695
696 self.dbVerbindung.schreibe__Strukturpunkte( TreeCtrlErg = ereignis.GetEventObject()
697 , prjProjekteId = self.prjProjekteId
698 , sprSprachenId = self.sprSprachenId )
699
700
701
702
703
704 dlg = wx.MessageDialog( parent = self
705 , message = u"Alle Dokumente, die den Sicherheitsanforderungen zugeordnet sind, werden übernommen.\n\nSollen sie vollständig (d.h. mit Titel, akt. Revisionsstand, Datum) in das Projekt übernommen werden ?\nWenn nicht, dann werden sie nur als Platzhalter übernommen."
706 , caption = u"Dokumente zuordnen"
707 , style = wx.YES_NO|wx.ICON_QUESTION)
708
709 nimmAusgabe = ( dlg.ShowModal() == wx.ID_YES )
710
711
712
713
714
715 self.dbVerbindung.schreibe__Dokumente( TreeCtrlErg = ereignis.GetEventObject()
716 , prjProjekteId = self.prjProjekteId
717 , sprSprachenId = self.sprSprachenId
718 , nimmAusgabe = nimmAusgabe )
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734 if( ereignis.GetEventObject().ItemHasChildren( ereignis.GetItem() )
735 or ( ereignis.GetEventObject().gibClientData()[0] == False
736 and ereignis.GetEventType() == evtDClick
737 and self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.gibClientData()[0] ) ) :
738
739
740
741
742 if( ereignis.GetEventObject().ItemHasChildren( ereignis.GetItem() ) ) :
743
744 self.dbVerbindung.schreibePrtProtokollVerbindung(
745 TreeCtrlErg = ereignis.GetEventObject()
746 , prjProjekteId = self.prjProjekteId
747 , prtProtokollIdVorg = ereignis.GetEventObject().gibDbId() )
748
749
750
751
752 else :
753
754 self.dbVerbindung.schreibePrtProtokollVerbindung(
755 TreeCtrlErg = ereignis.GetEventObject()
756 , prjProjekteId = self.prjProjekteId
757 , prtProtokollIdVorg = self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.gibDbId() )
758
759
760
761
762
763
764
765
766
767
768
769 self.dbVerbindung.schreibe__prjPlPrtPsGefszenario(
770 listeWerte = self.dbVerbindung.gibListePsPrtProtokollWerte(
771 prjProjekteId = self.prjProjekteId
772 , sprSprachenId = self.sprSprachenId
773 , psGefszenarioId = None
774 , prtTypAspekt = 'PE'
775 , prtTypId = None
776 , prtProtokollIdVorg = zk.gibListeTeilmengeZk( liste = ereignis.GetEventObject().gibZweigDaten() ) )
777 , prjProjekteId = self.prjProjekteId
778 , psGefszenarioId = self.psGefszenarioId )
779
780
781
782
783
784
785 self.SiAnf__SiAnfVerfuegbar.liesDB( psGefszenarioId = self.psGefszenarioId )
786 self.SiAnf__SiAnf.liesDB( psGefszenarioId = self.psGefszenarioId )
787
788
789
790
791
792
793 self.Button__Verwerfen.Enable( True )
794 self.Button__Sichern.Enable( True )
795
796
797
798
799
800
801 if( ereignis != None ) : ereignis.Skip( skip = True )
802
803
804
805
806
807
808
809
810
812 """
813 Die Verbindung zwischen dem aktuellen Dokument und der gewählten Sicherheitsanforderung lösen.
814
815 @param ereignis: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben.
816 @type ereignis: C{wx - Ereignisobjekt}
817 """
818
819
820
821
822
823
824
825
826
827
828
829 if( self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.istHauptknoten( ereignis.GetItem() )
830 or ( self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.gibBezeichnungHauptknoten( ereignis.GetItem() ) == ereignis.GetEventObject().HK_STR and self.Notebook__Verfuegbar.GetSelection() != 1 )
831 or ( self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.gibBezeichnungHauptknoten( ereignis.GetItem() ) == ereignis.GetEventObject().HK_DOK and self.Notebook__Verfuegbar.GetSelection() != 2 )
832 or ( self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.gibBezeichnungHauptknoten( ereignis.GetItem() ) == ereignis.GetEventObject().HK_PE and self.Notebook__Verfuegbar.GetSelection() != 3 ) ) :
833
834 ereignis.Skip( skip = True )
835 return
836
837
838
839
840
841 if( self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.gibBezeichnungHauptknoten( ereignis.GetItem() ) == ereignis.GetEventObject().HK_STR ) :
842
843 self.dbVerbindung.schreibe__psPrtStrkt(
844 prjProjekteId = self.prjProjekteId
845 , prtProtokollId = self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.gibDbId()
846 , strStrktId = ereignis.GetEventObject().gibClientData()[0]
847 , notizen = ''
848 , prjPPrtStrstrktId = ereignis.GetEventObject().gibClientData()[1] )
849
850
851
852
853
854 elif( self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.gibBezeichnungHauptknoten( ereignis.GetItem() ) == ereignis.GetEventObject().HK_DOK ) :
855
856 self.dbVerbindung.schreibe__prjPrtDoku(
857 prjProjekteId = self.prjProjekteId
858 , prtProtokollId = self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.gibDbId()
859 , dokDokuId = ereignis.GetEventObject().gibWert()
860 , plPrtDokdoku = [ ereignis.GetEventObject().gibClientData()[1]
861 , ereignis.GetEventObject().gibClientData()[2]
862 , ereignis.GetEventObject().gibClientData()[3]
863 , ereignis.GetEventObject().gibClientData()[0] ]
864 , plDokAusgabe = [ ereignis.GetEventObject().gibClientData()[7]
865 , ereignis.GetEventObject().gibClientData()[5]
866 , ereignis.GetEventObject().gibClientData()[6]
867 , ereignis.GetEventObject().gibClientData()[4] ]
868 , logentfernt = 'true' )
869
870
871
872
873
874 elif( self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.gibBezeichnungHauptknoten( ereignis.GetItem() ) == ereignis.GetEventObject().HK_PE ) :
875
876 self.dbVerbindung.schreibe__prjPPrtVerbindung(
877 prjProjekteId = self.prjProjekteId
878 , prtProtokollIdVorg = self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.gibDbId()
879 , prtProtokollIdNachf = ereignis.GetEventObject().gibDbId()
880 , trennen = True )
881
882
883
884
885
886 self.SiAnf__SiAnf.__ereignisNavigation__()
887
888
889
890
891
892
893 self.Button__Verwerfen.Enable( True )
894 self.Button__Sichern.Enable( True )
895
896
897
898
899
900
901 if( ereignis != None ) : ereignis.Skip( skip = True )
902
903
904
905
906
907
908
909
910
911
912
914 """
915 Das aktuelle Dokument der gewählten Sicherheitsanforderung zuordnen.
916
917 @param ereignis: Es ist das C{wx - Ereignisobjekt} zur Ereignisbehandlung zu übergeben.
918 @type ereignis: C{wx - Ereignisobjekt}
919 """
920
921
922
923
924
925
926
927
928 if( self.Notebook__Verfuegbar.GetSelection() == 1 ) :
929
930
931
932
933
934 if( self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.istDbIdVorhanden( ereignis.GetEventObject().gibDbId() ) ) :
935
936 if( ereignis != None ) : ereignis.Skip( skip = True )
937 return
938
939
940
941
942 self.dbVerbindung.schreibe__psPrtStrkt(
943 prjProjekteId = self.prjProjekteId
944 , prtProtokollId = self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.gibDbId()
945 , strStrktId = ereignis.GetEventObject().gibClientData()[0]
946 , notizen = '' )
947
948
949
950
951
952
953
954
955
956
957
958
959
960 elif( self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.gibBezeichnungHauptknoten() == self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.HK_DOK
961 and self.Notebook__Verfuegbar.GetSelection() == 2 ) :
962
963
964
965
966 if( self.SiAnf__SiAnf.SiAnfStrktDok__Zugeordnet.TreeCtrlErg__Id.wxObjekt.istDbIdVorhanden( ereignis.GetEventObject().gibDbId() ) ) :
967
968 if( ereignis != None ) : ereignis.Skip( skip = True )
969 return
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989 if( ereignis.GetEventObject().gibClientData()[8] == 'BEWEIS'
990 and self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.gibClientData()[3] not in [22, 23] ) :
991
992
993
994
995 if( ereignis != None ) : ereignis.Skip( skip = True )
996 return
997
998
999
1000
1001
1002
1003 self.dbVerbindung.schreibe__prjPrtDoku(
1004 prjProjekteId = self.prjProjekteId
1005 , prtProtokollId = self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.gibDbId()
1006 , dokDokuId = ereignis.GetEventObject().gibWert()
1007 , plPrtDokdoku = [ ereignis.GetEventObject().gibClientData()[1]
1008 , ereignis.GetEventObject().gibClientData()[2]
1009 , ereignis.GetEventObject().gibClientData()[3]
1010 , ereignis.GetEventObject().gibClientData()[0] ]
1011 , plDokAusgabe = [ ereignis.GetEventObject().gibClientData()[7]
1012 , ereignis.GetEventObject().gibClientData()[5]
1013 , ereignis.GetEventObject().gibClientData()[6]
1014 , ereignis.GetEventObject().gibClientData()[4] ] )
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027 elif( self.Notebook__Verfuegbar.GetSelection() == 3 ) :
1028
1029
1030
1031
1032 tmpEintraege = ereignis.GetEventObject().gibZweig()
1033
1034 for i in range( len( tmpEintraege ) ) :
1035
1036 self.dbVerbindung.schreibe__prjPPrtVerbindung(
1037 prjProjekteId = self.prjProjekteId
1038 , prtProtokollIdVorg = self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.gibDbId()
1039 , prtProtokollIdNachf = ereignis.GetEventObject().gibDbId( tmpEintraege[i] ) )
1040
1041
1042
1043
1044
1045
1046 tmpPsGefszenarioId = self.dbVerbindung.gibListePrjPlPrtPsGefszenarioWerte(
1047 prjProjekteId = self.prjProjekteId
1048 , prtProtokollId = self.SiAnf__SiAnf.SiAnfStrktDok__SiAnf.TreeCtrlErg__Id.wxObjekt.gibDbId() )
1049
1050 for i in range( len( tmpPsGefszenarioId ) ) :
1051
1052
1053
1054
1055 if( str( tmpPsGefszenarioId[i] ) == str( self.psGefszenarioId ) ) :
1056
1057 continue
1058
1059 self.dbVerbindung.schreibe__prjPlPrtPsGefszenario(
1060 listeWerte = zk.gibListeTeilmenge( liste = ereignis.GetEventObject().gibZweigDaten() )
1061 , prjProjekteId = self.prjProjekteId
1062 , psGefszenarioId = tmpPsGefszenarioId[i] )
1063
1064
1065
1066
1067
1068
1069
1070 else :
1071
1072
1073
1074
1075
1076 if( ereignis != None ) : ereignis.Skip( skip = True )
1077 return
1078
1079
1080
1081
1082
1083
1084 self.SiAnf__SiAnf.__ereignisNavigation__()
1085
1086
1087
1088
1089
1090
1091 self.Button__Verwerfen.Enable( True )
1092 self.Button__Sichern.Enable( True )
1093
1094
1095
1096
1097
1098
1099 if( ereignis != None ) : ereignis.Skip( skip = True )
1100
1101
1102
1103
1104
1105
1106
1107
1109 """
1110 Methode die von der abgeleiteten Klasse überschrieben wird, um spezifische Aktionen beim Verwerfen der Änderungen auszuführen.
1111 """
1112
1113
1114
1115
1116
1117 self.Notebook__Verfuegbar.GetPage( 1 ).__ereignisLiesDBVerfSiAnf__()
1118 self.SiAnf__SiAnf.liesDB( psGefszenarioId = self.psGefszenarioId )
1119
1120
1121
1122
1123
1124
1125
1126
1128 """
1129 Methode die aufgerufen wird, um die C{ps.gefszenario.id} zu übernehmen.
1130
1131 @param psGefszenarioId: Es ist die Identifikationsnummer des Gefahrenszenarios anzugeben.
1132 @type psGefszenarioId: Ganzzahl
1133 """
1134
1135
1136
1137
1138 self.psGefszenarioId = psGefszenarioId
1139
1140
1141
1142
1143
1144
1145
1146
1147
1149 """
1150 Mit Aufruf dieser Methode wird die Karteikarte 'Protokolleinträge' ausgewählt.
1151
1152 """
1153
1154
1155
1156
1157 self.Notebook__Verfuegbar.ChangeSelection( 3 )
1158 self.__ereignisKKGewechselt__()
1159